diff --git a/src/ifcparse/Ifc2x3-schema.cpp b/src/ifcparse/Ifc2x3-schema.cpp index 06ad4c3a2a..4f2f04c143 100644 --- a/src/ifcparse/Ifc2x3-schema.cpp +++ b/src/ifcparse/Ifc2x3-schema.cpp @@ -1953,6 +1953,3061 @@ class IFC2X3_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAheadOrBehind"s, +"AHEAD"s, +"BEHIND"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"GRILLE"s, +"REGISTER"s, +"DIFFUSER"s, +"EYEBALL"s, +"IRIS"s, +"LINEARGRILLE"s, +"LINEARDIFFUSER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"LINTEL"s, +"T_BEAM"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBuildingElementProxyTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"IfcCableSegmentTypeEnum"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"MODIFIEDADDED"s, +"MODIFIEDDELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"WATERCOOLINGCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERHEATINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"IfcComplexNumber"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDTUBEINTUBE"s, +"WATERCOOLEDBRAZEDPLATE"s, +"EVAPORATIVECOOLED"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROPORTIONAL"s, +"PROPORTIONALINTEGRAL"s, +"PROPORTIONALINTEGRALDERIVATIVE"s, +"TIMEDTWOPOSITION"s, +"TWOPOSITION"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"INSULATION"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"IfcCurrencyEnum"s, +"AED"s, +"AES"s, +"ATS"s, +"AUD"s, +"BBD"s, +"BEG"s, +"BGL"s, +"BHD"s, +"BMD"s, +"BND"s, +"BRL"s, +"BSD"s, +"BWP"s, +"BZD"s, +"CAD"s, +"CBD"s, +"CHF"s, +"CLP"s, +"CNY"s, +"CYS"s, +"CZK"s, +"DDP"s, +"DEM"s, +"DKK"s, +"EGL"s, +"EST"s, +"EUR"s, +"FAK"s, +"FIM"s, +"FJD"s, +"FKP"s, +"FRF"s, +"GBP"s, +"GIP"s, +"GMD"s, +"GRX"s, +"HKD"s, +"HUF"s, +"ICK"s, +"IDR"s, +"ILS"s, +"INR"s, +"IRP"s, +"ITL"s, +"JMD"s, +"JOD"s, +"JPY"s, +"KES"s, +"KRW"s, +"KWD"s, +"KYD"s, +"LKR"s, +"LUF"s, +"MTL"s, +"MUR"s, +"MXN"s, +"MYR"s, +"NLG"s, +"NZD"s, +"OMR"s, +"PGK"s, +"PHP"s, +"PKR"s, +"PLN"s, +"PTN"s, +"QAR"s, +"RUR"s, +"SAR"s, +"SCR"s, +"SEK"s, +"SGD"s, +"SKP"s, +"THB"s, +"TRL"s, +"TTD"s, +"TWD"s, +"USD"s, +"VEB"s, +"VND"s, +"XEU"s, +"ZAR"s, +"ZWD"s, +"NOK"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcDamperTypeEnum"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"SMOKEDAMPER"s, +"FIRESMOKEDAMPER"s, +"BACKDRAFTDAMPER"s, +"RELIEFDAMPER"s, +"BLASTDAMPER"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"BALANCINGDAMPER"s, +"FUMEHOODEXHAUST"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDayInMonthNumber"s, +"IfcDaylightSavingHour"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDimensionExtentUsage"s, +"ORIGIN"s, +"TARGET"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"WOOD"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"OBSTRUCTION"s, +"TRANSITION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDynamicViscosityMeasure"s, +"IfcElectricApplianceTypeEnum"s, +"COMPUTER"s, +"DIRECTWATERHEATER"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"ELECTRICHEATER"s, +"FACSIMILE"s, +"FREESTANDINGFAN"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"INDIRECTWATERHEATER"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"PRINTER"s, +"REFRIGERATOR"s, +"RADIANTHEATER"s, +"SCANNER"s, +"TELEPHONE"s, +"TUMBLEDRYER"s, +"TV"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"WATERHEATER"s, +"WATERCOOLER"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentEnum"s, +"ALTERNATING"s, +"DIRECT"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionPointFunctionEnum"s, +"ALARMPANEL"s, +"CONSUMERUNIT"s, +"CONTROLPANEL"s, +"DISTRIBUTIONBOARD"s, +"GASDETECTORPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"MOTORCONTROLCENTRE"s, +"SWITCHBOARD"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"IfcElectricGeneratorTypeEnum"s, +"IfcElectricHeaterTypeEnum"s, +"ELECTRICPOINTHEATER"s, +"ELECTRICCABLEHEATER"s, +"ELECTRICMATHEATER"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"GIRDER"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"TRUSS"s, +"IfcElementCompositionEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"IfcEnergyMeasure"s, +"IfcEnergySequenceEnum"s, +"PRIMARY"s, +"SECONDARY"s, +"TERTIARY"s, +"AUXILIARY"s, +"IfcEnvironmentalImpactCategoryEnum"s, +"COMBINEDVALUE"s, +"DISPOSAL"s, +"EXTRACTION"s, +"INSTALLATION"s, +"MANUFACTURE"s, +"TRANSPORTATION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"IfcFlowMeterTypeEnum"s, +"ELECTRICMETER"s, +"ENERGYMETER"s, +"FLOWMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcGasTerminalTypeEnum"s, +"GASAPPLIANCE"s, +"GASBOOSTER"s, +"GASBURNER"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHourInDay"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"EXTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"IfcKinematicViscosityMeasure"s, +"IfcLabel"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"METALHALIDE"s, +"TUNGSTENFILAMENT"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION_GROUP"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"POST"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"IfcMinuteInHour"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNullStyle"s, +"NULL"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"CONTROL"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderRecordTypeEnum"s, +"CHANGE"s, +"MAINTENANCE"s, +"MOVE"s, +"PURCHASE"s, +"WORK"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcPropertySourceEnum"s, +"DESIGN"s, +"DESIGNMAXIMUM"s, +"DESIGNMINIMUM"s, +"ASBUILT"s, +"COMMISSIONING"s, +"NOTKNOWN"s, +"IfcProtectiveDeviceTypeEnum"s, +"FUSEDISCONNECTOR"s, +"CIRCUITBREAKER"s, +"EARTHFAILUREDEVICE"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"GUARDRAIL"s, +"BALUSTRADE"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"METAL"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcResourceConsumptionEnum"s, +"CONSUMED"s, +"PARTIALLYCONSUMED"s, +"NOTCONSUMED"s, +"OCCUPIED"s, +"PARTIALLYOCCUPIED"s, +"NOTOCCUPIED"s, +"IfcRibPlateDirectionEnum"s, +"DIRECTION_X"s, +"DIRECTION_Y"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSecondInMinute"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"CO2SENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PRESSURESENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcServiceLifeFactorTypeEnum"s, +"A_QUALITYOFCOMPONENTS"s, +"B_DESIGNLEVEL"s, +"C_WORKEXECUTIONLEVEL"s, +"D_INDOORENVIRONMENT"s, +"E_OUTDOORENVIRONMENT"s, +"F_INUSECONDITIONS"s, +"G_MAINTENANCELEVEL"s, +"IfcServiceLifeTypeEnum"s, +"ACTUALSERVICELIFE"s, +"EXPECTEDSERVICELIFE"s, +"OPTIMISTICREFERENCESERVICELIFE"s, +"PESSIMISTICREFERENCESERVICELIFE"s, +"REFERENCESERVICELIFE"s, +"IfcShearModulusMeasure"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSoundScaleEnum"s, +"DBA"s, +"DBB"s, +"DBC"s, +"NC"s, +"NR"s, +"IfcSpaceHeaterTypeEnum"s, +"SECTIONALRADIATOR"s, +"PANELRADIATOR"s, +"TUBULARRADIATOR"s, +"CONVECTOR"s, +"BASEBOARDHEATER"s, +"FINNEDTUBEUNIT"s, +"UNITHEATER"s, +"IfcSpaceTypeEnum"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"CABLE"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSurfaceTextureEnum"s, +"BUMP"s, +"OPACITY"s, +"REFLECTION"s, +"SELFILLUMINATION"s, +"SHININESS"s, +"SPECULAR"s, +"TEXTURE"s, +"TRANSPARENCYMAP"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"EMERGENCYSTOP"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"IfcTankTypeEnum"s, +"PREFORMED"s, +"SECTIONAL"s, +"EXPANSION"s, +"PRESSUREVESSEL"s, +"IfcTemperatureGradientMeasure"s, +"IfcTendonTypeEnum"s, +"STRAND"s, +"WIRE"s, +"BAR"s, +"COATED"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalLoadSourceEnum"s, +"PEOPLE"s, +"LIGHTING"s, +"EQUIPMENT"s, +"VENTILATIONINDOORAIR"s, +"VENTILATIONOUTSIDEAIR"s, +"RECIRCULATEDAIR"s, +"EXHAUSTAIR"s, +"AIREXCHANGERATE"s, +"DRYBULBTEMPERATURE"s, +"RELATIVEHUMIDITY"s, +"INFILTRATION"s, +"IfcThermalLoadTypeEnum"s, +"SENSIBLE"s, +"LATENT"s, +"RADIANT"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTimeMeasure"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETE"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeSeriesScheduleTypeEnum"s, +"ANNUAL"s, +"MONTHLY"s, +"WEEKLY"s, +"DAILY"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"VOLTAGE"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTransportElementTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"PARAMETER"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"STANDARD"s, +"POLYGONAL"s, +"ELEMENTEDWALL"s, +"PLUMBINGWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"GREASEINTERCEPTOR"s, +"OILINTERCEPTOR"s, +"PETROLINTERCEPTOR"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWorkControlTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcYearNumber"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcAppliedValueRelationship"s, +"IfcApproval"s, +"IfcApprovalActorRelationship"s, +"IfcApprovalPropertyRelationship"s, +"IfcApprovalRelationship"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcCalendarDate"s, +"IfcClassification"s, +"IfcClassificationItem"s, +"IfcClassificationItemRelationship"s, +"IfcClassificationNotation"s, +"IfcClassificationNotationFacet"s, +"IfcColourSpecification"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionPortGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConstraint"s, +"IfcConstraintAggregationRelationship"s, +"IfcConstraintClassificationRelationship"s, +"IfcConstraintRelationship"s, +"IfcCoordinatedUniversalTimeOffset"s, +"IfcCostValue"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDateAndTime"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcDocumentElectronicFormat"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDraughtingCalloutRelationship"s, +"IfcEnvironmentalImpactValue"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedSymbol"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcLocalTime"s, +"IfcMaterial"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialList"s, +"IfcMaterialProperties"s, +"IfcMeasureWithUnit"s, +"IfcMechanicalMaterialProperties"s, +"IfcMechanicalSteelMaterialProperties"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOpticalMaterialProperties"s, +"IfcOrganization"s, +"IfcOrganizationRelationship"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedSymbol"s, +"IfcPreDefinedTerminatorSymbol"s, +"IfcPreDefinedTextFont"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcPresentationStyleAssignment"s, +"IfcProductRepresentation"s, +"IfcProductsOfCombustionProperties"s, +"IfcProfileDef"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyConstraintRelationship"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcReferencesValueDocument"s, +"IfcReinforcementBarProperties"s, +"IfcRelaxation"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcRibPlateProfileProperties"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcSimpleProperty"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcSymbolStyle"s, +"IfcTable"s, +"IfcTableRow"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleFontModel"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextStyleWithBoxCharacteristics"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcThermalMaterialProperties"s, +"IfcTimeSeries"s, +"IfcTimeSeriesReferenceRelationship"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexBasedTextureMap"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWaterProperties"s, +"IfcActorSelect"s, +"IfcAppliedValueSelect"s, +"IfcBoxAlignment"s, +"IfcCharacterStyleSelect"s, +"IfcConditionCriterionSelect"s, +"IfcDateTimeSelect"s, +"IfcDefinedSymbolSelect"s, +"IfcDerivedMeasureValue"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcMaterialSelect"s, +"IfcMetricValueSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcTextFontSelect"s, +"IfcTextStyleSelect"s, +"IfcUnit"s, +"IfcAnnotationOccurrence"s, +"IfcAnnotationSurfaceOccurrence"s, +"IfcAnnotationSymbolOccurrence"s, +"IfcAnnotationTextOccurrence"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassificationReference"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcCurveStyle"s, +"IfcDerivedProfileDef"s, +"IfcDimensionCalloutRelationship"s, +"IfcDimensionPair"s, +"IfcDocumentReference"s, +"IfcDraughtingPreDefinedTextFont"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcExtendedMaterialProperties"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcFuelProperties"s, +"IfcGeneralMaterialProperties"s, +"IfcGeneralProfileProperties"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcHygroscopicMaterialProperties"s, +"IfcImageTexture"s, +"IfcIrregularTimeSeries"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMechanicalConcreteMaterialProperties"s, +"IfcObjectDefinition"s, +"IfcOneDirectionRepeatFactor"s, +"IfcOpenShell"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedDimensionSymbol"s, +"IfcPreDefinedPointMarkerSymbol"s, +"IfcProductDefinitionShape"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyDefinition"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySetDefinition"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelationship"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionedSpine"s, +"IfcServiceLifeFactor"s, +"IfcShellBasedSurfaceModel"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcSoundProperties"s, +"IfcSoundValue"s, +"IfcSpaceThermalLoadProperties"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcStructuralProfileProperties"s, +"IfcStructuralSteelProfileProperties"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTerminatorSymbol"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTrapeziumProfileDef"s, +"IfcTwoDirectionRepeatFactor"s, +"IfcTypeObject"s, +"IfcTypeProduct"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationNotationSelect"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCurveStyleFontSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcPresentationStyleSelect"s, +"IfcSymbolStyleSelect"s, +"IfcValue"s, +"IfcAnnotationCurveOccurrence"s, +"IfcAnnotationFillArea"s, +"IfcAnnotationFillAreaOccurrence"s, +"IfcAnnotationSurface"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcCompositeCurveSegment"s, +"IfcCraneRailAShapeProfileDef"s, +"IfcCraneRailFShapeProfileDef"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcDefinedSymbol"s, +"IfcDimensionCurve"s, +"IfcDimensionCurveTerminator"s, +"IfcDirection"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorStyle"s, +"IfcDraughtingCallout"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEnergyProperties"s, +"IfcExtrudedAreaSolid"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTileSymbolWithStyle"s, +"IfcFillAreaStyleTiles"s, +"IfcFluidFlowProperties"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcLShapeProfileDef"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcPermeableCoveringProperties"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectionCurve"s, +"IfcPropertySet"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToProjectOrder"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesAppliedValue"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelAssociatesProfileProperties"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralElement"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInteractionRequirements"s, +"IfcRelNests"s, +"IfcRelOccupiesSpaces"s, +"IfcRelOverridesProperties"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSchedulesCostItems"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelVoidsElement"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSphere"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuredDimensionCallout"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTransportElementType"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcCsgSelect"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcDraughtingCalloutElement"s, +"IfcFillAreaStyleTileShapeSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcOrientationSelect"s, +"IfcShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAnnotation"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuilding"s, +"IfcBuildingElementType"s, +"IfcBuildingStorey"s, +"IfcCircleHollowProfileDef"s, +"IfcColumnType"s, +"IfcCompositeCurve"s, +"IfcConic"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcDimensionCurveDirectedCallout"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcElectricalBaseProperties"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEquipmentElement"s, +"IfcEquipmentStandard"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFurnishingElement"s, +"IfcFurnitureStandard"s, +"IfcGasTerminalType"s, +"IfcGrid"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLinearDimension"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMemberType"s, +"IfcMotorConnectionType"s, +"IfcMove"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOrderAction"s, +"IfcOutletType"s, +"IfcPerformanceHistory"s, +"IfcPermit"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlateType"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectOrderRecord"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRadiusDimension"s, +"IfcRailingType"s, +"IfcRampFlightType"s, +"IfcRelAggregates"s, +"IfcRelAssignsTasks"s, +"IfcSanitaryTerminalType"s, +"IfcScheduleTimeControl"s, +"IfcServiceLife"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceProgram"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLinearActionVarying"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPlanarAction"s, +"IfcStructuralPlanarActionVarying"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcTankType"s, +"IfcTimeSeriesSchedule"s, +"IfcTransformerType"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVirtualElement"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveOrEdgeCurve"s, +"IfcStructuralActivityAssignmentSelect"s, +"Ifc2DCompositeCurve"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAngularDimension"s, +"IfcAsset"s, +"IfcBSplineCurve"s, +"IfcBeamType"s, +"IfcBezierCurve"s, +"IfcBoilerType"s, +"IfcBuildingElement"s, +"IfcBuildingElementComponent"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementProxy"s, +"IfcBuildingElementProxyType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableSegmentType"s, +"IfcChillerType"s, +"IfcCircle"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcCondition"s, +"IfcConditionCriterion"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDiameterDimension"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDoor"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcEdgeFeature"s, +"IfcElectricApplianceType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricHeaterType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcElectricalCircuit"s, +"IfcElectricalElement"s, +"IfcEnergyConversionDevice"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcMember"s, +"IfcPile"s, +"IfcPlate"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBezierCurve"s, +"IfcReinforcingElement"s, +"IfcReinforcingMesh"s, +"IfcRoof"s, +"IfcRoundedEdgeFeature"s, +"IfcSensorType"s, +"IfcSlab"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcVibrationIsolatorType"s, +"IfcWall"s, +"IfcWallStandardCase"s, +"IfcWindow"s, +"IfcActuatorType"s, +"IfcAlarmType"s, +"IfcBeam"s, +"IfcChamferEdgeFeature"s, +"IfcControllerType"s, +"IfcDistributionChamberElement"s, +"IfcDistributionControlElement"s, +"IfcElectricDistributionPoint"s, +"IfcReinforcingBar"s, +"RequestID"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"PredefinedType"s, +"Purpose"s, +"UserDefinedPurpose"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"FillStyleTarget"s, +"GlobalOrLocal"s, +"Item"s, +"TextureCoordinates"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"ComponentOfTotal"s, +"Components"s, +"ArithmeticOperator"s, +"ApprovalDateTime"s, +"ApprovalStatus"s, +"ApprovalLevel"s, +"ApprovalQualifier"s, +"Identifier"s, +"Actor"s, +"Approval"s, +"ApprovedProperties"s, +"RelatedApproval"s, +"RelatingApproval"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"AssetID"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"CentreOfGravityInY"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"LinearStiffnessByLengthX"s, +"LinearStiffnessByLengthY"s, +"LinearStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"LinearStiffnessByAreaX"s, +"LinearStiffnessByAreaY"s, +"LinearStiffnessByAreaZ"s, +"LinearStiffnessX"s, +"LinearStiffnessY"s, +"LinearStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"CompositionType"s, +"Elevation"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"CentreOfGravityInX"s, +"DayComponent"s, +"MonthComponent"s, +"YearComponent"s, +"Coordinates"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"Height"s, +"Radius"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Notation"s, +"ItemOf"s, +"Title"s, +"RelatingItem"s, +"RelatedItems"s, +"NotationFacets"s, +"NotationValue"s, +"ReferencedSource"s, +"Red"s, +"Green"s, +"Blue"s, +"UsageName"s, +"HasProperties"s, +"Segments"s, +"Transition"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Criterion"s, +"CriterionDateTime"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"LocationAtRelatingElement"s, +"LocationAtRelatedElement"s, +"ProfileOfPort"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"RelatingConstraint"s, +"RelatedConstraints"s, +"LogicalAggregator"s, +"ClassifiedConstraint"s, +"RelatedClassifications"s, +"Suppliers"s, +"UsageRatio"s, +"ResourceIdentifier"s, +"ResourceGroup"s, +"ResourceConsumption"s, +"BaseQuantity"s, +"ConversionFactor"s, +"HourOffset"s, +"MinuteOffset"s, +"Sense"s, +"SubmittedBy"s, +"PreparedBy"s, +"SubmittedOn"s, +"Status"s, +"TargetUsers"s, +"UpdateDate"s, +"ID"s, +"CostType"s, +"Condition"s, +"OverallHeight"s, +"BaseWidth2"s, +"HeadWidth"s, +"HeadDepth2"s, +"HeadDepth3"s, +"WebThickness"s, +"BaseWidth4"s, +"BaseDepth1"s, +"BaseDepth2"s, +"BaseDepth3"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"DateComponent"s, +"TimeComponent"s, +"Definition"s, +"Target"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"ControlElementId"s, +"FlowDirection"s, +"FileExtension"s, +"MimeContentType"s, +"MimeSubtype"s, +"DocumentId"s, +"DocumentReferences"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"OverallWidth"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"OperationType"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"Contents"s, +"RelatingDraughtingCallout"s, +"RelatedDraughtingCallout"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"FeatureLength"s, +"EdgeList"s, +"DistributionPointFunction"s, +"UserDefinedFunction"s, +"ElectricCurrentType"s, +"InputVoltage"s, +"InputFrequency"s, +"FullLoadCurrent"s, +"MinimumCircuitCurrent"s, +"MaximumPowerInput"s, +"RatedPowerInput"s, +"InputPhase"s, +"Tag"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EnergySequence"s, +"UserDefinedEnergySequence"s, +"ImpactType"s, +"Category"s, +"UserDefinedCategory"s, +"ExtendedProperties"s, +"Location"s, +"ItemReference"s, +"ExtrudedDirection"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"Voids"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"Symbol"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"PropertySource"s, +"FlowConditionTimeSeries"s, +"VelocityTimeSeries"s, +"FlowrateTimeSeries"s, +"Fluid"s, +"PressureTimeSeries"s, +"UserDefinedPropertySource"s, +"TemperatureSingleValue"s, +"WetBulbTemperatureSingleValue"s, +"WetBulbTemperatureTimeSeries"s, +"TemperatureTimeSeries"s, +"FlowrateSingleValue"s, +"FlowConditionSingleValue"s, +"VelocitySingleValue"s, +"PressureSingleValue"s, +"CombustionTemperature"s, +"CarbonContent"s, +"LowerHeatingValue"s, +"HigherHeatingValue"s, +"MolecularWeight"s, +"Porosity"s, +"MassDensity"s, +"PhysicalWeight"s, +"Perimeter"s, +"MinimumPlateThickness"s, +"MaximumPlateThickness"s, +"CrossSectionArea"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"UpperVaporResistanceFactor"s, +"LowerVaporResistanceFactor"s, +"IsothermalMoistureCapacity"s, +"VaporPermeability"s, +"MoistureDiffusivity"s, +"OverallDepth"s, +"FlangeThickness"s, +"FilletRadius"s, +"UrlReference"s, +"InventoryType"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"EdgeRadius"s, +"LegSlope"s, +"SkillSet"s, +"Publisher"s, +"VersionDate"s, +"LibraryReference"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"PlacementRelTo"s, +"RelativePlacement"s, +"HourComponent"s, +"MinuteComponent"s, +"SecondComponent"s, +"Zone"s, +"DaylightSavingOffset"s, +"Outer"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"RepresentedMaterial"s, +"Material"s, +"LayerThickness"s, +"IsVentilated"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"Materials"s, +"ValueComponent"s, +"UnitComponent"s, +"CompressiveStrength"s, +"MaxAggregateSize"s, +"AdmixturesDescription"s, +"Workability"s, +"ProtectivePoreRatio"s, +"WaterImpermeability"s, +"NominalDiameter"s, +"NominalLength"s, +"DynamicViscosity"s, +"YoungModulus"s, +"ShearModulus"s, +"PoissonRatio"s, +"ThermalExpansionCoefficient"s, +"YieldStress"s, +"UltimateStress"s, +"UltimateStrain"s, +"HardeningModule"s, +"ProportionalStress"s, +"PlasticStrain"s, +"Relaxations"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"Currency"s, +"MoveFrom"s, +"MoveTo"s, +"PunchList"s, +"Dimensions"s, +"ObjectType"s, +"BenchmarkValues"s, +"ResultValues"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Distance"s, +"RepeatFactor"s, +"VisibleTransmittance"s, +"SolarTransmittance"s, +"ThermalIrTransmittance"s, +"ThermalIrEmissivityBack"s, +"ThermalIrEmissivityFront"s, +"VisibleReflectanceBack"s, +"VisibleReflectanceFront"s, +"SolarReflectanceFront"s, +"SolarReflectanceBack"s, +"ActionID"s, +"Id"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"PermitID"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Usage"s, +"ColourComponents"s, +"Pixel"s, +"Placement"s, +"SizeInX"s, +"SizeInY"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Points"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"Styles"s, +"ProcedureID"s, +"ProcedureType"s, +"UserDefinedProcedureType"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"SpecificHeatCapacity"s, +"N20Content"s, +"COContent"s, +"CO2Content"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"LongName"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"Records"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"RelatedProperties"s, +"DependingProperty"s, +"DependantProperty"s, +"Expression"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"ProxyType"s, +"AreaValue"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"ShapeType"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"ReferencedDocument"s, +"ReferencingValues"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"BarLength"s, +"BarRole"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"TimeForTask"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingAppliedValue"s, +"RelatingClassification"s, +"Intent"s, +"RelatingLibrary"s, +"RelatingMaterial"s, +"RelatingProfileProperties"s, +"ProfileSectionLocation"s, +"ProfileOrientation"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatedStructuralMember"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatedSpace"s, +"RelatingObject"s, +"RelatingPropertyDefinition"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"DailyInteraction"s, +"ImportanceRating"s, +"LocationOfInteraction"s, +"RelatedSpaceProgram"s, +"RelatingSpaceProgram"s, +"OverridingProperties"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"RelatingSpace"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"RelatedOpeningElement"s, +"RelaxationValue"s, +"InitialStress"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"Angle"s, +"RibHeight"s, +"RibWidth"s, +"RibSpacing"s, +"Direction"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"ActualStart"s, +"EarlyStart"s, +"LateStart"s, +"ScheduleStart"s, +"ActualFinish"s, +"EarlyFinish"s, +"LateFinish"s, +"ScheduleFinish"s, +"ScheduleDuration"s, +"ActualDuration"s, +"RemainingTime"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"StatusTime"s, +"StartFloat"s, +"FinishFloat"s, +"Completion"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"SpineCurve"s, +"CrossSections"s, +"CrossSectionPositions"s, +"ServiceLifeType"s, +"ServiceLifeDuration"s, +"UpperValue"s, +"MostUsedValue"s, +"LowerValue"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"IsAttenuating"s, +"SoundScale"s, +"SoundValues"s, +"SoundLevelTimeSeries"s, +"Frequency"s, +"SoundLevelSingleValue"s, +"InteriorOrExteriorSpace"s, +"ElevationWithFlooring"s, +"SpaceProgramIdentifier"s, +"MaxRequiredArea"s, +"MinRequiredArea"s, +"RequestedLocation"s, +"StandardRequiredArea"s, +"ApplicableValueRatio"s, +"ThermalLoadSource"s, +"SourceDescription"s, +"MaximumValue"s, +"MinimumValue"s, +"ThermalLoadTimeSeriesValues"s, +"UserDefinedThermalLoadSource"s, +"ThermalLoadType"s, +"NumberOfRiser"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"CausedBy"s, +"AppliedLoad"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"ProjectedOrTrue"s, +"VaryingAppliedLoadLocation"s, +"SubsequentAppliedLoads"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaT_Constant"s, +"DeltaT_Y"s, +"DeltaT_Z"s, +"TorsionalConstantX"s, +"MomentOfInertiaYZ"s, +"MomentOfInertiaY"s, +"MomentOfInertiaZ"s, +"WarpingConstant"s, +"ShearCentreZ"s, +"ShearCentreY"s, +"ShearDeformationAreaZ"s, +"ShearDeformationAreaY"s, +"MaximumSectionModulusY"s, +"MinimumSectionModulusY"s, +"MaximumSectionModulusZ"s, +"MinimumSectionModulusZ"s, +"TorsionalSectionModulus"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"ShearAreaZ"s, +"ShearAreaY"s, +"PlasticShapeFactorY"s, +"PlasticShapeFactorZ"s, +"SubsequentThickness"s, +"VaryingThicknessLocation"s, +"SubContractor"s, +"JobDescription"s, +"ParentEdge"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"ReferenceSurface"s, +"AxisPosition"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"Transparency"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"TextureType"s, +"TextureTransform"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"StyleOfSymbol"s, +"FlangeWidth"s, +"FlangeEdgeRadius"s, +"WebEdgeRadius"s, +"WebSlope"s, +"FlangeSlope"s, +"Rows"s, +"RowCells"s, +"IsHeading"s, +"TaskId"s, +"WorkMethod"s, +"IsMilestone"s, +"Priority"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"AnnotatedCurve"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"BoxHeight"s, +"BoxWidth"s, +"BoxSlantAngle"s, +"BoxRotateAngle"s, +"CharacterSpacing"s, +"Mode"s, +"Parameter"s, +"TextureMaps"s, +"BoilingPoint"s, +"FreezingPoint"s, +"ThermalConductivity"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"ReferencedTimeSeries"s, +"TimeSeriesReferences"s, +"ApplicableDates"s, +"TimeSeriesScheduleType"s, +"TimeSeries"s, +"CapacityByWeight"s, +"CapacityByNumber"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"MasterRepresentation"s, +"SecondRepeatFactor"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"RepresentationMaps"s, +"Units"s, +"Magnitude"s, +"TextureVertices"s, +"TexturePoints"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"IsPotable"s, +"Hardness"s, +"AlkalinityConcentration"s, +"AcidityConcentration"s, +"ImpuritiesContent"s, +"PHLevel"s, +"DissolvedSolidsContent"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"WorkControlType"s, +"UserDefinedControlType"s, +"IsActingUpon"s, +"OfPerson"s, +"OfOrganization"s, +"ContainedInStructure"s, +"ValuesReferenced"s, +"ValueOfComponents"s, +"IsComponentIn"s, +"Actors"s, +"IsRelatedWith"s, +"Relates"s, +"Contains"s, +"IsClassifiedItemIn"s, +"IsClassifyingItemIn"s, +"UsingCurves"s, +"ClassifiedAs"s, +"RelatesConstraints"s, +"PropertiesForConstraint"s, +"Aggregates"s, +"IsAggregatedIn"s, +"Controls"s, +"CoversSpaces"s, +"Covers"s, +"AnnotatedBySymbols"s, +"AssignedToFlowElement"s, +"HasControlElements"s, +"IsPointedTo"s, +"IsPointer"s, +"ReferenceToDocument"s, +"IsRelatedFromCallout"s, +"IsRelatedToCallout"s, +"HasStructuralMember"s, +"FillsVoids"s, +"ConnectedTo"s, +"HasCoverings"s, +"HasProjections"s, +"ReferencedInStructures"s, +"HasPorts"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ReferenceIntoLibrary"s, +"HasRepresentation"s, +"ToMaterialLayerSet"s, +"IsDefinedBy"s, +"HasAssignments"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"ReferencedByPlacements"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"OperatesOn"s, +"IsSuccessorFrom"s, +"IsPredecessorTo"s, +"ReferencedBy"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"PropertyDefinitionOf"s, +"DefinesType"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"ScheduleTimeControlAssigned"s, +"OfShapeAspect"s, +"BoundedBy"s, +"HasInteractionReqsFrom"s, +"HasInteractionReqsTo"s, +"ReferencesElements"s, +"ServicedBySystems"s, +"ContainsElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ReferencesElement"s, +"ConnectedBy"s, +"Causes"s, +"ResultGroupFor"s, +"ServicesBuildings"s, +"OfTable"s, +"AnnotatedSurface"s, +"DocumentedBy"s, +"ObjectTypeOf"s, +"IFC2X3"s}; #if defined(__clang__) __attribute__((optnone)) @@ -1964,10565 +5019,8382 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC2X3_populate_schema() { - IFC2X3_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 1, new simple_type(simple_type::real_type)); - IFC2X3_IfcAccelerationMeasure_type = new type_declaration("IfcAccelerationMeasure", 2, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_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"); - IFC2X3_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"); - IFC2X3_IfcActuatorTypeEnum_type = new enumeration_type("IfcActuatorTypeEnum", 10, 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"); - IFC2X3_IfcAddressTypeEnum_type = new enumeration_type("IfcAddressTypeEnum", 12, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AHEAD"); - items.push_back("BEHIND"); - IFC2X3_IfcAheadOrBehind_type = new enumeration_type("IfcAheadOrBehind", 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"); - IFC2X3_IfcAirTerminalBoxTypeEnum_type = new enumeration_type("IfcAirTerminalBoxTypeEnum", 15, items); - } - { - std::vector items; items.reserve(9); - items.push_back("DIFFUSER"); - items.push_back("EYEBALL"); - items.push_back("GRILLE"); - items.push_back("IRIS"); - items.push_back("LINEARDIFFUSER"); - items.push_back("LINEARGRILLE"); - items.push_back("NOTDEFINED"); - items.push_back("REGISTER"); - items.push_back("USERDEFINED"); - IFC2X3_IfcAirTerminalTypeEnum_type = new enumeration_type("IfcAirTerminalTypeEnum", 17, 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"); - IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 19, 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"); - IFC2X3_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 21, items); - } - IFC2X3_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 22, 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"); - IFC2X3_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 23, 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"); - IFC2X3_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 24, items); - } - IFC2X3_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 26, new simple_type(simple_type::real_type)); - IFC2X3_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 47, 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"); - IFC2X3_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 48, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC2X3_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 49, 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"); - IFC2X3_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 81, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BEAM"); - items.push_back("JOIST"); - items.push_back("LINTEL"); - items.push_back("NOTDEFINED"); - items.push_back("T_BEAM"); - items.push_back("USERDEFINED"); - IFC2X3_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 58, items); - } - { - std::vector items; items.reserve(6); - items.push_back("EQUALTO"); - items.push_back("GREATERTHAN"); - items.push_back("GREATERTHANOREQUALTO"); - items.push_back("LESSTHAN"); - items.push_back("LESSTHANOREQUALTO"); - items.push_back("NOTEQUALTO"); - IFC2X3_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 59, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("STEAM"); - items.push_back("USERDEFINED"); - items.push_back("WATER"); - IFC2X3_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 64, items); - } - IFC2X3_IfcBoolean_type = new type_declaration("IfcBoolean", 65, 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"); - IFC2X3_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 68, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 88, 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"); - IFC2X3_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 92, 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"); - IFC2X3_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 94, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CABLESEGMENT"); - items.push_back("CONDUCTORSEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 96, items); - } - { - std::vector items; items.reserve(6); - items.push_back("ADDED"); - items.push_back("DELETED"); - items.push_back("MODIFIED"); - items.push_back("MODIFIEDADDED"); - items.push_back("MODIFIEDDELETED"); - items.push_back("NOCHANGE"); - IFC2X3_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 106, 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"); - IFC2X3_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 109, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DXCOOLINGCOIL"); - items.push_back("ELECTRICHEATINGCOIL"); - items.push_back("GASHEATINGCOIL"); - items.push_back("NOTDEFINED"); - items.push_back("STEAMHEATINGCOIL"); - items.push_back("USERDEFINED"); - items.push_back("WATERCOOLINGCOIL"); - items.push_back("WATERHEATINGCOIL"); - IFC2X3_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 122, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COLUMN"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 129, items); - } - IFC2X3_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 130, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); - IFC2X3_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 135, 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"); - IFC2X3_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 137, items); - } - { - std::vector items; items.reserve(8); - items.push_back("AIRCOOLED"); - items.push_back("EVAPORATIVECOOLED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WATERCOOLEDBRAZEDPLATE"); - items.push_back("WATERCOOLEDSHELLCOIL"); - items.push_back("WATERCOOLEDSHELLTUBE"); - items.push_back("WATERCOOLEDTUBEINTUBE"); - IFC2X3_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 139, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC2X3_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 151, 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"); - IFC2X3_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 155, items); - } - IFC2X3_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 161, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(8); - items.push_back("FLOATING"); - items.push_back("NOTDEFINED"); - items.push_back("PROPORTIONAL"); - items.push_back("PROPORTIONALINTEGRAL"); - items.push_back("PROPORTIONALINTEGRALDERIVATIVE"); - items.push_back("TIMEDTWOPOSITION"); - items.push_back("TWOPOSITION"); - items.push_back("USERDEFINED"); - IFC2X3_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 165, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC2X3_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 168, 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"); - IFC2X3_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 170, 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"); - IFC2X3_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 174, items); - } - IFC2X3_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 176, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(10); - items.push_back("CEILING"); - items.push_back("CLADDING"); - items.push_back("FLOORING"); - items.push_back("INSULATION"); - items.push_back("MEMBRANE"); - items.push_back("NOTDEFINED"); - items.push_back("ROOFING"); - items.push_back("SLEEVING"); - items.push_back("USERDEFINED"); - items.push_back("WRAPPING"); - IFC2X3_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 179, items); - } - { - std::vector items; items.reserve(83); - items.push_back("AED"); - items.push_back("AES"); - items.push_back("ATS"); - items.push_back("AUD"); - items.push_back("BBD"); - items.push_back("BEG"); - items.push_back("BGL"); - items.push_back("BHD"); - items.push_back("BMD"); - items.push_back("BND"); - items.push_back("BRL"); - items.push_back("BSD"); - items.push_back("BWP"); - items.push_back("BZD"); - items.push_back("CAD"); - items.push_back("CBD"); - items.push_back("CHF"); - items.push_back("CLP"); - items.push_back("CNY"); - items.push_back("CYS"); - items.push_back("CZK"); - items.push_back("DDP"); - items.push_back("DEM"); - items.push_back("DKK"); - items.push_back("EGL"); - items.push_back("EST"); - items.push_back("EUR"); - items.push_back("FAK"); - items.push_back("FIM"); - items.push_back("FJD"); - items.push_back("FKP"); - items.push_back("FRF"); - items.push_back("GBP"); - items.push_back("GIP"); - items.push_back("GMD"); - items.push_back("GRX"); - items.push_back("HKD"); - items.push_back("HUF"); - items.push_back("ICK"); - items.push_back("IDR"); - items.push_back("ILS"); - items.push_back("INR"); - items.push_back("IRP"); - items.push_back("ITL"); - items.push_back("JMD"); - items.push_back("JOD"); - items.push_back("JPY"); - items.push_back("KES"); - items.push_back("KRW"); - items.push_back("KWD"); - items.push_back("KYD"); - items.push_back("LKR"); - items.push_back("LUF"); - items.push_back("MTL"); - items.push_back("MUR"); - items.push_back("MXN"); - items.push_back("MYR"); - items.push_back("NLG"); - items.push_back("NOK"); - items.push_back("NZD"); - items.push_back("OMR"); - items.push_back("PGK"); - items.push_back("PHP"); - items.push_back("PKR"); - items.push_back("PLN"); - items.push_back("PTN"); - items.push_back("QAR"); - items.push_back("RUR"); - items.push_back("SAR"); - items.push_back("SCR"); - items.push_back("SEK"); - items.push_back("SGD"); - items.push_back("SKP"); - items.push_back("THB"); - items.push_back("TRL"); - items.push_back("TTD"); - items.push_back("TWD"); - items.push_back("USD"); - items.push_back("VEB"); - items.push_back("VND"); - items.push_back("XEU"); - items.push_back("ZAR"); - items.push_back("ZWD"); - IFC2X3_IfcCurrencyEnum_type = new enumeration_type("IfcCurrencyEnum", 187, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 191, items); - } - IFC2X3_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 192, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 203, 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"); - IFC2X3_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 204, items); - } - IFC2X3_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 207, new simple_type(simple_type::integer_type)); - IFC2X3_IfcDaylightSavingHour_type = new type_declaration("IfcDaylightSavingHour", 208, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(49); - items.push_back("ACCELERATIONUNIT"); - items.push_back("ANGULARVELOCITYUNIT"); - 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("SOUNDPOWERUNIT"); - items.push_back("SOUNDPRESSUREUNIT"); - items.push_back("SPECIFICHEATCAPACITYUNIT"); - items.push_back("TEMPERATUREGRADIENTUNIT"); - 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"); - IFC2X3_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 215, items); - } - IFC2X3_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 216, new simple_type(simple_type::string_type)); - IFC2X3_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 220, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("ORIGIN"); - items.push_back("TARGET"); - IFC2X3_IfcDimensionExtentUsage_type = new enumeration_type("IfcDimensionExtentUsage", 224, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC2X3_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 227, 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"); - IFC2X3_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 232, 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"); - IFC2X3_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 240, 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"); - IFC2X3_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 246, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DOUBLE_ACTING"); - 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"); - IFC2X3_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 249, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC2X3_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 250, 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"); - IFC2X3_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 253, 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"); - IFC2X3_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 254, items); - } - IFC2X3_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 255, 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"); - IFC2X3_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 263, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC2X3_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 265, 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"); - IFC2X3_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 267, items); - } - IFC2X3_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 268, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(26); - items.push_back("COMPUTER"); - items.push_back("DIRECTWATERHEATER"); - items.push_back("DISHWASHER"); - items.push_back("ELECTRICCOOKER"); - items.push_back("ELECTRICHEATER"); - items.push_back("FACSIMILE"); - items.push_back("FREESTANDINGFAN"); - items.push_back("FREEZER"); - items.push_back("FRIDGE_FREEZER"); - items.push_back("HANDDRYER"); - items.push_back("INDIRECTWATERHEATER"); - items.push_back("MICROWAVE"); - items.push_back("NOTDEFINED"); - items.push_back("PHOTOCOPIER"); - items.push_back("PRINTER"); - items.push_back("RADIANTHEATER"); - items.push_back("REFRIGERATOR"); - items.push_back("SCANNER"); - items.push_back("TELEPHONE"); - items.push_back("TUMBLEDRYER"); - items.push_back("TV"); - items.push_back("USERDEFINED"); - items.push_back("VENDINGMACHINE"); - items.push_back("WASHINGMACHINE"); - items.push_back("WATERCOOLER"); - items.push_back("WATERHEATER"); - IFC2X3_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 277, items); - } - IFC2X3_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 278, new simple_type(simple_type::real_type)); - IFC2X3_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 279, new simple_type(simple_type::real_type)); - IFC2X3_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 280, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(3); - items.push_back("ALTERNATING"); - items.push_back("DIRECT"); - items.push_back("NOTDEFINED"); - IFC2X3_IfcElectricCurrentEnum_type = new enumeration_type("IfcElectricCurrentEnum", 281, items); - } - IFC2X3_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 282, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ALARMPANEL"); - items.push_back("CONSUMERUNIT"); - items.push_back("CONTROLPANEL"); - items.push_back("DISTRIBUTIONBOARD"); - items.push_back("GASDETECTORPANEL"); - items.push_back("INDICATORPANEL"); - items.push_back("MIMICPANEL"); - items.push_back("MOTORCONTROLCENTRE"); - items.push_back("NOTDEFINED"); - items.push_back("SWITCHBOARD"); - items.push_back("USERDEFINED"); - IFC2X3_IfcElectricDistributionPointFunctionEnum_type = new enumeration_type("IfcElectricDistributionPointFunctionEnum", 284, 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"); - IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 286, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 288, items); - } - { - std::vector items; items.reserve(5); - items.push_back("ELECTRICCABLEHEATER"); - items.push_back("ELECTRICMATHEATER"); - items.push_back("ELECTRICPOINTHEATER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcElectricHeaterTypeEnum_type = new enumeration_type("IfcElectricHeaterTypeEnum", 290, 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"); - IFC2X3_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 292, items); - } - IFC2X3_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 293, 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"); - IFC2X3_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 295, items); - } - IFC2X3_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 296, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ACCESSORY_ASSEMBLY"); - items.push_back("ARCH"); - items.push_back("BEAM_GRID"); - items.push_back("BRACED_FRAME"); - items.push_back("GIRDER"); - items.push_back("NOTDEFINED"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SLAB_FIELD"); - items.push_back("TRUSS"); - items.push_back("USERDEFINED"); - IFC2X3_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 300, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC2X3_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 303, items); - } - IFC2X3_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 310, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("AUXILIARY"); - items.push_back("NOTDEFINED"); - items.push_back("PRIMARY"); - items.push_back("SECONDARY"); - items.push_back("TERTIARY"); - items.push_back("USERDEFINED"); - IFC2X3_IfcEnergySequenceEnum_type = new enumeration_type("IfcEnergySequenceEnum", 312, items); - } - { - std::vector items; items.reserve(8); - items.push_back("COMBINEDVALUE"); - items.push_back("DISPOSAL"); - items.push_back("EXTRACTION"); - items.push_back("INSTALLATION"); - items.push_back("MANUFACTURE"); - items.push_back("NOTDEFINED"); - items.push_back("TRANSPORTATION"); - items.push_back("USERDEFINED"); - IFC2X3_IfcEnvironmentalImpactCategoryEnum_type = new enumeration_type("IfcEnvironmentalImpactCategoryEnum", 313, 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"); - IFC2X3_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 318, items); - } - { - std::vector items; items.reserve(7); - 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"); - IFC2X3_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 320, 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"); - IFC2X3_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 337, items); - } - { - std::vector items; items.reserve(7); - items.push_back("AIRPARTICLEFILTER"); - items.push_back("NOTDEFINED"); - items.push_back("ODORFILTER"); - items.push_back("OILFILTER"); - items.push_back("STRAINER"); - items.push_back("USERDEFINED"); - items.push_back("WATERFILTER"); - IFC2X3_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 350, 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"); - IFC2X3_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 352, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC2X3_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 355, 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"); - IFC2X3_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 359, items); - } - { - std::vector items; items.reserve(8); - items.push_back("ELECTRICMETER"); - items.push_back("ENERGYMETER"); - items.push_back("FLOWMETER"); - items.push_back("GASMETER"); - items.push_back("NOTDEFINED"); - items.push_back("OILMETER"); - items.push_back("USERDEFINED"); - items.push_back("WATERMETER"); - IFC2X3_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 361, items); - } - IFC2X3_IfcFontStyle_type = new type_declaration("IfcFontStyle", 373, new simple_type(simple_type::string_type)); - IFC2X3_IfcFontVariant_type = new type_declaration("IfcFontVariant", 374, new simple_type(simple_type::string_type)); - IFC2X3_IfcFontWeight_type = new type_declaration("IfcFontWeight", 375, new simple_type(simple_type::string_type)); - { - std::vector items; items.reserve(6); - 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"); - IFC2X3_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 377, items); - } - IFC2X3_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 378, new simple_type(simple_type::real_type)); - IFC2X3_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 379, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("GASAPPLIANCE"); - items.push_back("GASBOOSTER"); - items.push_back("GASBURNER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcGasTerminalTypeEnum_type = new enumeration_type("IfcGasTerminalTypeEnum", 386, 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"); - IFC2X3_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 390, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC2X3_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 397, items); - } - IFC2X3_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 396, new simple_type(simple_type::string_type)); - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("USERDEFINED"); - IFC2X3_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 405, items); - } - IFC2X3_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 406, new simple_type(simple_type::real_type)); - IFC2X3_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 407, new simple_type(simple_type::real_type)); - IFC2X3_IfcHourInDay_type = new type_declaration("IfcHourInDay", 408, new simple_type(simple_type::integer_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"); - IFC2X3_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 410, items); - } - IFC2X3_IfcIdentifier_type = new type_declaration("IfcIdentifier", 412, new simple_type(simple_type::string_type)); - IFC2X3_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 413, new simple_type(simple_type::real_type)); - IFC2X3_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 415, new simple_type(simple_type::real_type)); - IFC2X3_IfcInteger_type = new type_declaration("IfcInteger", 416, new simple_type(simple_type::integer_type)); - IFC2X3_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 417, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(3); - items.push_back("EXTERNAL"); - items.push_back("INTERNAL"); - items.push_back("NOTDEFINED"); - IFC2X3_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 418, 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"); - IFC2X3_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 420, items); - } - IFC2X3_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 421, new simple_type(simple_type::real_type)); - IFC2X3_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 425, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 427, items); - } - IFC2X3_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 428, new simple_type(simple_type::real_type)); - IFC2X3_IfcLabel_type = new type_declaration("IfcLabel", 429, new simple_type(simple_type::string_type)); - { - std::vector items; items.reserve(8); - items.push_back("COMPACTFLUORESCENT"); - items.push_back("FLUORESCENT"); - items.push_back("HIGHPRESSUREMERCURY"); - items.push_back("HIGHPRESSURESODIUM"); - items.push_back("METALHALIDE"); - items.push_back("NOTDEFINED"); - items.push_back("TUNGSTENFILAMENT"); - items.push_back("USERDEFINED"); - IFC2X3_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 432, items); - } - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC2X3_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 434, items); - } - IFC2X3_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 435, 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"); - IFC2X3_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 439, 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"); - IFC2X3_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 442, items); - } - { - std::vector items; items.reserve(4); - items.push_back("DIRECTIONSOURCE"); - items.push_back("NOTDEFINED"); - items.push_back("POINTSOURCE"); - items.push_back("USERDEFINED"); - IFC2X3_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 444, items); - } - IFC2X3_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 454, new simple_type(simple_type::real_type)); - IFC2X3_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 455, new simple_type(simple_type::real_type)); - IFC2X3_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 456, new simple_type(simple_type::real_type)); - IFC2X3_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 457, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("LOAD_CASE"); - items.push_back("LOAD_COMBINATION"); - items.push_back("LOAD_COMBINATION_GROUP"); - items.push_back("LOAD_GROUP"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 458, items); - } - IFC2X3_IfcLogical_type = new type_declaration("IfcLogical", 461, new simple_type(simple_type::logical_type)); - { - std::vector items; items.reserve(2); - items.push_back("LOGICALAND"); - items.push_back("LOGICALOR"); - IFC2X3_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 462, items); - } - IFC2X3_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 465, new simple_type(simple_type::real_type)); - IFC2X3_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 466, new simple_type(simple_type::real_type)); - IFC2X3_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 467, new simple_type(simple_type::real_type)); - IFC2X3_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 468, new simple_type(simple_type::real_type)); - IFC2X3_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 469, new simple_type(simple_type::real_type)); - IFC2X3_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 472, new simple_type(simple_type::real_type)); - IFC2X3_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 473, new simple_type(simple_type::real_type)); - IFC2X3_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 474, new simple_type(simple_type::real_type)); - IFC2X3_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 475, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(14); - 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("STRINGER"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("USERDEFINED"); - IFC2X3_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 494, items); - } - IFC2X3_IfcMinuteInHour_type = new type_declaration("IfcMinuteInHour", 497, new simple_type(simple_type::integer_type)); - IFC2X3_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 498, new simple_type(simple_type::real_type)); - IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 499, new simple_type(simple_type::real_type)); - IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 500, new simple_type(simple_type::real_type)); - IFC2X3_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 501, new simple_type(simple_type::real_type)); - IFC2X3_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 502, new simple_type(simple_type::real_type)); - IFC2X3_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 503, new simple_type(simple_type::real_type)); - IFC2X3_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 504, new simple_type(simple_type::real_type)); - IFC2X3_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 505, new simple_type(simple_type::real_type)); - IFC2X3_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 507, 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"); - IFC2X3_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 509, items); - } - { - std::vector items; items.reserve(1); - items.push_back("NULL"); - IFC2X3_IfcNullStyle_type = new enumeration_type("IfcNullStyle", 513, items); - } - IFC2X3_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 514, 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"); - IFC2X3_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 521, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CODECOMPLIANCE"); - items.push_back("DESIGNINTENT"); - items.push_back("HEALTHANDSAFETY"); - items.push_back("NOTDEFINED"); - items.push_back("REQUIREMENT"); - items.push_back("SPECIFICATION"); - items.push_back("TRIGGERCONDITION"); - items.push_back("USERDEFINED"); - IFC2X3_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 518, 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"); - IFC2X3_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 523, items); - } - { - std::vector items; items.reserve(5); - items.push_back("AUDIOVISUALOUTLET"); - items.push_back("COMMUNICATIONSOUTLET"); - items.push_back("NOTDEFINED"); - items.push_back("POWEROUTLET"); - items.push_back("USERDEFINED"); - IFC2X3_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 536, items); - } - IFC2X3_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 547, new simple_type(simple_type::real_type)); - IFC2X3_IfcParameterValue_type = new type_declaration("IfcParameterValue", 539, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 542, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC2X3_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 549, 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"); - IFC2X3_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 553, items); - } - { - std::vector items; items.reserve(5); - items.push_back("COHESION"); - items.push_back("FRICTION"); - items.push_back("NOTDEFINED"); - items.push_back("SUPPORT"); - items.push_back("USERDEFINED"); - IFC2X3_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 554, 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"); - IFC2X3_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 556, items); - } - { - std::vector items; items.reserve(6); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("GUTTER"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("SPOOL"); - items.push_back("USERDEFINED"); - IFC2X3_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 558, items); - } - IFC2X3_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 563, new simple_type(simple_type::real_type)); - IFC2X3_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 565, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("CURTAIN_PANEL"); - items.push_back("NOTDEFINED"); - items.push_back("SHEET"); - items.push_back("USERDEFINED"); - IFC2X3_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 568, items); - } - IFC2X3_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 577, new named_type(IFC2X3_IfcLengthMeasure_type)); - IFC2X3_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 578, new named_type(IFC2X3_IfcPlaneAngleMeasure_type)); - IFC2X3_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 581, new simple_type(simple_type::real_type)); - IFC2X3_IfcPresentableText_type = new type_declaration("IfcPresentableText", 590, new simple_type(simple_type::string_type)); - IFC2X3_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 596, 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"); - IFC2X3_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 598, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC2X3_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 606, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CHANGE"); - items.push_back("MAINTENANCE"); - items.push_back("MOVE"); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC2X3_IfcProjectOrderRecordTypeEnum_type = new enumeration_type("IfcProjectOrderRecordTypeEnum", 613, 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"); - IFC2X3_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 614, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC2X3_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 608, items); - } - { - std::vector items; items.reserve(9); - items.push_back("ASBUILT"); - items.push_back("COMMISSIONING"); - items.push_back("DESIGN"); - items.push_back("DESIGNMAXIMUM"); - items.push_back("DESIGNMINIMUM"); - items.push_back("MEASURED"); - items.push_back("NOTKNOWN"); - items.push_back("SIMULATED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcPropertySourceEnum_type = new enumeration_type("IfcPropertySourceEnum", 627, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CIRCUITBREAKER"); - items.push_back("EARTHFAILUREDEVICE"); - items.push_back("FUSEDISCONNECTOR"); - items.push_back("NOTDEFINED"); - items.push_back("RESIDUALCURRENTCIRCUITBREAKER"); - items.push_back("RESIDUALCURRENTSWITCH"); - items.push_back("USERDEFINED"); - items.push_back("VARISTOR"); - IFC2X3_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 630, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CIRCULATOR"); - items.push_back("ENDSUCTION"); - items.push_back("NOTDEFINED"); - items.push_back("SPLITCASE"); - items.push_back("USERDEFINED"); - items.push_back("VERTICALINLINE"); - items.push_back("VERTICALTURBINE"); - IFC2X3_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 633, items); - } - IFC2X3_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 640, 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"); - IFC2X3_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 644, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC2X3_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 648, 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"); - IFC2X3_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 649, items); - } - IFC2X3_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 650, new simple_type(simple_type::real_type)); - IFC2X3_IfcReal_type = new type_declaration("IfcReal", 652, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 658, items); - } - { - std::vector items; items.reserve(9); - 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"); - IFC2X3_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 663, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC2X3_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 664, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONSUMED"); - items.push_back("NOTCONSUMED"); - items.push_back("NOTDEFINED"); - items.push_back("NOTOCCUPIED"); - items.push_back("OCCUPIED"); - items.push_back("PARTIALLYCONSUMED"); - items.push_back("PARTIALLYOCCUPIED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcResourceConsumptionEnum_type = new enumeration_type("IfcResourceConsumptionEnum", 723, items); - } - { - std::vector items; items.reserve(2); - items.push_back("DIRECTION_X"); - items.push_back("DIRECTION_Y"); - IFC2X3_IfcRibPlateDirectionEnum_type = new enumeration_type("IfcRibPlateDirectionEnum", 725, 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("COMISSIONINGENGINEER"); - 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"); - IFC2X3_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 729, items); - } - { - std::vector items; items.reserve(14); - 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"); - IFC2X3_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 731, items); - } - IFC2X3_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 733, new simple_type(simple_type::real_type)); - IFC2X3_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 734, new simple_type(simple_type::real_type)); - IFC2X3_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 735, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 763, 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"); - IFC2X3_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 766, 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"); - IFC2X3_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 739, items); - } - IFC2X3_IfcSecondInMinute_type = new type_declaration("IfcSecondInMinute", 741, new simple_type(simple_type::real_type)); - IFC2X3_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 744, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC2X3_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 747, items); - } - IFC2X3_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 742, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(15); - items.push_back("CO2SENSOR"); - items.push_back("FIRESENSOR"); - items.push_back("FLOWSENSOR"); - items.push_back("GASSENSOR"); - items.push_back("HEATSENSOR"); - items.push_back("HUMIDITYSENSOR"); - items.push_back("LIGHTSENSOR"); - items.push_back("MOISTURESENSOR"); - items.push_back("MOVEMENTSENSOR"); - items.push_back("NOTDEFINED"); - items.push_back("PRESSURESENSOR"); - items.push_back("SMOKESENSOR"); - items.push_back("SOUNDSENSOR"); - items.push_back("TEMPERATURESENSOR"); - items.push_back("USERDEFINED"); - IFC2X3_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 749, items); - } - { - std::vector items; items.reserve(5); - items.push_back("FINISH_FINISH"); - items.push_back("FINISH_START"); - items.push_back("NOTDEFINED"); - items.push_back("START_FINISH"); - items.push_back("START_START"); - IFC2X3_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 750, items); - } - { - std::vector items; items.reserve(9); - items.push_back("A_QUALITYOFCOMPONENTS"); - items.push_back("B_DESIGNLEVEL"); - items.push_back("C_WORKEXECUTIONLEVEL"); - items.push_back("D_INDOORENVIRONMENT"); - items.push_back("E_OUTDOORENVIRONMENT"); - items.push_back("F_INUSECONDITIONS"); - items.push_back("G_MAINTENANCELEVEL"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcServiceLifeFactorTypeEnum_type = new enumeration_type("IfcServiceLifeFactorTypeEnum", 753, items); - } - { - std::vector items; items.reserve(5); - items.push_back("ACTUALSERVICELIFE"); - items.push_back("EXPECTEDSERVICELIFE"); - items.push_back("OPTIMISTICREFERENCESERVICELIFE"); - items.push_back("PESSIMISTICREFERENCESERVICELIFE"); - items.push_back("REFERENCESERVICELIFE"); - IFC2X3_IfcServiceLifeTypeEnum_type = new enumeration_type("IfcServiceLifeTypeEnum", 754, items); - } - IFC2X3_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 758, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("BASESLAB"); - items.push_back("FLOOR"); - items.push_back("LANDING"); - items.push_back("NOTDEFINED"); - items.push_back("ROOF"); - items.push_back("USERDEFINED"); - IFC2X3_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 770, items); - } - IFC2X3_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 772, new simple_type(simple_type::real_type)); - IFC2X3_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 774, new simple_type(simple_type::real_type)); - IFC2X3_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 775, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(7); - items.push_back("DBA"); - items.push_back("DBB"); - items.push_back("DBC"); - items.push_back("NC"); - items.push_back("NOTDEFINED"); - items.push_back("NR"); - items.push_back("USERDEFINED"); - IFC2X3_IfcSoundScaleEnum_type = new enumeration_type("IfcSoundScaleEnum", 777, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BASEBOARDHEATER"); - items.push_back("CONVECTOR"); - items.push_back("FINNEDTUBEUNIT"); - items.push_back("NOTDEFINED"); - items.push_back("PANELRADIATOR"); - items.push_back("SECTIONALRADIATOR"); - items.push_back("TUBULARRADIATOR"); - items.push_back("UNITHEATER"); - items.push_back("USERDEFINED"); - IFC2X3_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 781, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 785, items); - } - IFC2X3_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 788, new simple_type(simple_type::real_type)); - IFC2X3_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 789, new simple_type(simple_type::real_type)); - IFC2X3_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 791, 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"); - IFC2X3_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 794, 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"); - IFC2X3_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 798, 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"); - IFC2X3_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 799, 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"); - IFC2X3_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 800, 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"); - IFC2X3_IfcStructuralCurveTypeEnum_type = new enumeration_type("IfcStructuralCurveTypeEnum", 810, 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"); - IFC2X3_IfcStructuralSurfaceTypeEnum_type = new enumeration_type("IfcStructuralSurfaceTypeEnum", 837, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC2X3_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 849, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BUMP"); - items.push_back("NOTDEFINED"); - items.push_back("OPACITY"); - items.push_back("REFLECTION"); - items.push_back("SELFILLUMINATION"); - items.push_back("SHININESS"); - items.push_back("SPECULAR"); - items.push_back("TEXTURE"); - items.push_back("TRANSPARENCYMAP"); - IFC2X3_IfcSurfaceTextureEnum_type = new enumeration_type("IfcSurfaceTextureEnum", 858, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CONTACTOR"); - items.push_back("EMERGENCYSTOP"); - items.push_back("NOTDEFINED"); - items.push_back("STARTER"); - items.push_back("SWITCHDISCONNECTOR"); - items.push_back("TOGGLESWITCH"); - items.push_back("USERDEFINED"); - IFC2X3_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 863, items); - } - { - std::vector items; items.reserve(6); - items.push_back("EXPANSION"); - items.push_back("NOTDEFINED"); - items.push_back("PREFORMED"); - items.push_back("PRESSUREVESSEL"); - items.push_back("SECTIONAL"); - items.push_back("USERDEFINED"); - IFC2X3_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 871, items); - } - IFC2X3_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 874, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 877, items); - } - IFC2X3_IfcText_type = new type_declaration("IfcText", 879, new simple_type(simple_type::string_type)); - IFC2X3_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 880, new simple_type(simple_type::string_type)); - IFC2X3_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 881, new simple_type(simple_type::string_type)); - IFC2X3_IfcTextFontName_type = new type_declaration("IfcTextFontName", 882, 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"); - IFC2X3_IfcTextPath_type = new enumeration_type("IfcTextPath", 886, items); - } - IFC2X3_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 893, new simple_type(simple_type::string_type)); - IFC2X3_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 898, new simple_type(simple_type::real_type)); - IFC2X3_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 899, new simple_type(simple_type::real_type)); - IFC2X3_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 900, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(13); - items.push_back("AIREXCHANGERATE"); - items.push_back("DRYBULBTEMPERATURE"); - items.push_back("EQUIPMENT"); - items.push_back("EXHAUSTAIR"); - items.push_back("INFILTRATION"); - items.push_back("LIGHTING"); - items.push_back("NOTDEFINED"); - items.push_back("PEOPLE"); - items.push_back("RECIRCULATEDAIR"); - items.push_back("RELATIVEHUMIDITY"); - items.push_back("USERDEFINED"); - items.push_back("VENTILATIONINDOORAIR"); - items.push_back("VENTILATIONOUTSIDEAIR"); - IFC2X3_IfcThermalLoadSourceEnum_type = new enumeration_type("IfcThermalLoadSourceEnum", 901, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LATENT"); - items.push_back("NOTDEFINED"); - items.push_back("RADIANT"); - items.push_back("SENSIBLE"); - IFC2X3_IfcThermalLoadTypeEnum_type = new enumeration_type("IfcThermalLoadTypeEnum", 902, items); - } - IFC2X3_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 904, new simple_type(simple_type::real_type)); - IFC2X3_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 905, new simple_type(simple_type::real_type)); - IFC2X3_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 906, new simple_type(simple_type::real_type)); - IFC2X3_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 907, new simple_type(simple_type::real_type)); - { - 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"); - IFC2X3_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 909, items); - } - { - std::vector items; items.reserve(6); - items.push_back("ANNUAL"); - items.push_back("DAILY"); - items.push_back("MONTHLY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WEEKLY"); - IFC2X3_IfcTimeSeriesScheduleTypeEnum_type = new enumeration_type("IfcTimeSeriesScheduleTypeEnum", 912, items); - } - IFC2X3_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 914, new simple_type(simple_type::integer_type)); - IFC2X3_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 917, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("CURRENT"); - items.push_back("FREQUENCY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VOLTAGE"); - IFC2X3_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 919, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC2X3_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 920, items); - } - { - std::vector items; items.reserve(5); - items.push_back("ELEVATOR"); - items.push_back("ESCALATOR"); - items.push_back("MOVINGWALKWAY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcTransportElementTypeEnum_type = new enumeration_type("IfcTransportElementTypeEnum", 923, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC2X3_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 926, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC2X3_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 930, items); - } - { - 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"); - IFC2X3_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 938, items); - } - { - std::vector items; items.reserve(6); - items.push_back("AIRCONDITIONINGUNIT"); - items.push_back("AIRHANDLER"); - items.push_back("NOTDEFINED"); - items.push_back("ROOFTOPUNIT"); - items.push_back("SPLITSYSTEM"); - items.push_back("USERDEFINED"); - IFC2X3_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 936, 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"); - IFC2X3_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 942, items); - } - IFC2X3_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 943, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("COMPRESSION"); - items.push_back("NOTDEFINED"); - items.push_back("SPRING"); - items.push_back("USERDEFINED"); - IFC2X3_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 951, items); - } - IFC2X3_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 954, new simple_type(simple_type::real_type)); - IFC2X3_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 955, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(7); - items.push_back("ELEMENTEDWALL"); - items.push_back("NOTDEFINED"); - items.push_back("PLUMBINGWALL"); - items.push_back("POLYGONAL"); - items.push_back("SHEAR"); - items.push_back("STANDARD"); - items.push_back("USERDEFINED"); - IFC2X3_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 959, items); - } - IFC2X3_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 960, new simple_type(simple_type::real_type)); - IFC2X3_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 961, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(12); - items.push_back("FLOORTRAP"); - items.push_back("FLOORWASTE"); - items.push_back("GREASEINTERCEPTOR"); - items.push_back("GULLYSUMP"); - items.push_back("GULLYTRAP"); - items.push_back("NOTDEFINED"); - items.push_back("OILINTERCEPTOR"); - items.push_back("PETROLINTERCEPTOR"); - items.push_back("ROOFDRAIN"); - items.push_back("USERDEFINED"); - items.push_back("WASTEDISPOSALUNIT"); - items.push_back("WASTETRAP"); - IFC2X3_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 963, 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"); - IFC2X3_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 967, 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"); - IFC2X3_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 968, 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"); - IFC2X3_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 971, 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"); - IFC2X3_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 972, 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"); - IFC2X3_IfcWorkControlTypeEnum_type = new enumeration_type("IfcWorkControlTypeEnum", 974, items); - } - IFC2X3_IfcYearNumber_type = new type_declaration("IfcYearNumber", 977, new simple_type(simple_type::integer_type)); - IFC2X3_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC2X3_IfcAddress_type = new entity("IfcAddress", true, 11, 0); - IFC2X3_IfcApplication_type = new entity("IfcApplication", false, 36, 0); - IFC2X3_IfcAppliedValue_type = new entity("IfcAppliedValue", true, 37, 0); - IFC2X3_IfcAppliedValueRelationship_type = new entity("IfcAppliedValueRelationship", false, 38, 0); - IFC2X3_IfcApproval_type = new entity("IfcApproval", false, 40, 0); - IFC2X3_IfcApprovalActorRelationship_type = new entity("IfcApprovalActorRelationship", false, 41, 0); - IFC2X3_IfcApprovalPropertyRelationship_type = new entity("IfcApprovalPropertyRelationship", false, 42, 0); - IFC2X3_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 43, 0); - IFC2X3_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 70, 0); - IFC2X3_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 71, IFC2X3_IfcBoundaryCondition_type); - IFC2X3_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 72, IFC2X3_IfcBoundaryCondition_type); - IFC2X3_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 73, IFC2X3_IfcBoundaryCondition_type); - IFC2X3_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 74, IFC2X3_IfcBoundaryNodeCondition_type); - IFC2X3_IfcCalendarDate_type = new entity("IfcCalendarDate", false, 97, 0); - IFC2X3_IfcClassification_type = new entity("IfcClassification", false, 113, 0); - IFC2X3_IfcClassificationItem_type = new entity("IfcClassificationItem", false, 114, 0); - IFC2X3_IfcClassificationItemRelationship_type = new entity("IfcClassificationItemRelationship", false, 115, 0); - IFC2X3_IfcClassificationNotation_type = new entity("IfcClassificationNotation", false, 116, 0); - IFC2X3_IfcClassificationNotationFacet_type = new entity("IfcClassificationNotationFacet", false, 117, 0); - IFC2X3_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 126, 0); - IFC2X3_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 146, 0); - IFC2X3_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 148, IFC2X3_IfcConnectionGeometry_type); - IFC2X3_IfcConnectionPortGeometry_type = new entity("IfcConnectionPortGeometry", false, 149, IFC2X3_IfcConnectionGeometry_type); - IFC2X3_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 150, IFC2X3_IfcConnectionGeometry_type); - IFC2X3_IfcConstraint_type = new entity("IfcConstraint", true, 152, 0); - IFC2X3_IfcConstraintAggregationRelationship_type = new entity("IfcConstraintAggregationRelationship", false, 153, 0); - IFC2X3_IfcConstraintClassificationRelationship_type = new entity("IfcConstraintClassificationRelationship", false, 154, 0); - IFC2X3_IfcConstraintRelationship_type = new entity("IfcConstraintRelationship", false, 156, 0); - IFC2X3_IfcCoordinatedUniversalTimeOffset_type = new entity("IfcCoordinatedUniversalTimeOffset", false, 171, 0); - IFC2X3_IfcCostValue_type = new entity("IfcCostValue", false, 175, IFC2X3_IfcAppliedValue_type); - IFC2X3_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 188, 0); - IFC2X3_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 198, 0); - IFC2X3_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 199, 0); - IFC2X3_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 200, 0); - IFC2X3_IfcDateAndTime_type = new entity("IfcDateAndTime", false, 205, 0); - IFC2X3_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 213, 0); - IFC2X3_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 214, 0); - IFC2X3_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 218, 0); - IFC2X3_IfcDocumentElectronicFormat_type = new entity("IfcDocumentElectronicFormat", false, 241, 0); - IFC2X3_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 242, 0); - IFC2X3_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 243, 0); - IFC2X3_IfcDraughtingCalloutRelationship_type = new entity("IfcDraughtingCalloutRelationship", false, 258, 0); - IFC2X3_IfcEnvironmentalImpactValue_type = new entity("IfcEnvironmentalImpactValue", false, 314, IFC2X3_IfcAppliedValue_type); - IFC2X3_IfcExternalReference_type = new entity("IfcExternalReference", true, 326, 0); - IFC2X3_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 322, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 323, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcExternallyDefinedSymbol_type = new entity("IfcExternallyDefinedSymbol", false, 324, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 325, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcGridAxis_type = new entity("IfcGridAxis", false, 399, 0); - IFC2X3_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 423, 0); - IFC2X3_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 436, 0); - IFC2X3_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 437, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 440, 0); - IFC2X3_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 445, 0); - IFC2X3_IfcLocalTime_type = new entity("IfcLocalTime", false, 460, 0); - IFC2X3_IfcMaterial_type = new entity("IfcMaterial", false, 476, 0); - IFC2X3_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 477, 0); - IFC2X3_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 479, 0); - IFC2X3_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 480, 0); - IFC2X3_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 481, 0); - IFC2X3_IfcMaterialList_type = new entity("IfcMaterialList", false, 482, 0); - IFC2X3_IfcMaterialProperties_type = new entity("IfcMaterialProperties", true, 483, 0); - IFC2X3_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 486, 0); - IFC2X3_IfcMechanicalMaterialProperties_type = new entity("IfcMechanicalMaterialProperties", false, 490, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcMechanicalSteelMaterialProperties_type = new entity("IfcMechanicalSteelMaterialProperties", false, 491, IFC2X3_IfcMechanicalMaterialProperties_type); - IFC2X3_IfcMetric_type = new entity("IfcMetric", false, 495, IFC2X3_IfcConstraint_type); - IFC2X3_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 506, 0); - IFC2X3_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 511, 0); - IFC2X3_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 519, 0); - IFC2X3_IfcObjective_type = new entity("IfcObjective", false, 517, IFC2X3_IfcConstraint_type); - IFC2X3_IfcOpticalMaterialProperties_type = new entity("IfcOpticalMaterialProperties", false, 529, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcOrganization_type = new entity("IfcOrganization", false, 531, 0); - IFC2X3_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 532, 0); - IFC2X3_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 537, 0); - IFC2X3_IfcPerson_type = new entity("IfcPerson", false, 545, 0); - IFC2X3_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 546, 0); - IFC2X3_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 550, 0); - IFC2X3_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 551, IFC2X3_IfcPhysicalQuantity_type); - IFC2X3_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 580, IFC2X3_IfcAddress_type); - IFC2X3_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 585, 0); - IFC2X3_IfcPreDefinedSymbol_type = new entity("IfcPreDefinedSymbol", true, 587, IFC2X3_IfcPreDefinedItem_type); - IFC2X3_IfcPreDefinedTerminatorSymbol_type = new entity("IfcPreDefinedTerminatorSymbol", false, 588, IFC2X3_IfcPreDefinedSymbol_type); - IFC2X3_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 589, IFC2X3_IfcPreDefinedItem_type); - IFC2X3_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 591, 0); - IFC2X3_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 592, IFC2X3_IfcPresentationLayerAssignment_type); - IFC2X3_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 593, 0); - IFC2X3_IfcPresentationStyleAssignment_type = new entity("IfcPresentationStyleAssignment", false, 594, 0); - IFC2X3_IfcProductRepresentation_type = new entity("IfcProductRepresentation", false, 602, 0); - IFC2X3_IfcProductsOfCombustionProperties_type = new entity("IfcProductsOfCombustionProperties", false, 603, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcProfileDef_type = new entity("IfcProfileDef", true, 604, 0); - IFC2X3_IfcProfileProperties_type = new entity("IfcProfileProperties", true, 605, 0); - IFC2X3_IfcProperty_type = new entity("IfcProperty", true, 615, 0); - IFC2X3_IfcPropertyConstraintRelationship_type = new entity("IfcPropertyConstraintRelationship", false, 617, 0); - IFC2X3_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 619, 0); - IFC2X3_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 621, 0); - IFC2X3_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 634, IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 635, IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 636, IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 637, IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 638, IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 639, IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcReferencesValueDocument_type = new entity("IfcReferencesValueDocument", false, 657, 0); - IFC2X3_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 660, 0); - IFC2X3_IfcRelaxation_type = new entity("IfcRelaxation", false, 687, 0); - IFC2X3_IfcRepresentation_type = new entity("IfcRepresentation", false, 718, 0); - IFC2X3_IfcRepresentationContext_type = new entity("IfcRepresentationContext", false, 719, 0); - IFC2X3_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 720, 0); - IFC2X3_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 721, 0); - IFC2X3_IfcRibPlateProfileProperties_type = new entity("IfcRibPlateProfileProperties", false, 726, IFC2X3_IfcProfileProperties_type); - IFC2X3_IfcRoot_type = new entity("IfcRoot", true, 732, 0); - IFC2X3_IfcSIUnit_type = new entity("IfcSIUnit", false, 765, IFC2X3_IfcNamedUnit_type); - IFC2X3_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 745, 0); - IFC2X3_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 746, 0); - IFC2X3_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 755, 0); - IFC2X3_IfcShapeModel_type = new entity("IfcShapeModel", true, 756, IFC2X3_IfcRepresentation_type); - IFC2X3_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 757, IFC2X3_IfcShapeModel_type); - IFC2X3_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 761, IFC2X3_IfcProperty_type); - IFC2X3_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 806, 0); - IFC2X3_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 814, 0); - IFC2X3_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 822, IFC2X3_IfcStructuralLoad_type); - IFC2X3_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 823, IFC2X3_IfcStructuralLoadStatic_type); - IFC2X3_IfcStyleModel_type = new entity("IfcStyleModel", true, 841, IFC2X3_IfcRepresentation_type); - IFC2X3_IfcStyledItem_type = new entity("IfcStyledItem", false, 839, IFC2X3_IfcRepresentationItem_type); - IFC2X3_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 840, IFC2X3_IfcStyleModel_type); - IFC2X3_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 850, IFC2X3_IfcPresentationStyle_type); - IFC2X3_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 852, 0); - IFC2X3_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 853, 0); - IFC2X3_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 855, 0); - IFC2X3_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 856, 0); - IFC2X3_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 857, 0); - IFC2X3_IfcSymbolStyle_type = new entity("IfcSymbolStyle", false, 864, IFC2X3_IfcPresentationStyle_type); - IFC2X3_IfcTable_type = new entity("IfcTable", false, 868, 0); - IFC2X3_IfcTableRow_type = new entity("IfcTableRow", false, 869, 0); - IFC2X3_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 873, IFC2X3_IfcAddress_type); - IFC2X3_IfcTextStyle_type = new entity("IfcTextStyle", false, 887, IFC2X3_IfcPresentationStyle_type); - IFC2X3_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 888, IFC2X3_IfcPreDefinedTextFont_type); - IFC2X3_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 889, 0); - IFC2X3_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 891, 0); - IFC2X3_IfcTextStyleWithBoxCharacteristics_type = new entity("IfcTextStyleWithBoxCharacteristics", false, 892, 0); - IFC2X3_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 894, 0); - IFC2X3_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 895, IFC2X3_IfcTextureCoordinate_type); - IFC2X3_IfcTextureMap_type = new entity("IfcTextureMap", false, 896, IFC2X3_IfcTextureCoordinate_type); - IFC2X3_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 897, 0); - IFC2X3_IfcThermalMaterialProperties_type = new entity("IfcThermalMaterialProperties", false, 903, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 908, 0); - IFC2X3_IfcTimeSeriesReferenceRelationship_type = new entity("IfcTimeSeriesReferenceRelationship", false, 910, 0); - IFC2X3_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 913, 0); - IFC2X3_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 915, IFC2X3_IfcRepresentationItem_type); - IFC2X3_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 916, IFC2X3_IfcShapeModel_type); - IFC2X3_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 937, 0); - IFC2X3_IfcVertex_type = new entity("IfcVertex", false, 946, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcVertexBasedTextureMap_type = new entity("IfcVertexBasedTextureMap", false, 947, 0); - IFC2X3_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 949, IFC2X3_IfcVertex_type); - IFC2X3_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 953, 0); - IFC2X3_IfcWaterProperties_type = new entity("IfcWaterProperties", false, 964, IFC2X3_IfcMaterialProperties_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcOrganization_type); - items.push_back(IFC2X3_IfcPerson_type); - items.push_back(IFC2X3_IfcPersonAndOrganization_type); - IFC2X3_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcMeasureWithUnit_type); - items.push_back(IFC2X3_IfcMonetaryMeasure_type); - items.push_back(IFC2X3_IfcRatioMeasure_type); - IFC2X3_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 39, items); - } - IFC2X3_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 78, new named_type(IFC2X3_IfcLabel_type)); - { - std::vector items; items.reserve(1); - items.push_back(IFC2X3_IfcTextStyleForDefinedFont_type); - IFC2X3_IfcCharacterStyleSelect_type = new select_type("IfcCharacterStyleSelect", 107, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcLabel_type); - items.push_back(IFC2X3_IfcMeasureWithUnit_type); - IFC2X3_IfcConditionCriterionSelect_type = new select_type("IfcConditionCriterionSelect", 142, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcCalendarDate_type); - items.push_back(IFC2X3_IfcDateAndTime_type); - items.push_back(IFC2X3_IfcLocalTime_type); - IFC2X3_IfcDateTimeSelect_type = new select_type("IfcDateTimeSelect", 206, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcExternallyDefinedSymbol_type); - items.push_back(IFC2X3_IfcPreDefinedSymbol_type); - IFC2X3_IfcDefinedSymbolSelect_type = new select_type("IfcDefinedSymbolSelect", 210, items); - } - { - std::vector items; items.reserve(68); - items.push_back(IFC2X3_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC2X3_IfcAccelerationMeasure_type); - items.push_back(IFC2X3_IfcAngularVelocityMeasure_type); - items.push_back(IFC2X3_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC2X3_IfcCurvatureMeasure_type); - items.push_back(IFC2X3_IfcDoseEquivalentMeasure_type); - items.push_back(IFC2X3_IfcDynamicViscosityMeasure_type); - items.push_back(IFC2X3_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC2X3_IfcElectricChargeMeasure_type); - items.push_back(IFC2X3_IfcElectricConductanceMeasure_type); - items.push_back(IFC2X3_IfcElectricResistanceMeasure_type); - items.push_back(IFC2X3_IfcElectricVoltageMeasure_type); - items.push_back(IFC2X3_IfcEnergyMeasure_type); - items.push_back(IFC2X3_IfcForceMeasure_type); - items.push_back(IFC2X3_IfcFrequencyMeasure_type); - items.push_back(IFC2X3_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC2X3_IfcHeatingValueMeasure_type); - items.push_back(IFC2X3_IfcIlluminanceMeasure_type); - items.push_back(IFC2X3_IfcInductanceMeasure_type); - items.push_back(IFC2X3_IfcIntegerCountRateMeasure_type); - items.push_back(IFC2X3_IfcIonConcentrationMeasure_type); - items.push_back(IFC2X3_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC2X3_IfcKinematicViscosityMeasure_type); - items.push_back(IFC2X3_IfcLinearForceMeasure_type); - items.push_back(IFC2X3_IfcLinearMomentMeasure_type); - items.push_back(IFC2X3_IfcLinearStiffnessMeasure_type); - items.push_back(IFC2X3_IfcLinearVelocityMeasure_type); - items.push_back(IFC2X3_IfcLuminousFluxMeasure_type); - items.push_back(IFC2X3_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC2X3_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC2X3_IfcMagneticFluxMeasure_type); - items.push_back(IFC2X3_IfcMassDensityMeasure_type); - items.push_back(IFC2X3_IfcMassFlowRateMeasure_type); - items.push_back(IFC2X3_IfcMassPerLengthMeasure_type); - items.push_back(IFC2X3_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC2X3_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC2X3_IfcMolecularWeightMeasure_type); - items.push_back(IFC2X3_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC2X3_IfcMonetaryMeasure_type); - items.push_back(IFC2X3_IfcPHMeasure_type); - items.push_back(IFC2X3_IfcPlanarForceMeasure_type); - items.push_back(IFC2X3_IfcPowerMeasure_type); - items.push_back(IFC2X3_IfcPressureMeasure_type); - items.push_back(IFC2X3_IfcRadioActivityMeasure_type); - items.push_back(IFC2X3_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC2X3_IfcRotationalMassMeasure_type); - items.push_back(IFC2X3_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC2X3_IfcSectionModulusMeasure_type); - items.push_back(IFC2X3_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC2X3_IfcShearModulusMeasure_type); - items.push_back(IFC2X3_IfcSoundPowerMeasure_type); - items.push_back(IFC2X3_IfcSoundPressureMeasure_type); - items.push_back(IFC2X3_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC2X3_IfcTemperatureGradientMeasure_type); - items.push_back(IFC2X3_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC2X3_IfcThermalConductivityMeasure_type); - items.push_back(IFC2X3_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC2X3_IfcThermalResistanceMeasure_type); - items.push_back(IFC2X3_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC2X3_IfcTimeStamp_type); - items.push_back(IFC2X3_IfcTorqueMeasure_type); - items.push_back(IFC2X3_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC2X3_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC2X3_IfcWarpingConstantMeasure_type); - items.push_back(IFC2X3_IfcWarpingMomentMeasure_type); - IFC2X3_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 211, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcRepresentation_type); - items.push_back(IFC2X3_IfcRepresentationItem_type); - IFC2X3_IfcLayeredItem_type = new select_type("IfcLayeredItem", 433, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcLibraryInformation_type); - items.push_back(IFC2X3_IfcLibraryReference_type); - IFC2X3_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 438, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcExternalReference_type); - items.push_back(IFC2X3_IfcLightIntensityDistribution_type); - IFC2X3_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 441, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC2X3_IfcMaterial_type); - items.push_back(IFC2X3_IfcMaterialLayer_type); - items.push_back(IFC2X3_IfcMaterialLayerSet_type); - items.push_back(IFC2X3_IfcMaterialLayerSetUsage_type); - items.push_back(IFC2X3_IfcMaterialList_type); - IFC2X3_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 484, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC2X3_IfcCostValue_type); - items.push_back(IFC2X3_IfcDateTimeSelect_type); - items.push_back(IFC2X3_IfcMeasureWithUnit_type); - items.push_back(IFC2X3_IfcTable_type); - items.push_back(IFC2X3_IfcText_type); - items.push_back(IFC2X3_IfcTimeSeries_type); - IFC2X3_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 496, items); - } - IFC2X3_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 512, new named_type(IFC2X3_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(13); - items.push_back(IFC2X3_IfcAddress_type); - items.push_back(IFC2X3_IfcAppliedValue_type); - items.push_back(IFC2X3_IfcCalendarDate_type); - items.push_back(IFC2X3_IfcDateAndTime_type); - items.push_back(IFC2X3_IfcExternalReference_type); - items.push_back(IFC2X3_IfcLocalTime_type); - items.push_back(IFC2X3_IfcMaterial_type); - items.push_back(IFC2X3_IfcMaterialLayer_type); - items.push_back(IFC2X3_IfcMaterialList_type); - items.push_back(IFC2X3_IfcOrganization_type); - items.push_back(IFC2X3_IfcPerson_type); - items.push_back(IFC2X3_IfcPersonAndOrganization_type); - items.push_back(IFC2X3_IfcTimeSeries_type); - IFC2X3_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 520, items); - } - IFC2X3_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 579, new named_type(IFC2X3_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(7); - items.push_back(IFC2X3_IfcBoolean_type); - items.push_back(IFC2X3_IfcIdentifier_type); - items.push_back(IFC2X3_IfcInteger_type); - items.push_back(IFC2X3_IfcLabel_type); - items.push_back(IFC2X3_IfcLogical_type); - items.push_back(IFC2X3_IfcReal_type); - items.push_back(IFC2X3_IfcText_type); - IFC2X3_IfcSimpleValue_type = new select_type("IfcSimpleValue", 762, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC2X3_IfcDescriptiveMeasure_type); - items.push_back(IFC2X3_IfcLengthMeasure_type); - items.push_back(IFC2X3_IfcNormalisedRatioMeasure_type); - items.push_back(IFC2X3_IfcPositiveLengthMeasure_type); - items.push_back(IFC2X3_IfcPositiveRatioMeasure_type); - items.push_back(IFC2X3_IfcRatioMeasure_type); - IFC2X3_IfcSizeSelect_type = new select_type("IfcSizeSelect", 767, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcSpecularExponent_type); - items.push_back(IFC2X3_IfcSpecularRoughness_type); - IFC2X3_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 790, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC2X3_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC2X3_IfcSurfaceStyleLighting_type); - items.push_back(IFC2X3_IfcSurfaceStyleRefraction_type); - items.push_back(IFC2X3_IfcSurfaceStyleShading_type); - items.push_back(IFC2X3_IfcSurfaceStyleWithTextures_type); - IFC2X3_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 851, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcExternallyDefinedTextFont_type); - items.push_back(IFC2X3_IfcPreDefinedTextFont_type); - IFC2X3_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 883, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcTextStyleTextModel_type); - items.push_back(IFC2X3_IfcTextStyleWithBoxCharacteristics_type); - IFC2X3_IfcTextStyleSelect_type = new select_type("IfcTextStyleSelect", 890, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcDerivedUnit_type); - items.push_back(IFC2X3_IfcMonetaryUnit_type); - items.push_back(IFC2X3_IfcNamedUnit_type); - IFC2X3_IfcUnit_type = new select_type("IfcUnit", 934, items); - } - IFC2X3_IfcAnnotationOccurrence_type = new entity("IfcAnnotationOccurrence", true, 31, IFC2X3_IfcStyledItem_type); - IFC2X3_IfcAnnotationSurfaceOccurrence_type = new entity("IfcAnnotationSurfaceOccurrence", false, 33, IFC2X3_IfcAnnotationOccurrence_type); - IFC2X3_IfcAnnotationSymbolOccurrence_type = new entity("IfcAnnotationSymbolOccurrence", false, 34, IFC2X3_IfcAnnotationOccurrence_type); - IFC2X3_IfcAnnotationTextOccurrence_type = new entity("IfcAnnotationTextOccurrence", false, 35, IFC2X3_IfcAnnotationOccurrence_type); - IFC2X3_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 44, IFC2X3_IfcProfileDef_type); - IFC2X3_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 45, IFC2X3_IfcProfileDef_type); - IFC2X3_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 46, IFC2X3_IfcArbitraryClosedProfileDef_type); - IFC2X3_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 61, IFC2X3_IfcSurfaceTexture_type); - IFC2X3_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 104, IFC2X3_IfcArbitraryOpenProfileDef_type); - IFC2X3_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 119, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcColourRgb_type = new entity("IfcColourRgb", false, 125, IFC2X3_IfcColourSpecification_type); - IFC2X3_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 131, IFC2X3_IfcProperty_type); - IFC2X3_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 134, IFC2X3_IfcProfileDef_type); - IFC2X3_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 144, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 145, IFC2X3_IfcConnectionGeometry_type); - IFC2X3_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 147, IFC2X3_IfcConnectionPointGeometry_type); - IFC2X3_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 162, IFC2X3_IfcNamedUnit_type); - IFC2X3_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 166, IFC2X3_IfcNamedUnit_type); - IFC2X3_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 197, IFC2X3_IfcPresentationStyle_type); - IFC2X3_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 212, IFC2X3_IfcProfileDef_type); - IFC2X3_IfcDimensionCalloutRelationship_type = new entity("IfcDimensionCalloutRelationship", false, 219, IFC2X3_IfcDraughtingCalloutRelationship_type); - IFC2X3_IfcDimensionPair_type = new entity("IfcDimensionPair", false, 225, IFC2X3_IfcDraughtingCalloutRelationship_type); - IFC2X3_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 244, IFC2X3_IfcExternalReference_type); - IFC2X3_IfcDraughtingPreDefinedTextFont_type = new entity("IfcDraughtingPreDefinedTextFont", false, 261, IFC2X3_IfcPreDefinedTextFont_type); - IFC2X3_IfcEdge_type = new entity("IfcEdge", false, 269, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 270, IFC2X3_IfcEdge_type); - IFC2X3_IfcExtendedMaterialProperties_type = new entity("IfcExtendedMaterialProperties", false, 321, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcFace_type = new entity("IfcFace", false, 328, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcFaceBound_type = new entity("IfcFaceBound", false, 330, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 331, IFC2X3_IfcFaceBound_type); - IFC2X3_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 332, IFC2X3_IfcFace_type); - IFC2X3_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 335, IFC2X3_IfcStructuralConnectionCondition_type); - IFC2X3_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 343, IFC2X3_IfcPresentationStyle_type); - IFC2X3_IfcFuelProperties_type = new entity("IfcFuelProperties", false, 380, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcGeneralMaterialProperties_type = new entity("IfcGeneralMaterialProperties", false, 387, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcGeneralProfileProperties_type = new entity("IfcGeneralProfileProperties", false, 388, IFC2X3_IfcProfileProperties_type); - IFC2X3_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 391, IFC2X3_IfcRepresentationContext_type); - IFC2X3_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 392, IFC2X3_IfcRepresentationItem_type); - IFC2X3_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 393, IFC2X3_IfcGeometricRepresentationContext_type); - IFC2X3_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 394, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 400, IFC2X3_IfcObjectPlacement_type); - IFC2X3_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 402, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcHygroscopicMaterialProperties_type = new entity("IfcHygroscopicMaterialProperties", false, 411, IFC2X3_IfcMaterialProperties_type); - IFC2X3_IfcImageTexture_type = new entity("IfcImageTexture", false, 414, IFC2X3_IfcSurfaceTexture_type); - IFC2X3_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 422, IFC2X3_IfcTimeSeries_type); - IFC2X3_IfcLightSource_type = new entity("IfcLightSource", true, 446, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 447, IFC2X3_IfcLightSource_type); - IFC2X3_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 448, IFC2X3_IfcLightSource_type); - IFC2X3_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 449, IFC2X3_IfcLightSource_type); - IFC2X3_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 450, IFC2X3_IfcLightSource_type); - IFC2X3_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 451, IFC2X3_IfcLightSourcePositional_type); - IFC2X3_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 459, IFC2X3_IfcObjectPlacement_type); - IFC2X3_IfcLoop_type = new entity("IfcLoop", false, 463, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcMappedItem_type = new entity("IfcMappedItem", false, 471, IFC2X3_IfcRepresentationItem_type); - IFC2X3_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 478, IFC2X3_IfcProductRepresentation_type); - IFC2X3_IfcMechanicalConcreteMaterialProperties_type = new entity("IfcMechanicalConcreteMaterialProperties", false, 487, IFC2X3_IfcMechanicalMaterialProperties_type); - IFC2X3_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 516, IFC2X3_IfcRoot_type); - IFC2X3_IfcOneDirectionRepeatFactor_type = new entity("IfcOneDirectionRepeatFactor", false, 526, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcOpenShell_type = new entity("IfcOpenShell", false, 528, IFC2X3_IfcConnectedFaceSet_type); - IFC2X3_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 534, IFC2X3_IfcEdge_type); - IFC2X3_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 538, IFC2X3_IfcProfileDef_type); - IFC2X3_IfcPath_type = new entity("IfcPath", false, 540, IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 548, IFC2X3_IfcPhysicalQuantity_type); - IFC2X3_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 559, IFC2X3_IfcSurfaceTexture_type); - IFC2X3_IfcPlacement_type = new entity("IfcPlacement", true, 560, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 562, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcPoint_type = new entity("IfcPoint", true, 569, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 570, IFC2X3_IfcPoint_type); - IFC2X3_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 571, IFC2X3_IfcPoint_type); - IFC2X3_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 575, IFC2X3_IfcLoop_type); - IFC2X3_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 573, IFC2X3_IfcHalfSpaceSolid_type); - IFC2X3_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 582, IFC2X3_IfcPreDefinedItem_type); - IFC2X3_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 583, IFC2X3_IfcPreDefinedItem_type); - IFC2X3_IfcPreDefinedDimensionSymbol_type = new entity("IfcPreDefinedDimensionSymbol", false, 584, IFC2X3_IfcPreDefinedSymbol_type); - IFC2X3_IfcPreDefinedPointMarkerSymbol_type = new entity("IfcPreDefinedPointMarkerSymbol", false, 586, IFC2X3_IfcPreDefinedSymbol_type); - IFC2X3_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 601, IFC2X3_IfcProductRepresentation_type); - IFC2X3_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 616, IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 618, IFC2X3_IfcRoot_type); - IFC2X3_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 620, IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 622, IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 623, IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 625, IFC2X3_IfcPropertyDefinition_type); - IFC2X3_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 626, IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 628, IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 654, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 659, IFC2X3_IfcTimeSeries_type); - IFC2X3_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 661, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcRelationship_type = new entity("IfcRelationship", true, 686, IFC2X3_IfcRoot_type); - IFC2X3_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 737, IFC2X3_IfcRectangleProfileDef_type); - IFC2X3_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 743, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcServiceLifeFactor_type = new entity("IfcServiceLifeFactor", false, 752, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 760, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 771, IFC2X3_IfcStructuralConnectionCondition_type); - IFC2X3_IfcSolidModel_type = new entity("IfcSolidModel", true, 773, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcSoundProperties_type = new entity("IfcSoundProperties", false, 776, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcSoundValue_type = new entity("IfcSoundValue", false, 778, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcSpaceThermalLoadProperties_type = new entity("IfcSpaceThermalLoadProperties", false, 783, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 816, IFC2X3_IfcStructuralLoadStatic_type); - IFC2X3_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 817, IFC2X3_IfcStructuralLoadStatic_type); - IFC2X3_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 818, IFC2X3_IfcStructuralLoadStatic_type); - IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 819, IFC2X3_IfcStructuralLoadSingleDisplacement_type); - IFC2X3_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 820, IFC2X3_IfcStructuralLoadStatic_type); - IFC2X3_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 821, IFC2X3_IfcStructuralLoadSingleForce_type); - IFC2X3_IfcStructuralProfileProperties_type = new entity("IfcStructuralProfileProperties", false, 830, IFC2X3_IfcGeneralProfileProperties_type); - IFC2X3_IfcStructuralSteelProfileProperties_type = new entity("IfcStructuralSteelProfileProperties", false, 833, IFC2X3_IfcStructuralProfileProperties_type); - IFC2X3_IfcSubedge_type = new entity("IfcSubedge", false, 843, IFC2X3_IfcEdge_type); - IFC2X3_IfcSurface_type = new entity("IfcSurface", true, 844, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 854, IFC2X3_IfcSurfaceStyleShading_type); - IFC2X3_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 859, IFC2X3_IfcSolidModel_type); - IFC2X3_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 860, IFC2X3_IfcSolidModel_type); - IFC2X3_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 861, IFC2X3_IfcSurface_type); - IFC2X3_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 928, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcTerminatorSymbol_type = new entity("IfcTerminatorSymbol", false, 878, IFC2X3_IfcAnnotationSymbolOccurrence_type); - IFC2X3_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 884, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 885, IFC2X3_IfcTextLiteral_type); - IFC2X3_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 924, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcTwoDirectionRepeatFactor_type = new entity("IfcTwoDirectionRepeatFactor", false, 931, IFC2X3_IfcOneDirectionRepeatFactor_type); - IFC2X3_IfcTypeObject_type = new entity("IfcTypeObject", false, 932, IFC2X3_IfcObjectDefinition_type); - IFC2X3_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 933, IFC2X3_IfcTypeObject_type); - IFC2X3_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 939, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcVector_type = new entity("IfcVector", false, 944, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 948, IFC2X3_IfcLoop_type); - IFC2X3_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 966, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 969, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 970, IFC2X3_IfcTypeProduct_type); - IFC2X3_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 979, IFC2X3_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcClassificationNotation_type); - items.push_back(IFC2X3_IfcClassificationReference_type); - IFC2X3_IfcClassificationNotationSelect_type = new select_type("IfcClassificationNotationSelect", 118, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcColourSpecification_type); - items.push_back(IFC2X3_IfcPreDefinedColour_type); - IFC2X3_IfcColour_type = new select_type("IfcColour", 123, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcColourRgb_type); - items.push_back(IFC2X3_IfcNormalisedRatioMeasure_type); - IFC2X3_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 124, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcCurveStyleFont_type); - items.push_back(IFC2X3_IfcPreDefinedCurveFont_type); - IFC2X3_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 201, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcDocumentInformation_type); - items.push_back(IFC2X3_IfcDocumentReference_type); - IFC2X3_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 245, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcOneDirectionRepeatFactor_type); - items.push_back(IFC2X3_IfcPositiveLengthMeasure_type); - IFC2X3_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 403, items); - } - { - std::vector items; items.reserve(22); - items.push_back(IFC2X3_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC2X3_IfcAreaMeasure_type); - items.push_back(IFC2X3_IfcComplexNumber_type); - items.push_back(IFC2X3_IfcContextDependentMeasure_type); - items.push_back(IFC2X3_IfcCountMeasure_type); - items.push_back(IFC2X3_IfcDescriptiveMeasure_type); - items.push_back(IFC2X3_IfcElectricCurrentMeasure_type); - items.push_back(IFC2X3_IfcLengthMeasure_type); - items.push_back(IFC2X3_IfcLuminousIntensityMeasure_type); - items.push_back(IFC2X3_IfcMassMeasure_type); - items.push_back(IFC2X3_IfcNormalisedRatioMeasure_type); - items.push_back(IFC2X3_IfcNumericMeasure_type); - items.push_back(IFC2X3_IfcParameterValue_type); - items.push_back(IFC2X3_IfcPlaneAngleMeasure_type); - items.push_back(IFC2X3_IfcPositiveLengthMeasure_type); - items.push_back(IFC2X3_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC2X3_IfcPositiveRatioMeasure_type); - items.push_back(IFC2X3_IfcRatioMeasure_type); - items.push_back(IFC2X3_IfcSolidAngleMeasure_type); - items.push_back(IFC2X3_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC2X3_IfcTimeMeasure_type); - items.push_back(IFC2X3_IfcVolumeMeasure_type); - IFC2X3_IfcMeasureValue_type = new select_type("IfcMeasureValue", 485, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcPoint_type); - items.push_back(IFC2X3_IfcVertexPoint_type); - IFC2X3_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 572, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC2X3_IfcCurveStyle_type); - items.push_back(IFC2X3_IfcFillAreaStyle_type); - items.push_back(IFC2X3_IfcNullStyle_type); - items.push_back(IFC2X3_IfcSurfaceStyle_type); - items.push_back(IFC2X3_IfcSymbolStyle_type); - items.push_back(IFC2X3_IfcTextStyle_type); - IFC2X3_IfcPresentationStyleSelect_type = new select_type("IfcPresentationStyleSelect", 595, items); - } - { - std::vector items; items.reserve(1); - items.push_back(IFC2X3_IfcColour_type); - IFC2X3_IfcSymbolStyleSelect_type = new select_type("IfcSymbolStyleSelect", 865, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcDerivedMeasureValue_type); - items.push_back(IFC2X3_IfcMeasureValue_type); - items.push_back(IFC2X3_IfcSimpleValue_type); - IFC2X3_IfcValue_type = new select_type("IfcValue", 940, items); - } - IFC2X3_IfcAnnotationCurveOccurrence_type = new entity("IfcAnnotationCurveOccurrence", false, 28, IFC2X3_IfcAnnotationOccurrence_type); - IFC2X3_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 29, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcAnnotationFillAreaOccurrence_type = new entity("IfcAnnotationFillAreaOccurrence", false, 30, IFC2X3_IfcAnnotationOccurrence_type); - IFC2X3_IfcAnnotationSurface_type = new entity("IfcAnnotationSurface", false, 32, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 52, IFC2X3_IfcPlacement_type); - IFC2X3_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 54, IFC2X3_IfcPlacement_type); - IFC2X3_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 55, IFC2X3_IfcPlacement_type); - IFC2X3_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 69, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcBoundedSurface_type = new entity("IfcBoundedSurface", false, 76, IFC2X3_IfcSurface_type); - IFC2X3_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 77, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 79, IFC2X3_IfcHalfSpaceSolid_type); - IFC2X3_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 186, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 98, IFC2X3_IfcPoint_type); - IFC2X3_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 99, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 100, IFC2X3_IfcCartesianTransformationOperator_type); - IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 101, IFC2X3_IfcCartesianTransformationOperator2D_type); - IFC2X3_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 102, IFC2X3_IfcCartesianTransformationOperator_type); - IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 103, IFC2X3_IfcCartesianTransformationOperator3D_type); - IFC2X3_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 112, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcClosedShell_type = new entity("IfcClosedShell", false, 120, IFC2X3_IfcConnectedFaceSet_type); - IFC2X3_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 133, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcCraneRailAShapeProfileDef_type = new entity("IfcCraneRailAShapeProfileDef", false, 180, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcCraneRailFShapeProfileDef_type = new entity("IfcCraneRailFShapeProfileDef", false, 181, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 183, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 185, IFC2X3_IfcSolidModel_type); - IFC2X3_IfcCurve_type = new entity("IfcCurve", true, 193, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 194, IFC2X3_IfcBoundedSurface_type); - IFC2X3_IfcDefinedSymbol_type = new entity("IfcDefinedSymbol", false, 209, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcDimensionCurve_type = new entity("IfcDimensionCurve", false, 221, IFC2X3_IfcAnnotationCurveOccurrence_type); - IFC2X3_IfcDimensionCurveTerminator_type = new entity("IfcDimensionCurveTerminator", false, 223, IFC2X3_IfcTerminatorSymbol_type); - IFC2X3_IfcDirection_type = new entity("IfcDirection", false, 226, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 248, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 251, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 252, IFC2X3_IfcTypeProduct_type); - IFC2X3_IfcDraughtingCallout_type = new entity("IfcDraughtingCallout", false, 256, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 259, IFC2X3_IfcPreDefinedColour_type); - IFC2X3_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 260, IFC2X3_IfcPreDefinedCurveFont_type); - IFC2X3_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 272, IFC2X3_IfcLoop_type); - IFC2X3_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 304, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcElementType_type = new entity("IfcElementType", true, 305, IFC2X3_IfcTypeProduct_type); - IFC2X3_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 298, IFC2X3_IfcSurface_type); - IFC2X3_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 307, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcEnergyProperties_type = new entity("IfcEnergyProperties", false, 311, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 327, IFC2X3_IfcSweptAreaSolid_type); - IFC2X3_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 329, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 344, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type = new entity("IfcFillAreaStyleTileSymbolWithStyle", false, 347, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 345, IFC2X3_IfcGeometricRepresentationItem_type); - IFC2X3_IfcFluidFlowProperties_type = new entity("IfcFluidFlowProperties", false, 372, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 382, IFC2X3_IfcElementType_type); - IFC2X3_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 384, IFC2X3_IfcFurnishingElementType_type); - IFC2X3_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 389, IFC2X3_IfcGeometricSet_type); - IFC2X3_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 424, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 464, IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcLine_type = new entity("IfcLine", false, 452, IFC2X3_IfcCurve_type); - IFC2X3_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 470, IFC2X3_IfcSolidModel_type); - IFC2X3_IfcObject_type = new entity("IfcObject", true, 515, IFC2X3_IfcObjectDefinition_type); - IFC2X3_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 524, IFC2X3_IfcCurve_type); - IFC2X3_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 525, IFC2X3_IfcCurve_type); - IFC2X3_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 543, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 561, IFC2X3_IfcPlanarExtent_type); - IFC2X3_IfcPlane_type = new entity("IfcPlane", false, 564, IFC2X3_IfcElementarySurface_type); - IFC2X3_IfcProcess_type = new entity("IfcProcess", true, 599, IFC2X3_IfcObject_type); - IFC2X3_IfcProduct_type = new entity("IfcProduct", true, 600, IFC2X3_IfcObject_type); - IFC2X3_IfcProject_type = new entity("IfcProject", false, 607, IFC2X3_IfcObject_type); - IFC2X3_IfcProjectionCurve_type = new entity("IfcProjectionCurve", false, 609, IFC2X3_IfcAnnotationCurveOccurrence_type); - IFC2X3_IfcPropertySet_type = new entity("IfcPropertySet", false, 624, IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcProxy_type = new entity("IfcProxy", false, 631, IFC2X3_IfcProduct_type); - IFC2X3_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 653, IFC2X3_IfcRectangleProfileDef_type); - IFC2X3_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 655, IFC2X3_IfcCsgPrimitive3D_type); - IFC2X3_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 656, IFC2X3_IfcBoundedSurface_type); - IFC2X3_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 668, IFC2X3_IfcRelationship_type); - IFC2X3_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 670, IFC2X3_IfcRelAssigns_type); - IFC2X3_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 671, IFC2X3_IfcRelAssigns_type); - IFC2X3_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 672, IFC2X3_IfcRelAssigns_type); - IFC2X3_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 673, IFC2X3_IfcRelAssigns_type); - IFC2X3_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 674, IFC2X3_IfcRelAssigns_type); - IFC2X3_IfcRelAssignsToProjectOrder_type = new entity("IfcRelAssignsToProjectOrder", false, 675, IFC2X3_IfcRelAssignsToControl_type); - IFC2X3_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 676, IFC2X3_IfcRelAssigns_type); - IFC2X3_IfcRelAssociates_type = new entity("IfcRelAssociates", false, 677, IFC2X3_IfcRelationship_type); - IFC2X3_IfcRelAssociatesAppliedValue_type = new entity("IfcRelAssociatesAppliedValue", false, 678, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 679, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 680, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 681, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 682, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 683, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 684, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelAssociatesProfileProperties_type = new entity("IfcRelAssociatesProfileProperties", false, 685, IFC2X3_IfcRelAssociates_type); - IFC2X3_IfcRelConnects_type = new entity("IfcRelConnects", true, 688, IFC2X3_IfcRelationship_type); - IFC2X3_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 689, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 690, IFC2X3_IfcRelConnectsElements_type); - IFC2X3_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 692, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 691, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 693, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelConnectsStructuralElement_type = new entity("IfcRelConnectsStructuralElement", false, 694, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 695, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 696, IFC2X3_IfcRelConnectsStructuralMember_type); - IFC2X3_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 697, IFC2X3_IfcRelConnectsElements_type); - IFC2X3_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 698, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 699, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 700, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 701, IFC2X3_IfcRelationship_type); - IFC2X3_IfcRelDefines_type = new entity("IfcRelDefines", true, 702, IFC2X3_IfcRelationship_type); - IFC2X3_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 703, IFC2X3_IfcRelDefines_type); - IFC2X3_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 704, IFC2X3_IfcRelDefines_type); - IFC2X3_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 705, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 706, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelInteractionRequirements_type = new entity("IfcRelInteractionRequirements", false, 707, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelNests_type = new entity("IfcRelNests", false, 708, IFC2X3_IfcRelDecomposes_type); - IFC2X3_IfcRelOccupiesSpaces_type = new entity("IfcRelOccupiesSpaces", false, 709, IFC2X3_IfcRelAssignsToActor_type); - IFC2X3_IfcRelOverridesProperties_type = new entity("IfcRelOverridesProperties", false, 710, IFC2X3_IfcRelDefinesByProperties_type); - IFC2X3_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 711, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 712, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelSchedulesCostItems_type = new entity("IfcRelSchedulesCostItems", false, 713, IFC2X3_IfcRelAssignsToControl_type); - IFC2X3_IfcRelSequence_type = new entity("IfcRelSequence", false, 714, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 715, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 716, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 717, IFC2X3_IfcRelConnects_type); - IFC2X3_IfcResource_type = new entity("IfcResource", true, 722, IFC2X3_IfcObject_type); - IFC2X3_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 724, IFC2X3_IfcSweptAreaSolid_type); - IFC2X3_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 727, IFC2X3_IfcCsgPrimitive3D_type); - IFC2X3_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 728, IFC2X3_IfcCsgPrimitive3D_type); - IFC2X3_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 786, IFC2X3_IfcProduct_type); - IFC2X3_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 787, IFC2X3_IfcElementType_type); - IFC2X3_IfcSphere_type = new entity("IfcSphere", false, 792, IFC2X3_IfcCsgPrimitive3D_type); - IFC2X3_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 802, IFC2X3_IfcProduct_type); - IFC2X3_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 811, IFC2X3_IfcProduct_type); - IFC2X3_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 824, IFC2X3_IfcStructuralItem_type); - IFC2X3_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 831, IFC2X3_IfcStructuralActivity_type); - IFC2X3_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 835, IFC2X3_IfcStructuralMember_type); - IFC2X3_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 836, IFC2X3_IfcStructuralSurfaceMember_type); - IFC2X3_IfcStructuredDimensionCallout_type = new entity("IfcStructuredDimensionCallout", false, 838, IFC2X3_IfcDraughtingCallout_type); - IFC2X3_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 845, IFC2X3_IfcSweptAreaSolid_type); - IFC2X3_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 846, IFC2X3_IfcSweptSurface_type); - IFC2X3_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 847, IFC2X3_IfcSweptSurface_type); - IFC2X3_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 867, IFC2X3_IfcFurnishingElementType_type); - IFC2X3_IfcTask_type = new entity("IfcTask", false, 872, IFC2X3_IfcProcess_type); - IFC2X3_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 922, IFC2X3_IfcElementType_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcAxis2Placement2D_type); - items.push_back(IFC2X3_IfcAxis2Placement3D_type); - IFC2X3_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 53, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC2X3_IfcBooleanResult_type); - items.push_back(IFC2X3_IfcCsgPrimitive3D_type); - items.push_back(IFC2X3_IfcHalfSpaceSolid_type); - items.push_back(IFC2X3_IfcSolidModel_type); - IFC2X3_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 67, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcBooleanResult_type); - items.push_back(IFC2X3_IfcCsgPrimitive3D_type); - IFC2X3_IfcCsgSelect_type = new select_type("IfcCsgSelect", 184, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC2X3_IfcCurveStyleFontSelect_type); - IFC2X3_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 195, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcAnnotationCurveOccurrence_type); - items.push_back(IFC2X3_IfcAnnotationSymbolOccurrence_type); - items.push_back(IFC2X3_IfcAnnotationTextOccurrence_type); - IFC2X3_IfcDraughtingCalloutElement_type = new select_type("IfcDraughtingCalloutElement", 257, items); - } - { - std::vector items; items.reserve(1); - items.push_back(IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type); - IFC2X3_IfcFillAreaStyleTileShapeSelect_type = new select_type("IfcFillAreaStyleTileShapeSelect", 346, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC2X3_IfcColour_type); - items.push_back(IFC2X3_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC2X3_IfcFillAreaStyleHatching_type); - items.push_back(IFC2X3_IfcFillAreaStyleTiles_type); - IFC2X3_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 348, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcCurve_type); - items.push_back(IFC2X3_IfcPoint_type); - items.push_back(IFC2X3_IfcSurface_type); - IFC2X3_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 395, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcDirection_type); - items.push_back(IFC2X3_IfcPlaneAngleMeasure_type); - IFC2X3_IfcOrientationSelect_type = new select_type("IfcOrientationSelect", 533, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcClosedShell_type); - items.push_back(IFC2X3_IfcOpenShell_type); - IFC2X3_IfcShell_type = new select_type("IfcShell", 759, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC2X3_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC2X3_IfcFaceSurface_type); - items.push_back(IFC2X3_IfcSurface_type); - IFC2X3_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 848, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcCartesianPoint_type); - items.push_back(IFC2X3_IfcParameterValue_type); - IFC2X3_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 927, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcDirection_type); - items.push_back(IFC2X3_IfcVector_type); - IFC2X3_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 945, items); - } - IFC2X3_IfcActor_type = new entity("IfcActor", false, 6, IFC2X3_IfcObject_type); - IFC2X3_IfcAnnotation_type = new entity("IfcAnnotation", false, 27, IFC2X3_IfcProduct_type); - IFC2X3_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 51, IFC2X3_IfcIShapeProfileDef_type); - IFC2X3_IfcBlock_type = new entity("IfcBlock", false, 62, IFC2X3_IfcCsgPrimitive3D_type); - IFC2X3_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 66, IFC2X3_IfcBooleanResult_type); - IFC2X3_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 75, IFC2X3_IfcCurve_type); - IFC2X3_IfcBuilding_type = new entity("IfcBuilding", false, 82, IFC2X3_IfcSpatialStructureElement_type); - IFC2X3_IfcBuildingElementType_type = new entity("IfcBuildingElementType", true, 89, IFC2X3_IfcElementType_type); - IFC2X3_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 90, IFC2X3_IfcSpatialStructureElement_type); - IFC2X3_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 111, IFC2X3_IfcCircleProfileDef_type); - IFC2X3_IfcColumnType_type = new entity("IfcColumnType", false, 128, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 132, IFC2X3_IfcBoundedCurve_type); - IFC2X3_IfcConic_type = new entity("IfcConic", true, 143, IFC2X3_IfcCurve_type); - IFC2X3_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 160, IFC2X3_IfcResource_type); - IFC2X3_IfcControl_type = new entity("IfcControl", true, 163, IFC2X3_IfcObject_type); - IFC2X3_IfcCostItem_type = new entity("IfcCostItem", false, 172, IFC2X3_IfcControl_type); - IFC2X3_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 173, IFC2X3_IfcControl_type); - IFC2X3_IfcCoveringType_type = new entity("IfcCoveringType", false, 178, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcCrewResource_type = new entity("IfcCrewResource", false, 182, IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 190, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcDimensionCurveDirectedCallout_type = new entity("IfcDimensionCurveDirectedCallout", false, 222, IFC2X3_IfcDraughtingCallout_type); - IFC2X3_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 236, IFC2X3_IfcElementType_type); - IFC2X3_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 238, IFC2X3_IfcDistributionElementType_type); - IFC2X3_IfcElectricalBaseProperties_type = new entity("IfcElectricalBaseProperties", false, 273, IFC2X3_IfcEnergyProperties_type); - IFC2X3_IfcElement_type = new entity("IfcElement", true, 297, IFC2X3_IfcProduct_type); - IFC2X3_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 299, IFC2X3_IfcElement_type); - IFC2X3_IfcElementComponent_type = new entity("IfcElementComponent", true, 301, IFC2X3_IfcElement_type); - IFC2X3_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 302, IFC2X3_IfcElementType_type); - IFC2X3_IfcEllipse_type = new entity("IfcEllipse", false, 306, IFC2X3_IfcConic_type); - IFC2X3_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 309, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcEquipmentElement_type = new entity("IfcEquipmentElement", false, 315, IFC2X3_IfcElement_type); - IFC2X3_IfcEquipmentStandard_type = new entity("IfcEquipmentStandard", false, 316, IFC2X3_IfcControl_type); - IFC2X3_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 317, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 319, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 333, IFC2X3_IfcManifoldSolidBrep_type); - IFC2X3_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 334, IFC2X3_IfcManifoldSolidBrep_type); - IFC2X3_IfcFastener_type = new entity("IfcFastener", false, 338, IFC2X3_IfcElementComponent_type); - IFC2X3_IfcFastenerType_type = new entity("IfcFastenerType", false, 339, IFC2X3_IfcElementComponentType_type); - IFC2X3_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 340, IFC2X3_IfcElement_type); - IFC2X3_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 341, IFC2X3_IfcFeatureElement_type); - IFC2X3_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 342, IFC2X3_IfcFeatureElement_type); - IFC2X3_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 354, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 357, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 360, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 363, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 365, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 367, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 369, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 371, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 381, IFC2X3_IfcElement_type); - IFC2X3_IfcFurnitureStandard_type = new entity("IfcFurnitureStandard", false, 383, IFC2X3_IfcControl_type); - IFC2X3_IfcGasTerminalType_type = new entity("IfcGasTerminalType", false, 385, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcGrid_type = new entity("IfcGrid", false, 398, IFC2X3_IfcProduct_type); - IFC2X3_IfcGroup_type = new entity("IfcGroup", false, 401, IFC2X3_IfcObject_type); - IFC2X3_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 404, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 409, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcInventory_type = new entity("IfcInventory", false, 419, IFC2X3_IfcGroup_type); - IFC2X3_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 426, IFC2X3_IfcFlowFittingType_type); - IFC2X3_IfcLaborResource_type = new entity("IfcLaborResource", false, 430, IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcLampType_type = new entity("IfcLampType", false, 431, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 443, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcLinearDimension_type = new entity("IfcLinearDimension", false, 453, IFC2X3_IfcDimensionCurveDirectedCallout_type); - IFC2X3_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 488, IFC2X3_IfcFastener_type); - IFC2X3_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 489, IFC2X3_IfcFastenerType_type); - IFC2X3_IfcMemberType_type = new entity("IfcMemberType", false, 493, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 508, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcMove_type = new entity("IfcMove", false, 510, IFC2X3_IfcTask_type); - IFC2X3_IfcOccupant_type = new entity("IfcOccupant", false, 522, IFC2X3_IfcActor_type); - IFC2X3_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 527, IFC2X3_IfcFeatureElementSubtraction_type); - IFC2X3_IfcOrderAction_type = new entity("IfcOrderAction", false, 530, IFC2X3_IfcTask_type); - IFC2X3_IfcOutletType_type = new entity("IfcOutletType", false, 535, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 541, IFC2X3_IfcControl_type); - IFC2X3_IfcPermit_type = new entity("IfcPermit", false, 544, IFC2X3_IfcControl_type); - IFC2X3_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 555, IFC2X3_IfcFlowFittingType_type); - IFC2X3_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 557, IFC2X3_IfcFlowSegmentType_type); - IFC2X3_IfcPlateType_type = new entity("IfcPlateType", false, 567, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcPolyline_type = new entity("IfcPolyline", false, 574, IFC2X3_IfcBoundedCurve_type); - IFC2X3_IfcPort_type = new entity("IfcPort", true, 576, IFC2X3_IfcProduct_type); - IFC2X3_IfcProcedure_type = new entity("IfcProcedure", false, 597, IFC2X3_IfcProcess_type); - IFC2X3_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 611, IFC2X3_IfcControl_type); - IFC2X3_IfcProjectOrderRecord_type = new entity("IfcProjectOrderRecord", false, 612, IFC2X3_IfcControl_type); - IFC2X3_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 610, IFC2X3_IfcFeatureElementAddition_type); - IFC2X3_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 629, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcPumpType_type = new entity("IfcPumpType", false, 632, IFC2X3_IfcFlowMovingDeviceType_type); - IFC2X3_IfcRadiusDimension_type = new entity("IfcRadiusDimension", false, 641, IFC2X3_IfcDimensionCurveDirectedCallout_type); - IFC2X3_IfcRailingType_type = new entity("IfcRailingType", false, 643, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 647, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 667, IFC2X3_IfcRelDecomposes_type); - IFC2X3_IfcRelAssignsTasks_type = new entity("IfcRelAssignsTasks", false, 669, IFC2X3_IfcRelAssignsToControl_type); - IFC2X3_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 738, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcScheduleTimeControl_type = new entity("IfcScheduleTimeControl", false, 740, IFC2X3_IfcControl_type); - IFC2X3_IfcServiceLife_type = new entity("IfcServiceLife", false, 751, IFC2X3_IfcControl_type); - IFC2X3_IfcSite_type = new entity("IfcSite", false, 764, IFC2X3_IfcSpatialStructureElement_type); - IFC2X3_IfcSlabType_type = new entity("IfcSlabType", false, 769, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcSpace_type = new entity("IfcSpace", false, 779, IFC2X3_IfcSpatialStructureElement_type); - IFC2X3_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 780, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcSpaceProgram_type = new entity("IfcSpaceProgram", false, 782, IFC2X3_IfcControl_type); - IFC2X3_IfcSpaceType_type = new entity("IfcSpaceType", false, 784, IFC2X3_IfcSpatialStructureElementType_type); - IFC2X3_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 793, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 797, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 801, IFC2X3_IfcStructuralActivity_type); - IFC2X3_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 805, IFC2X3_IfcStructuralItem_type); - IFC2X3_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 807, IFC2X3_IfcStructuralConnection_type); - IFC2X3_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 808, IFC2X3_IfcStructuralMember_type); - IFC2X3_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 809, IFC2X3_IfcStructuralCurveMember_type); - IFC2X3_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 812, IFC2X3_IfcStructuralAction_type); - IFC2X3_IfcStructuralLinearActionVarying_type = new entity("IfcStructuralLinearActionVarying", false, 813, IFC2X3_IfcStructuralLinearAction_type); - IFC2X3_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 815, IFC2X3_IfcGroup_type); - IFC2X3_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 825, IFC2X3_IfcStructuralAction_type); - IFC2X3_IfcStructuralPlanarActionVarying_type = new entity("IfcStructuralPlanarActionVarying", false, 826, IFC2X3_IfcStructuralPlanarAction_type); - IFC2X3_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 827, IFC2X3_IfcStructuralAction_type); - IFC2X3_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 828, IFC2X3_IfcStructuralConnection_type); - IFC2X3_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 829, IFC2X3_IfcStructuralReaction_type); - IFC2X3_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 832, IFC2X3_IfcGroup_type); - IFC2X3_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 834, IFC2X3_IfcStructuralConnection_type); - IFC2X3_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 842, IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 862, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcSystem_type = new entity("IfcSystem", false, 866, IFC2X3_IfcGroup_type); - IFC2X3_IfcTankType_type = new entity("IfcTankType", false, 870, IFC2X3_IfcFlowStorageDeviceType_type); - IFC2X3_IfcTimeSeriesSchedule_type = new entity("IfcTimeSeriesSchedule", false, 911, IFC2X3_IfcControl_type); - IFC2X3_IfcTransformerType_type = new entity("IfcTransformerType", false, 918, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcTransportElement_type = new entity("IfcTransportElement", false, 921, IFC2X3_IfcElement_type); - IFC2X3_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 925, IFC2X3_IfcBoundedCurve_type); - IFC2X3_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 929, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 935, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcValveType_type = new entity("IfcValveType", false, 941, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 952, IFC2X3_IfcElement_type); - IFC2X3_IfcWallType_type = new entity("IfcWallType", false, 958, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 962, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcWorkControl_type = new entity("IfcWorkControl", true, 973, IFC2X3_IfcControl_type); - IFC2X3_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 975, IFC2X3_IfcWorkControl_type); - IFC2X3_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 976, IFC2X3_IfcWorkControl_type); - IFC2X3_IfcZone_type = new entity("IfcZone", false, 978, IFC2X3_IfcGroup_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcBoundedCurve_type); - items.push_back(IFC2X3_IfcEdgeCurve_type); - IFC2X3_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 196, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC2X3_IfcElement_type); - items.push_back(IFC2X3_IfcStructuralItem_type); - IFC2X3_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 803, items); - } - IFC2X3_Ifc2DCompositeCurve_type = new entity("Ifc2DCompositeCurve", false, 0, IFC2X3_IfcCompositeCurve_type); - IFC2X3_IfcActionRequest_type = new entity("IfcActionRequest", false, 3, IFC2X3_IfcControl_type); - IFC2X3_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 14, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 16, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 18, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcAngularDimension_type = new entity("IfcAngularDimension", false, 25, IFC2X3_IfcDimensionCurveDirectedCallout_type); - IFC2X3_IfcAsset_type = new entity("IfcAsset", false, 50, IFC2X3_IfcGroup_type); - IFC2X3_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 80, IFC2X3_IfcBoundedCurve_type); - IFC2X3_IfcBeamType_type = new entity("IfcBeamType", false, 57, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcBezierCurve_type = new entity("IfcBezierCurve", false, 60, IFC2X3_IfcBSplineCurve_type); - IFC2X3_IfcBoilerType_type = new entity("IfcBoilerType", false, 63, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcBuildingElement_type = new entity("IfcBuildingElement", true, 83, IFC2X3_IfcElement_type); - IFC2X3_IfcBuildingElementComponent_type = new entity("IfcBuildingElementComponent", true, 84, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 85, IFC2X3_IfcBuildingElementComponent_type); - IFC2X3_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 86, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 87, IFC2X3_IfcBuildingElementType_type); - IFC2X3_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 91, IFC2X3_IfcFlowFittingType_type); - IFC2X3_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 93, IFC2X3_IfcFlowSegmentType_type); - IFC2X3_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 95, IFC2X3_IfcFlowSegmentType_type); - IFC2X3_IfcChillerType_type = new entity("IfcChillerType", false, 108, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcCircle_type = new entity("IfcCircle", false, 110, IFC2X3_IfcConic_type); - IFC2X3_IfcCoilType_type = new entity("IfcCoilType", false, 121, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcColumn_type = new entity("IfcColumn", false, 127, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcCompressorType_type = new entity("IfcCompressorType", false, 136, IFC2X3_IfcFlowMovingDeviceType_type); - IFC2X3_IfcCondenserType_type = new entity("IfcCondenserType", false, 138, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcCondition_type = new entity("IfcCondition", false, 140, IFC2X3_IfcGroup_type); - IFC2X3_IfcConditionCriterion_type = new entity("IfcConditionCriterion", false, 141, IFC2X3_IfcControl_type); - IFC2X3_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 157, IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 158, IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 159, IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 167, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 169, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcCovering_type = new entity("IfcCovering", false, 177, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 189, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcDamperType_type = new entity("IfcDamperType", false, 202, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcDiameterDimension_type = new entity("IfcDiameterDimension", false, 217, IFC2X3_IfcDimensionCurveDirectedCallout_type); - IFC2X3_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 228, IFC2X3_IfcElementComponent_type); - IFC2X3_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 229, IFC2X3_IfcElementComponentType_type); - IFC2X3_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 231, IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 234, IFC2X3_IfcDistributionElementType_type); - IFC2X3_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 235, IFC2X3_IfcElement_type); - IFC2X3_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 237, IFC2X3_IfcDistributionElement_type); - IFC2X3_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 239, IFC2X3_IfcPort_type); - IFC2X3_IfcDoor_type = new entity("IfcDoor", false, 247, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 262, IFC2X3_IfcFlowFittingType_type); - IFC2X3_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 264, IFC2X3_IfcFlowSegmentType_type); - IFC2X3_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 266, IFC2X3_IfcFlowTreatmentDeviceType_type); - IFC2X3_IfcEdgeFeature_type = new entity("IfcEdgeFeature", true, 271, IFC2X3_IfcFeatureElementSubtraction_type); - IFC2X3_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 276, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 285, IFC2X3_IfcFlowStorageDeviceType_type); - IFC2X3_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 287, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcElectricHeaterType_type = new entity("IfcElectricHeaterType", false, 289, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 291, IFC2X3_IfcEnergyConversionDeviceType_type); - IFC2X3_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 294, IFC2X3_IfcFlowControllerType_type); - IFC2X3_IfcElectricalCircuit_type = new entity("IfcElectricalCircuit", false, 274, IFC2X3_IfcSystem_type); - IFC2X3_IfcElectricalElement_type = new entity("IfcElectricalElement", false, 275, IFC2X3_IfcElement_type); - IFC2X3_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 308, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFanType_type = new entity("IfcFanType", false, 336, IFC2X3_IfcFlowMovingDeviceType_type); - IFC2X3_IfcFilterType_type = new entity("IfcFilterType", false, 349, IFC2X3_IfcFlowTreatmentDeviceType_type); - IFC2X3_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 351, IFC2X3_IfcFlowTerminalType_type); - IFC2X3_IfcFlowController_type = new entity("IfcFlowController", false, 353, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 356, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 358, IFC2X3_IfcDistributionControlElementType_type); - IFC2X3_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 362, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 364, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 366, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 368, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 370, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcFooting_type = new entity("IfcFooting", false, 376, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcMember_type = new entity("IfcMember", false, 492, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcPile_type = new entity("IfcPile", false, 552, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcPlate_type = new entity("IfcPlate", false, 566, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcRailing_type = new entity("IfcRailing", false, 642, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcRamp_type = new entity("IfcRamp", false, 645, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcRampFlight_type = new entity("IfcRampFlight", false, 646, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcRationalBezierCurve_type = new entity("IfcRationalBezierCurve", false, 651, IFC2X3_IfcBezierCurve_type); - IFC2X3_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 665, IFC2X3_IfcBuildingElementComponent_type); - IFC2X3_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 666, IFC2X3_IfcReinforcingElement_type); - IFC2X3_IfcRoof_type = new entity("IfcRoof", false, 730, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcRoundedEdgeFeature_type = new entity("IfcRoundedEdgeFeature", false, 736, IFC2X3_IfcEdgeFeature_type); - IFC2X3_IfcSensorType_type = new entity("IfcSensorType", false, 748, IFC2X3_IfcDistributionControlElementType_type); - IFC2X3_IfcSlab_type = new entity("IfcSlab", false, 768, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcStair_type = new entity("IfcStair", false, 795, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcStairFlight_type = new entity("IfcStairFlight", false, 796, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 804, IFC2X3_IfcSystem_type); - IFC2X3_IfcTendon_type = new entity("IfcTendon", false, 875, IFC2X3_IfcReinforcingElement_type); - IFC2X3_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 876, IFC2X3_IfcReinforcingElement_type); - IFC2X3_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 950, IFC2X3_IfcDiscreteAccessoryType_type); - IFC2X3_IfcWall_type = new entity("IfcWall", false, 956, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 957, IFC2X3_IfcWall_type); - IFC2X3_IfcWindow_type = new entity("IfcWindow", false, 965, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcActuatorType_type = new entity("IfcActuatorType", false, 9, IFC2X3_IfcDistributionControlElementType_type); - IFC2X3_IfcAlarmType_type = new entity("IfcAlarmType", false, 20, IFC2X3_IfcDistributionControlElementType_type); - IFC2X3_IfcBeam_type = new entity("IfcBeam", false, 56, IFC2X3_IfcBuildingElement_type); - IFC2X3_IfcChamferEdgeFeature_type = new entity("IfcChamferEdgeFeature", false, 105, IFC2X3_IfcEdgeFeature_type); - IFC2X3_IfcControllerType_type = new entity("IfcControllerType", false, 164, IFC2X3_IfcDistributionControlElementType_type); - IFC2X3_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 230, IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 233, IFC2X3_IfcDistributionElement_type); - IFC2X3_IfcElectricDistributionPoint_type = new entity("IfcElectricDistributionPoint", false, 283, IFC2X3_IfcFlowController_type); - IFC2X3_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 662, IFC2X3_IfcReinforcingElement_type); - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_Ifc2DCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RequestID", new named_type(IFC2X3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC2X3_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC2X3_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC2X3_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcAngularDimension_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationCurveOccurrence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyleTarget", new named_type(IFC2X3_IfcPoint_type), true)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC2X3_IfcGlobalOrLocalEnum_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationFillAreaOccurrence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationOccurrence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Item", new named_type(IFC2X3_IfcGeometricRepresentationItem_type), false)); - attributes.push_back(new attribute("TextureCoordinates", new named_type(IFC2X3_IfcTextureCoordinate_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationSurfaceOccurrence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationSymbolOccurrence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAnnotationTextOccurrence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC2X3_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC2X3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC2X3_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC2X3_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ComponentOfTotal", new named_type(IFC2X3_IfcAppliedValue_type), false)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcAppliedValue_type)), false)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC2X3_IfcArithmeticOperatorEnum_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAppliedValueRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("ApprovalDateTime", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - attributes.push_back(new attribute("ApprovalStatus", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ApprovalLevel", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ApprovalQualifier", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC2X3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Actor", new named_type(IFC2X3_IfcActorSelect_type), false)); - attributes.push_back(new attribute("Approval", new named_type(IFC2X3_IfcApproval_type), false)); - attributes.push_back(new attribute("Role", new named_type(IFC2X3_IfcActorRole_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcApprovalActorRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApprovedProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false)); - attributes.push_back(new attribute("Approval", new named_type(IFC2X3_IfcApproval_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcApprovalPropertyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatedApproval", new named_type(IFC2X3_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC2X3_IfcApproval_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC2X3_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC2X3_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("AssetID", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC2X3_IfcCostValue_type), false)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC2X3_IfcCostValue_type), false)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC2X3_IfcCostValue_type), false)); - attributes.push_back(new attribute("Owner", new named_type(IFC2X3_IfcActorSelect_type), false)); - attributes.push_back(new attribute("User", new named_type(IFC2X3_IfcActorSelect_type), false)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC2X3_IfcPerson_type), false)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC2X3_IfcCalendarDate_type), false)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC2X3_IfcCostValue_type), false)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInY", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC2X3_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC2X3_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC2X3_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC2X3_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC2X3_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new simple_type(simple_type::logical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new simple_type(simple_type::logical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBezierCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC2X3_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC2X3_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC2X3_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearStiffnessByLengthX", new named_type(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("LinearStiffnessByLengthY", new named_type(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("LinearStiffnessByLengthZ", new named_type(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("LinearStiffnessByAreaX", new named_type(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("LinearStiffnessByAreaY", new named_type(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type), true)); - attributes.push_back(new attribute("LinearStiffnessByAreaZ", new named_type(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearStiffnessX", new named_type(IFC2X3_IfcLinearStiffnessMeasure_type), true)); - attributes.push_back(new attribute("LinearStiffnessY", new named_type(IFC2X3_IfcLinearStiffnessMeasure_type), true)); - attributes.push_back(new attribute("LinearStiffnessZ", new named_type(IFC2X3_IfcLinearStiffnessMeasure_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC2X3_IfcRotationalStiffnessMeasure_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC2X3_IfcRotationalStiffnessMeasure_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC2X3_IfcRotationalStiffnessMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC2X3_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC2X3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC2X3_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC2X3_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC2X3_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInX", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DayComponent", new named_type(IFC2X3_IfcDayInMonthNumber_type), false)); - attributes.push_back(new attribute("MonthComponent", new named_type(IFC2X3_IfcMonthInYearNumber_type), false)); - attributes.push_back(new attribute("YearComponent", new named_type(IFC2X3_IfcYearNumber_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCalendarDate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC2X3_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC2X3_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC2X3_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC2X3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new simple_type(simple_type::real_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new simple_type(simple_type::real_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC2X3_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new simple_type(simple_type::real_type), true)); - attributes.push_back(new attribute("Scale3", new simple_type(simple_type::real_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Width", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Height", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcChamferEdgeFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Source", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Edition", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC2X3_IfcCalendarDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Notation", new named_type(IFC2X3_IfcClassificationNotationFacet_type), false)); - attributes.push_back(new attribute("ItemOf", new named_type(IFC2X3_IfcClassification_type), true)); - attributes.push_back(new attribute("Title", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcClassificationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingItem", new named_type(IFC2X3_IfcClassificationItem_type), false)); - attributes.push_back(new attribute("RelatedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationItem_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcClassificationItemRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("NotationFacets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationNotationFacet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcClassificationNotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("NotationValue", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcClassificationNotationFacet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC2X3_IfcClassification_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcCompositeCurveSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new simple_type(simple_type::logical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Transition", new named_type(IFC2X3_IfcTransitionCode_type), false)); - attributes.push_back(new attribute("SameSense", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC2X3_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC2X3_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Criterion", new named_type(IFC2X3_IfcConditionCriterionSelect_type), false)); - attributes.push_back(new attribute("CriterionDateTime", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConditionCriterion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC2X3_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC2X3_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC2X3_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC2X3_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("LocationAtRelatingElement", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("LocationAtRelatedElement", new named_type(IFC2X3_IfcAxis2Placement_type), true)); - attributes.push_back(new attribute("ProfileOfPort", new named_type(IFC2X3_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConnectionPortGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC2X3_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC2X3_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC2X3_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC2X3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC2X3_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedConstraints", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcConstraint_type)), false)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC2X3_IfcLogicalOperatorEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstraintAggregationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ClassifiedConstraint", new named_type(IFC2X3_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationNotationSelect_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstraintClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC2X3_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedConstraints", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcConstraint_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Suppliers", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("UsageRatio", new named_type(IFC2X3_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ResourceIdentifier", new named_type(IFC2X3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ResourceGroup", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ResourceConsumption", new named_type(IFC2X3_IfcResourceConsumptionEnum_type), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC2X3_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC2X3_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("HourOffset", new named_type(IFC2X3_IfcHourInDay_type), false)); - attributes.push_back(new attribute("MinuteOffset", new named_type(IFC2X3_IfcMinuteInHour_type), true)); - attributes.push_back(new attribute("Sense", new named_type(IFC2X3_IfcAheadOrBehind_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCoordinatedUniversalTimeOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("SubmittedBy", new named_type(IFC2X3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("PreparedBy", new named_type(IFC2X3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("TargetUsers", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("ID", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCostScheduleTypeEnum_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CostType", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Condition", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseWidth2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("HeadWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("HeadDepth2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("HeadDepth3", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseWidth4", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseDepth1", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseDepth2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseDepth3", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("CentreOfGravityInY", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCraneRailAShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("HeadWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("HeadDepth2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("HeadDepth3", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseDepth1", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BaseDepth2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("CentreOfGravityInY", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCraneRailFShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC2X3_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC2X3_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC2X3_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC2X3_IfcDateAndTime_type), false)); - attributes.push_back(new attribute("RateSource", new named_type(IFC2X3_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC2X3_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC2X3_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("CurveFont", new named_type(IFC2X3_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC2X3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC2X3_IfcColour_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC2X3_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DateComponent", new named_type(IFC2X3_IfcCalendarDate_type), false)); - attributes.push_back(new attribute("TimeComponent", new named_type(IFC2X3_IfcLocalTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDateAndTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Definition", new named_type(IFC2X3_IfcDefinedSymbolSelect_type), false)); - attributes.push_back(new attribute("Target", new named_type(IFC2X3_IfcCartesianTransformationOperator2D_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDefinedSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC2X3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC2X3_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC2X3_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDiameterDimension_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDimensionCalloutRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDimensionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDimensionCurveDirectedCallout_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Role", new named_type(IFC2X3_IfcDimensionExtentUsage_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDimensionCurveTerminator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDimensionPair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new simple_type(simple_type::real_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ControlElementId", new named_type(IFC2X3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC2X3_IfcFlowDirectionEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FileExtension", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("MimeContentType", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("MimeSubtype", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDocumentElectronicFormat_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DocumentId", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("DocumentReferences", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDocumentReference_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC2X3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC2X3_IfcDateAndTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC2X3_IfcDateAndTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC2X3_IfcDocumentElectronicFormat_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC2X3_IfcCalendarDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC2X3_IfcCalendarDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC2X3_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC2X3_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC2X3_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC2X3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC2X3_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC2X3_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC2X3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC2X3_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC2X3_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("Sizeable", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Contents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDraughtingCalloutElement_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDraughtingCallout_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("RelatingDraughtingCallout", new named_type(IFC2X3_IfcDraughtingCallout_type), false)); - attributes.push_back(new attribute("RelatedDraughtingCallout", new named_type(IFC2X3_IfcDraughtingCallout_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDraughtingCalloutRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcDraughtingPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC2X3_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC2X3_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FeatureLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEdgeFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DistributionPointFunction", new named_type(IFC2X3_IfcElectricDistributionPointFunctionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedFunction", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricDistributionPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElectricHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("ElectricCurrentType", new named_type(IFC2X3_IfcElectricCurrentEnum_type), true)); - attributes.push_back(new attribute("InputVoltage", new named_type(IFC2X3_IfcElectricVoltageMeasure_type), false)); - attributes.push_back(new attribute("InputFrequency", new named_type(IFC2X3_IfcFrequencyMeasure_type), false)); - attributes.push_back(new attribute("FullLoadCurrent", new named_type(IFC2X3_IfcElectricCurrentMeasure_type), true)); - attributes.push_back(new attribute("MinimumCircuitCurrent", new named_type(IFC2X3_IfcElectricCurrentMeasure_type), true)); - attributes.push_back(new attribute("MaximumPowerInput", new named_type(IFC2X3_IfcPowerMeasure_type), true)); - attributes.push_back(new attribute("RatedPowerInput", new named_type(IFC2X3_IfcPowerMeasure_type), true)); - attributes.push_back(new attribute("InputPhase", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricalBaseProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricalCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElectricalElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC2X3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC2X3_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnergySequence", new named_type(IFC2X3_IfcEnergySequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEnergySequence", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEnergyProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ImpactType", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Category", new named_type(IFC2X3_IfcEnvironmentalImpactCategoryEnum_type), false)); - attributes.push_back(new attribute("UserDefinedCategory", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEnvironmentalImpactValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEquipmentElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEquipmentStandard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ExtendedProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExtendedMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ItemReference", new named_type(IFC2X3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExternallyDefinedSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC2X3_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC2X3_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC2X3_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC2X3_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFillStyleSelect_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC2X3_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC2X3_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC2X3_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC2X3_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Symbol", new named_type(IFC2X3_IfcAnnotationSymbolOccurrence_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new named_type(IFC2X3_IfcOneDirectionRepeatFactor_type), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFillAreaStyleTileShapeSelect_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("PropertySource", new named_type(IFC2X3_IfcPropertySourceEnum_type), false)); - attributes.push_back(new attribute("FlowConditionTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("VelocityTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("FlowrateTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("Fluid", new named_type(IFC2X3_IfcMaterial_type), false)); - attributes.push_back(new attribute("PressureTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("UserDefinedPropertySource", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("TemperatureSingleValue", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("WetBulbTemperatureSingleValue", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("WetBulbTemperatureTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("TemperatureTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("FlowrateSingleValue", new named_type(IFC2X3_IfcDerivedMeasureValue_type), true)); - attributes.push_back(new attribute("FlowConditionSingleValue", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("VelocitySingleValue", new named_type(IFC2X3_IfcLinearVelocityMeasure_type), true)); - attributes.push_back(new attribute("PressureSingleValue", new named_type(IFC2X3_IfcPressureMeasure_type), true)); - std::vector derived; derived.reserve(19); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFluidFlowProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CombustionTemperature", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("CarbonContent", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("LowerHeatingValue", new named_type(IFC2X3_IfcHeatingValueMeasure_type), true)); - attributes.push_back(new attribute("HigherHeatingValue", new named_type(IFC2X3_IfcHeatingValueMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFuelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFurnitureStandard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC2X3_IfcAssemblyPlaceEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcGasTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGasTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MolecularWeight", new named_type(IFC2X3_IfcMolecularWeightMeasure_type), true)); - attributes.push_back(new attribute("Porosity", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("MassDensity", new named_type(IFC2X3_IfcMassDensityMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGeneralMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PhysicalWeight", new named_type(IFC2X3_IfcMassPerLengthMeasure_type), true)); - attributes.push_back(new attribute("Perimeter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinimumPlateThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MaximumPlateThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGeneralProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC2X3_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new simple_type(simple_type::real_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC2X3_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC2X3_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC2X3_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcGridAxis_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC2X3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC2X3_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC2X3_IfcVirtualGridIntersection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC2X3_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UpperVaporResistanceFactor", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("LowerVaporResistanceFactor", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("IsothermalMoistureCapacity", new named_type(IFC2X3_IfcIsothermalMoistureCapacityMeasure_type), true)); - attributes.push_back(new attribute("VaporPermeability", new named_type(IFC2X3_IfcVaporPermeabilityMeasure_type), true)); - attributes.push_back(new attribute("MoistureDiffusivity", new named_type(IFC2X3_IfcMoistureDiffusivityMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcHygroscopicMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("UrlReference", new named_type(IFC2X3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("InventoryType", new named_type(IFC2X3_IfcInventoryTypeEnum_type), false)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC2X3_IfcActorSelect_type), false)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPerson_type)), false)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC2X3_IfcCalendarDate_type), false)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC2X3_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC2X3_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInX", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInY", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SkillSet", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC2X3_IfcOrganization_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC2X3_IfcCalendarDate_type), true)); - attributes.push_back(new attribute("LibraryReference", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcLibraryReference_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC2X3_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC2X3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC2X3_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC2X3_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC2X3_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC2X3_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC2X3_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC2X3_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC2X3_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC2X3_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC2X3_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC2X3_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC2X3_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC2X3_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC2X3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC2X3_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcLinearDimension_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC2X3_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HourComponent", new named_type(IFC2X3_IfcHourInDay_type), false)); - attributes.push_back(new attribute("MinuteComponent", new named_type(IFC2X3_IfcMinuteInHour_type), true)); - attributes.push_back(new attribute("SecondComponent", new named_type(IFC2X3_IfcSecondInMinute_type), true)); - attributes.push_back(new attribute("Zone", new named_type(IFC2X3_IfcCoordinatedUniversalTimeOffset_type), true)); - attributes.push_back(new attribute("DaylightSavingOffset", new named_type(IFC2X3_IfcDaylightSavingHour_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcLocalTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC2X3_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC2X3_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC2X3_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationNotationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC2X3_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC2X3_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Material", new named_type(IFC2X3_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC2X3_IfcLogical_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC2X3_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC2X3_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC2X3_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC2X3_IfcMaterial_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC2X3_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC2X3_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("CompressiveStrength", new named_type(IFC2X3_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("MaxAggregateSize", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("AdmixturesDescription", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Workability", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("ProtectivePoreRatio", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("WaterImpermeability", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMechanicalConcreteMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DynamicViscosity", new named_type(IFC2X3_IfcDynamicViscosityMeasure_type), true)); - attributes.push_back(new attribute("YoungModulus", new named_type(IFC2X3_IfcModulusOfElasticityMeasure_type), true)); - attributes.push_back(new attribute("ShearModulus", new named_type(IFC2X3_IfcModulusOfElasticityMeasure_type), true)); - attributes.push_back(new attribute("PoissonRatio", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ThermalExpansionCoefficient", new named_type(IFC2X3_IfcThermalExpansionCoefficientMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMechanicalMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("YieldStress", new named_type(IFC2X3_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("UltimateStress", new named_type(IFC2X3_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("UltimateStrain", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("HardeningModule", new named_type(IFC2X3_IfcModulusOfElasticityMeasure_type), true)); - attributes.push_back(new attribute("ProportionalStress", new named_type(IFC2X3_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("PlasticStrain", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Relaxations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRelaxation_type)), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMechanicalSteelMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Benchmark", new named_type(IFC2X3_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC2X3_IfcMetricValueSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC2X3_IfcCurrencyEnum_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MoveFrom", new named_type(IFC2X3_IfcSpatialStructureElement_type), false)); - attributes.push_back(new attribute("MoveTo", new named_type(IFC2X3_IfcSpatialStructureElement_type), false)); - attributes.push_back(new attribute("PunchList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcText_type)), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcMove_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC2X3_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC2X3_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new named_type(IFC2X3_IfcMetric_type), true)); - attributes.push_back(new attribute("ResultValues", new named_type(IFC2X3_IfcMetric_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC2X3_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcOccupantTypeEnum_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new simple_type(simple_type::logical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new simple_type(simple_type::logical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC2X3_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepeatFactor", new named_type(IFC2X3_IfcVector_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcOneDirectionRepeatFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("VisibleTransmittance", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("SolarTransmittance", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ThermalIrTransmittance", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ThermalIrEmissivityBack", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ThermalIrEmissivityFront", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("VisibleReflectanceBack", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("VisibleReflectanceFront", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("SolarReflectanceFront", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("SolarReflectanceBack", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOpticalMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ActionID", new named_type(IFC2X3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOrderAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Id", new named_type(IFC2X3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC2X3_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC2X3_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC2X3_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC2X3_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC2X3_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC2X3_IfcChangeActionEnum_type), false)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC2X3_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC2X3_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC2X3_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC2X3_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement2D_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC2X3_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC2X3_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC2X3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PermitID", new named_type(IFC2X3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Id", new named_type(IFC2X3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC2X3_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC2X3_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcPileTypeEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC2X3_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC2X3_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC2X3_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC2X3_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new simple_type(simple_type::binary_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC2X3_IfcCartesianPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC2X3_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC2X3_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC2X3_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC2X3_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedDimensionSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedPointMarkerSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedTerminatorSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC2X3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new simple_type(simple_type::logical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new simple_type(simple_type::logical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new simple_type(simple_type::logical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC2X3_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcPresentationStyleAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ProcedureID", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("ProcedureType", new named_type(IFC2X3_IfcProcedureTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedProcedureType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC2X3_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC2X3_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("SpecificHeatCapacity", new named_type(IFC2X3_IfcSpecificHeatCapacityMeasure_type), true)); - attributes.push_back(new attribute("N20Content", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("COContent", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("CO2Content", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProductsOfCombustionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC2X3_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileName", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC2X3_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LongName", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRepresentationContext_type)), false)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC2X3_IfcUnitAssignment_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ID", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcProjectOrderTypeEnum_type), false)); - attributes.push_back(new attribute("Status", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Records", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcRelAssignsToProjectOrder_type)), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcProjectOrderRecordTypeEnum_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProjectOrderRecord_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProjectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC2X3_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC2X3_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcUnit_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC2X3_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC2X3_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC2X3_IfcProperty_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC2X3_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC2X3_IfcObjectReferenceSelect_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC2X3_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC2X3_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC2X3_IfcUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC2X3_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AreaValue", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CountValue", new named_type(IFC2X3_IfcCountMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LengthValue", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TimeValue", new named_type(IFC2X3_IfcTimeMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC2X3_IfcVolumeMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightValue", new named_type(IFC2X3_IfcMassMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcRadiusDimension_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ShapeType", new named_type(IFC2X3_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new simple_type(simple_type::real_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRationalBezierCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC2X3_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("Vsense", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC2X3_IfcDocumentSelect_type), false)); - attributes.push_back(new attribute("ReferencingValues", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcAppliedValue_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcReferencesValueDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC2X3_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC2X3_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC2X3_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("BarLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarRole", new named_type(IFC2X3_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC2X3_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("MeshLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC2X3_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TimeForTask", new named_type(IFC2X3_IfcScheduleTimeControl_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsTasks_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC2X3_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC2X3_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC2X3_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC2X3_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC2X3_IfcProcess_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC2X3_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC2X3_IfcProduct_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC2X3_IfcResource_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRoot_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingAppliedValue", new named_type(IFC2X3_IfcAppliedValue_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC2X3_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC2X3_IfcClassificationNotationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC2X3_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC2X3_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC2X3_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC2X3_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingProfileProperties", new named_type(IFC2X3_IfcProfileProperties_type), false)); - attributes.push_back(new attribute("ProfileSectionLocation", new named_type(IFC2X3_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("ProfileOrientation", new named_type(IFC2X3_IfcOrientationSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelAssociatesProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC2X3_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC2X3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC2X3_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new simple_type(simple_type::integer_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new simple_type(simple_type::integer_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC2X3_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC2X3_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC2X3_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC2X3_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC2X3_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC2X3_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC2X3_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC2X3_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC2X3_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC2X3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedStructuralMember", new named_type(IFC2X3_IfcStructuralMember_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsStructuralElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC2X3_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC2X3_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC2X3_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC2X3_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC2X3_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC2X3_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC2X3_IfcSpatialStructureElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC2X3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedSpace", new named_type(IFC2X3_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC2X3_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcObject_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC2X3_IfcPropertySetDefinition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingType", new named_type(IFC2X3_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC2X3_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC2X3_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC2X3_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DailyInteraction", new named_type(IFC2X3_IfcCountMeasure_type), true)); - attributes.push_back(new attribute("ImportanceRating", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("LocationOfInteraction", new named_type(IFC2X3_IfcSpatialStructureElement_type), true)); - attributes.push_back(new attribute("RelatedSpaceProgram", new named_type(IFC2X3_IfcSpaceProgram_type), false)); - attributes.push_back(new attribute("RelatingSpaceProgram", new named_type(IFC2X3_IfcSpaceProgram_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelInteractionRequirements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelOccupiesSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OverridingProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelOverridesProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC2X3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC2X3_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC2X3_IfcSpatialStructureElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelSchedulesCostItems_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC2X3_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC2X3_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC2X3_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC2X3_IfcSequenceEnum_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC2X3_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcSpatialStructureElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC2X3_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC2X3_IfcElement_type), true)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC2X3_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC2X3_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC2X3_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC2X3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC2X3_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelaxationValue", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("InitialStress", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRelaxation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC2X3_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC2X3_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC2X3_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Thickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("RibHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("RibWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("RibSpacing", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Direction", new named_type(IFC2X3_IfcRibPlateDirectionEnum_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRibPlateProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ShapeType", new named_type(IFC2X3_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC2X3_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC2X3_IfcOwnerHistory_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRoundedEdgeFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC2X3_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(18); - attributes.push_back(new attribute("ActualStart", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("IsCritical", new simple_type(simple_type::boolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("StartFloat", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("FinishFloat", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(23); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcScheduleTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC2X3_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC2X3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC2X3_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC2X3_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC2X3_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC2X3_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ServiceLifeType", new named_type(IFC2X3_IfcServiceLifeTypeEnum_type), false)); - attributes.push_back(new attribute("ServiceLifeDuration", new named_type(IFC2X3_IfcTimeMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcServiceLife_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcServiceLifeFactorTypeEnum_type), false)); - attributes.push_back(new attribute("UpperValue", new named_type(IFC2X3_IfcMeasureValue_type), true)); - attributes.push_back(new attribute("MostUsedValue", new named_type(IFC2X3_IfcMeasureValue_type), false)); - attributes.push_back(new attribute("LowerValue", new named_type(IFC2X3_IfcMeasureValue_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcServiceLifeFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new simple_type(simple_type::logical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC2X3_IfcProductDefinitionShape_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC2X3_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC2X3_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC2X3_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("IsAttenuating", new named_type(IFC2X3_IfcBoolean_type), false)); - attributes.push_back(new attribute("SoundScale", new named_type(IFC2X3_IfcSoundScaleEnum_type), true)); - attributes.push_back(new attribute("SoundValues", new aggregation_type(aggregation_type::list_type, 1, 8, new named_type(IFC2X3_IfcSoundValue_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSoundProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SoundLevelTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("Frequency", new named_type(IFC2X3_IfcFrequencyMeasure_type), false)); - attributes.push_back(new attribute("SoundLevelSingleValue", new named_type(IFC2X3_IfcDerivedMeasureValue_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSoundValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("InteriorOrExteriorSpace", new named_type(IFC2X3_IfcInternalOrExternalEnum_type), false)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("SpaceProgramIdentifier", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("MaxRequiredArea", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("MinRequiredArea", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("RequestedLocation", new named_type(IFC2X3_IfcSpatialStructureElement_type), true)); - attributes.push_back(new attribute("StandardRequiredArea", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpaceProgram_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("ApplicableValueRatio", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ThermalLoadSource", new named_type(IFC2X3_IfcThermalLoadSourceEnum_type), false)); - attributes.push_back(new attribute("PropertySource", new named_type(IFC2X3_IfcPropertySourceEnum_type), false)); - attributes.push_back(new attribute("SourceDescription", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("MaximumValue", new named_type(IFC2X3_IfcPowerMeasure_type), false)); - attributes.push_back(new attribute("MinimumValue", new named_type(IFC2X3_IfcPowerMeasure_type), true)); - attributes.push_back(new attribute("ThermalLoadTimeSeriesValues", new named_type(IFC2X3_IfcTimeSeries_type), true)); - attributes.push_back(new attribute("UserDefinedThermalLoadSource", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("UserDefinedPropertySource", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ThermalLoadType", new named_type(IFC2X3_IfcThermalLoadTypeEnum_type), false)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpaceThermalLoadProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSpaceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("CompositionType", new named_type(IFC2X3_IfcElementCompositionEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ShapeType", new named_type(IFC2X3_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("NumberOfRiser", new simple_type(simple_type::integer_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new simple_type(simple_type::integer_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DestabilizingLoad", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("CausedBy", new named_type(IFC2X3_IfcStructuralReaction_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC2X3_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC2X3_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC2X3_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcStructuralResultGroup_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC2X3_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcStructuralCurveTypeEnum_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC2X3_IfcProjectedOrTrueLengthEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VaryingAppliedLoadLocation", new named_type(IFC2X3_IfcShapeAspect_type), false)); - attributes.push_back(new attribute("SubsequentAppliedLoads", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcStructuralLoad_type)), false)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLinearActionVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC2X3_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC2X3_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC2X3_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC2X3_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC2X3_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC2X3_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC2X3_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC2X3_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC2X3_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC2X3_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC2X3_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC2X3_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC2X3_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC2X3_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC2X3_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC2X3_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC2X3_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaT_Constant", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaT_Y", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaT_Z", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC2X3_IfcProjectedOrTrueLengthEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VaryingAppliedLoadLocation", new named_type(IFC2X3_IfcShapeAspect_type), false)); - attributes.push_back(new attribute("SubsequentAppliedLoads", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcStructuralLoad_type)), false)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralPlanarActionVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(16); - attributes.push_back(new attribute("TorsionalConstantX", new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true)); - attributes.push_back(new attribute("MomentOfInertiaYZ", new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true)); - attributes.push_back(new attribute("MomentOfInertiaY", new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true)); - attributes.push_back(new attribute("MomentOfInertiaZ", new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true)); - attributes.push_back(new attribute("WarpingConstant", new named_type(IFC2X3_IfcWarpingConstantMeasure_type), true)); - attributes.push_back(new attribute("ShearCentreZ", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ShearCentreY", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ShearDeformationAreaZ", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("ShearDeformationAreaY", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("MaximumSectionModulusY", new named_type(IFC2X3_IfcSectionModulusMeasure_type), true)); - attributes.push_back(new attribute("MinimumSectionModulusY", new named_type(IFC2X3_IfcSectionModulusMeasure_type), true)); - attributes.push_back(new attribute("MaximumSectionModulusZ", new named_type(IFC2X3_IfcSectionModulusMeasure_type), true)); - attributes.push_back(new attribute("MinimumSectionModulusZ", new named_type(IFC2X3_IfcSectionModulusMeasure_type), true)); - attributes.push_back(new attribute("TorsionalSectionModulus", new named_type(IFC2X3_IfcSectionModulusMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInX", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInY", new named_type(IFC2X3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(23); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC2X3_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC2X3_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ShearAreaZ", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("ShearAreaY", new named_type(IFC2X3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("PlasticShapeFactorY", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("PlasticShapeFactorZ", new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(27); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralSteelProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcStructuralSurfaceTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SubsequentThickness", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcPositiveLengthMeasure_type)), false)); - attributes.push_back(new attribute("VaryingThicknessLocation", new named_type(IFC2X3_IfcShapeAspect_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcStructuredDimensionCallout_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC2X3_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPresentationStyleAssignment_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SubContractor", new named_type(IFC2X3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("JobDescription", new named_type(IFC2X3_IfcText_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC2X3_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("EndParam", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC2X3_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC2X3_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC2X3_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC2X3_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC2X3_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC2X3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC2X3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC2X3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC2X3_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC2X3_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC2X3_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Transparency", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC2X3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC2X3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC2X3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC2X3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC2X3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC2X3_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC2X3_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC2X3_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RepeatS", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("RepeatT", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("TextureType", new named_type(IFC2X3_IfcSurfaceTextureEnum_type), false)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC2X3_IfcCartesianTransformationOperator2D_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC2X3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC2X3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("EndParam", new named_type(IFC2X3_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC2X3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC2X3_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("StyleOfSymbol", new named_type(IFC2X3_IfcSymbolStyleSelect_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSymbolStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInY", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new simple_type(simple_type::string_type), false)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcTableRow_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - attributes.push_back(new attribute("IsHeading", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TaskId", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Status", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("Priority", new simple_type(simple_type::integer_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC2X3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC2X3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC2X3_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AnnotatedCurve", new named_type(IFC2X3_IfcAnnotationCurveOccurrence_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTerminatorSymbol_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC2X3_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC2X3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC2X3_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC2X3_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC2X3_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC2X3_IfcCharacterStyleSelect_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC2X3_IfcTextStyleSelect_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC2X3_IfcTextFontSelect_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcTextFontName_type)), true)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC2X3_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC2X3_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC2X3_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC2X3_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC2X3_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC2X3_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC2X3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC2X3_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC2X3_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC2X3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC2X3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC2X3_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC2X3_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BoxHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BoxWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BoxSlantAngle", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("BoxRotateAngle", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("CharacterSpacing", new named_type(IFC2X3_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextStyleWithBoxCharacteristics_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcSimpleValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TextureMaps", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcVertexBasedTextureMap_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC2X3_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("SpecificHeatCapacity", new named_type(IFC2X3_IfcSpecificHeatCapacityMeasure_type), true)); - attributes.push_back(new attribute("BoilingPoint", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("FreezingPoint", new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("ThermalConductivity", new named_type(IFC2X3_IfcThermalConductivityMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcThermalMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC2X3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC2X3_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC2X3_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC2X3_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC2X3_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ReferencedTimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), false)); - attributes.push_back(new attribute("TimeSeriesReferences", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDocumentSelect_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTimeSeriesReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ApplicableDates", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcDateTimeSelect_type)), true)); - attributes.push_back(new attribute("TimeSeriesScheduleType", new named_type(IFC2X3_IfcTimeSeriesScheduleTypeEnum_type), false)); - attributes.push_back(new attribute("TimeSeries", new named_type(IFC2X3_IfcTimeSeries_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTimeSeriesSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("OperationType", new named_type(IFC2X3_IfcTransportElementTypeEnum_type), true)); - attributes.push_back(new attribute("CapacityByWeight", new named_type(IFC2X3_IfcMassMeasure_type), true)); - attributes.push_back(new attribute("CapacityByNumber", new named_type(IFC2X3_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcTransportElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC2X3_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC2X3_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC2X3_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC2X3_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SecondRepeatFactor", new named_type(IFC2X3_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTwoDirectionRepeatFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("CentreOfGravityInX", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC2X3_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC2X3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC2X3_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TextureVertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC2X3_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("TexturePoints", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcVertexBasedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC2X3_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC2X3_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC2X3_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC2X3_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC2X3_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC2X3_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC2X3_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("IsPotable", new simple_type(simple_type::boolean_type), true)); - attributes.push_back(new attribute("Hardness", new named_type(IFC2X3_IfcIonConcentrationMeasure_type), true)); - attributes.push_back(new attribute("AlkalinityConcentration", new named_type(IFC2X3_IfcIonConcentrationMeasure_type), true)); - attributes.push_back(new attribute("AcidityConcentration", new named_type(IFC2X3_IfcIonConcentrationMeasure_type), true)); - attributes.push_back(new attribute("ImpuritiesContent", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PHLevel", new named_type(IFC2X3_IfcPHMeasure_type), true)); - attributes.push_back(new attribute("DissolvedSolidsContent", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWaterProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC2X3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC2X3_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC2X3_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC2X3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC2X3_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC2X3_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new simple_type(simple_type::boolean_type), false)); - attributes.push_back(new attribute("Sizeable", new simple_type(simple_type::boolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Identifier", new named_type(IFC2X3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC2X3_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC2X3_IfcTimeMeasure_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC2X3_IfcDateTimeSelect_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC2X3_IfcDateTimeSelect_type), true)); - attributes.push_back(new attribute("WorkControlType", new named_type(IFC2X3_IfcWorkControlTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedControlType", new named_type(IFC2X3_IfcLabel_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC2X3_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToActor_type, IFC2X3_IfcRelAssignsToActor_type->attributes()[0])); - IFC2X3_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPerson_type, IFC2X3_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC2X3_IfcOrganization_type, IFC2X3_IfcOrganization_type->attributes()[4])); - IFC2X3_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC2X3_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ValuesReferenced", inverse_attribute::set_type, 0, -1, IFC2X3_IfcReferencesValueDocument_type, IFC2X3_IfcReferencesValueDocument_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ValueOfComponents", inverse_attribute::set_type, 0, -1, IFC2X3_IfcAppliedValueRelationship_type, IFC2X3_IfcAppliedValueRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsComponentIn", inverse_attribute::set_type, 0, -1, IFC2X3_IfcAppliedValueRelationship_type, IFC2X3_IfcAppliedValueRelationship_type->attributes()[1])); - IFC2X3_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("Actors", inverse_attribute::set_type, 0, -1, IFC2X3_IfcApprovalActorRelationship_type, IFC2X3_IfcApprovalActorRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC2X3_IfcApprovalRelationship_type, IFC2X3_IfcApprovalRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC2X3_IfcApprovalRelationship_type, IFC2X3_IfcApprovalRelationship_type->attributes()[1])); - IFC2X3_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Contains", inverse_attribute::set_type, 0, -1, IFC2X3_IfcClassificationItem_type, IFC2X3_IfcClassificationItem_type->attributes()[1])); - IFC2X3_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsClassifiedItemIn", inverse_attribute::set_type, 0, 1, IFC2X3_IfcClassificationItemRelationship_type, IFC2X3_IfcClassificationItemRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsClassifyingItemIn", inverse_attribute::set_type, 0, 1, IFC2X3_IfcClassificationItemRelationship_type, IFC2X3_IfcClassificationItemRelationship_type->attributes()[0])); - IFC2X3_IfcClassificationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC2X3_IfcCompositeCurve_type, IFC2X3_IfcCompositeCurve_type->attributes()[0])); - IFC2X3_IfcCompositeCurveSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("ClassifiedAs", inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintClassificationRelationship_type, IFC2X3_IfcConstraintClassificationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("RelatesConstraints", inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintRelationship_type, IFC2X3_IfcConstraintRelationship_type->attributes()[2])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintRelationship_type, IFC2X3_IfcConstraintRelationship_type->attributes()[3])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPropertyConstraintRelationship_type, IFC2X3_IfcPropertyConstraintRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Aggregates", inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintAggregationRelationship_type, IFC2X3_IfcConstraintAggregationRelationship_type->attributes()[2])); - attributes.push_back(new inverse_attribute("IsAggregatedIn", inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintAggregationRelationship_type, IFC2X3_IfcConstraintAggregationRelationship_type->attributes()[3])); - IFC2X3_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToControl_type, IFC2X3_IfcRelAssignsToControl_type->attributes()[0])); - IFC2X3_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelCoversSpaces_type, IFC2X3_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Covers", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelCoversBldgElements_type, IFC2X3_IfcRelCoversBldgElements_type->attributes()[1])); - IFC2X3_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AnnotatedBySymbols", inverse_attribute::set_type, 0, 2, IFC2X3_IfcTerminatorSymbol_type, IFC2X3_IfcTerminatorSymbol_type->attributes()[0])); - IFC2X3_IfcDimensionCurve_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelFlowControlElements_type, IFC2X3_IfcRelFlowControlElements_type->attributes()[0])); - IFC2X3_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelFlowControlElements_type, IFC2X3_IfcRelFlowControlElements_type->attributes()[1])); - IFC2X3_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC2X3_IfcDocumentInformationRelationship_type, IFC2X3_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC2X3_IfcDocumentInformationRelationship_type, IFC2X3_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC2X3_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferenceToDocument", inverse_attribute::set_type, 0, 1, IFC2X3_IfcDocumentInformation_type, IFC2X3_IfcDocumentInformation_type->attributes()[3])); - IFC2X3_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsRelatedFromCallout", inverse_attribute::set_type, 0, -1, IFC2X3_IfcDraughtingCalloutRelationship_type, IFC2X3_IfcDraughtingCalloutRelationship_type->attributes()[3])); - attributes.push_back(new inverse_attribute("IsRelatedToCallout", inverse_attribute::set_type, 0, -1, IFC2X3_IfcDraughtingCalloutRelationship_type, IFC2X3_IfcDraughtingCalloutRelationship_type->attributes()[2])); - IFC2X3_IfcDraughtingCallout_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new inverse_attribute("HasStructuralMember", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralElement_type, IFC2X3_IfcRelConnectsStructuralElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelFillsElement_type, IFC2X3_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsElements_type, IFC2X3_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelCoversBldgElements_type, IFC2X3_IfcRelCoversBldgElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelProjectsElement_type, IFC2X3_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelReferencedInSpatialStructure_type, IFC2X3_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsPortToElement_type, IFC2X3_IfcRelConnectsPortToElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelVoidsElement_type, IFC2X3_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsWithRealizingElements_type, IFC2X3_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSpaceBoundary_type, IFC2X3_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsElements_type, IFC2X3_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC2X3_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelProjectsElement_type, IFC2X3_IfcRelProjectsElement_type->attributes()[1])); - IFC2X3_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelVoidsElement_type, IFC2X3_IfcRelVoidsElement_type->attributes()[1])); - IFC2X3_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC2X3_IfcGeometricRepresentationSubContext_type, IFC2X3_IfcGeometricRepresentationSubContext_type->attributes()[0])); - IFC2X3_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC2X3_IfcGrid_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC2X3_IfcGrid_type, IFC2X3_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC2X3_IfcGrid_type, IFC2X3_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC2X3_IfcGrid_type, IFC2X3_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC2X3_IfcVirtualGridIntersection_type, IFC2X3_IfcVirtualGridIntersection_type->attributes()[0])); - IFC2X3_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelAssignsToGroup_type, IFC2X3_IfcRelAssignsToGroup_type->attributes()[0])); - IFC2X3_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferenceIntoLibrary", inverse_attribute::set_type, 0, 1, IFC2X3_IfcLibraryInformation_type, IFC2X3_IfcLibraryInformation_type->attributes()[4])); - IFC2X3_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC2X3_IfcMaterialDefinitionRepresentation_type, IFC2X3_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ClassifiedAs", inverse_attribute::set_type, 0, 1, IFC2X3_IfcMaterialClassificationRelationship_type, IFC2X3_IfcMaterialClassificationRelationship_type->attributes()[1])); - IFC2X3_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcMaterialLayerSet_type, IFC2X3_IfcMaterialLayerSet_type->attributes()[0])); - IFC2X3_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelDefines_type, IFC2X3_IfcRelDefines_type->attributes()[0])); - IFC2X3_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssigns_type, IFC2X3_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelDecomposes_type, IFC2X3_IfcRelDecomposes_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelDecomposes_type, IFC2X3_IfcRelDecomposes_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssociates_type, IFC2X3_IfcRelAssociates_type->attributes()[0])); - IFC2X3_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 1, 1, IFC2X3_IfcProduct_type, IFC2X3_IfcProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedByPlacements", inverse_attribute::set_type, 0, -1, IFC2X3_IfcLocalPlacement_type, IFC2X3_IfcLocalPlacement_type->attributes()[0])); - IFC2X3_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelFillsElement_type, IFC2X3_IfcRelFillsElement_type->attributes()[0])); - IFC2X3_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC2X3_IfcOrganizationRelationship_type, IFC2X3_IfcOrganizationRelationship_type->attributes()[3])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC2X3_IfcOrganizationRelationship_type, IFC2X3_IfcOrganizationRelationship_type->attributes()[2])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPersonAndOrganization_type, IFC2X3_IfcPersonAndOrganization_type->attributes()[1])); - IFC2X3_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPersonAndOrganization_type, IFC2X3_IfcPersonAndOrganization_type->attributes()[0])); - IFC2X3_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC2X3_IfcPhysicalComplexQuantity_type, IFC2X3_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC2X3_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelConnectsPortToElement_type, IFC2X3_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelConnectsPorts_type, IFC2X3_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelConnectsPorts_type, IFC2X3_IfcRelConnectsPorts_type->attributes()[0])); - IFC2X3_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToProcess_type, IFC2X3_IfcRelAssignsToProcess_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSequence_type, IFC2X3_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSequence_type, IFC2X3_IfcRelSequence_type->attributes()[0])); - IFC2X3_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToProduct_type, IFC2X3_IfcRelAssignsToProduct_type->attributes()[0])); - IFC2X3_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, 1, IFC2X3_IfcProduct_type, IFC2X3_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC2X3_IfcShapeAspect_type, IFC2X3_IfcShapeAspect_type->attributes()[4])); - IFC2X3_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPropertyDependencyRelationship_type, IFC2X3_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPropertyDependencyRelationship_type, IFC2X3_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC2X3_IfcComplexProperty_type, IFC2X3_IfcComplexProperty_type->attributes()[1])); - IFC2X3_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssociates_type, IFC2X3_IfcRelAssociates_type->attributes()[0])); - IFC2X3_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PropertyDefinitionOf", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelDefinesByProperties_type, IFC2X3_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, 1, IFC2X3_IfcTypeObject_type, IFC2X3_IfcTypeObject_type->attributes()[1])); - IFC2X3_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRepresentationMap_type, IFC2X3_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPresentationLayerAssignment_type, IFC2X3_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, 1, IFC2X3_IfcProductRepresentation_type, IFC2X3_IfcProductRepresentation_type->attributes()[2])); - IFC2X3_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRepresentation_type, IFC2X3_IfcRepresentation_type->attributes()[0])); - IFC2X3_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC2X3_IfcPresentationLayerAssignment_type, IFC2X3_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC2X3_IfcStyledItem_type, IFC2X3_IfcStyledItem_type->attributes()[0])); - IFC2X3_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC2X3_IfcMappedItem_type, IFC2X3_IfcMappedItem_type->attributes()[0])); - IFC2X3_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToResource_type, IFC2X3_IfcRelAssignsToResource_type->attributes()[0])); - IFC2X3_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ScheduleTimeControlAssigned", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelAssignsTasks_type, IFC2X3_IfcRelAssignsTasks_type->attributes()[0])); - IFC2X3_IfcScheduleTimeControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC2X3_IfcShapeAspect_type, IFC2X3_IfcShapeAspect_type->attributes()[0])); - IFC2X3_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelCoversSpaces_type, IFC2X3_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSpaceBoundary_type, IFC2X3_IfcRelSpaceBoundary_type->attributes()[0])); - IFC2X3_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasInteractionReqsFrom", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelInteractionRequirements_type, IFC2X3_IfcRelInteractionRequirements_type->attributes()[3])); - attributes.push_back(new inverse_attribute("HasInteractionReqsTo", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelInteractionRequirements_type, IFC2X3_IfcRelInteractionRequirements_type->attributes()[4])); - IFC2X3_IfcSpaceProgram_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelReferencedInSpatialStructure_type, IFC2X3_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelServicesBuildings_type, IFC2X3_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[1])); - IFC2X3_IfcSpatialStructureElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelConnectsStructuralActivity_type, IFC2X3_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC2X3_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC2X3_IfcRelConnectsStructuralMember_type, IFC2X3_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC2X3_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralActivity_type, IFC2X3_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC2X3_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC2X3_IfcStructuralResultGroup_type, IFC2X3_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC2X3_IfcStructuralAnalysisModel_type, IFC2X3_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC2X3_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ReferencesElement", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralElement_type, IFC2X3_IfcRelConnectsStructuralElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralMember_type, IFC2X3_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC2X3_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Causes", inverse_attribute::set_type, 0, -1, IFC2X3_IfcStructuralAction_type, IFC2X3_IfcStructuralAction_type->attributes()[1])); - IFC2X3_IfcStructuralReaction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC2X3_IfcStructuralAnalysisModel_type, IFC2X3_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC2X3_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelServicesBuildings_type, IFC2X3_IfcRelServicesBuildings_type->attributes()[0])); - IFC2X3_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfTable", inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcTable_type, IFC2X3_IfcTable_type->attributes()[1])); - IFC2X3_IfcTableRow_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AnnotatedSurface", inverse_attribute::set_type, 1, 1, IFC2X3_IfcAnnotationSurface_type, IFC2X3_IfcAnnotationSurface_type->attributes()[1])); - IFC2X3_IfcTextureCoordinate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentedBy", inverse_attribute::set_type, 0, 1, IFC2X3_IfcTimeSeriesReferenceRelationship_type, IFC2X3_IfcTimeSeriesReferenceRelationship_type->attributes()[0])); - IFC2X3_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ObjectTypeOf", inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelDefinesByType_type, IFC2X3_IfcRelDefinesByType_type->attributes()[0])); - IFC2X3_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_Ifc2DCompositeCurve_type); - IFC2X3_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(15); - defs.push_back(IFC2X3_IfcActionRequest_type);defs.push_back(IFC2X3_IfcConditionCriterion_type);defs.push_back(IFC2X3_IfcCostItem_type);defs.push_back(IFC2X3_IfcCostSchedule_type);defs.push_back(IFC2X3_IfcEquipmentStandard_type);defs.push_back(IFC2X3_IfcFurnitureStandard_type);defs.push_back(IFC2X3_IfcPerformanceHistory_type);defs.push_back(IFC2X3_IfcPermit_type);defs.push_back(IFC2X3_IfcProjectOrder_type);defs.push_back(IFC2X3_IfcProjectOrderRecord_type);defs.push_back(IFC2X3_IfcScheduleTimeControl_type);defs.push_back(IFC2X3_IfcServiceLife_type);defs.push_back(IFC2X3_IfcSpaceProgram_type);defs.push_back(IFC2X3_IfcTimeSeriesSchedule_type);defs.push_back(IFC2X3_IfcWorkControl_type); - IFC2X3_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC2X3_IfcActor_type);defs.push_back(IFC2X3_IfcControl_type);defs.push_back(IFC2X3_IfcGroup_type);defs.push_back(IFC2X3_IfcProcess_type);defs.push_back(IFC2X3_IfcProduct_type);defs.push_back(IFC2X3_IfcProject_type);defs.push_back(IFC2X3_IfcResource_type); - IFC2X3_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcActuatorType_type);defs.push_back(IFC2X3_IfcAlarmType_type);defs.push_back(IFC2X3_IfcControllerType_type);defs.push_back(IFC2X3_IfcFlowInstrumentType_type);defs.push_back(IFC2X3_IfcSensorType_type); - IFC2X3_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC2X3_IfcAirTerminalBoxType_type);defs.push_back(IFC2X3_IfcDamperType_type);defs.push_back(IFC2X3_IfcElectricTimeControlType_type);defs.push_back(IFC2X3_IfcFlowMeterType_type);defs.push_back(IFC2X3_IfcProtectiveDeviceType_type);defs.push_back(IFC2X3_IfcSwitchingDeviceType_type);defs.push_back(IFC2X3_IfcValveType_type); - IFC2X3_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC2X3_IfcAirTerminalType_type);defs.push_back(IFC2X3_IfcElectricApplianceType_type);defs.push_back(IFC2X3_IfcElectricHeaterType_type);defs.push_back(IFC2X3_IfcFireSuppressionTerminalType_type);defs.push_back(IFC2X3_IfcGasTerminalType_type);defs.push_back(IFC2X3_IfcLampType_type);defs.push_back(IFC2X3_IfcLightFixtureType_type);defs.push_back(IFC2X3_IfcOutletType_type);defs.push_back(IFC2X3_IfcSanitaryTerminalType_type);defs.push_back(IFC2X3_IfcStackTerminalType_type);defs.push_back(IFC2X3_IfcWasteTerminalType_type); - IFC2X3_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(18); - defs.push_back(IFC2X3_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC2X3_IfcBoilerType_type);defs.push_back(IFC2X3_IfcChillerType_type);defs.push_back(IFC2X3_IfcCoilType_type);defs.push_back(IFC2X3_IfcCondenserType_type);defs.push_back(IFC2X3_IfcCooledBeamType_type);defs.push_back(IFC2X3_IfcCoolingTowerType_type);defs.push_back(IFC2X3_IfcElectricGeneratorType_type);defs.push_back(IFC2X3_IfcElectricMotorType_type);defs.push_back(IFC2X3_IfcEvaporativeCoolerType_type);defs.push_back(IFC2X3_IfcEvaporatorType_type);defs.push_back(IFC2X3_IfcHeatExchangerType_type);defs.push_back(IFC2X3_IfcHumidifierType_type);defs.push_back(IFC2X3_IfcMotorConnectionType_type);defs.push_back(IFC2X3_IfcSpaceHeaterType_type);defs.push_back(IFC2X3_IfcTransformerType_type);defs.push_back(IFC2X3_IfcTubeBundleType_type);defs.push_back(IFC2X3_IfcUnitaryEquipmentType_type); - IFC2X3_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcAngularDimension_type);defs.push_back(IFC2X3_IfcDiameterDimension_type);defs.push_back(IFC2X3_IfcLinearDimension_type);defs.push_back(IFC2X3_IfcRadiusDimension_type); - IFC2X3_IfcDimensionCurveDirectedCallout_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC2X3_IfcAnnotation_type);defs.push_back(IFC2X3_IfcElement_type);defs.push_back(IFC2X3_IfcGrid_type);defs.push_back(IFC2X3_IfcPort_type);defs.push_back(IFC2X3_IfcProxy_type);defs.push_back(IFC2X3_IfcSpatialStructureElement_type);defs.push_back(IFC2X3_IfcStructuralActivity_type);defs.push_back(IFC2X3_IfcStructuralItem_type); - IFC2X3_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcAnnotationCurveOccurrence_type);defs.push_back(IFC2X3_IfcAnnotationFillAreaOccurrence_type);defs.push_back(IFC2X3_IfcAnnotationSurfaceOccurrence_type);defs.push_back(IFC2X3_IfcAnnotationSymbolOccurrence_type);defs.push_back(IFC2X3_IfcAnnotationTextOccurrence_type); - IFC2X3_IfcAnnotationOccurrence_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(28); - defs.push_back(IFC2X3_IfcAnnotationFillArea_type);defs.push_back(IFC2X3_IfcAnnotationSurface_type);defs.push_back(IFC2X3_IfcBooleanResult_type);defs.push_back(IFC2X3_IfcBoundingBox_type);defs.push_back(IFC2X3_IfcCartesianTransformationOperator_type);defs.push_back(IFC2X3_IfcCompositeCurveSegment_type);defs.push_back(IFC2X3_IfcCsgPrimitive3D_type);defs.push_back(IFC2X3_IfcCurve_type);defs.push_back(IFC2X3_IfcDefinedSymbol_type);defs.push_back(IFC2X3_IfcDirection_type);defs.push_back(IFC2X3_IfcDraughtingCallout_type);defs.push_back(IFC2X3_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC2X3_IfcFillAreaStyleHatching_type);defs.push_back(IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type);defs.push_back(IFC2X3_IfcFillAreaStyleTiles_type);defs.push_back(IFC2X3_IfcGeometricSet_type);defs.push_back(IFC2X3_IfcHalfSpaceSolid_type);defs.push_back(IFC2X3_IfcLightSource_type);defs.push_back(IFC2X3_IfcOneDirectionRepeatFactor_type);defs.push_back(IFC2X3_IfcPlacement_type);defs.push_back(IFC2X3_IfcPlanarExtent_type);defs.push_back(IFC2X3_IfcPoint_type);defs.push_back(IFC2X3_IfcSectionedSpine_type);defs.push_back(IFC2X3_IfcShellBasedSurfaceModel_type);defs.push_back(IFC2X3_IfcSolidModel_type);defs.push_back(IFC2X3_IfcSurface_type);defs.push_back(IFC2X3_IfcTextLiteral_type);defs.push_back(IFC2X3_IfcVector_type); - IFC2X3_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcAnnotationOccurrence_type); - IFC2X3_IfcStyledItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC2X3_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC2X3_IfcCompositeProfileDef_type);defs.push_back(IFC2X3_IfcDerivedProfileDef_type);defs.push_back(IFC2X3_IfcParameterizedProfileDef_type); - IFC2X3_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcArbitraryProfileDefWithVoids_type); - IFC2X3_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC2X3_IfcAsset_type);defs.push_back(IFC2X3_IfcCondition_type);defs.push_back(IFC2X3_IfcInventory_type);defs.push_back(IFC2X3_IfcStructuralLoadGroup_type);defs.push_back(IFC2X3_IfcStructuralResultGroup_type);defs.push_back(IFC2X3_IfcSystem_type);defs.push_back(IFC2X3_IfcZone_type); - IFC2X3_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcAsymmetricIShapeProfileDef_type); - IFC2X3_IfcIShapeProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcAxis1Placement_type);defs.push_back(IFC2X3_IfcAxis2Placement2D_type);defs.push_back(IFC2X3_IfcAxis2Placement3D_type); - IFC2X3_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcBSplineCurve_type);defs.push_back(IFC2X3_IfcCompositeCurve_type);defs.push_back(IFC2X3_IfcPolyline_type);defs.push_back(IFC2X3_IfcTrimmedCurve_type); - IFC2X3_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC2X3_IfcBeam_type);defs.push_back(IFC2X3_IfcBuildingElementComponent_type);defs.push_back(IFC2X3_IfcBuildingElementProxy_type);defs.push_back(IFC2X3_IfcColumn_type);defs.push_back(IFC2X3_IfcCovering_type);defs.push_back(IFC2X3_IfcCurtainWall_type);defs.push_back(IFC2X3_IfcDoor_type);defs.push_back(IFC2X3_IfcFooting_type);defs.push_back(IFC2X3_IfcMember_type);defs.push_back(IFC2X3_IfcPile_type);defs.push_back(IFC2X3_IfcPlate_type);defs.push_back(IFC2X3_IfcRailing_type);defs.push_back(IFC2X3_IfcRamp_type);defs.push_back(IFC2X3_IfcRampFlight_type);defs.push_back(IFC2X3_IfcRoof_type);defs.push_back(IFC2X3_IfcSlab_type);defs.push_back(IFC2X3_IfcStair_type);defs.push_back(IFC2X3_IfcStairFlight_type);defs.push_back(IFC2X3_IfcWall_type);defs.push_back(IFC2X3_IfcWindow_type); - IFC2X3_IfcBuildingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(12); - defs.push_back(IFC2X3_IfcBeamType_type);defs.push_back(IFC2X3_IfcBuildingElementProxyType_type);defs.push_back(IFC2X3_IfcColumnType_type);defs.push_back(IFC2X3_IfcCoveringType_type);defs.push_back(IFC2X3_IfcCurtainWallType_type);defs.push_back(IFC2X3_IfcMemberType_type);defs.push_back(IFC2X3_IfcPlateType_type);defs.push_back(IFC2X3_IfcRailingType_type);defs.push_back(IFC2X3_IfcRampFlightType_type);defs.push_back(IFC2X3_IfcSlabType_type);defs.push_back(IFC2X3_IfcStairFlightType_type);defs.push_back(IFC2X3_IfcWallType_type); - IFC2X3_IfcBuildingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcBezierCurve_type); - IFC2X3_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcBlobTexture_type);defs.push_back(IFC2X3_IfcImageTexture_type);defs.push_back(IFC2X3_IfcPixelTexture_type); - IFC2X3_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcBlock_type);defs.push_back(IFC2X3_IfcRectangularPyramid_type);defs.push_back(IFC2X3_IfcRightCircularCone_type);defs.push_back(IFC2X3_IfcRightCircularCylinder_type);defs.push_back(IFC2X3_IfcSphere_type); - IFC2X3_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcBooleanClippingResult_type); - IFC2X3_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcBoundaryEdgeCondition_type);defs.push_back(IFC2X3_IfcBoundaryFaceCondition_type);defs.push_back(IFC2X3_IfcBoundaryNodeCondition_type); - IFC2X3_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcBoundaryNodeConditionWarping_type); - IFC2X3_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcBoundedCurve_type);defs.push_back(IFC2X3_IfcConic_type);defs.push_back(IFC2X3_IfcLine_type);defs.push_back(IFC2X3_IfcOffsetCurve2D_type);defs.push_back(IFC2X3_IfcOffsetCurve3D_type); - IFC2X3_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcBoundedSurface_type);defs.push_back(IFC2X3_IfcElementarySurface_type);defs.push_back(IFC2X3_IfcSweptSurface_type); - IFC2X3_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcBoxedHalfSpace_type);defs.push_back(IFC2X3_IfcPolygonalBoundedHalfSpace_type); - IFC2X3_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcBuilding_type);defs.push_back(IFC2X3_IfcBuildingStorey_type);defs.push_back(IFC2X3_IfcSite_type);defs.push_back(IFC2X3_IfcSpace_type); - IFC2X3_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(10); - defs.push_back(IFC2X3_IfcBuildingElement_type);defs.push_back(IFC2X3_IfcDistributionElement_type);defs.push_back(IFC2X3_IfcElectricalElement_type);defs.push_back(IFC2X3_IfcElementAssembly_type);defs.push_back(IFC2X3_IfcElementComponent_type);defs.push_back(IFC2X3_IfcEquipmentElement_type);defs.push_back(IFC2X3_IfcFeatureElement_type);defs.push_back(IFC2X3_IfcFurnishingElement_type);defs.push_back(IFC2X3_IfcTransportElement_type);defs.push_back(IFC2X3_IfcVirtualElement_type); - IFC2X3_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcBuildingElementPart_type);defs.push_back(IFC2X3_IfcReinforcingElement_type); - IFC2X3_IfcBuildingElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC2X3_IfcBuildingElementType_type);defs.push_back(IFC2X3_IfcDistributionElementType_type);defs.push_back(IFC2X3_IfcElementComponentType_type);defs.push_back(IFC2X3_IfcFurnishingElementType_type);defs.push_back(IFC2X3_IfcSpatialStructureElementType_type);defs.push_back(IFC2X3_IfcTransportElementType_type); - IFC2X3_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(12); - defs.push_back(IFC2X3_IfcCShapeProfileDef_type);defs.push_back(IFC2X3_IfcCircleProfileDef_type);defs.push_back(IFC2X3_IfcCraneRailAShapeProfileDef_type);defs.push_back(IFC2X3_IfcCraneRailFShapeProfileDef_type);defs.push_back(IFC2X3_IfcEllipseProfileDef_type);defs.push_back(IFC2X3_IfcIShapeProfileDef_type);defs.push_back(IFC2X3_IfcLShapeProfileDef_type);defs.push_back(IFC2X3_IfcRectangleProfileDef_type);defs.push_back(IFC2X3_IfcTShapeProfileDef_type);defs.push_back(IFC2X3_IfcTrapeziumProfileDef_type);defs.push_back(IFC2X3_IfcUShapeProfileDef_type);defs.push_back(IFC2X3_IfcZShapeProfileDef_type); - IFC2X3_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcCableCarrierFittingType_type);defs.push_back(IFC2X3_IfcDuctFittingType_type);defs.push_back(IFC2X3_IfcJunctionBoxType_type);defs.push_back(IFC2X3_IfcPipeFittingType_type); - IFC2X3_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcCableCarrierSegmentType_type);defs.push_back(IFC2X3_IfcCableSegmentType_type);defs.push_back(IFC2X3_IfcDuctSegmentType_type);defs.push_back(IFC2X3_IfcPipeSegmentType_type); - IFC2X3_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcCartesianPoint_type);defs.push_back(IFC2X3_IfcPointOnCurve_type);defs.push_back(IFC2X3_IfcPointOnSurface_type); - IFC2X3_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC2X3_IfcCartesianTransformationOperator3D_type); - IFC2X3_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type); - IFC2X3_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type); - IFC2X3_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcCenterLineProfileDef_type); - IFC2X3_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcChamferEdgeFeature_type);defs.push_back(IFC2X3_IfcRoundedEdgeFeature_type); - IFC2X3_IfcEdgeFeature_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcCircle_type);defs.push_back(IFC2X3_IfcEllipse_type); - IFC2X3_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcCircleHollowProfileDef_type); - IFC2X3_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC2X3_IfcClassificationReference_type);defs.push_back(IFC2X3_IfcDocumentReference_type);defs.push_back(IFC2X3_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC2X3_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC2X3_IfcExternallyDefinedSymbol_type);defs.push_back(IFC2X3_IfcExternallyDefinedTextFont_type);defs.push_back(IFC2X3_IfcLibraryReference_type); - IFC2X3_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcClosedShell_type);defs.push_back(IFC2X3_IfcOpenShell_type); - IFC2X3_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcColourRgb_type); - IFC2X3_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcComplexProperty_type);defs.push_back(IFC2X3_IfcSimpleProperty_type); - IFC2X3_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcCompressorType_type);defs.push_back(IFC2X3_IfcFanType_type);defs.push_back(IFC2X3_IfcPumpType_type); - IFC2X3_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC2X3_IfcConnectedFaceSet_type);defs.push_back(IFC2X3_IfcEdge_type);defs.push_back(IFC2X3_IfcFace_type);defs.push_back(IFC2X3_IfcFaceBound_type);defs.push_back(IFC2X3_IfcLoop_type);defs.push_back(IFC2X3_IfcPath_type);defs.push_back(IFC2X3_IfcVertex_type); - IFC2X3_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcConnectionCurveGeometry_type);defs.push_back(IFC2X3_IfcConnectionPointGeometry_type);defs.push_back(IFC2X3_IfcConnectionPortGeometry_type);defs.push_back(IFC2X3_IfcConnectionSurfaceGeometry_type); - IFC2X3_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcConnectionPointEccentricity_type); - IFC2X3_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC2X3_IfcConstructionEquipmentResource_type);defs.push_back(IFC2X3_IfcConstructionMaterialResource_type);defs.push_back(IFC2X3_IfcConstructionProductResource_type);defs.push_back(IFC2X3_IfcCrewResource_type);defs.push_back(IFC2X3_IfcLaborResource_type);defs.push_back(IFC2X3_IfcSubContractResource_type); - IFC2X3_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcConstructionResource_type); - IFC2X3_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcContextDependentUnit_type);defs.push_back(IFC2X3_IfcConversionBasedUnit_type);defs.push_back(IFC2X3_IfcSIUnit_type); - IFC2X3_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcCostValue_type);defs.push_back(IFC2X3_IfcEnvironmentalImpactValue_type); - IFC2X3_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcCsgSolid_type);defs.push_back(IFC2X3_IfcManifoldSolidBrep_type);defs.push_back(IFC2X3_IfcSweptAreaSolid_type);defs.push_back(IFC2X3_IfcSweptDiskSolid_type); - IFC2X3_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcCurveBoundedPlane_type);defs.push_back(IFC2X3_IfcRectangularTrimmedSurface_type); - IFC2X3_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcCurveStyle_type);defs.push_back(IFC2X3_IfcFillAreaStyle_type);defs.push_back(IFC2X3_IfcSurfaceStyle_type);defs.push_back(IFC2X3_IfcSymbolStyle_type);defs.push_back(IFC2X3_IfcTextStyle_type); - IFC2X3_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDimensionCalloutRelationship_type);defs.push_back(IFC2X3_IfcDimensionPair_type); - IFC2X3_IfcDraughtingCalloutRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDimensionCurve_type);defs.push_back(IFC2X3_IfcProjectionCurve_type); - IFC2X3_IfcAnnotationCurveOccurrence_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDimensionCurveDirectedCallout_type);defs.push_back(IFC2X3_IfcStructuredDimensionCallout_type); - IFC2X3_IfcDraughtingCallout_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcDimensionCurveTerminator_type); - IFC2X3_IfcTerminatorSymbol_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDiscreteAccessory_type);defs.push_back(IFC2X3_IfcFastener_type); - IFC2X3_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDiscreteAccessoryType_type);defs.push_back(IFC2X3_IfcFastenerType_type); - IFC2X3_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC2X3_IfcDistributionChamberElement_type);defs.push_back(IFC2X3_IfcEnergyConversionDevice_type);defs.push_back(IFC2X3_IfcFlowController_type);defs.push_back(IFC2X3_IfcFlowFitting_type);defs.push_back(IFC2X3_IfcFlowMovingDevice_type);defs.push_back(IFC2X3_IfcFlowSegment_type);defs.push_back(IFC2X3_IfcFlowStorageDevice_type);defs.push_back(IFC2X3_IfcFlowTerminal_type);defs.push_back(IFC2X3_IfcFlowTreatmentDevice_type); - IFC2X3_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC2X3_IfcDistributionChamberElementType_type);defs.push_back(IFC2X3_IfcEnergyConversionDeviceType_type);defs.push_back(IFC2X3_IfcFlowControllerType_type);defs.push_back(IFC2X3_IfcFlowFittingType_type);defs.push_back(IFC2X3_IfcFlowMovingDeviceType_type);defs.push_back(IFC2X3_IfcFlowSegmentType_type);defs.push_back(IFC2X3_IfcFlowStorageDeviceType_type);defs.push_back(IFC2X3_IfcFlowTerminalType_type);defs.push_back(IFC2X3_IfcFlowTreatmentDeviceType_type); - IFC2X3_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDistributionControlElement_type);defs.push_back(IFC2X3_IfcDistributionFlowElement_type); - IFC2X3_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDistributionControlElementType_type);defs.push_back(IFC2X3_IfcDistributionFlowElementType_type); - IFC2X3_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcDistributionPort_type); - IFC2X3_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(14); - defs.push_back(IFC2X3_IfcDoorLiningProperties_type);defs.push_back(IFC2X3_IfcDoorPanelProperties_type);defs.push_back(IFC2X3_IfcElementQuantity_type);defs.push_back(IFC2X3_IfcEnergyProperties_type);defs.push_back(IFC2X3_IfcFluidFlowProperties_type);defs.push_back(IFC2X3_IfcPermeableCoveringProperties_type);defs.push_back(IFC2X3_IfcPropertySet_type);defs.push_back(IFC2X3_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC2X3_IfcServiceLifeFactor_type);defs.push_back(IFC2X3_IfcSoundProperties_type);defs.push_back(IFC2X3_IfcSoundValue_type);defs.push_back(IFC2X3_IfcSpaceThermalLoadProperties_type);defs.push_back(IFC2X3_IfcWindowLiningProperties_type);defs.push_back(IFC2X3_IfcWindowPanelProperties_type); - IFC2X3_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcDoorStyle_type);defs.push_back(IFC2X3_IfcElementType_type);defs.push_back(IFC2X3_IfcWindowStyle_type); - IFC2X3_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcDraughtingPreDefinedColour_type); - IFC2X3_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcDraughtingPreDefinedCurveFont_type); - IFC2X3_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDraughtingPreDefinedTextFont_type);defs.push_back(IFC2X3_IfcTextStyleFontModel_type); - IFC2X3_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcDuctSilencerType_type);defs.push_back(IFC2X3_IfcFilterType_type); - IFC2X3_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcEdgeCurve_type);defs.push_back(IFC2X3_IfcOrientedEdge_type);defs.push_back(IFC2X3_IfcSubedge_type); - IFC2X3_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcEdgeFeature_type);defs.push_back(IFC2X3_IfcOpeningElement_type); - IFC2X3_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcEdgeLoop_type);defs.push_back(IFC2X3_IfcPolyLoop_type);defs.push_back(IFC2X3_IfcVertexLoop_type); - IFC2X3_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcElectricDistributionPoint_type); - IFC2X3_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC2X3_IfcTankType_type); - IFC2X3_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcElectricalBaseProperties_type); - IFC2X3_IfcEnergyProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcElectricalCircuit_type);defs.push_back(IFC2X3_IfcStructuralAnalysisModel_type); - IFC2X3_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC2X3_IfcExtendedMaterialProperties_type);defs.push_back(IFC2X3_IfcFuelProperties_type);defs.push_back(IFC2X3_IfcGeneralMaterialProperties_type);defs.push_back(IFC2X3_IfcHygroscopicMaterialProperties_type);defs.push_back(IFC2X3_IfcMechanicalMaterialProperties_type);defs.push_back(IFC2X3_IfcOpticalMaterialProperties_type);defs.push_back(IFC2X3_IfcProductsOfCombustionProperties_type);defs.push_back(IFC2X3_IfcThermalMaterialProperties_type);defs.push_back(IFC2X3_IfcWaterProperties_type); - IFC2X3_IfcMaterialProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcExtrudedAreaSolid_type);defs.push_back(IFC2X3_IfcRevolvedAreaSolid_type);defs.push_back(IFC2X3_IfcSurfaceCurveSweptAreaSolid_type); - IFC2X3_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcFaceOuterBound_type); - IFC2X3_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcFaceSurface_type); - IFC2X3_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcFacetedBrep_type);defs.push_back(IFC2X3_IfcFacetedBrepWithVoids_type); - IFC2X3_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcFailureConnectionCondition_type);defs.push_back(IFC2X3_IfcSlippageConnectionCondition_type); - IFC2X3_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcFeatureElementAddition_type);defs.push_back(IFC2X3_IfcFeatureElementSubtraction_type); - IFC2X3_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcFurnitureType_type);defs.push_back(IFC2X3_IfcSystemFurnitureElementType_type); - IFC2X3_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcGeneralProfileProperties_type);defs.push_back(IFC2X3_IfcRibPlateProfileProperties_type); - IFC2X3_IfcProfileProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcGeometricCurveSet_type); - IFC2X3_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcGeometricRepresentationContext_type); - IFC2X3_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcGeometricRepresentationItem_type);defs.push_back(IFC2X3_IfcMappedItem_type);defs.push_back(IFC2X3_IfcStyledItem_type);defs.push_back(IFC2X3_IfcTopologicalRepresentationItem_type); - IFC2X3_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcGeometricRepresentationSubContext_type); - IFC2X3_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcGridPlacement_type);defs.push_back(IFC2X3_IfcLocalPlacement_type); - IFC2X3_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcIrregularTimeSeries_type);defs.push_back(IFC2X3_IfcRegularTimeSeries_type); - IFC2X3_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcLightSourceAmbient_type);defs.push_back(IFC2X3_IfcLightSourceDirectional_type);defs.push_back(IFC2X3_IfcLightSourceGoniometric_type);defs.push_back(IFC2X3_IfcLightSourcePositional_type); - IFC2X3_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcLightSourceSpot_type); - IFC2X3_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC2X3_IfcProductDefinitionShape_type); - IFC2X3_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcMechanicalConcreteMaterialProperties_type);defs.push_back(IFC2X3_IfcMechanicalSteelMaterialProperties_type); - IFC2X3_IfcMechanicalMaterialProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcMechanicalFastener_type); - IFC2X3_IfcFastener_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcMechanicalFastenerType_type); - IFC2X3_IfcFastenerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcMetric_type);defs.push_back(IFC2X3_IfcObjective_type); - IFC2X3_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcMove_type);defs.push_back(IFC2X3_IfcOrderAction_type); - IFC2X3_IfcTask_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcObject_type);defs.push_back(IFC2X3_IfcTypeObject_type); - IFC2X3_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcObjectDefinition_type);defs.push_back(IFC2X3_IfcPropertyDefinition_type);defs.push_back(IFC2X3_IfcRelationship_type); - IFC2X3_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcOccupant_type); - IFC2X3_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcPhysicalComplexQuantity_type);defs.push_back(IFC2X3_IfcPhysicalSimpleQuantity_type); - IFC2X3_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcPlanarBox_type); - IFC2X3_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcPlane_type); - IFC2X3_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcPostalAddress_type);defs.push_back(IFC2X3_IfcTelecomAddress_type); - IFC2X3_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcPreDefinedColour_type);defs.push_back(IFC2X3_IfcPreDefinedCurveFont_type);defs.push_back(IFC2X3_IfcPreDefinedSymbol_type);defs.push_back(IFC2X3_IfcPreDefinedTextFont_type); - IFC2X3_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcPreDefinedDimensionSymbol_type);defs.push_back(IFC2X3_IfcPreDefinedPointMarkerSymbol_type);defs.push_back(IFC2X3_IfcPreDefinedTerminatorSymbol_type); - IFC2X3_IfcPreDefinedSymbol_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcPresentationLayerWithStyle_type); - IFC2X3_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcProcedure_type);defs.push_back(IFC2X3_IfcTask_type); - IFC2X3_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcProjectionElement_type); - IFC2X3_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC2X3_IfcPropertyBoundedValue_type);defs.push_back(IFC2X3_IfcPropertyEnumeratedValue_type);defs.push_back(IFC2X3_IfcPropertyListValue_type);defs.push_back(IFC2X3_IfcPropertyReferenceValue_type);defs.push_back(IFC2X3_IfcPropertySingleValue_type);defs.push_back(IFC2X3_IfcPropertyTableValue_type); - IFC2X3_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcPropertySetDefinition_type); - IFC2X3_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC2X3_IfcQuantityArea_type);defs.push_back(IFC2X3_IfcQuantityCount_type);defs.push_back(IFC2X3_IfcQuantityLength_type);defs.push_back(IFC2X3_IfcQuantityTime_type);defs.push_back(IFC2X3_IfcQuantityVolume_type);defs.push_back(IFC2X3_IfcQuantityWeight_type); - IFC2X3_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcRationalBezierCurve_type); - IFC2X3_IfcBezierCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcRectangleHollowProfileDef_type);defs.push_back(IFC2X3_IfcRoundedRectangleProfileDef_type); - IFC2X3_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC2X3_IfcReinforcingBar_type);defs.push_back(IFC2X3_IfcReinforcingMesh_type);defs.push_back(IFC2X3_IfcTendon_type);defs.push_back(IFC2X3_IfcTendonAnchor_type); - IFC2X3_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcRelAggregates_type);defs.push_back(IFC2X3_IfcRelNests_type); - IFC2X3_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcRelAssigns_type);defs.push_back(IFC2X3_IfcRelAssociates_type);defs.push_back(IFC2X3_IfcRelConnects_type);defs.push_back(IFC2X3_IfcRelDecomposes_type);defs.push_back(IFC2X3_IfcRelDefines_type); - IFC2X3_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcRelAssignsTasks_type);defs.push_back(IFC2X3_IfcRelAssignsToProjectOrder_type);defs.push_back(IFC2X3_IfcRelSchedulesCostItems_type); - IFC2X3_IfcRelAssignsToControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC2X3_IfcRelAssignsToActor_type);defs.push_back(IFC2X3_IfcRelAssignsToControl_type);defs.push_back(IFC2X3_IfcRelAssignsToGroup_type);defs.push_back(IFC2X3_IfcRelAssignsToProcess_type);defs.push_back(IFC2X3_IfcRelAssignsToProduct_type);defs.push_back(IFC2X3_IfcRelAssignsToResource_type); - IFC2X3_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC2X3_IfcRelAssociatesAppliedValue_type);defs.push_back(IFC2X3_IfcRelAssociatesApproval_type);defs.push_back(IFC2X3_IfcRelAssociatesClassification_type);defs.push_back(IFC2X3_IfcRelAssociatesConstraint_type);defs.push_back(IFC2X3_IfcRelAssociatesDocument_type);defs.push_back(IFC2X3_IfcRelAssociatesLibrary_type);defs.push_back(IFC2X3_IfcRelAssociatesMaterial_type);defs.push_back(IFC2X3_IfcRelAssociatesProfileProperties_type); - IFC2X3_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(18); - defs.push_back(IFC2X3_IfcRelConnectsElements_type);defs.push_back(IFC2X3_IfcRelConnectsPortToElement_type);defs.push_back(IFC2X3_IfcRelConnectsPorts_type);defs.push_back(IFC2X3_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC2X3_IfcRelConnectsStructuralElement_type);defs.push_back(IFC2X3_IfcRelConnectsStructuralMember_type);defs.push_back(IFC2X3_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC2X3_IfcRelCoversBldgElements_type);defs.push_back(IFC2X3_IfcRelCoversSpaces_type);defs.push_back(IFC2X3_IfcRelFillsElement_type);defs.push_back(IFC2X3_IfcRelFlowControlElements_type);defs.push_back(IFC2X3_IfcRelInteractionRequirements_type);defs.push_back(IFC2X3_IfcRelProjectsElement_type);defs.push_back(IFC2X3_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC2X3_IfcRelSequence_type);defs.push_back(IFC2X3_IfcRelServicesBuildings_type);defs.push_back(IFC2X3_IfcRelSpaceBoundary_type);defs.push_back(IFC2X3_IfcRelVoidsElement_type); - IFC2X3_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcRelConnectsPathElements_type);defs.push_back(IFC2X3_IfcRelConnectsWithRealizingElements_type); - IFC2X3_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcRelConnectsWithEccentricity_type); - IFC2X3_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcRelDefinesByProperties_type);defs.push_back(IFC2X3_IfcRelDefinesByType_type); - IFC2X3_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcRelOccupiesSpaces_type); - IFC2X3_IfcRelAssignsToActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcRelOverridesProperties_type); - IFC2X3_IfcRelDefinesByProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcShapeModel_type);defs.push_back(IFC2X3_IfcStyleModel_type); - IFC2X3_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcShapeRepresentation_type);defs.push_back(IFC2X3_IfcTopologyRepresentation_type); - IFC2X3_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcSpaceType_type); - IFC2X3_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcStructuralAction_type);defs.push_back(IFC2X3_IfcStructuralReaction_type); - IFC2X3_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcStructuralConnection_type);defs.push_back(IFC2X3_IfcStructuralMember_type); - IFC2X3_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcStructuralCurveConnection_type);defs.push_back(IFC2X3_IfcStructuralPointConnection_type);defs.push_back(IFC2X3_IfcStructuralSurfaceConnection_type); - IFC2X3_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcStructuralCurveMember_type);defs.push_back(IFC2X3_IfcStructuralSurfaceMember_type); - IFC2X3_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralCurveMemberVarying_type); - IFC2X3_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC2X3_IfcStructuralLinearAction_type);defs.push_back(IFC2X3_IfcStructuralPlanarAction_type);defs.push_back(IFC2X3_IfcStructuralPointAction_type); - IFC2X3_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralLinearActionVarying_type); - IFC2X3_IfcStructuralLinearAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC2X3_IfcStructuralLoadLinearForce_type);defs.push_back(IFC2X3_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC2X3_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC2X3_IfcStructuralLoadSingleForce_type);defs.push_back(IFC2X3_IfcStructuralLoadTemperature_type); - IFC2X3_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC2X3_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralLoadSingleForceWarping_type); - IFC2X3_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralLoadStatic_type); - IFC2X3_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralPlanarActionVarying_type); - IFC2X3_IfcStructuralPlanarAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralPointReaction_type); - IFC2X3_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralProfileProperties_type); - IFC2X3_IfcGeneralProfileProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralSteelProfileProperties_type); - IFC2X3_IfcStructuralProfileProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStructuralSurfaceMemberVarying_type); - IFC2X3_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcStyledRepresentation_type); - IFC2X3_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC2X3_IfcSurfaceOfRevolution_type); - IFC2X3_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcSurfaceStyleRendering_type); - IFC2X3_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcTerminatorSymbol_type); - IFC2X3_IfcAnnotationSymbolOccurrence_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcTextLiteralWithExtent_type); - IFC2X3_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcTextureCoordinateGenerator_type);defs.push_back(IFC2X3_IfcTextureMap_type); - IFC2X3_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcTwoDirectionRepeatFactor_type); - IFC2X3_IfcOneDirectionRepeatFactor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcTypeProduct_type); - IFC2X3_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcVertexPoint_type); - IFC2X3_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcVibrationIsolatorType_type); - IFC2X3_IfcDiscreteAccessoryType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC2X3_IfcWallStandardCase_type); - IFC2X3_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC2X3_IfcWorkPlan_type);defs.push_back(IFC2X3_IfcWorkSchedule_type); - IFC2X3_IfcWorkControl_type->set_subtypes(defs); - } + IFC2X3_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 1, new simple_type(simple_type::real_type)); + IFC2X3_IfcAccelerationMeasure_type = new type_declaration(strings[1], 2, new simple_type(simple_type::real_type)); + IFC2X3_IfcActionSourceTypeEnum_type = new enumeration_type(strings[2], 4, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9], + strings[10], + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29] + }); + IFC2X3_IfcActionTypeEnum_type = new enumeration_type(strings[30], 5, { + strings[31], + strings[32], + strings[33], + strings[28], + strings[29] + }); + IFC2X3_IfcActuatorTypeEnum_type = new enumeration_type(strings[34], 10, { + strings[35], + strings[36], + strings[37], + strings[38], + strings[39], + strings[28], + strings[29] + }); + IFC2X3_IfcAddressTypeEnum_type = new enumeration_type(strings[40], 12, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[28] + }); + IFC2X3_IfcAheadOrBehind_type = new enumeration_type(strings[45], 13, { + strings[46], + strings[47] + }); + IFC2X3_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[48], 15, { + strings[49], + strings[50], + strings[51], + strings[28], + strings[29] + }); + IFC2X3_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[52], 17, { + strings[53], + strings[54], + strings[55], + strings[56], + strings[57], + strings[58], + strings[59], + strings[28], + strings[29] + }); + IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 19, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[28], + strings[29] + }); + IFC2X3_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 21, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[28], + strings[29] + }); + IFC2X3_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[77], 22, new simple_type(simple_type::real_type)); + IFC2X3_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[78], 23, { + strings[79], + strings[80], + strings[81], + strings[28], + strings[29] + }); + IFC2X3_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[82], 24, { + strings[83], + strings[84], + strings[85], + strings[86], + strings[28], + strings[29] + }); + IFC2X3_IfcAngularVelocityMeasure_type = new type_declaration(strings[87], 26, new simple_type(simple_type::real_type)); + IFC2X3_IfcAreaMeasure_type = new type_declaration(strings[88], 47, new simple_type(simple_type::real_type)); + IFC2X3_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[89], 48, { + strings[90], + strings[91], + strings[92], + strings[93] + }); + IFC2X3_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[94], 49, { + strings[42], + strings[95], + strings[29] + }); + IFC2X3_IfcBSplineCurveForm_type = new enumeration_type(strings[96], 81, { + strings[97], + strings[98], + strings[99], + strings[100], + strings[101], + strings[102] + }); + IFC2X3_IfcBeamTypeEnum_type = new enumeration_type(strings[103], 58, { + strings[104], + strings[105], + strings[106], + strings[107], + strings[28], + strings[29] + }); + IFC2X3_IfcBenchmarkEnum_type = new enumeration_type(strings[108], 59, { + strings[109], + strings[110], + strings[111], + strings[112], + strings[113], + strings[114] + }); + IFC2X3_IfcBoilerTypeEnum_type = new enumeration_type(strings[115], 64, { + strings[116], + strings[117], + strings[28], + strings[29] + }); + IFC2X3_IfcBoolean_type = new type_declaration(strings[118], 65, new simple_type(simple_type::boolean_type)); + IFC2X3_IfcBooleanOperator_type = new enumeration_type(strings[119], 68, { + strings[120], + strings[121], + strings[122] + }); + IFC2X3_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[123], 88, { + strings[28], + strings[29] + }); + IFC2X3_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[124], 92, { + strings[125], + strings[126], + strings[127], + strings[128], + strings[28], + strings[29] + }); + IFC2X3_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[129], 94, { + strings[130], + strings[131], + strings[132], + strings[133], + strings[28], + strings[29] + }); + IFC2X3_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[134], 96, { + strings[135], + strings[136], + strings[28], + strings[29] + }); + IFC2X3_IfcChangeActionEnum_type = new enumeration_type(strings[137], 106, { + strings[138], + strings[139], + strings[140], + strings[141], + strings[142], + strings[143] + }); + IFC2X3_IfcChillerTypeEnum_type = new enumeration_type(strings[144], 109, { + strings[145], + strings[146], + strings[147], + strings[28], + strings[29] + }); + IFC2X3_IfcCoilTypeEnum_type = new enumeration_type(strings[148], 122, { + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[154], + strings[28], + strings[29] + }); + IFC2X3_IfcColumnTypeEnum_type = new enumeration_type(strings[155], 129, { + strings[156], + strings[28], + strings[29] + }); + IFC2X3_IfcComplexNumber_type = new type_declaration(strings[157], 130, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC2X3_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[158], 135, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC2X3_IfcCompressorTypeEnum_type = new enumeration_type(strings[159], 137, { + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165], + strings[166], + strings[167], + strings[168], + strings[169], + strings[170], + strings[171], + strings[172], + strings[173], + strings[174], + strings[28], + strings[29] + }); + IFC2X3_IfcCondenserTypeEnum_type = new enumeration_type(strings[175], 139, { + strings[176], + strings[177], + strings[178], + strings[179], + strings[145], + strings[180], + strings[28], + strings[29] + }); + IFC2X3_IfcConnectionTypeEnum_type = new enumeration_type(strings[181], 151, { + strings[182], + strings[183], + strings[184], + strings[29] + }); + IFC2X3_IfcConstraintEnum_type = new enumeration_type(strings[185], 155, { + strings[186], + strings[187], + strings[188], + strings[28], + strings[29] + }); + IFC2X3_IfcContextDependentMeasure_type = new type_declaration(strings[189], 161, new simple_type(simple_type::real_type)); + IFC2X3_IfcControllerTypeEnum_type = new enumeration_type(strings[190], 165, { + strings[191], + strings[192], + strings[193], + strings[194], + strings[195], + strings[196], + strings[28], + strings[29] + }); + IFC2X3_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[197], 168, { + strings[198], + strings[199], + strings[28], + strings[29] + }); + IFC2X3_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[200], 170, { + strings[201], + strings[202], + strings[203], + strings[28], + strings[29] + }); + IFC2X3_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[204], 174, { + strings[205], + strings[206], + strings[207], + strings[208], + strings[209], + strings[210], + strings[211], + strings[28], + strings[29] + }); + IFC2X3_IfcCountMeasure_type = new type_declaration(strings[212], 176, new simple_type(simple_type::number_type)); + IFC2X3_IfcCoveringTypeEnum_type = new enumeration_type(strings[213], 179, { + strings[214], + strings[215], + strings[216], + strings[217], + strings[218], + strings[219], + strings[220], + strings[221], + strings[28], + strings[29] + }); + IFC2X3_IfcCurrencyEnum_type = new enumeration_type(strings[222], 187, { + strings[223], + strings[224], + strings[225], + strings[226], + strings[227], + strings[228], + strings[229], + strings[230], + strings[231], + strings[232], + strings[233], + strings[234], + strings[235], + strings[236], + strings[237], + strings[238], + strings[239], + strings[240], + strings[241], + strings[242], + strings[243], + strings[244], + strings[245], + strings[246], + strings[247], + strings[248], + strings[249], + strings[250], + strings[251], + strings[252], + strings[253], + strings[254], + strings[255], + strings[256], + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[262], + strings[263], + strings[264], + strings[265], + strings[266], + strings[267], + strings[268], + strings[269], + strings[270], + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[277], + strings[278], + strings[279], + strings[280], + strings[281], + strings[282], + strings[283], + strings[284], + strings[285], + strings[286], + strings[287], + strings[288], + strings[289], + strings[290], + strings[291], + strings[292], + strings[293], + strings[294], + strings[295], + strings[296], + strings[297], + strings[298], + strings[299], + strings[300], + strings[301], + strings[302], + strings[303], + strings[304], + strings[305] + }); + IFC2X3_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[306], 191, { + strings[28], + strings[29] + }); + IFC2X3_IfcCurvatureMeasure_type = new type_declaration(strings[307], 192, new simple_type(simple_type::real_type)); + IFC2X3_IfcDamperTypeEnum_type = new enumeration_type(strings[308], 203, { + strings[309], + strings[310], + strings[311], + strings[312], + strings[313], + strings[314], + strings[315], + strings[316], + strings[317], + strings[318], + strings[319], + strings[28], + strings[29] + }); + IFC2X3_IfcDataOriginEnum_type = new enumeration_type(strings[320], 204, { + strings[321], + strings[322], + strings[323], + strings[28], + strings[29] + }); + IFC2X3_IfcDayInMonthNumber_type = new type_declaration(strings[324], 207, new simple_type(simple_type::integer_type)); + IFC2X3_IfcDaylightSavingHour_type = new type_declaration(strings[325], 208, new simple_type(simple_type::integer_type)); + IFC2X3_IfcDerivedUnitEnum_type = new enumeration_type(strings[326], 215, { + strings[327], + strings[328], + strings[329], + strings[330], + strings[331], + strings[332], + strings[333], + strings[334], + strings[335], + strings[336], + strings[337], + strings[338], + strings[339], + strings[340], + strings[341], + strings[342], + strings[343], + strings[344], + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[350], + strings[351], + strings[352], + strings[353], + strings[354], + strings[355], + strings[356], + strings[357], + strings[358], + strings[359], + strings[360], + strings[361], + strings[362], + strings[363], + strings[364], + strings[365], + strings[366], + strings[367], + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[373], + strings[374], + strings[28] + }); + IFC2X3_IfcDescriptiveMeasure_type = new type_declaration(strings[375], 216, new simple_type(simple_type::string_type)); + IFC2X3_IfcDimensionCount_type = new type_declaration(strings[376], 220, new simple_type(simple_type::integer_type)); + IFC2X3_IfcDimensionExtentUsage_type = new enumeration_type(strings[377], 224, { + strings[378], + strings[379] + }); + IFC2X3_IfcDirectionSenseEnum_type = new enumeration_type(strings[380], 227, { + strings[381], + strings[382] + }); + IFC2X3_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[383], 232, { + strings[384], + strings[385], + strings[386], + strings[387], + strings[388], + strings[389], + strings[390], + strings[391], + strings[28], + strings[29] + }); + IFC2X3_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[392], 240, { + strings[393], + strings[394], + strings[395], + strings[396], + strings[28], + strings[29] + }); + IFC2X3_IfcDocumentStatusEnum_type = new enumeration_type(strings[397], 246, { + strings[398], + strings[399], + strings[400], + strings[401], + strings[29] + }); + IFC2X3_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[402], 249, { + strings[403], + strings[404], + strings[405], + strings[406], + strings[407], + strings[408], + strings[28], + strings[29] + }); + IFC2X3_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[409], 250, { + strings[410], + strings[411], + strings[412], + strings[29] + }); + IFC2X3_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[413], 253, { + strings[414], + strings[415], + strings[416], + strings[417], + strings[418], + strings[419], + strings[420], + strings[28], + strings[29] + }); + IFC2X3_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[421], 254, { + strings[422], + strings[423], + strings[424], + strings[425], + strings[426], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[432], + strings[433], + strings[434], + strings[435], + strings[407], + strings[408], + strings[28], + strings[29] + }); + IFC2X3_IfcDoseEquivalentMeasure_type = new type_declaration(strings[436], 255, new simple_type(simple_type::real_type)); + IFC2X3_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[437], 263, { + strings[125], + strings[438], + strings[439], + strings[440], + strings[441], + strings[442], + strings[443], + strings[28], + strings[29] + }); + IFC2X3_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[444], 265, { + strings[445], + strings[446], + strings[28], + strings[29] + }); + IFC2X3_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[447], 267, { + strings[448], + strings[449], + strings[450], + strings[28], + strings[29] + }); + IFC2X3_IfcDynamicViscosityMeasure_type = new type_declaration(strings[451], 268, new simple_type(simple_type::real_type)); + IFC2X3_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[452], 277, { + strings[453], + strings[454], + strings[455], + strings[456], + strings[457], + strings[458], + strings[459], + strings[460], + strings[461], + strings[462], + strings[463], + strings[464], + strings[465], + strings[466], + strings[467], + strings[468], + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[28], + strings[29] + }); + IFC2X3_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[477], 278, new simple_type(simple_type::real_type)); + IFC2X3_IfcElectricChargeMeasure_type = new type_declaration(strings[478], 279, new simple_type(simple_type::real_type)); + IFC2X3_IfcElectricConductanceMeasure_type = new type_declaration(strings[479], 280, new simple_type(simple_type::real_type)); + IFC2X3_IfcElectricCurrentEnum_type = new enumeration_type(strings[480], 281, { + strings[481], + strings[482], + strings[29] + }); + IFC2X3_IfcElectricCurrentMeasure_type = new type_declaration(strings[483], 282, new simple_type(simple_type::real_type)); + IFC2X3_IfcElectricDistributionPointFunctionEnum_type = new enumeration_type(strings[484], 284, { + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[28], + strings[29] + }); + IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[494], 286, { + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[28], + strings[29] + }); + IFC2X3_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[500], 288, { + strings[28], + strings[29] + }); + IFC2X3_IfcElectricHeaterTypeEnum_type = new enumeration_type(strings[501], 290, { + strings[502], + strings[503], + strings[504], + strings[28], + strings[29] + }); + IFC2X3_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[505], 292, { + strings[506], + strings[507], + strings[508], + strings[509], + strings[510], + strings[28], + strings[29] + }); + IFC2X3_IfcElectricResistanceMeasure_type = new type_declaration(strings[511], 293, new simple_type(simple_type::real_type)); + IFC2X3_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[512], 295, { + strings[513], + strings[514], + strings[515], + strings[28], + strings[29] + }); + IFC2X3_IfcElectricVoltageMeasure_type = new type_declaration(strings[516], 296, new simple_type(simple_type::real_type)); + IFC2X3_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[517], 300, { + strings[518], + strings[519], + strings[520], + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[28], + strings[29] + }); + IFC2X3_IfcElementCompositionEnum_type = new enumeration_type(strings[527], 303, { + strings[528], + strings[529], + strings[530] + }); + IFC2X3_IfcEnergyMeasure_type = new type_declaration(strings[531], 310, new simple_type(simple_type::real_type)); + IFC2X3_IfcEnergySequenceEnum_type = new enumeration_type(strings[532], 312, { + strings[533], + strings[534], + strings[535], + strings[536], + strings[28], + strings[29] + }); + IFC2X3_IfcEnvironmentalImpactCategoryEnum_type = new enumeration_type(strings[537], 313, { + strings[538], + strings[539], + strings[540], + strings[541], + strings[542], + strings[543], + strings[28], + strings[29] + }); + IFC2X3_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[544], 318, { + strings[545], + strings[546], + strings[547], + strings[548], + strings[549], + strings[550], + strings[551], + strings[552], + strings[553], + strings[28], + strings[29] + }); + IFC2X3_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[554], 320, { + strings[555], + strings[556], + strings[557], + strings[558], + strings[559], + strings[28], + strings[29] + }); + IFC2X3_IfcFanTypeEnum_type = new enumeration_type(strings[560], 337, { + strings[561], + strings[562], + strings[563], + strings[564], + strings[565], + strings[566], + strings[567], + strings[28], + strings[29] + }); + IFC2X3_IfcFilterTypeEnum_type = new enumeration_type(strings[568], 350, { + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[28], + strings[29] + }); + IFC2X3_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[574], 352, { + strings[575], + strings[576], + strings[577], + strings[578], + strings[579], + strings[28], + strings[29] + }); + IFC2X3_IfcFlowDirectionEnum_type = new enumeration_type(strings[580], 355, { + strings[581], + strings[582], + strings[583], + strings[29] + }); + IFC2X3_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[584], 359, { + strings[585], + strings[586], + strings[587], + strings[588], + strings[589], + strings[590], + strings[591], + strings[592], + strings[28], + strings[29] + }); + IFC2X3_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[593], 361, { + strings[594], + strings[595], + strings[596], + strings[597], + strings[598], + strings[599], + strings[28], + strings[29] + }); + IFC2X3_IfcFontStyle_type = new type_declaration(strings[600], 373, new simple_type(simple_type::string_type)); + IFC2X3_IfcFontVariant_type = new type_declaration(strings[601], 374, new simple_type(simple_type::string_type)); + IFC2X3_IfcFontWeight_type = new type_declaration(strings[602], 375, new simple_type(simple_type::string_type)); + IFC2X3_IfcFootingTypeEnum_type = new enumeration_type(strings[603], 377, { + strings[604], + strings[605], + strings[606], + strings[607], + strings[28], + strings[29] + }); + IFC2X3_IfcForceMeasure_type = new type_declaration(strings[608], 378, new simple_type(simple_type::real_type)); + IFC2X3_IfcFrequencyMeasure_type = new type_declaration(strings[609], 379, new simple_type(simple_type::real_type)); + IFC2X3_IfcGasTerminalTypeEnum_type = new enumeration_type(strings[610], 386, { + strings[611], + strings[612], + strings[613], + strings[28], + strings[29] + }); + IFC2X3_IfcGeometricProjectionEnum_type = new enumeration_type(strings[614], 390, { + strings[615], + strings[616], + strings[617], + strings[618], + strings[619], + strings[620], + strings[621], + strings[28], + strings[29] + }); + IFC2X3_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[622], 397, { + strings[623], + strings[624] + }); + IFC2X3_IfcGloballyUniqueId_type = new type_declaration(strings[625], 396, new simple_type(simple_type::string_type)); + IFC2X3_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[626], 405, { + strings[627], + strings[628], + strings[28], + strings[29] + }); + IFC2X3_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[629], 406, new simple_type(simple_type::real_type)); + IFC2X3_IfcHeatingValueMeasure_type = new type_declaration(strings[630], 407, new simple_type(simple_type::real_type)); + IFC2X3_IfcHourInDay_type = new type_declaration(strings[631], 408, new simple_type(simple_type::integer_type)); + IFC2X3_IfcHumidifierTypeEnum_type = new enumeration_type(strings[632], 410, { + strings[633], + strings[634], + strings[635], + strings[636], + strings[637], + strings[638], + strings[639], + strings[640], + strings[641], + strings[642], + strings[643], + strings[644], + strings[645], + strings[28], + strings[29] + }); + IFC2X3_IfcIdentifier_type = new type_declaration(strings[646], 412, new simple_type(simple_type::string_type)); + IFC2X3_IfcIlluminanceMeasure_type = new type_declaration(strings[647], 413, new simple_type(simple_type::real_type)); + IFC2X3_IfcInductanceMeasure_type = new type_declaration(strings[648], 415, new simple_type(simple_type::real_type)); + IFC2X3_IfcInteger_type = new type_declaration(strings[649], 416, new simple_type(simple_type::integer_type)); + IFC2X3_IfcIntegerCountRateMeasure_type = new type_declaration(strings[650], 417, new simple_type(simple_type::integer_type)); + IFC2X3_IfcInternalOrExternalEnum_type = new enumeration_type(strings[651], 418, { + strings[652], + strings[653], + strings[29] + }); + IFC2X3_IfcInventoryTypeEnum_type = new enumeration_type(strings[654], 420, { + strings[655], + strings[656], + strings[657], + strings[28], + strings[29] + }); + IFC2X3_IfcIonConcentrationMeasure_type = new type_declaration(strings[658], 421, new simple_type(simple_type::real_type)); + IFC2X3_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[659], 425, new simple_type(simple_type::real_type)); + IFC2X3_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[660], 427, { + strings[28], + strings[29] + }); + IFC2X3_IfcKinematicViscosityMeasure_type = new type_declaration(strings[661], 428, new simple_type(simple_type::real_type)); + IFC2X3_IfcLabel_type = new type_declaration(strings[662], 429, new simple_type(simple_type::string_type)); + IFC2X3_IfcLampTypeEnum_type = new enumeration_type(strings[663], 432, { + strings[664], + strings[665], + strings[666], + strings[667], + strings[668], + strings[669], + strings[28], + strings[29] + }); + IFC2X3_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[670], 434, { + strings[671], + strings[672], + strings[673] + }); + IFC2X3_IfcLengthMeasure_type = new type_declaration(strings[674], 435, new simple_type(simple_type::real_type)); + IFC2X3_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[675], 439, { + strings[676], + strings[677], + strings[678], + strings[29] + }); + IFC2X3_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[679], 442, { + strings[664], + strings[665], + strings[666], + strings[667], + strings[680], + strings[681], + strings[682], + strings[683], + strings[668], + strings[669], + strings[29] + }); + IFC2X3_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[684], 444, { + strings[685], + strings[686], + strings[28], + strings[29] + }); + IFC2X3_IfcLinearForceMeasure_type = new type_declaration(strings[687], 454, new simple_type(simple_type::real_type)); + IFC2X3_IfcLinearMomentMeasure_type = new type_declaration(strings[688], 455, new simple_type(simple_type::real_type)); + IFC2X3_IfcLinearStiffnessMeasure_type = new type_declaration(strings[689], 456, new simple_type(simple_type::real_type)); + IFC2X3_IfcLinearVelocityMeasure_type = new type_declaration(strings[690], 457, new simple_type(simple_type::real_type)); + IFC2X3_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[691], 458, { + strings[692], + strings[693], + strings[694], + strings[695], + strings[28], + strings[29] + }); + IFC2X3_IfcLogical_type = new type_declaration(strings[696], 461, new simple_type(simple_type::logical_type)); + IFC2X3_IfcLogicalOperatorEnum_type = new enumeration_type(strings[697], 462, { + strings[698], + strings[699] + }); + IFC2X3_IfcLuminousFluxMeasure_type = new type_declaration(strings[700], 465, new simple_type(simple_type::real_type)); + IFC2X3_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[701], 466, new simple_type(simple_type::real_type)); + IFC2X3_IfcLuminousIntensityMeasure_type = new type_declaration(strings[702], 467, new simple_type(simple_type::real_type)); + IFC2X3_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[703], 468, new simple_type(simple_type::real_type)); + IFC2X3_IfcMagneticFluxMeasure_type = new type_declaration(strings[704], 469, new simple_type(simple_type::real_type)); + IFC2X3_IfcMassDensityMeasure_type = new type_declaration(strings[705], 472, new simple_type(simple_type::real_type)); + IFC2X3_IfcMassFlowRateMeasure_type = new type_declaration(strings[706], 473, new simple_type(simple_type::real_type)); + IFC2X3_IfcMassMeasure_type = new type_declaration(strings[707], 474, new simple_type(simple_type::real_type)); + IFC2X3_IfcMassPerLengthMeasure_type = new type_declaration(strings[708], 475, new simple_type(simple_type::real_type)); + IFC2X3_IfcMemberTypeEnum_type = new enumeration_type(strings[709], 494, { + strings[710], + strings[711], + strings[712], + strings[713], + strings[714], + strings[627], + strings[715], + strings[716], + strings[717], + strings[718], + strings[719], + strings[720], + strings[28], + strings[29] + }); + IFC2X3_IfcMinuteInHour_type = new type_declaration(strings[721], 497, new simple_type(simple_type::integer_type)); + IFC2X3_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[722], 498, new simple_type(simple_type::real_type)); + IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[723], 499, new simple_type(simple_type::real_type)); + IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[724], 500, new simple_type(simple_type::real_type)); + IFC2X3_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[725], 501, new simple_type(simple_type::real_type)); + IFC2X3_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[726], 502, new simple_type(simple_type::real_type)); + IFC2X3_IfcMolecularWeightMeasure_type = new type_declaration(strings[727], 503, new simple_type(simple_type::real_type)); + IFC2X3_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[728], 504, new simple_type(simple_type::real_type)); + IFC2X3_IfcMonetaryMeasure_type = new type_declaration(strings[729], 505, new simple_type(simple_type::real_type)); + IFC2X3_IfcMonthInYearNumber_type = new type_declaration(strings[730], 507, new simple_type(simple_type::integer_type)); + IFC2X3_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[731], 509, { + strings[732], + strings[733], + strings[734], + strings[28], + strings[29] + }); + IFC2X3_IfcNullStyle_type = new enumeration_type(strings[735], 513, { + strings[736] + }); + IFC2X3_IfcNumericMeasure_type = new type_declaration(strings[737], 514, new simple_type(simple_type::number_type)); + IFC2X3_IfcObjectTypeEnum_type = new enumeration_type(strings[738], 521, { + strings[739], + strings[740], + strings[741], + strings[742], + strings[743], + strings[744], + strings[745], + strings[29] + }); + IFC2X3_IfcObjectiveEnum_type = new enumeration_type(strings[746], 518, { + strings[747], + strings[748], + strings[749], + strings[750], + strings[751], + strings[752], + strings[28], + strings[29] + }); + IFC2X3_IfcOccupantTypeEnum_type = new enumeration_type(strings[753], 523, { + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[759], + strings[760], + strings[28], + strings[29] + }); + IFC2X3_IfcOutletTypeEnum_type = new enumeration_type(strings[761], 536, { + strings[762], + strings[763], + strings[764], + strings[28], + strings[29] + }); + IFC2X3_IfcPHMeasure_type = new type_declaration(strings[765], 547, new simple_type(simple_type::real_type)); + IFC2X3_IfcParameterValue_type = new type_declaration(strings[766], 539, new simple_type(simple_type::real_type)); + IFC2X3_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[767], 542, { + strings[768], + strings[769], + strings[770], + strings[28], + strings[29] + }); + IFC2X3_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[771], 549, { + strings[772], + strings[773], + strings[29] + }); + IFC2X3_IfcPileConstructionEnum_type = new enumeration_type(strings[774], 553, { + strings[775], + strings[776], + strings[777], + strings[778], + strings[28], + strings[29] + }); + IFC2X3_IfcPileTypeEnum_type = new enumeration_type(strings[779], 554, { + strings[780], + strings[781], + strings[782], + strings[28], + strings[29] + }); + IFC2X3_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[783], 556, { + strings[125], + strings[438], + strings[439], + strings[440], + strings[441], + strings[442], + strings[443], + strings[28], + strings[29] + }); + IFC2X3_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[784], 558, { + strings[446], + strings[445], + strings[785], + strings[786], + strings[28], + strings[29] + }); + IFC2X3_IfcPlanarForceMeasure_type = new type_declaration(strings[787], 563, new simple_type(simple_type::real_type)); + IFC2X3_IfcPlaneAngleMeasure_type = new type_declaration(strings[788], 565, new simple_type(simple_type::real_type)); + IFC2X3_IfcPlateTypeEnum_type = new enumeration_type(strings[789], 568, { + strings[790], + strings[791], + strings[28], + strings[29] + }); + IFC2X3_IfcPositiveLengthMeasure_type = new type_declaration(strings[792], 577, new named_type(IFC2X3_IfcLengthMeasure_type)); + IFC2X3_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[793], 578, new named_type(IFC2X3_IfcPlaneAngleMeasure_type)); + IFC2X3_IfcPowerMeasure_type = new type_declaration(strings[794], 581, new simple_type(simple_type::real_type)); + IFC2X3_IfcPresentableText_type = new type_declaration(strings[795], 590, new simple_type(simple_type::string_type)); + IFC2X3_IfcPressureMeasure_type = new type_declaration(strings[796], 596, new simple_type(simple_type::real_type)); + IFC2X3_IfcProcedureTypeEnum_type = new enumeration_type(strings[797], 598, { + strings[798], + strings[799], + strings[800], + strings[801], + strings[802], + strings[803], + strings[804], + strings[28], + strings[29] + }); + IFC2X3_IfcProfileTypeEnum_type = new enumeration_type(strings[805], 606, { + strings[806], + strings[807] + }); + IFC2X3_IfcProjectOrderRecordTypeEnum_type = new enumeration_type(strings[808], 613, { + strings[809], + strings[810], + strings[811], + strings[812], + strings[813], + strings[28], + strings[29] + }); + IFC2X3_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[814], 614, { + strings[815], + strings[816], + strings[817], + strings[818], + strings[819], + strings[28], + strings[29] + }); + IFC2X3_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[820], 608, { + strings[821], + strings[822] + }); + IFC2X3_IfcPropertySourceEnum_type = new enumeration_type(strings[823], 627, { + strings[824], + strings[825], + strings[826], + strings[323], + strings[827], + strings[828], + strings[321], + strings[28], + strings[829] + }); + IFC2X3_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[830], 630, { + strings[831], + strings[832], + strings[833], + strings[834], + strings[835], + strings[836], + strings[28], + strings[29] + }); + IFC2X3_IfcPumpTypeEnum_type = new enumeration_type(strings[837], 633, { + strings[838], + strings[839], + strings[840], + strings[841], + strings[842], + strings[28], + strings[29] + }); + IFC2X3_IfcRadioActivityMeasure_type = new type_declaration(strings[843], 640, new simple_type(simple_type::real_type)); + IFC2X3_IfcRailingTypeEnum_type = new enumeration_type(strings[844], 644, { + strings[845], + strings[846], + strings[847], + strings[28], + strings[29] + }); + IFC2X3_IfcRampFlightTypeEnum_type = new enumeration_type(strings[848], 648, { + strings[849], + strings[850], + strings[28], + strings[29] + }); + IFC2X3_IfcRampTypeEnum_type = new enumeration_type(strings[851], 649, { + strings[852], + strings[853], + strings[854], + strings[855], + strings[856], + strings[857], + strings[28], + strings[29] + }); + IFC2X3_IfcRatioMeasure_type = new type_declaration(strings[858], 650, new simple_type(simple_type::real_type)); + IFC2X3_IfcReal_type = new type_declaration(strings[859], 652, new simple_type(simple_type::real_type)); + IFC2X3_IfcReflectanceMethodEnum_type = new enumeration_type(strings[860], 658, { + strings[861], + strings[862], + strings[863], + strings[864], + strings[865], + strings[866], + strings[867], + strings[420], + strings[868], + strings[29] + }); + IFC2X3_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[869], 663, { + strings[870], + strings[871], + strings[872], + strings[720], + strings[873], + strings[874], + strings[875], + strings[28], + strings[29] + }); + IFC2X3_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[876], 664, { + strings[877], + strings[878] + }); + IFC2X3_IfcResourceConsumptionEnum_type = new enumeration_type(strings[879], 723, { + strings[880], + strings[881], + strings[882], + strings[883], + strings[884], + strings[885], + strings[28], + strings[29] + }); + IFC2X3_IfcRibPlateDirectionEnum_type = new enumeration_type(strings[886], 725, { + strings[887], + strings[888] + }); + IFC2X3_IfcRoleEnum_type = new enumeration_type(strings[889], 729, { + strings[890], + strings[891], + strings[892], + strings[893], + strings[894], + strings[895], + strings[896], + strings[897], + strings[898], + strings[899], + strings[900], + strings[901], + strings[902], + strings[903], + strings[904], + strings[905], + strings[906], + strings[759], + strings[907], + strings[908], + strings[909], + strings[910], + strings[28] + }); + IFC2X3_IfcRoofTypeEnum_type = new enumeration_type(strings[911], 731, { + strings[912], + strings[913], + strings[914], + strings[915], + strings[916], + strings[917], + strings[918], + strings[919], + strings[920], + strings[921], + strings[922], + strings[923], + strings[924], + strings[29] + }); + IFC2X3_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[925], 733, new simple_type(simple_type::real_type)); + IFC2X3_IfcRotationalMassMeasure_type = new type_declaration(strings[926], 734, new simple_type(simple_type::real_type)); + IFC2X3_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[927], 735, new simple_type(simple_type::real_type)); + IFC2X3_IfcSIPrefix_type = new enumeration_type(strings[928], 763, { + strings[929], + strings[930], + strings[931], + strings[932], + strings[933], + strings[934], + strings[935], + strings[936], + strings[937], + strings[938], + strings[939], + strings[940], + strings[941], + strings[942], + strings[943], + strings[944] + }); + IFC2X3_IfcSIUnitName_type = new enumeration_type(strings[945], 766, { + strings[946], + strings[947], + strings[948], + strings[949], + strings[950], + strings[951], + strings[952], + strings[953], + strings[954], + strings[955], + strings[956], + strings[957], + strings[958], + strings[959], + strings[960], + strings[961], + strings[962], + strings[963], + strings[964], + strings[965], + strings[966], + strings[967], + strings[968], + strings[969], + strings[970], + strings[971], + strings[972], + strings[973], + strings[974], + strings[975] + }); + IFC2X3_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[976], 739, { + strings[977], + strings[978], + strings[979], + strings[980], + strings[582], + strings[981], + strings[982], + strings[983], + strings[984], + strings[985], + strings[28], + strings[29] + }); + IFC2X3_IfcSecondInMinute_type = new type_declaration(strings[986], 741, new simple_type(simple_type::real_type)); + IFC2X3_IfcSectionModulusMeasure_type = new type_declaration(strings[987], 744, new simple_type(simple_type::real_type)); + IFC2X3_IfcSectionTypeEnum_type = new enumeration_type(strings[988], 747, { + strings[989], + strings[990] + }); + IFC2X3_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[991], 742, new simple_type(simple_type::real_type)); + IFC2X3_IfcSensorTypeEnum_type = new enumeration_type(strings[992], 749, { + strings[993], + strings[994], + strings[995], + strings[996], + strings[997], + strings[998], + strings[999], + strings[1000], + strings[1001], + strings[1002], + strings[1003], + strings[1004], + strings[1005], + strings[28], + strings[29] + }); + IFC2X3_IfcSequenceEnum_type = new enumeration_type(strings[1006], 750, { + strings[1007], + strings[1008], + strings[1009], + strings[1010], + strings[29] + }); + IFC2X3_IfcServiceLifeFactorTypeEnum_type = new enumeration_type(strings[1011], 753, { + strings[1012], + strings[1013], + strings[1014], + strings[1015], + strings[1016], + strings[1017], + strings[1018], + strings[28], + strings[29] + }); + IFC2X3_IfcServiceLifeTypeEnum_type = new enumeration_type(strings[1019], 754, { + strings[1020], + strings[1021], + strings[1022], + strings[1023], + strings[1024] + }); + IFC2X3_IfcShearModulusMeasure_type = new type_declaration(strings[1025], 758, new simple_type(simple_type::real_type)); + IFC2X3_IfcSlabTypeEnum_type = new enumeration_type(strings[1026], 770, { + strings[1027], + strings[1028], + strings[1029], + strings[1030], + strings[28], + strings[29] + }); + IFC2X3_IfcSolidAngleMeasure_type = new type_declaration(strings[1031], 772, new simple_type(simple_type::real_type)); + IFC2X3_IfcSoundPowerMeasure_type = new type_declaration(strings[1032], 774, new simple_type(simple_type::real_type)); + IFC2X3_IfcSoundPressureMeasure_type = new type_declaration(strings[1033], 775, new simple_type(simple_type::real_type)); + IFC2X3_IfcSoundScaleEnum_type = new enumeration_type(strings[1034], 777, { + strings[1035], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[28], + strings[29] + }); + IFC2X3_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1040], 781, { + strings[1041], + strings[1042], + strings[1043], + strings[1044], + strings[1045], + strings[1046], + strings[1047], + strings[28], + strings[29] + }); + IFC2X3_IfcSpaceTypeEnum_type = new enumeration_type(strings[1048], 785, { + strings[28], + strings[29] + }); + IFC2X3_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1049], 788, new simple_type(simple_type::real_type)); + IFC2X3_IfcSpecularExponent_type = new type_declaration(strings[1050], 789, new simple_type(simple_type::real_type)); + IFC2X3_IfcSpecularRoughness_type = new type_declaration(strings[1051], 791, new simple_type(simple_type::real_type)); + IFC2X3_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1052], 794, { + strings[1053], + strings[1054], + strings[1055], + strings[28], + strings[29] + }); + IFC2X3_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1056], 798, { + strings[849], + strings[1057], + strings[850], + strings[1058], + strings[924], + strings[28], + strings[29] + }); + IFC2X3_IfcStairTypeEnum_type = new enumeration_type(strings[1059], 799, { + strings[1060], + strings[1061], + strings[1062], + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[1067], + strings[1068], + strings[1069], + strings[1070], + strings[1071], + strings[1072], + strings[1073], + strings[28], + strings[29] + }); + IFC2X3_IfcStateEnum_type = new enumeration_type(strings[1074], 800, { + strings[1075], + strings[1076], + strings[1077], + strings[1078], + strings[1079] + }); + IFC2X3_IfcStructuralCurveTypeEnum_type = new enumeration_type(strings[1080], 810, { + strings[1081], + strings[1082], + strings[1083], + strings[1084], + strings[1085], + strings[28], + strings[29] + }); + IFC2X3_IfcStructuralSurfaceTypeEnum_type = new enumeration_type(strings[1086], 837, { + strings[1087], + strings[1088], + strings[1089], + strings[28], + strings[29] + }); + IFC2X3_IfcSurfaceSide_type = new enumeration_type(strings[1090], 849, { + strings[381], + strings[382], + strings[1091] + }); + IFC2X3_IfcSurfaceTextureEnum_type = new enumeration_type(strings[1092], 858, { + strings[1093], + strings[1094], + strings[1095], + strings[1096], + strings[1097], + strings[1098], + strings[1099], + strings[1100], + strings[29] + }); + IFC2X3_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1101], 863, { + strings[1102], + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[28], + strings[29] + }); + IFC2X3_IfcTankTypeEnum_type = new enumeration_type(strings[1107], 871, { + strings[1108], + strings[1109], + strings[1110], + strings[1111], + strings[28], + strings[29] + }); + IFC2X3_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1112], 874, new simple_type(simple_type::real_type)); + IFC2X3_IfcTendonTypeEnum_type = new enumeration_type(strings[1113], 877, { + strings[1114], + strings[1115], + strings[1116], + strings[1117], + strings[28], + strings[29] + }); + IFC2X3_IfcText_type = new type_declaration(strings[1118], 879, new simple_type(simple_type::string_type)); + IFC2X3_IfcTextAlignment_type = new type_declaration(strings[1119], 880, new simple_type(simple_type::string_type)); + IFC2X3_IfcTextDecoration_type = new type_declaration(strings[1120], 881, new simple_type(simple_type::string_type)); + IFC2X3_IfcTextFontName_type = new type_declaration(strings[1121], 882, new simple_type(simple_type::string_type)); + IFC2X3_IfcTextPath_type = new enumeration_type(strings[1122], 886, { + strings[410], + strings[412], + strings[1123], + strings[1124] + }); + IFC2X3_IfcTextTransformation_type = new type_declaration(strings[1125], 893, new simple_type(simple_type::string_type)); + IFC2X3_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1126], 898, new simple_type(simple_type::real_type)); + IFC2X3_IfcThermalConductivityMeasure_type = new type_declaration(strings[1127], 899, new simple_type(simple_type::real_type)); + IFC2X3_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1128], 900, new simple_type(simple_type::real_type)); + IFC2X3_IfcThermalLoadSourceEnum_type = new enumeration_type(strings[1129], 901, { + strings[1130], + strings[1131], + strings[1132], + strings[1133], + strings[1134], + strings[1135], + strings[1136], + strings[1137], + strings[1138], + strings[1139], + strings[1140], + strings[28], + strings[29] + }); + IFC2X3_IfcThermalLoadTypeEnum_type = new enumeration_type(strings[1141], 902, { + strings[1142], + strings[1143], + strings[1144], + strings[29] + }); + IFC2X3_IfcThermalResistanceMeasure_type = new type_declaration(strings[1145], 904, new simple_type(simple_type::real_type)); + IFC2X3_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1146], 905, new simple_type(simple_type::real_type)); + IFC2X3_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1147], 906, new simple_type(simple_type::real_type)); + IFC2X3_IfcTimeMeasure_type = new type_declaration(strings[1148], 907, new simple_type(simple_type::real_type)); + IFC2X3_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1149], 909, { + strings[1150], + strings[1151], + strings[1152], + strings[1153], + strings[1154], + strings[1155], + strings[29] + }); + IFC2X3_IfcTimeSeriesScheduleTypeEnum_type = new enumeration_type(strings[1156], 912, { + strings[1157], + strings[1158], + strings[1159], + strings[1160], + strings[28], + strings[29] + }); + IFC2X3_IfcTimeStamp_type = new type_declaration(strings[1161], 914, new simple_type(simple_type::integer_type)); + IFC2X3_IfcTorqueMeasure_type = new type_declaration(strings[1162], 917, new simple_type(simple_type::real_type)); + IFC2X3_IfcTransformerTypeEnum_type = new enumeration_type(strings[1163], 919, { + strings[24], + strings[1164], + strings[1165], + strings[28], + strings[29] + }); + IFC2X3_IfcTransitionCode_type = new enumeration_type(strings[1166], 920, { + strings[1167], + strings[1150], + strings[1168], + strings[1169] + }); + IFC2X3_IfcTransportElementTypeEnum_type = new enumeration_type(strings[1170], 923, { + strings[1171], + strings[1172], + strings[1173], + strings[28], + strings[29] + }); + IFC2X3_IfcTrimmingPreference_type = new enumeration_type(strings[1174], 926, { + strings[1175], + strings[1176], + strings[102] + }); + IFC2X3_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1177], 930, { + strings[1178], + strings[28], + strings[29] + }); + IFC2X3_IfcUnitEnum_type = new enumeration_type(strings[1179], 938, { + strings[1180], + strings[1181], + strings[1182], + strings[1183], + strings[1184], + strings[1185], + strings[1186], + strings[1187], + strings[1188], + strings[1189], + strings[1190], + strings[1191], + strings[1192], + strings[1193], + strings[1194], + strings[1195], + strings[1196], + strings[1197], + strings[1198], + strings[1199], + strings[1200], + strings[1201], + strings[1202], + strings[1203], + strings[1204], + strings[1205], + strings[1206], + strings[1207], + strings[1208], + strings[28] + }); + IFC2X3_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1209], 936, { + strings[1210], + strings[1211], + strings[1212], + strings[1213], + strings[28], + strings[29] + }); + IFC2X3_IfcValveTypeEnum_type = new enumeration_type(strings[1214], 942, { + strings[1215], + strings[1216], + strings[1217], + strings[1218], + strings[828], + strings[1219], + strings[1220], + strings[1221], + strings[1222], + strings[1223], + strings[1224], + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[1229], + strings[1230], + strings[1231], + strings[1232], + strings[1233], + strings[1234], + strings[28], + strings[29] + }); + IFC2X3_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1235], 943, new simple_type(simple_type::real_type)); + IFC2X3_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1236], 951, { + strings[1237], + strings[1238], + strings[28], + strings[29] + }); + IFC2X3_IfcVolumeMeasure_type = new type_declaration(strings[1239], 954, new simple_type(simple_type::real_type)); + IFC2X3_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1240], 955, new simple_type(simple_type::real_type)); + IFC2X3_IfcWallTypeEnum_type = new enumeration_type(strings[1241], 959, { + strings[1242], + strings[1243], + strings[871], + strings[1244], + strings[1245], + strings[28], + strings[29] + }); + IFC2X3_IfcWarpingConstantMeasure_type = new type_declaration(strings[1246], 960, new simple_type(simple_type::real_type)); + IFC2X3_IfcWarpingMomentMeasure_type = new type_declaration(strings[1247], 961, new simple_type(simple_type::real_type)); + IFC2X3_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1248], 963, { + strings[1249], + strings[1250], + strings[1251], + strings[1252], + strings[1253], + strings[1254], + strings[1255], + strings[1256], + strings[1257], + strings[1258], + strings[28], + strings[29] + }); + IFC2X3_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1259], 967, { + strings[1260], + strings[1261], + strings[1262], + strings[1263], + strings[1264], + strings[1265], + strings[1266], + strings[1267], + strings[1268], + strings[1269], + strings[1270], + strings[1271], + strings[1272], + strings[29] + }); + IFC2X3_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1273], 968, { + strings[410], + strings[411], + strings[412], + strings[1274], + strings[1275], + strings[29] + }); + IFC2X3_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1276], 971, { + strings[414], + strings[415], + strings[416], + strings[417], + strings[418], + strings[420], + strings[1277], + strings[29] + }); + IFC2X3_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1278], 972, { + strings[1279], + strings[1280], + strings[1281], + strings[1282], + strings[1283], + strings[1284], + strings[1285], + strings[1286], + strings[1287], + strings[28], + strings[29] + }); + IFC2X3_IfcWorkControlTypeEnum_type = new enumeration_type(strings[1288], 974, { + strings[1289], + strings[1290], + strings[1291], + strings[28], + strings[29] + }); + IFC2X3_IfcYearNumber_type = new type_declaration(strings[1292], 977, new simple_type(simple_type::integer_type)); + IFC2X3_IfcActorRole_type = new entity(strings[1293], false, 7, 0); + IFC2X3_IfcAddress_type = new entity(strings[1294], true, 11, 0); + IFC2X3_IfcApplication_type = new entity(strings[1295], false, 36, 0); + IFC2X3_IfcAppliedValue_type = new entity(strings[1296], true, 37, 0); + IFC2X3_IfcAppliedValueRelationship_type = new entity(strings[1297], false, 38, 0); + IFC2X3_IfcApproval_type = new entity(strings[1298], false, 40, 0); + IFC2X3_IfcApprovalActorRelationship_type = new entity(strings[1299], false, 41, 0); + IFC2X3_IfcApprovalPropertyRelationship_type = new entity(strings[1300], false, 42, 0); + IFC2X3_IfcApprovalRelationship_type = new entity(strings[1301], false, 43, 0); + IFC2X3_IfcBoundaryCondition_type = new entity(strings[1302], true, 70, 0); + IFC2X3_IfcBoundaryEdgeCondition_type = new entity(strings[1303], false, 71, IFC2X3_IfcBoundaryCondition_type); + IFC2X3_IfcBoundaryFaceCondition_type = new entity(strings[1304], false, 72, IFC2X3_IfcBoundaryCondition_type); + IFC2X3_IfcBoundaryNodeCondition_type = new entity(strings[1305], false, 73, IFC2X3_IfcBoundaryCondition_type); + IFC2X3_IfcBoundaryNodeConditionWarping_type = new entity(strings[1306], false, 74, IFC2X3_IfcBoundaryNodeCondition_type); + IFC2X3_IfcCalendarDate_type = new entity(strings[1307], false, 97, 0); + IFC2X3_IfcClassification_type = new entity(strings[1308], false, 113, 0); + IFC2X3_IfcClassificationItem_type = new entity(strings[1309], false, 114, 0); + IFC2X3_IfcClassificationItemRelationship_type = new entity(strings[1310], false, 115, 0); + IFC2X3_IfcClassificationNotation_type = new entity(strings[1311], false, 116, 0); + IFC2X3_IfcClassificationNotationFacet_type = new entity(strings[1312], false, 117, 0); + IFC2X3_IfcColourSpecification_type = new entity(strings[1313], true, 126, 0); + IFC2X3_IfcConnectionGeometry_type = new entity(strings[1314], true, 146, 0); + IFC2X3_IfcConnectionPointGeometry_type = new entity(strings[1315], false, 148, IFC2X3_IfcConnectionGeometry_type); + IFC2X3_IfcConnectionPortGeometry_type = new entity(strings[1316], false, 149, IFC2X3_IfcConnectionGeometry_type); + IFC2X3_IfcConnectionSurfaceGeometry_type = new entity(strings[1317], false, 150, IFC2X3_IfcConnectionGeometry_type); + IFC2X3_IfcConstraint_type = new entity(strings[1318], true, 152, 0); + IFC2X3_IfcConstraintAggregationRelationship_type = new entity(strings[1319], false, 153, 0); + IFC2X3_IfcConstraintClassificationRelationship_type = new entity(strings[1320], false, 154, 0); + IFC2X3_IfcConstraintRelationship_type = new entity(strings[1321], false, 156, 0); + IFC2X3_IfcCoordinatedUniversalTimeOffset_type = new entity(strings[1322], false, 171, 0); + IFC2X3_IfcCostValue_type = new entity(strings[1323], false, 175, IFC2X3_IfcAppliedValue_type); + IFC2X3_IfcCurrencyRelationship_type = new entity(strings[1324], false, 188, 0); + IFC2X3_IfcCurveStyleFont_type = new entity(strings[1325], false, 198, 0); + IFC2X3_IfcCurveStyleFontAndScaling_type = new entity(strings[1326], false, 199, 0); + IFC2X3_IfcCurveStyleFontPattern_type = new entity(strings[1327], false, 200, 0); + IFC2X3_IfcDateAndTime_type = new entity(strings[1328], false, 205, 0); + IFC2X3_IfcDerivedUnit_type = new entity(strings[1329], false, 213, 0); + IFC2X3_IfcDerivedUnitElement_type = new entity(strings[1330], false, 214, 0); + IFC2X3_IfcDimensionalExponents_type = new entity(strings[1331], false, 218, 0); + IFC2X3_IfcDocumentElectronicFormat_type = new entity(strings[1332], false, 241, 0); + IFC2X3_IfcDocumentInformation_type = new entity(strings[1333], false, 242, 0); + IFC2X3_IfcDocumentInformationRelationship_type = new entity(strings[1334], false, 243, 0); + IFC2X3_IfcDraughtingCalloutRelationship_type = new entity(strings[1335], false, 258, 0); + IFC2X3_IfcEnvironmentalImpactValue_type = new entity(strings[1336], false, 314, IFC2X3_IfcAppliedValue_type); + IFC2X3_IfcExternalReference_type = new entity(strings[1337], true, 326, 0); + IFC2X3_IfcExternallyDefinedHatchStyle_type = new entity(strings[1338], false, 322, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1339], false, 323, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcExternallyDefinedSymbol_type = new entity(strings[1340], false, 324, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcExternallyDefinedTextFont_type = new entity(strings[1341], false, 325, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcGridAxis_type = new entity(strings[1342], false, 399, 0); + IFC2X3_IfcIrregularTimeSeriesValue_type = new entity(strings[1343], false, 423, 0); + IFC2X3_IfcLibraryInformation_type = new entity(strings[1344], false, 436, 0); + IFC2X3_IfcLibraryReference_type = new entity(strings[1345], false, 437, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcLightDistributionData_type = new entity(strings[1346], false, 440, 0); + IFC2X3_IfcLightIntensityDistribution_type = new entity(strings[1347], false, 445, 0); + IFC2X3_IfcLocalTime_type = new entity(strings[1348], false, 460, 0); + IFC2X3_IfcMaterial_type = new entity(strings[1349], false, 476, 0); + IFC2X3_IfcMaterialClassificationRelationship_type = new entity(strings[1350], false, 477, 0); + IFC2X3_IfcMaterialLayer_type = new entity(strings[1351], false, 479, 0); + IFC2X3_IfcMaterialLayerSet_type = new entity(strings[1352], false, 480, 0); + IFC2X3_IfcMaterialLayerSetUsage_type = new entity(strings[1353], false, 481, 0); + IFC2X3_IfcMaterialList_type = new entity(strings[1354], false, 482, 0); + IFC2X3_IfcMaterialProperties_type = new entity(strings[1355], true, 483, 0); + IFC2X3_IfcMeasureWithUnit_type = new entity(strings[1356], false, 486, 0); + IFC2X3_IfcMechanicalMaterialProperties_type = new entity(strings[1357], false, 490, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcMechanicalSteelMaterialProperties_type = new entity(strings[1358], false, 491, IFC2X3_IfcMechanicalMaterialProperties_type); + IFC2X3_IfcMetric_type = new entity(strings[1359], false, 495, IFC2X3_IfcConstraint_type); + IFC2X3_IfcMonetaryUnit_type = new entity(strings[1360], false, 506, 0); + IFC2X3_IfcNamedUnit_type = new entity(strings[1361], true, 511, 0); + IFC2X3_IfcObjectPlacement_type = new entity(strings[1362], true, 519, 0); + IFC2X3_IfcObjective_type = new entity(strings[1363], false, 517, IFC2X3_IfcConstraint_type); + IFC2X3_IfcOpticalMaterialProperties_type = new entity(strings[1364], false, 529, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcOrganization_type = new entity(strings[1365], false, 531, 0); + IFC2X3_IfcOrganizationRelationship_type = new entity(strings[1366], false, 532, 0); + IFC2X3_IfcOwnerHistory_type = new entity(strings[1367], false, 537, 0); + IFC2X3_IfcPerson_type = new entity(strings[1368], false, 545, 0); + IFC2X3_IfcPersonAndOrganization_type = new entity(strings[1369], false, 546, 0); + IFC2X3_IfcPhysicalQuantity_type = new entity(strings[1370], true, 550, 0); + IFC2X3_IfcPhysicalSimpleQuantity_type = new entity(strings[1371], true, 551, IFC2X3_IfcPhysicalQuantity_type); + IFC2X3_IfcPostalAddress_type = new entity(strings[1372], false, 580, IFC2X3_IfcAddress_type); + IFC2X3_IfcPreDefinedItem_type = new entity(strings[1373], true, 585, 0); + IFC2X3_IfcPreDefinedSymbol_type = new entity(strings[1374], true, 587, IFC2X3_IfcPreDefinedItem_type); + IFC2X3_IfcPreDefinedTerminatorSymbol_type = new entity(strings[1375], false, 588, IFC2X3_IfcPreDefinedSymbol_type); + IFC2X3_IfcPreDefinedTextFont_type = new entity(strings[1376], true, 589, IFC2X3_IfcPreDefinedItem_type); + IFC2X3_IfcPresentationLayerAssignment_type = new entity(strings[1377], false, 591, 0); + IFC2X3_IfcPresentationLayerWithStyle_type = new entity(strings[1378], false, 592, IFC2X3_IfcPresentationLayerAssignment_type); + IFC2X3_IfcPresentationStyle_type = new entity(strings[1379], true, 593, 0); + IFC2X3_IfcPresentationStyleAssignment_type = new entity(strings[1380], false, 594, 0); + IFC2X3_IfcProductRepresentation_type = new entity(strings[1381], false, 602, 0); + IFC2X3_IfcProductsOfCombustionProperties_type = new entity(strings[1382], false, 603, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcProfileDef_type = new entity(strings[1383], true, 604, 0); + IFC2X3_IfcProfileProperties_type = new entity(strings[1384], true, 605, 0); + IFC2X3_IfcProperty_type = new entity(strings[1385], true, 615, 0); + IFC2X3_IfcPropertyConstraintRelationship_type = new entity(strings[1386], false, 617, 0); + IFC2X3_IfcPropertyDependencyRelationship_type = new entity(strings[1387], false, 619, 0); + IFC2X3_IfcPropertyEnumeration_type = new entity(strings[1388], false, 621, 0); + IFC2X3_IfcQuantityArea_type = new entity(strings[1389], false, 634, IFC2X3_IfcPhysicalSimpleQuantity_type); + IFC2X3_IfcQuantityCount_type = new entity(strings[1390], false, 635, IFC2X3_IfcPhysicalSimpleQuantity_type); + IFC2X3_IfcQuantityLength_type = new entity(strings[1391], false, 636, IFC2X3_IfcPhysicalSimpleQuantity_type); + IFC2X3_IfcQuantityTime_type = new entity(strings[1392], false, 637, IFC2X3_IfcPhysicalSimpleQuantity_type); + IFC2X3_IfcQuantityVolume_type = new entity(strings[1393], false, 638, IFC2X3_IfcPhysicalSimpleQuantity_type); + IFC2X3_IfcQuantityWeight_type = new entity(strings[1394], false, 639, IFC2X3_IfcPhysicalSimpleQuantity_type); + IFC2X3_IfcReferencesValueDocument_type = new entity(strings[1395], false, 657, 0); + IFC2X3_IfcReinforcementBarProperties_type = new entity(strings[1396], false, 660, 0); + IFC2X3_IfcRelaxation_type = new entity(strings[1397], false, 687, 0); + IFC2X3_IfcRepresentation_type = new entity(strings[1398], false, 718, 0); + IFC2X3_IfcRepresentationContext_type = new entity(strings[1399], false, 719, 0); + IFC2X3_IfcRepresentationItem_type = new entity(strings[1400], true, 720, 0); + IFC2X3_IfcRepresentationMap_type = new entity(strings[1401], false, 721, 0); + IFC2X3_IfcRibPlateProfileProperties_type = new entity(strings[1402], false, 726, IFC2X3_IfcProfileProperties_type); + IFC2X3_IfcRoot_type = new entity(strings[1403], true, 732, 0); + IFC2X3_IfcSIUnit_type = new entity(strings[1404], false, 765, IFC2X3_IfcNamedUnit_type); + IFC2X3_IfcSectionProperties_type = new entity(strings[1405], false, 745, 0); + IFC2X3_IfcSectionReinforcementProperties_type = new entity(strings[1406], false, 746, 0); + IFC2X3_IfcShapeAspect_type = new entity(strings[1407], false, 755, 0); + IFC2X3_IfcShapeModel_type = new entity(strings[1408], true, 756, IFC2X3_IfcRepresentation_type); + IFC2X3_IfcShapeRepresentation_type = new entity(strings[1409], false, 757, IFC2X3_IfcShapeModel_type); + IFC2X3_IfcSimpleProperty_type = new entity(strings[1410], true, 761, IFC2X3_IfcProperty_type); + IFC2X3_IfcStructuralConnectionCondition_type = new entity(strings[1411], true, 806, 0); + IFC2X3_IfcStructuralLoad_type = new entity(strings[1412], true, 814, 0); + IFC2X3_IfcStructuralLoadStatic_type = new entity(strings[1413], true, 822, IFC2X3_IfcStructuralLoad_type); + IFC2X3_IfcStructuralLoadTemperature_type = new entity(strings[1414], false, 823, IFC2X3_IfcStructuralLoadStatic_type); + IFC2X3_IfcStyleModel_type = new entity(strings[1415], true, 841, IFC2X3_IfcRepresentation_type); + IFC2X3_IfcStyledItem_type = new entity(strings[1416], false, 839, IFC2X3_IfcRepresentationItem_type); + IFC2X3_IfcStyledRepresentation_type = new entity(strings[1417], false, 840, IFC2X3_IfcStyleModel_type); + IFC2X3_IfcSurfaceStyle_type = new entity(strings[1418], false, 850, IFC2X3_IfcPresentationStyle_type); + IFC2X3_IfcSurfaceStyleLighting_type = new entity(strings[1419], false, 852, 0); + IFC2X3_IfcSurfaceStyleRefraction_type = new entity(strings[1420], false, 853, 0); + IFC2X3_IfcSurfaceStyleShading_type = new entity(strings[1421], false, 855, 0); + IFC2X3_IfcSurfaceStyleWithTextures_type = new entity(strings[1422], false, 856, 0); + IFC2X3_IfcSurfaceTexture_type = new entity(strings[1423], true, 857, 0); + IFC2X3_IfcSymbolStyle_type = new entity(strings[1424], false, 864, IFC2X3_IfcPresentationStyle_type); + IFC2X3_IfcTable_type = new entity(strings[1425], false, 868, 0); + IFC2X3_IfcTableRow_type = new entity(strings[1426], false, 869, 0); + IFC2X3_IfcTelecomAddress_type = new entity(strings[1427], false, 873, IFC2X3_IfcAddress_type); + IFC2X3_IfcTextStyle_type = new entity(strings[1428], false, 887, IFC2X3_IfcPresentationStyle_type); + IFC2X3_IfcTextStyleFontModel_type = new entity(strings[1429], false, 888, IFC2X3_IfcPreDefinedTextFont_type); + IFC2X3_IfcTextStyleForDefinedFont_type = new entity(strings[1430], false, 889, 0); + IFC2X3_IfcTextStyleTextModel_type = new entity(strings[1431], false, 891, 0); + IFC2X3_IfcTextStyleWithBoxCharacteristics_type = new entity(strings[1432], false, 892, 0); + IFC2X3_IfcTextureCoordinate_type = new entity(strings[1433], true, 894, 0); + IFC2X3_IfcTextureCoordinateGenerator_type = new entity(strings[1434], false, 895, IFC2X3_IfcTextureCoordinate_type); + IFC2X3_IfcTextureMap_type = new entity(strings[1435], false, 896, IFC2X3_IfcTextureCoordinate_type); + IFC2X3_IfcTextureVertex_type = new entity(strings[1436], false, 897, 0); + IFC2X3_IfcThermalMaterialProperties_type = new entity(strings[1437], false, 903, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcTimeSeries_type = new entity(strings[1438], true, 908, 0); + IFC2X3_IfcTimeSeriesReferenceRelationship_type = new entity(strings[1439], false, 910, 0); + IFC2X3_IfcTimeSeriesValue_type = new entity(strings[1440], false, 913, 0); + IFC2X3_IfcTopologicalRepresentationItem_type = new entity(strings[1441], true, 915, IFC2X3_IfcRepresentationItem_type); + IFC2X3_IfcTopologyRepresentation_type = new entity(strings[1442], false, 916, IFC2X3_IfcShapeModel_type); + IFC2X3_IfcUnitAssignment_type = new entity(strings[1443], false, 937, 0); + IFC2X3_IfcVertex_type = new entity(strings[1444], false, 946, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcVertexBasedTextureMap_type = new entity(strings[1445], false, 947, 0); + IFC2X3_IfcVertexPoint_type = new entity(strings[1446], false, 949, IFC2X3_IfcVertex_type); + IFC2X3_IfcVirtualGridIntersection_type = new entity(strings[1447], false, 953, 0); + IFC2X3_IfcWaterProperties_type = new entity(strings[1448], false, 964, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcActorSelect_type = new select_type(strings[1449], 8, { + IFC2X3_IfcOrganization_type, + IFC2X3_IfcPerson_type, + IFC2X3_IfcPersonAndOrganization_type + }); + IFC2X3_IfcAppliedValueSelect_type = new select_type(strings[1450], 39, { + IFC2X3_IfcMeasureWithUnit_type, + IFC2X3_IfcMonetaryMeasure_type, + IFC2X3_IfcRatioMeasure_type + }); + IFC2X3_IfcBoxAlignment_type = new type_declaration(strings[1451], 78, new named_type(IFC2X3_IfcLabel_type)); + IFC2X3_IfcCharacterStyleSelect_type = new select_type(strings[1452], 107, { + IFC2X3_IfcTextStyleForDefinedFont_type + }); + IFC2X3_IfcConditionCriterionSelect_type = new select_type(strings[1453], 142, { + IFC2X3_IfcLabel_type, + IFC2X3_IfcMeasureWithUnit_type + }); + IFC2X3_IfcDateTimeSelect_type = new select_type(strings[1454], 206, { + IFC2X3_IfcCalendarDate_type, + IFC2X3_IfcDateAndTime_type, + IFC2X3_IfcLocalTime_type + }); + IFC2X3_IfcDefinedSymbolSelect_type = new select_type(strings[1455], 210, { + IFC2X3_IfcExternallyDefinedSymbol_type, + IFC2X3_IfcPreDefinedSymbol_type + }); + IFC2X3_IfcDerivedMeasureValue_type = new select_type(strings[1456], 211, { + IFC2X3_IfcAbsorbedDoseMeasure_type, + IFC2X3_IfcAccelerationMeasure_type, + IFC2X3_IfcAngularVelocityMeasure_type, + IFC2X3_IfcCompoundPlaneAngleMeasure_type, + IFC2X3_IfcCurvatureMeasure_type, + IFC2X3_IfcDoseEquivalentMeasure_type, + IFC2X3_IfcDynamicViscosityMeasure_type, + IFC2X3_IfcElectricCapacitanceMeasure_type, + IFC2X3_IfcElectricChargeMeasure_type, + IFC2X3_IfcElectricConductanceMeasure_type, + IFC2X3_IfcElectricResistanceMeasure_type, + IFC2X3_IfcElectricVoltageMeasure_type, + IFC2X3_IfcEnergyMeasure_type, + IFC2X3_IfcForceMeasure_type, + IFC2X3_IfcFrequencyMeasure_type, + IFC2X3_IfcHeatFluxDensityMeasure_type, + IFC2X3_IfcHeatingValueMeasure_type, + IFC2X3_IfcIlluminanceMeasure_type, + IFC2X3_IfcInductanceMeasure_type, + IFC2X3_IfcIntegerCountRateMeasure_type, + IFC2X3_IfcIonConcentrationMeasure_type, + IFC2X3_IfcIsothermalMoistureCapacityMeasure_type, + IFC2X3_IfcKinematicViscosityMeasure_type, + IFC2X3_IfcLinearForceMeasure_type, + IFC2X3_IfcLinearMomentMeasure_type, + IFC2X3_IfcLinearStiffnessMeasure_type, + IFC2X3_IfcLinearVelocityMeasure_type, + IFC2X3_IfcLuminousFluxMeasure_type, + IFC2X3_IfcLuminousIntensityDistributionMeasure_type, + IFC2X3_IfcMagneticFluxDensityMeasure_type, + IFC2X3_IfcMagneticFluxMeasure_type, + IFC2X3_IfcMassDensityMeasure_type, + IFC2X3_IfcMassFlowRateMeasure_type, + IFC2X3_IfcMassPerLengthMeasure_type, + IFC2X3_IfcModulusOfElasticityMeasure_type, + IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC2X3_IfcModulusOfSubgradeReactionMeasure_type, + IFC2X3_IfcMoistureDiffusivityMeasure_type, + IFC2X3_IfcMolecularWeightMeasure_type, + IFC2X3_IfcMomentOfInertiaMeasure_type, + IFC2X3_IfcMonetaryMeasure_type, + IFC2X3_IfcPHMeasure_type, + IFC2X3_IfcPlanarForceMeasure_type, + IFC2X3_IfcPowerMeasure_type, + IFC2X3_IfcPressureMeasure_type, + IFC2X3_IfcRadioActivityMeasure_type, + IFC2X3_IfcRotationalFrequencyMeasure_type, + IFC2X3_IfcRotationalMassMeasure_type, + IFC2X3_IfcRotationalStiffnessMeasure_type, + IFC2X3_IfcSectionModulusMeasure_type, + IFC2X3_IfcSectionalAreaIntegralMeasure_type, + IFC2X3_IfcShearModulusMeasure_type, + IFC2X3_IfcSoundPowerMeasure_type, + IFC2X3_IfcSoundPressureMeasure_type, + IFC2X3_IfcSpecificHeatCapacityMeasure_type, + IFC2X3_IfcTemperatureGradientMeasure_type, + IFC2X3_IfcThermalAdmittanceMeasure_type, + IFC2X3_IfcThermalConductivityMeasure_type, + IFC2X3_IfcThermalExpansionCoefficientMeasure_type, + IFC2X3_IfcThermalResistanceMeasure_type, + IFC2X3_IfcThermalTransmittanceMeasure_type, + IFC2X3_IfcTimeStamp_type, + IFC2X3_IfcTorqueMeasure_type, + IFC2X3_IfcVaporPermeabilityMeasure_type, + IFC2X3_IfcVolumetricFlowRateMeasure_type, + IFC2X3_IfcWarpingConstantMeasure_type, + IFC2X3_IfcWarpingMomentMeasure_type + }); + IFC2X3_IfcLayeredItem_type = new select_type(strings[1457], 433, { + IFC2X3_IfcRepresentation_type, + IFC2X3_IfcRepresentationItem_type + }); + IFC2X3_IfcLibrarySelect_type = new select_type(strings[1458], 438, { + IFC2X3_IfcLibraryInformation_type, + IFC2X3_IfcLibraryReference_type + }); + IFC2X3_IfcLightDistributionDataSourceSelect_type = new select_type(strings[1459], 441, { + IFC2X3_IfcExternalReference_type, + IFC2X3_IfcLightIntensityDistribution_type + }); + IFC2X3_IfcMaterialSelect_type = new select_type(strings[1460], 484, { + IFC2X3_IfcMaterial_type, + IFC2X3_IfcMaterialLayer_type, + IFC2X3_IfcMaterialLayerSet_type, + IFC2X3_IfcMaterialLayerSetUsage_type, + IFC2X3_IfcMaterialList_type + }); + IFC2X3_IfcMetricValueSelect_type = new select_type(strings[1461], 496, { + IFC2X3_IfcCostValue_type, + IFC2X3_IfcDateTimeSelect_type, + IFC2X3_IfcMeasureWithUnit_type, + IFC2X3_IfcTable_type, + IFC2X3_IfcText_type, + IFC2X3_IfcTimeSeries_type + }); + IFC2X3_IfcNormalisedRatioMeasure_type = new type_declaration(strings[1462], 512, new named_type(IFC2X3_IfcRatioMeasure_type)); + IFC2X3_IfcObjectReferenceSelect_type = new select_type(strings[1463], 520, { + IFC2X3_IfcAddress_type, + IFC2X3_IfcAppliedValue_type, + IFC2X3_IfcCalendarDate_type, + IFC2X3_IfcDateAndTime_type, + IFC2X3_IfcExternalReference_type, + IFC2X3_IfcLocalTime_type, + IFC2X3_IfcMaterial_type, + IFC2X3_IfcMaterialLayer_type, + IFC2X3_IfcMaterialList_type, + IFC2X3_IfcOrganization_type, + IFC2X3_IfcPerson_type, + IFC2X3_IfcPersonAndOrganization_type, + IFC2X3_IfcTimeSeries_type + }); + IFC2X3_IfcPositiveRatioMeasure_type = new type_declaration(strings[1464], 579, new named_type(IFC2X3_IfcRatioMeasure_type)); + IFC2X3_IfcSimpleValue_type = new select_type(strings[1465], 762, { + IFC2X3_IfcBoolean_type, + IFC2X3_IfcIdentifier_type, + IFC2X3_IfcInteger_type, + IFC2X3_IfcLabel_type, + IFC2X3_IfcLogical_type, + IFC2X3_IfcReal_type, + IFC2X3_IfcText_type + }); + IFC2X3_IfcSizeSelect_type = new select_type(strings[1466], 767, { + IFC2X3_IfcDescriptiveMeasure_type, + IFC2X3_IfcLengthMeasure_type, + IFC2X3_IfcNormalisedRatioMeasure_type, + IFC2X3_IfcPositiveLengthMeasure_type, + IFC2X3_IfcPositiveRatioMeasure_type, + IFC2X3_IfcRatioMeasure_type + }); + IFC2X3_IfcSpecularHighlightSelect_type = new select_type(strings[1467], 790, { + IFC2X3_IfcSpecularExponent_type, + IFC2X3_IfcSpecularRoughness_type + }); + IFC2X3_IfcSurfaceStyleElementSelect_type = new select_type(strings[1468], 851, { + IFC2X3_IfcExternallyDefinedSurfaceStyle_type, + IFC2X3_IfcSurfaceStyleLighting_type, + IFC2X3_IfcSurfaceStyleRefraction_type, + IFC2X3_IfcSurfaceStyleShading_type, + IFC2X3_IfcSurfaceStyleWithTextures_type + }); + IFC2X3_IfcTextFontSelect_type = new select_type(strings[1469], 883, { + IFC2X3_IfcExternallyDefinedTextFont_type, + IFC2X3_IfcPreDefinedTextFont_type + }); + IFC2X3_IfcTextStyleSelect_type = new select_type(strings[1470], 890, { + IFC2X3_IfcTextStyleTextModel_type, + IFC2X3_IfcTextStyleWithBoxCharacteristics_type + }); + IFC2X3_IfcUnit_type = new select_type(strings[1471], 934, { + IFC2X3_IfcDerivedUnit_type, + IFC2X3_IfcMonetaryUnit_type, + IFC2X3_IfcNamedUnit_type + }); + IFC2X3_IfcAnnotationOccurrence_type = new entity(strings[1472], true, 31, IFC2X3_IfcStyledItem_type); + IFC2X3_IfcAnnotationSurfaceOccurrence_type = new entity(strings[1473], false, 33, IFC2X3_IfcAnnotationOccurrence_type); + IFC2X3_IfcAnnotationSymbolOccurrence_type = new entity(strings[1474], false, 34, IFC2X3_IfcAnnotationOccurrence_type); + IFC2X3_IfcAnnotationTextOccurrence_type = new entity(strings[1475], false, 35, IFC2X3_IfcAnnotationOccurrence_type); + IFC2X3_IfcArbitraryClosedProfileDef_type = new entity(strings[1476], false, 44, IFC2X3_IfcProfileDef_type); + IFC2X3_IfcArbitraryOpenProfileDef_type = new entity(strings[1477], false, 45, IFC2X3_IfcProfileDef_type); + IFC2X3_IfcArbitraryProfileDefWithVoids_type = new entity(strings[1478], false, 46, IFC2X3_IfcArbitraryClosedProfileDef_type); + IFC2X3_IfcBlobTexture_type = new entity(strings[1479], false, 61, IFC2X3_IfcSurfaceTexture_type); + IFC2X3_IfcCenterLineProfileDef_type = new entity(strings[1480], false, 104, IFC2X3_IfcArbitraryOpenProfileDef_type); + IFC2X3_IfcClassificationReference_type = new entity(strings[1481], false, 119, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcColourRgb_type = new entity(strings[1482], false, 125, IFC2X3_IfcColourSpecification_type); + IFC2X3_IfcComplexProperty_type = new entity(strings[1483], false, 131, IFC2X3_IfcProperty_type); + IFC2X3_IfcCompositeProfileDef_type = new entity(strings[1484], false, 134, IFC2X3_IfcProfileDef_type); + IFC2X3_IfcConnectedFaceSet_type = new entity(strings[1485], false, 144, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcConnectionCurveGeometry_type = new entity(strings[1486], false, 145, IFC2X3_IfcConnectionGeometry_type); + IFC2X3_IfcConnectionPointEccentricity_type = new entity(strings[1487], false, 147, IFC2X3_IfcConnectionPointGeometry_type); + IFC2X3_IfcContextDependentUnit_type = new entity(strings[1488], false, 162, IFC2X3_IfcNamedUnit_type); + IFC2X3_IfcConversionBasedUnit_type = new entity(strings[1489], false, 166, IFC2X3_IfcNamedUnit_type); + IFC2X3_IfcCurveStyle_type = new entity(strings[1490], false, 197, IFC2X3_IfcPresentationStyle_type); + IFC2X3_IfcDerivedProfileDef_type = new entity(strings[1491], false, 212, IFC2X3_IfcProfileDef_type); + IFC2X3_IfcDimensionCalloutRelationship_type = new entity(strings[1492], false, 219, IFC2X3_IfcDraughtingCalloutRelationship_type); + IFC2X3_IfcDimensionPair_type = new entity(strings[1493], false, 225, IFC2X3_IfcDraughtingCalloutRelationship_type); + IFC2X3_IfcDocumentReference_type = new entity(strings[1494], false, 244, IFC2X3_IfcExternalReference_type); + IFC2X3_IfcDraughtingPreDefinedTextFont_type = new entity(strings[1495], false, 261, IFC2X3_IfcPreDefinedTextFont_type); + IFC2X3_IfcEdge_type = new entity(strings[1496], false, 269, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcEdgeCurve_type = new entity(strings[1497], false, 270, IFC2X3_IfcEdge_type); + IFC2X3_IfcExtendedMaterialProperties_type = new entity(strings[1498], false, 321, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcFace_type = new entity(strings[1499], false, 328, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcFaceBound_type = new entity(strings[1500], false, 330, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcFaceOuterBound_type = new entity(strings[1501], false, 331, IFC2X3_IfcFaceBound_type); + IFC2X3_IfcFaceSurface_type = new entity(strings[1502], false, 332, IFC2X3_IfcFace_type); + IFC2X3_IfcFailureConnectionCondition_type = new entity(strings[1503], false, 335, IFC2X3_IfcStructuralConnectionCondition_type); + IFC2X3_IfcFillAreaStyle_type = new entity(strings[1504], false, 343, IFC2X3_IfcPresentationStyle_type); + IFC2X3_IfcFuelProperties_type = new entity(strings[1505], false, 380, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcGeneralMaterialProperties_type = new entity(strings[1506], false, 387, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcGeneralProfileProperties_type = new entity(strings[1507], false, 388, IFC2X3_IfcProfileProperties_type); + IFC2X3_IfcGeometricRepresentationContext_type = new entity(strings[1508], false, 391, IFC2X3_IfcRepresentationContext_type); + IFC2X3_IfcGeometricRepresentationItem_type = new entity(strings[1509], true, 392, IFC2X3_IfcRepresentationItem_type); + IFC2X3_IfcGeometricRepresentationSubContext_type = new entity(strings[1510], false, 393, IFC2X3_IfcGeometricRepresentationContext_type); + IFC2X3_IfcGeometricSet_type = new entity(strings[1511], false, 394, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcGridPlacement_type = new entity(strings[1512], false, 400, IFC2X3_IfcObjectPlacement_type); + IFC2X3_IfcHalfSpaceSolid_type = new entity(strings[1513], false, 402, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcHygroscopicMaterialProperties_type = new entity(strings[1514], false, 411, IFC2X3_IfcMaterialProperties_type); + IFC2X3_IfcImageTexture_type = new entity(strings[1515], false, 414, IFC2X3_IfcSurfaceTexture_type); + IFC2X3_IfcIrregularTimeSeries_type = new entity(strings[1516], false, 422, IFC2X3_IfcTimeSeries_type); + IFC2X3_IfcLightSource_type = new entity(strings[1517], true, 446, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcLightSourceAmbient_type = new entity(strings[1518], false, 447, IFC2X3_IfcLightSource_type); + IFC2X3_IfcLightSourceDirectional_type = new entity(strings[1519], false, 448, IFC2X3_IfcLightSource_type); + IFC2X3_IfcLightSourceGoniometric_type = new entity(strings[1520], false, 449, IFC2X3_IfcLightSource_type); + IFC2X3_IfcLightSourcePositional_type = new entity(strings[1521], false, 450, IFC2X3_IfcLightSource_type); + IFC2X3_IfcLightSourceSpot_type = new entity(strings[1522], false, 451, IFC2X3_IfcLightSourcePositional_type); + IFC2X3_IfcLocalPlacement_type = new entity(strings[1523], false, 459, IFC2X3_IfcObjectPlacement_type); + IFC2X3_IfcLoop_type = new entity(strings[1524], false, 463, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcMappedItem_type = new entity(strings[1525], false, 471, IFC2X3_IfcRepresentationItem_type); + IFC2X3_IfcMaterialDefinitionRepresentation_type = new entity(strings[1526], false, 478, IFC2X3_IfcProductRepresentation_type); + IFC2X3_IfcMechanicalConcreteMaterialProperties_type = new entity(strings[1527], false, 487, IFC2X3_IfcMechanicalMaterialProperties_type); + IFC2X3_IfcObjectDefinition_type = new entity(strings[1528], true, 516, IFC2X3_IfcRoot_type); + IFC2X3_IfcOneDirectionRepeatFactor_type = new entity(strings[1529], false, 526, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcOpenShell_type = new entity(strings[1530], false, 528, IFC2X3_IfcConnectedFaceSet_type); + IFC2X3_IfcOrientedEdge_type = new entity(strings[1531], false, 534, IFC2X3_IfcEdge_type); + IFC2X3_IfcParameterizedProfileDef_type = new entity(strings[1532], true, 538, IFC2X3_IfcProfileDef_type); + IFC2X3_IfcPath_type = new entity(strings[1533], false, 540, IFC2X3_IfcTopologicalRepresentationItem_type); + IFC2X3_IfcPhysicalComplexQuantity_type = new entity(strings[1534], false, 548, IFC2X3_IfcPhysicalQuantity_type); + IFC2X3_IfcPixelTexture_type = new entity(strings[1535], false, 559, IFC2X3_IfcSurfaceTexture_type); + IFC2X3_IfcPlacement_type = new entity(strings[1536], true, 560, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcPlanarExtent_type = new entity(strings[1537], false, 562, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcPoint_type = new entity(strings[1538], true, 569, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcPointOnCurve_type = new entity(strings[1539], false, 570, IFC2X3_IfcPoint_type); + IFC2X3_IfcPointOnSurface_type = new entity(strings[1540], false, 571, IFC2X3_IfcPoint_type); + IFC2X3_IfcPolyLoop_type = new entity(strings[1541], false, 575, IFC2X3_IfcLoop_type); + IFC2X3_IfcPolygonalBoundedHalfSpace_type = new entity(strings[1542], false, 573, IFC2X3_IfcHalfSpaceSolid_type); + IFC2X3_IfcPreDefinedColour_type = new entity(strings[1543], true, 582, IFC2X3_IfcPreDefinedItem_type); + IFC2X3_IfcPreDefinedCurveFont_type = new entity(strings[1544], true, 583, IFC2X3_IfcPreDefinedItem_type); + IFC2X3_IfcPreDefinedDimensionSymbol_type = new entity(strings[1545], false, 584, IFC2X3_IfcPreDefinedSymbol_type); + IFC2X3_IfcPreDefinedPointMarkerSymbol_type = new entity(strings[1546], false, 586, IFC2X3_IfcPreDefinedSymbol_type); + IFC2X3_IfcProductDefinitionShape_type = new entity(strings[1547], false, 601, IFC2X3_IfcProductRepresentation_type); + IFC2X3_IfcPropertyBoundedValue_type = new entity(strings[1548], false, 616, IFC2X3_IfcSimpleProperty_type); + IFC2X3_IfcPropertyDefinition_type = new entity(strings[1549], true, 618, IFC2X3_IfcRoot_type); + IFC2X3_IfcPropertyEnumeratedValue_type = new entity(strings[1550], false, 620, IFC2X3_IfcSimpleProperty_type); + IFC2X3_IfcPropertyListValue_type = new entity(strings[1551], false, 622, IFC2X3_IfcSimpleProperty_type); + IFC2X3_IfcPropertyReferenceValue_type = new entity(strings[1552], false, 623, IFC2X3_IfcSimpleProperty_type); + IFC2X3_IfcPropertySetDefinition_type = new entity(strings[1553], true, 625, IFC2X3_IfcPropertyDefinition_type); + IFC2X3_IfcPropertySingleValue_type = new entity(strings[1554], false, 626, IFC2X3_IfcSimpleProperty_type); + IFC2X3_IfcPropertyTableValue_type = new entity(strings[1555], false, 628, IFC2X3_IfcSimpleProperty_type); + IFC2X3_IfcRectangleProfileDef_type = new entity(strings[1556], false, 654, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcRegularTimeSeries_type = new entity(strings[1557], false, 659, IFC2X3_IfcTimeSeries_type); + IFC2X3_IfcReinforcementDefinitionProperties_type = new entity(strings[1558], false, 661, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcRelationship_type = new entity(strings[1559], true, 686, IFC2X3_IfcRoot_type); + IFC2X3_IfcRoundedRectangleProfileDef_type = new entity(strings[1560], false, 737, IFC2X3_IfcRectangleProfileDef_type); + IFC2X3_IfcSectionedSpine_type = new entity(strings[1561], false, 743, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcServiceLifeFactor_type = new entity(strings[1562], false, 752, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcShellBasedSurfaceModel_type = new entity(strings[1563], false, 760, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcSlippageConnectionCondition_type = new entity(strings[1564], false, 771, IFC2X3_IfcStructuralConnectionCondition_type); + IFC2X3_IfcSolidModel_type = new entity(strings[1565], true, 773, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcSoundProperties_type = new entity(strings[1566], false, 776, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcSoundValue_type = new entity(strings[1567], false, 778, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcSpaceThermalLoadProperties_type = new entity(strings[1568], false, 783, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcStructuralLoadLinearForce_type = new entity(strings[1569], false, 816, IFC2X3_IfcStructuralLoadStatic_type); + IFC2X3_IfcStructuralLoadPlanarForce_type = new entity(strings[1570], false, 817, IFC2X3_IfcStructuralLoadStatic_type); + IFC2X3_IfcStructuralLoadSingleDisplacement_type = new entity(strings[1571], false, 818, IFC2X3_IfcStructuralLoadStatic_type); + IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[1572], false, 819, IFC2X3_IfcStructuralLoadSingleDisplacement_type); + IFC2X3_IfcStructuralLoadSingleForce_type = new entity(strings[1573], false, 820, IFC2X3_IfcStructuralLoadStatic_type); + IFC2X3_IfcStructuralLoadSingleForceWarping_type = new entity(strings[1574], false, 821, IFC2X3_IfcStructuralLoadSingleForce_type); + IFC2X3_IfcStructuralProfileProperties_type = new entity(strings[1575], false, 830, IFC2X3_IfcGeneralProfileProperties_type); + IFC2X3_IfcStructuralSteelProfileProperties_type = new entity(strings[1576], false, 833, IFC2X3_IfcStructuralProfileProperties_type); + IFC2X3_IfcSubedge_type = new entity(strings[1577], false, 843, IFC2X3_IfcEdge_type); + IFC2X3_IfcSurface_type = new entity(strings[1578], true, 844, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcSurfaceStyleRendering_type = new entity(strings[1579], false, 854, IFC2X3_IfcSurfaceStyleShading_type); + IFC2X3_IfcSweptAreaSolid_type = new entity(strings[1580], true, 859, IFC2X3_IfcSolidModel_type); + IFC2X3_IfcSweptDiskSolid_type = new entity(strings[1581], false, 860, IFC2X3_IfcSolidModel_type); + IFC2X3_IfcSweptSurface_type = new entity(strings[1582], true, 861, IFC2X3_IfcSurface_type); + IFC2X3_IfcTShapeProfileDef_type = new entity(strings[1583], false, 928, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcTerminatorSymbol_type = new entity(strings[1584], false, 878, IFC2X3_IfcAnnotationSymbolOccurrence_type); + IFC2X3_IfcTextLiteral_type = new entity(strings[1585], false, 884, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcTextLiteralWithExtent_type = new entity(strings[1586], false, 885, IFC2X3_IfcTextLiteral_type); + IFC2X3_IfcTrapeziumProfileDef_type = new entity(strings[1587], false, 924, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcTwoDirectionRepeatFactor_type = new entity(strings[1588], false, 931, IFC2X3_IfcOneDirectionRepeatFactor_type); + IFC2X3_IfcTypeObject_type = new entity(strings[1589], false, 932, IFC2X3_IfcObjectDefinition_type); + IFC2X3_IfcTypeProduct_type = new entity(strings[1590], false, 933, IFC2X3_IfcTypeObject_type); + IFC2X3_IfcUShapeProfileDef_type = new entity(strings[1591], false, 939, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcVector_type = new entity(strings[1592], false, 944, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcVertexLoop_type = new entity(strings[1593], false, 948, IFC2X3_IfcLoop_type); + IFC2X3_IfcWindowLiningProperties_type = new entity(strings[1594], false, 966, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcWindowPanelProperties_type = new entity(strings[1595], false, 969, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcWindowStyle_type = new entity(strings[1596], false, 970, IFC2X3_IfcTypeProduct_type); + IFC2X3_IfcZShapeProfileDef_type = new entity(strings[1597], false, 979, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcClassificationNotationSelect_type = new select_type(strings[1598], 118, { + IFC2X3_IfcClassificationNotation_type, + IFC2X3_IfcClassificationReference_type + }); + IFC2X3_IfcColour_type = new select_type(strings[1599], 123, { + IFC2X3_IfcColourSpecification_type, + IFC2X3_IfcPreDefinedColour_type + }); + IFC2X3_IfcColourOrFactor_type = new select_type(strings[1600], 124, { + IFC2X3_IfcColourRgb_type, + IFC2X3_IfcNormalisedRatioMeasure_type + }); + IFC2X3_IfcCurveStyleFontSelect_type = new select_type(strings[1601], 201, { + IFC2X3_IfcCurveStyleFont_type, + IFC2X3_IfcPreDefinedCurveFont_type + }); + IFC2X3_IfcDocumentSelect_type = new select_type(strings[1602], 245, { + IFC2X3_IfcDocumentInformation_type, + IFC2X3_IfcDocumentReference_type + }); + IFC2X3_IfcHatchLineDistanceSelect_type = new select_type(strings[1603], 403, { + IFC2X3_IfcOneDirectionRepeatFactor_type, + IFC2X3_IfcPositiveLengthMeasure_type + }); + IFC2X3_IfcMeasureValue_type = new select_type(strings[1604], 485, { + IFC2X3_IfcAmountOfSubstanceMeasure_type, + IFC2X3_IfcAreaMeasure_type, + IFC2X3_IfcComplexNumber_type, + IFC2X3_IfcContextDependentMeasure_type, + IFC2X3_IfcCountMeasure_type, + IFC2X3_IfcDescriptiveMeasure_type, + IFC2X3_IfcElectricCurrentMeasure_type, + IFC2X3_IfcLengthMeasure_type, + IFC2X3_IfcLuminousIntensityMeasure_type, + IFC2X3_IfcMassMeasure_type, + IFC2X3_IfcNormalisedRatioMeasure_type, + IFC2X3_IfcNumericMeasure_type, + IFC2X3_IfcParameterValue_type, + IFC2X3_IfcPlaneAngleMeasure_type, + IFC2X3_IfcPositiveLengthMeasure_type, + IFC2X3_IfcPositivePlaneAngleMeasure_type, + IFC2X3_IfcPositiveRatioMeasure_type, + IFC2X3_IfcRatioMeasure_type, + IFC2X3_IfcSolidAngleMeasure_type, + IFC2X3_IfcThermodynamicTemperatureMeasure_type, + IFC2X3_IfcTimeMeasure_type, + IFC2X3_IfcVolumeMeasure_type + }); + IFC2X3_IfcPointOrVertexPoint_type = new select_type(strings[1605], 572, { + IFC2X3_IfcPoint_type, + IFC2X3_IfcVertexPoint_type + }); + IFC2X3_IfcPresentationStyleSelect_type = new select_type(strings[1606], 595, { + IFC2X3_IfcCurveStyle_type, + IFC2X3_IfcFillAreaStyle_type, + IFC2X3_IfcNullStyle_type, + IFC2X3_IfcSurfaceStyle_type, + IFC2X3_IfcSymbolStyle_type, + IFC2X3_IfcTextStyle_type + }); + IFC2X3_IfcSymbolStyleSelect_type = new select_type(strings[1607], 865, { + IFC2X3_IfcColour_type + }); + IFC2X3_IfcValue_type = new select_type(strings[1608], 940, { + IFC2X3_IfcDerivedMeasureValue_type, + IFC2X3_IfcMeasureValue_type, + IFC2X3_IfcSimpleValue_type + }); + IFC2X3_IfcAnnotationCurveOccurrence_type = new entity(strings[1609], false, 28, IFC2X3_IfcAnnotationOccurrence_type); + IFC2X3_IfcAnnotationFillArea_type = new entity(strings[1610], false, 29, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcAnnotationFillAreaOccurrence_type = new entity(strings[1611], false, 30, IFC2X3_IfcAnnotationOccurrence_type); + IFC2X3_IfcAnnotationSurface_type = new entity(strings[1612], false, 32, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcAxis1Placement_type = new entity(strings[1613], false, 52, IFC2X3_IfcPlacement_type); + IFC2X3_IfcAxis2Placement2D_type = new entity(strings[1614], false, 54, IFC2X3_IfcPlacement_type); + IFC2X3_IfcAxis2Placement3D_type = new entity(strings[1615], false, 55, IFC2X3_IfcPlacement_type); + IFC2X3_IfcBooleanResult_type = new entity(strings[1616], false, 69, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcBoundedSurface_type = new entity(strings[1617], false, 76, IFC2X3_IfcSurface_type); + IFC2X3_IfcBoundingBox_type = new entity(strings[1618], false, 77, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcBoxedHalfSpace_type = new entity(strings[1619], false, 79, IFC2X3_IfcHalfSpaceSolid_type); + IFC2X3_IfcCShapeProfileDef_type = new entity(strings[1620], false, 186, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcCartesianPoint_type = new entity(strings[1621], false, 98, IFC2X3_IfcPoint_type); + IFC2X3_IfcCartesianTransformationOperator_type = new entity(strings[1622], true, 99, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcCartesianTransformationOperator2D_type = new entity(strings[1623], false, 100, IFC2X3_IfcCartesianTransformationOperator_type); + IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[1624], false, 101, IFC2X3_IfcCartesianTransformationOperator2D_type); + IFC2X3_IfcCartesianTransformationOperator3D_type = new entity(strings[1625], false, 102, IFC2X3_IfcCartesianTransformationOperator_type); + IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[1626], false, 103, IFC2X3_IfcCartesianTransformationOperator3D_type); + IFC2X3_IfcCircleProfileDef_type = new entity(strings[1627], false, 112, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcClosedShell_type = new entity(strings[1628], false, 120, IFC2X3_IfcConnectedFaceSet_type); + IFC2X3_IfcCompositeCurveSegment_type = new entity(strings[1629], false, 133, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcCraneRailAShapeProfileDef_type = new entity(strings[1630], false, 180, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcCraneRailFShapeProfileDef_type = new entity(strings[1631], false, 181, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcCsgPrimitive3D_type = new entity(strings[1632], true, 183, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcCsgSolid_type = new entity(strings[1633], false, 185, IFC2X3_IfcSolidModel_type); + IFC2X3_IfcCurve_type = new entity(strings[1634], true, 193, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcCurveBoundedPlane_type = new entity(strings[1635], false, 194, IFC2X3_IfcBoundedSurface_type); + IFC2X3_IfcDefinedSymbol_type = new entity(strings[1636], false, 209, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcDimensionCurve_type = new entity(strings[1637], false, 221, IFC2X3_IfcAnnotationCurveOccurrence_type); + IFC2X3_IfcDimensionCurveTerminator_type = new entity(strings[1638], false, 223, IFC2X3_IfcTerminatorSymbol_type); + IFC2X3_IfcDirection_type = new entity(strings[1639], false, 226, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcDoorLiningProperties_type = new entity(strings[1640], false, 248, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcDoorPanelProperties_type = new entity(strings[1641], false, 251, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcDoorStyle_type = new entity(strings[1642], false, 252, IFC2X3_IfcTypeProduct_type); + IFC2X3_IfcDraughtingCallout_type = new entity(strings[1643], false, 256, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcDraughtingPreDefinedColour_type = new entity(strings[1644], false, 259, IFC2X3_IfcPreDefinedColour_type); + IFC2X3_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[1645], false, 260, IFC2X3_IfcPreDefinedCurveFont_type); + IFC2X3_IfcEdgeLoop_type = new entity(strings[1646], false, 272, IFC2X3_IfcLoop_type); + IFC2X3_IfcElementQuantity_type = new entity(strings[1647], false, 304, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcElementType_type = new entity(strings[1648], true, 305, IFC2X3_IfcTypeProduct_type); + IFC2X3_IfcElementarySurface_type = new entity(strings[1649], true, 298, IFC2X3_IfcSurface_type); + IFC2X3_IfcEllipseProfileDef_type = new entity(strings[1650], false, 307, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcEnergyProperties_type = new entity(strings[1651], false, 311, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcExtrudedAreaSolid_type = new entity(strings[1652], false, 327, IFC2X3_IfcSweptAreaSolid_type); + IFC2X3_IfcFaceBasedSurfaceModel_type = new entity(strings[1653], false, 329, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcFillAreaStyleHatching_type = new entity(strings[1654], false, 344, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type = new entity(strings[1655], false, 347, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcFillAreaStyleTiles_type = new entity(strings[1656], false, 345, IFC2X3_IfcGeometricRepresentationItem_type); + IFC2X3_IfcFluidFlowProperties_type = new entity(strings[1657], false, 372, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcFurnishingElementType_type = new entity(strings[1658], false, 382, IFC2X3_IfcElementType_type); + IFC2X3_IfcFurnitureType_type = new entity(strings[1659], false, 384, IFC2X3_IfcFurnishingElementType_type); + IFC2X3_IfcGeometricCurveSet_type = new entity(strings[1660], false, 389, IFC2X3_IfcGeometricSet_type); + IFC2X3_IfcIShapeProfileDef_type = new entity(strings[1661], false, 424, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcLShapeProfileDef_type = new entity(strings[1662], false, 464, IFC2X3_IfcParameterizedProfileDef_type); + IFC2X3_IfcLine_type = new entity(strings[1663], false, 452, IFC2X3_IfcCurve_type); + IFC2X3_IfcManifoldSolidBrep_type = new entity(strings[1664], true, 470, IFC2X3_IfcSolidModel_type); + IFC2X3_IfcObject_type = new entity(strings[1665], true, 515, IFC2X3_IfcObjectDefinition_type); + IFC2X3_IfcOffsetCurve2D_type = new entity(strings[1666], false, 524, IFC2X3_IfcCurve_type); + IFC2X3_IfcOffsetCurve3D_type = new entity(strings[1667], false, 525, IFC2X3_IfcCurve_type); + IFC2X3_IfcPermeableCoveringProperties_type = new entity(strings[1668], false, 543, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcPlanarBox_type = new entity(strings[1669], false, 561, IFC2X3_IfcPlanarExtent_type); + IFC2X3_IfcPlane_type = new entity(strings[1670], false, 564, IFC2X3_IfcElementarySurface_type); + IFC2X3_IfcProcess_type = new entity(strings[1671], true, 599, IFC2X3_IfcObject_type); + IFC2X3_IfcProduct_type = new entity(strings[1672], true, 600, IFC2X3_IfcObject_type); + IFC2X3_IfcProject_type = new entity(strings[1673], false, 607, IFC2X3_IfcObject_type); + IFC2X3_IfcProjectionCurve_type = new entity(strings[1674], false, 609, IFC2X3_IfcAnnotationCurveOccurrence_type); + IFC2X3_IfcPropertySet_type = new entity(strings[1675], false, 624, IFC2X3_IfcPropertySetDefinition_type); + IFC2X3_IfcProxy_type = new entity(strings[1676], false, 631, IFC2X3_IfcProduct_type); + IFC2X3_IfcRectangleHollowProfileDef_type = new entity(strings[1677], false, 653, IFC2X3_IfcRectangleProfileDef_type); + IFC2X3_IfcRectangularPyramid_type = new entity(strings[1678], false, 655, IFC2X3_IfcCsgPrimitive3D_type); + IFC2X3_IfcRectangularTrimmedSurface_type = new entity(strings[1679], false, 656, IFC2X3_IfcBoundedSurface_type); + IFC2X3_IfcRelAssigns_type = new entity(strings[1680], true, 668, IFC2X3_IfcRelationship_type); + IFC2X3_IfcRelAssignsToActor_type = new entity(strings[1681], false, 670, IFC2X3_IfcRelAssigns_type); + IFC2X3_IfcRelAssignsToControl_type = new entity(strings[1682], false, 671, IFC2X3_IfcRelAssigns_type); + IFC2X3_IfcRelAssignsToGroup_type = new entity(strings[1683], false, 672, IFC2X3_IfcRelAssigns_type); + IFC2X3_IfcRelAssignsToProcess_type = new entity(strings[1684], false, 673, IFC2X3_IfcRelAssigns_type); + IFC2X3_IfcRelAssignsToProduct_type = new entity(strings[1685], false, 674, IFC2X3_IfcRelAssigns_type); + IFC2X3_IfcRelAssignsToProjectOrder_type = new entity(strings[1686], false, 675, IFC2X3_IfcRelAssignsToControl_type); + IFC2X3_IfcRelAssignsToResource_type = new entity(strings[1687], false, 676, IFC2X3_IfcRelAssigns_type); + IFC2X3_IfcRelAssociates_type = new entity(strings[1688], false, 677, IFC2X3_IfcRelationship_type); + IFC2X3_IfcRelAssociatesAppliedValue_type = new entity(strings[1689], false, 678, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesApproval_type = new entity(strings[1690], false, 679, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesClassification_type = new entity(strings[1691], false, 680, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesConstraint_type = new entity(strings[1692], false, 681, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesDocument_type = new entity(strings[1693], false, 682, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesLibrary_type = new entity(strings[1694], false, 683, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesMaterial_type = new entity(strings[1695], false, 684, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelAssociatesProfileProperties_type = new entity(strings[1696], false, 685, IFC2X3_IfcRelAssociates_type); + IFC2X3_IfcRelConnects_type = new entity(strings[1697], true, 688, IFC2X3_IfcRelationship_type); + IFC2X3_IfcRelConnectsElements_type = new entity(strings[1698], false, 689, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelConnectsPathElements_type = new entity(strings[1699], false, 690, IFC2X3_IfcRelConnectsElements_type); + IFC2X3_IfcRelConnectsPortToElement_type = new entity(strings[1700], false, 692, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelConnectsPorts_type = new entity(strings[1701], false, 691, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelConnectsStructuralActivity_type = new entity(strings[1702], false, 693, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelConnectsStructuralElement_type = new entity(strings[1703], false, 694, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelConnectsStructuralMember_type = new entity(strings[1704], false, 695, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelConnectsWithEccentricity_type = new entity(strings[1705], false, 696, IFC2X3_IfcRelConnectsStructuralMember_type); + IFC2X3_IfcRelConnectsWithRealizingElements_type = new entity(strings[1706], false, 697, IFC2X3_IfcRelConnectsElements_type); + IFC2X3_IfcRelContainedInSpatialStructure_type = new entity(strings[1707], false, 698, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelCoversBldgElements_type = new entity(strings[1708], false, 699, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelCoversSpaces_type = new entity(strings[1709], false, 700, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelDecomposes_type = new entity(strings[1710], true, 701, IFC2X3_IfcRelationship_type); + IFC2X3_IfcRelDefines_type = new entity(strings[1711], true, 702, IFC2X3_IfcRelationship_type); + IFC2X3_IfcRelDefinesByProperties_type = new entity(strings[1712], false, 703, IFC2X3_IfcRelDefines_type); + IFC2X3_IfcRelDefinesByType_type = new entity(strings[1713], false, 704, IFC2X3_IfcRelDefines_type); + IFC2X3_IfcRelFillsElement_type = new entity(strings[1714], false, 705, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelFlowControlElements_type = new entity(strings[1715], false, 706, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelInteractionRequirements_type = new entity(strings[1716], false, 707, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelNests_type = new entity(strings[1717], false, 708, IFC2X3_IfcRelDecomposes_type); + IFC2X3_IfcRelOccupiesSpaces_type = new entity(strings[1718], false, 709, IFC2X3_IfcRelAssignsToActor_type); + IFC2X3_IfcRelOverridesProperties_type = new entity(strings[1719], false, 710, IFC2X3_IfcRelDefinesByProperties_type); + IFC2X3_IfcRelProjectsElement_type = new entity(strings[1720], false, 711, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelReferencedInSpatialStructure_type = new entity(strings[1721], false, 712, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelSchedulesCostItems_type = new entity(strings[1722], false, 713, IFC2X3_IfcRelAssignsToControl_type); + IFC2X3_IfcRelSequence_type = new entity(strings[1723], false, 714, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelServicesBuildings_type = new entity(strings[1724], false, 715, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelSpaceBoundary_type = new entity(strings[1725], false, 716, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcRelVoidsElement_type = new entity(strings[1726], false, 717, IFC2X3_IfcRelConnects_type); + IFC2X3_IfcResource_type = new entity(strings[1727], true, 722, IFC2X3_IfcObject_type); + IFC2X3_IfcRevolvedAreaSolid_type = new entity(strings[1728], false, 724, IFC2X3_IfcSweptAreaSolid_type); + IFC2X3_IfcRightCircularCone_type = new entity(strings[1729], false, 727, IFC2X3_IfcCsgPrimitive3D_type); + IFC2X3_IfcRightCircularCylinder_type = new entity(strings[1730], false, 728, IFC2X3_IfcCsgPrimitive3D_type); + IFC2X3_IfcSpatialStructureElement_type = new entity(strings[1731], true, 786, IFC2X3_IfcProduct_type); + IFC2X3_IfcSpatialStructureElementType_type = new entity(strings[1732], true, 787, IFC2X3_IfcElementType_type); + IFC2X3_IfcSphere_type = new entity(strings[1733], false, 792, IFC2X3_IfcCsgPrimitive3D_type); + IFC2X3_IfcStructuralActivity_type = new entity(strings[1734], true, 802, IFC2X3_IfcProduct_type); + IFC2X3_IfcStructuralItem_type = new entity(strings[1735], true, 811, IFC2X3_IfcProduct_type); + IFC2X3_IfcStructuralMember_type = new entity(strings[1736], true, 824, IFC2X3_IfcStructuralItem_type); + IFC2X3_IfcStructuralReaction_type = new entity(strings[1737], true, 831, IFC2X3_IfcStructuralActivity_type); + IFC2X3_IfcStructuralSurfaceMember_type = new entity(strings[1738], false, 835, IFC2X3_IfcStructuralMember_type); + IFC2X3_IfcStructuralSurfaceMemberVarying_type = new entity(strings[1739], false, 836, IFC2X3_IfcStructuralSurfaceMember_type); + IFC2X3_IfcStructuredDimensionCallout_type = new entity(strings[1740], false, 838, IFC2X3_IfcDraughtingCallout_type); + IFC2X3_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[1741], false, 845, IFC2X3_IfcSweptAreaSolid_type); + IFC2X3_IfcSurfaceOfLinearExtrusion_type = new entity(strings[1742], false, 846, IFC2X3_IfcSweptSurface_type); + IFC2X3_IfcSurfaceOfRevolution_type = new entity(strings[1743], false, 847, IFC2X3_IfcSweptSurface_type); + IFC2X3_IfcSystemFurnitureElementType_type = new entity(strings[1744], false, 867, IFC2X3_IfcFurnishingElementType_type); + IFC2X3_IfcTask_type = new entity(strings[1745], false, 872, IFC2X3_IfcProcess_type); + IFC2X3_IfcTransportElementType_type = new entity(strings[1746], false, 922, IFC2X3_IfcElementType_type); + IFC2X3_IfcAxis2Placement_type = new select_type(strings[1747], 53, { + IFC2X3_IfcAxis2Placement2D_type, + IFC2X3_IfcAxis2Placement3D_type + }); + IFC2X3_IfcBooleanOperand_type = new select_type(strings[1748], 67, { + IFC2X3_IfcBooleanResult_type, + IFC2X3_IfcCsgPrimitive3D_type, + IFC2X3_IfcHalfSpaceSolid_type, + IFC2X3_IfcSolidModel_type + }); + IFC2X3_IfcCsgSelect_type = new select_type(strings[1749], 184, { + IFC2X3_IfcBooleanResult_type, + IFC2X3_IfcCsgPrimitive3D_type + }); + IFC2X3_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[1750], 195, { + IFC2X3_IfcCurveStyleFontAndScaling_type, + IFC2X3_IfcCurveStyleFontSelect_type + }); + IFC2X3_IfcDraughtingCalloutElement_type = new select_type(strings[1751], 257, { + IFC2X3_IfcAnnotationCurveOccurrence_type, + IFC2X3_IfcAnnotationSymbolOccurrence_type, + IFC2X3_IfcAnnotationTextOccurrence_type + }); + IFC2X3_IfcFillAreaStyleTileShapeSelect_type = new select_type(strings[1752], 346, { + IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type + }); + IFC2X3_IfcFillStyleSelect_type = new select_type(strings[1753], 348, { + IFC2X3_IfcColour_type, + IFC2X3_IfcExternallyDefinedHatchStyle_type, + IFC2X3_IfcFillAreaStyleHatching_type, + IFC2X3_IfcFillAreaStyleTiles_type + }); + IFC2X3_IfcGeometricSetSelect_type = new select_type(strings[1754], 395, { + IFC2X3_IfcCurve_type, + IFC2X3_IfcPoint_type, + IFC2X3_IfcSurface_type + }); + IFC2X3_IfcOrientationSelect_type = new select_type(strings[1755], 533, { + IFC2X3_IfcDirection_type, + IFC2X3_IfcPlaneAngleMeasure_type + }); + IFC2X3_IfcShell_type = new select_type(strings[1756], 759, { + IFC2X3_IfcClosedShell_type, + IFC2X3_IfcOpenShell_type + }); + IFC2X3_IfcSurfaceOrFaceSurface_type = new select_type(strings[1757], 848, { + IFC2X3_IfcFaceBasedSurfaceModel_type, + IFC2X3_IfcFaceSurface_type, + IFC2X3_IfcSurface_type + }); + IFC2X3_IfcTrimmingSelect_type = new select_type(strings[1758], 927, { + IFC2X3_IfcCartesianPoint_type, + IFC2X3_IfcParameterValue_type + }); + IFC2X3_IfcVectorOrDirection_type = new select_type(strings[1759], 945, { + IFC2X3_IfcDirection_type, + IFC2X3_IfcVector_type + }); + IFC2X3_IfcActor_type = new entity(strings[1760], false, 6, IFC2X3_IfcObject_type); + IFC2X3_IfcAnnotation_type = new entity(strings[1761], false, 27, IFC2X3_IfcProduct_type); + IFC2X3_IfcAsymmetricIShapeProfileDef_type = new entity(strings[1762], false, 51, IFC2X3_IfcIShapeProfileDef_type); + IFC2X3_IfcBlock_type = new entity(strings[1763], false, 62, IFC2X3_IfcCsgPrimitive3D_type); + IFC2X3_IfcBooleanClippingResult_type = new entity(strings[1764], false, 66, IFC2X3_IfcBooleanResult_type); + IFC2X3_IfcBoundedCurve_type = new entity(strings[1765], true, 75, IFC2X3_IfcCurve_type); + IFC2X3_IfcBuilding_type = new entity(strings[1766], false, 82, IFC2X3_IfcSpatialStructureElement_type); + IFC2X3_IfcBuildingElementType_type = new entity(strings[1767], true, 89, IFC2X3_IfcElementType_type); + IFC2X3_IfcBuildingStorey_type = new entity(strings[1768], false, 90, IFC2X3_IfcSpatialStructureElement_type); + IFC2X3_IfcCircleHollowProfileDef_type = new entity(strings[1769], false, 111, IFC2X3_IfcCircleProfileDef_type); + IFC2X3_IfcColumnType_type = new entity(strings[1770], false, 128, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcCompositeCurve_type = new entity(strings[1771], false, 132, IFC2X3_IfcBoundedCurve_type); + IFC2X3_IfcConic_type = new entity(strings[1772], true, 143, IFC2X3_IfcCurve_type); + IFC2X3_IfcConstructionResource_type = new entity(strings[1773], true, 160, IFC2X3_IfcResource_type); + IFC2X3_IfcControl_type = new entity(strings[1774], true, 163, IFC2X3_IfcObject_type); + IFC2X3_IfcCostItem_type = new entity(strings[1775], false, 172, IFC2X3_IfcControl_type); + IFC2X3_IfcCostSchedule_type = new entity(strings[1776], false, 173, IFC2X3_IfcControl_type); + IFC2X3_IfcCoveringType_type = new entity(strings[1777], false, 178, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcCrewResource_type = new entity(strings[1778], false, 182, IFC2X3_IfcConstructionResource_type); + IFC2X3_IfcCurtainWallType_type = new entity(strings[1779], false, 190, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcDimensionCurveDirectedCallout_type = new entity(strings[1780], false, 222, IFC2X3_IfcDraughtingCallout_type); + IFC2X3_IfcDistributionElementType_type = new entity(strings[1781], false, 236, IFC2X3_IfcElementType_type); + IFC2X3_IfcDistributionFlowElementType_type = new entity(strings[1782], true, 238, IFC2X3_IfcDistributionElementType_type); + IFC2X3_IfcElectricalBaseProperties_type = new entity(strings[1783], false, 273, IFC2X3_IfcEnergyProperties_type); + IFC2X3_IfcElement_type = new entity(strings[1784], true, 297, IFC2X3_IfcProduct_type); + IFC2X3_IfcElementAssembly_type = new entity(strings[1785], false, 299, IFC2X3_IfcElement_type); + IFC2X3_IfcElementComponent_type = new entity(strings[1786], true, 301, IFC2X3_IfcElement_type); + IFC2X3_IfcElementComponentType_type = new entity(strings[1787], true, 302, IFC2X3_IfcElementType_type); + IFC2X3_IfcEllipse_type = new entity(strings[1788], false, 306, IFC2X3_IfcConic_type); + IFC2X3_IfcEnergyConversionDeviceType_type = new entity(strings[1789], true, 309, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcEquipmentElement_type = new entity(strings[1790], false, 315, IFC2X3_IfcElement_type); + IFC2X3_IfcEquipmentStandard_type = new entity(strings[1791], false, 316, IFC2X3_IfcControl_type); + IFC2X3_IfcEvaporativeCoolerType_type = new entity(strings[1792], false, 317, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcEvaporatorType_type = new entity(strings[1793], false, 319, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcFacetedBrep_type = new entity(strings[1794], false, 333, IFC2X3_IfcManifoldSolidBrep_type); + IFC2X3_IfcFacetedBrepWithVoids_type = new entity(strings[1795], false, 334, IFC2X3_IfcManifoldSolidBrep_type); + IFC2X3_IfcFastener_type = new entity(strings[1796], false, 338, IFC2X3_IfcElementComponent_type); + IFC2X3_IfcFastenerType_type = new entity(strings[1797], false, 339, IFC2X3_IfcElementComponentType_type); + IFC2X3_IfcFeatureElement_type = new entity(strings[1798], true, 340, IFC2X3_IfcElement_type); + IFC2X3_IfcFeatureElementAddition_type = new entity(strings[1799], true, 341, IFC2X3_IfcFeatureElement_type); + IFC2X3_IfcFeatureElementSubtraction_type = new entity(strings[1800], true, 342, IFC2X3_IfcFeatureElement_type); + IFC2X3_IfcFlowControllerType_type = new entity(strings[1801], true, 354, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFlowFittingType_type = new entity(strings[1802], true, 357, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFlowMeterType_type = new entity(strings[1803], false, 360, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcFlowMovingDeviceType_type = new entity(strings[1804], true, 363, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFlowSegmentType_type = new entity(strings[1805], true, 365, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFlowStorageDeviceType_type = new entity(strings[1806], true, 367, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFlowTerminalType_type = new entity(strings[1807], true, 369, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFlowTreatmentDeviceType_type = new entity(strings[1808], true, 371, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcFurnishingElement_type = new entity(strings[1809], false, 381, IFC2X3_IfcElement_type); + IFC2X3_IfcFurnitureStandard_type = new entity(strings[1810], false, 383, IFC2X3_IfcControl_type); + IFC2X3_IfcGasTerminalType_type = new entity(strings[1811], false, 385, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcGrid_type = new entity(strings[1812], false, 398, IFC2X3_IfcProduct_type); + IFC2X3_IfcGroup_type = new entity(strings[1813], false, 401, IFC2X3_IfcObject_type); + IFC2X3_IfcHeatExchangerType_type = new entity(strings[1814], false, 404, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcHumidifierType_type = new entity(strings[1815], false, 409, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcInventory_type = new entity(strings[1816], false, 419, IFC2X3_IfcGroup_type); + IFC2X3_IfcJunctionBoxType_type = new entity(strings[1817], false, 426, IFC2X3_IfcFlowFittingType_type); + IFC2X3_IfcLaborResource_type = new entity(strings[1818], false, 430, IFC2X3_IfcConstructionResource_type); + IFC2X3_IfcLampType_type = new entity(strings[1819], false, 431, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcLightFixtureType_type = new entity(strings[1820], false, 443, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcLinearDimension_type = new entity(strings[1821], false, 453, IFC2X3_IfcDimensionCurveDirectedCallout_type); + IFC2X3_IfcMechanicalFastener_type = new entity(strings[1822], false, 488, IFC2X3_IfcFastener_type); + IFC2X3_IfcMechanicalFastenerType_type = new entity(strings[1823], false, 489, IFC2X3_IfcFastenerType_type); + IFC2X3_IfcMemberType_type = new entity(strings[1824], false, 493, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcMotorConnectionType_type = new entity(strings[1825], false, 508, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcMove_type = new entity(strings[1826], false, 510, IFC2X3_IfcTask_type); + IFC2X3_IfcOccupant_type = new entity(strings[1827], false, 522, IFC2X3_IfcActor_type); + IFC2X3_IfcOpeningElement_type = new entity(strings[1828], false, 527, IFC2X3_IfcFeatureElementSubtraction_type); + IFC2X3_IfcOrderAction_type = new entity(strings[1829], false, 530, IFC2X3_IfcTask_type); + IFC2X3_IfcOutletType_type = new entity(strings[1830], false, 535, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcPerformanceHistory_type = new entity(strings[1831], false, 541, IFC2X3_IfcControl_type); + IFC2X3_IfcPermit_type = new entity(strings[1832], false, 544, IFC2X3_IfcControl_type); + IFC2X3_IfcPipeFittingType_type = new entity(strings[1833], false, 555, IFC2X3_IfcFlowFittingType_type); + IFC2X3_IfcPipeSegmentType_type = new entity(strings[1834], false, 557, IFC2X3_IfcFlowSegmentType_type); + IFC2X3_IfcPlateType_type = new entity(strings[1835], false, 567, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcPolyline_type = new entity(strings[1836], false, 574, IFC2X3_IfcBoundedCurve_type); + IFC2X3_IfcPort_type = new entity(strings[1837], true, 576, IFC2X3_IfcProduct_type); + IFC2X3_IfcProcedure_type = new entity(strings[1838], false, 597, IFC2X3_IfcProcess_type); + IFC2X3_IfcProjectOrder_type = new entity(strings[1839], false, 611, IFC2X3_IfcControl_type); + IFC2X3_IfcProjectOrderRecord_type = new entity(strings[1840], false, 612, IFC2X3_IfcControl_type); + IFC2X3_IfcProjectionElement_type = new entity(strings[1841], false, 610, IFC2X3_IfcFeatureElementAddition_type); + IFC2X3_IfcProtectiveDeviceType_type = new entity(strings[1842], false, 629, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcPumpType_type = new entity(strings[1843], false, 632, IFC2X3_IfcFlowMovingDeviceType_type); + IFC2X3_IfcRadiusDimension_type = new entity(strings[1844], false, 641, IFC2X3_IfcDimensionCurveDirectedCallout_type); + IFC2X3_IfcRailingType_type = new entity(strings[1845], false, 643, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcRampFlightType_type = new entity(strings[1846], false, 647, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcRelAggregates_type = new entity(strings[1847], false, 667, IFC2X3_IfcRelDecomposes_type); + IFC2X3_IfcRelAssignsTasks_type = new entity(strings[1848], false, 669, IFC2X3_IfcRelAssignsToControl_type); + IFC2X3_IfcSanitaryTerminalType_type = new entity(strings[1849], false, 738, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcScheduleTimeControl_type = new entity(strings[1850], false, 740, IFC2X3_IfcControl_type); + IFC2X3_IfcServiceLife_type = new entity(strings[1851], false, 751, IFC2X3_IfcControl_type); + IFC2X3_IfcSite_type = new entity(strings[1852], false, 764, IFC2X3_IfcSpatialStructureElement_type); + IFC2X3_IfcSlabType_type = new entity(strings[1853], false, 769, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcSpace_type = new entity(strings[1854], false, 779, IFC2X3_IfcSpatialStructureElement_type); + IFC2X3_IfcSpaceHeaterType_type = new entity(strings[1855], false, 780, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcSpaceProgram_type = new entity(strings[1856], false, 782, IFC2X3_IfcControl_type); + IFC2X3_IfcSpaceType_type = new entity(strings[1857], false, 784, IFC2X3_IfcSpatialStructureElementType_type); + IFC2X3_IfcStackTerminalType_type = new entity(strings[1858], false, 793, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcStairFlightType_type = new entity(strings[1859], false, 797, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcStructuralAction_type = new entity(strings[1860], true, 801, IFC2X3_IfcStructuralActivity_type); + IFC2X3_IfcStructuralConnection_type = new entity(strings[1861], true, 805, IFC2X3_IfcStructuralItem_type); + IFC2X3_IfcStructuralCurveConnection_type = new entity(strings[1862], false, 807, IFC2X3_IfcStructuralConnection_type); + IFC2X3_IfcStructuralCurveMember_type = new entity(strings[1863], false, 808, IFC2X3_IfcStructuralMember_type); + IFC2X3_IfcStructuralCurveMemberVarying_type = new entity(strings[1864], false, 809, IFC2X3_IfcStructuralCurveMember_type); + IFC2X3_IfcStructuralLinearAction_type = new entity(strings[1865], false, 812, IFC2X3_IfcStructuralAction_type); + IFC2X3_IfcStructuralLinearActionVarying_type = new entity(strings[1866], false, 813, IFC2X3_IfcStructuralLinearAction_type); + IFC2X3_IfcStructuralLoadGroup_type = new entity(strings[1867], false, 815, IFC2X3_IfcGroup_type); + IFC2X3_IfcStructuralPlanarAction_type = new entity(strings[1868], false, 825, IFC2X3_IfcStructuralAction_type); + IFC2X3_IfcStructuralPlanarActionVarying_type = new entity(strings[1869], false, 826, IFC2X3_IfcStructuralPlanarAction_type); + IFC2X3_IfcStructuralPointAction_type = new entity(strings[1870], false, 827, IFC2X3_IfcStructuralAction_type); + IFC2X3_IfcStructuralPointConnection_type = new entity(strings[1871], false, 828, IFC2X3_IfcStructuralConnection_type); + IFC2X3_IfcStructuralPointReaction_type = new entity(strings[1872], false, 829, IFC2X3_IfcStructuralReaction_type); + IFC2X3_IfcStructuralResultGroup_type = new entity(strings[1873], false, 832, IFC2X3_IfcGroup_type); + IFC2X3_IfcStructuralSurfaceConnection_type = new entity(strings[1874], false, 834, IFC2X3_IfcStructuralConnection_type); + IFC2X3_IfcSubContractResource_type = new entity(strings[1875], false, 842, IFC2X3_IfcConstructionResource_type); + IFC2X3_IfcSwitchingDeviceType_type = new entity(strings[1876], false, 862, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcSystem_type = new entity(strings[1877], false, 866, IFC2X3_IfcGroup_type); + IFC2X3_IfcTankType_type = new entity(strings[1878], false, 870, IFC2X3_IfcFlowStorageDeviceType_type); + IFC2X3_IfcTimeSeriesSchedule_type = new entity(strings[1879], false, 911, IFC2X3_IfcControl_type); + IFC2X3_IfcTransformerType_type = new entity(strings[1880], false, 918, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcTransportElement_type = new entity(strings[1881], false, 921, IFC2X3_IfcElement_type); + IFC2X3_IfcTrimmedCurve_type = new entity(strings[1882], false, 925, IFC2X3_IfcBoundedCurve_type); + IFC2X3_IfcTubeBundleType_type = new entity(strings[1883], false, 929, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcUnitaryEquipmentType_type = new entity(strings[1884], false, 935, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcValveType_type = new entity(strings[1885], false, 941, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcVirtualElement_type = new entity(strings[1886], false, 952, IFC2X3_IfcElement_type); + IFC2X3_IfcWallType_type = new entity(strings[1887], false, 958, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcWasteTerminalType_type = new entity(strings[1888], false, 962, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcWorkControl_type = new entity(strings[1889], true, 973, IFC2X3_IfcControl_type); + IFC2X3_IfcWorkPlan_type = new entity(strings[1890], false, 975, IFC2X3_IfcWorkControl_type); + IFC2X3_IfcWorkSchedule_type = new entity(strings[1891], false, 976, IFC2X3_IfcWorkControl_type); + IFC2X3_IfcZone_type = new entity(strings[1892], false, 978, IFC2X3_IfcGroup_type); + IFC2X3_IfcCurveOrEdgeCurve_type = new select_type(strings[1893], 196, { + IFC2X3_IfcBoundedCurve_type, + IFC2X3_IfcEdgeCurve_type + }); + IFC2X3_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[1894], 803, { + IFC2X3_IfcElement_type, + IFC2X3_IfcStructuralItem_type + }); + IFC2X3_Ifc2DCompositeCurve_type = new entity(strings[1895], false, 0, IFC2X3_IfcCompositeCurve_type); + IFC2X3_IfcActionRequest_type = new entity(strings[1896], false, 3, IFC2X3_IfcControl_type); + IFC2X3_IfcAirTerminalBoxType_type = new entity(strings[1897], false, 14, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcAirTerminalType_type = new entity(strings[1898], false, 16, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcAirToAirHeatRecoveryType_type = new entity(strings[1899], false, 18, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcAngularDimension_type = new entity(strings[1900], false, 25, IFC2X3_IfcDimensionCurveDirectedCallout_type); + IFC2X3_IfcAsset_type = new entity(strings[1901], false, 50, IFC2X3_IfcGroup_type); + IFC2X3_IfcBSplineCurve_type = new entity(strings[1902], true, 80, IFC2X3_IfcBoundedCurve_type); + IFC2X3_IfcBeamType_type = new entity(strings[1903], false, 57, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcBezierCurve_type = new entity(strings[1904], false, 60, IFC2X3_IfcBSplineCurve_type); + IFC2X3_IfcBoilerType_type = new entity(strings[1905], false, 63, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcBuildingElement_type = new entity(strings[1906], true, 83, IFC2X3_IfcElement_type); + IFC2X3_IfcBuildingElementComponent_type = new entity(strings[1907], true, 84, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcBuildingElementPart_type = new entity(strings[1908], false, 85, IFC2X3_IfcBuildingElementComponent_type); + IFC2X3_IfcBuildingElementProxy_type = new entity(strings[1909], false, 86, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcBuildingElementProxyType_type = new entity(strings[1910], false, 87, IFC2X3_IfcBuildingElementType_type); + IFC2X3_IfcCableCarrierFittingType_type = new entity(strings[1911], false, 91, IFC2X3_IfcFlowFittingType_type); + IFC2X3_IfcCableCarrierSegmentType_type = new entity(strings[1912], false, 93, IFC2X3_IfcFlowSegmentType_type); + IFC2X3_IfcCableSegmentType_type = new entity(strings[1913], false, 95, IFC2X3_IfcFlowSegmentType_type); + IFC2X3_IfcChillerType_type = new entity(strings[1914], false, 108, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcCircle_type = new entity(strings[1915], false, 110, IFC2X3_IfcConic_type); + IFC2X3_IfcCoilType_type = new entity(strings[1916], false, 121, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcColumn_type = new entity(strings[1917], false, 127, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcCompressorType_type = new entity(strings[1918], false, 136, IFC2X3_IfcFlowMovingDeviceType_type); + IFC2X3_IfcCondenserType_type = new entity(strings[1919], false, 138, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcCondition_type = new entity(strings[1920], false, 140, IFC2X3_IfcGroup_type); + IFC2X3_IfcConditionCriterion_type = new entity(strings[1921], false, 141, IFC2X3_IfcControl_type); + IFC2X3_IfcConstructionEquipmentResource_type = new entity(strings[1922], false, 157, IFC2X3_IfcConstructionResource_type); + IFC2X3_IfcConstructionMaterialResource_type = new entity(strings[1923], false, 158, IFC2X3_IfcConstructionResource_type); + IFC2X3_IfcConstructionProductResource_type = new entity(strings[1924], false, 159, IFC2X3_IfcConstructionResource_type); + IFC2X3_IfcCooledBeamType_type = new entity(strings[1925], false, 167, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcCoolingTowerType_type = new entity(strings[1926], false, 169, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcCovering_type = new entity(strings[1927], false, 177, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcCurtainWall_type = new entity(strings[1928], false, 189, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcDamperType_type = new entity(strings[1929], false, 202, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcDiameterDimension_type = new entity(strings[1930], false, 217, IFC2X3_IfcDimensionCurveDirectedCallout_type); + IFC2X3_IfcDiscreteAccessory_type = new entity(strings[1931], false, 228, IFC2X3_IfcElementComponent_type); + IFC2X3_IfcDiscreteAccessoryType_type = new entity(strings[1932], false, 229, IFC2X3_IfcElementComponentType_type); + IFC2X3_IfcDistributionChamberElementType_type = new entity(strings[1933], false, 231, IFC2X3_IfcDistributionFlowElementType_type); + IFC2X3_IfcDistributionControlElementType_type = new entity(strings[1934], true, 234, IFC2X3_IfcDistributionElementType_type); + IFC2X3_IfcDistributionElement_type = new entity(strings[1935], false, 235, IFC2X3_IfcElement_type); + IFC2X3_IfcDistributionFlowElement_type = new entity(strings[1936], false, 237, IFC2X3_IfcDistributionElement_type); + IFC2X3_IfcDistributionPort_type = new entity(strings[1937], false, 239, IFC2X3_IfcPort_type); + IFC2X3_IfcDoor_type = new entity(strings[1938], false, 247, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcDuctFittingType_type = new entity(strings[1939], false, 262, IFC2X3_IfcFlowFittingType_type); + IFC2X3_IfcDuctSegmentType_type = new entity(strings[1940], false, 264, IFC2X3_IfcFlowSegmentType_type); + IFC2X3_IfcDuctSilencerType_type = new entity(strings[1941], false, 266, IFC2X3_IfcFlowTreatmentDeviceType_type); + IFC2X3_IfcEdgeFeature_type = new entity(strings[1942], true, 271, IFC2X3_IfcFeatureElementSubtraction_type); + IFC2X3_IfcElectricApplianceType_type = new entity(strings[1943], false, 276, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcElectricFlowStorageDeviceType_type = new entity(strings[1944], false, 285, IFC2X3_IfcFlowStorageDeviceType_type); + IFC2X3_IfcElectricGeneratorType_type = new entity(strings[1945], false, 287, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcElectricHeaterType_type = new entity(strings[1946], false, 289, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcElectricMotorType_type = new entity(strings[1947], false, 291, IFC2X3_IfcEnergyConversionDeviceType_type); + IFC2X3_IfcElectricTimeControlType_type = new entity(strings[1948], false, 294, IFC2X3_IfcFlowControllerType_type); + IFC2X3_IfcElectricalCircuit_type = new entity(strings[1949], false, 274, IFC2X3_IfcSystem_type); + IFC2X3_IfcElectricalElement_type = new entity(strings[1950], false, 275, IFC2X3_IfcElement_type); + IFC2X3_IfcEnergyConversionDevice_type = new entity(strings[1951], false, 308, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFanType_type = new entity(strings[1952], false, 336, IFC2X3_IfcFlowMovingDeviceType_type); + IFC2X3_IfcFilterType_type = new entity(strings[1953], false, 349, IFC2X3_IfcFlowTreatmentDeviceType_type); + IFC2X3_IfcFireSuppressionTerminalType_type = new entity(strings[1954], false, 351, IFC2X3_IfcFlowTerminalType_type); + IFC2X3_IfcFlowController_type = new entity(strings[1955], false, 353, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFlowFitting_type = new entity(strings[1956], false, 356, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFlowInstrumentType_type = new entity(strings[1957], false, 358, IFC2X3_IfcDistributionControlElementType_type); + IFC2X3_IfcFlowMovingDevice_type = new entity(strings[1958], false, 362, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFlowSegment_type = new entity(strings[1959], false, 364, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFlowStorageDevice_type = new entity(strings[1960], false, 366, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFlowTerminal_type = new entity(strings[1961], false, 368, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFlowTreatmentDevice_type = new entity(strings[1962], false, 370, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcFooting_type = new entity(strings[1963], false, 376, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcMember_type = new entity(strings[1964], false, 492, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcPile_type = new entity(strings[1965], false, 552, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcPlate_type = new entity(strings[1966], false, 566, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcRailing_type = new entity(strings[1967], false, 642, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcRamp_type = new entity(strings[1968], false, 645, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcRampFlight_type = new entity(strings[1969], false, 646, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcRationalBezierCurve_type = new entity(strings[1970], false, 651, IFC2X3_IfcBezierCurve_type); + IFC2X3_IfcReinforcingElement_type = new entity(strings[1971], true, 665, IFC2X3_IfcBuildingElementComponent_type); + IFC2X3_IfcReinforcingMesh_type = new entity(strings[1972], false, 666, IFC2X3_IfcReinforcingElement_type); + IFC2X3_IfcRoof_type = new entity(strings[1973], false, 730, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcRoundedEdgeFeature_type = new entity(strings[1974], false, 736, IFC2X3_IfcEdgeFeature_type); + IFC2X3_IfcSensorType_type = new entity(strings[1975], false, 748, IFC2X3_IfcDistributionControlElementType_type); + IFC2X3_IfcSlab_type = new entity(strings[1976], false, 768, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcStair_type = new entity(strings[1977], false, 795, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcStairFlight_type = new entity(strings[1978], false, 796, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcStructuralAnalysisModel_type = new entity(strings[1979], false, 804, IFC2X3_IfcSystem_type); + IFC2X3_IfcTendon_type = new entity(strings[1980], false, 875, IFC2X3_IfcReinforcingElement_type); + IFC2X3_IfcTendonAnchor_type = new entity(strings[1981], false, 876, IFC2X3_IfcReinforcingElement_type); + IFC2X3_IfcVibrationIsolatorType_type = new entity(strings[1982], false, 950, IFC2X3_IfcDiscreteAccessoryType_type); + IFC2X3_IfcWall_type = new entity(strings[1983], false, 956, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcWallStandardCase_type = new entity(strings[1984], false, 957, IFC2X3_IfcWall_type); + IFC2X3_IfcWindow_type = new entity(strings[1985], false, 965, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcActuatorType_type = new entity(strings[1986], false, 9, IFC2X3_IfcDistributionControlElementType_type); + IFC2X3_IfcAlarmType_type = new entity(strings[1987], false, 20, IFC2X3_IfcDistributionControlElementType_type); + IFC2X3_IfcBeam_type = new entity(strings[1988], false, 56, IFC2X3_IfcBuildingElement_type); + IFC2X3_IfcChamferEdgeFeature_type = new entity(strings[1989], false, 105, IFC2X3_IfcEdgeFeature_type); + IFC2X3_IfcControllerType_type = new entity(strings[1990], false, 164, IFC2X3_IfcDistributionControlElementType_type); + IFC2X3_IfcDistributionChamberElement_type = new entity(strings[1991], false, 230, IFC2X3_IfcDistributionFlowElement_type); + IFC2X3_IfcDistributionControlElement_type = new entity(strings[1992], false, 233, IFC2X3_IfcDistributionElement_type); + IFC2X3_IfcElectricDistributionPoint_type = new entity(strings[1993], false, 283, IFC2X3_IfcFlowController_type); + IFC2X3_IfcReinforcingBar_type = new entity(strings[1994], false, 662, IFC2X3_IfcReinforcingElement_type); + IFC2X3_Ifc2DCompositeCurve_type->set_attributes({ + },{ + false, false + }); + IFC2X3_IfcActionRequest_type->set_attributes({ + new attribute(strings[1995], new named_type(IFC2X3_IfcIdentifier_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcActor_type->set_attributes({ + new attribute(strings[1996], new named_type(IFC2X3_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcActorRole_type->set_attributes({ + new attribute(strings[1997], new named_type(IFC2X3_IfcRoleEnum_type), false), + new attribute(strings[1998], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false + }); + IFC2X3_IfcActuatorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAddress_type->set_attributes({ + new attribute(strings[2001], new named_type(IFC2X3_IfcAddressTypeEnum_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2002], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC2X3_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAlarmType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAngularDimension_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcAnnotation_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcAnnotationCurveOccurrence_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2003], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2004], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCurve_type)), true) + },{ + false, false + }); + IFC2X3_IfcAnnotationFillAreaOccurrence_type->set_attributes({ + new attribute(strings[2005], new named_type(IFC2X3_IfcPoint_type), true), + new attribute(strings[2006], new named_type(IFC2X3_IfcGlobalOrLocalEnum_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcAnnotationOccurrence_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcAnnotationSurface_type->set_attributes({ + new attribute(strings[2007], new named_type(IFC2X3_IfcGeometricRepresentationItem_type), false), + new attribute(strings[2008], new named_type(IFC2X3_IfcTextureCoordinate_type), true) + },{ + false, false + }); + IFC2X3_IfcAnnotationSurfaceOccurrence_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcAnnotationSymbolOccurrence_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcAnnotationTextOccurrence_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcApplication_type->set_attributes({ + new attribute(strings[2009], new named_type(IFC2X3_IfcOrganization_type), false), + new attribute(strings[2010], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2011], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2012], new named_type(IFC2X3_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2014], new named_type(IFC2X3_IfcAppliedValueSelect_type), true), + new attribute(strings[2015], new named_type(IFC2X3_IfcMeasureWithUnit_type), true), + new attribute(strings[2016], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2017], new named_type(IFC2X3_IfcDateTimeSelect_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcAppliedValueRelationship_type->set_attributes({ + new attribute(strings[2018], new named_type(IFC2X3_IfcAppliedValue_type), false), + new attribute(strings[2019], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcAppliedValue_type)), false), + new attribute(strings[2020], new named_type(IFC2X3_IfcArithmeticOperatorEnum_type), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcApproval_type->set_attributes({ + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2021], new named_type(IFC2X3_IfcDateTimeSelect_type), false), + new attribute(strings[2022], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2023], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2024], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2025], new named_type(IFC2X3_IfcIdentifier_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcApprovalActorRelationship_type->set_attributes({ + new attribute(strings[2026], new named_type(IFC2X3_IfcActorSelect_type), false), + new attribute(strings[2027], new named_type(IFC2X3_IfcApproval_type), false), + new attribute(strings[1997], new named_type(IFC2X3_IfcActorRole_type), false) + },{ + false, false, false + }); + IFC2X3_IfcApprovalPropertyRelationship_type->set_attributes({ + new attribute(strings[2028], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false), + new attribute(strings[2027], new named_type(IFC2X3_IfcApproval_type), false) + },{ + false, false + }); + IFC2X3_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2029], new named_type(IFC2X3_IfcApproval_type), false), + new attribute(strings[2030], new named_type(IFC2X3_IfcApproval_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2031], new named_type(IFC2X3_IfcCurve_type), false) + },{ + false, false, false + }); + IFC2X3_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2032], new named_type(IFC2X3_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC2X3_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2033], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC2X3_IfcAsset_type->set_attributes({ + new attribute(strings[2034], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2035], new named_type(IFC2X3_IfcCostValue_type), false), + new attribute(strings[2036], new named_type(IFC2X3_IfcCostValue_type), false), + new attribute(strings[2037], new named_type(IFC2X3_IfcCostValue_type), false), + new attribute(strings[2038], new named_type(IFC2X3_IfcActorSelect_type), false), + new attribute(strings[2039], new named_type(IFC2X3_IfcActorSelect_type), false), + new attribute(strings[2040], new named_type(IFC2X3_IfcPerson_type), false), + new attribute(strings[2041], new named_type(IFC2X3_IfcCalendarDate_type), false), + new attribute(strings[2042], new named_type(IFC2X3_IfcCostValue_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2043], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2044], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2045], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2046], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2047], new named_type(IFC2X3_IfcDirection_type), true) + },{ + false, false + }); + IFC2X3_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2048], new named_type(IFC2X3_IfcDirection_type), true) + },{ + false, false + }); + IFC2X3_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2047], new named_type(IFC2X3_IfcDirection_type), true), + new attribute(strings[2048], new named_type(IFC2X3_IfcDirection_type), true) + },{ + false, false, false + }); + IFC2X3_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2049], new simple_type(simple_type::integer_type), false), + new attribute(strings[2050], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false), + new attribute(strings[2051], new named_type(IFC2X3_IfcBSplineCurveForm_type), false), + new attribute(strings[2052], new simple_type(simple_type::logical_type), false), + new attribute(strings[2053], new simple_type(simple_type::logical_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcBeam_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBeamType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBezierCurve_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2054], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2055], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcBlock_type->set_attributes({ + new attribute(strings[2056], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2057], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2058], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcBoilerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2059], new named_type(IFC2X3_IfcBooleanOperator_type), false), + new attribute(strings[2060], new named_type(IFC2X3_IfcBooleanOperand_type), false), + new attribute(strings[2061], new named_type(IFC2X3_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC2X3_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false + }); + IFC2X3_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2062], new named_type(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type), true), + new attribute(strings[2063], new named_type(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type), true), + new attribute(strings[2064], new named_type(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type), true), + new attribute(strings[2065], new named_type(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type), true), + new attribute(strings[2066], new named_type(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type), true), + new attribute(strings[2067], new named_type(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2068], new named_type(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type), true), + new attribute(strings[2069], new named_type(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type), true), + new attribute(strings[2070], new named_type(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2071], new named_type(IFC2X3_IfcLinearStiffnessMeasure_type), true), + new attribute(strings[2072], new named_type(IFC2X3_IfcLinearStiffnessMeasure_type), true), + new attribute(strings[2073], new named_type(IFC2X3_IfcLinearStiffnessMeasure_type), true), + new attribute(strings[2074], new named_type(IFC2X3_IfcRotationalStiffnessMeasure_type), true), + new attribute(strings[2075], new named_type(IFC2X3_IfcRotationalStiffnessMeasure_type), true), + new attribute(strings[2076], new named_type(IFC2X3_IfcRotationalStiffnessMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2077], new named_type(IFC2X3_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC2X3_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC2X3_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2078], new named_type(IFC2X3_IfcCartesianPoint_type), false), + new attribute(strings[2079], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2080], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2081], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2082], new named_type(IFC2X3_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC2X3_IfcBuilding_type->set_attributes({ + new attribute(strings[2083], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2084], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2085], new named_type(IFC2X3_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingElementPart_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2086], new named_type(IFC2X3_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2087], new named_type(IFC2X3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2088], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2089], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2090], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2091], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2092], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2093], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCalendarDate_type->set_attributes({ + new attribute(strings[2094], new named_type(IFC2X3_IfcDayInMonthNumber_type), false), + new attribute(strings[2095], new named_type(IFC2X3_IfcMonthInYearNumber_type), false), + new attribute(strings[2096], new named_type(IFC2X3_IfcYearNumber_type), false) + },{ + false, false, false + }); + IFC2X3_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2097], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC2X3_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC2X3_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2098], new named_type(IFC2X3_IfcDirection_type), true), + new attribute(strings[2099], new named_type(IFC2X3_IfcDirection_type), true), + new attribute(strings[2100], new named_type(IFC2X3_IfcCartesianPoint_type), false), + new attribute(strings[2101], new simple_type(simple_type::real_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2102], new simple_type(simple_type::real_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2103], new named_type(IFC2X3_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2102], new simple_type(simple_type::real_type), true), + new attribute(strings[2104], new simple_type(simple_type::real_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2105], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcChamferEdgeFeature_type->set_attributes({ + new attribute(strings[2089], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2106], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcChillerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCircle_type->set_attributes({ + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC2X3_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2090], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcClassification_type->set_attributes({ + new attribute(strings[2108], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2109], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2110], new named_type(IFC2X3_IfcCalendarDate_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcClassificationItem_type->set_attributes({ + new attribute(strings[2111], new named_type(IFC2X3_IfcClassificationNotationFacet_type), false), + new attribute(strings[2112], new named_type(IFC2X3_IfcClassification_type), true), + new attribute(strings[2113], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false, false, false + }); + IFC2X3_IfcClassificationItemRelationship_type->set_attributes({ + new attribute(strings[2114], new named_type(IFC2X3_IfcClassificationItem_type), false), + new attribute(strings[2115], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationItem_type)), false) + },{ + false, false + }); + IFC2X3_IfcClassificationNotation_type->set_attributes({ + new attribute(strings[2116], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationNotationFacet_type)), false) + },{ + false + }); + IFC2X3_IfcClassificationNotationFacet_type->set_attributes({ + new attribute(strings[2117], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false + }); + IFC2X3_IfcClassificationReference_type->set_attributes({ + new attribute(strings[2118], new named_type(IFC2X3_IfcClassification_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcCoilType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcColourRgb_type->set_attributes({ + new attribute(strings[2119], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2120], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2121], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false + }); + IFC2X3_IfcColumn_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcColumnType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcComplexProperty_type->set_attributes({ + new attribute(strings[2122], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2123], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC2X3_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[2124], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcCompositeCurveSegment_type)), false), + new attribute(strings[2053], new simple_type(simple_type::logical_type), false) + },{ + false, false + }); + IFC2X3_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[2125], new named_type(IFC2X3_IfcTransitionCode_type), false), + new attribute(strings[2126], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2127], new named_type(IFC2X3_IfcCurve_type), false) + },{ + false, false, false + }); + IFC2X3_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[2128], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC2X3_IfcProfileDef_type)), false), + new attribute(strings[2129], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcCompressorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCondenserType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCondition_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcConditionCriterion_type->set_attributes({ + new attribute(strings[2130], new named_type(IFC2X3_IfcConditionCriterionSelect_type), false), + new attribute(strings[2131], new named_type(IFC2X3_IfcDateTimeSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcConic_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement_type), false) + },{ + false + }); + IFC2X3_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[2133], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFace_type)), false) + },{ + false + }); + IFC2X3_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[2134], new named_type(IFC2X3_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[2135], new named_type(IFC2X3_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC2X3_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC2X3_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[2136], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2137], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2138], new named_type(IFC2X3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[2139], new named_type(IFC2X3_IfcPointOrVertexPoint_type), false), + new attribute(strings[2140], new named_type(IFC2X3_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC2X3_IfcConnectionPortGeometry_type->set_attributes({ + new attribute(strings[2141], new named_type(IFC2X3_IfcAxis2Placement_type), false), + new attribute(strings[2142], new named_type(IFC2X3_IfcAxis2Placement_type), true), + new attribute(strings[2143], new named_type(IFC2X3_IfcProfileDef_type), false) + },{ + false, false, false + }); + IFC2X3_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[2144], new named_type(IFC2X3_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[2145], new named_type(IFC2X3_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC2X3_IfcConstraint_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2146], new named_type(IFC2X3_IfcConstraintEnum_type), false), + new attribute(strings[2147], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2148], new named_type(IFC2X3_IfcActorSelect_type), true), + new attribute(strings[2149], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2150], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcConstraintAggregationRelationship_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2151], new named_type(IFC2X3_IfcConstraint_type), false), + new attribute(strings[2152], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcConstraint_type)), false), + new attribute(strings[2153], new named_type(IFC2X3_IfcLogicalOperatorEnum_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcConstraintClassificationRelationship_type->set_attributes({ + new attribute(strings[2154], new named_type(IFC2X3_IfcConstraint_type), false), + new attribute(strings[2155], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationNotationSelect_type)), false) + },{ + false, false + }); + IFC2X3_IfcConstraintRelationship_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2151], new named_type(IFC2X3_IfcConstraint_type), false), + new attribute(strings[2152], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcConstraint_type)), false) + },{ + false, false, false, false + }); + IFC2X3_IfcConstructionEquipmentResource_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2156], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcActorSelect_type)), true), + new attribute(strings[2157], new named_type(IFC2X3_IfcRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcConstructionProductResource_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcConstructionResource_type->set_attributes({ + new attribute(strings[2158], new named_type(IFC2X3_IfcIdentifier_type), true), + new attribute(strings[2159], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2160], new named_type(IFC2X3_IfcResourceConsumptionEnum_type), true), + new attribute(strings[2161], new named_type(IFC2X3_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false, false, false + }); + IFC2X3_IfcControl_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcControllerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2162], new named_type(IFC2X3_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCoordinatedUniversalTimeOffset_type->set_attributes({ + new attribute(strings[2163], new named_type(IFC2X3_IfcHourInDay_type), false), + new attribute(strings[2164], new named_type(IFC2X3_IfcMinuteInHour_type), true), + new attribute(strings[2165], new named_type(IFC2X3_IfcAheadOrBehind_type), false) + },{ + false, false, false + }); + IFC2X3_IfcCostItem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2166], new named_type(IFC2X3_IfcActorSelect_type), true), + new attribute(strings[2167], new named_type(IFC2X3_IfcActorSelect_type), true), + new attribute(strings[2168], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2169], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2170], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcActorSelect_type)), true), + new attribute(strings[2171], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2172], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2000], new named_type(IFC2X3_IfcCostScheduleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCostValue_type->set_attributes({ + new attribute(strings[2173], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2174], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCovering_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCoveringType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCraneRailAShapeProfileDef_type->set_attributes({ + new attribute(strings[2175], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2176], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2177], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2178], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2179], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2180], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2181], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2182], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2183], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2184], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2046], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCraneRailFShapeProfileDef_type->set_attributes({ + new attribute(strings[2175], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2177], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2178], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2179], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2180], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2182], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2183], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2046], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCrewResource_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC2X3_IfcCsgSolid_type->set_attributes({ + new attribute(strings[2185], new named_type(IFC2X3_IfcCsgSelect_type), false) + },{ + false + }); + IFC2X3_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[2186], new named_type(IFC2X3_IfcMonetaryUnit_type), false), + new attribute(strings[2187], new named_type(IFC2X3_IfcMonetaryUnit_type), false), + new attribute(strings[2188], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), false), + new attribute(strings[2189], new named_type(IFC2X3_IfcDateAndTime_type), false), + new attribute(strings[2190], new named_type(IFC2X3_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcCurtainWall_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcCurve_type->set_attributes({ + },{ + + }); + IFC2X3_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[2191], new named_type(IFC2X3_IfcPlane_type), false), + new attribute(strings[2003], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2004], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC2X3_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC2X3_IfcCurveStyle_type->set_attributes({ + new attribute(strings[2192], new named_type(IFC2X3_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[2193], new named_type(IFC2X3_IfcSizeSelect_type), true), + new attribute(strings[2194], new named_type(IFC2X3_IfcColour_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2195], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC2X3_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2192], new named_type(IFC2X3_IfcCurveStyleFontSelect_type), false), + new attribute(strings[2196], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC2X3_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[2197], new named_type(IFC2X3_IfcLengthMeasure_type), false), + new attribute(strings[2198], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC2X3_IfcDamperType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDateAndTime_type->set_attributes({ + new attribute(strings[2199], new named_type(IFC2X3_IfcCalendarDate_type), false), + new attribute(strings[2200], new named_type(IFC2X3_IfcLocalTime_type), false) + },{ + false, false + }); + IFC2X3_IfcDefinedSymbol_type->set_attributes({ + new attribute(strings[2201], new named_type(IFC2X3_IfcDefinedSymbolSelect_type), false), + new attribute(strings[2202], new named_type(IFC2X3_IfcCartesianTransformationOperator2D_type), false) + },{ + false, false + }); + IFC2X3_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[2203], new named_type(IFC2X3_IfcProfileDef_type), false), + new attribute(strings[2059], new named_type(IFC2X3_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[2129], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[2204], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDerivedUnitElement_type)), false), + new attribute(strings[2205], new named_type(IFC2X3_IfcDerivedUnitEnum_type), false), + new attribute(strings[2206], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC2X3_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[2207], new named_type(IFC2X3_IfcNamedUnit_type), false), + new attribute(strings[2208], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC2X3_IfcDiameterDimension_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcDimensionCalloutRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcDimensionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcDimensionCurveDirectedCallout_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcDimensionCurveTerminator_type->set_attributes({ + new attribute(strings[1997], new named_type(IFC2X3_IfcDimensionExtentUsage_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcDimensionPair_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[2209], new simple_type(simple_type::integer_type), false), + new attribute(strings[2210], new simple_type(simple_type::integer_type), false), + new attribute(strings[2211], new simple_type(simple_type::integer_type), false), + new attribute(strings[2212], new simple_type(simple_type::integer_type), false), + new attribute(strings[2213], new simple_type(simple_type::integer_type), false), + new attribute(strings[2214], new simple_type(simple_type::integer_type), false), + new attribute(strings[2215], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcDirection_type->set_attributes({ + new attribute(strings[2216], new aggregation_type(aggregation_type::list_type, 2, 3, new simple_type(simple_type::real_type)), false) + },{ + false + }); + IFC2X3_IfcDiscreteAccessory_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDiscreteAccessoryType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionChamberElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionControlElement_type->set_attributes({ + new attribute(strings[2217], new named_type(IFC2X3_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDistributionPort_type->set_attributes({ + new attribute(strings[2218], new named_type(IFC2X3_IfcFlowDirectionEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDocumentElectronicFormat_type->set_attributes({ + new attribute(strings[2219], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2220], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2221], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC2X3_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2222], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2223], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDocumentReference_type)), true), + new attribute(strings[2001], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2224], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2225], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2226], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2227], new named_type(IFC2X3_IfcActorSelect_type), true), + new attribute(strings[2228], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcActorSelect_type)), true), + new attribute(strings[2149], new named_type(IFC2X3_IfcDateAndTime_type), true), + new attribute(strings[2229], new named_type(IFC2X3_IfcDateAndTime_type), true), + new attribute(strings[2230], new named_type(IFC2X3_IfcDocumentElectronicFormat_type), true), + new attribute(strings[2231], new named_type(IFC2X3_IfcCalendarDate_type), true), + new attribute(strings[2232], new named_type(IFC2X3_IfcCalendarDate_type), true), + new attribute(strings[2233], new named_type(IFC2X3_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2169], new named_type(IFC2X3_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[2234], new named_type(IFC2X3_IfcDocumentInformation_type), false), + new attribute(strings[2235], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDocumentInformation_type)), false), + new attribute(strings[2236], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC2X3_IfcDocumentReference_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcDoor_type->set_attributes({ + new attribute(strings[2175], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2237], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[2238], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2239], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2240], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2241], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2242], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2243], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2244], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2245], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2246], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2247], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2248], new named_type(IFC2X3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[2249], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2250], new named_type(IFC2X3_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[2251], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2252], new named_type(IFC2X3_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[2248], new named_type(IFC2X3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDoorStyle_type->set_attributes({ + new attribute(strings[2253], new named_type(IFC2X3_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[2254], new named_type(IFC2X3_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[2255], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2256], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDraughtingCallout_type->set_attributes({ + new attribute(strings[2257], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDraughtingCalloutElement_type)), false) + },{ + false + }); + IFC2X3_IfcDraughtingCalloutRelationship_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2258], new named_type(IFC2X3_IfcDraughtingCallout_type), false), + new attribute(strings[2259], new named_type(IFC2X3_IfcDraughtingCallout_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcDraughtingPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEdge_type->set_attributes({ + new attribute(strings[2260], new named_type(IFC2X3_IfcVertex_type), false), + new attribute(strings[2261], new named_type(IFC2X3_IfcVertex_type), false) + },{ + false, false + }); + IFC2X3_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[2262], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2126], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcEdgeFeature_type->set_attributes({ + new attribute(strings[2263], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[2264], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC2X3_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricDistributionPoint_type->set_attributes({ + new attribute(strings[2265], new named_type(IFC2X3_IfcElectricDistributionPointFunctionEnum_type), false), + new attribute(strings[2266], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricHeaterType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcElectricHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricalBaseProperties_type->set_attributes({ + new attribute(strings[2267], new named_type(IFC2X3_IfcElectricCurrentEnum_type), true), + new attribute(strings[2268], new named_type(IFC2X3_IfcElectricVoltageMeasure_type), false), + new attribute(strings[2269], new named_type(IFC2X3_IfcFrequencyMeasure_type), false), + new attribute(strings[2270], new named_type(IFC2X3_IfcElectricCurrentMeasure_type), true), + new attribute(strings[2271], new named_type(IFC2X3_IfcElectricCurrentMeasure_type), true), + new attribute(strings[2272], new named_type(IFC2X3_IfcPowerMeasure_type), true), + new attribute(strings[2273], new named_type(IFC2X3_IfcPowerMeasure_type), true), + new attribute(strings[2274], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElectricalCircuit_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcElectricalElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElement_type->set_attributes({ + new attribute(strings[2275], new named_type(IFC2X3_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElementAssembly_type->set_attributes({ + new attribute(strings[2276], new named_type(IFC2X3_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2000], new named_type(IFC2X3_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElementQuantity_type->set_attributes({ + new attribute(strings[2277], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2278], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcElementType_type->set_attributes({ + new attribute(strings[2279], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcElementarySurface_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC2X3_IfcEllipse_type->set_attributes({ + new attribute(strings[2280], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2281], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC2X3_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[2280], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2281], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEnergyProperties_type->set_attributes({ + new attribute(strings[2282], new named_type(IFC2X3_IfcEnergySequenceEnum_type), true), + new attribute(strings[2283], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcEnvironmentalImpactValue_type->set_attributes({ + new attribute(strings[2284], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2285], new named_type(IFC2X3_IfcEnvironmentalImpactCategoryEnum_type), false), + new attribute(strings[2286], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEquipmentElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEquipmentStandard_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcExtendedMaterialProperties_type->set_attributes({ + new attribute(strings[2287], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcExternalReference_type->set_attributes({ + new attribute(strings[2288], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2289], new named_type(IFC2X3_IfcIdentifier_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC2X3_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcExternallyDefinedSymbol_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[2290], new named_type(IFC2X3_IfcDirection_type), false), + new attribute(strings[2088], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcFace_type->set_attributes({ + new attribute(strings[2291], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFaceBound_type)), false) + },{ + false + }); + IFC2X3_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[2292], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC2X3_IfcFaceBound_type->set_attributes({ + new attribute(strings[2293], new named_type(IFC2X3_IfcLoop_type), false), + new attribute(strings[2294], new simple_type(simple_type::boolean_type), false) + },{ + false, false + }); + IFC2X3_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC2X3_IfcFaceSurface_type->set_attributes({ + new attribute(strings[2295], new named_type(IFC2X3_IfcSurface_type), false), + new attribute(strings[2126], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false + }); + IFC2X3_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2296], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC2X3_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[2297], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2298], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2299], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2300], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2301], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2302], new named_type(IFC2X3_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcFanType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFastener_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFastenerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[2303], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFillStyleSelect_type)), false) + },{ + false, false + }); + IFC2X3_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[2304], new named_type(IFC2X3_IfcCurveStyle_type), false), + new attribute(strings[2305], new named_type(IFC2X3_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[2306], new named_type(IFC2X3_IfcCartesianPoint_type), true), + new attribute(strings[2307], new named_type(IFC2X3_IfcCartesianPoint_type), true), + new attribute(strings[2308], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type->set_attributes({ + new attribute(strings[2309], new named_type(IFC2X3_IfcAnnotationSymbolOccurrence_type), false) + },{ + false + }); + IFC2X3_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[2310], new named_type(IFC2X3_IfcOneDirectionRepeatFactor_type), false), + new attribute(strings[2311], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcFillAreaStyleTileShapeSelect_type)), false), + new attribute(strings[2312], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC2X3_IfcFilterType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFluidFlowProperties_type->set_attributes({ + new attribute(strings[2313], new named_type(IFC2X3_IfcPropertySourceEnum_type), false), + new attribute(strings[2314], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2315], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2316], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2317], new named_type(IFC2X3_IfcMaterial_type), false), + new attribute(strings[2318], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2319], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2320], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2321], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2322], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2323], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2324], new named_type(IFC2X3_IfcDerivedMeasureValue_type), true), + new attribute(strings[2325], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2326], new named_type(IFC2X3_IfcLinearVelocityMeasure_type), true), + new attribute(strings[2327], new named_type(IFC2X3_IfcPressureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFooting_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFuelProperties_type->set_attributes({ + new attribute(strings[2328], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2329], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2330], new named_type(IFC2X3_IfcHeatingValueMeasure_type), true), + new attribute(strings[2331], new named_type(IFC2X3_IfcHeatingValueMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcFurnitureStandard_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcFurnitureType_type->set_attributes({ + new attribute(strings[2276], new named_type(IFC2X3_IfcAssemblyPlaceEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcGasTerminalType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcGasTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcGeneralMaterialProperties_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC2X3_IfcMolecularWeightMeasure_type), true), + new attribute(strings[2333], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2334], new named_type(IFC2X3_IfcMassDensityMeasure_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcGeneralProfileProperties_type->set_attributes({ + new attribute(strings[2335], new named_type(IFC2X3_IfcMassPerLengthMeasure_type), true), + new attribute(strings[2336], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2337], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2338], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2339], new named_type(IFC2X3_IfcAreaMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[2340], new named_type(IFC2X3_IfcDimensionCount_type), false), + new attribute(strings[2341], new simple_type(simple_type::real_type), true), + new attribute(strings[2342], new named_type(IFC2X3_IfcAxis2Placement_type), false), + new attribute(strings[2343], new named_type(IFC2X3_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC2X3_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[2344], new named_type(IFC2X3_IfcGeometricRepresentationContext_type), false), + new attribute(strings[2345], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2346], new named_type(IFC2X3_IfcGeometricProjectionEnum_type), false), + new attribute(strings[2347], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC2X3_IfcGeometricSet_type->set_attributes({ + new attribute(strings[2204], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC2X3_IfcGrid_type->set_attributes({ + new attribute(strings[2348], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcGridAxis_type)), false), + new attribute(strings[2349], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcGridAxis_type)), false), + new attribute(strings[2350], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcGridAxis_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcGridAxis_type->set_attributes({ + new attribute(strings[2351], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2352], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2126], new named_type(IFC2X3_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC2X3_IfcGridPlacement_type->set_attributes({ + new attribute(strings[2353], new named_type(IFC2X3_IfcVirtualGridIntersection_type), false), + new attribute(strings[2354], new named_type(IFC2X3_IfcVirtualGridIntersection_type), true) + },{ + false, false + }); + IFC2X3_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[2355], new named_type(IFC2X3_IfcSurface_type), false), + new attribute(strings[2356], new simple_type(simple_type::boolean_type), false) + },{ + false, false + }); + IFC2X3_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcHygroscopicMaterialProperties_type->set_attributes({ + new attribute(strings[2357], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2358], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2359], new named_type(IFC2X3_IfcIsothermalMoistureCapacityMeasure_type), true), + new attribute(strings[2360], new named_type(IFC2X3_IfcVaporPermeabilityMeasure_type), true), + new attribute(strings[2361], new named_type(IFC2X3_IfcMoistureDiffusivityMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[2237], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2362], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2180], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2363], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2364], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcImageTexture_type->set_attributes({ + new attribute(strings[2365], new named_type(IFC2X3_IfcIdentifier_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcInventory_type->set_attributes({ + new attribute(strings[2366], new named_type(IFC2X3_IfcInventoryTypeEnum_type), false), + new attribute(strings[2367], new named_type(IFC2X3_IfcActorSelect_type), false), + new attribute(strings[2368], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPerson_type)), false), + new attribute(strings[2369], new named_type(IFC2X3_IfcCalendarDate_type), false), + new attribute(strings[2036], new named_type(IFC2X3_IfcCostValue_type), true), + new attribute(strings[2035], new named_type(IFC2X3_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[2370], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[2371], new named_type(IFC2X3_IfcDateTimeSelect_type), false), + new attribute(strings[2372], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false) + },{ + false, false + }); + IFC2X3_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2088], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2089], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2105], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2364], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2373], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2374], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2093], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2046], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLaborResource_type->set_attributes({ + new attribute(strings[2375], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLampType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2010], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2376], new named_type(IFC2X3_IfcOrganization_type), true), + new attribute(strings[2377], new named_type(IFC2X3_IfcCalendarDate_type), true), + new attribute(strings[2378], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcLibraryReference_type)), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcLibraryReference_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[2379], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2380], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[2381], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC2X3_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[2382], new named_type(IFC2X3_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[2383], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC2X3_IfcLightSource_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2384], new named_type(IFC2X3_IfcColourRgb_type), false), + new attribute(strings[2385], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2386], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[2294], new named_type(IFC2X3_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement3D_type), false), + new attribute(strings[2387], new named_type(IFC2X3_IfcColourRgb_type), true), + new attribute(strings[2388], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[2389], new named_type(IFC2X3_IfcLuminousFluxMeasure_type), false), + new attribute(strings[2390], new named_type(IFC2X3_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[2391], new named_type(IFC2X3_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcCartesianPoint_type), false), + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2392], new named_type(IFC2X3_IfcReal_type), false), + new attribute(strings[2393], new named_type(IFC2X3_IfcReal_type), false), + new attribute(strings[2394], new named_type(IFC2X3_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[2294], new named_type(IFC2X3_IfcDirection_type), false), + new attribute(strings[2395], new named_type(IFC2X3_IfcReal_type), true), + new attribute(strings[2396], new named_type(IFC2X3_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[2397], new named_type(IFC2X3_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcLine_type->set_attributes({ + new attribute(strings[2398], new named_type(IFC2X3_IfcCartesianPoint_type), false), + new attribute(strings[2399], new named_type(IFC2X3_IfcVector_type), false) + },{ + false, false + }); + IFC2X3_IfcLinearDimension_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC2X3_IfcObjectPlacement_type), true), + new attribute(strings[2401], new named_type(IFC2X3_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC2X3_IfcLocalTime_type->set_attributes({ + new attribute(strings[2402], new named_type(IFC2X3_IfcHourInDay_type), false), + new attribute(strings[2403], new named_type(IFC2X3_IfcMinuteInHour_type), true), + new attribute(strings[2404], new named_type(IFC2X3_IfcSecondInMinute_type), true), + new attribute(strings[2405], new named_type(IFC2X3_IfcCoordinatedUniversalTimeOffset_type), true), + new attribute(strings[2406], new named_type(IFC2X3_IfcDaylightSavingHour_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcLoop_type->set_attributes({ + },{ + + }); + IFC2X3_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[2407], new named_type(IFC2X3_IfcClosedShell_type), false) + },{ + false + }); + IFC2X3_IfcMappedItem_type->set_attributes({ + new attribute(strings[2408], new named_type(IFC2X3_IfcRepresentationMap_type), false), + new attribute(strings[2409], new named_type(IFC2X3_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC2X3_IfcMaterial_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false + }); + IFC2X3_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[2410], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcClassificationNotationSelect_type)), false), + new attribute(strings[2411], new named_type(IFC2X3_IfcMaterial_type), false) + },{ + false, false + }); + IFC2X3_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[2412], new named_type(IFC2X3_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[2413], new named_type(IFC2X3_IfcMaterial_type), true), + new attribute(strings[2414], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2415], new named_type(IFC2X3_IfcLogical_type), true) + },{ + false, false, false + }); + IFC2X3_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[2416], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcMaterialLayer_type)), false), + new attribute(strings[2417], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false + }); + IFC2X3_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[2418], new named_type(IFC2X3_IfcMaterialLayerSet_type), false), + new attribute(strings[2419], new named_type(IFC2X3_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2420], new named_type(IFC2X3_IfcDirectionSenseEnum_type), false), + new attribute(strings[2421], new named_type(IFC2X3_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcMaterialList_type->set_attributes({ + new attribute(strings[2422], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcMaterial_type)), false) + },{ + false + }); + IFC2X3_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[2413], new named_type(IFC2X3_IfcMaterial_type), false) + },{ + false + }); + IFC2X3_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[2423], new named_type(IFC2X3_IfcValue_type), false), + new attribute(strings[2424], new named_type(IFC2X3_IfcUnit_type), false) + },{ + false, false + }); + IFC2X3_IfcMechanicalConcreteMaterialProperties_type->set_attributes({ + new attribute(strings[2425], new named_type(IFC2X3_IfcPressureMeasure_type), true), + new attribute(strings[2426], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2427], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2428], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2429], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2430], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[2431], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2432], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMechanicalFastenerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMechanicalMaterialProperties_type->set_attributes({ + new attribute(strings[2433], new named_type(IFC2X3_IfcDynamicViscosityMeasure_type), true), + new attribute(strings[2434], new named_type(IFC2X3_IfcModulusOfElasticityMeasure_type), true), + new attribute(strings[2435], new named_type(IFC2X3_IfcModulusOfElasticityMeasure_type), true), + new attribute(strings[2436], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2437], new named_type(IFC2X3_IfcThermalExpansionCoefficientMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcMechanicalSteelMaterialProperties_type->set_attributes({ + new attribute(strings[2438], new named_type(IFC2X3_IfcPressureMeasure_type), true), + new attribute(strings[2439], new named_type(IFC2X3_IfcPressureMeasure_type), true), + new attribute(strings[2440], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2441], new named_type(IFC2X3_IfcModulusOfElasticityMeasure_type), true), + new attribute(strings[2442], new named_type(IFC2X3_IfcPressureMeasure_type), true), + new attribute(strings[2443], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2444], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRelaxation_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMemberType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMetric_type->set_attributes({ + new attribute(strings[2445], new named_type(IFC2X3_IfcBenchmarkEnum_type), false), + new attribute(strings[2446], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2447], new named_type(IFC2X3_IfcMetricValueSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[2448], new named_type(IFC2X3_IfcCurrencyEnum_type), false) + },{ + false + }); + IFC2X3_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcMove_type->set_attributes({ + new attribute(strings[2449], new named_type(IFC2X3_IfcSpatialStructureElement_type), false), + new attribute(strings[2450], new named_type(IFC2X3_IfcSpatialStructureElement_type), false), + new attribute(strings[2451], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcText_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcNamedUnit_type->set_attributes({ + new attribute(strings[2452], new named_type(IFC2X3_IfcDimensionalExponents_type), false), + new attribute(strings[2205], new named_type(IFC2X3_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC2X3_IfcObject_type->set_attributes({ + new attribute(strings[2453], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcObjectPlacement_type->set_attributes({ + },{ + + }); + IFC2X3_IfcObjective_type->set_attributes({ + new attribute(strings[2454], new named_type(IFC2X3_IfcMetric_type), true), + new attribute(strings[2455], new named_type(IFC2X3_IfcMetric_type), true), + new attribute(strings[2456], new named_type(IFC2X3_IfcObjectiveEnum_type), false), + new attribute(strings[2457], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcOccupant_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcOccupantTypeEnum_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[2458], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2459], new named_type(IFC2X3_IfcLengthMeasure_type), false), + new attribute(strings[2053], new simple_type(simple_type::logical_type), false) + },{ + false, false, false + }); + IFC2X3_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[2458], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2459], new named_type(IFC2X3_IfcLengthMeasure_type), false), + new attribute(strings[2053], new simple_type(simple_type::logical_type), false), + new attribute(strings[2048], new named_type(IFC2X3_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcOneDirectionRepeatFactor_type->set_attributes({ + new attribute(strings[2460], new named_type(IFC2X3_IfcVector_type), false) + },{ + false + }); + IFC2X3_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcOpeningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcOpticalMaterialProperties_type->set_attributes({ + new attribute(strings[2461], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2462], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2463], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2464], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2465], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2466], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2467], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2468], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2469], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcOrderAction_type->set_attributes({ + new attribute(strings[2470], new named_type(IFC2X3_IfcIdentifier_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcOrganization_type->set_attributes({ + new attribute(strings[2471], new named_type(IFC2X3_IfcIdentifier_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2472], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcActorRole_type)), true), + new attribute(strings[2473], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2474], new named_type(IFC2X3_IfcOrganization_type), false), + new attribute(strings[2475], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC2X3_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[2476], new named_type(IFC2X3_IfcEdge_type), false), + new attribute(strings[2294], new simple_type(simple_type::boolean_type), false) + },{ + true, true, false, false + }); + IFC2X3_IfcOutletType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[2477], new named_type(IFC2X3_IfcPersonAndOrganization_type), false), + new attribute(strings[2478], new named_type(IFC2X3_IfcApplication_type), false), + new attribute(strings[2479], new named_type(IFC2X3_IfcStateEnum_type), true), + new attribute(strings[2480], new named_type(IFC2X3_IfcChangeActionEnum_type), false), + new attribute(strings[2481], new named_type(IFC2X3_IfcTimeStamp_type), true), + new attribute(strings[2482], new named_type(IFC2X3_IfcPersonAndOrganization_type), true), + new attribute(strings[2483], new named_type(IFC2X3_IfcApplication_type), true), + new attribute(strings[2484], new named_type(IFC2X3_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement2D_type), false) + },{ + false, false, false + }); + IFC2X3_IfcPath_type->set_attributes({ + new attribute(strings[2264], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC2X3_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[2485], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[2253], new named_type(IFC2X3_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[2252], new named_type(IFC2X3_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2486], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2487], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2248], new named_type(IFC2X3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPermit_type->set_attributes({ + new attribute(strings[2488], new named_type(IFC2X3_IfcIdentifier_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcPerson_type->set_attributes({ + new attribute(strings[2471], new named_type(IFC2X3_IfcIdentifier_type), true), + new attribute(strings[2489], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2490], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2491], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2492], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2493], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2472], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcActorRole_type)), true), + new attribute(strings[2473], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[2494], new named_type(IFC2X3_IfcPerson_type), false), + new attribute(strings[2495], new named_type(IFC2X3_IfcOrganization_type), false), + new attribute(strings[2472], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC2X3_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[2496], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPhysicalQuantity_type)), false), + new attribute(strings[2497], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2498], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2499], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false + }); + IFC2X3_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[2207], new named_type(IFC2X3_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC2X3_IfcPile_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcPileTypeEnum_type), false), + new attribute(strings[2254], new named_type(IFC2X3_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2089], new named_type(IFC2X3_IfcInteger_type), false), + new attribute(strings[2106], new named_type(IFC2X3_IfcInteger_type), false), + new attribute(strings[2500], new named_type(IFC2X3_IfcInteger_type), false), + new attribute(strings[2501], new aggregation_type(aggregation_type::list_type, 1, -1, new simple_type(simple_type::binary_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPlacement_type->set_attributes({ + new attribute(strings[2288], new named_type(IFC2X3_IfcCartesianPoint_type), false) + },{ + false + }); + IFC2X3_IfcPlanarBox_type->set_attributes({ + new attribute(strings[2502], new named_type(IFC2X3_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC2X3_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[2503], new named_type(IFC2X3_IfcLengthMeasure_type), false), + new attribute(strings[2504], new named_type(IFC2X3_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC2X3_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPlate_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPlateType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPoint_type->set_attributes({ + },{ + + }); + IFC2X3_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[2458], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2505], new named_type(IFC2X3_IfcParameterValue_type), false) + },{ + false, false + }); + IFC2X3_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[2191], new named_type(IFC2X3_IfcSurface_type), false), + new attribute(strings[2506], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2507], new named_type(IFC2X3_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC2X3_IfcPolyLoop_type->set_attributes({ + new attribute(strings[2508], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC2X3_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement3D_type), false), + new attribute(strings[2509], new named_type(IFC2X3_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcPolyline_type->set_attributes({ + new attribute(strings[2510], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC2X3_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcPostalAddress_type->set_attributes({ + new attribute(strings[2511], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2512], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2513], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2514], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2515], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2516], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2517], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPreDefinedDimensionSymbol_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false) + },{ + false + }); + IFC2X3_IfcPreDefinedPointMarkerSymbol_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPreDefinedSymbol_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPreDefinedTerminatorSymbol_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2518], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcLayeredItem_type)), false), + new attribute(strings[2025], new named_type(IFC2X3_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[2519], new simple_type(simple_type::logical_type), false), + new attribute(strings[2520], new simple_type(simple_type::logical_type), false), + new attribute(strings[2521], new simple_type(simple_type::logical_type), false), + new attribute(strings[2522], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC2X3_IfcPresentationStyleSelect_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false + }); + IFC2X3_IfcPresentationStyleAssignment_type->set_attributes({ + new attribute(strings[2523], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPresentationStyleSelect_type)), false) + },{ + false + }); + IFC2X3_IfcProcedure_type->set_attributes({ + new attribute(strings[2524], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2525], new named_type(IFC2X3_IfcProcedureTypeEnum_type), false), + new attribute(strings[2526], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcProcess_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcProduct_type->set_attributes({ + new attribute(strings[2527], new named_type(IFC2X3_IfcObjectPlacement_type), true), + new attribute(strings[2528], new named_type(IFC2X3_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2529], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC2X3_IfcProductsOfCombustionProperties_type->set_attributes({ + new attribute(strings[2530], new named_type(IFC2X3_IfcSpecificHeatCapacityMeasure_type), true), + new attribute(strings[2531], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2532], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2533], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcProfileDef_type->set_attributes({ + new attribute(strings[2534], new named_type(IFC2X3_IfcProfileTypeEnum_type), false), + new attribute(strings[2535], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false + }); + IFC2X3_IfcProfileProperties_type->set_attributes({ + new attribute(strings[2535], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2536], new named_type(IFC2X3_IfcProfileDef_type), true) + },{ + false, false + }); + IFC2X3_IfcProject_type->set_attributes({ + new attribute(strings[2537], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2538], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2539], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRepresentationContext_type)), false), + new attribute(strings[2540], new named_type(IFC2X3_IfcUnitAssignment_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2172], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2000], new named_type(IFC2X3_IfcProjectOrderTypeEnum_type), false), + new attribute(strings[2169], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcProjectOrderRecord_type->set_attributes({ + new attribute(strings[2541], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcRelAssignsToProjectOrder_type)), false), + new attribute(strings[2000], new named_type(IFC2X3_IfcProjectOrderRecordTypeEnum_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcProjectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC2X3_IfcProjectionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcProperty_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false + }); + IFC2X3_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[2542], new named_type(IFC2X3_IfcValue_type), true), + new attribute(strings[2543], new named_type(IFC2X3_IfcValue_type), true), + new attribute(strings[2207], new named_type(IFC2X3_IfcUnit_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcPropertyConstraintRelationship_type->set_attributes({ + new attribute(strings[2151], new named_type(IFC2X3_IfcConstraint_type), false), + new attribute(strings[2544], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[2545], new named_type(IFC2X3_IfcProperty_type), false), + new attribute(strings[2546], new named_type(IFC2X3_IfcProperty_type), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2547], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[2548], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false), + new attribute(strings[2549], new named_type(IFC2X3_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2548], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false), + new attribute(strings[2207], new named_type(IFC2X3_IfcUnit_type), true) + },{ + false, false, false + }); + IFC2X3_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[2372], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false), + new attribute(strings[2207], new named_type(IFC2X3_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[2122], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2550], new named_type(IFC2X3_IfcObjectReferenceSelect_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcPropertySet_type->set_attributes({ + new attribute(strings[2123], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[2551], new named_type(IFC2X3_IfcValue_type), true), + new attribute(strings[2207], new named_type(IFC2X3_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[2552], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false), + new attribute(strings[2553], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false), + new attribute(strings[2547], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2554], new named_type(IFC2X3_IfcUnit_type), true), + new attribute(strings[2555], new named_type(IFC2X3_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcProxy_type->set_attributes({ + new attribute(strings[2556], new named_type(IFC2X3_IfcObjectTypeEnum_type), false), + new attribute(strings[2275], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcPumpType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcQuantityArea_type->set_attributes({ + new attribute(strings[2557], new named_type(IFC2X3_IfcAreaMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcQuantityCount_type->set_attributes({ + new attribute(strings[2558], new named_type(IFC2X3_IfcCountMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcQuantityLength_type->set_attributes({ + new attribute(strings[2559], new named_type(IFC2X3_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcQuantityTime_type->set_attributes({ + new attribute(strings[2560], new named_type(IFC2X3_IfcTimeMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[2561], new named_type(IFC2X3_IfcVolumeMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[2562], new named_type(IFC2X3_IfcMassMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcRadiusDimension_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcRailing_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRailingType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRamp_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC2X3_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRampFlight_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRationalBezierCurve_type->set_attributes({ + new attribute(strings[2564], new aggregation_type(aggregation_type::list_type, 2, -1, new simple_type(simple_type::real_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2090], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2565], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2566], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2079], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2080], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2056], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2057], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2106], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[2191], new named_type(IFC2X3_IfcSurface_type), false), + new attribute(strings[2567], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2568], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2569], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2570], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2571], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2572], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcReferencesValueDocument_type->set_attributes({ + new attribute(strings[2573], new named_type(IFC2X3_IfcDocumentSelect_type), false), + new attribute(strings[2574], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcAppliedValue_type)), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[2575], new named_type(IFC2X3_IfcTimeMeasure_type), false), + new attribute(strings[2370], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[2576], new named_type(IFC2X3_IfcAreaMeasure_type), false), + new attribute(strings[2577], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2578], new named_type(IFC2X3_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[2579], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2580], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2581], new named_type(IFC2X3_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[2582], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2583], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[2431], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2339], new named_type(IFC2X3_IfcAreaMeasure_type), false), + new attribute(strings[2584], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2585], new named_type(IFC2X3_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[2578], new named_type(IFC2X3_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[2577], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[2586], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2587], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2588], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2589], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2590], new named_type(IFC2X3_IfcAreaMeasure_type), false), + new attribute(strings[2591], new named_type(IFC2X3_IfcAreaMeasure_type), false), + new attribute(strings[2592], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2593], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAggregates_type->set_attributes({ + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssigns_type->set_attributes({ + new attribute(strings[2594], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcObjectDefinition_type)), false), + new attribute(strings[2595], new named_type(IFC2X3_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsTasks_type->set_attributes({ + new attribute(strings[2596], new named_type(IFC2X3_IfcScheduleTimeControl_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[2597], new named_type(IFC2X3_IfcActor_type), false), + new attribute(strings[2598], new named_type(IFC2X3_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[2599], new named_type(IFC2X3_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[2600], new named_type(IFC2X3_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[2601], new named_type(IFC2X3_IfcProcess_type), false), + new attribute(strings[2602], new named_type(IFC2X3_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[2603], new named_type(IFC2X3_IfcProduct_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToProjectOrder_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[2604], new named_type(IFC2X3_IfcResource_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociates_type->set_attributes({ + new attribute(strings[2594], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRoot_type)), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesAppliedValue_type->set_attributes({ + new attribute(strings[2605], new named_type(IFC2X3_IfcAppliedValue_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2030], new named_type(IFC2X3_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[2606], new named_type(IFC2X3_IfcClassificationNotationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[2607], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2151], new named_type(IFC2X3_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[2234], new named_type(IFC2X3_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[2608], new named_type(IFC2X3_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[2609], new named_type(IFC2X3_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelAssociatesProfileProperties_type->set_attributes({ + new attribute(strings[2610], new named_type(IFC2X3_IfcProfileProperties_type), false), + new attribute(strings[2611], new named_type(IFC2X3_IfcShapeAspect_type), true), + new attribute(strings[2612], new named_type(IFC2X3_IfcOrientationSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[2613], new named_type(IFC2X3_IfcConnectionGeometry_type), true), + new attribute(strings[2614], new named_type(IFC2X3_IfcElement_type), false), + new attribute(strings[2615], new named_type(IFC2X3_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[2616], new aggregation_type(aggregation_type::list_type, 0, -1, new simple_type(simple_type::integer_type)), false), + new attribute(strings[2617], new aggregation_type(aggregation_type::list_type, 0, -1, new simple_type(simple_type::integer_type)), false), + new attribute(strings[2618], new named_type(IFC2X3_IfcConnectionTypeEnum_type), false), + new attribute(strings[2619], new named_type(IFC2X3_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[2620], new named_type(IFC2X3_IfcPort_type), false), + new attribute(strings[2615], new named_type(IFC2X3_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[2620], new named_type(IFC2X3_IfcPort_type), false), + new attribute(strings[2621], new named_type(IFC2X3_IfcPort_type), false), + new attribute(strings[2622], new named_type(IFC2X3_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[2614], new named_type(IFC2X3_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[2623], new named_type(IFC2X3_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsStructuralElement_type->set_attributes({ + new attribute(strings[2614], new named_type(IFC2X3_IfcElement_type), false), + new attribute(strings[2624], new named_type(IFC2X3_IfcStructuralMember_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[2625], new named_type(IFC2X3_IfcStructuralMember_type), false), + new attribute(strings[2626], new named_type(IFC2X3_IfcStructuralConnection_type), false), + new attribute(strings[2627], new named_type(IFC2X3_IfcBoundaryCondition_type), true), + new attribute(strings[2628], new named_type(IFC2X3_IfcStructuralConnectionCondition_type), true), + new attribute(strings[2629], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2630], new named_type(IFC2X3_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[2631], new named_type(IFC2X3_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[2632], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcElement_type)), false), + new attribute(strings[2633], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[2634], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProduct_type)), false), + new attribute(strings[2635], new named_type(IFC2X3_IfcSpatialStructureElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[2636], new named_type(IFC2X3_IfcElement_type), false), + new attribute(strings[2637], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[2638], new named_type(IFC2X3_IfcSpace_type), false), + new attribute(strings[2637], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelDecomposes_type->set_attributes({ + new attribute(strings[2639], new named_type(IFC2X3_IfcObjectDefinition_type), false), + new attribute(strings[2594], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelDefines_type->set_attributes({ + new attribute(strings[2594], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcObject_type)), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[2640], new named_type(IFC2X3_IfcPropertySetDefinition_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[2641], new named_type(IFC2X3_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[2642], new named_type(IFC2X3_IfcOpeningElement_type), false), + new attribute(strings[2643], new named_type(IFC2X3_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[2644], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDistributionControlElement_type)), false), + new attribute(strings[2645], new named_type(IFC2X3_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelInteractionRequirements_type->set_attributes({ + new attribute(strings[2646], new named_type(IFC2X3_IfcCountMeasure_type), true), + new attribute(strings[2647], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2648], new named_type(IFC2X3_IfcSpatialStructureElement_type), true), + new attribute(strings[2649], new named_type(IFC2X3_IfcSpaceProgram_type), false), + new attribute(strings[2650], new named_type(IFC2X3_IfcSpaceProgram_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelNests_type->set_attributes({ + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelOccupiesSpaces_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelOverridesProperties_type->set_attributes({ + new attribute(strings[2651], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProperty_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[2614], new named_type(IFC2X3_IfcElement_type), false), + new attribute(strings[2652], new named_type(IFC2X3_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[2634], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcProduct_type)), false), + new attribute(strings[2635], new named_type(IFC2X3_IfcSpatialStructureElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelSchedulesCostItems_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRelSequence_type->set_attributes({ + new attribute(strings[2601], new named_type(IFC2X3_IfcProcess_type), false), + new attribute(strings[2653], new named_type(IFC2X3_IfcProcess_type), false), + new attribute(strings[2654], new named_type(IFC2X3_IfcTimeMeasure_type), false), + new attribute(strings[2655], new named_type(IFC2X3_IfcSequenceEnum_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[2656], new named_type(IFC2X3_IfcSystem_type), false), + new attribute(strings[2657], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcSpatialStructureElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[2658], new named_type(IFC2X3_IfcSpace_type), false), + new attribute(strings[2643], new named_type(IFC2X3_IfcElement_type), true), + new attribute(strings[2613], new named_type(IFC2X3_IfcConnectionGeometry_type), true), + new attribute(strings[2659], new named_type(IFC2X3_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[2660], new named_type(IFC2X3_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[2636], new named_type(IFC2X3_IfcElement_type), false), + new attribute(strings[2661], new named_type(IFC2X3_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcRelaxation_type->set_attributes({ + new attribute(strings[2662], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2663], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), false) + },{ + false, false + }); + IFC2X3_IfcRepresentation_type->set_attributes({ + new attribute(strings[2664], new named_type(IFC2X3_IfcRepresentationContext_type), false), + new attribute(strings[2665], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2666], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2667], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC2X3_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[2668], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2669], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false + }); + IFC2X3_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC2X3_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[2670], new named_type(IFC2X3_IfcAxis2Placement_type), false), + new attribute(strings[2671], new named_type(IFC2X3_IfcRepresentation_type), false) + },{ + false, false + }); + IFC2X3_IfcResource_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2047], new named_type(IFC2X3_IfcAxis1Placement_type), false), + new attribute(strings[2672], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcRibPlateProfileProperties_type->set_attributes({ + new attribute(strings[2105], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2673], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2674], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2675], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2676], new named_type(IFC2X3_IfcRibPlateDirectionEnum_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[2106], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2677], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC2X3_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[2106], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC2X3_IfcRoof_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC2X3_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRoot_type->set_attributes({ + new attribute(strings[2678], new named_type(IFC2X3_IfcGloballyUniqueId_type), false), + new attribute(strings[2679], new named_type(IFC2X3_IfcOwnerHistory_type), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcRoundedEdgeFeature_type->set_attributes({ + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[2680], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcSIUnit_type->set_attributes({ + new attribute(strings[2681], new named_type(IFC2X3_IfcSIPrefix_type), true), + new attribute(strings[2013], new named_type(IFC2X3_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC2X3_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcScheduleTimeControl_type->set_attributes({ + new attribute(strings[2682], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2683], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2684], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2685], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2686], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2687], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2688], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2689], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2690], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2691], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2692], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2693], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2694], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2695], new simple_type(simple_type::boolean_type), true), + new attribute(strings[2696], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2697], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2698], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2699], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSectionProperties_type->set_attributes({ + new attribute(strings[2700], new named_type(IFC2X3_IfcSectionTypeEnum_type), false), + new attribute(strings[2701], new named_type(IFC2X3_IfcProfileDef_type), false), + new attribute(strings[2702], new named_type(IFC2X3_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC2X3_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[2703], new named_type(IFC2X3_IfcLengthMeasure_type), false), + new attribute(strings[2704], new named_type(IFC2X3_IfcLengthMeasure_type), false), + new attribute(strings[2705], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2706], new named_type(IFC2X3_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[2707], new named_type(IFC2X3_IfcSectionProperties_type), false), + new attribute(strings[2708], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[2709], new named_type(IFC2X3_IfcCompositeCurve_type), false), + new attribute(strings[2710], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcProfileDef_type)), false), + new attribute(strings[2711], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC2X3_IfcSensorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcServiceLife_type->set_attributes({ + new attribute(strings[2712], new named_type(IFC2X3_IfcServiceLifeTypeEnum_type), false), + new attribute(strings[2713], new named_type(IFC2X3_IfcTimeMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcServiceLifeFactor_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcServiceLifeFactorTypeEnum_type), false), + new attribute(strings[2714], new named_type(IFC2X3_IfcMeasureValue_type), true), + new attribute(strings[2715], new named_type(IFC2X3_IfcMeasureValue_type), false), + new attribute(strings[2716], new named_type(IFC2X3_IfcMeasureValue_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcShapeAspect_type->set_attributes({ + new attribute(strings[2717], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcShapeModel_type)), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2718], new simple_type(simple_type::logical_type), false), + new attribute(strings[2719], new named_type(IFC2X3_IfcProductDefinitionShape_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[2720], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcShell_type)), false) + },{ + false + }); + IFC2X3_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC2X3_IfcSite_type->set_attributes({ + new attribute(strings[2721], new named_type(IFC2X3_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[2722], new named_type(IFC2X3_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[2723], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2724], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2725], new named_type(IFC2X3_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSlab_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSlabType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[2726], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2727], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2728], new named_type(IFC2X3_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC2X3_IfcSoundProperties_type->set_attributes({ + new attribute(strings[2729], new named_type(IFC2X3_IfcBoolean_type), false), + new attribute(strings[2730], new named_type(IFC2X3_IfcSoundScaleEnum_type), true), + new attribute(strings[2731], new aggregation_type(aggregation_type::list_type, 1, 8, new named_type(IFC2X3_IfcSoundValue_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcSoundValue_type->set_attributes({ + new attribute(strings[2732], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2733], new named_type(IFC2X3_IfcFrequencyMeasure_type), false), + new attribute(strings[2734], new named_type(IFC2X3_IfcDerivedMeasureValue_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcSpace_type->set_attributes({ + new attribute(strings[2735], new named_type(IFC2X3_IfcInternalOrExternalEnum_type), false), + new attribute(strings[2736], new named_type(IFC2X3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSpaceProgram_type->set_attributes({ + new attribute(strings[2737], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2738], new named_type(IFC2X3_IfcAreaMeasure_type), true), + new attribute(strings[2739], new named_type(IFC2X3_IfcAreaMeasure_type), true), + new attribute(strings[2740], new named_type(IFC2X3_IfcSpatialStructureElement_type), true), + new attribute(strings[2741], new named_type(IFC2X3_IfcAreaMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSpaceThermalLoadProperties_type->set_attributes({ + new attribute(strings[2742], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2743], new named_type(IFC2X3_IfcThermalLoadSourceEnum_type), false), + new attribute(strings[2313], new named_type(IFC2X3_IfcPropertySourceEnum_type), false), + new attribute(strings[2744], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2745], new named_type(IFC2X3_IfcPowerMeasure_type), false), + new attribute(strings[2746], new named_type(IFC2X3_IfcPowerMeasure_type), true), + new attribute(strings[2747], new named_type(IFC2X3_IfcTimeSeries_type), true), + new attribute(strings[2748], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2319], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2749], new named_type(IFC2X3_IfcThermalLoadTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSpaceType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSpaceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[2537], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2086], new named_type(IFC2X3_IfcElementCompositionEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSphere_type->set_attributes({ + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC2X3_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStair_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC2X3_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStairFlight_type->set_attributes({ + new attribute(strings[2750], new simple_type(simple_type::integer_type), true), + new attribute(strings[2751], new simple_type(simple_type::integer_type), true), + new attribute(strings[2752], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2753], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralAction_type->set_attributes({ + new attribute(strings[2754], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2755], new named_type(IFC2X3_IfcStructuralReaction_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[2756], new named_type(IFC2X3_IfcStructuralLoad_type), false), + new attribute(strings[2006], new named_type(IFC2X3_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[2757], new named_type(IFC2X3_IfcAxis2Placement3D_type), true), + new attribute(strings[2758], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcStructuralLoadGroup_type)), true), + new attribute(strings[2759], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcStructuralResultGroup_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[2627], new named_type(IFC2X3_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false + }); + IFC2X3_IfcStructuralCurveConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcStructuralCurveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLinearAction_type->set_attributes({ + new attribute(strings[2760], new named_type(IFC2X3_IfcProjectedOrTrueLengthEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLinearActionVarying_type->set_attributes({ + new attribute(strings[2761], new named_type(IFC2X3_IfcShapeAspect_type), false), + new attribute(strings[2762], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcStructuralLoad_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false + }); + IFC2X3_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[2763], new named_type(IFC2X3_IfcActionTypeEnum_type), false), + new attribute(strings[2764], new named_type(IFC2X3_IfcActionSourceTypeEnum_type), false), + new attribute(strings[2765], new named_type(IFC2X3_IfcRatioMeasure_type), true), + new attribute(strings[2001], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[2766], new named_type(IFC2X3_IfcLinearForceMeasure_type), true), + new attribute(strings[2767], new named_type(IFC2X3_IfcLinearForceMeasure_type), true), + new attribute(strings[2768], new named_type(IFC2X3_IfcLinearForceMeasure_type), true), + new attribute(strings[2769], new named_type(IFC2X3_IfcLinearMomentMeasure_type), true), + new attribute(strings[2770], new named_type(IFC2X3_IfcLinearMomentMeasure_type), true), + new attribute(strings[2771], new named_type(IFC2X3_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[2772], new named_type(IFC2X3_IfcPlanarForceMeasure_type), true), + new attribute(strings[2773], new named_type(IFC2X3_IfcPlanarForceMeasure_type), true), + new attribute(strings[2774], new named_type(IFC2X3_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[2775], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2776], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2777], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2778], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2779], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2780], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[2781], new named_type(IFC2X3_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[2782], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2783], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2784], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2785], new named_type(IFC2X3_IfcTorqueMeasure_type), true), + new attribute(strings[2786], new named_type(IFC2X3_IfcTorqueMeasure_type), true), + new attribute(strings[2787], new named_type(IFC2X3_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[2788], new named_type(IFC2X3_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[2789], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2790], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2791], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralPlanarAction_type->set_attributes({ + new attribute(strings[2760], new named_type(IFC2X3_IfcProjectedOrTrueLengthEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralPlanarActionVarying_type->set_attributes({ + new attribute(strings[2761], new named_type(IFC2X3_IfcShapeAspect_type), false), + new attribute(strings[2762], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcStructuralLoad_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralPointConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralProfileProperties_type->set_attributes({ + new attribute(strings[2792], new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true), + new attribute(strings[2793], new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true), + new attribute(strings[2794], new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true), + new attribute(strings[2795], new named_type(IFC2X3_IfcMomentOfInertiaMeasure_type), true), + new attribute(strings[2796], new named_type(IFC2X3_IfcWarpingConstantMeasure_type), true), + new attribute(strings[2797], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2798], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2799], new named_type(IFC2X3_IfcAreaMeasure_type), true), + new attribute(strings[2800], new named_type(IFC2X3_IfcAreaMeasure_type), true), + new attribute(strings[2801], new named_type(IFC2X3_IfcSectionModulusMeasure_type), true), + new attribute(strings[2802], new named_type(IFC2X3_IfcSectionModulusMeasure_type), true), + new attribute(strings[2803], new named_type(IFC2X3_IfcSectionModulusMeasure_type), true), + new attribute(strings[2804], new named_type(IFC2X3_IfcSectionModulusMeasure_type), true), + new attribute(strings[2805], new named_type(IFC2X3_IfcSectionModulusMeasure_type), true), + new attribute(strings[2093], new named_type(IFC2X3_IfcLengthMeasure_type), true), + new attribute(strings[2046], new named_type(IFC2X3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[2806], new named_type(IFC2X3_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[2807], new named_type(IFC2X3_IfcStructuralLoadGroup_type), true), + new attribute(strings[2808], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralSteelProfileProperties_type->set_attributes({ + new attribute(strings[2809], new named_type(IFC2X3_IfcAreaMeasure_type), true), + new attribute(strings[2810], new named_type(IFC2X3_IfcAreaMeasure_type), true), + new attribute(strings[2811], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2812], new named_type(IFC2X3_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcStructuralSurfaceTypeEnum_type), false), + new attribute(strings[2105], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + new attribute(strings[2813], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC2X3_IfcPositiveLengthMeasure_type)), false), + new attribute(strings[2814], new named_type(IFC2X3_IfcShapeAspect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcStructuredDimensionCallout_type->set_attributes({ + },{ + false + }); + IFC2X3_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcStyledItem_type->set_attributes({ + new attribute(strings[2007], new named_type(IFC2X3_IfcRepresentationItem_type), true), + new attribute(strings[2523], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPresentationStyleAssignment_type)), false), + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC2X3_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2815], new named_type(IFC2X3_IfcActorSelect_type), true), + new attribute(strings[2816], new named_type(IFC2X3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSubedge_type->set_attributes({ + new attribute(strings[2817], new named_type(IFC2X3_IfcEdge_type), false) + },{ + false, false, false + }); + IFC2X3_IfcSurface_type->set_attributes({ + },{ + + }); + IFC2X3_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[2818], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2819], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2820], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2821], new named_type(IFC2X3_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[2290], new named_type(IFC2X3_IfcDirection_type), false), + new attribute(strings[2088], new named_type(IFC2X3_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[2822], new named_type(IFC2X3_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC2X3_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[2823], new named_type(IFC2X3_IfcSurfaceSide_type), false), + new attribute(strings[2523], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC2X3_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC2X3_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC2X3_IfcColourRgb_type), false), + new attribute(strings[2825], new named_type(IFC2X3_IfcColourRgb_type), false), + new attribute(strings[2826], new named_type(IFC2X3_IfcColourRgb_type), false), + new attribute(strings[2827], new named_type(IFC2X3_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[2828], new named_type(IFC2X3_IfcReal_type), true), + new attribute(strings[2829], new named_type(IFC2X3_IfcReal_type), true) + },{ + false, false + }); + IFC2X3_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[2830], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2831], new named_type(IFC2X3_IfcColourOrFactor_type), true), + new attribute(strings[2826], new named_type(IFC2X3_IfcColourOrFactor_type), true), + new attribute(strings[2824], new named_type(IFC2X3_IfcColourOrFactor_type), true), + new attribute(strings[2832], new named_type(IFC2X3_IfcColourOrFactor_type), true), + new attribute(strings[2833], new named_type(IFC2X3_IfcColourOrFactor_type), true), + new attribute(strings[2834], new named_type(IFC2X3_IfcSpecularHighlightSelect_type), true), + new attribute(strings[2835], new named_type(IFC2X3_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[2836], new named_type(IFC2X3_IfcColourRgb_type), false) + },{ + false + }); + IFC2X3_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[2837], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC2X3_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[2838], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2839], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2840], new named_type(IFC2X3_IfcSurfaceTextureEnum_type), false), + new attribute(strings[2841], new named_type(IFC2X3_IfcCartesianTransformationOperator2D_type), true) + },{ + false, false, false, false + }); + IFC2X3_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[2842], new named_type(IFC2X3_IfcProfileDef_type), false), + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement3D_type), false) + },{ + false, false + }); + IFC2X3_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[2818], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2107], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2843], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2819], new named_type(IFC2X3_IfcParameterValue_type), false), + new attribute(strings[2820], new named_type(IFC2X3_IfcParameterValue_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcSweptSurface_type->set_attributes({ + new attribute(strings[2844], new named_type(IFC2X3_IfcProfileDef_type), false), + new attribute(strings[2132], new named_type(IFC2X3_IfcAxis2Placement3D_type), false) + },{ + false, false + }); + IFC2X3_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcSymbolStyle_type->set_attributes({ + new attribute(strings[2845], new named_type(IFC2X3_IfcSymbolStyleSelect_type), false) + },{ + false, false + }); + IFC2X3_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcSystemFurnitureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2088], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2846], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2180], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2363], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2364], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2847], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2848], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2849], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2850], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2046], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTable_type->set_attributes({ + new attribute(strings[2013], new simple_type(simple_type::string_type), false), + new attribute(strings[2851], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcTableRow_type)), false) + },{ + false, false + }); + IFC2X3_IfcTableRow_type->set_attributes({ + new attribute(strings[2852], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false), + new attribute(strings[2853], new simple_type(simple_type::boolean_type), false) + },{ + false, false + }); + IFC2X3_IfcTankType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTask_type->set_attributes({ + new attribute(strings[2854], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2169], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2855], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2856], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2857], new simple_type(simple_type::integer_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[2858], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2859], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2860], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2861], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcLabel_type)), true), + new attribute(strings[2862], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTendon_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcTendonTypeEnum_type), false), + new attribute(strings[2431], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2339], new named_type(IFC2X3_IfcAreaMeasure_type), false), + new attribute(strings[2863], new named_type(IFC2X3_IfcForceMeasure_type), true), + new attribute(strings[2864], new named_type(IFC2X3_IfcPressureMeasure_type), true), + new attribute(strings[2865], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2866], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2867], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTendonAnchor_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTerminatorSymbol_type->set_attributes({ + new attribute(strings[2868], new named_type(IFC2X3_IfcAnnotationCurveOccurrence_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcTextLiteral_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC2X3_IfcPresentableText_type), false), + new attribute(strings[2502], new named_type(IFC2X3_IfcAxis2Placement_type), false), + new attribute(strings[2870], new named_type(IFC2X3_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC2X3_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[2871], new named_type(IFC2X3_IfcPlanarExtent_type), false), + new attribute(strings[2872], new named_type(IFC2X3_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcTextStyle_type->set_attributes({ + new attribute(strings[2873], new named_type(IFC2X3_IfcCharacterStyleSelect_type), true), + new attribute(strings[2874], new named_type(IFC2X3_IfcTextStyleSelect_type), true), + new attribute(strings[2875], new named_type(IFC2X3_IfcTextFontSelect_type), false) + },{ + false, false, false, false + }); + IFC2X3_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[2876], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcTextFontName_type)), true), + new attribute(strings[2877], new named_type(IFC2X3_IfcFontStyle_type), true), + new attribute(strings[2878], new named_type(IFC2X3_IfcFontVariant_type), true), + new attribute(strings[2879], new named_type(IFC2X3_IfcFontWeight_type), true), + new attribute(strings[2880], new named_type(IFC2X3_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[2881], new named_type(IFC2X3_IfcColour_type), false), + new attribute(strings[2882], new named_type(IFC2X3_IfcColour_type), true) + },{ + false, false + }); + IFC2X3_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[2883], new named_type(IFC2X3_IfcSizeSelect_type), true), + new attribute(strings[2884], new named_type(IFC2X3_IfcTextAlignment_type), true), + new attribute(strings[2885], new named_type(IFC2X3_IfcTextDecoration_type), true), + new attribute(strings[2886], new named_type(IFC2X3_IfcSizeSelect_type), true), + new attribute(strings[2887], new named_type(IFC2X3_IfcSizeSelect_type), true), + new attribute(strings[2888], new named_type(IFC2X3_IfcTextTransformation_type), true), + new attribute(strings[2889], new named_type(IFC2X3_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcTextStyleWithBoxCharacteristics_type->set_attributes({ + new attribute(strings[2890], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2891], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2892], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2893], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2894], new named_type(IFC2X3_IfcSizeSelect_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcTextureCoordinate_type->set_attributes({ + },{ + + }); + IFC2X3_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[2895], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[2896], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcSimpleValue_type)), false) + },{ + false, false + }); + IFC2X3_IfcTextureMap_type->set_attributes({ + new attribute(strings[2897], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcVertexBasedTextureMap_type)), false) + },{ + false + }); + IFC2X3_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2097], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC2X3_IfcParameterValue_type)), false) + },{ + false + }); + IFC2X3_IfcThermalMaterialProperties_type->set_attributes({ + new attribute(strings[2530], new named_type(IFC2X3_IfcSpecificHeatCapacityMeasure_type), true), + new attribute(strings[2898], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2899], new named_type(IFC2X3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[2900], new named_type(IFC2X3_IfcThermalConductivityMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC2X3_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2013], new named_type(IFC2X3_IfcLabel_type), false), + new attribute(strings[1999], new named_type(IFC2X3_IfcText_type), true), + new attribute(strings[2901], new named_type(IFC2X3_IfcDateTimeSelect_type), false), + new attribute(strings[2902], new named_type(IFC2X3_IfcDateTimeSelect_type), false), + new attribute(strings[2903], new named_type(IFC2X3_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[2904], new named_type(IFC2X3_IfcDataOriginEnum_type), false), + new attribute(strings[2905], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2207], new named_type(IFC2X3_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTimeSeriesReferenceRelationship_type->set_attributes({ + new attribute(strings[2906], new named_type(IFC2X3_IfcTimeSeries_type), false), + new attribute(strings[2907], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcDocumentSelect_type)), false) + },{ + false, false + }); + IFC2X3_IfcTimeSeriesSchedule_type->set_attributes({ + new attribute(strings[2908], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcDateTimeSelect_type)), true), + new attribute(strings[2909], new named_type(IFC2X3_IfcTimeSeriesScheduleTypeEnum_type), false), + new attribute(strings[2910], new named_type(IFC2X3_IfcTimeSeries_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[2372], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcValue_type)), false) + },{ + false + }); + IFC2X3_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC2X3_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC2X3_IfcTransformerType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTransportElement_type->set_attributes({ + new attribute(strings[2253], new named_type(IFC2X3_IfcTransportElementTypeEnum_type), true), + new attribute(strings[2911], new named_type(IFC2X3_IfcMassMeasure_type), true), + new attribute(strings[2912], new named_type(IFC2X3_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcTransportElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[2913], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2914], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2080], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2915], new named_type(IFC2X3_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC2X3_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[2458], new named_type(IFC2X3_IfcCurve_type), false), + new attribute(strings[2916], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC2X3_IfcTrimmingSelect_type)), false), + new attribute(strings[2917], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC2X3_IfcTrimmingSelect_type)), false), + new attribute(strings[2918], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2919], new named_type(IFC2X3_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC2X3_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcTwoDirectionRepeatFactor_type->set_attributes({ + new attribute(strings[2920], new named_type(IFC2X3_IfcVector_type), false) + },{ + false, false + }); + IFC2X3_IfcTypeObject_type->set_attributes({ + new attribute(strings[2921], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2922], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC2X3_IfcTypeProduct_type->set_attributes({ + new attribute(strings[2923], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC2X3_IfcRepresentationMap_type)), true), + new attribute(strings[2275], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2088], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2846], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2180], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2363], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2364], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2373], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2850], new named_type(IFC2X3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2093], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[2924], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcUnit_type)), false) + },{ + false + }); + IFC2X3_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcValveType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcVector_type->set_attributes({ + new attribute(strings[2294], new named_type(IFC2X3_IfcDirection_type), false), + new attribute(strings[2925], new named_type(IFC2X3_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC2X3_IfcVertex_type->set_attributes({ + },{ + + }); + IFC2X3_IfcVertexBasedTextureMap_type->set_attributes({ + new attribute(strings[2926], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC2X3_IfcTextureVertex_type)), false), + new attribute(strings[2927], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC2X3_IfcCartesianPoint_type)), false) + },{ + false, false + }); + IFC2X3_IfcVertexLoop_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC2X3_IfcVertex_type), false) + },{ + false + }); + IFC2X3_IfcVertexPoint_type->set_attributes({ + new attribute(strings[2929], new named_type(IFC2X3_IfcPoint_type), false) + },{ + false + }); + IFC2X3_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[2930], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC2X3_IfcGridAxis_type)), false), + new attribute(strings[2931], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC2X3_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC2X3_IfcWall_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWallType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2000], new named_type(IFC2X3_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWaterProperties_type->set_attributes({ + new attribute(strings[2932], new simple_type(simple_type::boolean_type), true), + new attribute(strings[2933], new named_type(IFC2X3_IfcIonConcentrationMeasure_type), true), + new attribute(strings[2934], new named_type(IFC2X3_IfcIonConcentrationMeasure_type), true), + new attribute(strings[2935], new named_type(IFC2X3_IfcIonConcentrationMeasure_type), true), + new attribute(strings[2936], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2937], new named_type(IFC2X3_IfcPHMeasure_type), true), + new attribute(strings[2938], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWindow_type->set_attributes({ + new attribute(strings[2175], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2237], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[2238], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2239], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2242], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2939], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2940], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2941], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2942], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2943], new named_type(IFC2X3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2248], new named_type(IFC2X3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[2253], new named_type(IFC2X3_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[2252], new named_type(IFC2X3_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2486], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2487], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2248], new named_type(IFC2X3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWindowStyle_type->set_attributes({ + new attribute(strings[2254], new named_type(IFC2X3_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[2253], new named_type(IFC2X3_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[2255], new simple_type(simple_type::boolean_type), false), + new attribute(strings[2256], new simple_type(simple_type::boolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWorkControl_type->set_attributes({ + new attribute(strings[2025], new named_type(IFC2X3_IfcIdentifier_type), false), + new attribute(strings[2484], new named_type(IFC2X3_IfcDateTimeSelect_type), false), + new attribute(strings[2944], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC2X3_IfcPerson_type)), true), + new attribute(strings[2001], new named_type(IFC2X3_IfcLabel_type), true), + new attribute(strings[2945], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2694], new named_type(IFC2X3_IfcTimeMeasure_type), true), + new attribute(strings[2901], new named_type(IFC2X3_IfcDateTimeSelect_type), false), + new attribute(strings[2946], new named_type(IFC2X3_IfcDateTimeSelect_type), true), + new attribute(strings[2947], new named_type(IFC2X3_IfcWorkControlTypeEnum_type), true), + new attribute(strings[2948], new named_type(IFC2X3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWorkPlan_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcWorkSchedule_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2088], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2846], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2180], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2363], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2364], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2373], new named_type(IFC2X3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC2X3_IfcZone_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC2X3_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[2949], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToActor_type, IFC2X3_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC2X3_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[2950], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPerson_type, IFC2X3_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[2951], inverse_attribute::set_type, 0, -1, IFC2X3_IfcOrganization_type, IFC2X3_IfcOrganization_type->attributes()[4]) + }); + IFC2X3_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[2952], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC2X3_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[2953], inverse_attribute::set_type, 0, -1, IFC2X3_IfcReferencesValueDocument_type, IFC2X3_IfcReferencesValueDocument_type->attributes()[1]), + new inverse_attribute(strings[2954], inverse_attribute::set_type, 0, -1, IFC2X3_IfcAppliedValueRelationship_type, IFC2X3_IfcAppliedValueRelationship_type->attributes()[0]), + new inverse_attribute(strings[2955], inverse_attribute::set_type, 0, -1, IFC2X3_IfcAppliedValueRelationship_type, IFC2X3_IfcAppliedValueRelationship_type->attributes()[1]) + }); + IFC2X3_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[2956], inverse_attribute::set_type, 0, -1, IFC2X3_IfcApprovalActorRelationship_type, IFC2X3_IfcApprovalActorRelationship_type->attributes()[1]), + new inverse_attribute(strings[2957], inverse_attribute::set_type, 0, -1, IFC2X3_IfcApprovalRelationship_type, IFC2X3_IfcApprovalRelationship_type->attributes()[0]), + new inverse_attribute(strings[2958], inverse_attribute::set_type, 0, -1, IFC2X3_IfcApprovalRelationship_type, IFC2X3_IfcApprovalRelationship_type->attributes()[1]) + }); + IFC2X3_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[2959], inverse_attribute::set_type, 0, -1, IFC2X3_IfcClassificationItem_type, IFC2X3_IfcClassificationItem_type->attributes()[1]) + }); + IFC2X3_IfcClassificationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[2960], inverse_attribute::set_type, 0, 1, IFC2X3_IfcClassificationItemRelationship_type, IFC2X3_IfcClassificationItemRelationship_type->attributes()[1]), + new inverse_attribute(strings[2961], inverse_attribute::set_type, 0, 1, IFC2X3_IfcClassificationItemRelationship_type, IFC2X3_IfcClassificationItemRelationship_type->attributes()[0]) + }); + IFC2X3_IfcCompositeCurveSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[2962], inverse_attribute::set_type, 1, -1, IFC2X3_IfcCompositeCurve_type, IFC2X3_IfcCompositeCurve_type->attributes()[0]) + }); + IFC2X3_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[2963], inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintClassificationRelationship_type, IFC2X3_IfcConstraintClassificationRelationship_type->attributes()[0]), + new inverse_attribute(strings[2964], inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintRelationship_type, IFC2X3_IfcConstraintRelationship_type->attributes()[2]), + new inverse_attribute(strings[2957], inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintRelationship_type, IFC2X3_IfcConstraintRelationship_type->attributes()[3]), + new inverse_attribute(strings[2965], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPropertyConstraintRelationship_type, IFC2X3_IfcPropertyConstraintRelationship_type->attributes()[0]), + new inverse_attribute(strings[2966], inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintAggregationRelationship_type, IFC2X3_IfcConstraintAggregationRelationship_type->attributes()[2]), + new inverse_attribute(strings[2967], inverse_attribute::set_type, 0, -1, IFC2X3_IfcConstraintAggregationRelationship_type, IFC2X3_IfcConstraintAggregationRelationship_type->attributes()[3]) + }); + IFC2X3_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[2968], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToControl_type, IFC2X3_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC2X3_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[2969], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelCoversSpaces_type, IFC2X3_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[2970], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelCoversBldgElements_type, IFC2X3_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC2X3_IfcDimensionCurve_type->set_inverse_attributes({ + new inverse_attribute(strings[2971], inverse_attribute::set_type, 0, 2, IFC2X3_IfcTerminatorSymbol_type, IFC2X3_IfcTerminatorSymbol_type->attributes()[0]) + }); + IFC2X3_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[2972], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelFlowControlElements_type, IFC2X3_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC2X3_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[2973], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelFlowControlElements_type, IFC2X3_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC2X3_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[2974], inverse_attribute::set_type, 0, -1, IFC2X3_IfcDocumentInformationRelationship_type, IFC2X3_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[2975], inverse_attribute::set_type, 0, 1, IFC2X3_IfcDocumentInformationRelationship_type, IFC2X3_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC2X3_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[2976], inverse_attribute::set_type, 0, 1, IFC2X3_IfcDocumentInformation_type, IFC2X3_IfcDocumentInformation_type->attributes()[3]) + }); + IFC2X3_IfcDraughtingCallout_type->set_inverse_attributes({ + new inverse_attribute(strings[2977], inverse_attribute::set_type, 0, -1, IFC2X3_IfcDraughtingCalloutRelationship_type, IFC2X3_IfcDraughtingCalloutRelationship_type->attributes()[3]), + new inverse_attribute(strings[2978], inverse_attribute::set_type, 0, -1, IFC2X3_IfcDraughtingCalloutRelationship_type, IFC2X3_IfcDraughtingCalloutRelationship_type->attributes()[2]) + }); + IFC2X3_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[2979], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralElement_type, IFC2X3_IfcRelConnectsStructuralElement_type->attributes()[0]), + new inverse_attribute(strings[2980], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelFillsElement_type, IFC2X3_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[2981], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsElements_type, IFC2X3_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[2982], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelCoversBldgElements_type, IFC2X3_IfcRelCoversBldgElements_type->attributes()[0]), + new inverse_attribute(strings[2983], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelProjectsElement_type, IFC2X3_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[2984], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelReferencedInSpatialStructure_type, IFC2X3_IfcRelReferencedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[2985], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsPortToElement_type, IFC2X3_IfcRelConnectsPortToElement_type->attributes()[1]), + new inverse_attribute(strings[2986], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelVoidsElement_type, IFC2X3_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[2987], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsWithRealizingElements_type, IFC2X3_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[2988], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSpaceBoundary_type, IFC2X3_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[2989], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsElements_type, IFC2X3_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[2952], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC2X3_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[2990], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelProjectsElement_type, IFC2X3_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC2X3_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[2991], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelVoidsElement_type, IFC2X3_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC2X3_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[2992], inverse_attribute::set_type, 0, -1, IFC2X3_IfcGeometricRepresentationSubContext_type, IFC2X3_IfcGeometricRepresentationSubContext_type->attributes()[0]) + }); + IFC2X3_IfcGrid_type->set_inverse_attributes({ + new inverse_attribute(strings[2952], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC2X3_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[2993], inverse_attribute::set_type, 0, 1, IFC2X3_IfcGrid_type, IFC2X3_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[2994], inverse_attribute::set_type, 0, 1, IFC2X3_IfcGrid_type, IFC2X3_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[2995], inverse_attribute::set_type, 0, 1, IFC2X3_IfcGrid_type, IFC2X3_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[2996], inverse_attribute::set_type, 0, -1, IFC2X3_IfcVirtualGridIntersection_type, IFC2X3_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC2X3_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[2997], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelAssignsToGroup_type, IFC2X3_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC2X3_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[2998], inverse_attribute::set_type, 0, 1, IFC2X3_IfcLibraryInformation_type, IFC2X3_IfcLibraryInformation_type->attributes()[4]) + }); + IFC2X3_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[2999], inverse_attribute::set_type, 0, 1, IFC2X3_IfcMaterialDefinitionRepresentation_type, IFC2X3_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[2963], inverse_attribute::set_type, 0, 1, IFC2X3_IfcMaterialClassificationRelationship_type, IFC2X3_IfcMaterialClassificationRelationship_type->attributes()[1]) + }); + IFC2X3_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3000], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcMaterialLayerSet_type, IFC2X3_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC2X3_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3001], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelDefines_type, IFC2X3_IfcRelDefines_type->attributes()[0]) + }); + IFC2X3_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3002], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssigns_type, IFC2X3_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3003], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelDecomposes_type, IFC2X3_IfcRelDecomposes_type->attributes()[0]), + new inverse_attribute(strings[3004], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelDecomposes_type, IFC2X3_IfcRelDecomposes_type->attributes()[1]), + new inverse_attribute(strings[3005], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssociates_type, IFC2X3_IfcRelAssociates_type->attributes()[0]) + }); + IFC2X3_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3006], inverse_attribute::set_type, 1, 1, IFC2X3_IfcProduct_type, IFC2X3_IfcProduct_type->attributes()[0]), + new inverse_attribute(strings[3007], inverse_attribute::set_type, 0, -1, IFC2X3_IfcLocalPlacement_type, IFC2X3_IfcLocalPlacement_type->attributes()[0]) + }); + IFC2X3_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3008], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelFillsElement_type, IFC2X3_IfcRelFillsElement_type->attributes()[0]) + }); + IFC2X3_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3009], inverse_attribute::set_type, 0, -1, IFC2X3_IfcOrganizationRelationship_type, IFC2X3_IfcOrganizationRelationship_type->attributes()[3]), + new inverse_attribute(strings[2958], inverse_attribute::set_type, 0, -1, IFC2X3_IfcOrganizationRelationship_type, IFC2X3_IfcOrganizationRelationship_type->attributes()[2]), + new inverse_attribute(strings[3010], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPersonAndOrganization_type, IFC2X3_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC2X3_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3011], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPersonAndOrganization_type, IFC2X3_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC2X3_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3012], inverse_attribute::set_type, 0, 1, IFC2X3_IfcPhysicalComplexQuantity_type, IFC2X3_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC2X3_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3013], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelConnectsPortToElement_type, IFC2X3_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[2989], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelConnectsPorts_type, IFC2X3_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[2981], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelConnectsPorts_type, IFC2X3_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC2X3_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3014], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToProcess_type, IFC2X3_IfcRelAssignsToProcess_type->attributes()[0]), + new inverse_attribute(strings[3015], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSequence_type, IFC2X3_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3016], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSequence_type, IFC2X3_IfcRelSequence_type->attributes()[0]) + }); + IFC2X3_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3017], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToProduct_type, IFC2X3_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC2X3_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3018], inverse_attribute::set_type, 1, 1, IFC2X3_IfcProduct_type, IFC2X3_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3019], inverse_attribute::set_type, 0, -1, IFC2X3_IfcShapeAspect_type, IFC2X3_IfcShapeAspect_type->attributes()[4]) + }); + IFC2X3_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3020], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPropertyDependencyRelationship_type, IFC2X3_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3021], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPropertyDependencyRelationship_type, IFC2X3_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3012], inverse_attribute::set_type, 0, 1, IFC2X3_IfcComplexProperty_type, IFC2X3_IfcComplexProperty_type->attributes()[1]) + }); + IFC2X3_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3005], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssociates_type, IFC2X3_IfcRelAssociates_type->attributes()[0]) + }); + IFC2X3_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3022], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelDefinesByProperties_type, IFC2X3_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3023], inverse_attribute::set_type, 0, 1, IFC2X3_IfcTypeObject_type, IFC2X3_IfcTypeObject_type->attributes()[1]) + }); + IFC2X3_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3024], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRepresentationMap_type, IFC2X3_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3025], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPresentationLayerAssignment_type, IFC2X3_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3026], inverse_attribute::set_type, 0, 1, IFC2X3_IfcProductRepresentation_type, IFC2X3_IfcProductRepresentation_type->attributes()[2]) + }); + IFC2X3_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3027], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRepresentation_type, IFC2X3_IfcRepresentation_type->attributes()[0]) + }); + IFC2X3_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3025], inverse_attribute::set_type, 0, -1, IFC2X3_IfcPresentationLayerAssignment_type, IFC2X3_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3028], inverse_attribute::set_type, 0, 1, IFC2X3_IfcStyledItem_type, IFC2X3_IfcStyledItem_type->attributes()[0]) + }); + IFC2X3_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3029], inverse_attribute::set_type, 0, -1, IFC2X3_IfcMappedItem_type, IFC2X3_IfcMappedItem_type->attributes()[0]) + }); + IFC2X3_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3030], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelAssignsToResource_type, IFC2X3_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC2X3_IfcScheduleTimeControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3031], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelAssignsTasks_type, IFC2X3_IfcRelAssignsTasks_type->attributes()[0]) + }); + IFC2X3_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3032], inverse_attribute::set_type, 0, 1, IFC2X3_IfcShapeAspect_type, IFC2X3_IfcShapeAspect_type->attributes()[0]) + }); + IFC2X3_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[2982], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelCoversSpaces_type, IFC2X3_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3033], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelSpaceBoundary_type, IFC2X3_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC2X3_IfcSpaceProgram_type->set_inverse_attributes({ + new inverse_attribute(strings[3034], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelInteractionRequirements_type, IFC2X3_IfcRelInteractionRequirements_type->attributes()[3]), + new inverse_attribute(strings[3035], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelInteractionRequirements_type, IFC2X3_IfcRelInteractionRequirements_type->attributes()[4]) + }); + IFC2X3_IfcSpatialStructureElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3036], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelReferencedInSpatialStructure_type, IFC2X3_IfcRelReferencedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3037], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelServicesBuildings_type, IFC2X3_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3038], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelContainedInSpatialStructure_type, IFC2X3_IfcRelContainedInSpatialStructure_type->attributes()[1]) + }); + IFC2X3_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3039], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcRelConnectsStructuralActivity_type, IFC2X3_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC2X3_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3040], inverse_attribute::set_type, 1, -1, IFC2X3_IfcRelConnectsStructuralMember_type, IFC2X3_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC2X3_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3041], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralActivity_type, IFC2X3_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC2X3_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3042], inverse_attribute::set_type, 0, 1, IFC2X3_IfcStructuralResultGroup_type, IFC2X3_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3043], inverse_attribute::set_type, 0, -1, IFC2X3_IfcStructuralAnalysisModel_type, IFC2X3_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC2X3_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3044], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralElement_type, IFC2X3_IfcRelConnectsStructuralElement_type->attributes()[1]), + new inverse_attribute(strings[3045], inverse_attribute::set_type, 0, -1, IFC2X3_IfcRelConnectsStructuralMember_type, IFC2X3_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC2X3_IfcStructuralReaction_type->set_inverse_attributes({ + new inverse_attribute(strings[3046], inverse_attribute::set_type, 0, -1, IFC2X3_IfcStructuralAction_type, IFC2X3_IfcStructuralAction_type->attributes()[1]) + }); + IFC2X3_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3047], inverse_attribute::set_type, 0, 1, IFC2X3_IfcStructuralAnalysisModel_type, IFC2X3_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC2X3_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3048], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelServicesBuildings_type, IFC2X3_IfcRelServicesBuildings_type->attributes()[0]) + }); + IFC2X3_IfcTableRow_type->set_inverse_attributes({ + new inverse_attribute(strings[3049], inverse_attribute::unspecified_type, -1, -1, IFC2X3_IfcTable_type, IFC2X3_IfcTable_type->attributes()[1]) + }); + IFC2X3_IfcTextureCoordinate_type->set_inverse_attributes({ + new inverse_attribute(strings[3050], inverse_attribute::set_type, 1, 1, IFC2X3_IfcAnnotationSurface_type, IFC2X3_IfcAnnotationSurface_type->attributes()[1]) + }); + IFC2X3_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3051], inverse_attribute::set_type, 0, 1, IFC2X3_IfcTimeSeriesReferenceRelationship_type, IFC2X3_IfcTimeSeriesReferenceRelationship_type->attributes()[0]) + }); + IFC2X3_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3052], inverse_attribute::set_type, 0, 1, IFC2X3_IfcRelDefinesByType_type, IFC2X3_IfcRelDefinesByType_type->attributes()[0]) + }); + IFC2X3_IfcCompositeCurve_type->set_subtypes({ + IFC2X3_Ifc2DCompositeCurve_type + }); + IFC2X3_IfcControl_type->set_subtypes({ + IFC2X3_IfcActionRequest_type,IFC2X3_IfcConditionCriterion_type,IFC2X3_IfcCostItem_type,IFC2X3_IfcCostSchedule_type,IFC2X3_IfcEquipmentStandard_type,IFC2X3_IfcFurnitureStandard_type,IFC2X3_IfcPerformanceHistory_type,IFC2X3_IfcPermit_type,IFC2X3_IfcProjectOrder_type,IFC2X3_IfcProjectOrderRecord_type,IFC2X3_IfcScheduleTimeControl_type,IFC2X3_IfcServiceLife_type,IFC2X3_IfcSpaceProgram_type,IFC2X3_IfcTimeSeriesSchedule_type,IFC2X3_IfcWorkControl_type + }); + IFC2X3_IfcObject_type->set_subtypes({ + IFC2X3_IfcActor_type,IFC2X3_IfcControl_type,IFC2X3_IfcGroup_type,IFC2X3_IfcProcess_type,IFC2X3_IfcProduct_type,IFC2X3_IfcProject_type,IFC2X3_IfcResource_type + }); + IFC2X3_IfcDistributionControlElementType_type->set_subtypes({ + IFC2X3_IfcActuatorType_type,IFC2X3_IfcAlarmType_type,IFC2X3_IfcControllerType_type,IFC2X3_IfcFlowInstrumentType_type,IFC2X3_IfcSensorType_type + }); + IFC2X3_IfcFlowControllerType_type->set_subtypes({ + IFC2X3_IfcAirTerminalBoxType_type,IFC2X3_IfcDamperType_type,IFC2X3_IfcElectricTimeControlType_type,IFC2X3_IfcFlowMeterType_type,IFC2X3_IfcProtectiveDeviceType_type,IFC2X3_IfcSwitchingDeviceType_type,IFC2X3_IfcValveType_type + }); + IFC2X3_IfcFlowTerminalType_type->set_subtypes({ + IFC2X3_IfcAirTerminalType_type,IFC2X3_IfcElectricApplianceType_type,IFC2X3_IfcElectricHeaterType_type,IFC2X3_IfcFireSuppressionTerminalType_type,IFC2X3_IfcGasTerminalType_type,IFC2X3_IfcLampType_type,IFC2X3_IfcLightFixtureType_type,IFC2X3_IfcOutletType_type,IFC2X3_IfcSanitaryTerminalType_type,IFC2X3_IfcStackTerminalType_type,IFC2X3_IfcWasteTerminalType_type + }); + IFC2X3_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC2X3_IfcAirToAirHeatRecoveryType_type,IFC2X3_IfcBoilerType_type,IFC2X3_IfcChillerType_type,IFC2X3_IfcCoilType_type,IFC2X3_IfcCondenserType_type,IFC2X3_IfcCooledBeamType_type,IFC2X3_IfcCoolingTowerType_type,IFC2X3_IfcElectricGeneratorType_type,IFC2X3_IfcElectricMotorType_type,IFC2X3_IfcEvaporativeCoolerType_type,IFC2X3_IfcEvaporatorType_type,IFC2X3_IfcHeatExchangerType_type,IFC2X3_IfcHumidifierType_type,IFC2X3_IfcMotorConnectionType_type,IFC2X3_IfcSpaceHeaterType_type,IFC2X3_IfcTransformerType_type,IFC2X3_IfcTubeBundleType_type,IFC2X3_IfcUnitaryEquipmentType_type + }); + IFC2X3_IfcDimensionCurveDirectedCallout_type->set_subtypes({ + IFC2X3_IfcAngularDimension_type,IFC2X3_IfcDiameterDimension_type,IFC2X3_IfcLinearDimension_type,IFC2X3_IfcRadiusDimension_type + }); + IFC2X3_IfcProduct_type->set_subtypes({ + IFC2X3_IfcAnnotation_type,IFC2X3_IfcElement_type,IFC2X3_IfcGrid_type,IFC2X3_IfcPort_type,IFC2X3_IfcProxy_type,IFC2X3_IfcSpatialStructureElement_type,IFC2X3_IfcStructuralActivity_type,IFC2X3_IfcStructuralItem_type + }); + IFC2X3_IfcAnnotationOccurrence_type->set_subtypes({ + IFC2X3_IfcAnnotationCurveOccurrence_type,IFC2X3_IfcAnnotationFillAreaOccurrence_type,IFC2X3_IfcAnnotationSurfaceOccurrence_type,IFC2X3_IfcAnnotationSymbolOccurrence_type,IFC2X3_IfcAnnotationTextOccurrence_type + }); + IFC2X3_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC2X3_IfcAnnotationFillArea_type,IFC2X3_IfcAnnotationSurface_type,IFC2X3_IfcBooleanResult_type,IFC2X3_IfcBoundingBox_type,IFC2X3_IfcCartesianTransformationOperator_type,IFC2X3_IfcCompositeCurveSegment_type,IFC2X3_IfcCsgPrimitive3D_type,IFC2X3_IfcCurve_type,IFC2X3_IfcDefinedSymbol_type,IFC2X3_IfcDirection_type,IFC2X3_IfcDraughtingCallout_type,IFC2X3_IfcFaceBasedSurfaceModel_type,IFC2X3_IfcFillAreaStyleHatching_type,IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type,IFC2X3_IfcFillAreaStyleTiles_type,IFC2X3_IfcGeometricSet_type,IFC2X3_IfcHalfSpaceSolid_type,IFC2X3_IfcLightSource_type,IFC2X3_IfcOneDirectionRepeatFactor_type,IFC2X3_IfcPlacement_type,IFC2X3_IfcPlanarExtent_type,IFC2X3_IfcPoint_type,IFC2X3_IfcSectionedSpine_type,IFC2X3_IfcShellBasedSurfaceModel_type,IFC2X3_IfcSolidModel_type,IFC2X3_IfcSurface_type,IFC2X3_IfcTextLiteral_type,IFC2X3_IfcVector_type + }); + IFC2X3_IfcStyledItem_type->set_subtypes({ + IFC2X3_IfcAnnotationOccurrence_type + }); + IFC2X3_IfcProfileDef_type->set_subtypes({ + IFC2X3_IfcArbitraryClosedProfileDef_type,IFC2X3_IfcArbitraryOpenProfileDef_type,IFC2X3_IfcCompositeProfileDef_type,IFC2X3_IfcDerivedProfileDef_type,IFC2X3_IfcParameterizedProfileDef_type + }); + IFC2X3_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC2X3_IfcArbitraryProfileDefWithVoids_type + }); + IFC2X3_IfcGroup_type->set_subtypes({ + IFC2X3_IfcAsset_type,IFC2X3_IfcCondition_type,IFC2X3_IfcInventory_type,IFC2X3_IfcStructuralLoadGroup_type,IFC2X3_IfcStructuralResultGroup_type,IFC2X3_IfcSystem_type,IFC2X3_IfcZone_type + }); + IFC2X3_IfcIShapeProfileDef_type->set_subtypes({ + IFC2X3_IfcAsymmetricIShapeProfileDef_type + }); + IFC2X3_IfcPlacement_type->set_subtypes({ + IFC2X3_IfcAxis1Placement_type,IFC2X3_IfcAxis2Placement2D_type,IFC2X3_IfcAxis2Placement3D_type + }); + IFC2X3_IfcBoundedCurve_type->set_subtypes({ + IFC2X3_IfcBSplineCurve_type,IFC2X3_IfcCompositeCurve_type,IFC2X3_IfcPolyline_type,IFC2X3_IfcTrimmedCurve_type + }); + IFC2X3_IfcBuildingElement_type->set_subtypes({ + IFC2X3_IfcBeam_type,IFC2X3_IfcBuildingElementComponent_type,IFC2X3_IfcBuildingElementProxy_type,IFC2X3_IfcColumn_type,IFC2X3_IfcCovering_type,IFC2X3_IfcCurtainWall_type,IFC2X3_IfcDoor_type,IFC2X3_IfcFooting_type,IFC2X3_IfcMember_type,IFC2X3_IfcPile_type,IFC2X3_IfcPlate_type,IFC2X3_IfcRailing_type,IFC2X3_IfcRamp_type,IFC2X3_IfcRampFlight_type,IFC2X3_IfcRoof_type,IFC2X3_IfcSlab_type,IFC2X3_IfcStair_type,IFC2X3_IfcStairFlight_type,IFC2X3_IfcWall_type,IFC2X3_IfcWindow_type + }); + IFC2X3_IfcBuildingElementType_type->set_subtypes({ + IFC2X3_IfcBeamType_type,IFC2X3_IfcBuildingElementProxyType_type,IFC2X3_IfcColumnType_type,IFC2X3_IfcCoveringType_type,IFC2X3_IfcCurtainWallType_type,IFC2X3_IfcMemberType_type,IFC2X3_IfcPlateType_type,IFC2X3_IfcRailingType_type,IFC2X3_IfcRampFlightType_type,IFC2X3_IfcSlabType_type,IFC2X3_IfcStairFlightType_type,IFC2X3_IfcWallType_type + }); + IFC2X3_IfcBSplineCurve_type->set_subtypes({ + IFC2X3_IfcBezierCurve_type + }); + IFC2X3_IfcSurfaceTexture_type->set_subtypes({ + IFC2X3_IfcBlobTexture_type,IFC2X3_IfcImageTexture_type,IFC2X3_IfcPixelTexture_type + }); + IFC2X3_IfcCsgPrimitive3D_type->set_subtypes({ + IFC2X3_IfcBlock_type,IFC2X3_IfcRectangularPyramid_type,IFC2X3_IfcRightCircularCone_type,IFC2X3_IfcRightCircularCylinder_type,IFC2X3_IfcSphere_type + }); + IFC2X3_IfcBooleanResult_type->set_subtypes({ + IFC2X3_IfcBooleanClippingResult_type + }); + IFC2X3_IfcBoundaryCondition_type->set_subtypes({ + IFC2X3_IfcBoundaryEdgeCondition_type,IFC2X3_IfcBoundaryFaceCondition_type,IFC2X3_IfcBoundaryNodeCondition_type + }); + IFC2X3_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC2X3_IfcBoundaryNodeConditionWarping_type + }); + IFC2X3_IfcCurve_type->set_subtypes({ + IFC2X3_IfcBoundedCurve_type,IFC2X3_IfcConic_type,IFC2X3_IfcLine_type,IFC2X3_IfcOffsetCurve2D_type,IFC2X3_IfcOffsetCurve3D_type + }); + IFC2X3_IfcSurface_type->set_subtypes({ + IFC2X3_IfcBoundedSurface_type,IFC2X3_IfcElementarySurface_type,IFC2X3_IfcSweptSurface_type + }); + IFC2X3_IfcHalfSpaceSolid_type->set_subtypes({ + IFC2X3_IfcBoxedHalfSpace_type,IFC2X3_IfcPolygonalBoundedHalfSpace_type + }); + IFC2X3_IfcSpatialStructureElement_type->set_subtypes({ + IFC2X3_IfcBuilding_type,IFC2X3_IfcBuildingStorey_type,IFC2X3_IfcSite_type,IFC2X3_IfcSpace_type + }); + IFC2X3_IfcElement_type->set_subtypes({ + IFC2X3_IfcBuildingElement_type,IFC2X3_IfcDistributionElement_type,IFC2X3_IfcElectricalElement_type,IFC2X3_IfcElementAssembly_type,IFC2X3_IfcElementComponent_type,IFC2X3_IfcEquipmentElement_type,IFC2X3_IfcFeatureElement_type,IFC2X3_IfcFurnishingElement_type,IFC2X3_IfcTransportElement_type,IFC2X3_IfcVirtualElement_type + }); + IFC2X3_IfcBuildingElementComponent_type->set_subtypes({ + IFC2X3_IfcBuildingElementPart_type,IFC2X3_IfcReinforcingElement_type + }); + IFC2X3_IfcElementType_type->set_subtypes({ + IFC2X3_IfcBuildingElementType_type,IFC2X3_IfcDistributionElementType_type,IFC2X3_IfcElementComponentType_type,IFC2X3_IfcFurnishingElementType_type,IFC2X3_IfcSpatialStructureElementType_type,IFC2X3_IfcTransportElementType_type + }); + IFC2X3_IfcParameterizedProfileDef_type->set_subtypes({ + IFC2X3_IfcCShapeProfileDef_type,IFC2X3_IfcCircleProfileDef_type,IFC2X3_IfcCraneRailAShapeProfileDef_type,IFC2X3_IfcCraneRailFShapeProfileDef_type,IFC2X3_IfcEllipseProfileDef_type,IFC2X3_IfcIShapeProfileDef_type,IFC2X3_IfcLShapeProfileDef_type,IFC2X3_IfcRectangleProfileDef_type,IFC2X3_IfcTShapeProfileDef_type,IFC2X3_IfcTrapeziumProfileDef_type,IFC2X3_IfcUShapeProfileDef_type,IFC2X3_IfcZShapeProfileDef_type + }); + IFC2X3_IfcFlowFittingType_type->set_subtypes({ + IFC2X3_IfcCableCarrierFittingType_type,IFC2X3_IfcDuctFittingType_type,IFC2X3_IfcJunctionBoxType_type,IFC2X3_IfcPipeFittingType_type + }); + IFC2X3_IfcFlowSegmentType_type->set_subtypes({ + IFC2X3_IfcCableCarrierSegmentType_type,IFC2X3_IfcCableSegmentType_type,IFC2X3_IfcDuctSegmentType_type,IFC2X3_IfcPipeSegmentType_type + }); + IFC2X3_IfcPoint_type->set_subtypes({ + IFC2X3_IfcCartesianPoint_type,IFC2X3_IfcPointOnCurve_type,IFC2X3_IfcPointOnSurface_type + }); + IFC2X3_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC2X3_IfcCartesianTransformationOperator2D_type,IFC2X3_IfcCartesianTransformationOperator3D_type + }); + IFC2X3_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC2X3_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC2X3_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC2X3_IfcCenterLineProfileDef_type + }); + IFC2X3_IfcEdgeFeature_type->set_subtypes({ + IFC2X3_IfcChamferEdgeFeature_type,IFC2X3_IfcRoundedEdgeFeature_type + }); + IFC2X3_IfcConic_type->set_subtypes({ + IFC2X3_IfcCircle_type,IFC2X3_IfcEllipse_type + }); + IFC2X3_IfcCircleProfileDef_type->set_subtypes({ + IFC2X3_IfcCircleHollowProfileDef_type + }); + IFC2X3_IfcExternalReference_type->set_subtypes({ + IFC2X3_IfcClassificationReference_type,IFC2X3_IfcDocumentReference_type,IFC2X3_IfcExternallyDefinedHatchStyle_type,IFC2X3_IfcExternallyDefinedSurfaceStyle_type,IFC2X3_IfcExternallyDefinedSymbol_type,IFC2X3_IfcExternallyDefinedTextFont_type,IFC2X3_IfcLibraryReference_type + }); + IFC2X3_IfcConnectedFaceSet_type->set_subtypes({ + IFC2X3_IfcClosedShell_type,IFC2X3_IfcOpenShell_type + }); + IFC2X3_IfcColourSpecification_type->set_subtypes({ + IFC2X3_IfcColourRgb_type + }); + IFC2X3_IfcProperty_type->set_subtypes({ + IFC2X3_IfcComplexProperty_type,IFC2X3_IfcSimpleProperty_type + }); + IFC2X3_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC2X3_IfcCompressorType_type,IFC2X3_IfcFanType_type,IFC2X3_IfcPumpType_type + }); + IFC2X3_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC2X3_IfcConnectedFaceSet_type,IFC2X3_IfcEdge_type,IFC2X3_IfcFace_type,IFC2X3_IfcFaceBound_type,IFC2X3_IfcLoop_type,IFC2X3_IfcPath_type,IFC2X3_IfcVertex_type + }); + IFC2X3_IfcConnectionGeometry_type->set_subtypes({ + IFC2X3_IfcConnectionCurveGeometry_type,IFC2X3_IfcConnectionPointGeometry_type,IFC2X3_IfcConnectionPortGeometry_type,IFC2X3_IfcConnectionSurfaceGeometry_type + }); + IFC2X3_IfcConnectionPointGeometry_type->set_subtypes({ + IFC2X3_IfcConnectionPointEccentricity_type + }); + IFC2X3_IfcConstructionResource_type->set_subtypes({ + IFC2X3_IfcConstructionEquipmentResource_type,IFC2X3_IfcConstructionMaterialResource_type,IFC2X3_IfcConstructionProductResource_type,IFC2X3_IfcCrewResource_type,IFC2X3_IfcLaborResource_type,IFC2X3_IfcSubContractResource_type + }); + IFC2X3_IfcResource_type->set_subtypes({ + IFC2X3_IfcConstructionResource_type + }); + IFC2X3_IfcNamedUnit_type->set_subtypes({ + IFC2X3_IfcContextDependentUnit_type,IFC2X3_IfcConversionBasedUnit_type,IFC2X3_IfcSIUnit_type + }); + IFC2X3_IfcAppliedValue_type->set_subtypes({ + IFC2X3_IfcCostValue_type,IFC2X3_IfcEnvironmentalImpactValue_type + }); + IFC2X3_IfcSolidModel_type->set_subtypes({ + IFC2X3_IfcCsgSolid_type,IFC2X3_IfcManifoldSolidBrep_type,IFC2X3_IfcSweptAreaSolid_type,IFC2X3_IfcSweptDiskSolid_type + }); + IFC2X3_IfcBoundedSurface_type->set_subtypes({ + IFC2X3_IfcCurveBoundedPlane_type,IFC2X3_IfcRectangularTrimmedSurface_type + }); + IFC2X3_IfcPresentationStyle_type->set_subtypes({ + IFC2X3_IfcCurveStyle_type,IFC2X3_IfcFillAreaStyle_type,IFC2X3_IfcSurfaceStyle_type,IFC2X3_IfcSymbolStyle_type,IFC2X3_IfcTextStyle_type + }); + IFC2X3_IfcDraughtingCalloutRelationship_type->set_subtypes({ + IFC2X3_IfcDimensionCalloutRelationship_type,IFC2X3_IfcDimensionPair_type + }); + IFC2X3_IfcAnnotationCurveOccurrence_type->set_subtypes({ + IFC2X3_IfcDimensionCurve_type,IFC2X3_IfcProjectionCurve_type + }); + IFC2X3_IfcDraughtingCallout_type->set_subtypes({ + IFC2X3_IfcDimensionCurveDirectedCallout_type,IFC2X3_IfcStructuredDimensionCallout_type + }); + IFC2X3_IfcTerminatorSymbol_type->set_subtypes({ + IFC2X3_IfcDimensionCurveTerminator_type + }); + IFC2X3_IfcElementComponent_type->set_subtypes({ + IFC2X3_IfcDiscreteAccessory_type,IFC2X3_IfcFastener_type + }); + IFC2X3_IfcElementComponentType_type->set_subtypes({ + IFC2X3_IfcDiscreteAccessoryType_type,IFC2X3_IfcFastenerType_type + }); + IFC2X3_IfcDistributionFlowElement_type->set_subtypes({ + IFC2X3_IfcDistributionChamberElement_type,IFC2X3_IfcEnergyConversionDevice_type,IFC2X3_IfcFlowController_type,IFC2X3_IfcFlowFitting_type,IFC2X3_IfcFlowMovingDevice_type,IFC2X3_IfcFlowSegment_type,IFC2X3_IfcFlowStorageDevice_type,IFC2X3_IfcFlowTerminal_type,IFC2X3_IfcFlowTreatmentDevice_type + }); + IFC2X3_IfcDistributionFlowElementType_type->set_subtypes({ + IFC2X3_IfcDistributionChamberElementType_type,IFC2X3_IfcEnergyConversionDeviceType_type,IFC2X3_IfcFlowControllerType_type,IFC2X3_IfcFlowFittingType_type,IFC2X3_IfcFlowMovingDeviceType_type,IFC2X3_IfcFlowSegmentType_type,IFC2X3_IfcFlowStorageDeviceType_type,IFC2X3_IfcFlowTerminalType_type,IFC2X3_IfcFlowTreatmentDeviceType_type + }); + IFC2X3_IfcDistributionElement_type->set_subtypes({ + IFC2X3_IfcDistributionControlElement_type,IFC2X3_IfcDistributionFlowElement_type + }); + IFC2X3_IfcDistributionElementType_type->set_subtypes({ + IFC2X3_IfcDistributionControlElementType_type,IFC2X3_IfcDistributionFlowElementType_type + }); + IFC2X3_IfcPort_type->set_subtypes({ + IFC2X3_IfcDistributionPort_type + }); + IFC2X3_IfcPropertySetDefinition_type->set_subtypes({ + IFC2X3_IfcDoorLiningProperties_type,IFC2X3_IfcDoorPanelProperties_type,IFC2X3_IfcElementQuantity_type,IFC2X3_IfcEnergyProperties_type,IFC2X3_IfcFluidFlowProperties_type,IFC2X3_IfcPermeableCoveringProperties_type,IFC2X3_IfcPropertySet_type,IFC2X3_IfcReinforcementDefinitionProperties_type,IFC2X3_IfcServiceLifeFactor_type,IFC2X3_IfcSoundProperties_type,IFC2X3_IfcSoundValue_type,IFC2X3_IfcSpaceThermalLoadProperties_type,IFC2X3_IfcWindowLiningProperties_type,IFC2X3_IfcWindowPanelProperties_type + }); + IFC2X3_IfcTypeProduct_type->set_subtypes({ + IFC2X3_IfcDoorStyle_type,IFC2X3_IfcElementType_type,IFC2X3_IfcWindowStyle_type + }); + IFC2X3_IfcPreDefinedColour_type->set_subtypes({ + IFC2X3_IfcDraughtingPreDefinedColour_type + }); + IFC2X3_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC2X3_IfcDraughtingPreDefinedCurveFont_type + }); + IFC2X3_IfcPreDefinedTextFont_type->set_subtypes({ + IFC2X3_IfcDraughtingPreDefinedTextFont_type,IFC2X3_IfcTextStyleFontModel_type + }); + IFC2X3_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC2X3_IfcDuctSilencerType_type,IFC2X3_IfcFilterType_type + }); + IFC2X3_IfcEdge_type->set_subtypes({ + IFC2X3_IfcEdgeCurve_type,IFC2X3_IfcOrientedEdge_type,IFC2X3_IfcSubedge_type + }); + IFC2X3_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC2X3_IfcEdgeFeature_type,IFC2X3_IfcOpeningElement_type + }); + IFC2X3_IfcLoop_type->set_subtypes({ + IFC2X3_IfcEdgeLoop_type,IFC2X3_IfcPolyLoop_type,IFC2X3_IfcVertexLoop_type + }); + IFC2X3_IfcFlowController_type->set_subtypes({ + IFC2X3_IfcElectricDistributionPoint_type + }); + IFC2X3_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC2X3_IfcElectricFlowStorageDeviceType_type,IFC2X3_IfcTankType_type + }); + IFC2X3_IfcEnergyProperties_type->set_subtypes({ + IFC2X3_IfcElectricalBaseProperties_type + }); + IFC2X3_IfcSystem_type->set_subtypes({ + IFC2X3_IfcElectricalCircuit_type,IFC2X3_IfcStructuralAnalysisModel_type + }); + IFC2X3_IfcMaterialProperties_type->set_subtypes({ + IFC2X3_IfcExtendedMaterialProperties_type,IFC2X3_IfcFuelProperties_type,IFC2X3_IfcGeneralMaterialProperties_type,IFC2X3_IfcHygroscopicMaterialProperties_type,IFC2X3_IfcMechanicalMaterialProperties_type,IFC2X3_IfcOpticalMaterialProperties_type,IFC2X3_IfcProductsOfCombustionProperties_type,IFC2X3_IfcThermalMaterialProperties_type,IFC2X3_IfcWaterProperties_type + }); + IFC2X3_IfcSweptAreaSolid_type->set_subtypes({ + IFC2X3_IfcExtrudedAreaSolid_type,IFC2X3_IfcRevolvedAreaSolid_type,IFC2X3_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC2X3_IfcFaceBound_type->set_subtypes({ + IFC2X3_IfcFaceOuterBound_type + }); + IFC2X3_IfcFace_type->set_subtypes({ + IFC2X3_IfcFaceSurface_type + }); + IFC2X3_IfcManifoldSolidBrep_type->set_subtypes({ + IFC2X3_IfcFacetedBrep_type,IFC2X3_IfcFacetedBrepWithVoids_type + }); + IFC2X3_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC2X3_IfcFailureConnectionCondition_type,IFC2X3_IfcSlippageConnectionCondition_type + }); + IFC2X3_IfcFeatureElement_type->set_subtypes({ + IFC2X3_IfcFeatureElementAddition_type,IFC2X3_IfcFeatureElementSubtraction_type + }); + IFC2X3_IfcFurnishingElementType_type->set_subtypes({ + IFC2X3_IfcFurnitureType_type,IFC2X3_IfcSystemFurnitureElementType_type + }); + IFC2X3_IfcProfileProperties_type->set_subtypes({ + IFC2X3_IfcGeneralProfileProperties_type,IFC2X3_IfcRibPlateProfileProperties_type + }); + IFC2X3_IfcGeometricSet_type->set_subtypes({ + IFC2X3_IfcGeometricCurveSet_type + }); + IFC2X3_IfcRepresentationContext_type->set_subtypes({ + IFC2X3_IfcGeometricRepresentationContext_type + }); + IFC2X3_IfcRepresentationItem_type->set_subtypes({ + IFC2X3_IfcGeometricRepresentationItem_type,IFC2X3_IfcMappedItem_type,IFC2X3_IfcStyledItem_type,IFC2X3_IfcTopologicalRepresentationItem_type + }); + IFC2X3_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC2X3_IfcGeometricRepresentationSubContext_type + }); + IFC2X3_IfcObjectPlacement_type->set_subtypes({ + IFC2X3_IfcGridPlacement_type,IFC2X3_IfcLocalPlacement_type + }); + IFC2X3_IfcTimeSeries_type->set_subtypes({ + IFC2X3_IfcIrregularTimeSeries_type,IFC2X3_IfcRegularTimeSeries_type + }); + IFC2X3_IfcLightSource_type->set_subtypes({ + IFC2X3_IfcLightSourceAmbient_type,IFC2X3_IfcLightSourceDirectional_type,IFC2X3_IfcLightSourceGoniometric_type,IFC2X3_IfcLightSourcePositional_type + }); + IFC2X3_IfcLightSourcePositional_type->set_subtypes({ + IFC2X3_IfcLightSourceSpot_type + }); + IFC2X3_IfcProductRepresentation_type->set_subtypes({ + IFC2X3_IfcMaterialDefinitionRepresentation_type,IFC2X3_IfcProductDefinitionShape_type + }); + IFC2X3_IfcMechanicalMaterialProperties_type->set_subtypes({ + IFC2X3_IfcMechanicalConcreteMaterialProperties_type,IFC2X3_IfcMechanicalSteelMaterialProperties_type + }); + IFC2X3_IfcFastener_type->set_subtypes({ + IFC2X3_IfcMechanicalFastener_type + }); + IFC2X3_IfcFastenerType_type->set_subtypes({ + IFC2X3_IfcMechanicalFastenerType_type + }); + IFC2X3_IfcConstraint_type->set_subtypes({ + IFC2X3_IfcMetric_type,IFC2X3_IfcObjective_type + }); + IFC2X3_IfcTask_type->set_subtypes({ + IFC2X3_IfcMove_type,IFC2X3_IfcOrderAction_type + }); + IFC2X3_IfcObjectDefinition_type->set_subtypes({ + IFC2X3_IfcObject_type,IFC2X3_IfcTypeObject_type + }); + IFC2X3_IfcRoot_type->set_subtypes({ + IFC2X3_IfcObjectDefinition_type,IFC2X3_IfcPropertyDefinition_type,IFC2X3_IfcRelationship_type + }); + IFC2X3_IfcActor_type->set_subtypes({ + IFC2X3_IfcOccupant_type + }); + IFC2X3_IfcPhysicalQuantity_type->set_subtypes({ + IFC2X3_IfcPhysicalComplexQuantity_type,IFC2X3_IfcPhysicalSimpleQuantity_type + }); + IFC2X3_IfcPlanarExtent_type->set_subtypes({ + IFC2X3_IfcPlanarBox_type + }); + IFC2X3_IfcElementarySurface_type->set_subtypes({ + IFC2X3_IfcPlane_type + }); + IFC2X3_IfcAddress_type->set_subtypes({ + IFC2X3_IfcPostalAddress_type,IFC2X3_IfcTelecomAddress_type + }); + IFC2X3_IfcPreDefinedItem_type->set_subtypes({ + IFC2X3_IfcPreDefinedColour_type,IFC2X3_IfcPreDefinedCurveFont_type,IFC2X3_IfcPreDefinedSymbol_type,IFC2X3_IfcPreDefinedTextFont_type + }); + IFC2X3_IfcPreDefinedSymbol_type->set_subtypes({ + IFC2X3_IfcPreDefinedDimensionSymbol_type,IFC2X3_IfcPreDefinedPointMarkerSymbol_type,IFC2X3_IfcPreDefinedTerminatorSymbol_type + }); + IFC2X3_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC2X3_IfcPresentationLayerWithStyle_type + }); + IFC2X3_IfcProcess_type->set_subtypes({ + IFC2X3_IfcProcedure_type,IFC2X3_IfcTask_type + }); + IFC2X3_IfcFeatureElementAddition_type->set_subtypes({ + IFC2X3_IfcProjectionElement_type + }); + IFC2X3_IfcSimpleProperty_type->set_subtypes({ + IFC2X3_IfcPropertyBoundedValue_type,IFC2X3_IfcPropertyEnumeratedValue_type,IFC2X3_IfcPropertyListValue_type,IFC2X3_IfcPropertyReferenceValue_type,IFC2X3_IfcPropertySingleValue_type,IFC2X3_IfcPropertyTableValue_type + }); + IFC2X3_IfcPropertyDefinition_type->set_subtypes({ + IFC2X3_IfcPropertySetDefinition_type + }); + IFC2X3_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC2X3_IfcQuantityArea_type,IFC2X3_IfcQuantityCount_type,IFC2X3_IfcQuantityLength_type,IFC2X3_IfcQuantityTime_type,IFC2X3_IfcQuantityVolume_type,IFC2X3_IfcQuantityWeight_type + }); + IFC2X3_IfcBezierCurve_type->set_subtypes({ + IFC2X3_IfcRationalBezierCurve_type + }); + IFC2X3_IfcRectangleProfileDef_type->set_subtypes({ + IFC2X3_IfcRectangleHollowProfileDef_type,IFC2X3_IfcRoundedRectangleProfileDef_type + }); + IFC2X3_IfcReinforcingElement_type->set_subtypes({ + IFC2X3_IfcReinforcingBar_type,IFC2X3_IfcReinforcingMesh_type,IFC2X3_IfcTendon_type,IFC2X3_IfcTendonAnchor_type + }); + IFC2X3_IfcRelDecomposes_type->set_subtypes({ + IFC2X3_IfcRelAggregates_type,IFC2X3_IfcRelNests_type + }); + IFC2X3_IfcRelationship_type->set_subtypes({ + IFC2X3_IfcRelAssigns_type,IFC2X3_IfcRelAssociates_type,IFC2X3_IfcRelConnects_type,IFC2X3_IfcRelDecomposes_type,IFC2X3_IfcRelDefines_type + }); + IFC2X3_IfcRelAssignsToControl_type->set_subtypes({ + IFC2X3_IfcRelAssignsTasks_type,IFC2X3_IfcRelAssignsToProjectOrder_type,IFC2X3_IfcRelSchedulesCostItems_type + }); + IFC2X3_IfcRelAssigns_type->set_subtypes({ + IFC2X3_IfcRelAssignsToActor_type,IFC2X3_IfcRelAssignsToControl_type,IFC2X3_IfcRelAssignsToGroup_type,IFC2X3_IfcRelAssignsToProcess_type,IFC2X3_IfcRelAssignsToProduct_type,IFC2X3_IfcRelAssignsToResource_type + }); + IFC2X3_IfcRelAssociates_type->set_subtypes({ + IFC2X3_IfcRelAssociatesAppliedValue_type,IFC2X3_IfcRelAssociatesApproval_type,IFC2X3_IfcRelAssociatesClassification_type,IFC2X3_IfcRelAssociatesConstraint_type,IFC2X3_IfcRelAssociatesDocument_type,IFC2X3_IfcRelAssociatesLibrary_type,IFC2X3_IfcRelAssociatesMaterial_type,IFC2X3_IfcRelAssociatesProfileProperties_type + }); + IFC2X3_IfcRelConnects_type->set_subtypes({ + IFC2X3_IfcRelConnectsElements_type,IFC2X3_IfcRelConnectsPortToElement_type,IFC2X3_IfcRelConnectsPorts_type,IFC2X3_IfcRelConnectsStructuralActivity_type,IFC2X3_IfcRelConnectsStructuralElement_type,IFC2X3_IfcRelConnectsStructuralMember_type,IFC2X3_IfcRelContainedInSpatialStructure_type,IFC2X3_IfcRelCoversBldgElements_type,IFC2X3_IfcRelCoversSpaces_type,IFC2X3_IfcRelFillsElement_type,IFC2X3_IfcRelFlowControlElements_type,IFC2X3_IfcRelInteractionRequirements_type,IFC2X3_IfcRelProjectsElement_type,IFC2X3_IfcRelReferencedInSpatialStructure_type,IFC2X3_IfcRelSequence_type,IFC2X3_IfcRelServicesBuildings_type,IFC2X3_IfcRelSpaceBoundary_type,IFC2X3_IfcRelVoidsElement_type + }); + IFC2X3_IfcRelConnectsElements_type->set_subtypes({ + IFC2X3_IfcRelConnectsPathElements_type,IFC2X3_IfcRelConnectsWithRealizingElements_type + }); + IFC2X3_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC2X3_IfcRelConnectsWithEccentricity_type + }); + IFC2X3_IfcRelDefines_type->set_subtypes({ + IFC2X3_IfcRelDefinesByProperties_type,IFC2X3_IfcRelDefinesByType_type + }); + IFC2X3_IfcRelAssignsToActor_type->set_subtypes({ + IFC2X3_IfcRelOccupiesSpaces_type + }); + IFC2X3_IfcRelDefinesByProperties_type->set_subtypes({ + IFC2X3_IfcRelOverridesProperties_type + }); + IFC2X3_IfcRepresentation_type->set_subtypes({ + IFC2X3_IfcShapeModel_type,IFC2X3_IfcStyleModel_type + }); + IFC2X3_IfcShapeModel_type->set_subtypes({ + IFC2X3_IfcShapeRepresentation_type,IFC2X3_IfcTopologyRepresentation_type + }); + IFC2X3_IfcSpatialStructureElementType_type->set_subtypes({ + IFC2X3_IfcSpaceType_type + }); + IFC2X3_IfcStructuralActivity_type->set_subtypes({ + IFC2X3_IfcStructuralAction_type,IFC2X3_IfcStructuralReaction_type + }); + IFC2X3_IfcStructuralItem_type->set_subtypes({ + IFC2X3_IfcStructuralConnection_type,IFC2X3_IfcStructuralMember_type + }); + IFC2X3_IfcStructuralConnection_type->set_subtypes({ + IFC2X3_IfcStructuralCurveConnection_type,IFC2X3_IfcStructuralPointConnection_type,IFC2X3_IfcStructuralSurfaceConnection_type + }); + IFC2X3_IfcStructuralMember_type->set_subtypes({ + IFC2X3_IfcStructuralCurveMember_type,IFC2X3_IfcStructuralSurfaceMember_type + }); + IFC2X3_IfcStructuralCurveMember_type->set_subtypes({ + IFC2X3_IfcStructuralCurveMemberVarying_type + }); + IFC2X3_IfcStructuralAction_type->set_subtypes({ + IFC2X3_IfcStructuralLinearAction_type,IFC2X3_IfcStructuralPlanarAction_type,IFC2X3_IfcStructuralPointAction_type + }); + IFC2X3_IfcStructuralLinearAction_type->set_subtypes({ + IFC2X3_IfcStructuralLinearActionVarying_type + }); + IFC2X3_IfcStructuralLoadStatic_type->set_subtypes({ + IFC2X3_IfcStructuralLoadLinearForce_type,IFC2X3_IfcStructuralLoadPlanarForce_type,IFC2X3_IfcStructuralLoadSingleDisplacement_type,IFC2X3_IfcStructuralLoadSingleForce_type,IFC2X3_IfcStructuralLoadTemperature_type + }); + IFC2X3_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC2X3_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC2X3_IfcStructuralLoadSingleForceWarping_type + }); + IFC2X3_IfcStructuralLoad_type->set_subtypes({ + IFC2X3_IfcStructuralLoadStatic_type + }); + IFC2X3_IfcStructuralPlanarAction_type->set_subtypes({ + IFC2X3_IfcStructuralPlanarActionVarying_type + }); + IFC2X3_IfcStructuralReaction_type->set_subtypes({ + IFC2X3_IfcStructuralPointReaction_type + }); + IFC2X3_IfcGeneralProfileProperties_type->set_subtypes({ + IFC2X3_IfcStructuralProfileProperties_type + }); + IFC2X3_IfcStructuralProfileProperties_type->set_subtypes({ + IFC2X3_IfcStructuralSteelProfileProperties_type + }); + IFC2X3_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC2X3_IfcStructuralSurfaceMemberVarying_type + }); + IFC2X3_IfcStyleModel_type->set_subtypes({ + IFC2X3_IfcStyledRepresentation_type + }); + IFC2X3_IfcSweptSurface_type->set_subtypes({ + IFC2X3_IfcSurfaceOfLinearExtrusion_type,IFC2X3_IfcSurfaceOfRevolution_type + }); + IFC2X3_IfcSurfaceStyleShading_type->set_subtypes({ + IFC2X3_IfcSurfaceStyleRendering_type + }); + IFC2X3_IfcAnnotationSymbolOccurrence_type->set_subtypes({ + IFC2X3_IfcTerminatorSymbol_type + }); + IFC2X3_IfcTextLiteral_type->set_subtypes({ + IFC2X3_IfcTextLiteralWithExtent_type + }); + IFC2X3_IfcTextureCoordinate_type->set_subtypes({ + IFC2X3_IfcTextureCoordinateGenerator_type,IFC2X3_IfcTextureMap_type + }); + IFC2X3_IfcOneDirectionRepeatFactor_type->set_subtypes({ + IFC2X3_IfcTwoDirectionRepeatFactor_type + }); + IFC2X3_IfcTypeObject_type->set_subtypes({ + IFC2X3_IfcTypeProduct_type + }); + IFC2X3_IfcVertex_type->set_subtypes({ + IFC2X3_IfcVertexPoint_type + }); + IFC2X3_IfcDiscreteAccessoryType_type->set_subtypes({ + IFC2X3_IfcVibrationIsolatorType_type + }); + IFC2X3_IfcWall_type->set_subtypes({ + IFC2X3_IfcWallStandardCase_type + }); + IFC2X3_IfcWorkControl_type->set_subtypes({ + IFC2X3_IfcWorkPlan_type,IFC2X3_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(980); - declarations.push_back(IFC2X3_Ifc2DCompositeCurve_type); - declarations.push_back(IFC2X3_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC2X3_IfcAccelerationMeasure_type); - declarations.push_back(IFC2X3_IfcActionRequest_type); - declarations.push_back(IFC2X3_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC2X3_IfcActionTypeEnum_type); - declarations.push_back(IFC2X3_IfcActor_type); - declarations.push_back(IFC2X3_IfcActorRole_type); - declarations.push_back(IFC2X3_IfcActorSelect_type); - declarations.push_back(IFC2X3_IfcActuatorType_type); - declarations.push_back(IFC2X3_IfcActuatorTypeEnum_type); - declarations.push_back(IFC2X3_IfcAddress_type); - declarations.push_back(IFC2X3_IfcAddressTypeEnum_type); - declarations.push_back(IFC2X3_IfcAheadOrBehind_type); - declarations.push_back(IFC2X3_IfcAirTerminalBoxType_type); - declarations.push_back(IFC2X3_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC2X3_IfcAirTerminalType_type); - declarations.push_back(IFC2X3_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC2X3_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC2X3_IfcAlarmType_type); - declarations.push_back(IFC2X3_IfcAlarmTypeEnum_type); - declarations.push_back(IFC2X3_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC2X3_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC2X3_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC2X3_IfcAngularDimension_type); - declarations.push_back(IFC2X3_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC2X3_IfcAnnotation_type); - declarations.push_back(IFC2X3_IfcAnnotationCurveOccurrence_type); - declarations.push_back(IFC2X3_IfcAnnotationFillArea_type); - declarations.push_back(IFC2X3_IfcAnnotationFillAreaOccurrence_type); - declarations.push_back(IFC2X3_IfcAnnotationOccurrence_type); - declarations.push_back(IFC2X3_IfcAnnotationSurface_type); - declarations.push_back(IFC2X3_IfcAnnotationSurfaceOccurrence_type); - declarations.push_back(IFC2X3_IfcAnnotationSymbolOccurrence_type); - declarations.push_back(IFC2X3_IfcAnnotationTextOccurrence_type); - declarations.push_back(IFC2X3_IfcApplication_type); - declarations.push_back(IFC2X3_IfcAppliedValue_type); - declarations.push_back(IFC2X3_IfcAppliedValueRelationship_type); - declarations.push_back(IFC2X3_IfcAppliedValueSelect_type); - declarations.push_back(IFC2X3_IfcApproval_type); - declarations.push_back(IFC2X3_IfcApprovalActorRelationship_type); - declarations.push_back(IFC2X3_IfcApprovalPropertyRelationship_type); - declarations.push_back(IFC2X3_IfcApprovalRelationship_type); - declarations.push_back(IFC2X3_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC2X3_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC2X3_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC2X3_IfcAreaMeasure_type); - declarations.push_back(IFC2X3_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC2X3_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC2X3_IfcAsset_type); - declarations.push_back(IFC2X3_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcAxis1Placement_type); - declarations.push_back(IFC2X3_IfcAxis2Placement_type); - declarations.push_back(IFC2X3_IfcAxis2Placement2D_type); - declarations.push_back(IFC2X3_IfcAxis2Placement3D_type); - declarations.push_back(IFC2X3_IfcBeam_type); - declarations.push_back(IFC2X3_IfcBeamType_type); - declarations.push_back(IFC2X3_IfcBeamTypeEnum_type); - declarations.push_back(IFC2X3_IfcBenchmarkEnum_type); - declarations.push_back(IFC2X3_IfcBezierCurve_type); - declarations.push_back(IFC2X3_IfcBlobTexture_type); - declarations.push_back(IFC2X3_IfcBlock_type); - declarations.push_back(IFC2X3_IfcBoilerType_type); - declarations.push_back(IFC2X3_IfcBoilerTypeEnum_type); - declarations.push_back(IFC2X3_IfcBoolean_type); - declarations.push_back(IFC2X3_IfcBooleanClippingResult_type); - declarations.push_back(IFC2X3_IfcBooleanOperand_type); - declarations.push_back(IFC2X3_IfcBooleanOperator_type); - declarations.push_back(IFC2X3_IfcBooleanResult_type); - declarations.push_back(IFC2X3_IfcBoundaryCondition_type); - declarations.push_back(IFC2X3_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC2X3_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC2X3_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC2X3_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC2X3_IfcBoundedCurve_type); - declarations.push_back(IFC2X3_IfcBoundedSurface_type); - declarations.push_back(IFC2X3_IfcBoundingBox_type); - declarations.push_back(IFC2X3_IfcBoxAlignment_type); - declarations.push_back(IFC2X3_IfcBoxedHalfSpace_type); - declarations.push_back(IFC2X3_IfcBSplineCurve_type); - declarations.push_back(IFC2X3_IfcBSplineCurveForm_type); - declarations.push_back(IFC2X3_IfcBuilding_type); - declarations.push_back(IFC2X3_IfcBuildingElement_type); - declarations.push_back(IFC2X3_IfcBuildingElementComponent_type); - declarations.push_back(IFC2X3_IfcBuildingElementPart_type); - declarations.push_back(IFC2X3_IfcBuildingElementProxy_type); - declarations.push_back(IFC2X3_IfcBuildingElementProxyType_type); - declarations.push_back(IFC2X3_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC2X3_IfcBuildingElementType_type); - declarations.push_back(IFC2X3_IfcBuildingStorey_type); - declarations.push_back(IFC2X3_IfcCableCarrierFittingType_type); - declarations.push_back(IFC2X3_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC2X3_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC2X3_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC2X3_IfcCableSegmentType_type); - declarations.push_back(IFC2X3_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC2X3_IfcCalendarDate_type); - declarations.push_back(IFC2X3_IfcCartesianPoint_type); - declarations.push_back(IFC2X3_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC2X3_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC2X3_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC2X3_IfcCenterLineProfileDef_type); - declarations.push_back(IFC2X3_IfcChamferEdgeFeature_type); - declarations.push_back(IFC2X3_IfcChangeActionEnum_type); - declarations.push_back(IFC2X3_IfcCharacterStyleSelect_type); - declarations.push_back(IFC2X3_IfcChillerType_type); - declarations.push_back(IFC2X3_IfcChillerTypeEnum_type); - declarations.push_back(IFC2X3_IfcCircle_type); - declarations.push_back(IFC2X3_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC2X3_IfcCircleProfileDef_type); - declarations.push_back(IFC2X3_IfcClassification_type); - declarations.push_back(IFC2X3_IfcClassificationItem_type); - declarations.push_back(IFC2X3_IfcClassificationItemRelationship_type); - declarations.push_back(IFC2X3_IfcClassificationNotation_type); - declarations.push_back(IFC2X3_IfcClassificationNotationFacet_type); - declarations.push_back(IFC2X3_IfcClassificationNotationSelect_type); - declarations.push_back(IFC2X3_IfcClassificationReference_type); - declarations.push_back(IFC2X3_IfcClosedShell_type); - declarations.push_back(IFC2X3_IfcCoilType_type); - declarations.push_back(IFC2X3_IfcCoilTypeEnum_type); - declarations.push_back(IFC2X3_IfcColour_type); - declarations.push_back(IFC2X3_IfcColourOrFactor_type); - declarations.push_back(IFC2X3_IfcColourRgb_type); - declarations.push_back(IFC2X3_IfcColourSpecification_type); - declarations.push_back(IFC2X3_IfcColumn_type); - declarations.push_back(IFC2X3_IfcColumnType_type); - declarations.push_back(IFC2X3_IfcColumnTypeEnum_type); - declarations.push_back(IFC2X3_IfcComplexNumber_type); - declarations.push_back(IFC2X3_IfcComplexProperty_type); - declarations.push_back(IFC2X3_IfcCompositeCurve_type); - declarations.push_back(IFC2X3_IfcCompositeCurveSegment_type); - declarations.push_back(IFC2X3_IfcCompositeProfileDef_type); - declarations.push_back(IFC2X3_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC2X3_IfcCompressorType_type); - declarations.push_back(IFC2X3_IfcCompressorTypeEnum_type); - declarations.push_back(IFC2X3_IfcCondenserType_type); - declarations.push_back(IFC2X3_IfcCondenserTypeEnum_type); - declarations.push_back(IFC2X3_IfcCondition_type); - declarations.push_back(IFC2X3_IfcConditionCriterion_type); - declarations.push_back(IFC2X3_IfcConditionCriterionSelect_type); - declarations.push_back(IFC2X3_IfcConic_type); - declarations.push_back(IFC2X3_IfcConnectedFaceSet_type); - declarations.push_back(IFC2X3_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC2X3_IfcConnectionGeometry_type); - declarations.push_back(IFC2X3_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC2X3_IfcConnectionPointGeometry_type); - declarations.push_back(IFC2X3_IfcConnectionPortGeometry_type); - declarations.push_back(IFC2X3_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC2X3_IfcConnectionTypeEnum_type); - declarations.push_back(IFC2X3_IfcConstraint_type); - declarations.push_back(IFC2X3_IfcConstraintAggregationRelationship_type); - declarations.push_back(IFC2X3_IfcConstraintClassificationRelationship_type); - declarations.push_back(IFC2X3_IfcConstraintEnum_type); - declarations.push_back(IFC2X3_IfcConstraintRelationship_type); - declarations.push_back(IFC2X3_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC2X3_IfcConstructionMaterialResource_type); - declarations.push_back(IFC2X3_IfcConstructionProductResource_type); - declarations.push_back(IFC2X3_IfcConstructionResource_type); - declarations.push_back(IFC2X3_IfcContextDependentMeasure_type); - declarations.push_back(IFC2X3_IfcContextDependentUnit_type); - declarations.push_back(IFC2X3_IfcControl_type); - declarations.push_back(IFC2X3_IfcControllerType_type); - declarations.push_back(IFC2X3_IfcControllerTypeEnum_type); - declarations.push_back(IFC2X3_IfcConversionBasedUnit_type); - declarations.push_back(IFC2X3_IfcCooledBeamType_type); - declarations.push_back(IFC2X3_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC2X3_IfcCoolingTowerType_type); - declarations.push_back(IFC2X3_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC2X3_IfcCoordinatedUniversalTimeOffset_type); - declarations.push_back(IFC2X3_IfcCostItem_type); - declarations.push_back(IFC2X3_IfcCostSchedule_type); - declarations.push_back(IFC2X3_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC2X3_IfcCostValue_type); - declarations.push_back(IFC2X3_IfcCountMeasure_type); - declarations.push_back(IFC2X3_IfcCovering_type); - declarations.push_back(IFC2X3_IfcCoveringType_type); - declarations.push_back(IFC2X3_IfcCoveringTypeEnum_type); - declarations.push_back(IFC2X3_IfcCraneRailAShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcCraneRailFShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcCrewResource_type); - declarations.push_back(IFC2X3_IfcCsgPrimitive3D_type); - declarations.push_back(IFC2X3_IfcCsgSelect_type); - declarations.push_back(IFC2X3_IfcCsgSolid_type); - declarations.push_back(IFC2X3_IfcCShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcCurrencyEnum_type); - declarations.push_back(IFC2X3_IfcCurrencyRelationship_type); - declarations.push_back(IFC2X3_IfcCurtainWall_type); - declarations.push_back(IFC2X3_IfcCurtainWallType_type); - declarations.push_back(IFC2X3_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC2X3_IfcCurvatureMeasure_type); - declarations.push_back(IFC2X3_IfcCurve_type); - declarations.push_back(IFC2X3_IfcCurveBoundedPlane_type); - declarations.push_back(IFC2X3_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC2X3_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC2X3_IfcCurveStyle_type); - declarations.push_back(IFC2X3_IfcCurveStyleFont_type); - declarations.push_back(IFC2X3_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC2X3_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC2X3_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC2X3_IfcDamperType_type); - declarations.push_back(IFC2X3_IfcDamperTypeEnum_type); - declarations.push_back(IFC2X3_IfcDataOriginEnum_type); - declarations.push_back(IFC2X3_IfcDateAndTime_type); - declarations.push_back(IFC2X3_IfcDateTimeSelect_type); - declarations.push_back(IFC2X3_IfcDayInMonthNumber_type); - declarations.push_back(IFC2X3_IfcDaylightSavingHour_type); - declarations.push_back(IFC2X3_IfcDefinedSymbol_type); - declarations.push_back(IFC2X3_IfcDefinedSymbolSelect_type); - declarations.push_back(IFC2X3_IfcDerivedMeasureValue_type); - declarations.push_back(IFC2X3_IfcDerivedProfileDef_type); - declarations.push_back(IFC2X3_IfcDerivedUnit_type); - declarations.push_back(IFC2X3_IfcDerivedUnitElement_type); - declarations.push_back(IFC2X3_IfcDerivedUnitEnum_type); - declarations.push_back(IFC2X3_IfcDescriptiveMeasure_type); - declarations.push_back(IFC2X3_IfcDiameterDimension_type); - declarations.push_back(IFC2X3_IfcDimensionalExponents_type); - declarations.push_back(IFC2X3_IfcDimensionCalloutRelationship_type); - declarations.push_back(IFC2X3_IfcDimensionCount_type); - declarations.push_back(IFC2X3_IfcDimensionCurve_type); - declarations.push_back(IFC2X3_IfcDimensionCurveDirectedCallout_type); - declarations.push_back(IFC2X3_IfcDimensionCurveTerminator_type); - declarations.push_back(IFC2X3_IfcDimensionExtentUsage_type); - declarations.push_back(IFC2X3_IfcDimensionPair_type); - declarations.push_back(IFC2X3_IfcDirection_type); - declarations.push_back(IFC2X3_IfcDirectionSenseEnum_type); - declarations.push_back(IFC2X3_IfcDiscreteAccessory_type); - declarations.push_back(IFC2X3_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC2X3_IfcDistributionChamberElement_type); - declarations.push_back(IFC2X3_IfcDistributionChamberElementType_type); - declarations.push_back(IFC2X3_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC2X3_IfcDistributionControlElement_type); - declarations.push_back(IFC2X3_IfcDistributionControlElementType_type); - declarations.push_back(IFC2X3_IfcDistributionElement_type); - declarations.push_back(IFC2X3_IfcDistributionElementType_type); - declarations.push_back(IFC2X3_IfcDistributionFlowElement_type); - declarations.push_back(IFC2X3_IfcDistributionFlowElementType_type); - declarations.push_back(IFC2X3_IfcDistributionPort_type); - declarations.push_back(IFC2X3_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC2X3_IfcDocumentElectronicFormat_type); - declarations.push_back(IFC2X3_IfcDocumentInformation_type); - declarations.push_back(IFC2X3_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC2X3_IfcDocumentReference_type); - declarations.push_back(IFC2X3_IfcDocumentSelect_type); - declarations.push_back(IFC2X3_IfcDocumentStatusEnum_type); - declarations.push_back(IFC2X3_IfcDoor_type); - declarations.push_back(IFC2X3_IfcDoorLiningProperties_type); - declarations.push_back(IFC2X3_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC2X3_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC2X3_IfcDoorPanelProperties_type); - declarations.push_back(IFC2X3_IfcDoorStyle_type); - declarations.push_back(IFC2X3_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC2X3_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC2X3_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC2X3_IfcDraughtingCallout_type); - declarations.push_back(IFC2X3_IfcDraughtingCalloutElement_type); - declarations.push_back(IFC2X3_IfcDraughtingCalloutRelationship_type); - declarations.push_back(IFC2X3_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC2X3_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC2X3_IfcDraughtingPreDefinedTextFont_type); - declarations.push_back(IFC2X3_IfcDuctFittingType_type); - declarations.push_back(IFC2X3_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC2X3_IfcDuctSegmentType_type); - declarations.push_back(IFC2X3_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC2X3_IfcDuctSilencerType_type); - declarations.push_back(IFC2X3_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC2X3_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC2X3_IfcEdge_type); - declarations.push_back(IFC2X3_IfcEdgeCurve_type); - declarations.push_back(IFC2X3_IfcEdgeFeature_type); - declarations.push_back(IFC2X3_IfcEdgeLoop_type); - declarations.push_back(IFC2X3_IfcElectricalBaseProperties_type); - declarations.push_back(IFC2X3_IfcElectricalCircuit_type); - declarations.push_back(IFC2X3_IfcElectricalElement_type); - declarations.push_back(IFC2X3_IfcElectricApplianceType_type); - declarations.push_back(IFC2X3_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC2X3_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC2X3_IfcElectricChargeMeasure_type); - declarations.push_back(IFC2X3_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC2X3_IfcElectricCurrentEnum_type); - declarations.push_back(IFC2X3_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC2X3_IfcElectricDistributionPoint_type); - declarations.push_back(IFC2X3_IfcElectricDistributionPointFunctionEnum_type); - declarations.push_back(IFC2X3_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC2X3_IfcElectricGeneratorType_type); - declarations.push_back(IFC2X3_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC2X3_IfcElectricHeaterType_type); - declarations.push_back(IFC2X3_IfcElectricHeaterTypeEnum_type); - declarations.push_back(IFC2X3_IfcElectricMotorType_type); - declarations.push_back(IFC2X3_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC2X3_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC2X3_IfcElectricTimeControlType_type); - declarations.push_back(IFC2X3_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC2X3_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC2X3_IfcElement_type); - declarations.push_back(IFC2X3_IfcElementarySurface_type); - declarations.push_back(IFC2X3_IfcElementAssembly_type); - declarations.push_back(IFC2X3_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC2X3_IfcElementComponent_type); - declarations.push_back(IFC2X3_IfcElementComponentType_type); - declarations.push_back(IFC2X3_IfcElementCompositionEnum_type); - declarations.push_back(IFC2X3_IfcElementQuantity_type); - declarations.push_back(IFC2X3_IfcElementType_type); - declarations.push_back(IFC2X3_IfcEllipse_type); - declarations.push_back(IFC2X3_IfcEllipseProfileDef_type); - declarations.push_back(IFC2X3_IfcEnergyConversionDevice_type); - declarations.push_back(IFC2X3_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC2X3_IfcEnergyMeasure_type); - declarations.push_back(IFC2X3_IfcEnergyProperties_type); - declarations.push_back(IFC2X3_IfcEnergySequenceEnum_type); - declarations.push_back(IFC2X3_IfcEnvironmentalImpactCategoryEnum_type); - declarations.push_back(IFC2X3_IfcEnvironmentalImpactValue_type); - declarations.push_back(IFC2X3_IfcEquipmentElement_type); - declarations.push_back(IFC2X3_IfcEquipmentStandard_type); - declarations.push_back(IFC2X3_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC2X3_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC2X3_IfcEvaporatorType_type); - declarations.push_back(IFC2X3_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC2X3_IfcExtendedMaterialProperties_type); - declarations.push_back(IFC2X3_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC2X3_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC2X3_IfcExternallyDefinedSymbol_type); - declarations.push_back(IFC2X3_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC2X3_IfcExternalReference_type); - declarations.push_back(IFC2X3_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC2X3_IfcFace_type); - declarations.push_back(IFC2X3_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC2X3_IfcFaceBound_type); - declarations.push_back(IFC2X3_IfcFaceOuterBound_type); - declarations.push_back(IFC2X3_IfcFaceSurface_type); - declarations.push_back(IFC2X3_IfcFacetedBrep_type); - declarations.push_back(IFC2X3_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC2X3_IfcFailureConnectionCondition_type); - declarations.push_back(IFC2X3_IfcFanType_type); - declarations.push_back(IFC2X3_IfcFanTypeEnum_type); - declarations.push_back(IFC2X3_IfcFastener_type); - declarations.push_back(IFC2X3_IfcFastenerType_type); - declarations.push_back(IFC2X3_IfcFeatureElement_type); - declarations.push_back(IFC2X3_IfcFeatureElementAddition_type); - declarations.push_back(IFC2X3_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC2X3_IfcFillAreaStyle_type); - declarations.push_back(IFC2X3_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC2X3_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC2X3_IfcFillAreaStyleTileShapeSelect_type); - declarations.push_back(IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type); - declarations.push_back(IFC2X3_IfcFillStyleSelect_type); - declarations.push_back(IFC2X3_IfcFilterType_type); - declarations.push_back(IFC2X3_IfcFilterTypeEnum_type); - declarations.push_back(IFC2X3_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC2X3_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC2X3_IfcFlowController_type); - declarations.push_back(IFC2X3_IfcFlowControllerType_type); - declarations.push_back(IFC2X3_IfcFlowDirectionEnum_type); - declarations.push_back(IFC2X3_IfcFlowFitting_type); - declarations.push_back(IFC2X3_IfcFlowFittingType_type); - declarations.push_back(IFC2X3_IfcFlowInstrumentType_type); - declarations.push_back(IFC2X3_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC2X3_IfcFlowMeterType_type); - declarations.push_back(IFC2X3_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC2X3_IfcFlowMovingDevice_type); - declarations.push_back(IFC2X3_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC2X3_IfcFlowSegment_type); - declarations.push_back(IFC2X3_IfcFlowSegmentType_type); - declarations.push_back(IFC2X3_IfcFlowStorageDevice_type); - declarations.push_back(IFC2X3_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC2X3_IfcFlowTerminal_type); - declarations.push_back(IFC2X3_IfcFlowTerminalType_type); - declarations.push_back(IFC2X3_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC2X3_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC2X3_IfcFluidFlowProperties_type); - declarations.push_back(IFC2X3_IfcFontStyle_type); - declarations.push_back(IFC2X3_IfcFontVariant_type); - declarations.push_back(IFC2X3_IfcFontWeight_type); - declarations.push_back(IFC2X3_IfcFooting_type); - declarations.push_back(IFC2X3_IfcFootingTypeEnum_type); - declarations.push_back(IFC2X3_IfcForceMeasure_type); - declarations.push_back(IFC2X3_IfcFrequencyMeasure_type); - declarations.push_back(IFC2X3_IfcFuelProperties_type); - declarations.push_back(IFC2X3_IfcFurnishingElement_type); - declarations.push_back(IFC2X3_IfcFurnishingElementType_type); - declarations.push_back(IFC2X3_IfcFurnitureStandard_type); - declarations.push_back(IFC2X3_IfcFurnitureType_type); - declarations.push_back(IFC2X3_IfcGasTerminalType_type); - declarations.push_back(IFC2X3_IfcGasTerminalTypeEnum_type); - declarations.push_back(IFC2X3_IfcGeneralMaterialProperties_type); - declarations.push_back(IFC2X3_IfcGeneralProfileProperties_type); - declarations.push_back(IFC2X3_IfcGeometricCurveSet_type); - declarations.push_back(IFC2X3_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC2X3_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC2X3_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC2X3_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC2X3_IfcGeometricSet_type); - declarations.push_back(IFC2X3_IfcGeometricSetSelect_type); - declarations.push_back(IFC2X3_IfcGloballyUniqueId_type); - declarations.push_back(IFC2X3_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC2X3_IfcGrid_type); - declarations.push_back(IFC2X3_IfcGridAxis_type); - declarations.push_back(IFC2X3_IfcGridPlacement_type); - declarations.push_back(IFC2X3_IfcGroup_type); - declarations.push_back(IFC2X3_IfcHalfSpaceSolid_type); - declarations.push_back(IFC2X3_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC2X3_IfcHeatExchangerType_type); - declarations.push_back(IFC2X3_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC2X3_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC2X3_IfcHeatingValueMeasure_type); - declarations.push_back(IFC2X3_IfcHourInDay_type); - declarations.push_back(IFC2X3_IfcHumidifierType_type); - declarations.push_back(IFC2X3_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC2X3_IfcHygroscopicMaterialProperties_type); - declarations.push_back(IFC2X3_IfcIdentifier_type); - declarations.push_back(IFC2X3_IfcIlluminanceMeasure_type); - declarations.push_back(IFC2X3_IfcImageTexture_type); - declarations.push_back(IFC2X3_IfcInductanceMeasure_type); - declarations.push_back(IFC2X3_IfcInteger_type); - declarations.push_back(IFC2X3_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC2X3_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC2X3_IfcInventory_type); - declarations.push_back(IFC2X3_IfcInventoryTypeEnum_type); - declarations.push_back(IFC2X3_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC2X3_IfcIrregularTimeSeries_type); - declarations.push_back(IFC2X3_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC2X3_IfcIShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC2X3_IfcJunctionBoxType_type); - declarations.push_back(IFC2X3_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC2X3_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC2X3_IfcLabel_type); - declarations.push_back(IFC2X3_IfcLaborResource_type); - declarations.push_back(IFC2X3_IfcLampType_type); - declarations.push_back(IFC2X3_IfcLampTypeEnum_type); - declarations.push_back(IFC2X3_IfcLayeredItem_type); - declarations.push_back(IFC2X3_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC2X3_IfcLengthMeasure_type); - declarations.push_back(IFC2X3_IfcLibraryInformation_type); - declarations.push_back(IFC2X3_IfcLibraryReference_type); - declarations.push_back(IFC2X3_IfcLibrarySelect_type); - declarations.push_back(IFC2X3_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC2X3_IfcLightDistributionData_type); - declarations.push_back(IFC2X3_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC2X3_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC2X3_IfcLightFixtureType_type); - declarations.push_back(IFC2X3_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC2X3_IfcLightIntensityDistribution_type); - declarations.push_back(IFC2X3_IfcLightSource_type); - declarations.push_back(IFC2X3_IfcLightSourceAmbient_type); - declarations.push_back(IFC2X3_IfcLightSourceDirectional_type); - declarations.push_back(IFC2X3_IfcLightSourceGoniometric_type); - declarations.push_back(IFC2X3_IfcLightSourcePositional_type); - declarations.push_back(IFC2X3_IfcLightSourceSpot_type); - declarations.push_back(IFC2X3_IfcLine_type); - declarations.push_back(IFC2X3_IfcLinearDimension_type); - declarations.push_back(IFC2X3_IfcLinearForceMeasure_type); - declarations.push_back(IFC2X3_IfcLinearMomentMeasure_type); - declarations.push_back(IFC2X3_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC2X3_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC2X3_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC2X3_IfcLocalPlacement_type); - declarations.push_back(IFC2X3_IfcLocalTime_type); - declarations.push_back(IFC2X3_IfcLogical_type); - declarations.push_back(IFC2X3_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC2X3_IfcLoop_type); - declarations.push_back(IFC2X3_IfcLShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC2X3_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC2X3_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC2X3_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC2X3_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC2X3_IfcManifoldSolidBrep_type); - declarations.push_back(IFC2X3_IfcMappedItem_type); - declarations.push_back(IFC2X3_IfcMassDensityMeasure_type); - declarations.push_back(IFC2X3_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC2X3_IfcMassMeasure_type); - declarations.push_back(IFC2X3_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC2X3_IfcMaterial_type); - declarations.push_back(IFC2X3_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC2X3_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC2X3_IfcMaterialLayer_type); - declarations.push_back(IFC2X3_IfcMaterialLayerSet_type); - declarations.push_back(IFC2X3_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC2X3_IfcMaterialList_type); - declarations.push_back(IFC2X3_IfcMaterialProperties_type); - declarations.push_back(IFC2X3_IfcMaterialSelect_type); - declarations.push_back(IFC2X3_IfcMeasureValue_type); - declarations.push_back(IFC2X3_IfcMeasureWithUnit_type); - declarations.push_back(IFC2X3_IfcMechanicalConcreteMaterialProperties_type); - declarations.push_back(IFC2X3_IfcMechanicalFastener_type); - declarations.push_back(IFC2X3_IfcMechanicalFastenerType_type); - declarations.push_back(IFC2X3_IfcMechanicalMaterialProperties_type); - declarations.push_back(IFC2X3_IfcMechanicalSteelMaterialProperties_type); - declarations.push_back(IFC2X3_IfcMember_type); - declarations.push_back(IFC2X3_IfcMemberType_type); - declarations.push_back(IFC2X3_IfcMemberTypeEnum_type); - declarations.push_back(IFC2X3_IfcMetric_type); - declarations.push_back(IFC2X3_IfcMetricValueSelect_type); - declarations.push_back(IFC2X3_IfcMinuteInHour_type); - declarations.push_back(IFC2X3_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC2X3_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC2X3_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC2X3_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC2X3_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC2X3_IfcMonetaryMeasure_type); - declarations.push_back(IFC2X3_IfcMonetaryUnit_type); - declarations.push_back(IFC2X3_IfcMonthInYearNumber_type); - declarations.push_back(IFC2X3_IfcMotorConnectionType_type); - declarations.push_back(IFC2X3_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC2X3_IfcMove_type); - declarations.push_back(IFC2X3_IfcNamedUnit_type); - declarations.push_back(IFC2X3_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC2X3_IfcNullStyle_type); - declarations.push_back(IFC2X3_IfcNumericMeasure_type); - declarations.push_back(IFC2X3_IfcObject_type); - declarations.push_back(IFC2X3_IfcObjectDefinition_type); - declarations.push_back(IFC2X3_IfcObjective_type); - declarations.push_back(IFC2X3_IfcObjectiveEnum_type); - declarations.push_back(IFC2X3_IfcObjectPlacement_type); - declarations.push_back(IFC2X3_IfcObjectReferenceSelect_type); - declarations.push_back(IFC2X3_IfcObjectTypeEnum_type); - declarations.push_back(IFC2X3_IfcOccupant_type); - declarations.push_back(IFC2X3_IfcOccupantTypeEnum_type); - declarations.push_back(IFC2X3_IfcOffsetCurve2D_type); - declarations.push_back(IFC2X3_IfcOffsetCurve3D_type); - declarations.push_back(IFC2X3_IfcOneDirectionRepeatFactor_type); - declarations.push_back(IFC2X3_IfcOpeningElement_type); - declarations.push_back(IFC2X3_IfcOpenShell_type); - declarations.push_back(IFC2X3_IfcOpticalMaterialProperties_type); - declarations.push_back(IFC2X3_IfcOrderAction_type); - declarations.push_back(IFC2X3_IfcOrganization_type); - declarations.push_back(IFC2X3_IfcOrganizationRelationship_type); - declarations.push_back(IFC2X3_IfcOrientationSelect_type); - declarations.push_back(IFC2X3_IfcOrientedEdge_type); - declarations.push_back(IFC2X3_IfcOutletType_type); - declarations.push_back(IFC2X3_IfcOutletTypeEnum_type); - declarations.push_back(IFC2X3_IfcOwnerHistory_type); - declarations.push_back(IFC2X3_IfcParameterizedProfileDef_type); - declarations.push_back(IFC2X3_IfcParameterValue_type); - declarations.push_back(IFC2X3_IfcPath_type); - declarations.push_back(IFC2X3_IfcPerformanceHistory_type); - declarations.push_back(IFC2X3_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC2X3_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC2X3_IfcPermit_type); - declarations.push_back(IFC2X3_IfcPerson_type); - declarations.push_back(IFC2X3_IfcPersonAndOrganization_type); - declarations.push_back(IFC2X3_IfcPHMeasure_type); - declarations.push_back(IFC2X3_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC2X3_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC2X3_IfcPhysicalQuantity_type); - declarations.push_back(IFC2X3_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC2X3_IfcPile_type); - declarations.push_back(IFC2X3_IfcPileConstructionEnum_type); - declarations.push_back(IFC2X3_IfcPileTypeEnum_type); - declarations.push_back(IFC2X3_IfcPipeFittingType_type); - declarations.push_back(IFC2X3_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC2X3_IfcPipeSegmentType_type); - declarations.push_back(IFC2X3_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC2X3_IfcPixelTexture_type); - declarations.push_back(IFC2X3_IfcPlacement_type); - declarations.push_back(IFC2X3_IfcPlanarBox_type); - declarations.push_back(IFC2X3_IfcPlanarExtent_type); - declarations.push_back(IFC2X3_IfcPlanarForceMeasure_type); - declarations.push_back(IFC2X3_IfcPlane_type); - declarations.push_back(IFC2X3_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC2X3_IfcPlate_type); - declarations.push_back(IFC2X3_IfcPlateType_type); - declarations.push_back(IFC2X3_IfcPlateTypeEnum_type); - declarations.push_back(IFC2X3_IfcPoint_type); - declarations.push_back(IFC2X3_IfcPointOnCurve_type); - declarations.push_back(IFC2X3_IfcPointOnSurface_type); - declarations.push_back(IFC2X3_IfcPointOrVertexPoint_type); - declarations.push_back(IFC2X3_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC2X3_IfcPolyline_type); - declarations.push_back(IFC2X3_IfcPolyLoop_type); - declarations.push_back(IFC2X3_IfcPort_type); - declarations.push_back(IFC2X3_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC2X3_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC2X3_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC2X3_IfcPostalAddress_type); - declarations.push_back(IFC2X3_IfcPowerMeasure_type); - declarations.push_back(IFC2X3_IfcPreDefinedColour_type); - declarations.push_back(IFC2X3_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC2X3_IfcPreDefinedDimensionSymbol_type); - declarations.push_back(IFC2X3_IfcPreDefinedItem_type); - declarations.push_back(IFC2X3_IfcPreDefinedPointMarkerSymbol_type); - declarations.push_back(IFC2X3_IfcPreDefinedSymbol_type); - declarations.push_back(IFC2X3_IfcPreDefinedTerminatorSymbol_type); - declarations.push_back(IFC2X3_IfcPreDefinedTextFont_type); - declarations.push_back(IFC2X3_IfcPresentableText_type); - declarations.push_back(IFC2X3_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC2X3_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC2X3_IfcPresentationStyle_type); - declarations.push_back(IFC2X3_IfcPresentationStyleAssignment_type); - declarations.push_back(IFC2X3_IfcPresentationStyleSelect_type); - declarations.push_back(IFC2X3_IfcPressureMeasure_type); - declarations.push_back(IFC2X3_IfcProcedure_type); - declarations.push_back(IFC2X3_IfcProcedureTypeEnum_type); - declarations.push_back(IFC2X3_IfcProcess_type); - declarations.push_back(IFC2X3_IfcProduct_type); - declarations.push_back(IFC2X3_IfcProductDefinitionShape_type); - declarations.push_back(IFC2X3_IfcProductRepresentation_type); - declarations.push_back(IFC2X3_IfcProductsOfCombustionProperties_type); - declarations.push_back(IFC2X3_IfcProfileDef_type); - declarations.push_back(IFC2X3_IfcProfileProperties_type); - declarations.push_back(IFC2X3_IfcProfileTypeEnum_type); - declarations.push_back(IFC2X3_IfcProject_type); - declarations.push_back(IFC2X3_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC2X3_IfcProjectionCurve_type); - declarations.push_back(IFC2X3_IfcProjectionElement_type); - declarations.push_back(IFC2X3_IfcProjectOrder_type); - declarations.push_back(IFC2X3_IfcProjectOrderRecord_type); - declarations.push_back(IFC2X3_IfcProjectOrderRecordTypeEnum_type); - declarations.push_back(IFC2X3_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC2X3_IfcProperty_type); - declarations.push_back(IFC2X3_IfcPropertyBoundedValue_type); - declarations.push_back(IFC2X3_IfcPropertyConstraintRelationship_type); - declarations.push_back(IFC2X3_IfcPropertyDefinition_type); - declarations.push_back(IFC2X3_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC2X3_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC2X3_IfcPropertyEnumeration_type); - declarations.push_back(IFC2X3_IfcPropertyListValue_type); - declarations.push_back(IFC2X3_IfcPropertyReferenceValue_type); - declarations.push_back(IFC2X3_IfcPropertySet_type); - declarations.push_back(IFC2X3_IfcPropertySetDefinition_type); - declarations.push_back(IFC2X3_IfcPropertySingleValue_type); - declarations.push_back(IFC2X3_IfcPropertySourceEnum_type); - declarations.push_back(IFC2X3_IfcPropertyTableValue_type); - declarations.push_back(IFC2X3_IfcProtectiveDeviceType_type); - declarations.push_back(IFC2X3_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC2X3_IfcProxy_type); - declarations.push_back(IFC2X3_IfcPumpType_type); - declarations.push_back(IFC2X3_IfcPumpTypeEnum_type); - declarations.push_back(IFC2X3_IfcQuantityArea_type); - declarations.push_back(IFC2X3_IfcQuantityCount_type); - declarations.push_back(IFC2X3_IfcQuantityLength_type); - declarations.push_back(IFC2X3_IfcQuantityTime_type); - declarations.push_back(IFC2X3_IfcQuantityVolume_type); - declarations.push_back(IFC2X3_IfcQuantityWeight_type); - declarations.push_back(IFC2X3_IfcRadioActivityMeasure_type); - declarations.push_back(IFC2X3_IfcRadiusDimension_type); - declarations.push_back(IFC2X3_IfcRailing_type); - declarations.push_back(IFC2X3_IfcRailingType_type); - declarations.push_back(IFC2X3_IfcRailingTypeEnum_type); - declarations.push_back(IFC2X3_IfcRamp_type); - declarations.push_back(IFC2X3_IfcRampFlight_type); - declarations.push_back(IFC2X3_IfcRampFlightType_type); - declarations.push_back(IFC2X3_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC2X3_IfcRampTypeEnum_type); - declarations.push_back(IFC2X3_IfcRatioMeasure_type); - declarations.push_back(IFC2X3_IfcRationalBezierCurve_type); - declarations.push_back(IFC2X3_IfcReal_type); - declarations.push_back(IFC2X3_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC2X3_IfcRectangleProfileDef_type); - declarations.push_back(IFC2X3_IfcRectangularPyramid_type); - declarations.push_back(IFC2X3_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC2X3_IfcReferencesValueDocument_type); - declarations.push_back(IFC2X3_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC2X3_IfcRegularTimeSeries_type); - declarations.push_back(IFC2X3_IfcReinforcementBarProperties_type); - declarations.push_back(IFC2X3_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC2X3_IfcReinforcingBar_type); - declarations.push_back(IFC2X3_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC2X3_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC2X3_IfcReinforcingElement_type); - declarations.push_back(IFC2X3_IfcReinforcingMesh_type); - declarations.push_back(IFC2X3_IfcRelAggregates_type); - declarations.push_back(IFC2X3_IfcRelAssigns_type); - declarations.push_back(IFC2X3_IfcRelAssignsTasks_type); - declarations.push_back(IFC2X3_IfcRelAssignsToActor_type); - declarations.push_back(IFC2X3_IfcRelAssignsToControl_type); - declarations.push_back(IFC2X3_IfcRelAssignsToGroup_type); - declarations.push_back(IFC2X3_IfcRelAssignsToProcess_type); - declarations.push_back(IFC2X3_IfcRelAssignsToProduct_type); - declarations.push_back(IFC2X3_IfcRelAssignsToProjectOrder_type); - declarations.push_back(IFC2X3_IfcRelAssignsToResource_type); - declarations.push_back(IFC2X3_IfcRelAssociates_type); - declarations.push_back(IFC2X3_IfcRelAssociatesAppliedValue_type); - declarations.push_back(IFC2X3_IfcRelAssociatesApproval_type); - declarations.push_back(IFC2X3_IfcRelAssociatesClassification_type); - declarations.push_back(IFC2X3_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC2X3_IfcRelAssociatesDocument_type); - declarations.push_back(IFC2X3_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC2X3_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC2X3_IfcRelAssociatesProfileProperties_type); - declarations.push_back(IFC2X3_IfcRelationship_type); - declarations.push_back(IFC2X3_IfcRelaxation_type); - declarations.push_back(IFC2X3_IfcRelConnects_type); - declarations.push_back(IFC2X3_IfcRelConnectsElements_type); - declarations.push_back(IFC2X3_IfcRelConnectsPathElements_type); - declarations.push_back(IFC2X3_IfcRelConnectsPorts_type); - declarations.push_back(IFC2X3_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC2X3_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC2X3_IfcRelConnectsStructuralElement_type); - declarations.push_back(IFC2X3_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC2X3_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC2X3_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC2X3_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC2X3_IfcRelCoversBldgElements_type); - declarations.push_back(IFC2X3_IfcRelCoversSpaces_type); - declarations.push_back(IFC2X3_IfcRelDecomposes_type); - declarations.push_back(IFC2X3_IfcRelDefines_type); - declarations.push_back(IFC2X3_IfcRelDefinesByProperties_type); - declarations.push_back(IFC2X3_IfcRelDefinesByType_type); - declarations.push_back(IFC2X3_IfcRelFillsElement_type); - declarations.push_back(IFC2X3_IfcRelFlowControlElements_type); - declarations.push_back(IFC2X3_IfcRelInteractionRequirements_type); - declarations.push_back(IFC2X3_IfcRelNests_type); - declarations.push_back(IFC2X3_IfcRelOccupiesSpaces_type); - declarations.push_back(IFC2X3_IfcRelOverridesProperties_type); - declarations.push_back(IFC2X3_IfcRelProjectsElement_type); - declarations.push_back(IFC2X3_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC2X3_IfcRelSchedulesCostItems_type); - declarations.push_back(IFC2X3_IfcRelSequence_type); - declarations.push_back(IFC2X3_IfcRelServicesBuildings_type); - declarations.push_back(IFC2X3_IfcRelSpaceBoundary_type); - declarations.push_back(IFC2X3_IfcRelVoidsElement_type); - declarations.push_back(IFC2X3_IfcRepresentation_type); - declarations.push_back(IFC2X3_IfcRepresentationContext_type); - declarations.push_back(IFC2X3_IfcRepresentationItem_type); - declarations.push_back(IFC2X3_IfcRepresentationMap_type); - declarations.push_back(IFC2X3_IfcResource_type); - declarations.push_back(IFC2X3_IfcResourceConsumptionEnum_type); - declarations.push_back(IFC2X3_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC2X3_IfcRibPlateDirectionEnum_type); - declarations.push_back(IFC2X3_IfcRibPlateProfileProperties_type); - declarations.push_back(IFC2X3_IfcRightCircularCone_type); - declarations.push_back(IFC2X3_IfcRightCircularCylinder_type); - declarations.push_back(IFC2X3_IfcRoleEnum_type); - declarations.push_back(IFC2X3_IfcRoof_type); - declarations.push_back(IFC2X3_IfcRoofTypeEnum_type); - declarations.push_back(IFC2X3_IfcRoot_type); - declarations.push_back(IFC2X3_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC2X3_IfcRotationalMassMeasure_type); - declarations.push_back(IFC2X3_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC2X3_IfcRoundedEdgeFeature_type); - declarations.push_back(IFC2X3_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC2X3_IfcSanitaryTerminalType_type); - declarations.push_back(IFC2X3_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC2X3_IfcScheduleTimeControl_type); - declarations.push_back(IFC2X3_IfcSecondInMinute_type); - declarations.push_back(IFC2X3_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC2X3_IfcSectionedSpine_type); - declarations.push_back(IFC2X3_IfcSectionModulusMeasure_type); - declarations.push_back(IFC2X3_IfcSectionProperties_type); - declarations.push_back(IFC2X3_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC2X3_IfcSectionTypeEnum_type); - declarations.push_back(IFC2X3_IfcSensorType_type); - declarations.push_back(IFC2X3_IfcSensorTypeEnum_type); - declarations.push_back(IFC2X3_IfcSequenceEnum_type); - declarations.push_back(IFC2X3_IfcServiceLife_type); - declarations.push_back(IFC2X3_IfcServiceLifeFactor_type); - declarations.push_back(IFC2X3_IfcServiceLifeFactorTypeEnum_type); - declarations.push_back(IFC2X3_IfcServiceLifeTypeEnum_type); - declarations.push_back(IFC2X3_IfcShapeAspect_type); - declarations.push_back(IFC2X3_IfcShapeModel_type); - declarations.push_back(IFC2X3_IfcShapeRepresentation_type); - declarations.push_back(IFC2X3_IfcShearModulusMeasure_type); - declarations.push_back(IFC2X3_IfcShell_type); - declarations.push_back(IFC2X3_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC2X3_IfcSimpleProperty_type); - declarations.push_back(IFC2X3_IfcSimpleValue_type); - declarations.push_back(IFC2X3_IfcSIPrefix_type); - declarations.push_back(IFC2X3_IfcSite_type); - declarations.push_back(IFC2X3_IfcSIUnit_type); - declarations.push_back(IFC2X3_IfcSIUnitName_type); - declarations.push_back(IFC2X3_IfcSizeSelect_type); - declarations.push_back(IFC2X3_IfcSlab_type); - declarations.push_back(IFC2X3_IfcSlabType_type); - declarations.push_back(IFC2X3_IfcSlabTypeEnum_type); - declarations.push_back(IFC2X3_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC2X3_IfcSolidAngleMeasure_type); - declarations.push_back(IFC2X3_IfcSolidModel_type); - declarations.push_back(IFC2X3_IfcSoundPowerMeasure_type); - declarations.push_back(IFC2X3_IfcSoundPressureMeasure_type); - declarations.push_back(IFC2X3_IfcSoundProperties_type); - declarations.push_back(IFC2X3_IfcSoundScaleEnum_type); - declarations.push_back(IFC2X3_IfcSoundValue_type); - declarations.push_back(IFC2X3_IfcSpace_type); - declarations.push_back(IFC2X3_IfcSpaceHeaterType_type); - declarations.push_back(IFC2X3_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC2X3_IfcSpaceProgram_type); - declarations.push_back(IFC2X3_IfcSpaceThermalLoadProperties_type); - declarations.push_back(IFC2X3_IfcSpaceType_type); - declarations.push_back(IFC2X3_IfcSpaceTypeEnum_type); - declarations.push_back(IFC2X3_IfcSpatialStructureElement_type); - declarations.push_back(IFC2X3_IfcSpatialStructureElementType_type); - declarations.push_back(IFC2X3_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC2X3_IfcSpecularExponent_type); - declarations.push_back(IFC2X3_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC2X3_IfcSpecularRoughness_type); - declarations.push_back(IFC2X3_IfcSphere_type); - declarations.push_back(IFC2X3_IfcStackTerminalType_type); - declarations.push_back(IFC2X3_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC2X3_IfcStair_type); - declarations.push_back(IFC2X3_IfcStairFlight_type); - declarations.push_back(IFC2X3_IfcStairFlightType_type); - declarations.push_back(IFC2X3_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC2X3_IfcStairTypeEnum_type); - declarations.push_back(IFC2X3_IfcStateEnum_type); - declarations.push_back(IFC2X3_IfcStructuralAction_type); - declarations.push_back(IFC2X3_IfcStructuralActivity_type); - declarations.push_back(IFC2X3_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC2X3_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC2X3_IfcStructuralConnection_type); - declarations.push_back(IFC2X3_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC2X3_IfcStructuralCurveConnection_type); - declarations.push_back(IFC2X3_IfcStructuralCurveMember_type); - declarations.push_back(IFC2X3_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC2X3_IfcStructuralCurveTypeEnum_type); - declarations.push_back(IFC2X3_IfcStructuralItem_type); - declarations.push_back(IFC2X3_IfcStructuralLinearAction_type); - declarations.push_back(IFC2X3_IfcStructuralLinearActionVarying_type); - declarations.push_back(IFC2X3_IfcStructuralLoad_type); - declarations.push_back(IFC2X3_IfcStructuralLoadGroup_type); - declarations.push_back(IFC2X3_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC2X3_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC2X3_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC2X3_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC2X3_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC2X3_IfcStructuralLoadStatic_type); - declarations.push_back(IFC2X3_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC2X3_IfcStructuralMember_type); - declarations.push_back(IFC2X3_IfcStructuralPlanarAction_type); - declarations.push_back(IFC2X3_IfcStructuralPlanarActionVarying_type); - declarations.push_back(IFC2X3_IfcStructuralPointAction_type); - declarations.push_back(IFC2X3_IfcStructuralPointConnection_type); - declarations.push_back(IFC2X3_IfcStructuralPointReaction_type); - declarations.push_back(IFC2X3_IfcStructuralProfileProperties_type); - declarations.push_back(IFC2X3_IfcStructuralReaction_type); - declarations.push_back(IFC2X3_IfcStructuralResultGroup_type); - declarations.push_back(IFC2X3_IfcStructuralSteelProfileProperties_type); - declarations.push_back(IFC2X3_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC2X3_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC2X3_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC2X3_IfcStructuralSurfaceTypeEnum_type); - declarations.push_back(IFC2X3_IfcStructuredDimensionCallout_type); - declarations.push_back(IFC2X3_IfcStyledItem_type); - declarations.push_back(IFC2X3_IfcStyledRepresentation_type); - declarations.push_back(IFC2X3_IfcStyleModel_type); - declarations.push_back(IFC2X3_IfcSubContractResource_type); - declarations.push_back(IFC2X3_IfcSubedge_type); - declarations.push_back(IFC2X3_IfcSurface_type); - declarations.push_back(IFC2X3_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC2X3_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC2X3_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC2X3_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC2X3_IfcSurfaceSide_type); - declarations.push_back(IFC2X3_IfcSurfaceStyle_type); - declarations.push_back(IFC2X3_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC2X3_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC2X3_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC2X3_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC2X3_IfcSurfaceStyleShading_type); - declarations.push_back(IFC2X3_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC2X3_IfcSurfaceTexture_type); - declarations.push_back(IFC2X3_IfcSurfaceTextureEnum_type); - declarations.push_back(IFC2X3_IfcSweptAreaSolid_type); - declarations.push_back(IFC2X3_IfcSweptDiskSolid_type); - declarations.push_back(IFC2X3_IfcSweptSurface_type); - declarations.push_back(IFC2X3_IfcSwitchingDeviceType_type); - declarations.push_back(IFC2X3_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC2X3_IfcSymbolStyle_type); - declarations.push_back(IFC2X3_IfcSymbolStyleSelect_type); - declarations.push_back(IFC2X3_IfcSystem_type); - declarations.push_back(IFC2X3_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC2X3_IfcTable_type); - declarations.push_back(IFC2X3_IfcTableRow_type); - declarations.push_back(IFC2X3_IfcTankType_type); - declarations.push_back(IFC2X3_IfcTankTypeEnum_type); - declarations.push_back(IFC2X3_IfcTask_type); - declarations.push_back(IFC2X3_IfcTelecomAddress_type); - declarations.push_back(IFC2X3_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC2X3_IfcTendon_type); - declarations.push_back(IFC2X3_IfcTendonAnchor_type); - declarations.push_back(IFC2X3_IfcTendonTypeEnum_type); - declarations.push_back(IFC2X3_IfcTerminatorSymbol_type); - declarations.push_back(IFC2X3_IfcText_type); - declarations.push_back(IFC2X3_IfcTextAlignment_type); - declarations.push_back(IFC2X3_IfcTextDecoration_type); - declarations.push_back(IFC2X3_IfcTextFontName_type); - declarations.push_back(IFC2X3_IfcTextFontSelect_type); - declarations.push_back(IFC2X3_IfcTextLiteral_type); - declarations.push_back(IFC2X3_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC2X3_IfcTextPath_type); - declarations.push_back(IFC2X3_IfcTextStyle_type); - declarations.push_back(IFC2X3_IfcTextStyleFontModel_type); - declarations.push_back(IFC2X3_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC2X3_IfcTextStyleSelect_type); - declarations.push_back(IFC2X3_IfcTextStyleTextModel_type); - declarations.push_back(IFC2X3_IfcTextStyleWithBoxCharacteristics_type); - declarations.push_back(IFC2X3_IfcTextTransformation_type); - declarations.push_back(IFC2X3_IfcTextureCoordinate_type); - declarations.push_back(IFC2X3_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC2X3_IfcTextureMap_type); - declarations.push_back(IFC2X3_IfcTextureVertex_type); - declarations.push_back(IFC2X3_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC2X3_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC2X3_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC2X3_IfcThermalLoadSourceEnum_type); - declarations.push_back(IFC2X3_IfcThermalLoadTypeEnum_type); - declarations.push_back(IFC2X3_IfcThermalMaterialProperties_type); - declarations.push_back(IFC2X3_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC2X3_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC2X3_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC2X3_IfcTimeMeasure_type); - declarations.push_back(IFC2X3_IfcTimeSeries_type); - declarations.push_back(IFC2X3_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC2X3_IfcTimeSeriesReferenceRelationship_type); - declarations.push_back(IFC2X3_IfcTimeSeriesSchedule_type); - declarations.push_back(IFC2X3_IfcTimeSeriesScheduleTypeEnum_type); - declarations.push_back(IFC2X3_IfcTimeSeriesValue_type); - declarations.push_back(IFC2X3_IfcTimeStamp_type); - declarations.push_back(IFC2X3_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC2X3_IfcTopologyRepresentation_type); - declarations.push_back(IFC2X3_IfcTorqueMeasure_type); - declarations.push_back(IFC2X3_IfcTransformerType_type); - declarations.push_back(IFC2X3_IfcTransformerTypeEnum_type); - declarations.push_back(IFC2X3_IfcTransitionCode_type); - declarations.push_back(IFC2X3_IfcTransportElement_type); - declarations.push_back(IFC2X3_IfcTransportElementType_type); - declarations.push_back(IFC2X3_IfcTransportElementTypeEnum_type); - declarations.push_back(IFC2X3_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC2X3_IfcTrimmedCurve_type); - declarations.push_back(IFC2X3_IfcTrimmingPreference_type); - declarations.push_back(IFC2X3_IfcTrimmingSelect_type); - declarations.push_back(IFC2X3_IfcTShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcTubeBundleType_type); - declarations.push_back(IFC2X3_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC2X3_IfcTwoDirectionRepeatFactor_type); - declarations.push_back(IFC2X3_IfcTypeObject_type); - declarations.push_back(IFC2X3_IfcTypeProduct_type); - declarations.push_back(IFC2X3_IfcUnit_type); - declarations.push_back(IFC2X3_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC2X3_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC2X3_IfcUnitAssignment_type); - declarations.push_back(IFC2X3_IfcUnitEnum_type); - declarations.push_back(IFC2X3_IfcUShapeProfileDef_type); - declarations.push_back(IFC2X3_IfcValue_type); - declarations.push_back(IFC2X3_IfcValveType_type); - declarations.push_back(IFC2X3_IfcValveTypeEnum_type); - declarations.push_back(IFC2X3_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC2X3_IfcVector_type); - declarations.push_back(IFC2X3_IfcVectorOrDirection_type); - declarations.push_back(IFC2X3_IfcVertex_type); - declarations.push_back(IFC2X3_IfcVertexBasedTextureMap_type); - declarations.push_back(IFC2X3_IfcVertexLoop_type); - declarations.push_back(IFC2X3_IfcVertexPoint_type); - declarations.push_back(IFC2X3_IfcVibrationIsolatorType_type); - declarations.push_back(IFC2X3_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC2X3_IfcVirtualElement_type); - declarations.push_back(IFC2X3_IfcVirtualGridIntersection_type); - declarations.push_back(IFC2X3_IfcVolumeMeasure_type); - declarations.push_back(IFC2X3_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC2X3_IfcWall_type); - declarations.push_back(IFC2X3_IfcWallStandardCase_type); - declarations.push_back(IFC2X3_IfcWallType_type); - declarations.push_back(IFC2X3_IfcWallTypeEnum_type); - declarations.push_back(IFC2X3_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC2X3_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC2X3_IfcWasteTerminalType_type); - declarations.push_back(IFC2X3_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC2X3_IfcWaterProperties_type); - declarations.push_back(IFC2X3_IfcWindow_type); - declarations.push_back(IFC2X3_IfcWindowLiningProperties_type); - declarations.push_back(IFC2X3_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC2X3_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC2X3_IfcWindowPanelProperties_type); - declarations.push_back(IFC2X3_IfcWindowStyle_type); - declarations.push_back(IFC2X3_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC2X3_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC2X3_IfcWorkControl_type); - declarations.push_back(IFC2X3_IfcWorkControlTypeEnum_type); - declarations.push_back(IFC2X3_IfcWorkPlan_type); - declarations.push_back(IFC2X3_IfcWorkSchedule_type); - declarations.push_back(IFC2X3_IfcYearNumber_type); - declarations.push_back(IFC2X3_IfcZone_type); - declarations.push_back(IFC2X3_IfcZShapeProfileDef_type); - return new schema_definition("IFC2X3", declarations, new IFC2X3_instance_factory()); + std::vector declarations= { + IFC2X3_Ifc2DCompositeCurve_type, + IFC2X3_IfcAbsorbedDoseMeasure_type, + IFC2X3_IfcAccelerationMeasure_type, + IFC2X3_IfcActionRequest_type, + IFC2X3_IfcActionSourceTypeEnum_type, + IFC2X3_IfcActionTypeEnum_type, + IFC2X3_IfcActor_type, + IFC2X3_IfcActorRole_type, + IFC2X3_IfcActorSelect_type, + IFC2X3_IfcActuatorType_type, + IFC2X3_IfcActuatorTypeEnum_type, + IFC2X3_IfcAddress_type, + IFC2X3_IfcAddressTypeEnum_type, + IFC2X3_IfcAheadOrBehind_type, + IFC2X3_IfcAirTerminalBoxType_type, + IFC2X3_IfcAirTerminalBoxTypeEnum_type, + IFC2X3_IfcAirTerminalType_type, + IFC2X3_IfcAirTerminalTypeEnum_type, + IFC2X3_IfcAirToAirHeatRecoveryType_type, + IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC2X3_IfcAlarmType_type, + IFC2X3_IfcAlarmTypeEnum_type, + IFC2X3_IfcAmountOfSubstanceMeasure_type, + IFC2X3_IfcAnalysisModelTypeEnum_type, + IFC2X3_IfcAnalysisTheoryTypeEnum_type, + IFC2X3_IfcAngularDimension_type, + IFC2X3_IfcAngularVelocityMeasure_type, + IFC2X3_IfcAnnotation_type, + IFC2X3_IfcAnnotationCurveOccurrence_type, + IFC2X3_IfcAnnotationFillArea_type, + IFC2X3_IfcAnnotationFillAreaOccurrence_type, + IFC2X3_IfcAnnotationOccurrence_type, + IFC2X3_IfcAnnotationSurface_type, + IFC2X3_IfcAnnotationSurfaceOccurrence_type, + IFC2X3_IfcAnnotationSymbolOccurrence_type, + IFC2X3_IfcAnnotationTextOccurrence_type, + IFC2X3_IfcApplication_type, + IFC2X3_IfcAppliedValue_type, + IFC2X3_IfcAppliedValueRelationship_type, + IFC2X3_IfcAppliedValueSelect_type, + IFC2X3_IfcApproval_type, + IFC2X3_IfcApprovalActorRelationship_type, + IFC2X3_IfcApprovalPropertyRelationship_type, + IFC2X3_IfcApprovalRelationship_type, + IFC2X3_IfcArbitraryClosedProfileDef_type, + IFC2X3_IfcArbitraryOpenProfileDef_type, + IFC2X3_IfcArbitraryProfileDefWithVoids_type, + IFC2X3_IfcAreaMeasure_type, + IFC2X3_IfcArithmeticOperatorEnum_type, + IFC2X3_IfcAssemblyPlaceEnum_type, + IFC2X3_IfcAsset_type, + IFC2X3_IfcAsymmetricIShapeProfileDef_type, + IFC2X3_IfcAxis1Placement_type, + IFC2X3_IfcAxis2Placement_type, + IFC2X3_IfcAxis2Placement2D_type, + IFC2X3_IfcAxis2Placement3D_type, + IFC2X3_IfcBeam_type, + IFC2X3_IfcBeamType_type, + IFC2X3_IfcBeamTypeEnum_type, + IFC2X3_IfcBenchmarkEnum_type, + IFC2X3_IfcBezierCurve_type, + IFC2X3_IfcBlobTexture_type, + IFC2X3_IfcBlock_type, + IFC2X3_IfcBoilerType_type, + IFC2X3_IfcBoilerTypeEnum_type, + IFC2X3_IfcBoolean_type, + IFC2X3_IfcBooleanClippingResult_type, + IFC2X3_IfcBooleanOperand_type, + IFC2X3_IfcBooleanOperator_type, + IFC2X3_IfcBooleanResult_type, + IFC2X3_IfcBoundaryCondition_type, + IFC2X3_IfcBoundaryEdgeCondition_type, + IFC2X3_IfcBoundaryFaceCondition_type, + IFC2X3_IfcBoundaryNodeCondition_type, + IFC2X3_IfcBoundaryNodeConditionWarping_type, + IFC2X3_IfcBoundedCurve_type, + IFC2X3_IfcBoundedSurface_type, + IFC2X3_IfcBoundingBox_type, + IFC2X3_IfcBoxAlignment_type, + IFC2X3_IfcBoxedHalfSpace_type, + IFC2X3_IfcBSplineCurve_type, + IFC2X3_IfcBSplineCurveForm_type, + IFC2X3_IfcBuilding_type, + IFC2X3_IfcBuildingElement_type, + IFC2X3_IfcBuildingElementComponent_type, + IFC2X3_IfcBuildingElementPart_type, + IFC2X3_IfcBuildingElementProxy_type, + IFC2X3_IfcBuildingElementProxyType_type, + IFC2X3_IfcBuildingElementProxyTypeEnum_type, + IFC2X3_IfcBuildingElementType_type, + IFC2X3_IfcBuildingStorey_type, + IFC2X3_IfcCableCarrierFittingType_type, + IFC2X3_IfcCableCarrierFittingTypeEnum_type, + IFC2X3_IfcCableCarrierSegmentType_type, + IFC2X3_IfcCableCarrierSegmentTypeEnum_type, + IFC2X3_IfcCableSegmentType_type, + IFC2X3_IfcCableSegmentTypeEnum_type, + IFC2X3_IfcCalendarDate_type, + IFC2X3_IfcCartesianPoint_type, + IFC2X3_IfcCartesianTransformationOperator_type, + IFC2X3_IfcCartesianTransformationOperator2D_type, + IFC2X3_IfcCartesianTransformationOperator2DnonUniform_type, + IFC2X3_IfcCartesianTransformationOperator3D_type, + IFC2X3_IfcCartesianTransformationOperator3DnonUniform_type, + IFC2X3_IfcCenterLineProfileDef_type, + IFC2X3_IfcChamferEdgeFeature_type, + IFC2X3_IfcChangeActionEnum_type, + IFC2X3_IfcCharacterStyleSelect_type, + IFC2X3_IfcChillerType_type, + IFC2X3_IfcChillerTypeEnum_type, + IFC2X3_IfcCircle_type, + IFC2X3_IfcCircleHollowProfileDef_type, + IFC2X3_IfcCircleProfileDef_type, + IFC2X3_IfcClassification_type, + IFC2X3_IfcClassificationItem_type, + IFC2X3_IfcClassificationItemRelationship_type, + IFC2X3_IfcClassificationNotation_type, + IFC2X3_IfcClassificationNotationFacet_type, + IFC2X3_IfcClassificationNotationSelect_type, + IFC2X3_IfcClassificationReference_type, + IFC2X3_IfcClosedShell_type, + IFC2X3_IfcCoilType_type, + IFC2X3_IfcCoilTypeEnum_type, + IFC2X3_IfcColour_type, + IFC2X3_IfcColourOrFactor_type, + IFC2X3_IfcColourRgb_type, + IFC2X3_IfcColourSpecification_type, + IFC2X3_IfcColumn_type, + IFC2X3_IfcColumnType_type, + IFC2X3_IfcColumnTypeEnum_type, + IFC2X3_IfcComplexNumber_type, + IFC2X3_IfcComplexProperty_type, + IFC2X3_IfcCompositeCurve_type, + IFC2X3_IfcCompositeCurveSegment_type, + IFC2X3_IfcCompositeProfileDef_type, + IFC2X3_IfcCompoundPlaneAngleMeasure_type, + IFC2X3_IfcCompressorType_type, + IFC2X3_IfcCompressorTypeEnum_type, + IFC2X3_IfcCondenserType_type, + IFC2X3_IfcCondenserTypeEnum_type, + IFC2X3_IfcCondition_type, + IFC2X3_IfcConditionCriterion_type, + IFC2X3_IfcConditionCriterionSelect_type, + IFC2X3_IfcConic_type, + IFC2X3_IfcConnectedFaceSet_type, + IFC2X3_IfcConnectionCurveGeometry_type, + IFC2X3_IfcConnectionGeometry_type, + IFC2X3_IfcConnectionPointEccentricity_type, + IFC2X3_IfcConnectionPointGeometry_type, + IFC2X3_IfcConnectionPortGeometry_type, + IFC2X3_IfcConnectionSurfaceGeometry_type, + IFC2X3_IfcConnectionTypeEnum_type, + IFC2X3_IfcConstraint_type, + IFC2X3_IfcConstraintAggregationRelationship_type, + IFC2X3_IfcConstraintClassificationRelationship_type, + IFC2X3_IfcConstraintEnum_type, + IFC2X3_IfcConstraintRelationship_type, + IFC2X3_IfcConstructionEquipmentResource_type, + IFC2X3_IfcConstructionMaterialResource_type, + IFC2X3_IfcConstructionProductResource_type, + IFC2X3_IfcConstructionResource_type, + IFC2X3_IfcContextDependentMeasure_type, + IFC2X3_IfcContextDependentUnit_type, + IFC2X3_IfcControl_type, + IFC2X3_IfcControllerType_type, + IFC2X3_IfcControllerTypeEnum_type, + IFC2X3_IfcConversionBasedUnit_type, + IFC2X3_IfcCooledBeamType_type, + IFC2X3_IfcCooledBeamTypeEnum_type, + IFC2X3_IfcCoolingTowerType_type, + IFC2X3_IfcCoolingTowerTypeEnum_type, + IFC2X3_IfcCoordinatedUniversalTimeOffset_type, + IFC2X3_IfcCostItem_type, + IFC2X3_IfcCostSchedule_type, + IFC2X3_IfcCostScheduleTypeEnum_type, + IFC2X3_IfcCostValue_type, + IFC2X3_IfcCountMeasure_type, + IFC2X3_IfcCovering_type, + IFC2X3_IfcCoveringType_type, + IFC2X3_IfcCoveringTypeEnum_type, + IFC2X3_IfcCraneRailAShapeProfileDef_type, + IFC2X3_IfcCraneRailFShapeProfileDef_type, + IFC2X3_IfcCrewResource_type, + IFC2X3_IfcCsgPrimitive3D_type, + IFC2X3_IfcCsgSelect_type, + IFC2X3_IfcCsgSolid_type, + IFC2X3_IfcCShapeProfileDef_type, + IFC2X3_IfcCurrencyEnum_type, + IFC2X3_IfcCurrencyRelationship_type, + IFC2X3_IfcCurtainWall_type, + IFC2X3_IfcCurtainWallType_type, + IFC2X3_IfcCurtainWallTypeEnum_type, + IFC2X3_IfcCurvatureMeasure_type, + IFC2X3_IfcCurve_type, + IFC2X3_IfcCurveBoundedPlane_type, + IFC2X3_IfcCurveFontOrScaledCurveFontSelect_type, + IFC2X3_IfcCurveOrEdgeCurve_type, + IFC2X3_IfcCurveStyle_type, + IFC2X3_IfcCurveStyleFont_type, + IFC2X3_IfcCurveStyleFontAndScaling_type, + IFC2X3_IfcCurveStyleFontPattern_type, + IFC2X3_IfcCurveStyleFontSelect_type, + IFC2X3_IfcDamperType_type, + IFC2X3_IfcDamperTypeEnum_type, + IFC2X3_IfcDataOriginEnum_type, + IFC2X3_IfcDateAndTime_type, + IFC2X3_IfcDateTimeSelect_type, + IFC2X3_IfcDayInMonthNumber_type, + IFC2X3_IfcDaylightSavingHour_type, + IFC2X3_IfcDefinedSymbol_type, + IFC2X3_IfcDefinedSymbolSelect_type, + IFC2X3_IfcDerivedMeasureValue_type, + IFC2X3_IfcDerivedProfileDef_type, + IFC2X3_IfcDerivedUnit_type, + IFC2X3_IfcDerivedUnitElement_type, + IFC2X3_IfcDerivedUnitEnum_type, + IFC2X3_IfcDescriptiveMeasure_type, + IFC2X3_IfcDiameterDimension_type, + IFC2X3_IfcDimensionalExponents_type, + IFC2X3_IfcDimensionCalloutRelationship_type, + IFC2X3_IfcDimensionCount_type, + IFC2X3_IfcDimensionCurve_type, + IFC2X3_IfcDimensionCurveDirectedCallout_type, + IFC2X3_IfcDimensionCurveTerminator_type, + IFC2X3_IfcDimensionExtentUsage_type, + IFC2X3_IfcDimensionPair_type, + IFC2X3_IfcDirection_type, + IFC2X3_IfcDirectionSenseEnum_type, + IFC2X3_IfcDiscreteAccessory_type, + IFC2X3_IfcDiscreteAccessoryType_type, + IFC2X3_IfcDistributionChamberElement_type, + IFC2X3_IfcDistributionChamberElementType_type, + IFC2X3_IfcDistributionChamberElementTypeEnum_type, + IFC2X3_IfcDistributionControlElement_type, + IFC2X3_IfcDistributionControlElementType_type, + IFC2X3_IfcDistributionElement_type, + IFC2X3_IfcDistributionElementType_type, + IFC2X3_IfcDistributionFlowElement_type, + IFC2X3_IfcDistributionFlowElementType_type, + IFC2X3_IfcDistributionPort_type, + IFC2X3_IfcDocumentConfidentialityEnum_type, + IFC2X3_IfcDocumentElectronicFormat_type, + IFC2X3_IfcDocumentInformation_type, + IFC2X3_IfcDocumentInformationRelationship_type, + IFC2X3_IfcDocumentReference_type, + IFC2X3_IfcDocumentSelect_type, + IFC2X3_IfcDocumentStatusEnum_type, + IFC2X3_IfcDoor_type, + IFC2X3_IfcDoorLiningProperties_type, + IFC2X3_IfcDoorPanelOperationEnum_type, + IFC2X3_IfcDoorPanelPositionEnum_type, + IFC2X3_IfcDoorPanelProperties_type, + IFC2X3_IfcDoorStyle_type, + IFC2X3_IfcDoorStyleConstructionEnum_type, + IFC2X3_IfcDoorStyleOperationEnum_type, + IFC2X3_IfcDoseEquivalentMeasure_type, + IFC2X3_IfcDraughtingCallout_type, + IFC2X3_IfcDraughtingCalloutElement_type, + IFC2X3_IfcDraughtingCalloutRelationship_type, + IFC2X3_IfcDraughtingPreDefinedColour_type, + IFC2X3_IfcDraughtingPreDefinedCurveFont_type, + IFC2X3_IfcDraughtingPreDefinedTextFont_type, + IFC2X3_IfcDuctFittingType_type, + IFC2X3_IfcDuctFittingTypeEnum_type, + IFC2X3_IfcDuctSegmentType_type, + IFC2X3_IfcDuctSegmentTypeEnum_type, + IFC2X3_IfcDuctSilencerType_type, + IFC2X3_IfcDuctSilencerTypeEnum_type, + IFC2X3_IfcDynamicViscosityMeasure_type, + IFC2X3_IfcEdge_type, + IFC2X3_IfcEdgeCurve_type, + IFC2X3_IfcEdgeFeature_type, + IFC2X3_IfcEdgeLoop_type, + IFC2X3_IfcElectricalBaseProperties_type, + IFC2X3_IfcElectricalCircuit_type, + IFC2X3_IfcElectricalElement_type, + IFC2X3_IfcElectricApplianceType_type, + IFC2X3_IfcElectricApplianceTypeEnum_type, + IFC2X3_IfcElectricCapacitanceMeasure_type, + IFC2X3_IfcElectricChargeMeasure_type, + IFC2X3_IfcElectricConductanceMeasure_type, + IFC2X3_IfcElectricCurrentEnum_type, + IFC2X3_IfcElectricCurrentMeasure_type, + IFC2X3_IfcElectricDistributionPoint_type, + IFC2X3_IfcElectricDistributionPointFunctionEnum_type, + IFC2X3_IfcElectricFlowStorageDeviceType_type, + IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC2X3_IfcElectricGeneratorType_type, + IFC2X3_IfcElectricGeneratorTypeEnum_type, + IFC2X3_IfcElectricHeaterType_type, + IFC2X3_IfcElectricHeaterTypeEnum_type, + IFC2X3_IfcElectricMotorType_type, + IFC2X3_IfcElectricMotorTypeEnum_type, + IFC2X3_IfcElectricResistanceMeasure_type, + IFC2X3_IfcElectricTimeControlType_type, + IFC2X3_IfcElectricTimeControlTypeEnum_type, + IFC2X3_IfcElectricVoltageMeasure_type, + IFC2X3_IfcElement_type, + IFC2X3_IfcElementarySurface_type, + IFC2X3_IfcElementAssembly_type, + IFC2X3_IfcElementAssemblyTypeEnum_type, + IFC2X3_IfcElementComponent_type, + IFC2X3_IfcElementComponentType_type, + IFC2X3_IfcElementCompositionEnum_type, + IFC2X3_IfcElementQuantity_type, + IFC2X3_IfcElementType_type, + IFC2X3_IfcEllipse_type, + IFC2X3_IfcEllipseProfileDef_type, + IFC2X3_IfcEnergyConversionDevice_type, + IFC2X3_IfcEnergyConversionDeviceType_type, + IFC2X3_IfcEnergyMeasure_type, + IFC2X3_IfcEnergyProperties_type, + IFC2X3_IfcEnergySequenceEnum_type, + IFC2X3_IfcEnvironmentalImpactCategoryEnum_type, + IFC2X3_IfcEnvironmentalImpactValue_type, + IFC2X3_IfcEquipmentElement_type, + IFC2X3_IfcEquipmentStandard_type, + IFC2X3_IfcEvaporativeCoolerType_type, + IFC2X3_IfcEvaporativeCoolerTypeEnum_type, + IFC2X3_IfcEvaporatorType_type, + IFC2X3_IfcEvaporatorTypeEnum_type, + IFC2X3_IfcExtendedMaterialProperties_type, + IFC2X3_IfcExternallyDefinedHatchStyle_type, + IFC2X3_IfcExternallyDefinedSurfaceStyle_type, + IFC2X3_IfcExternallyDefinedSymbol_type, + IFC2X3_IfcExternallyDefinedTextFont_type, + IFC2X3_IfcExternalReference_type, + IFC2X3_IfcExtrudedAreaSolid_type, + IFC2X3_IfcFace_type, + IFC2X3_IfcFaceBasedSurfaceModel_type, + IFC2X3_IfcFaceBound_type, + IFC2X3_IfcFaceOuterBound_type, + IFC2X3_IfcFaceSurface_type, + IFC2X3_IfcFacetedBrep_type, + IFC2X3_IfcFacetedBrepWithVoids_type, + IFC2X3_IfcFailureConnectionCondition_type, + IFC2X3_IfcFanType_type, + IFC2X3_IfcFanTypeEnum_type, + IFC2X3_IfcFastener_type, + IFC2X3_IfcFastenerType_type, + IFC2X3_IfcFeatureElement_type, + IFC2X3_IfcFeatureElementAddition_type, + IFC2X3_IfcFeatureElementSubtraction_type, + IFC2X3_IfcFillAreaStyle_type, + IFC2X3_IfcFillAreaStyleHatching_type, + IFC2X3_IfcFillAreaStyleTiles_type, + IFC2X3_IfcFillAreaStyleTileShapeSelect_type, + IFC2X3_IfcFillAreaStyleTileSymbolWithStyle_type, + IFC2X3_IfcFillStyleSelect_type, + IFC2X3_IfcFilterType_type, + IFC2X3_IfcFilterTypeEnum_type, + IFC2X3_IfcFireSuppressionTerminalType_type, + IFC2X3_IfcFireSuppressionTerminalTypeEnum_type, + IFC2X3_IfcFlowController_type, + IFC2X3_IfcFlowControllerType_type, + IFC2X3_IfcFlowDirectionEnum_type, + IFC2X3_IfcFlowFitting_type, + IFC2X3_IfcFlowFittingType_type, + IFC2X3_IfcFlowInstrumentType_type, + IFC2X3_IfcFlowInstrumentTypeEnum_type, + IFC2X3_IfcFlowMeterType_type, + IFC2X3_IfcFlowMeterTypeEnum_type, + IFC2X3_IfcFlowMovingDevice_type, + IFC2X3_IfcFlowMovingDeviceType_type, + IFC2X3_IfcFlowSegment_type, + IFC2X3_IfcFlowSegmentType_type, + IFC2X3_IfcFlowStorageDevice_type, + IFC2X3_IfcFlowStorageDeviceType_type, + IFC2X3_IfcFlowTerminal_type, + IFC2X3_IfcFlowTerminalType_type, + IFC2X3_IfcFlowTreatmentDevice_type, + IFC2X3_IfcFlowTreatmentDeviceType_type, + IFC2X3_IfcFluidFlowProperties_type, + IFC2X3_IfcFontStyle_type, + IFC2X3_IfcFontVariant_type, + IFC2X3_IfcFontWeight_type, + IFC2X3_IfcFooting_type, + IFC2X3_IfcFootingTypeEnum_type, + IFC2X3_IfcForceMeasure_type, + IFC2X3_IfcFrequencyMeasure_type, + IFC2X3_IfcFuelProperties_type, + IFC2X3_IfcFurnishingElement_type, + IFC2X3_IfcFurnishingElementType_type, + IFC2X3_IfcFurnitureStandard_type, + IFC2X3_IfcFurnitureType_type, + IFC2X3_IfcGasTerminalType_type, + IFC2X3_IfcGasTerminalTypeEnum_type, + IFC2X3_IfcGeneralMaterialProperties_type, + IFC2X3_IfcGeneralProfileProperties_type, + IFC2X3_IfcGeometricCurveSet_type, + IFC2X3_IfcGeometricProjectionEnum_type, + IFC2X3_IfcGeometricRepresentationContext_type, + IFC2X3_IfcGeometricRepresentationItem_type, + IFC2X3_IfcGeometricRepresentationSubContext_type, + IFC2X3_IfcGeometricSet_type, + IFC2X3_IfcGeometricSetSelect_type, + IFC2X3_IfcGloballyUniqueId_type, + IFC2X3_IfcGlobalOrLocalEnum_type, + IFC2X3_IfcGrid_type, + IFC2X3_IfcGridAxis_type, + IFC2X3_IfcGridPlacement_type, + IFC2X3_IfcGroup_type, + IFC2X3_IfcHalfSpaceSolid_type, + IFC2X3_IfcHatchLineDistanceSelect_type, + IFC2X3_IfcHeatExchangerType_type, + IFC2X3_IfcHeatExchangerTypeEnum_type, + IFC2X3_IfcHeatFluxDensityMeasure_type, + IFC2X3_IfcHeatingValueMeasure_type, + IFC2X3_IfcHourInDay_type, + IFC2X3_IfcHumidifierType_type, + IFC2X3_IfcHumidifierTypeEnum_type, + IFC2X3_IfcHygroscopicMaterialProperties_type, + IFC2X3_IfcIdentifier_type, + IFC2X3_IfcIlluminanceMeasure_type, + IFC2X3_IfcImageTexture_type, + IFC2X3_IfcInductanceMeasure_type, + IFC2X3_IfcInteger_type, + IFC2X3_IfcIntegerCountRateMeasure_type, + IFC2X3_IfcInternalOrExternalEnum_type, + IFC2X3_IfcInventory_type, + IFC2X3_IfcInventoryTypeEnum_type, + IFC2X3_IfcIonConcentrationMeasure_type, + IFC2X3_IfcIrregularTimeSeries_type, + IFC2X3_IfcIrregularTimeSeriesValue_type, + IFC2X3_IfcIShapeProfileDef_type, + IFC2X3_IfcIsothermalMoistureCapacityMeasure_type, + IFC2X3_IfcJunctionBoxType_type, + IFC2X3_IfcJunctionBoxTypeEnum_type, + IFC2X3_IfcKinematicViscosityMeasure_type, + IFC2X3_IfcLabel_type, + IFC2X3_IfcLaborResource_type, + IFC2X3_IfcLampType_type, + IFC2X3_IfcLampTypeEnum_type, + IFC2X3_IfcLayeredItem_type, + IFC2X3_IfcLayerSetDirectionEnum_type, + IFC2X3_IfcLengthMeasure_type, + IFC2X3_IfcLibraryInformation_type, + IFC2X3_IfcLibraryReference_type, + IFC2X3_IfcLibrarySelect_type, + IFC2X3_IfcLightDistributionCurveEnum_type, + IFC2X3_IfcLightDistributionData_type, + IFC2X3_IfcLightDistributionDataSourceSelect_type, + IFC2X3_IfcLightEmissionSourceEnum_type, + IFC2X3_IfcLightFixtureType_type, + IFC2X3_IfcLightFixtureTypeEnum_type, + IFC2X3_IfcLightIntensityDistribution_type, + IFC2X3_IfcLightSource_type, + IFC2X3_IfcLightSourceAmbient_type, + IFC2X3_IfcLightSourceDirectional_type, + IFC2X3_IfcLightSourceGoniometric_type, + IFC2X3_IfcLightSourcePositional_type, + IFC2X3_IfcLightSourceSpot_type, + IFC2X3_IfcLine_type, + IFC2X3_IfcLinearDimension_type, + IFC2X3_IfcLinearForceMeasure_type, + IFC2X3_IfcLinearMomentMeasure_type, + IFC2X3_IfcLinearStiffnessMeasure_type, + IFC2X3_IfcLinearVelocityMeasure_type, + IFC2X3_IfcLoadGroupTypeEnum_type, + IFC2X3_IfcLocalPlacement_type, + IFC2X3_IfcLocalTime_type, + IFC2X3_IfcLogical_type, + IFC2X3_IfcLogicalOperatorEnum_type, + IFC2X3_IfcLoop_type, + IFC2X3_IfcLShapeProfileDef_type, + IFC2X3_IfcLuminousFluxMeasure_type, + IFC2X3_IfcLuminousIntensityDistributionMeasure_type, + IFC2X3_IfcLuminousIntensityMeasure_type, + IFC2X3_IfcMagneticFluxDensityMeasure_type, + IFC2X3_IfcMagneticFluxMeasure_type, + IFC2X3_IfcManifoldSolidBrep_type, + IFC2X3_IfcMappedItem_type, + IFC2X3_IfcMassDensityMeasure_type, + IFC2X3_IfcMassFlowRateMeasure_type, + IFC2X3_IfcMassMeasure_type, + IFC2X3_IfcMassPerLengthMeasure_type, + IFC2X3_IfcMaterial_type, + IFC2X3_IfcMaterialClassificationRelationship_type, + IFC2X3_IfcMaterialDefinitionRepresentation_type, + IFC2X3_IfcMaterialLayer_type, + IFC2X3_IfcMaterialLayerSet_type, + IFC2X3_IfcMaterialLayerSetUsage_type, + IFC2X3_IfcMaterialList_type, + IFC2X3_IfcMaterialProperties_type, + IFC2X3_IfcMaterialSelect_type, + IFC2X3_IfcMeasureValue_type, + IFC2X3_IfcMeasureWithUnit_type, + IFC2X3_IfcMechanicalConcreteMaterialProperties_type, + IFC2X3_IfcMechanicalFastener_type, + IFC2X3_IfcMechanicalFastenerType_type, + IFC2X3_IfcMechanicalMaterialProperties_type, + IFC2X3_IfcMechanicalSteelMaterialProperties_type, + IFC2X3_IfcMember_type, + IFC2X3_IfcMemberType_type, + IFC2X3_IfcMemberTypeEnum_type, + IFC2X3_IfcMetric_type, + IFC2X3_IfcMetricValueSelect_type, + IFC2X3_IfcMinuteInHour_type, + IFC2X3_IfcModulusOfElasticityMeasure_type, + IFC2X3_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC2X3_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC2X3_IfcModulusOfSubgradeReactionMeasure_type, + IFC2X3_IfcMoistureDiffusivityMeasure_type, + IFC2X3_IfcMolecularWeightMeasure_type, + IFC2X3_IfcMomentOfInertiaMeasure_type, + IFC2X3_IfcMonetaryMeasure_type, + IFC2X3_IfcMonetaryUnit_type, + IFC2X3_IfcMonthInYearNumber_type, + IFC2X3_IfcMotorConnectionType_type, + IFC2X3_IfcMotorConnectionTypeEnum_type, + IFC2X3_IfcMove_type, + IFC2X3_IfcNamedUnit_type, + IFC2X3_IfcNormalisedRatioMeasure_type, + IFC2X3_IfcNullStyle_type, + IFC2X3_IfcNumericMeasure_type, + IFC2X3_IfcObject_type, + IFC2X3_IfcObjectDefinition_type, + IFC2X3_IfcObjective_type, + IFC2X3_IfcObjectiveEnum_type, + IFC2X3_IfcObjectPlacement_type, + IFC2X3_IfcObjectReferenceSelect_type, + IFC2X3_IfcObjectTypeEnum_type, + IFC2X3_IfcOccupant_type, + IFC2X3_IfcOccupantTypeEnum_type, + IFC2X3_IfcOffsetCurve2D_type, + IFC2X3_IfcOffsetCurve3D_type, + IFC2X3_IfcOneDirectionRepeatFactor_type, + IFC2X3_IfcOpeningElement_type, + IFC2X3_IfcOpenShell_type, + IFC2X3_IfcOpticalMaterialProperties_type, + IFC2X3_IfcOrderAction_type, + IFC2X3_IfcOrganization_type, + IFC2X3_IfcOrganizationRelationship_type, + IFC2X3_IfcOrientationSelect_type, + IFC2X3_IfcOrientedEdge_type, + IFC2X3_IfcOutletType_type, + IFC2X3_IfcOutletTypeEnum_type, + IFC2X3_IfcOwnerHistory_type, + IFC2X3_IfcParameterizedProfileDef_type, + IFC2X3_IfcParameterValue_type, + IFC2X3_IfcPath_type, + IFC2X3_IfcPerformanceHistory_type, + IFC2X3_IfcPermeableCoveringOperationEnum_type, + IFC2X3_IfcPermeableCoveringProperties_type, + IFC2X3_IfcPermit_type, + IFC2X3_IfcPerson_type, + IFC2X3_IfcPersonAndOrganization_type, + IFC2X3_IfcPHMeasure_type, + IFC2X3_IfcPhysicalComplexQuantity_type, + IFC2X3_IfcPhysicalOrVirtualEnum_type, + IFC2X3_IfcPhysicalQuantity_type, + IFC2X3_IfcPhysicalSimpleQuantity_type, + IFC2X3_IfcPile_type, + IFC2X3_IfcPileConstructionEnum_type, + IFC2X3_IfcPileTypeEnum_type, + IFC2X3_IfcPipeFittingType_type, + IFC2X3_IfcPipeFittingTypeEnum_type, + IFC2X3_IfcPipeSegmentType_type, + IFC2X3_IfcPipeSegmentTypeEnum_type, + IFC2X3_IfcPixelTexture_type, + IFC2X3_IfcPlacement_type, + IFC2X3_IfcPlanarBox_type, + IFC2X3_IfcPlanarExtent_type, + IFC2X3_IfcPlanarForceMeasure_type, + IFC2X3_IfcPlane_type, + IFC2X3_IfcPlaneAngleMeasure_type, + IFC2X3_IfcPlate_type, + IFC2X3_IfcPlateType_type, + IFC2X3_IfcPlateTypeEnum_type, + IFC2X3_IfcPoint_type, + IFC2X3_IfcPointOnCurve_type, + IFC2X3_IfcPointOnSurface_type, + IFC2X3_IfcPointOrVertexPoint_type, + IFC2X3_IfcPolygonalBoundedHalfSpace_type, + IFC2X3_IfcPolyline_type, + IFC2X3_IfcPolyLoop_type, + IFC2X3_IfcPort_type, + IFC2X3_IfcPositiveLengthMeasure_type, + IFC2X3_IfcPositivePlaneAngleMeasure_type, + IFC2X3_IfcPositiveRatioMeasure_type, + IFC2X3_IfcPostalAddress_type, + IFC2X3_IfcPowerMeasure_type, + IFC2X3_IfcPreDefinedColour_type, + IFC2X3_IfcPreDefinedCurveFont_type, + IFC2X3_IfcPreDefinedDimensionSymbol_type, + IFC2X3_IfcPreDefinedItem_type, + IFC2X3_IfcPreDefinedPointMarkerSymbol_type, + IFC2X3_IfcPreDefinedSymbol_type, + IFC2X3_IfcPreDefinedTerminatorSymbol_type, + IFC2X3_IfcPreDefinedTextFont_type, + IFC2X3_IfcPresentableText_type, + IFC2X3_IfcPresentationLayerAssignment_type, + IFC2X3_IfcPresentationLayerWithStyle_type, + IFC2X3_IfcPresentationStyle_type, + IFC2X3_IfcPresentationStyleAssignment_type, + IFC2X3_IfcPresentationStyleSelect_type, + IFC2X3_IfcPressureMeasure_type, + IFC2X3_IfcProcedure_type, + IFC2X3_IfcProcedureTypeEnum_type, + IFC2X3_IfcProcess_type, + IFC2X3_IfcProduct_type, + IFC2X3_IfcProductDefinitionShape_type, + IFC2X3_IfcProductRepresentation_type, + IFC2X3_IfcProductsOfCombustionProperties_type, + IFC2X3_IfcProfileDef_type, + IFC2X3_IfcProfileProperties_type, + IFC2X3_IfcProfileTypeEnum_type, + IFC2X3_IfcProject_type, + IFC2X3_IfcProjectedOrTrueLengthEnum_type, + IFC2X3_IfcProjectionCurve_type, + IFC2X3_IfcProjectionElement_type, + IFC2X3_IfcProjectOrder_type, + IFC2X3_IfcProjectOrderRecord_type, + IFC2X3_IfcProjectOrderRecordTypeEnum_type, + IFC2X3_IfcProjectOrderTypeEnum_type, + IFC2X3_IfcProperty_type, + IFC2X3_IfcPropertyBoundedValue_type, + IFC2X3_IfcPropertyConstraintRelationship_type, + IFC2X3_IfcPropertyDefinition_type, + IFC2X3_IfcPropertyDependencyRelationship_type, + IFC2X3_IfcPropertyEnumeratedValue_type, + IFC2X3_IfcPropertyEnumeration_type, + IFC2X3_IfcPropertyListValue_type, + IFC2X3_IfcPropertyReferenceValue_type, + IFC2X3_IfcPropertySet_type, + IFC2X3_IfcPropertySetDefinition_type, + IFC2X3_IfcPropertySingleValue_type, + IFC2X3_IfcPropertySourceEnum_type, + IFC2X3_IfcPropertyTableValue_type, + IFC2X3_IfcProtectiveDeviceType_type, + IFC2X3_IfcProtectiveDeviceTypeEnum_type, + IFC2X3_IfcProxy_type, + IFC2X3_IfcPumpType_type, + IFC2X3_IfcPumpTypeEnum_type, + IFC2X3_IfcQuantityArea_type, + IFC2X3_IfcQuantityCount_type, + IFC2X3_IfcQuantityLength_type, + IFC2X3_IfcQuantityTime_type, + IFC2X3_IfcQuantityVolume_type, + IFC2X3_IfcQuantityWeight_type, + IFC2X3_IfcRadioActivityMeasure_type, + IFC2X3_IfcRadiusDimension_type, + IFC2X3_IfcRailing_type, + IFC2X3_IfcRailingType_type, + IFC2X3_IfcRailingTypeEnum_type, + IFC2X3_IfcRamp_type, + IFC2X3_IfcRampFlight_type, + IFC2X3_IfcRampFlightType_type, + IFC2X3_IfcRampFlightTypeEnum_type, + IFC2X3_IfcRampTypeEnum_type, + IFC2X3_IfcRatioMeasure_type, + IFC2X3_IfcRationalBezierCurve_type, + IFC2X3_IfcReal_type, + IFC2X3_IfcRectangleHollowProfileDef_type, + IFC2X3_IfcRectangleProfileDef_type, + IFC2X3_IfcRectangularPyramid_type, + IFC2X3_IfcRectangularTrimmedSurface_type, + IFC2X3_IfcReferencesValueDocument_type, + IFC2X3_IfcReflectanceMethodEnum_type, + IFC2X3_IfcRegularTimeSeries_type, + IFC2X3_IfcReinforcementBarProperties_type, + IFC2X3_IfcReinforcementDefinitionProperties_type, + IFC2X3_IfcReinforcingBar_type, + IFC2X3_IfcReinforcingBarRoleEnum_type, + IFC2X3_IfcReinforcingBarSurfaceEnum_type, + IFC2X3_IfcReinforcingElement_type, + IFC2X3_IfcReinforcingMesh_type, + IFC2X3_IfcRelAggregates_type, + IFC2X3_IfcRelAssigns_type, + IFC2X3_IfcRelAssignsTasks_type, + IFC2X3_IfcRelAssignsToActor_type, + IFC2X3_IfcRelAssignsToControl_type, + IFC2X3_IfcRelAssignsToGroup_type, + IFC2X3_IfcRelAssignsToProcess_type, + IFC2X3_IfcRelAssignsToProduct_type, + IFC2X3_IfcRelAssignsToProjectOrder_type, + IFC2X3_IfcRelAssignsToResource_type, + IFC2X3_IfcRelAssociates_type, + IFC2X3_IfcRelAssociatesAppliedValue_type, + IFC2X3_IfcRelAssociatesApproval_type, + IFC2X3_IfcRelAssociatesClassification_type, + IFC2X3_IfcRelAssociatesConstraint_type, + IFC2X3_IfcRelAssociatesDocument_type, + IFC2X3_IfcRelAssociatesLibrary_type, + IFC2X3_IfcRelAssociatesMaterial_type, + IFC2X3_IfcRelAssociatesProfileProperties_type, + IFC2X3_IfcRelationship_type, + IFC2X3_IfcRelaxation_type, + IFC2X3_IfcRelConnects_type, + IFC2X3_IfcRelConnectsElements_type, + IFC2X3_IfcRelConnectsPathElements_type, + IFC2X3_IfcRelConnectsPorts_type, + IFC2X3_IfcRelConnectsPortToElement_type, + IFC2X3_IfcRelConnectsStructuralActivity_type, + IFC2X3_IfcRelConnectsStructuralElement_type, + IFC2X3_IfcRelConnectsStructuralMember_type, + IFC2X3_IfcRelConnectsWithEccentricity_type, + IFC2X3_IfcRelConnectsWithRealizingElements_type, + IFC2X3_IfcRelContainedInSpatialStructure_type, + IFC2X3_IfcRelCoversBldgElements_type, + IFC2X3_IfcRelCoversSpaces_type, + IFC2X3_IfcRelDecomposes_type, + IFC2X3_IfcRelDefines_type, + IFC2X3_IfcRelDefinesByProperties_type, + IFC2X3_IfcRelDefinesByType_type, + IFC2X3_IfcRelFillsElement_type, + IFC2X3_IfcRelFlowControlElements_type, + IFC2X3_IfcRelInteractionRequirements_type, + IFC2X3_IfcRelNests_type, + IFC2X3_IfcRelOccupiesSpaces_type, + IFC2X3_IfcRelOverridesProperties_type, + IFC2X3_IfcRelProjectsElement_type, + IFC2X3_IfcRelReferencedInSpatialStructure_type, + IFC2X3_IfcRelSchedulesCostItems_type, + IFC2X3_IfcRelSequence_type, + IFC2X3_IfcRelServicesBuildings_type, + IFC2X3_IfcRelSpaceBoundary_type, + IFC2X3_IfcRelVoidsElement_type, + IFC2X3_IfcRepresentation_type, + IFC2X3_IfcRepresentationContext_type, + IFC2X3_IfcRepresentationItem_type, + IFC2X3_IfcRepresentationMap_type, + IFC2X3_IfcResource_type, + IFC2X3_IfcResourceConsumptionEnum_type, + IFC2X3_IfcRevolvedAreaSolid_type, + IFC2X3_IfcRibPlateDirectionEnum_type, + IFC2X3_IfcRibPlateProfileProperties_type, + IFC2X3_IfcRightCircularCone_type, + IFC2X3_IfcRightCircularCylinder_type, + IFC2X3_IfcRoleEnum_type, + IFC2X3_IfcRoof_type, + IFC2X3_IfcRoofTypeEnum_type, + IFC2X3_IfcRoot_type, + IFC2X3_IfcRotationalFrequencyMeasure_type, + IFC2X3_IfcRotationalMassMeasure_type, + IFC2X3_IfcRotationalStiffnessMeasure_type, + IFC2X3_IfcRoundedEdgeFeature_type, + IFC2X3_IfcRoundedRectangleProfileDef_type, + IFC2X3_IfcSanitaryTerminalType_type, + IFC2X3_IfcSanitaryTerminalTypeEnum_type, + IFC2X3_IfcScheduleTimeControl_type, + IFC2X3_IfcSecondInMinute_type, + IFC2X3_IfcSectionalAreaIntegralMeasure_type, + IFC2X3_IfcSectionedSpine_type, + IFC2X3_IfcSectionModulusMeasure_type, + IFC2X3_IfcSectionProperties_type, + IFC2X3_IfcSectionReinforcementProperties_type, + IFC2X3_IfcSectionTypeEnum_type, + IFC2X3_IfcSensorType_type, + IFC2X3_IfcSensorTypeEnum_type, + IFC2X3_IfcSequenceEnum_type, + IFC2X3_IfcServiceLife_type, + IFC2X3_IfcServiceLifeFactor_type, + IFC2X3_IfcServiceLifeFactorTypeEnum_type, + IFC2X3_IfcServiceLifeTypeEnum_type, + IFC2X3_IfcShapeAspect_type, + IFC2X3_IfcShapeModel_type, + IFC2X3_IfcShapeRepresentation_type, + IFC2X3_IfcShearModulusMeasure_type, + IFC2X3_IfcShell_type, + IFC2X3_IfcShellBasedSurfaceModel_type, + IFC2X3_IfcSimpleProperty_type, + IFC2X3_IfcSimpleValue_type, + IFC2X3_IfcSIPrefix_type, + IFC2X3_IfcSite_type, + IFC2X3_IfcSIUnit_type, + IFC2X3_IfcSIUnitName_type, + IFC2X3_IfcSizeSelect_type, + IFC2X3_IfcSlab_type, + IFC2X3_IfcSlabType_type, + IFC2X3_IfcSlabTypeEnum_type, + IFC2X3_IfcSlippageConnectionCondition_type, + IFC2X3_IfcSolidAngleMeasure_type, + IFC2X3_IfcSolidModel_type, + IFC2X3_IfcSoundPowerMeasure_type, + IFC2X3_IfcSoundPressureMeasure_type, + IFC2X3_IfcSoundProperties_type, + IFC2X3_IfcSoundScaleEnum_type, + IFC2X3_IfcSoundValue_type, + IFC2X3_IfcSpace_type, + IFC2X3_IfcSpaceHeaterType_type, + IFC2X3_IfcSpaceHeaterTypeEnum_type, + IFC2X3_IfcSpaceProgram_type, + IFC2X3_IfcSpaceThermalLoadProperties_type, + IFC2X3_IfcSpaceType_type, + IFC2X3_IfcSpaceTypeEnum_type, + IFC2X3_IfcSpatialStructureElement_type, + IFC2X3_IfcSpatialStructureElementType_type, + IFC2X3_IfcSpecificHeatCapacityMeasure_type, + IFC2X3_IfcSpecularExponent_type, + IFC2X3_IfcSpecularHighlightSelect_type, + IFC2X3_IfcSpecularRoughness_type, + IFC2X3_IfcSphere_type, + IFC2X3_IfcStackTerminalType_type, + IFC2X3_IfcStackTerminalTypeEnum_type, + IFC2X3_IfcStair_type, + IFC2X3_IfcStairFlight_type, + IFC2X3_IfcStairFlightType_type, + IFC2X3_IfcStairFlightTypeEnum_type, + IFC2X3_IfcStairTypeEnum_type, + IFC2X3_IfcStateEnum_type, + IFC2X3_IfcStructuralAction_type, + IFC2X3_IfcStructuralActivity_type, + IFC2X3_IfcStructuralActivityAssignmentSelect_type, + IFC2X3_IfcStructuralAnalysisModel_type, + IFC2X3_IfcStructuralConnection_type, + IFC2X3_IfcStructuralConnectionCondition_type, + IFC2X3_IfcStructuralCurveConnection_type, + IFC2X3_IfcStructuralCurveMember_type, + IFC2X3_IfcStructuralCurveMemberVarying_type, + IFC2X3_IfcStructuralCurveTypeEnum_type, + IFC2X3_IfcStructuralItem_type, + IFC2X3_IfcStructuralLinearAction_type, + IFC2X3_IfcStructuralLinearActionVarying_type, + IFC2X3_IfcStructuralLoad_type, + IFC2X3_IfcStructuralLoadGroup_type, + IFC2X3_IfcStructuralLoadLinearForce_type, + IFC2X3_IfcStructuralLoadPlanarForce_type, + IFC2X3_IfcStructuralLoadSingleDisplacement_type, + IFC2X3_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC2X3_IfcStructuralLoadSingleForce_type, + IFC2X3_IfcStructuralLoadSingleForceWarping_type, + IFC2X3_IfcStructuralLoadStatic_type, + IFC2X3_IfcStructuralLoadTemperature_type, + IFC2X3_IfcStructuralMember_type, + IFC2X3_IfcStructuralPlanarAction_type, + IFC2X3_IfcStructuralPlanarActionVarying_type, + IFC2X3_IfcStructuralPointAction_type, + IFC2X3_IfcStructuralPointConnection_type, + IFC2X3_IfcStructuralPointReaction_type, + IFC2X3_IfcStructuralProfileProperties_type, + IFC2X3_IfcStructuralReaction_type, + IFC2X3_IfcStructuralResultGroup_type, + IFC2X3_IfcStructuralSteelProfileProperties_type, + IFC2X3_IfcStructuralSurfaceConnection_type, + IFC2X3_IfcStructuralSurfaceMember_type, + IFC2X3_IfcStructuralSurfaceMemberVarying_type, + IFC2X3_IfcStructuralSurfaceTypeEnum_type, + IFC2X3_IfcStructuredDimensionCallout_type, + IFC2X3_IfcStyledItem_type, + IFC2X3_IfcStyledRepresentation_type, + IFC2X3_IfcStyleModel_type, + IFC2X3_IfcSubContractResource_type, + IFC2X3_IfcSubedge_type, + IFC2X3_IfcSurface_type, + IFC2X3_IfcSurfaceCurveSweptAreaSolid_type, + IFC2X3_IfcSurfaceOfLinearExtrusion_type, + IFC2X3_IfcSurfaceOfRevolution_type, + IFC2X3_IfcSurfaceOrFaceSurface_type, + IFC2X3_IfcSurfaceSide_type, + IFC2X3_IfcSurfaceStyle_type, + IFC2X3_IfcSurfaceStyleElementSelect_type, + IFC2X3_IfcSurfaceStyleLighting_type, + IFC2X3_IfcSurfaceStyleRefraction_type, + IFC2X3_IfcSurfaceStyleRendering_type, + IFC2X3_IfcSurfaceStyleShading_type, + IFC2X3_IfcSurfaceStyleWithTextures_type, + IFC2X3_IfcSurfaceTexture_type, + IFC2X3_IfcSurfaceTextureEnum_type, + IFC2X3_IfcSweptAreaSolid_type, + IFC2X3_IfcSweptDiskSolid_type, + IFC2X3_IfcSweptSurface_type, + IFC2X3_IfcSwitchingDeviceType_type, + IFC2X3_IfcSwitchingDeviceTypeEnum_type, + IFC2X3_IfcSymbolStyle_type, + IFC2X3_IfcSymbolStyleSelect_type, + IFC2X3_IfcSystem_type, + IFC2X3_IfcSystemFurnitureElementType_type, + IFC2X3_IfcTable_type, + IFC2X3_IfcTableRow_type, + IFC2X3_IfcTankType_type, + IFC2X3_IfcTankTypeEnum_type, + IFC2X3_IfcTask_type, + IFC2X3_IfcTelecomAddress_type, + IFC2X3_IfcTemperatureGradientMeasure_type, + IFC2X3_IfcTendon_type, + IFC2X3_IfcTendonAnchor_type, + IFC2X3_IfcTendonTypeEnum_type, + IFC2X3_IfcTerminatorSymbol_type, + IFC2X3_IfcText_type, + IFC2X3_IfcTextAlignment_type, + IFC2X3_IfcTextDecoration_type, + IFC2X3_IfcTextFontName_type, + IFC2X3_IfcTextFontSelect_type, + IFC2X3_IfcTextLiteral_type, + IFC2X3_IfcTextLiteralWithExtent_type, + IFC2X3_IfcTextPath_type, + IFC2X3_IfcTextStyle_type, + IFC2X3_IfcTextStyleFontModel_type, + IFC2X3_IfcTextStyleForDefinedFont_type, + IFC2X3_IfcTextStyleSelect_type, + IFC2X3_IfcTextStyleTextModel_type, + IFC2X3_IfcTextStyleWithBoxCharacteristics_type, + IFC2X3_IfcTextTransformation_type, + IFC2X3_IfcTextureCoordinate_type, + IFC2X3_IfcTextureCoordinateGenerator_type, + IFC2X3_IfcTextureMap_type, + IFC2X3_IfcTextureVertex_type, + IFC2X3_IfcThermalAdmittanceMeasure_type, + IFC2X3_IfcThermalConductivityMeasure_type, + IFC2X3_IfcThermalExpansionCoefficientMeasure_type, + IFC2X3_IfcThermalLoadSourceEnum_type, + IFC2X3_IfcThermalLoadTypeEnum_type, + IFC2X3_IfcThermalMaterialProperties_type, + IFC2X3_IfcThermalResistanceMeasure_type, + IFC2X3_IfcThermalTransmittanceMeasure_type, + IFC2X3_IfcThermodynamicTemperatureMeasure_type, + IFC2X3_IfcTimeMeasure_type, + IFC2X3_IfcTimeSeries_type, + IFC2X3_IfcTimeSeriesDataTypeEnum_type, + IFC2X3_IfcTimeSeriesReferenceRelationship_type, + IFC2X3_IfcTimeSeriesSchedule_type, + IFC2X3_IfcTimeSeriesScheduleTypeEnum_type, + IFC2X3_IfcTimeSeriesValue_type, + IFC2X3_IfcTimeStamp_type, + IFC2X3_IfcTopologicalRepresentationItem_type, + IFC2X3_IfcTopologyRepresentation_type, + IFC2X3_IfcTorqueMeasure_type, + IFC2X3_IfcTransformerType_type, + IFC2X3_IfcTransformerTypeEnum_type, + IFC2X3_IfcTransitionCode_type, + IFC2X3_IfcTransportElement_type, + IFC2X3_IfcTransportElementType_type, + IFC2X3_IfcTransportElementTypeEnum_type, + IFC2X3_IfcTrapeziumProfileDef_type, + IFC2X3_IfcTrimmedCurve_type, + IFC2X3_IfcTrimmingPreference_type, + IFC2X3_IfcTrimmingSelect_type, + IFC2X3_IfcTShapeProfileDef_type, + IFC2X3_IfcTubeBundleType_type, + IFC2X3_IfcTubeBundleTypeEnum_type, + IFC2X3_IfcTwoDirectionRepeatFactor_type, + IFC2X3_IfcTypeObject_type, + IFC2X3_IfcTypeProduct_type, + IFC2X3_IfcUnit_type, + IFC2X3_IfcUnitaryEquipmentType_type, + IFC2X3_IfcUnitaryEquipmentTypeEnum_type, + IFC2X3_IfcUnitAssignment_type, + IFC2X3_IfcUnitEnum_type, + IFC2X3_IfcUShapeProfileDef_type, + IFC2X3_IfcValue_type, + IFC2X3_IfcValveType_type, + IFC2X3_IfcValveTypeEnum_type, + IFC2X3_IfcVaporPermeabilityMeasure_type, + IFC2X3_IfcVector_type, + IFC2X3_IfcVectorOrDirection_type, + IFC2X3_IfcVertex_type, + IFC2X3_IfcVertexBasedTextureMap_type, + IFC2X3_IfcVertexLoop_type, + IFC2X3_IfcVertexPoint_type, + IFC2X3_IfcVibrationIsolatorType_type, + IFC2X3_IfcVibrationIsolatorTypeEnum_type, + IFC2X3_IfcVirtualElement_type, + IFC2X3_IfcVirtualGridIntersection_type, + IFC2X3_IfcVolumeMeasure_type, + IFC2X3_IfcVolumetricFlowRateMeasure_type, + IFC2X3_IfcWall_type, + IFC2X3_IfcWallStandardCase_type, + IFC2X3_IfcWallType_type, + IFC2X3_IfcWallTypeEnum_type, + IFC2X3_IfcWarpingConstantMeasure_type, + IFC2X3_IfcWarpingMomentMeasure_type, + IFC2X3_IfcWasteTerminalType_type, + IFC2X3_IfcWasteTerminalTypeEnum_type, + IFC2X3_IfcWaterProperties_type, + IFC2X3_IfcWindow_type, + IFC2X3_IfcWindowLiningProperties_type, + IFC2X3_IfcWindowPanelOperationEnum_type, + IFC2X3_IfcWindowPanelPositionEnum_type, + IFC2X3_IfcWindowPanelProperties_type, + IFC2X3_IfcWindowStyle_type, + IFC2X3_IfcWindowStyleConstructionEnum_type, + IFC2X3_IfcWindowStyleOperationEnum_type, + IFC2X3_IfcWorkControl_type, + IFC2X3_IfcWorkControlTypeEnum_type, + IFC2X3_IfcWorkPlan_type, + IFC2X3_IfcWorkSchedule_type, + IFC2X3_IfcYearNumber_type, + IFC2X3_IfcZone_type, + IFC2X3_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3053], declarations, new IFC2X3_instance_factory()); } diff --git a/src/ifcparse/Ifc2x3.cpp b/src/ifcparse/Ifc2x3.cpp index 249c055202..048309b79d 100644 --- a/src/ifcparse/Ifc2x3.cpp +++ b/src/ifcparse/Ifc2x3.cpp @@ -1041,40 +1041,11 @@ Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcActionSourceTypeEnum::Value Ifc2x3::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcActionSourceTypeEnum::Value) IFC2X3_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcActionSourceTypeEnum::operator Ifc2x3::IfcActionSourceTypeEnum::Value() const { @@ -1103,18 +1074,11 @@ Ifc2x3::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcActionTypeEnum::Value Ifc2x3::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc2x3::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc2x3::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc2x3::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc2x3::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcActionTypeEnum::Value) IFC2X3_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcActionTypeEnum::operator Ifc2x3::IfcActionTypeEnum::Value() const { @@ -1143,20 +1107,11 @@ Ifc2x3::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcActuatorTypeEnum::Value Ifc2x3::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcActuatorTypeEnum::Value) IFC2X3_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcActuatorTypeEnum::operator Ifc2x3::IfcActuatorTypeEnum::Value() const { @@ -1185,18 +1140,11 @@ Ifc2x3::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC2X3_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAddressTypeEnum::Value Ifc2x3::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc2x3::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc2x3::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc2x3::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc2x3::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAddressTypeEnum::Value) IFC2X3_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAddressTypeEnum::operator Ifc2x3::IfcAddressTypeEnum::Value() const { @@ -1225,15 +1173,11 @@ Ifc2x3::IfcAheadOrBehind::IfcAheadOrBehind(const std::string& v) { } const char* Ifc2x3::IfcAheadOrBehind::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AHEAD", "BEHIND" }; - return names[v]; + return IFC2X3_IfcAheadOrBehind_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAheadOrBehind::Value Ifc2x3::IfcAheadOrBehind::FromString(const std::string& s) { - if (s == "AHEAD") return ::Ifc2x3::IfcAheadOrBehind::IfcAheadOrBehind_AHEAD; - if (s == "BEHIND") return ::Ifc2x3::IfcAheadOrBehind::IfcAheadOrBehind_BEHIND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAheadOrBehind::Value) IFC2X3_IfcAheadOrBehind_type->lookup_enum_offset(s); } Ifc2x3::IfcAheadOrBehind::operator Ifc2x3::IfcAheadOrBehind::Value() const { @@ -1262,18 +1206,11 @@ Ifc2x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::string& } const char* Ifc2x3::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAirTerminalBoxTypeEnum::Value Ifc2x3::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc2x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc2x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc2x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAirTerminalBoxTypeEnum::Value) IFC2X3_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAirTerminalBoxTypeEnum::operator Ifc2x3::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1302,22 +1239,11 @@ Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILLE", "REGISTER", "DIFFUSER", "EYEBALL", "IRIS", "LINEARGRILLE", "LINEARDIFFUSER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAirTerminalTypeEnum::Value Ifc2x3::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "GRILLE") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "REGISTER") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "DIFFUSER") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "EYEBALL") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_EYEBALL; - if (s == "IRIS") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_IRIS; - if (s == "LINEARGRILLE") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_LINEARGRILLE; - if (s == "LINEARDIFFUSER") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_LINEARDIFFUSER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAirTerminalTypeEnum::Value) IFC2X3_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAirTerminalTypeEnum::operator Ifc2x3::IfcAirTerminalTypeEnum::Value() const { @@ -1346,24 +1272,11 @@ Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const s } const char* Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC2X3_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc2x3::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1392,21 +1305,11 @@ Ifc2x3::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAlarmTypeEnum::Value Ifc2x3::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAlarmTypeEnum::Value) IFC2X3_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAlarmTypeEnum::operator Ifc2x3::IfcAlarmTypeEnum::Value() const { @@ -1435,18 +1338,11 @@ Ifc2x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string& v) } const char* Ifc2x3::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAnalysisModelTypeEnum::Value Ifc2x3::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc2x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc2x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc2x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAnalysisModelTypeEnum::Value) IFC2X3_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAnalysisModelTypeEnum::operator Ifc2x3::IfcAnalysisModelTypeEnum::Value() const { @@ -1475,19 +1371,11 @@ Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::string& } const char* Ifc2x3::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAnalysisTheoryTypeEnum::Value Ifc2x3::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAnalysisTheoryTypeEnum::Value) IFC2X3_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAnalysisTheoryTypeEnum::operator Ifc2x3::IfcAnalysisTheoryTypeEnum::Value() const { @@ -1516,17 +1404,11 @@ Ifc2x3::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::string& } const char* Ifc2x3::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC2X3_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcArithmeticOperatorEnum::Value Ifc2x3::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc2x3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc2x3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc2x3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc2x3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcArithmeticOperatorEnum::Value) IFC2X3_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcArithmeticOperatorEnum::operator Ifc2x3::IfcArithmeticOperatorEnum::Value() const { @@ -1555,16 +1437,11 @@ Ifc2x3::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc2x3::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcAssemblyPlaceEnum::Value Ifc2x3::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc2x3::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc2x3::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcAssemblyPlaceEnum::Value) IFC2X3_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcAssemblyPlaceEnum::operator Ifc2x3::IfcAssemblyPlaceEnum::Value() const { @@ -1593,19 +1470,11 @@ Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc2x3::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC2X3_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcBSplineCurveForm::Value Ifc2x3::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc2x3::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcBSplineCurveForm::Value) IFC2X3_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc2x3::IfcBSplineCurveForm::operator Ifc2x3::IfcBSplineCurveForm::Value() const { @@ -1634,19 +1503,11 @@ Ifc2x3::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "LINTEL", "T_BEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcBeamTypeEnum::Value Ifc2x3::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc2x3::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc2x3::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "LINTEL") return ::Ifc2x3::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "T_BEAM") return ::Ifc2x3::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "USERDEFINED") return ::Ifc2x3::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcBeamTypeEnum::Value) IFC2X3_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcBeamTypeEnum::operator Ifc2x3::IfcBeamTypeEnum::Value() const { @@ -1675,19 +1536,11 @@ Ifc2x3::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc2x3::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO" }; - return names[v]; + return IFC2X3_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcBenchmarkEnum::Value Ifc2x3::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc2x3::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc2x3::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc2x3::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc2x3::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc2x3::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc2x3::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcBenchmarkEnum::Value) IFC2X3_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcBenchmarkEnum::operator Ifc2x3::IfcBenchmarkEnum::Value() const { @@ -1716,17 +1569,11 @@ Ifc2x3::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcBoilerTypeEnum::Value Ifc2x3::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc2x3::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc2x3::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc2x3::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcBoilerTypeEnum::Value) IFC2X3_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcBoilerTypeEnum::operator Ifc2x3::IfcBoilerTypeEnum::Value() const { @@ -1755,16 +1602,11 @@ Ifc2x3::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc2x3::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC2X3_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcBooleanOperator::Value Ifc2x3::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc2x3::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc2x3::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc2x3::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcBooleanOperator::Value) IFC2X3_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc2x3::IfcBooleanOperator::operator Ifc2x3::IfcBooleanOperator::Value() const { @@ -1793,15 +1635,11 @@ Ifc2x3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const s } const char* Ifc2x3::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcBuildingElementProxyTypeEnum::Value Ifc2x3::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc2x3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcBuildingElementProxyTypeEnum::Value) IFC2X3_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcBuildingElementProxyTypeEnum::operator Ifc2x3::IfcBuildingElementProxyTypeEnum::Value() const { @@ -1830,19 +1668,11 @@ Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std } const char* Ifc2x3::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCableCarrierFittingTypeEnum::Value Ifc2x3::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCableCarrierFittingTypeEnum::Value) IFC2X3_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCableCarrierFittingTypeEnum::operator Ifc2x3::IfcCableCarrierFittingTypeEnum::Value() const { @@ -1871,19 +1701,11 @@ Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std } const char* Ifc2x3::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCableCarrierSegmentTypeEnum::Value Ifc2x3::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCableCarrierSegmentTypeEnum::Value) IFC2X3_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCableCarrierSegmentTypeEnum::operator Ifc2x3::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -1912,17 +1734,11 @@ Ifc2x3::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLESEGMENT", "CONDUCTORSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCableSegmentTypeEnum::Value Ifc2x3::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLESEGMENT") return ::Ifc2x3::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc2x3::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCableSegmentTypeEnum::Value) IFC2X3_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCableSegmentTypeEnum::operator Ifc2x3::IfcCableSegmentTypeEnum::Value() const { @@ -1951,19 +1767,11 @@ Ifc2x3::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc2x3::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "MODIFIEDADDED", "MODIFIEDDELETED" }; - return names[v]; + return IFC2X3_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcChangeActionEnum::Value Ifc2x3::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc2x3::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc2x3::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc2x3::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc2x3::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "MODIFIEDADDED") return ::Ifc2x3::IfcChangeActionEnum::IfcChangeAction_MODIFIEDADDED; - if (s == "MODIFIEDDELETED") return ::Ifc2x3::IfcChangeActionEnum::IfcChangeAction_MODIFIEDDELETED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcChangeActionEnum::Value) IFC2X3_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcChangeActionEnum::operator Ifc2x3::IfcChangeActionEnum::Value() const { @@ -1992,18 +1800,11 @@ Ifc2x3::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcChillerTypeEnum::Value Ifc2x3::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc2x3::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc2x3::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc2x3::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcChillerTypeEnum::Value) IFC2X3_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcChillerTypeEnum::operator Ifc2x3::IfcChillerTypeEnum::Value() const { @@ -2032,21 +1833,11 @@ Ifc2x3::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "WATERCOOLINGCOIL", "STEAMHEATINGCOIL", "WATERHEATINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCoilTypeEnum::Value Ifc2x3::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCoilTypeEnum::Value) IFC2X3_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCoilTypeEnum::operator Ifc2x3::IfcCoilTypeEnum::Value() const { @@ -2075,16 +1866,11 @@ Ifc2x3::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcColumnTypeEnum::Value Ifc2x3::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc2x3::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "USERDEFINED") return ::Ifc2x3::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcColumnTypeEnum::Value) IFC2X3_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcColumnTypeEnum::operator Ifc2x3::IfcColumnTypeEnum::Value() const { @@ -2113,30 +1899,11 @@ Ifc2x3::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCompressorTypeEnum::Value Ifc2x3::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCompressorTypeEnum::Value) IFC2X3_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCompressorTypeEnum::operator Ifc2x3::IfcCompressorTypeEnum::Value() const { @@ -2165,21 +1932,11 @@ Ifc2x3::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATERCOOLEDSHELLTUBE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDTUBEINTUBE", "WATERCOOLEDBRAZEDPLATE", "AIRCOOLED", "EVAPORATIVECOOLED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCondenserTypeEnum::Value Ifc2x3::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "AIRCOOLED") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCondenserTypeEnum::Value) IFC2X3_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCondenserTypeEnum::operator Ifc2x3::IfcCondenserTypeEnum::Value() const { @@ -2208,17 +1965,11 @@ Ifc2x3::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcConnectionTypeEnum::Value Ifc2x3::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc2x3::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc2x3::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc2x3::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcConnectionTypeEnum::Value) IFC2X3_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcConnectionTypeEnum::operator Ifc2x3::IfcConnectionTypeEnum::Value() const { @@ -2247,18 +1998,11 @@ Ifc2x3::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc2x3::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcConstraintEnum::Value Ifc2x3::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc2x3::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc2x3::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc2x3::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcConstraintEnum::Value) IFC2X3_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcConstraintEnum::operator Ifc2x3::IfcConstraintEnum::Value() const { @@ -2287,21 +2031,11 @@ Ifc2x3::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROPORTIONAL", "PROPORTIONALINTEGRAL", "PROPORTIONALINTEGRALDERIVATIVE", "TIMEDTWOPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcControllerTypeEnum::Value Ifc2x3::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROPORTIONAL") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "PROPORTIONALINTEGRAL") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_PROPORTIONALINTEGRAL; - if (s == "PROPORTIONALINTEGRALDERIVATIVE") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_PROPORTIONALINTEGRALDERIVATIVE; - if (s == "TIMEDTWOPOSITION") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_TIMEDTWOPOSITION; - if (s == "TWOPOSITION") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcControllerTypeEnum::Value) IFC2X3_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcControllerTypeEnum::operator Ifc2x3::IfcControllerTypeEnum::Value() const { @@ -2330,17 +2064,11 @@ Ifc2x3::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCooledBeamTypeEnum::Value Ifc2x3::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc2x3::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc2x3::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCooledBeamTypeEnum::Value) IFC2X3_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCooledBeamTypeEnum::operator Ifc2x3::IfcCooledBeamTypeEnum::Value() const { @@ -2369,18 +2097,11 @@ Ifc2x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCoolingTowerTypeEnum::Value Ifc2x3::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc2x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc2x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc2x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCoolingTowerTypeEnum::Value) IFC2X3_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCoolingTowerTypeEnum::operator Ifc2x3::IfcCoolingTowerTypeEnum::Value() const { @@ -2409,22 +2130,11 @@ Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCostScheduleTypeEnum::Value Ifc2x3::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCostScheduleTypeEnum::Value) IFC2X3_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCostScheduleTypeEnum::operator Ifc2x3::IfcCostScheduleTypeEnum::Value() const { @@ -2453,23 +2163,11 @@ Ifc2x3::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCoveringTypeEnum::Value Ifc2x3::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "INSULATION") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "USERDEFINED") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCoveringTypeEnum::Value) IFC2X3_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCoveringTypeEnum::operator Ifc2x3::IfcCoveringTypeEnum::Value() const { @@ -2498,96 +2196,11 @@ Ifc2x3::IfcCurrencyEnum::IfcCurrencyEnum(const std::string& v) { } const char* Ifc2x3::IfcCurrencyEnum::ToString(Value v) { - if ( v < 0 || v >= 83 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AED", "AES", "ATS", "AUD", "BBD", "BEG", "BGL", "BHD", "BMD", "BND", "BRL", "BSD", "BWP", "BZD", "CAD", "CBD", "CHF", "CLP", "CNY", "CYS", "CZK", "DDP", "DEM", "DKK", "EGL", "EST", "EUR", "FAK", "FIM", "FJD", "FKP", "FRF", "GBP", "GIP", "GMD", "GRX", "HKD", "HUF", "ICK", "IDR", "ILS", "INR", "IRP", "ITL", "JMD", "JOD", "JPY", "KES", "KRW", "KWD", "KYD", "LKR", "LUF", "MTL", "MUR", "MXN", "MYR", "NLG", "NZD", "OMR", "PGK", "PHP", "PKR", "PLN", "PTN", "QAR", "RUR", "SAR", "SCR", "SEK", "SGD", "SKP", "THB", "TRL", "TTD", "TWD", "USD", "VEB", "VND", "XEU", "ZAR", "ZWD", "NOK" }; - return names[v]; + return IFC2X3_IfcCurrencyEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCurrencyEnum::Value Ifc2x3::IfcCurrencyEnum::FromString(const std::string& s) { - if (s == "AED") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_AED; - if (s == "AES") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_AES; - if (s == "ATS") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_ATS; - if (s == "AUD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_AUD; - if (s == "BBD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BBD; - if (s == "BEG") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BEG; - if (s == "BGL") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BGL; - if (s == "BHD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BHD; - if (s == "BMD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BMD; - if (s == "BND") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BND; - if (s == "BRL") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BRL; - if (s == "BSD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BSD; - if (s == "BWP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BWP; - if (s == "BZD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_BZD; - if (s == "CAD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CAD; - if (s == "CBD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CBD; - if (s == "CHF") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CHF; - if (s == "CLP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CLP; - if (s == "CNY") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CNY; - if (s == "CYS") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CYS; - if (s == "CZK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_CZK; - if (s == "DDP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_DDP; - if (s == "DEM") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_DEM; - if (s == "DKK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_DKK; - if (s == "EGL") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_EGL; - if (s == "EST") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_EST; - if (s == "EUR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_EUR; - if (s == "FAK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_FAK; - if (s == "FIM") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_FIM; - if (s == "FJD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_FJD; - if (s == "FKP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_FKP; - if (s == "FRF") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_FRF; - if (s == "GBP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_GBP; - if (s == "GIP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_GIP; - if (s == "GMD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_GMD; - if (s == "GRX") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_GRX; - if (s == "HKD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_HKD; - if (s == "HUF") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_HUF; - if (s == "ICK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_ICK; - if (s == "IDR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_IDR; - if (s == "ILS") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_ILS; - if (s == "INR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_INR; - if (s == "IRP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_IRP; - if (s == "ITL") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_ITL; - if (s == "JMD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_JMD; - if (s == "JOD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_JOD; - if (s == "JPY") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_JPY; - if (s == "KES") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_KES; - if (s == "KRW") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_KRW; - if (s == "KWD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_KWD; - if (s == "KYD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_KYD; - if (s == "LKR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_LKR; - if (s == "LUF") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_LUF; - if (s == "MTL") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_MTL; - if (s == "MUR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_MUR; - if (s == "MXN") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_MXN; - if (s == "MYR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_MYR; - if (s == "NLG") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_NLG; - if (s == "NZD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_NZD; - if (s == "OMR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_OMR; - if (s == "PGK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_PGK; - if (s == "PHP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_PHP; - if (s == "PKR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_PKR; - if (s == "PLN") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_PLN; - if (s == "PTN") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_PTN; - if (s == "QAR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_QAR; - if (s == "RUR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_RUR; - if (s == "SAR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_SAR; - if (s == "SCR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_SCR; - if (s == "SEK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_SEK; - if (s == "SGD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_SGD; - if (s == "SKP") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_SKP; - if (s == "THB") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_THB; - if (s == "TRL") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_TRL; - if (s == "TTD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_TTD; - if (s == "TWD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_TWD; - if (s == "USD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_USD; - if (s == "VEB") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_VEB; - if (s == "VND") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_VND; - if (s == "XEU") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_XEU; - if (s == "ZAR") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_ZAR; - if (s == "ZWD") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_ZWD; - if (s == "NOK") return ::Ifc2x3::IfcCurrencyEnum::IfcCurrency_NOK; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCurrencyEnum::Value) IFC2X3_IfcCurrencyEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCurrencyEnum::operator Ifc2x3::IfcCurrencyEnum::Value() const { @@ -2616,15 +2229,11 @@ Ifc2x3::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcCurtainWallTypeEnum::Value Ifc2x3::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc2x3::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcCurtainWallTypeEnum::Value) IFC2X3_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcCurtainWallTypeEnum::operator Ifc2x3::IfcCurtainWallTypeEnum::Value() const { @@ -2653,26 +2262,11 @@ Ifc2x3::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTROLDAMPER", "FIREDAMPER", "SMOKEDAMPER", "FIRESMOKEDAMPER", "BACKDRAFTDAMPER", "RELIEFDAMPER", "BLASTDAMPER", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "BALANCINGDAMPER", "FUMEHOODEXHAUST", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDamperTypeEnum::Value Ifc2x3::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "CONTROLDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "BACKDRAFTDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "BLASTDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "GRAVITYDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDamperTypeEnum::Value) IFC2X3_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDamperTypeEnum::operator Ifc2x3::IfcDamperTypeEnum::Value() const { @@ -2701,18 +2295,11 @@ Ifc2x3::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc2x3::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDataOriginEnum::Value Ifc2x3::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc2x3::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc2x3::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc2x3::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDataOriginEnum::Value) IFC2X3_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDataOriginEnum::operator Ifc2x3::IfcDataOriginEnum::Value() const { @@ -2741,62 +2328,11 @@ Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc2x3::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 49 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC2X3_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDerivedUnitEnum::Value Ifc2x3::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDerivedUnitEnum::Value) IFC2X3_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDerivedUnitEnum::operator Ifc2x3::IfcDerivedUnitEnum::Value() const { @@ -2825,15 +2361,11 @@ Ifc2x3::IfcDimensionExtentUsage::IfcDimensionExtentUsage(const std::string& v) { } const char* Ifc2x3::IfcDimensionExtentUsage::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ORIGIN", "TARGET" }; - return names[v]; + return IFC2X3_IfcDimensionExtentUsage_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDimensionExtentUsage::Value Ifc2x3::IfcDimensionExtentUsage::FromString(const std::string& s) { - if (s == "ORIGIN") return ::Ifc2x3::IfcDimensionExtentUsage::IfcDimensionExtentUsage_ORIGIN; - if (s == "TARGET") return ::Ifc2x3::IfcDimensionExtentUsage::IfcDimensionExtentUsage_TARGET; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDimensionExtentUsage::Value) IFC2X3_IfcDimensionExtentUsage_type->lookup_enum_offset(s); } Ifc2x3::IfcDimensionExtentUsage::operator Ifc2x3::IfcDimensionExtentUsage::Value() const { @@ -2862,15 +2394,11 @@ Ifc2x3::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc2x3::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC2X3_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDirectionSenseEnum::Value Ifc2x3::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc2x3::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc2x3::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDirectionSenseEnum::Value) IFC2X3_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDirectionSenseEnum::operator Ifc2x3::IfcDirectionSenseEnum::Value() const { @@ -2899,23 +2427,11 @@ Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType } const char* Ifc2x3::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDistributionChamberElementTypeEnum::Value Ifc2x3::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDistributionChamberElementTypeEnum::Value) IFC2X3_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDistributionChamberElementTypeEnum::operator Ifc2x3::IfcDistributionChamberElementTypeEnum::Value() const { @@ -2944,19 +2460,11 @@ Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std } const char* Ifc2x3::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDocumentConfidentialityEnum::Value Ifc2x3::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDocumentConfidentialityEnum::Value) IFC2X3_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDocumentConfidentialityEnum::operator Ifc2x3::IfcDocumentConfidentialityEnum::Value() const { @@ -2985,18 +2493,11 @@ Ifc2x3::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc2x3::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDocumentStatusEnum::Value Ifc2x3::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc2x3::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc2x3::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc2x3::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc2x3::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDocumentStatusEnum::Value) IFC2X3_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDocumentStatusEnum::operator Ifc2x3::IfcDocumentStatusEnum::Value() const { @@ -3025,21 +2526,11 @@ Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::string& } const char* Ifc2x3::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDoorPanelOperationEnum::Value Ifc2x3::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDoorPanelOperationEnum::Value) IFC2X3_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDoorPanelOperationEnum::operator Ifc2x3::IfcDoorPanelOperationEnum::Value() const { @@ -3068,17 +2559,11 @@ Ifc2x3::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string& v) } const char* Ifc2x3::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDoorPanelPositionEnum::Value Ifc2x3::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc2x3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc2x3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc2x3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDoorPanelPositionEnum::Value) IFC2X3_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDoorPanelPositionEnum::operator Ifc2x3::IfcDoorPanelPositionEnum::Value() const { @@ -3107,22 +2592,11 @@ Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std::st } const char* Ifc2x3::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDoorStyleConstructionEnum::Value Ifc2x3::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDoorStyleConstructionEnum::Value) IFC2X3_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDoorStyleConstructionEnum::operator Ifc2x3::IfcDoorStyleConstructionEnum::Value() const { @@ -3151,31 +2625,11 @@ Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::string& } const char* Ifc2x3::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDoorStyleOperationEnum::Value Ifc2x3::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDoorStyleOperationEnum::Value) IFC2X3_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDoorStyleOperationEnum::operator Ifc2x3::IfcDoorStyleOperationEnum::Value() const { @@ -3204,22 +2658,11 @@ Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDuctFittingTypeEnum::Value Ifc2x3::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDuctFittingTypeEnum::Value) IFC2X3_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDuctFittingTypeEnum::operator Ifc2x3::IfcDuctFittingTypeEnum::Value() const { @@ -3248,17 +2691,11 @@ Ifc2x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDuctSegmentTypeEnum::Value Ifc2x3::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc2x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc2x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDuctSegmentTypeEnum::Value) IFC2X3_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDuctSegmentTypeEnum::operator Ifc2x3::IfcDuctSegmentTypeEnum::Value() const { @@ -3287,18 +2724,11 @@ Ifc2x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcDuctSilencerTypeEnum::Value Ifc2x3::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc2x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc2x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc2x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc2x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcDuctSilencerTypeEnum::Value) IFC2X3_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcDuctSilencerTypeEnum::operator Ifc2x3::IfcDuctSilencerTypeEnum::Value() const { @@ -3327,39 +2757,11 @@ Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::st } const char* Ifc2x3::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPUTER", "DIRECTWATERHEATER", "DISHWASHER", "ELECTRICCOOKER", "ELECTRICHEATER", "FACSIMILE", "FREESTANDINGFAN", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "INDIRECTWATERHEATER", "MICROWAVE", "PHOTOCOPIER", "PRINTER", "REFRIGERATOR", "RADIANTHEATER", "SCANNER", "TELEPHONE", "TUMBLEDRYER", "TV", "VENDINGMACHINE", "WASHINGMACHINE", "WATERHEATER", "WATERCOOLER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricApplianceTypeEnum::Value Ifc2x3::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "COMPUTER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_COMPUTER; - if (s == "DIRECTWATERHEATER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DIRECTWATERHEATER; - if (s == "DISHWASHER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "ELECTRICHEATER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICHEATER; - if (s == "FACSIMILE") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FACSIMILE; - if (s == "FREESTANDINGFAN") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREEZER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "INDIRECTWATERHEATER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_INDIRECTWATERHEATER; - if (s == "MICROWAVE") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "PRINTER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PRINTER; - if (s == "REFRIGERATOR") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "RADIANTHEATER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_RADIANTHEATER; - if (s == "SCANNER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_SCANNER; - if (s == "TELEPHONE") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TELEPHONE; - if (s == "TUMBLEDRYER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "TV") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TV; - if (s == "VENDINGMACHINE") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "WATERHEATER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WATERHEATER; - if (s == "WATERCOOLER") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WATERCOOLER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricApplianceTypeEnum::Value) IFC2X3_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricApplianceTypeEnum::operator Ifc2x3::IfcElectricApplianceTypeEnum::Value() const { @@ -3388,16 +2790,11 @@ Ifc2x3::IfcElectricCurrentEnum::IfcElectricCurrentEnum(const std::string& v) { } const char* Ifc2x3::IfcElectricCurrentEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALTERNATING", "DIRECT", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricCurrentEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricCurrentEnum::Value Ifc2x3::IfcElectricCurrentEnum::FromString(const std::string& s) { - if (s == "ALTERNATING") return ::Ifc2x3::IfcElectricCurrentEnum::IfcElectricCurrent_ALTERNATING; - if (s == "DIRECT") return ::Ifc2x3::IfcElectricCurrentEnum::IfcElectricCurrent_DIRECT; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricCurrentEnum::IfcElectricCurrent_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricCurrentEnum::Value) IFC2X3_IfcElectricCurrentEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricCurrentEnum::operator Ifc2x3::IfcElectricCurrentEnum::Value() const { @@ -3426,24 +2823,11 @@ Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFu } const char* Ifc2x3::IfcElectricDistributionPointFunctionEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONSUMERUNIT", "CONTROLPANEL", "DISTRIBUTIONBOARD", "GASDETECTORPANEL", "INDICATORPANEL", "MIMICPANEL", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricDistributionPointFunctionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricDistributionPointFunctionEnum::Value Ifc2x3::IfcElectricDistributionPointFunctionEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_ALARMPANEL; - if (s == "CONSUMERUNIT") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_CONSUMERUNIT; - if (s == "CONTROLPANEL") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_CONTROLPANEL; - if (s == "DISTRIBUTIONBOARD") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_DISTRIBUTIONBOARD; - if (s == "GASDETECTORPANEL") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_GASDETECTORPANEL; - if (s == "INDICATORPANEL") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_MIMICPANEL; - if (s == "MOTORCONTROLCENTRE") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricDistributionPointFunctionEnum::IfcElectricDistributionPointFunction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricDistributionPointFunctionEnum::Value) IFC2X3_IfcElectricDistributionPointFunctionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricDistributionPointFunctionEnum::operator Ifc2x3::IfcElectricDistributionPointFunctionEnum::Value() const { @@ -3472,20 +2856,11 @@ Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEn } const char* Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC2X3_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc2x3::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -3514,15 +2889,11 @@ Ifc2x3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::st } const char* Ifc2x3::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricGeneratorTypeEnum::Value Ifc2x3::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricGeneratorTypeEnum::Value) IFC2X3_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricGeneratorTypeEnum::operator Ifc2x3::IfcElectricGeneratorTypeEnum::Value() const { @@ -3551,18 +2922,11 @@ Ifc2x3::IfcElectricHeaterTypeEnum::IfcElectricHeaterTypeEnum(const std::string& } const char* Ifc2x3::IfcElectricHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICPOINTHEATER", "ELECTRICCABLEHEATER", "ELECTRICMATHEATER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricHeaterTypeEnum::Value Ifc2x3::IfcElectricHeaterTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICPOINTHEATER") return ::Ifc2x3::IfcElectricHeaterTypeEnum::IfcElectricHeaterType_ELECTRICPOINTHEATER; - if (s == "ELECTRICCABLEHEATER") return ::Ifc2x3::IfcElectricHeaterTypeEnum::IfcElectricHeaterType_ELECTRICCABLEHEATER; - if (s == "ELECTRICMATHEATER") return ::Ifc2x3::IfcElectricHeaterTypeEnum::IfcElectricHeaterType_ELECTRICMATHEATER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricHeaterTypeEnum::IfcElectricHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricHeaterTypeEnum::IfcElectricHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricHeaterTypeEnum::Value) IFC2X3_IfcElectricHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricHeaterTypeEnum::operator Ifc2x3::IfcElectricHeaterTypeEnum::Value() const { @@ -3591,20 +2955,11 @@ Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string& v) } const char* Ifc2x3::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricMotorTypeEnum::Value Ifc2x3::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricMotorTypeEnum::Value) IFC2X3_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricMotorTypeEnum::operator Ifc2x3::IfcElectricMotorTypeEnum::Value() const { @@ -3633,18 +2988,11 @@ Ifc2x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std } const char* Ifc2x3::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElectricTimeControlTypeEnum::Value Ifc2x3::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc2x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc2x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc2x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElectricTimeControlTypeEnum::Value) IFC2X3_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElectricTimeControlTypeEnum::operator Ifc2x3::IfcElectricTimeControlTypeEnum::Value() const { @@ -3673,24 +3021,11 @@ Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::string } const char* Ifc2x3::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElementAssemblyTypeEnum::Value Ifc2x3::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "USERDEFINED") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElementAssemblyTypeEnum::Value) IFC2X3_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElementAssemblyTypeEnum::operator Ifc2x3::IfcElementAssemblyTypeEnum::Value() const { @@ -3719,16 +3054,11 @@ Ifc2x3::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::string& } const char* Ifc2x3::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC2X3_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcElementCompositionEnum::Value Ifc2x3::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc2x3::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc2x3::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc2x3::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcElementCompositionEnum::Value) IFC2X3_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcElementCompositionEnum::operator Ifc2x3::IfcElementCompositionEnum::Value() const { @@ -3757,19 +3087,11 @@ Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequenceEnum(const std::string& v) { } const char* Ifc2x3::IfcEnergySequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRIMARY", "SECONDARY", "TERTIARY", "AUXILIARY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcEnergySequenceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcEnergySequenceEnum::Value Ifc2x3::IfcEnergySequenceEnum::FromString(const std::string& s) { - if (s == "PRIMARY") return ::Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequence_PRIMARY; - if (s == "SECONDARY") return ::Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequence_SECONDARY; - if (s == "TERTIARY") return ::Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequence_TERTIARY; - if (s == "AUXILIARY") return ::Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequence_AUXILIARY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcEnergySequenceEnum::IfcEnergySequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcEnergySequenceEnum::Value) IFC2X3_IfcEnergySequenceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcEnergySequenceEnum::operator Ifc2x3::IfcEnergySequenceEnum::Value() const { @@ -3798,21 +3120,11 @@ Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategoryEnum(c } const char* Ifc2x3::IfcEnvironmentalImpactCategoryEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMBINEDVALUE", "DISPOSAL", "EXTRACTION", "INSTALLATION", "MANUFACTURE", "TRANSPORTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcEnvironmentalImpactCategoryEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcEnvironmentalImpactCategoryEnum::Value Ifc2x3::IfcEnvironmentalImpactCategoryEnum::FromString(const std::string& s) { - if (s == "COMBINEDVALUE") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_COMBINEDVALUE; - if (s == "DISPOSAL") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_DISPOSAL; - if (s == "EXTRACTION") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_EXTRACTION; - if (s == "INSTALLATION") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_INSTALLATION; - if (s == "MANUFACTURE") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_MANUFACTURE; - if (s == "TRANSPORTATION") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_TRANSPORTATION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcEnvironmentalImpactCategoryEnum::IfcEnvironmentalImpactCategory_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcEnvironmentalImpactCategoryEnum::Value) IFC2X3_IfcEnvironmentalImpactCategoryEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcEnvironmentalImpactCategoryEnum::operator Ifc2x3::IfcEnvironmentalImpactCategoryEnum::Value() const { @@ -3841,24 +3153,11 @@ Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::st } const char* Ifc2x3::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcEvaporativeCoolerTypeEnum::Value Ifc2x3::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcEvaporativeCoolerTypeEnum::Value) IFC2X3_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcEvaporativeCoolerTypeEnum::operator Ifc2x3::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -3887,20 +3186,11 @@ Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcEvaporatorTypeEnum::Value Ifc2x3::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcEvaporatorTypeEnum::Value) IFC2X3_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcEvaporatorTypeEnum::operator Ifc2x3::IfcEvaporatorTypeEnum::Value() const { @@ -3929,22 +3219,11 @@ Ifc2x3::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFanTypeEnum::Value Ifc2x3::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFanTypeEnum::Value) IFC2X3_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFanTypeEnum::operator Ifc2x3::IfcFanTypeEnum::Value() const { @@ -3973,20 +3252,11 @@ Ifc2x3::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFilterTypeEnum::Value Ifc2x3::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "ODORFILTER") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFilterTypeEnum::Value) IFC2X3_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFilterTypeEnum::operator Ifc2x3::IfcFilterTypeEnum::Value() const { @@ -4015,20 +3285,11 @@ Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(c } const char* Ifc2x3::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFireSuppressionTerminalTypeEnum::Value Ifc2x3::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFireSuppressionTerminalTypeEnum::Value) IFC2X3_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFireSuppressionTerminalTypeEnum::operator Ifc2x3::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -4057,17 +3318,11 @@ Ifc2x3::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc2x3::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFlowDirectionEnum::Value Ifc2x3::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc2x3::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc2x3::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc2x3::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFlowDirectionEnum::Value) IFC2X3_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFlowDirectionEnum::operator Ifc2x3::IfcFlowDirectionEnum::Value() const { @@ -4096,23 +3351,11 @@ Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::string& } const char* Ifc2x3::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFlowInstrumentTypeEnum::Value Ifc2x3::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "USERDEFINED") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFlowInstrumentTypeEnum::Value) IFC2X3_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFlowInstrumentTypeEnum::operator Ifc2x3::IfcFlowInstrumentTypeEnum::Value() const { @@ -4141,21 +3384,11 @@ Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICMETER", "ENERGYMETER", "FLOWMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFlowMeterTypeEnum::Value Ifc2x3::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICMETER") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_ELECTRICMETER; - if (s == "ENERGYMETER") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "FLOWMETER") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_FLOWMETER; - if (s == "GASMETER") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFlowMeterTypeEnum::Value) IFC2X3_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFlowMeterTypeEnum::operator Ifc2x3::IfcFlowMeterTypeEnum::Value() const { @@ -4184,19 +3417,11 @@ Ifc2x3::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcFootingTypeEnum::Value Ifc2x3::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "FOOTING_BEAM") return ::Ifc2x3::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc2x3::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc2x3::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc2x3::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc2x3::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcFootingTypeEnum::Value) IFC2X3_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcFootingTypeEnum::operator Ifc2x3::IfcFootingTypeEnum::Value() const { @@ -4225,18 +3450,11 @@ Ifc2x3::IfcGasTerminalTypeEnum::IfcGasTerminalTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcGasTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GASAPPLIANCE", "GASBOOSTER", "GASBURNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcGasTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcGasTerminalTypeEnum::Value Ifc2x3::IfcGasTerminalTypeEnum::FromString(const std::string& s) { - if (s == "GASAPPLIANCE") return ::Ifc2x3::IfcGasTerminalTypeEnum::IfcGasTerminalType_GASAPPLIANCE; - if (s == "GASBOOSTER") return ::Ifc2x3::IfcGasTerminalTypeEnum::IfcGasTerminalType_GASBOOSTER; - if (s == "GASBURNER") return ::Ifc2x3::IfcGasTerminalTypeEnum::IfcGasTerminalType_GASBURNER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcGasTerminalTypeEnum::IfcGasTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcGasTerminalTypeEnum::IfcGasTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcGasTerminalTypeEnum::Value) IFC2X3_IfcGasTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcGasTerminalTypeEnum::operator Ifc2x3::IfcGasTerminalTypeEnum::Value() const { @@ -4265,22 +3483,11 @@ Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::string } const char* Ifc2x3::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcGeometricProjectionEnum::Value Ifc2x3::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcGeometricProjectionEnum::Value) IFC2X3_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcGeometricProjectionEnum::operator Ifc2x3::IfcGeometricProjectionEnum::Value() const { @@ -4309,15 +3516,11 @@ Ifc2x3::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc2x3::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC2X3_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcGlobalOrLocalEnum::Value Ifc2x3::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc2x3::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc2x3::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcGlobalOrLocalEnum::Value) IFC2X3_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcGlobalOrLocalEnum::operator Ifc2x3::IfcGlobalOrLocalEnum::Value() const { @@ -4346,17 +3549,11 @@ Ifc2x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string& v) } const char* Ifc2x3::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcHeatExchangerTypeEnum::Value Ifc2x3::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc2x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc2x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcHeatExchangerTypeEnum::Value) IFC2X3_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcHeatExchangerTypeEnum::operator Ifc2x3::IfcHeatExchangerTypeEnum::Value() const { @@ -4385,28 +3582,11 @@ Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcHumidifierTypeEnum::Value Ifc2x3::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcHumidifierTypeEnum::Value) IFC2X3_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcHumidifierTypeEnum::operator Ifc2x3::IfcHumidifierTypeEnum::Value() const { @@ -4435,16 +3615,11 @@ Ifc2x3::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::string& } const char* Ifc2x3::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcInternalOrExternalEnum::Value Ifc2x3::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc2x3::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc2x3::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcInternalOrExternalEnum::Value) IFC2X3_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcInternalOrExternalEnum::operator Ifc2x3::IfcInternalOrExternalEnum::Value() const { @@ -4473,18 +3648,11 @@ Ifc2x3::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcInventoryTypeEnum::Value Ifc2x3::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc2x3::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc2x3::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc2x3::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcInventoryTypeEnum::Value) IFC2X3_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcInventoryTypeEnum::operator Ifc2x3::IfcInventoryTypeEnum::Value() const { @@ -4513,15 +3681,11 @@ Ifc2x3::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcJunctionBoxTypeEnum::Value Ifc2x3::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc2x3::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcJunctionBoxTypeEnum::Value) IFC2X3_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcJunctionBoxTypeEnum::operator Ifc2x3::IfcJunctionBoxTypeEnum::Value() const { @@ -4550,21 +3714,11 @@ Ifc2x3::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "METALHALIDE", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLampTypeEnum::Value Ifc2x3::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "METALHALIDE") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLampTypeEnum::Value) IFC2X3_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLampTypeEnum::operator Ifc2x3::IfcLampTypeEnum::Value() const { @@ -4593,16 +3747,11 @@ Ifc2x3::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string& v) } const char* Ifc2x3::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC2X3_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLayerSetDirectionEnum::Value Ifc2x3::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc2x3::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc2x3::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc2x3::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLayerSetDirectionEnum::Value) IFC2X3_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLayerSetDirectionEnum::operator Ifc2x3::IfcLayerSetDirectionEnum::Value() const { @@ -4631,17 +3780,11 @@ Ifc2x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std:: } const char* Ifc2x3::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLightDistributionCurveEnum::Value Ifc2x3::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc2x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc2x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc2x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLightDistributionCurveEnum::Value) IFC2X3_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLightDistributionCurveEnum::operator Ifc2x3::IfcLightDistributionCurveEnum::Value() const { @@ -4670,24 +3813,11 @@ Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::string } const char* Ifc2x3::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLightEmissionSourceEnum::Value Ifc2x3::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLightEmissionSourceEnum::Value) IFC2X3_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLightEmissionSourceEnum::operator Ifc2x3::IfcLightEmissionSourceEnum::Value() const { @@ -4716,17 +3846,11 @@ Ifc2x3::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLightFixtureTypeEnum::Value Ifc2x3::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc2x3::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc2x3::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLightFixtureTypeEnum::Value) IFC2X3_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLightFixtureTypeEnum::operator Ifc2x3::IfcLightFixtureTypeEnum::Value() const { @@ -4755,19 +3879,11 @@ Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION_GROUP", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLoadGroupTypeEnum::Value Ifc2x3::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION_GROUP") return ::Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION_GROUP; - if (s == "LOAD_COMBINATION") return ::Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLoadGroupTypeEnum::Value) IFC2X3_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLoadGroupTypeEnum::operator Ifc2x3::IfcLoadGroupTypeEnum::Value() const { @@ -4796,15 +3912,11 @@ Ifc2x3::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) { } const char* Ifc2x3::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR" }; - return names[v]; + return IFC2X3_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcLogicalOperatorEnum::Value Ifc2x3::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc2x3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc2x3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcLogicalOperatorEnum::Value) IFC2X3_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcLogicalOperatorEnum::operator Ifc2x3::IfcLogicalOperatorEnum::Value() const { @@ -4833,27 +3945,11 @@ Ifc2x3::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcMemberTypeEnum::Value Ifc2x3::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "USERDEFINED") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcMemberTypeEnum::Value) IFC2X3_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcMemberTypeEnum::operator Ifc2x3::IfcMemberTypeEnum::Value() const { @@ -4882,18 +3978,11 @@ Ifc2x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::string } const char* Ifc2x3::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcMotorConnectionTypeEnum::Value Ifc2x3::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc2x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc2x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc2x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcMotorConnectionTypeEnum::Value) IFC2X3_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcMotorConnectionTypeEnum::operator Ifc2x3::IfcMotorConnectionTypeEnum::Value() const { @@ -4922,14 +4011,11 @@ Ifc2x3::IfcNullStyle::IfcNullStyle(const std::string& v) { } const char* Ifc2x3::IfcNullStyle::ToString(Value v) { - if ( v < 0 || v >= 1 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NULL" }; - return names[v]; + return IFC2X3_IfcNullStyle_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcNullStyle::Value Ifc2x3::IfcNullStyle::FromString(const std::string& s) { - if (s == "NULL") return ::Ifc2x3::IfcNullStyle::IfcNullStyle_NULL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcNullStyle::Value) IFC2X3_IfcNullStyle_type->lookup_enum_offset(s); } Ifc2x3::IfcNullStyle::operator Ifc2x3::IfcNullStyle::Value() const { @@ -4958,21 +4044,11 @@ Ifc2x3::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcObjectTypeEnum::Value Ifc2x3::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcObjectTypeEnum::Value) IFC2X3_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcObjectTypeEnum::operator Ifc2x3::IfcObjectTypeEnum::Value() const { @@ -5001,21 +4077,11 @@ Ifc2x3::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc2x3::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "DESIGNINTENT", "HEALTHANDSAFETY", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcObjectiveEnum::Value Ifc2x3::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "DESIGNINTENT") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "HEALTHANDSAFETY") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "REQUIREMENT") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcObjectiveEnum::Value) IFC2X3_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcObjectiveEnum::operator Ifc2x3::IfcObjectiveEnum::Value() const { @@ -5044,22 +4110,11 @@ Ifc2x3::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcOccupantTypeEnum::Value Ifc2x3::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcOccupantTypeEnum::Value) IFC2X3_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcOccupantTypeEnum::operator Ifc2x3::IfcOccupantTypeEnum::Value() const { @@ -5088,18 +4143,11 @@ Ifc2x3::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcOutletTypeEnum::Value Ifc2x3::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc2x3::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc2x3::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc2x3::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "USERDEFINED") return ::Ifc2x3::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcOutletTypeEnum::Value) IFC2X3_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcOutletTypeEnum::operator Ifc2x3::IfcOutletTypeEnum::Value() const { @@ -5128,18 +4176,11 @@ Ifc2x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(con } const char* Ifc2x3::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPermeableCoveringOperationEnum::Value Ifc2x3::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc2x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc2x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc2x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPermeableCoveringOperationEnum::Value) IFC2X3_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPermeableCoveringOperationEnum::operator Ifc2x3::IfcPermeableCoveringOperationEnum::Value() const { @@ -5168,16 +4209,11 @@ Ifc2x3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string& v) } const char* Ifc2x3::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPhysicalOrVirtualEnum::Value Ifc2x3::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc2x3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc2x3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPhysicalOrVirtualEnum::Value) IFC2X3_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPhysicalOrVirtualEnum::operator Ifc2x3::IfcPhysicalOrVirtualEnum::Value() const { @@ -5206,19 +4242,11 @@ Ifc2x3::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& v) { } const char* Ifc2x3::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPileConstructionEnum::Value Ifc2x3::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc2x3::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc2x3::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc2x3::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc2x3::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPileConstructionEnum::Value) IFC2X3_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPileConstructionEnum::operator Ifc2x3::IfcPileConstructionEnum::Value() const { @@ -5247,18 +4275,11 @@ Ifc2x3::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPileTypeEnum::Value Ifc2x3::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "COHESION") return ::Ifc2x3::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc2x3::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc2x3::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPileTypeEnum::Value) IFC2X3_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPileTypeEnum::operator Ifc2x3::IfcPileTypeEnum::Value() const { @@ -5287,22 +4308,11 @@ Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPipeFittingTypeEnum::Value Ifc2x3::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPipeFittingTypeEnum::Value) IFC2X3_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPipeFittingTypeEnum::operator Ifc2x3::IfcPipeFittingTypeEnum::Value() const { @@ -5331,19 +4341,11 @@ Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPipeSegmentTypeEnum::Value Ifc2x3::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "FLEXIBLESEGMENT") return ::Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPipeSegmentTypeEnum::Value) IFC2X3_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPipeSegmentTypeEnum::operator Ifc2x3::IfcPipeSegmentTypeEnum::Value() const { @@ -5372,17 +4374,11 @@ Ifc2x3::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPlateTypeEnum::Value Ifc2x3::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc2x3::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc2x3::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPlateTypeEnum::Value) IFC2X3_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPlateTypeEnum::operator Ifc2x3::IfcPlateTypeEnum::Value() const { @@ -5411,22 +4407,11 @@ Ifc2x3::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcProcedureTypeEnum::Value Ifc2x3::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcProcedureTypeEnum::Value) IFC2X3_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcProcedureTypeEnum::operator Ifc2x3::IfcProcedureTypeEnum::Value() const { @@ -5455,15 +4440,11 @@ Ifc2x3::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC2X3_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcProfileTypeEnum::Value Ifc2x3::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc2x3::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc2x3::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcProfileTypeEnum::Value) IFC2X3_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcProfileTypeEnum::operator Ifc2x3::IfcProfileTypeEnum::Value() const { @@ -5492,20 +4473,11 @@ Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordTypeEnum(const std:: } const char* Ifc2x3::IfcProjectOrderRecordTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGE", "MAINTENANCE", "MOVE", "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcProjectOrderRecordTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcProjectOrderRecordTypeEnum::Value Ifc2x3::IfcProjectOrderRecordTypeEnum::FromString(const std::string& s) { - if (s == "CHANGE") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_CHANGE; - if (s == "MAINTENANCE") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_MAINTENANCE; - if (s == "MOVE") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_MOVE; - if (s == "PURCHASE") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_PURCHASE; - if (s == "WORK") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_WORK; - if (s == "USERDEFINED") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcProjectOrderRecordTypeEnum::IfcProjectOrderRecordType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcProjectOrderRecordTypeEnum::Value) IFC2X3_IfcProjectOrderRecordTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcProjectOrderRecordTypeEnum::operator Ifc2x3::IfcProjectOrderRecordTypeEnum::Value() const { @@ -5534,20 +4506,11 @@ Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcProjectOrderTypeEnum::Value Ifc2x3::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcProjectOrderTypeEnum::Value) IFC2X3_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcProjectOrderTypeEnum::operator Ifc2x3::IfcProjectOrderTypeEnum::Value() const { @@ -5576,15 +4539,11 @@ Ifc2x3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::st } const char* Ifc2x3::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC2X3_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcProjectedOrTrueLengthEnum::Value Ifc2x3::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc2x3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc2x3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcProjectedOrTrueLengthEnum::Value) IFC2X3_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcProjectedOrTrueLengthEnum::operator Ifc2x3::IfcProjectedOrTrueLengthEnum::Value() const { @@ -5613,22 +4572,11 @@ Ifc2x3::IfcPropertySourceEnum::IfcPropertySourceEnum(const std::string& v) { } const char* Ifc2x3::IfcPropertySourceEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DESIGN", "DESIGNMAXIMUM", "DESIGNMINIMUM", "SIMULATED", "ASBUILT", "COMMISSIONING", "MEASURED", "USERDEFINED", "NOTKNOWN" }; - return names[v]; + return IFC2X3_IfcPropertySourceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPropertySourceEnum::Value Ifc2x3::IfcPropertySourceEnum::FromString(const std::string& s) { - if (s == "DESIGN") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_DESIGN; - if (s == "DESIGNMAXIMUM") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_DESIGNMAXIMUM; - if (s == "DESIGNMINIMUM") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_DESIGNMINIMUM; - if (s == "SIMULATED") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_SIMULATED; - if (s == "ASBUILT") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_ASBUILT; - if (s == "COMMISSIONING") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_COMMISSIONING; - if (s == "MEASURED") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_MEASURED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_USERDEFINED; - if (s == "NOTKNOWN") return ::Ifc2x3::IfcPropertySourceEnum::IfcPropertySource_NOTKNOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPropertySourceEnum::Value) IFC2X3_IfcPropertySourceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPropertySourceEnum::operator Ifc2x3::IfcPropertySourceEnum::Value() const { @@ -5657,21 +4605,11 @@ Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::stri } const char* Ifc2x3::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FUSEDISCONNECTOR", "CIRCUITBREAKER", "EARTHFAILUREDEVICE", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcProtectiveDeviceTypeEnum::Value Ifc2x3::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "FUSEDISCONNECTOR") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "CIRCUITBREAKER") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHFAILUREDEVICE") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHFAILUREDEVICE; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "USERDEFINED") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcProtectiveDeviceTypeEnum::Value) IFC2X3_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcProtectiveDeviceTypeEnum::operator Ifc2x3::IfcProtectiveDeviceTypeEnum::Value() const { @@ -5700,20 +4638,11 @@ Ifc2x3::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcPumpTypeEnum::Value Ifc2x3::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "VERTICALINLINE") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcPumpTypeEnum::Value) IFC2X3_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcPumpTypeEnum::operator Ifc2x3::IfcPumpTypeEnum::Value() const { @@ -5742,18 +4671,11 @@ Ifc2x3::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcRailingTypeEnum::Value Ifc2x3::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc2x3::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc2x3::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc2x3::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcRailingTypeEnum::Value) IFC2X3_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcRailingTypeEnum::operator Ifc2x3::IfcRailingTypeEnum::Value() const { @@ -5782,17 +4704,11 @@ Ifc2x3::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcRampFlightTypeEnum::Value Ifc2x3::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc2x3::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc2x3::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcRampFlightTypeEnum::Value) IFC2X3_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcRampFlightTypeEnum::operator Ifc2x3::IfcRampFlightTypeEnum::Value() const { @@ -5821,21 +4737,11 @@ Ifc2x3::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcRampTypeEnum::Value Ifc2x3::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcRampTypeEnum::Value) IFC2X3_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcRampTypeEnum::operator Ifc2x3::IfcRampTypeEnum::Value() const { @@ -5864,23 +4770,11 @@ Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string& v) } const char* Ifc2x3::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcReflectanceMethodEnum::Value Ifc2x3::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcReflectanceMethodEnum::Value) IFC2X3_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcReflectanceMethodEnum::operator Ifc2x3::IfcReflectanceMethodEnum::Value() const { @@ -5909,22 +4803,11 @@ Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::string& } const char* Ifc2x3::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcReinforcingBarRoleEnum::Value Ifc2x3::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "USERDEFINED") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcReinforcingBarRoleEnum::Value) IFC2X3_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcReinforcingBarRoleEnum::operator Ifc2x3::IfcReinforcingBarRoleEnum::Value() const { @@ -5953,15 +4836,11 @@ Ifc2x3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::st } const char* Ifc2x3::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC2X3_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcReinforcingBarSurfaceEnum::Value Ifc2x3::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc2x3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc2x3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcReinforcingBarSurfaceEnum::Value) IFC2X3_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcReinforcingBarSurfaceEnum::operator Ifc2x3::IfcReinforcingBarSurfaceEnum::Value() const { @@ -5990,21 +4869,11 @@ Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumptionEnum(const std::string } const char* Ifc2x3::IfcResourceConsumptionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMED", "PARTIALLYCONSUMED", "NOTCONSUMED", "OCCUPIED", "PARTIALLYOCCUPIED", "NOTOCCUPIED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcResourceConsumptionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcResourceConsumptionEnum::Value Ifc2x3::IfcResourceConsumptionEnum::FromString(const std::string& s) { - if (s == "CONSUMED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_CONSUMED; - if (s == "PARTIALLYCONSUMED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_PARTIALLYCONSUMED; - if (s == "NOTCONSUMED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_NOTCONSUMED; - if (s == "OCCUPIED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_OCCUPIED; - if (s == "PARTIALLYOCCUPIED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_PARTIALLYOCCUPIED; - if (s == "NOTOCCUPIED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_NOTOCCUPIED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcResourceConsumptionEnum::IfcResourceConsumption_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcResourceConsumptionEnum::Value) IFC2X3_IfcResourceConsumptionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcResourceConsumptionEnum::operator Ifc2x3::IfcResourceConsumptionEnum::Value() const { @@ -6033,15 +4902,11 @@ Ifc2x3::IfcRibPlateDirectionEnum::IfcRibPlateDirectionEnum(const std::string& v) } const char* Ifc2x3::IfcRibPlateDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTION_X", "DIRECTION_Y" }; - return names[v]; + return IFC2X3_IfcRibPlateDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcRibPlateDirectionEnum::Value Ifc2x3::IfcRibPlateDirectionEnum::FromString(const std::string& s) { - if (s == "DIRECTION_X") return ::Ifc2x3::IfcRibPlateDirectionEnum::IfcRibPlateDirection_DIRECTION_X; - if (s == "DIRECTION_Y") return ::Ifc2x3::IfcRibPlateDirectionEnum::IfcRibPlateDirection_DIRECTION_Y; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcRibPlateDirectionEnum::Value) IFC2X3_IfcRibPlateDirectionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcRibPlateDirectionEnum::operator Ifc2x3::IfcRibPlateDirectionEnum::Value() const { @@ -6070,36 +4935,11 @@ Ifc2x3::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc2x3::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC2X3_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcRoleEnum::Value Ifc2x3::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc2x3::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc2x3::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc2x3::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc2x3::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc2x3::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc2x3::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc2x3::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc2x3::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc2x3::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc2x3::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMISSIONINGENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_COMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc2x3::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc2x3::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc2x3::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc2x3::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc2x3::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc2x3::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcRoleEnum::Value) IFC2X3_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcRoleEnum::operator Ifc2x3::IfcRoleEnum::Value() const { @@ -6128,27 +4968,11 @@ Ifc2x3::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcRoofTypeEnum::Value Ifc2x3::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcRoofTypeEnum::Value) IFC2X3_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcRoofTypeEnum::operator Ifc2x3::IfcRoofTypeEnum::Value() const { @@ -6177,29 +5001,11 @@ Ifc2x3::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc2x3::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC2X3_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSIPrefix::Value Ifc2x3::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc2x3::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSIPrefix::Value) IFC2X3_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc2x3::IfcSIPrefix::operator Ifc2x3::IfcSIPrefix::Value() const { @@ -6228,43 +5034,11 @@ Ifc2x3::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc2x3::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC2X3_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSIUnitName::Value Ifc2x3::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc2x3::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSIUnitName::Value) IFC2X3_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc2x3::IfcSIUnitName::operator Ifc2x3::IfcSIUnitName::Value() const { @@ -6293,25 +5067,11 @@ Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::stri } const char* Ifc2x3::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSanitaryTerminalTypeEnum::Value Ifc2x3::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSanitaryTerminalTypeEnum::Value) IFC2X3_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSanitaryTerminalTypeEnum::operator Ifc2x3::IfcSanitaryTerminalTypeEnum::Value() const { @@ -6340,15 +5100,11 @@ Ifc2x3::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC2X3_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSectionTypeEnum::Value Ifc2x3::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc2x3::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc2x3::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSectionTypeEnum::Value) IFC2X3_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSectionTypeEnum::operator Ifc2x3::IfcSectionTypeEnum::Value() const { @@ -6377,28 +5133,11 @@ Ifc2x3::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CO2SENSOR", "FIRESENSOR", "FLOWSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PRESSURESENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSensorTypeEnum::Value Ifc2x3::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "CO2SENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "FIRESENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "GASSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "SMOKESENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "USERDEFINED") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSensorTypeEnum::Value) IFC2X3_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSensorTypeEnum::operator Ifc2x3::IfcSensorTypeEnum::Value() const { @@ -6427,18 +5166,11 @@ Ifc2x3::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc2x3::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSequenceEnum::Value Ifc2x3::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc2x3::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc2x3::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc2x3::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc2x3::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSequenceEnum::Value) IFC2X3_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSequenceEnum::operator Ifc2x3::IfcSequenceEnum::Value() const { @@ -6467,22 +5199,11 @@ Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorTypeEnum(const std::st } const char* Ifc2x3::IfcServiceLifeFactorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "A_QUALITYOFCOMPONENTS", "B_DESIGNLEVEL", "C_WORKEXECUTIONLEVEL", "D_INDOORENVIRONMENT", "E_OUTDOORENVIRONMENT", "F_INUSECONDITIONS", "G_MAINTENANCELEVEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcServiceLifeFactorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcServiceLifeFactorTypeEnum::Value Ifc2x3::IfcServiceLifeFactorTypeEnum::FromString(const std::string& s) { - if (s == "A_QUALITYOFCOMPONENTS") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_A_QUALITYOFCOMPONENTS; - if (s == "B_DESIGNLEVEL") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_B_DESIGNLEVEL; - if (s == "C_WORKEXECUTIONLEVEL") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_C_WORKEXECUTIONLEVEL; - if (s == "D_INDOORENVIRONMENT") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_D_INDOORENVIRONMENT; - if (s == "E_OUTDOORENVIRONMENT") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_E_OUTDOORENVIRONMENT; - if (s == "F_INUSECONDITIONS") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_F_INUSECONDITIONS; - if (s == "G_MAINTENANCELEVEL") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_G_MAINTENANCELEVEL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcServiceLifeFactorTypeEnum::IfcServiceLifeFactorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcServiceLifeFactorTypeEnum::Value) IFC2X3_IfcServiceLifeFactorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcServiceLifeFactorTypeEnum::operator Ifc2x3::IfcServiceLifeFactorTypeEnum::Value() const { @@ -6511,18 +5232,11 @@ Ifc2x3::IfcServiceLifeTypeEnum::IfcServiceLifeTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcServiceLifeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUALSERVICELIFE", "EXPECTEDSERVICELIFE", "OPTIMISTICREFERENCESERVICELIFE", "PESSIMISTICREFERENCESERVICELIFE", "REFERENCESERVICELIFE" }; - return names[v]; + return IFC2X3_IfcServiceLifeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcServiceLifeTypeEnum::Value Ifc2x3::IfcServiceLifeTypeEnum::FromString(const std::string& s) { - if (s == "ACTUALSERVICELIFE") return ::Ifc2x3::IfcServiceLifeTypeEnum::IfcServiceLifeType_ACTUALSERVICELIFE; - if (s == "EXPECTEDSERVICELIFE") return ::Ifc2x3::IfcServiceLifeTypeEnum::IfcServiceLifeType_EXPECTEDSERVICELIFE; - if (s == "OPTIMISTICREFERENCESERVICELIFE") return ::Ifc2x3::IfcServiceLifeTypeEnum::IfcServiceLifeType_OPTIMISTICREFERENCESERVICELIFE; - if (s == "PESSIMISTICREFERENCESERVICELIFE") return ::Ifc2x3::IfcServiceLifeTypeEnum::IfcServiceLifeType_PESSIMISTICREFERENCESERVICELIFE; - if (s == "REFERENCESERVICELIFE") return ::Ifc2x3::IfcServiceLifeTypeEnum::IfcServiceLifeType_REFERENCESERVICELIFE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcServiceLifeTypeEnum::Value) IFC2X3_IfcServiceLifeTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcServiceLifeTypeEnum::operator Ifc2x3::IfcServiceLifeTypeEnum::Value() const { @@ -6551,19 +5265,11 @@ Ifc2x3::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSlabTypeEnum::Value Ifc2x3::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc2x3::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc2x3::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc2x3::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc2x3::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "USERDEFINED") return ::Ifc2x3::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSlabTypeEnum::Value) IFC2X3_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSlabTypeEnum::operator Ifc2x3::IfcSlabTypeEnum::Value() const { @@ -6592,20 +5298,11 @@ Ifc2x3::IfcSoundScaleEnum::IfcSoundScaleEnum(const std::string& v) { } const char* Ifc2x3::IfcSoundScaleEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DBA", "DBB", "DBC", "NC", "NR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSoundScaleEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSoundScaleEnum::Value Ifc2x3::IfcSoundScaleEnum::FromString(const std::string& s) { - if (s == "DBA") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_DBA; - if (s == "DBB") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_DBB; - if (s == "DBC") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_DBC; - if (s == "NC") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_NC; - if (s == "NR") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_NR; - if (s == "USERDEFINED") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSoundScaleEnum::IfcSoundScale_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSoundScaleEnum::Value) IFC2X3_IfcSoundScaleEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSoundScaleEnum::operator Ifc2x3::IfcSoundScaleEnum::Value() const { @@ -6634,22 +5331,11 @@ Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SECTIONALRADIATOR", "PANELRADIATOR", "TUBULARRADIATOR", "CONVECTOR", "BASEBOARDHEATER", "FINNEDTUBEUNIT", "UNITHEATER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSpaceHeaterTypeEnum::Value Ifc2x3::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "SECTIONALRADIATOR") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_SECTIONALRADIATOR; - if (s == "PANELRADIATOR") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_PANELRADIATOR; - if (s == "TUBULARRADIATOR") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_TUBULARRADIATOR; - if (s == "CONVECTOR") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "BASEBOARDHEATER") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_BASEBOARDHEATER; - if (s == "FINNEDTUBEUNIT") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_FINNEDTUBEUNIT; - if (s == "UNITHEATER") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_UNITHEATER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSpaceHeaterTypeEnum::Value) IFC2X3_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSpaceHeaterTypeEnum::operator Ifc2x3::IfcSpaceHeaterTypeEnum::Value() const { @@ -6678,15 +5364,11 @@ Ifc2x3::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSpaceTypeEnum::Value Ifc2x3::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc2x3::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSpaceTypeEnum::Value) IFC2X3_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSpaceTypeEnum::operator Ifc2x3::IfcSpaceTypeEnum::Value() const { @@ -6715,18 +5397,11 @@ Ifc2x3::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string& v) } const char* Ifc2x3::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcStackTerminalTypeEnum::Value Ifc2x3::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc2x3::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc2x3::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc2x3::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcStackTerminalTypeEnum::Value) IFC2X3_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcStackTerminalTypeEnum::operator Ifc2x3::IfcStackTerminalTypeEnum::Value() const { @@ -6755,20 +5430,11 @@ Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcStairFlightTypeEnum::Value Ifc2x3::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcStairFlightTypeEnum::Value) IFC2X3_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcStairFlightTypeEnum::operator Ifc2x3::IfcStairFlightTypeEnum::Value() const { @@ -6797,29 +5463,11 @@ Ifc2x3::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcStairTypeEnum::Value Ifc2x3::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "USERDEFINED") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcStairTypeEnum::Value) IFC2X3_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcStairTypeEnum::operator Ifc2x3::IfcStairTypeEnum::Value() const { @@ -6848,18 +5496,11 @@ Ifc2x3::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc2x3::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC2X3_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcStateEnum::Value Ifc2x3::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc2x3::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc2x3::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc2x3::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc2x3::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc2x3::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcStateEnum::Value) IFC2X3_IfcStateEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcStateEnum::operator Ifc2x3::IfcStateEnum::Value() const { @@ -6888,20 +5529,11 @@ Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveTypeEnum(const std::string } const char* Ifc2x3::IfcStructuralCurveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcStructuralCurveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcStructuralCurveTypeEnum::Value Ifc2x3::IfcStructuralCurveTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcStructuralCurveTypeEnum::IfcStructuralCurveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcStructuralCurveTypeEnum::Value) IFC2X3_IfcStructuralCurveTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcStructuralCurveTypeEnum::operator Ifc2x3::IfcStructuralCurveTypeEnum::Value() const { @@ -6930,18 +5562,11 @@ Ifc2x3::IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceTypeEnum(const std::st } const char* Ifc2x3::IfcStructuralSurfaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcStructuralSurfaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcStructuralSurfaceTypeEnum::Value Ifc2x3::IfcStructuralSurfaceTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc2x3::IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc2x3::IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc2x3::IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceType_SHELL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcStructuralSurfaceTypeEnum::IfcStructuralSurfaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcStructuralSurfaceTypeEnum::Value) IFC2X3_IfcStructuralSurfaceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcStructuralSurfaceTypeEnum::operator Ifc2x3::IfcStructuralSurfaceTypeEnum::Value() const { @@ -6970,16 +5595,11 @@ Ifc2x3::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc2x3::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC2X3_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSurfaceSide::Value Ifc2x3::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc2x3::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc2x3::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc2x3::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSurfaceSide::Value) IFC2X3_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc2x3::IfcSurfaceSide::operator Ifc2x3::IfcSurfaceSide::Value() const { @@ -7008,22 +5628,11 @@ Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTextureEnum(const std::string& v) { } const char* Ifc2x3::IfcSurfaceTextureEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUMP", "OPACITY", "REFLECTION", "SELFILLUMINATION", "SHININESS", "SPECULAR", "TEXTURE", "TRANSPARENCYMAP", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSurfaceTextureEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSurfaceTextureEnum::Value Ifc2x3::IfcSurfaceTextureEnum::FromString(const std::string& s) { - if (s == "BUMP") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_BUMP; - if (s == "OPACITY") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_OPACITY; - if (s == "REFLECTION") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_REFLECTION; - if (s == "SELFILLUMINATION") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_SELFILLUMINATION; - if (s == "SHININESS") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_SHININESS; - if (s == "SPECULAR") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_SPECULAR; - if (s == "TEXTURE") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_TEXTURE; - if (s == "TRANSPARENCYMAP") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_TRANSPARENCYMAP; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSurfaceTextureEnum::IfcSurfaceTexture_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSurfaceTextureEnum::Value) IFC2X3_IfcSurfaceTextureEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSurfaceTextureEnum::operator Ifc2x3::IfcSurfaceTextureEnum::Value() const { @@ -7052,20 +5661,11 @@ Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::string } const char* Ifc2x3::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "EMERGENCYSTOP", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcSwitchingDeviceTypeEnum::Value Ifc2x3::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "EMERGENCYSTOP") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "STARTER") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "USERDEFINED") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcSwitchingDeviceTypeEnum::Value) IFC2X3_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcSwitchingDeviceTypeEnum::operator Ifc2x3::IfcSwitchingDeviceTypeEnum::Value() const { @@ -7094,19 +5694,11 @@ Ifc2x3::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PREFORMED", "SECTIONAL", "EXPANSION", "PRESSUREVESSEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTankTypeEnum::Value Ifc2x3::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "PREFORMED") return ::Ifc2x3::IfcTankTypeEnum::IfcTankType_PREFORMED; - if (s == "SECTIONAL") return ::Ifc2x3::IfcTankTypeEnum::IfcTankType_SECTIONAL; - if (s == "EXPANSION") return ::Ifc2x3::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc2x3::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTankTypeEnum::Value) IFC2X3_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTankTypeEnum::operator Ifc2x3::IfcTankTypeEnum::Value() const { @@ -7135,19 +5727,11 @@ Ifc2x3::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAND", "WIRE", "BAR", "COATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTendonTypeEnum::Value Ifc2x3::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "STRAND") return ::Ifc2x3::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc2x3::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "BAR") return ::Ifc2x3::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc2x3::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTendonTypeEnum::Value) IFC2X3_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTendonTypeEnum::operator Ifc2x3::IfcTendonTypeEnum::Value() const { @@ -7176,17 +5760,11 @@ Ifc2x3::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc2x3::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC2X3_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTextPath::Value Ifc2x3::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc2x3::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc2x3::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc2x3::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc2x3::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTextPath::Value) IFC2X3_IfcTextPath_type->lookup_enum_offset(s); } Ifc2x3::IfcTextPath::operator Ifc2x3::IfcTextPath::Value() const { @@ -7215,26 +5793,11 @@ Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSourceEnum(const std::string& v) } const char* Ifc2x3::IfcThermalLoadSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PEOPLE", "LIGHTING", "EQUIPMENT", "VENTILATIONINDOORAIR", "VENTILATIONOUTSIDEAIR", "RECIRCULATEDAIR", "EXHAUSTAIR", "AIREXCHANGERATE", "DRYBULBTEMPERATURE", "RELATIVEHUMIDITY", "INFILTRATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcThermalLoadSourceEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcThermalLoadSourceEnum::Value Ifc2x3::IfcThermalLoadSourceEnum::FromString(const std::string& s) { - if (s == "PEOPLE") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_PEOPLE; - if (s == "LIGHTING") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_LIGHTING; - if (s == "EQUIPMENT") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_EQUIPMENT; - if (s == "VENTILATIONINDOORAIR") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_VENTILATIONINDOORAIR; - if (s == "VENTILATIONOUTSIDEAIR") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_VENTILATIONOUTSIDEAIR; - if (s == "RECIRCULATEDAIR") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_RECIRCULATEDAIR; - if (s == "EXHAUSTAIR") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_EXHAUSTAIR; - if (s == "AIREXCHANGERATE") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_AIREXCHANGERATE; - if (s == "DRYBULBTEMPERATURE") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_DRYBULBTEMPERATURE; - if (s == "RELATIVEHUMIDITY") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_RELATIVEHUMIDITY; - if (s == "INFILTRATION") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_INFILTRATION; - if (s == "USERDEFINED") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcThermalLoadSourceEnum::IfcThermalLoadSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcThermalLoadSourceEnum::Value) IFC2X3_IfcThermalLoadSourceEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcThermalLoadSourceEnum::operator Ifc2x3::IfcThermalLoadSourceEnum::Value() const { @@ -7263,17 +5826,11 @@ Ifc2x3::IfcThermalLoadTypeEnum::IfcThermalLoadTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcThermalLoadTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SENSIBLE", "LATENT", "RADIANT", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcThermalLoadTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcThermalLoadTypeEnum::Value Ifc2x3::IfcThermalLoadTypeEnum::FromString(const std::string& s) { - if (s == "SENSIBLE") return ::Ifc2x3::IfcThermalLoadTypeEnum::IfcThermalLoadType_SENSIBLE; - if (s == "LATENT") return ::Ifc2x3::IfcThermalLoadTypeEnum::IfcThermalLoadType_LATENT; - if (s == "RADIANT") return ::Ifc2x3::IfcThermalLoadTypeEnum::IfcThermalLoadType_RADIANT; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcThermalLoadTypeEnum::IfcThermalLoadType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcThermalLoadTypeEnum::Value) IFC2X3_IfcThermalLoadTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcThermalLoadTypeEnum::operator Ifc2x3::IfcThermalLoadTypeEnum::Value() const { @@ -7302,20 +5859,11 @@ Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::string& } const char* Ifc2x3::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTimeSeriesDataTypeEnum::Value Ifc2x3::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTimeSeriesDataTypeEnum::Value) IFC2X3_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTimeSeriesDataTypeEnum::operator Ifc2x3::IfcTimeSeriesDataTypeEnum::Value() const { @@ -7344,19 +5892,11 @@ Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleTypeEnum(const std:: } const char* Ifc2x3::IfcTimeSeriesScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANNUAL", "MONTHLY", "WEEKLY", "DAILY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTimeSeriesScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTimeSeriesScheduleTypeEnum::Value Ifc2x3::IfcTimeSeriesScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ANNUAL") return ::Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleType_ANNUAL; - if (s == "MONTHLY") return ::Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleType_MONTHLY; - if (s == "WEEKLY") return ::Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleType_WEEKLY; - if (s == "DAILY") return ::Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleType_DAILY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTimeSeriesScheduleTypeEnum::IfcTimeSeriesScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTimeSeriesScheduleTypeEnum::Value) IFC2X3_IfcTimeSeriesScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTimeSeriesScheduleTypeEnum::operator Ifc2x3::IfcTimeSeriesScheduleTypeEnum::Value() const { @@ -7385,18 +5925,11 @@ Ifc2x3::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "VOLTAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTransformerTypeEnum::Value Ifc2x3::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc2x3::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc2x3::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "VOLTAGE") return ::Ifc2x3::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "USERDEFINED") return ::Ifc2x3::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTransformerTypeEnum::Value) IFC2X3_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTransformerTypeEnum::operator Ifc2x3::IfcTransformerTypeEnum::Value() const { @@ -7425,17 +5958,11 @@ Ifc2x3::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc2x3::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC2X3_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTransitionCode::Value Ifc2x3::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc2x3::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc2x3::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc2x3::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc2x3::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTransitionCode::Value) IFC2X3_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc2x3::IfcTransitionCode::operator Ifc2x3::IfcTransitionCode::Value() const { @@ -7464,18 +5991,11 @@ Ifc2x3::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::stri } const char* Ifc2x3::IfcTransportElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTransportElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTransportElementTypeEnum::Value Ifc2x3::IfcTransportElementTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc2x3::IfcTransportElementTypeEnum::IfcTransportElementType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc2x3::IfcTransportElementTypeEnum::IfcTransportElementType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc2x3::IfcTransportElementTypeEnum::IfcTransportElementType_MOVINGWALKWAY; - if (s == "USERDEFINED") return ::Ifc2x3::IfcTransportElementTypeEnum::IfcTransportElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTransportElementTypeEnum::IfcTransportElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTransportElementTypeEnum::Value) IFC2X3_IfcTransportElementTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTransportElementTypeEnum::operator Ifc2x3::IfcTransportElementTypeEnum::Value() const { @@ -7504,16 +6024,11 @@ Ifc2x3::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc2x3::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC2X3_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTrimmingPreference::Value Ifc2x3::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc2x3::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc2x3::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc2x3::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTrimmingPreference::Value) IFC2X3_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc2x3::IfcTrimmingPreference::operator Ifc2x3::IfcTrimmingPreference::Value() const { @@ -7542,16 +6057,11 @@ Ifc2x3::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcTubeBundleTypeEnum::Value Ifc2x3::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc2x3::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcTubeBundleTypeEnum::Value) IFC2X3_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcTubeBundleTypeEnum::operator Ifc2x3::IfcTubeBundleTypeEnum::Value() const { @@ -7580,43 +6090,11 @@ Ifc2x3::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc2x3::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC2X3_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcUnitEnum::Value Ifc2x3::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc2x3::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcUnitEnum::Value) IFC2X3_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcUnitEnum::operator Ifc2x3::IfcUnitEnum::Value() const { @@ -7645,19 +6123,11 @@ Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::stri } const char* Ifc2x3::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcUnitaryEquipmentTypeEnum::Value Ifc2x3::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "SPLITSYSTEM") return ::Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcUnitaryEquipmentTypeEnum::Value) IFC2X3_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcUnitaryEquipmentTypeEnum::operator Ifc2x3::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -7686,36 +6156,11 @@ Ifc2x3::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcValveTypeEnum::Value Ifc2x3::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcValveTypeEnum::Value) IFC2X3_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcValveTypeEnum::operator Ifc2x3::IfcValveTypeEnum::Value() const { @@ -7744,17 +6189,11 @@ Ifc2x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::st } const char* Ifc2x3::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcVibrationIsolatorTypeEnum::Value Ifc2x3::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc2x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc2x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "USERDEFINED") return ::Ifc2x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcVibrationIsolatorTypeEnum::Value) IFC2X3_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcVibrationIsolatorTypeEnum::operator Ifc2x3::IfcVibrationIsolatorTypeEnum::Value() const { @@ -7783,20 +6222,11 @@ Ifc2x3::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STANDARD", "POLYGONAL", "SHEAR", "ELEMENTEDWALL", "PLUMBINGWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWallTypeEnum::Value Ifc2x3::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "STANDARD") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "SHEAR") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "ELEMENTEDWALL") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "PLUMBINGWALL") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWallTypeEnum::Value) IFC2X3_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWallTypeEnum::operator Ifc2x3::IfcWallTypeEnum::Value() const { @@ -7825,25 +6255,11 @@ Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string& v) } const char* Ifc2x3::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "GREASEINTERCEPTOR", "OILINTERCEPTOR", "PETROLINTERCEPTOR", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWasteTerminalTypeEnum::Value Ifc2x3::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "GREASEINTERCEPTOR") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GREASEINTERCEPTOR; - if (s == "OILINTERCEPTOR") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_OILINTERCEPTOR; - if (s == "PETROLINTERCEPTOR") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_PETROLINTERCEPTOR; - if (s == "ROOFDRAIN") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWasteTerminalTypeEnum::Value) IFC2X3_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWasteTerminalTypeEnum::operator Ifc2x3::IfcWasteTerminalTypeEnum::Value() const { @@ -7872,27 +6288,11 @@ Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::stri } const char* Ifc2x3::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWindowPanelOperationEnum::Value Ifc2x3::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWindowPanelOperationEnum::Value) IFC2X3_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWindowPanelOperationEnum::operator Ifc2x3::IfcWindowPanelOperationEnum::Value() const { @@ -7921,19 +6321,11 @@ Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::string } const char* Ifc2x3::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWindowPanelPositionEnum::Value Ifc2x3::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWindowPanelPositionEnum::Value) IFC2X3_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWindowPanelPositionEnum::operator Ifc2x3::IfcWindowPanelPositionEnum::Value() const { @@ -7962,21 +6354,11 @@ Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const std } const char* Ifc2x3::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWindowStyleConstructionEnum::Value Ifc2x3::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWindowStyleConstructionEnum::Value) IFC2X3_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWindowStyleConstructionEnum::operator Ifc2x3::IfcWindowStyleConstructionEnum::Value() const { @@ -8005,24 +6387,11 @@ Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std::stri } const char* Ifc2x3::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWindowStyleOperationEnum::Value Ifc2x3::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWindowStyleOperationEnum::Value) IFC2X3_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWindowStyleOperationEnum::operator Ifc2x3::IfcWindowStyleOperationEnum::Value() const { @@ -8051,18 +6420,11 @@ Ifc2x3::IfcWorkControlTypeEnum::IfcWorkControlTypeEnum(const std::string& v) { } const char* Ifc2x3::IfcWorkControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC2X3_IfcWorkControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc2x3::IfcWorkControlTypeEnum::Value Ifc2x3::IfcWorkControlTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc2x3::IfcWorkControlTypeEnum::IfcWorkControlType_ACTUAL; - if (s == "BASELINE") return ::Ifc2x3::IfcWorkControlTypeEnum::IfcWorkControlType_BASELINE; - if (s == "PLANNED") return ::Ifc2x3::IfcWorkControlTypeEnum::IfcWorkControlType_PLANNED; - if (s == "USERDEFINED") return ::Ifc2x3::IfcWorkControlTypeEnum::IfcWorkControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc2x3::IfcWorkControlTypeEnum::IfcWorkControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc2x3::IfcWorkControlTypeEnum::Value) IFC2X3_IfcWorkControlTypeEnum_type->lookup_enum_offset(s); } Ifc2x3::IfcWorkControlTypeEnum::operator Ifc2x3::IfcWorkControlTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4-schema.cpp b/src/ifcparse/Ifc4-schema.cpp index 5e8d1add16..3ea7c5ab3a 100644 --- a/src/ifcparse/Ifc4-schema.cpp +++ b/src/ifcparse/Ifc4-schema.cpp @@ -2325,6 +2325,3314 @@ class IFC4_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"FOUNDATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"IfcDoorTypeOperationEnum"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"CONSUMERUNIT"s, +"DISTRIBUTIONBOARD"s, +"MOTORCONTROLCENTRE"s, +"SWITCHBOARD"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"GIRDER"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"TRUSS"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNullStyle"s, +"NULL"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"CULVERT"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"GUARDRAIL"s, +"BALUSTRADE"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"STORAGE"s, +"VESSEL"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"COUPLER"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcPresentationStyleAssignment"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcDerivedMeasureValue"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcStyleAssignmentSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcPresentationStyleSelect"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcDirection"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuilding"s, +"IfcBuildingElementType"s, +"IfcBuildingStorey"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCylindricalSurface"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGrid"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMotorConnectionType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailingType"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAggregates"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcShadingDeviceType"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonType"s, +"IfcTransformerType"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBuildingElement"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxy"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMotorConnection"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBoiler"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"Radius"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Segments"s, +"Transition"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"Tag"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"ModelorDraughting"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"PlacementRelTo"s, +"RelativePlacement"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Distance"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"Placement"s, +"SizeInX"s, +"SizeInY"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"Styles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"SpineCurve"s, +"CrossSections"s, +"CrossSectionPositions"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"UsingCurves"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"ReferencedInStructures"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"ReferencedByPlacements"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2336,12731 +5644,10064 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4_populate_schema() { - IFC4_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_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"); - IFC4_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - IFC4_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 29, 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"); - IFC4_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 30, 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"); - IFC4_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 31, items); - } - IFC4_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 32, new simple_type(simple_type::real_type)); - IFC4_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 44, new simple_type(simple_type::real_type)); - IFC4_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 45, 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"); - IFC4_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 46, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC4_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 47, 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"); - IFC4_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 52, 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"); - IFC4_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 86, 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"); - IFC4_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 89, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BEAM"); - items.push_back("HOLLOWCORE"); - items.push_back("JOIST"); - items.push_back("LINTEL"); - items.push_back("NOTDEFINED"); - items.push_back("SPANDREL"); - items.push_back("T_BEAM"); - items.push_back("USERDEFINED"); - IFC4_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 60, 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"); - IFC4_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 61, items); - } - IFC4_IfcBinary_type = new type_declaration("IfcBinary", 63, 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"); - IFC4_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 68, items); - } - IFC4_IfcBoolean_type = new type_declaration("IfcBoolean", 69, 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"); - IFC4_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 72, items); - } - { - std::vector items; items.reserve(4); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("USERDEFINED"); - IFC4_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 95, 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"); - IFC4_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 98, items); - } - { - std::vector items; items.reserve(8); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("SHADING"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 102, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 105, 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"); - IFC4_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 108, 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"); - IFC4_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 111, 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"); - IFC4_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 114, 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"); - IFC4_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 117, items); - } - IFC4_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 118, 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"); - IFC4_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 129, 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"); - IFC4_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 132, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 135, 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"); - IFC4_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 148, items); - } - { - std::vector items; items.reserve(4); - items.push_back("COLUMN"); - items.push_back("NOTDEFINED"); - items.push_back("PILASTER"); - items.push_back("USERDEFINED"); - IFC4_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 157, 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"); - IFC4_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 160, items); - } - IFC4_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 161, 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"); - IFC4_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 164, items); - } - IFC4_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 169, 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"); - IFC4_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 172, 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"); - IFC4_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 175, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 183, 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"); - IFC4_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 186, 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"); - IFC4_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 189, 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"); - IFC4_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 192, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 195, items); - } - IFC4_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 199, 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"); - IFC4_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 204, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 209, 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"); - IFC4_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 212, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 217, 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"); - IFC4_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 219, items); - } - IFC4_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 221, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(12); - items.push_back("CEILING"); - items.push_back("CLADDING"); - 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"); - IFC4_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 224, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 227, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 235, items); - } - IFC4_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 236, 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"); - IFC4_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 241, 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"); - IFC4_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 252, 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"); - IFC4_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 253, items); - } - IFC4_IfcDate_type = new type_declaration("IfcDate", 254, new simple_type(simple_type::string_type)); - IFC4_IfcDateTime_type = new type_declaration("IfcDateTime", 255, new simple_type(simple_type::string_type)); - IFC4_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 256, new simple_type(simple_type::integer_type)); - IFC4_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 257, 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"); - IFC4_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 263, items); - } - IFC4_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 264, new simple_type(simple_type::string_type)); - IFC4_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 266, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 268, items); - } - { - std::vector items; items.reserve(5); - items.push_back("ANCHORPLATE"); - items.push_back("BRACKET"); - items.push_back("NOTDEFINED"); - items.push_back("SHOE"); - items.push_back("USERDEFINED"); - IFC4_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 271, 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"); - IFC4_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 274, 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"); - IFC4_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 283, 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"); - IFC4_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 285, 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"); - IFC4_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 286, 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"); - IFC4_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 291, 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"); - IFC4_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 294, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 295, 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"); - IFC4_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 299, 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"); - IFC4_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 300, 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"); - IFC4_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 302, 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"); - IFC4_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 303, items); - } - IFC4_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 304, 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"); - IFC4_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 309, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 312, 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"); - IFC4_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 315, items); - } - IFC4_IfcDuration_type = new type_declaration("IfcDuration", 316, new simple_type(simple_type::string_type)); - IFC4_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 317, 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"); - IFC4_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 323, items); - } - IFC4_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 324, new simple_type(simple_type::real_type)); - IFC4_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 325, new simple_type(simple_type::real_type)); - IFC4_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 326, new simple_type(simple_type::real_type)); - IFC4_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 327, 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"); - IFC4_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 330, 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"); - IFC4_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 333, 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"); - IFC4_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 336, 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"); - IFC4_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 339, items); - } - IFC4_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 340, 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"); - IFC4_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 343, items); - } - IFC4_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 344, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ACCESSORY_ASSEMBLY"); - items.push_back("ARCH"); - items.push_back("BEAM_GRID"); - items.push_back("BRACED_FRAME"); - items.push_back("GIRDER"); - items.push_back("NOTDEFINED"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SLAB_FIELD"); - items.push_back("TRUSS"); - items.push_back("USERDEFINED"); - IFC4_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 349, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 352, items); - } - IFC4_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 359, 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"); - IFC4_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 362, 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"); - IFC4_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 365, 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"); - IFC4_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 368, 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"); - IFC4_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 371, 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"); - IFC4_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 373, 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"); - IFC4_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 382, 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"); - IFC4_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 396, 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"); - IFC4_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 399, 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"); - IFC4_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 409, 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"); - IFC4_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 412, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 416, 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"); - IFC4_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 421, 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"); - IFC4_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 424, items); - } - IFC4_IfcFontStyle_type = new type_declaration("IfcFontStyle", 435, new simple_type(simple_type::string_type)); - IFC4_IfcFontVariant_type = new type_declaration("IfcFontVariant", 436, new simple_type(simple_type::string_type)); - IFC4_IfcFontWeight_type = new type_declaration("IfcFontWeight", 437, 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"); - IFC4_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 440, items); - } - IFC4_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 441, new simple_type(simple_type::real_type)); - IFC4_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 442, 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"); - IFC4_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 447, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("TERRAIN"); - items.push_back("USERDEFINED"); - IFC4_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 450, 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"); - IFC4_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 452, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 459, items); - } - IFC4_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 458, 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"); - IFC4_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 464, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("USERDEFINED"); - IFC4_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 470, items); - } - IFC4_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 471, new simple_type(simple_type::real_type)); - IFC4_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 472, 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"); - IFC4_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 475, items); - } - IFC4_IfcIdentifier_type = new type_declaration("IfcIdentifier", 476, new simple_type(simple_type::string_type)); - IFC4_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 477, new simple_type(simple_type::real_type)); - IFC4_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 485, new simple_type(simple_type::real_type)); - IFC4_IfcInteger_type = new type_declaration("IfcInteger", 486, new simple_type(simple_type::integer_type)); - IFC4_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 487, 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"); - IFC4_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 490, 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"); - IFC4_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 491, 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"); - IFC4_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 494, items); - } - IFC4_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 495, new simple_type(simple_type::real_type)); - IFC4_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 499, 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"); - IFC4_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 502, items); - } - IFC4_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 503, 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"); - IFC4_IfcKnotType_type = new enumeration_type("IfcKnotType", 504, items); - } - IFC4_IfcLabel_type = new type_declaration("IfcLabel", 505, 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"); - IFC4_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 508, 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"); - IFC4_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 512, items); - } - IFC4_IfcLanguageId_type = new type_declaration("IfcLanguageId", 513, new named_type(IFC4_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 515, items); - } - IFC4_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 516, 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"); - IFC4_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 520, 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"); - IFC4_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 523, 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"); - IFC4_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 526, items); - } - IFC4_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 535, new simple_type(simple_type::real_type)); - IFC4_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 536, new simple_type(simple_type::real_type)); - IFC4_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 537, new simple_type(simple_type::real_type)); - IFC4_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 538, 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"); - IFC4_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 540, items); - } - IFC4_IfcLogical_type = new type_declaration("IfcLogical", 542, 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"); - IFC4_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 543, items); - } - IFC4_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 546, new simple_type(simple_type::real_type)); - IFC4_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 547, new simple_type(simple_type::real_type)); - IFC4_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 548, new simple_type(simple_type::real_type)); - IFC4_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 549, new simple_type(simple_type::real_type)); - IFC4_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 550, new simple_type(simple_type::real_type)); - IFC4_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 554, new simple_type(simple_type::real_type)); - IFC4_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 555, new simple_type(simple_type::real_type)); - IFC4_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 556, new simple_type(simple_type::real_type)); - IFC4_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 557, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(12); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - 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"); - IFC4_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 582, 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"); - IFC4_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 585, items); - } - { - std::vector items; items.reserve(14); - 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("STRINGER"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("USERDEFINED"); - IFC4_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 589, items); - } - IFC4_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 593, new simple_type(simple_type::real_type)); - IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 594, new simple_type(simple_type::real_type)); - IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 595, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 596, items); - } - IFC4_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 597, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcModulusOfSubgradeReactionMeasure_type); - IFC4_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 598, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 599, items); - } - IFC4_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 600, new simple_type(simple_type::real_type)); - IFC4_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 601, new simple_type(simple_type::real_type)); - IFC4_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 602, new simple_type(simple_type::real_type)); - IFC4_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 603, new simple_type(simple_type::real_type)); - IFC4_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 605, 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"); - IFC4_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 608, items); - } - IFC4_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 610, new named_type(IFC4_IfcLengthMeasure_type)); - { - std::vector items; items.reserve(1); - items.push_back("NULL"); - IFC4_IfcNullStyle_type = new enumeration_type("IfcNullStyle", 612, items); - } - IFC4_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 613, 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"); - IFC4_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 620, 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"); - IFC4_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 617, 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"); - IFC4_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 622, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 626, 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"); - IFC4_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 635, items); - } - IFC4_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 649, new simple_type(simple_type::real_type)); - IFC4_IfcParameterValue_type = new type_declaration("IfcParameterValue", 638, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 642, 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"); - IFC4_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 643, 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"); - IFC4_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 646, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 651, 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"); - IFC4_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 655, 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"); - IFC4_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 657, 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"); - IFC4_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 660, 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"); - IFC4_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 663, items); - } - IFC4_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 668, new simple_type(simple_type::real_type)); - IFC4_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 670, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("CURTAIN_PANEL"); - items.push_back("NOTDEFINED"); - items.push_back("SHEET"); - items.push_back("USERDEFINED"); - IFC4_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 674, items); - } - IFC4_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 684, new named_type(IFC4_IfcInteger_type)); - IFC4_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 685, new named_type(IFC4_IfcLengthMeasure_type)); - IFC4_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 686, new named_type(IFC4_IfcPlaneAngleMeasure_type)); - IFC4_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 689, 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"); - IFC4_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 696, items); - } - IFC4_IfcPresentableText_type = new type_declaration("IfcPresentableText", 697, new simple_type(simple_type::string_type)); - IFC4_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 704, 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"); - IFC4_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 707, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 717, 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"); - IFC4_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 725, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 720, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 722, 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"); - IFC4_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 740, 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"); - IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 748, 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"); - IFC4_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 750, 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"); - IFC4_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 754, items); - } - IFC4_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 762, 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"); - IFC4_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 765, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 769, 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"); - IFC4_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 771, items); - } - IFC4_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 772, new simple_type(simple_type::real_type)); - IFC4_IfcReal_type = new type_declaration("IfcReal", 775, 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"); - IFC4_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 781, 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"); - IFC4_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 783, 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"); - IFC4_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 788, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 789, 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"); - IFC4_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 791, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 796, 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"); - IFC4_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 861, 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"); - IFC4_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 864, items); - } - IFC4_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 866, new simple_type(simple_type::real_type)); - IFC4_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 867, new simple_type(simple_type::real_type)); - IFC4_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 868, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcRotationalStiffnessMeasure_type); - IFC4_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 869, 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"); - IFC4_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 900, 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"); - IFC4_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 903, 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"); - IFC4_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 873, items); - } - IFC4_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 878, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 881, items); - } - IFC4_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 876, 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"); - IFC4_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 885, 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"); - IFC4_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 886, 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"); - IFC4_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 889, items); - } - IFC4_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 893, 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"); - IFC4_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 898, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BASESLAB"); - items.push_back("FLOOR"); - items.push_back("LANDING"); - items.push_back("NOTDEFINED"); - items.push_back("ROOF"); - items.push_back("USERDEFINED"); - IFC4_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 909, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 913, items); - } - IFC4_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 914, new simple_type(simple_type::real_type)); - IFC4_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 917, new simple_type(simple_type::real_type)); - IFC4_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 918, new simple_type(simple_type::real_type)); - IFC4_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 919, new simple_type(simple_type::real_type)); - IFC4_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 920, 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"); - IFC4_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 925, 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"); - IFC4_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 927, 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"); - IFC4_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 934, items); - } - IFC4_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 935, new simple_type(simple_type::real_type)); - IFC4_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 936, new simple_type(simple_type::real_type)); - IFC4_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 938, 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"); - IFC4_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 943, 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"); - IFC4_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 947, 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"); - IFC4_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 949, 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"); - IFC4_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 950, 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"); - IFC4_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 958, 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"); - IFC4_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 961, 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"); - IFC4_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 987, 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"); - IFC4_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 990, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 999, items); - } - { - std::vector items; items.reserve(5); - items.push_back("MARK"); - items.push_back("NOTDEFINED"); - items.push_back("TAG"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1005, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1010, 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"); - IFC4_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1025, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1029, 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"); - IFC4_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1035, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1037, 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"); - IFC4_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1041, items); - } - IFC4_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1043, new simple_type(simple_type::real_type)); - IFC4_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1044, 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"); - IFC4_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1048, 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"); - IFC4_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1050, items); - } - IFC4_IfcText_type = new type_declaration("IfcText", 1053, new simple_type(simple_type::string_type)); - IFC4_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1054, new simple_type(simple_type::string_type)); - IFC4_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1055, new simple_type(simple_type::string_type)); - IFC4_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1056, 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"); - IFC4_IfcTextPath_type = new enumeration_type("IfcTextPath", 1060, items); - } - IFC4_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1065, new simple_type(simple_type::string_type)); - IFC4_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1071, new simple_type(simple_type::real_type)); - IFC4_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1072, new simple_type(simple_type::real_type)); - IFC4_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1073, new simple_type(simple_type::real_type)); - IFC4_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1074, new simple_type(simple_type::real_type)); - IFC4_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1075, new simple_type(simple_type::real_type)); - IFC4_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1076, new simple_type(simple_type::real_type)); - IFC4_IfcTime_type = new type_declaration("IfcTime", 1077, new simple_type(simple_type::string_type)); - IFC4_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1078, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcDuration_type); - items.push_back(IFC4_IfcRatioMeasure_type); - IFC4_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1079, 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"); - IFC4_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1082, items); - } - IFC4_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1084, new simple_type(simple_type::integer_type)); - IFC4_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1088, 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"); - IFC4_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1091, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1092, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcLinearStiffnessMeasure_type); - IFC4_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1093, 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"); - IFC4_IfcTransportElementTypeEnum_type = new enumeration_type("IfcTransportElementTypeEnum", 1096, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1100, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1105, items); - } - IFC4_IfcURIReference_type = new type_declaration("IfcURIReference", 1119, 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"); - IFC4_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1118, 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"); - IFC4_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1113, 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"); - IFC4_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1116, 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"); - IFC4_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1124, items); - } - IFC4_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1125, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("COMPRESSION"); - items.push_back("NOTDEFINED"); - items.push_back("SPRING"); - items.push_back("USERDEFINED"); - IFC4_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1133, 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"); - IFC4_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1137, items); - } - IFC4_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1138, new simple_type(simple_type::real_type)); - IFC4_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1139, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - 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("SHEAR"); - items.push_back("SOLIDWALL"); - items.push_back("STANDARD"); - items.push_back("USERDEFINED"); - IFC4_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1144, items); - } - IFC4_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1145, new simple_type(simple_type::real_type)); - IFC4_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1146, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcWarpingMomentMeasure_type); - IFC4_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1147, 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"); - IFC4_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1150, 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"); - IFC4_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1153, 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"); - IFC4_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1154, 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"); - IFC4_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1158, 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"); - IFC4_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1159, 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"); - IFC4_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1161, 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"); - IFC4_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1162, 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"); - IFC4_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1164, 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"); - IFC4_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1167, 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"); - IFC4_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1169, items); - } - IFC4_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4_IfcApplication_type = new entity("IfcApplication", false, 35, 0); - IFC4_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 36, 0); - IFC4_IfcApproval_type = new entity("IfcApproval", false, 38, 0); - IFC4_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 74, 0); - IFC4_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 76, IFC4_IfcBoundaryCondition_type); - IFC4_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 77, IFC4_IfcBoundaryCondition_type); - IFC4_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 78, IFC4_IfcBoundaryCondition_type); - IFC4_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 79, IFC4_IfcBoundaryNodeCondition_type); - IFC4_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 179, 0); - IFC4_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 181, IFC4_IfcConnectionGeometry_type); - IFC4_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 182, IFC4_IfcConnectionGeometry_type); - IFC4_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 184, IFC4_IfcConnectionGeometry_type); - IFC4_IfcConstraint_type = new entity("IfcConstraint", true, 185, 0); - IFC4_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 213, 0); - IFC4_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 214, 0); - IFC4_IfcCostValue_type = new entity("IfcCostValue", false, 220, IFC4_IfcAppliedValue_type); - IFC4_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 261, 0); - IFC4_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 262, 0); - IFC4_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 265, 0); - IFC4_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 375, 0); - IFC4_IfcExternalReference_type = new entity("IfcExternalReference", true, 379, 0); - IFC4_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 376, IFC4_IfcExternalReference_type); - IFC4_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 377, IFC4_IfcExternalReference_type); - IFC4_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 378, IFC4_IfcExternalReference_type); - IFC4_IfcGridAxis_type = new entity("IfcGridAxis", false, 461, 0); - IFC4_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 497, 0); - IFC4_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 517, IFC4_IfcExternalInformation_type); - IFC4_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 518, IFC4_IfcExternalReference_type); - IFC4_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 521, 0); - IFC4_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 527, 0); - IFC4_IfcMapConversion_type = new entity("IfcMapConversion", false, 552, IFC4_IfcCoordinateOperation_type); - IFC4_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 559, 0); - IFC4_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 562, 0); - IFC4_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 564, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 565, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 567, IFC4_IfcMaterialLayer_type); - IFC4_IfcMaterialList_type = new entity("IfcMaterialList", false, 568, 0); - IFC4_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 569, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 570, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 573, IFC4_IfcMaterialProfile_type); - IFC4_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 577, 0); - IFC4_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 579, 0); - IFC4_IfcMetric_type = new entity("IfcMetric", false, 590, IFC4_IfcConstraint_type); - IFC4_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 604, 0); - IFC4_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 609, 0); - IFC4_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 618, 0); - IFC4_IfcObjective_type = new entity("IfcObjective", false, 616, IFC4_IfcConstraint_type); - IFC4_IfcOrganization_type = new entity("IfcOrganization", false, 629, 0); - IFC4_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 636, 0); - IFC4_IfcPerson_type = new entity("IfcPerson", false, 647, 0); - IFC4_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 648, 0); - IFC4_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 652, 0); - IFC4_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 653, IFC4_IfcPhysicalQuantity_type); - IFC4_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 688, IFC4_IfcAddress_type); - IFC4_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 698, 0); - IFC4_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 699, 0); - IFC4_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 700, IFC4_IfcPresentationLayerAssignment_type); - IFC4_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 701, 0); - IFC4_IfcPresentationStyleAssignment_type = new entity("IfcPresentationStyleAssignment", false, 702, 0); - IFC4_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 712, 0); - IFC4_IfcProfileDef_type = new entity("IfcProfileDef", false, 715, 0); - IFC4_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 719, IFC4_IfcCoordinateReferenceSystem_type); - IFC4_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 727, 0); - IFC4_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 732, IFC4_IfcPropertyAbstraction_type); - IFC4_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 755, IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 756, IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 757, IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 759, IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 760, IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 761, IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 780, 0); - IFC4_IfcReference_type = new entity("IfcReference", false, 782, 0); - IFC4_IfcRepresentation_type = new entity("IfcRepresentation", true, 846, 0); - IFC4_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 847, 0); - IFC4_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 848, 0); - IFC4_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 849, 0); - IFC4_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 853, 0); - IFC4_IfcRoot_type = new entity("IfcRoot", true, 865, 0); - IFC4_IfcSIUnit_type = new entity("IfcSIUnit", false, 902, IFC4_IfcNamedUnit_type); - IFC4_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 874, 0); - IFC4_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 890, 0); - IFC4_IfcShapeModel_type = new entity("IfcShapeModel", true, 891, IFC4_IfcRepresentation_type); - IFC4_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 892, IFC4_IfcShapeModel_type); - IFC4_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 956, 0); - IFC4_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 966, 0); - IFC4_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 968, IFC4_IfcStructuralLoad_type); - IFC4_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 971, IFC4_IfcStructuralLoad_type); - IFC4_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 977, IFC4_IfcStructuralLoadOrResult_type); - IFC4_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 978, IFC4_IfcStructuralLoadStatic_type); - IFC4_IfcStyleModel_type = new entity("IfcStyleModel", true, 996, IFC4_IfcRepresentation_type); - IFC4_IfcStyledItem_type = new entity("IfcStyledItem", false, 994, IFC4_IfcRepresentationItem_type); - IFC4_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 995, IFC4_IfcStyleModel_type); - IFC4_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1009, IFC4_IfcStructuralLoadOrResult_type); - IFC4_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1011, IFC4_IfcPresentationStyle_type); - IFC4_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1013, IFC4_IfcPresentationItem_type); - IFC4_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1014, IFC4_IfcPresentationItem_type); - IFC4_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1016, IFC4_IfcPresentationItem_type); - IFC4_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1017, IFC4_IfcPresentationItem_type); - IFC4_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1018, IFC4_IfcPresentationItem_type); - IFC4_IfcTable_type = new entity("IfcTable", false, 1030, 0); - IFC4_IfcTableColumn_type = new entity("IfcTableColumn", false, 1031, 0); - IFC4_IfcTableRow_type = new entity("IfcTableRow", false, 1032, 0); - IFC4_IfcTaskTime_type = new entity("IfcTaskTime", false, 1038, IFC4_IfcSchedulingTime_type); - IFC4_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1039, IFC4_IfcTaskTime_type); - IFC4_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1042, IFC4_IfcAddress_type); - IFC4_IfcTextStyle_type = new entity("IfcTextStyle", false, 1061, IFC4_IfcPresentationStyle_type); - IFC4_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1063, IFC4_IfcPresentationItem_type); - IFC4_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1064, IFC4_IfcPresentationItem_type); - IFC4_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1066, IFC4_IfcPresentationItem_type); - IFC4_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1067, IFC4_IfcTextureCoordinate_type); - IFC4_IfcTextureMap_type = new entity("IfcTextureMap", false, 1068, IFC4_IfcTextureCoordinate_type); - IFC4_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1069, IFC4_IfcPresentationItem_type); - IFC4_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1070, IFC4_IfcPresentationItem_type); - IFC4_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1080, 0); - IFC4_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1081, 0); - IFC4_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1083, 0); - IFC4_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1085, IFC4_IfcRepresentationItem_type); - IFC4_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1086, IFC4_IfcShapeModel_type); - IFC4_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1117, 0); - IFC4_IfcVertex_type = new entity("IfcVertex", false, 1128, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1130, IFC4_IfcVertex_type); - IFC4_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1135, 0); - IFC4_IfcWorkTime_type = new entity("IfcWorkTime", false, 1170, IFC4_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcOrganization_type); - items.push_back(IFC4_IfcPerson_type); - items.push_back(IFC4_IfcPersonAndOrganization_type); - IFC4_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4_IfcArcIndex_type = new type_declaration("IfcArcIndex", 43, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcLengthMeasure_type); - items.push_back(IFC4_IfcPlaneAngleMeasure_type); - IFC4_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 62, items); - } - IFC4_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 83, new named_type(IFC4_IfcLabel_type)); - { - std::vector items; items.reserve(71); - items.push_back(IFC4_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4_IfcAccelerationMeasure_type); - items.push_back(IFC4_IfcAngularVelocityMeasure_type); - items.push_back(IFC4_IfcAreaDensityMeasure_type); - items.push_back(IFC4_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4_IfcCurvatureMeasure_type); - items.push_back(IFC4_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4_IfcElectricChargeMeasure_type); - items.push_back(IFC4_IfcElectricConductanceMeasure_type); - items.push_back(IFC4_IfcElectricResistanceMeasure_type); - items.push_back(IFC4_IfcElectricVoltageMeasure_type); - items.push_back(IFC4_IfcEnergyMeasure_type); - items.push_back(IFC4_IfcForceMeasure_type); - items.push_back(IFC4_IfcFrequencyMeasure_type); - items.push_back(IFC4_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4_IfcHeatingValueMeasure_type); - items.push_back(IFC4_IfcIlluminanceMeasure_type); - items.push_back(IFC4_IfcInductanceMeasure_type); - items.push_back(IFC4_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4_IfcIonConcentrationMeasure_type); - items.push_back(IFC4_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4_IfcLinearForceMeasure_type); - items.push_back(IFC4_IfcLinearMomentMeasure_type); - items.push_back(IFC4_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4_IfcLinearVelocityMeasure_type); - items.push_back(IFC4_IfcLuminousFluxMeasure_type); - items.push_back(IFC4_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4_IfcMagneticFluxMeasure_type); - items.push_back(IFC4_IfcMassDensityMeasure_type); - items.push_back(IFC4_IfcMassFlowRateMeasure_type); - items.push_back(IFC4_IfcMassPerLengthMeasure_type); - items.push_back(IFC4_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4_IfcMolecularWeightMeasure_type); - items.push_back(IFC4_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4_IfcMonetaryMeasure_type); - items.push_back(IFC4_IfcPHMeasure_type); - items.push_back(IFC4_IfcPlanarForceMeasure_type); - items.push_back(IFC4_IfcPowerMeasure_type); - items.push_back(IFC4_IfcPressureMeasure_type); - items.push_back(IFC4_IfcRadioActivityMeasure_type); - items.push_back(IFC4_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4_IfcRotationalMassMeasure_type); - items.push_back(IFC4_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4_IfcSectionModulusMeasure_type); - items.push_back(IFC4_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4_IfcShearModulusMeasure_type); - items.push_back(IFC4_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4_IfcSoundPowerMeasure_type); - items.push_back(IFC4_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4_IfcSoundPressureMeasure_type); - items.push_back(IFC4_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4_IfcThermalConductivityMeasure_type); - items.push_back(IFC4_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4_IfcThermalResistanceMeasure_type); - items.push_back(IFC4_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4_IfcTorqueMeasure_type); - items.push_back(IFC4_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4_IfcWarpingConstantMeasure_type); - items.push_back(IFC4_IfcWarpingMomentMeasure_type); - IFC4_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 259, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcRepresentation_type); - items.push_back(IFC4_IfcRepresentationItem_type); - IFC4_IfcLayeredItem_type = new select_type("IfcLayeredItem", 514, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcLibraryInformation_type); - items.push_back(IFC4_IfcLibraryReference_type); - IFC4_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 519, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcExternalReference_type); - items.push_back(IFC4_IfcLightIntensityDistribution_type); - IFC4_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 522, items); - } - IFC4_IfcLineIndex_type = new type_declaration("IfcLineIndex", 539, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcMaterialDefinition_type); - items.push_back(IFC4_IfcMaterialList_type); - items.push_back(IFC4_IfcMaterialUsageDefinition_type); - IFC4_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 576, items); - } - IFC4_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 611, new named_type(IFC4_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4_IfcAddress_type); - items.push_back(IFC4_IfcAppliedValue_type); - items.push_back(IFC4_IfcExternalReference_type); - items.push_back(IFC4_IfcMaterialDefinition_type); - items.push_back(IFC4_IfcOrganization_type); - items.push_back(IFC4_IfcPerson_type); - items.push_back(IFC4_IfcPersonAndOrganization_type); - items.push_back(IFC4_IfcTable_type); - items.push_back(IFC4_IfcTimeSeries_type); - IFC4_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 619, items); - } - IFC4_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 687, new named_type(IFC4_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcArcIndex_type); - items.push_back(IFC4_IfcLineIndex_type); - IFC4_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 882, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4_IfcBinary_type); - items.push_back(IFC4_IfcBoolean_type); - items.push_back(IFC4_IfcDate_type); - items.push_back(IFC4_IfcDateTime_type); - items.push_back(IFC4_IfcDuration_type); - items.push_back(IFC4_IfcIdentifier_type); - items.push_back(IFC4_IfcInteger_type); - items.push_back(IFC4_IfcLabel_type); - items.push_back(IFC4_IfcLogical_type); - items.push_back(IFC4_IfcPositiveInteger_type); - items.push_back(IFC4_IfcReal_type); - items.push_back(IFC4_IfcText_type); - items.push_back(IFC4_IfcTime_type); - items.push_back(IFC4_IfcTimeStamp_type); - IFC4_IfcSimpleValue_type = new select_type("IfcSimpleValue", 899, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4_IfcDescriptiveMeasure_type); - items.push_back(IFC4_IfcLengthMeasure_type); - items.push_back(IFC4_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4_IfcPositiveLengthMeasure_type); - items.push_back(IFC4_IfcPositiveRatioMeasure_type); - items.push_back(IFC4_IfcRatioMeasure_type); - IFC4_IfcSizeSelect_type = new select_type("IfcSizeSelect", 904, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcSpecularExponent_type); - items.push_back(IFC4_IfcSpecularRoughness_type); - IFC4_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 937, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcPresentationStyle_type); - items.push_back(IFC4_IfcPresentationStyleAssignment_type); - IFC4_IfcStyleAssignmentSelect_type = new select_type("IfcStyleAssignmentSelect", 993, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4_IfcSurfaceStyleLighting_type); - items.push_back(IFC4_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4_IfcSurfaceStyleShading_type); - items.push_back(IFC4_IfcSurfaceStyleWithTextures_type); - IFC4_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1012, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcDerivedUnit_type); - items.push_back(IFC4_IfcMonetaryUnit_type); - items.push_back(IFC4_IfcNamedUnit_type); - IFC4_IfcUnit_type = new select_type("IfcUnit", 1110, items); - } - IFC4_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 39, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 40, IFC4_IfcProfileDef_type); - IFC4_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 41, IFC4_IfcProfileDef_type); - IFC4_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 42, IFC4_IfcArbitraryClosedProfileDef_type); - IFC4_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 64, IFC4_IfcSurfaceTexture_type); - IFC4_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 128, IFC4_IfcArbitraryOpenProfileDef_type); - IFC4_IfcClassification_type = new entity("IfcClassification", false, 141, IFC4_IfcExternalInformation_type); - IFC4_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 142, IFC4_IfcExternalReference_type); - IFC4_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 152, IFC4_IfcPresentationItem_type); - IFC4_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 153, IFC4_IfcPresentationItem_type); - IFC4_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 168, IFC4_IfcProfileDef_type); - IFC4_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 177, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 178, IFC4_IfcConnectionGeometry_type); - IFC4_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 180, IFC4_IfcConnectionPointGeometry_type); - IFC4_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 200, IFC4_IfcNamedUnit_type); - IFC4_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 205, IFC4_IfcNamedUnit_type); - IFC4_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 206, IFC4_IfcConversionBasedUnit_type); - IFC4_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 232, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 244, IFC4_IfcPresentationStyle_type); - IFC4_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 245, IFC4_IfcPresentationItem_type); - IFC4_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 246, IFC4_IfcPresentationItem_type); - IFC4_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 247, IFC4_IfcPresentationItem_type); - IFC4_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 260, IFC4_IfcProfileDef_type); - IFC4_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 287, IFC4_IfcExternalInformation_type); - IFC4_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 288, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 289, IFC4_IfcExternalReference_type); - IFC4_IfcEdge_type = new entity("IfcEdge", false, 318, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 319, IFC4_IfcEdge_type); - IFC4_IfcEventTime_type = new entity("IfcEventTime", false, 370, IFC4_IfcSchedulingTime_type); - IFC4_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 374, IFC4_IfcPropertyAbstraction_type); - IFC4_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 380, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcFace_type = new entity("IfcFace", false, 386, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcFaceBound_type = new entity("IfcFaceBound", false, 388, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 389, IFC4_IfcFaceBound_type); - IFC4_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 390, IFC4_IfcFace_type); - IFC4_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 393, IFC4_IfcStructuralConnectionCondition_type); - IFC4_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 403, IFC4_IfcPresentationStyle_type); - IFC4_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 453, IFC4_IfcRepresentationContext_type); - IFC4_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 454, IFC4_IfcRepresentationItem_type); - IFC4_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 455, IFC4_IfcGeometricRepresentationContext_type); - IFC4_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 456, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 462, IFC4_IfcObjectPlacement_type); - IFC4_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 466, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcImageTexture_type = new entity("IfcImageTexture", false, 478, IFC4_IfcSurfaceTexture_type); - IFC4_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 479, IFC4_IfcPresentationItem_type); - IFC4_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 483, IFC4_IfcTextureCoordinate_type); - IFC4_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 484, IFC4_IfcIndexedTextureMap_type); - IFC4_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 496, IFC4_IfcTimeSeries_type); - IFC4_IfcLagTime_type = new entity("IfcLagTime", false, 509, IFC4_IfcSchedulingTime_type); - IFC4_IfcLightSource_type = new entity("IfcLightSource", true, 528, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 529, IFC4_IfcLightSource_type); - IFC4_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 530, IFC4_IfcLightSource_type); - IFC4_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 531, IFC4_IfcLightSource_type); - IFC4_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 532, IFC4_IfcLightSource_type); - IFC4_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 533, IFC4_IfcLightSourcePositional_type); - IFC4_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 541, IFC4_IfcObjectPlacement_type); - IFC4_IfcLoop_type = new entity("IfcLoop", false, 544, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcMappedItem_type = new entity("IfcMappedItem", false, 553, IFC4_IfcRepresentationItem_type); - IFC4_IfcMaterial_type = new entity("IfcMaterial", false, 558, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 560, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 561, IFC4_IfcMaterialDefinition_type); - IFC4_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 563, IFC4_IfcProductRepresentation_type); - IFC4_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 566, IFC4_IfcMaterialUsageDefinition_type); - IFC4_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 571, IFC4_IfcMaterialUsageDefinition_type); - IFC4_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 572, IFC4_IfcMaterialProfileSetUsage_type); - IFC4_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 574, IFC4_IfcExtendedProperties_type); - IFC4_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 575, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 592, IFC4_IfcDerivedProfileDef_type); - IFC4_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 615, IFC4_IfcRoot_type); - IFC4_IfcOpenShell_type = new entity("IfcOpenShell", false, 628, IFC4_IfcConnectedFaceSet_type); - IFC4_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 630, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 631, IFC4_IfcEdge_type); - IFC4_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 637, IFC4_IfcProfileDef_type); - IFC4_IfcPath_type = new entity("IfcPath", false, 639, IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 650, IFC4_IfcPhysicalQuantity_type); - IFC4_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 664, IFC4_IfcSurfaceTexture_type); - IFC4_IfcPlacement_type = new entity("IfcPlacement", true, 665, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 667, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcPoint_type = new entity("IfcPoint", true, 675, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 676, IFC4_IfcPoint_type); - IFC4_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 677, IFC4_IfcPoint_type); - IFC4_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 682, IFC4_IfcLoop_type); - IFC4_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 679, IFC4_IfcHalfSpaceSolid_type); - IFC4_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 692, IFC4_IfcPresentationItem_type); - IFC4_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 693, IFC4_IfcPropertyAbstraction_type); - IFC4_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 695, IFC4_IfcPreDefinedItem_type); - IFC4_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 711, IFC4_IfcProductRepresentation_type); - IFC4_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 716, IFC4_IfcExtendedProperties_type); - IFC4_IfcProperty_type = new entity("IfcProperty", true, 726, IFC4_IfcPropertyAbstraction_type); - IFC4_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 729, IFC4_IfcRoot_type); - IFC4_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 730, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 736, IFC4_IfcPropertyDefinition_type); - IFC4_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 744, IFC4_IfcPropertyDefinition_type); - IFC4_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 758, IFC4_IfcPropertySetDefinition_type); - IFC4_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 777, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 784, IFC4_IfcTimeSeries_type); - IFC4_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 785, IFC4_IfcPreDefinedProperties_type); - IFC4_IfcRelationship_type = new entity("IfcRelationship", true, 813, IFC4_IfcRoot_type); - IFC4_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 851, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 852, IFC4_IfcResourceLevelRelationship_type); - IFC4_IfcResourceTime_type = new entity("IfcResourceTime", false, 856, IFC4_IfcSchedulingTime_type); - IFC4_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 870, IFC4_IfcRectangleProfileDef_type); - IFC4_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 879, IFC4_IfcPreDefinedProperties_type); - IFC4_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 880, IFC4_IfcPreDefinedProperties_type); - IFC4_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 877, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 895, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 896, IFC4_IfcProperty_type); - IFC4_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 910, IFC4_IfcStructuralConnectionCondition_type); - IFC4_IfcSolidModel_type = new entity("IfcSolidModel", true, 915, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 970, IFC4_IfcStructuralLoadStatic_type); - IFC4_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 972, IFC4_IfcStructuralLoadStatic_type); - IFC4_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 973, IFC4_IfcStructuralLoadStatic_type); - IFC4_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 974, IFC4_IfcStructuralLoadSingleDisplacement_type); - IFC4_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 975, IFC4_IfcStructuralLoadStatic_type); - IFC4_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 976, IFC4_IfcStructuralLoadSingleForce_type); - IFC4_IfcSubedge_type = new entity("IfcSubedge", false, 1000, IFC4_IfcEdge_type); - IFC4_IfcSurface_type = new entity("IfcSurface", true, 1001, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1015, IFC4_IfcSurfaceStyleShading_type); - IFC4_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1019, IFC4_IfcSolidModel_type); - IFC4_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1020, IFC4_IfcSolidModel_type); - IFC4_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1021, IFC4_IfcSweptDiskSolid_type); - IFC4_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1022, IFC4_IfcSurface_type); - IFC4_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1102, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1052, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1058, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1059, IFC4_IfcTextLiteral_type); - IFC4_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1062, IFC4_IfcPreDefinedTextFont_type); - IFC4_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1097, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcTypeObject_type = new entity("IfcTypeObject", false, 1106, IFC4_IfcObjectDefinition_type); - IFC4_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1107, IFC4_IfcTypeObject_type); - IFC4_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1108, IFC4_IfcTypeObject_type); - IFC4_IfcTypeResource_type = new entity("IfcTypeResource", true, 1109, IFC4_IfcTypeObject_type); - IFC4_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1120, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcVector_type = new entity("IfcVector", false, 1126, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1129, IFC4_IfcLoop_type); - IFC4_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1157, IFC4_IfcTypeProduct_type); - IFC4_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1172, IFC4_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcClassification_type); - items.push_back(IFC4_IfcClassificationReference_type); - IFC4_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 143, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcClassification_type); - items.push_back(IFC4_IfcClassificationReference_type); - IFC4_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 144, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4_IfcGeometricRepresentationContext_type); - IFC4_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 215, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcObjectDefinition_type); - items.push_back(IFC4_IfcPropertyDefinition_type); - IFC4_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 258, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcDocumentInformation_type); - items.push_back(IFC4_IfcDocumentReference_type); - IFC4_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 290, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcPositiveLengthMeasure_type); - items.push_back(IFC4_IfcVector_type); - IFC4_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 467, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4_IfcAreaMeasure_type); - items.push_back(IFC4_IfcComplexNumber_type); - items.push_back(IFC4_IfcContextDependentMeasure_type); - items.push_back(IFC4_IfcCountMeasure_type); - items.push_back(IFC4_IfcDescriptiveMeasure_type); - items.push_back(IFC4_IfcElectricCurrentMeasure_type); - items.push_back(IFC4_IfcLengthMeasure_type); - items.push_back(IFC4_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4_IfcMassMeasure_type); - items.push_back(IFC4_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4_IfcNumericMeasure_type); - items.push_back(IFC4_IfcParameterValue_type); - items.push_back(IFC4_IfcPlaneAngleMeasure_type); - items.push_back(IFC4_IfcPositiveLengthMeasure_type); - items.push_back(IFC4_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4_IfcPositiveRatioMeasure_type); - items.push_back(IFC4_IfcRatioMeasure_type); - items.push_back(IFC4_IfcSolidAngleMeasure_type); - items.push_back(IFC4_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4_IfcTimeMeasure_type); - items.push_back(IFC4_IfcVolumeMeasure_type); - IFC4_IfcMeasureValue_type = new select_type("IfcMeasureValue", 578, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcPoint_type); - items.push_back(IFC4_IfcVertexPoint_type); - IFC4_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 678, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4_IfcCurveStyle_type); - items.push_back(IFC4_IfcFillAreaStyle_type); - items.push_back(IFC4_IfcNullStyle_type); - items.push_back(IFC4_IfcSurfaceStyle_type); - items.push_back(IFC4_IfcTextStyle_type); - IFC4_IfcPresentationStyleSelect_type = new select_type("IfcPresentationStyleSelect", 703, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcProductDefinitionShape_type); - items.push_back(IFC4_IfcRepresentationMap_type); - IFC4_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 713, items); - } - IFC4_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 738, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(16); - items.push_back(IFC4_IfcActorRole_type); - items.push_back(IFC4_IfcAppliedValue_type); - items.push_back(IFC4_IfcApproval_type); - items.push_back(IFC4_IfcConstraint_type); - items.push_back(IFC4_IfcContextDependentUnit_type); - items.push_back(IFC4_IfcConversionBasedUnit_type); - items.push_back(IFC4_IfcExternalInformation_type); - items.push_back(IFC4_IfcExternalReference_type); - items.push_back(IFC4_IfcMaterialDefinition_type); - items.push_back(IFC4_IfcOrganization_type); - items.push_back(IFC4_IfcPerson_type); - items.push_back(IFC4_IfcPersonAndOrganization_type); - items.push_back(IFC4_IfcPhysicalQuantity_type); - items.push_back(IFC4_IfcProfileDef_type); - items.push_back(IFC4_IfcPropertyAbstraction_type); - items.push_back(IFC4_IfcTimeSeries_type); - IFC4_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 854, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4_IfcPreDefinedTextFont_type); - IFC4_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1057, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcDerivedMeasureValue_type); - items.push_back(IFC4_IfcMeasureValue_type); - items.push_back(IFC4_IfcSimpleValue_type); - IFC4_IfcValue_type = new select_type("IfcValue", 1121, items); - } - IFC4_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4_IfcFaceSurface_type); - IFC4_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 34, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 49, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 53, IFC4_IfcPlacement_type); - IFC4_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 55, IFC4_IfcPlacement_type); - IFC4_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 56, IFC4_IfcPlacement_type); - IFC4_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 73, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 81, IFC4_IfcSurface_type); - IFC4_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 82, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 84, IFC4_IfcHalfSpaceSolid_type); - IFC4_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 231, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 119, IFC4_IfcPoint_type); - IFC4_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 120, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 121, IFC4_IfcCartesianPointList_type); - IFC4_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 122, IFC4_IfcCartesianPointList_type); - IFC4_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 123, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 124, IFC4_IfcCartesianTransformationOperator_type); - IFC4_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 125, IFC4_IfcCartesianTransformationOperator2D_type); - IFC4_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 126, IFC4_IfcCartesianTransformationOperator_type); - IFC4_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 127, IFC4_IfcCartesianTransformationOperator3D_type); - IFC4_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 138, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcClosedShell_type = new entity("IfcClosedShell", false, 145, IFC4_IfcConnectedFaceSet_type); - IFC4_IfcColourRgb_type = new entity("IfcColourRgb", false, 151, IFC4_IfcColourSpecification_type); - IFC4_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 162, IFC4_IfcProperty_type); - IFC4_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 167, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 197, IFC4_IfcTypeResource_type); - IFC4_IfcContext_type = new entity("IfcContext", true, 198, IFC4_IfcObjectDefinition_type); - IFC4_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 226, IFC4_IfcConstructionResourceType_type); - IFC4_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 228, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 230, IFC4_IfcSolidModel_type); - IFC4_IfcCurve_type = new entity("IfcCurve", true, 237, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 238, IFC4_IfcBoundedSurface_type); - IFC4_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 239, IFC4_IfcBoundedSurface_type); - IFC4_IfcDirection_type = new entity("IfcDirection", false, 267, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 298, IFC4_IfcTypeProduct_type); - IFC4_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 320, IFC4_IfcLoop_type); - IFC4_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 353, IFC4_IfcQuantitySet_type); - IFC4_IfcElementType_type = new entity("IfcElementType", true, 354, IFC4_IfcTypeProduct_type); - IFC4_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 346, IFC4_IfcSurface_type); - IFC4_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 356, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcEventType_type = new entity("IfcEventType", false, 372, IFC4_IfcTypeProcess_type); - IFC4_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 384, IFC4_IfcSweptAreaSolid_type); - IFC4_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 385, IFC4_IfcExtrudedAreaSolid_type); - IFC4_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 387, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 404, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 405, IFC4_IfcGeometricRepresentationItem_type); - IFC4_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 413, IFC4_IfcSweptAreaSolid_type); - IFC4_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 444, IFC4_IfcElementType_type); - IFC4_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 446, IFC4_IfcFurnishingElementType_type); - IFC4_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 449, IFC4_IfcElementType_type); - IFC4_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 451, IFC4_IfcGeometricSet_type); - IFC4_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 498, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 481, IFC4_IfcTessellatedItem_type); - IFC4_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 482, IFC4_IfcIndexedPolygonalFace_type); - IFC4_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 545, IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 507, IFC4_IfcConstructionResourceType_type); - IFC4_IfcLine_type = new entity("IfcLine", false, 534, IFC4_IfcCurve_type); - IFC4_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 551, IFC4_IfcSolidModel_type); - IFC4_IfcObject_type = new entity("IfcObject", true, 614, IFC4_IfcObjectDefinition_type); - IFC4_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 623, IFC4_IfcCurve_type); - IFC4_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 624, IFC4_IfcCurve_type); - IFC4_IfcPcurve_type = new entity("IfcPcurve", false, 640, IFC4_IfcCurve_type); - IFC4_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 666, IFC4_IfcPlanarExtent_type); - IFC4_IfcPlane_type = new entity("IfcPlane", false, 669, IFC4_IfcElementarySurface_type); - IFC4_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 690, IFC4_IfcPreDefinedItem_type); - IFC4_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 691, IFC4_IfcPreDefinedItem_type); - IFC4_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 694, IFC4_IfcPropertySetDefinition_type); - IFC4_IfcProcedureType_type = new entity("IfcProcedureType", false, 706, IFC4_IfcTypeProcess_type); - IFC4_IfcProcess_type = new entity("IfcProcess", true, 708, IFC4_IfcObject_type); - IFC4_IfcProduct_type = new entity("IfcProduct", true, 710, IFC4_IfcObject_type); - IFC4_IfcProject_type = new entity("IfcProject", false, 718, IFC4_IfcContext_type); - IFC4_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 723, IFC4_IfcContext_type); - IFC4_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 728, IFC4_IfcSimpleProperty_type); - IFC4_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 731, IFC4_IfcSimpleProperty_type); - IFC4_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 733, IFC4_IfcSimpleProperty_type); - IFC4_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 734, IFC4_IfcSimpleProperty_type); - IFC4_IfcPropertySet_type = new entity("IfcPropertySet", false, 735, IFC4_IfcPropertySetDefinition_type); - IFC4_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 739, IFC4_IfcPropertyTemplateDefinition_type); - IFC4_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 741, IFC4_IfcSimpleProperty_type); - IFC4_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 742, IFC4_IfcSimpleProperty_type); - IFC4_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 743, IFC4_IfcPropertyTemplateDefinition_type); - IFC4_IfcProxy_type = new entity("IfcProxy", false, 751, IFC4_IfcProduct_type); - IFC4_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 776, IFC4_IfcRectangleProfileDef_type); - IFC4_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 778, IFC4_IfcCsgPrimitive3D_type); - IFC4_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 779, IFC4_IfcBoundedSurface_type); - IFC4_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 786, IFC4_IfcPreDefinedPropertySet_type); - IFC4_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 798, IFC4_IfcRelationship_type); - IFC4_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 799, IFC4_IfcRelAssigns_type); - IFC4_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 800, IFC4_IfcRelAssigns_type); - IFC4_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 801, IFC4_IfcRelAssigns_type); - IFC4_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 802, IFC4_IfcRelAssignsToGroup_type); - IFC4_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 803, IFC4_IfcRelAssigns_type); - IFC4_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 804, IFC4_IfcRelAssigns_type); - IFC4_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 805, IFC4_IfcRelAssigns_type); - IFC4_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 806, IFC4_IfcRelationship_type); - IFC4_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 807, IFC4_IfcRelAssociates_type); - IFC4_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 808, IFC4_IfcRelAssociates_type); - IFC4_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 809, IFC4_IfcRelAssociates_type); - IFC4_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 810, IFC4_IfcRelAssociates_type); - IFC4_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 811, IFC4_IfcRelAssociates_type); - IFC4_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 812, IFC4_IfcRelAssociates_type); - IFC4_IfcRelConnects_type = new entity("IfcRelConnects", true, 814, IFC4_IfcRelationship_type); - IFC4_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 815, IFC4_IfcRelConnects_type); - IFC4_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 816, IFC4_IfcRelConnectsElements_type); - IFC4_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 818, IFC4_IfcRelConnects_type); - IFC4_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 817, IFC4_IfcRelConnects_type); - IFC4_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 819, IFC4_IfcRelConnects_type); - IFC4_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 820, IFC4_IfcRelConnects_type); - IFC4_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 821, IFC4_IfcRelConnectsStructuralMember_type); - IFC4_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 822, IFC4_IfcRelConnectsElements_type); - IFC4_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 823, IFC4_IfcRelConnects_type); - IFC4_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 824, IFC4_IfcRelConnects_type); - IFC4_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 825, IFC4_IfcRelConnects_type); - IFC4_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 826, IFC4_IfcRelationship_type); - IFC4_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 827, IFC4_IfcRelationship_type); - IFC4_IfcRelDefines_type = new entity("IfcRelDefines", true, 828, IFC4_IfcRelationship_type); - IFC4_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 829, IFC4_IfcRelDefines_type); - IFC4_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 830, IFC4_IfcRelDefines_type); - IFC4_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 831, IFC4_IfcRelDefines_type); - IFC4_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 832, IFC4_IfcRelDefines_type); - IFC4_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 833, IFC4_IfcRelConnects_type); - IFC4_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 834, IFC4_IfcRelConnects_type); - IFC4_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 835, IFC4_IfcRelConnects_type); - IFC4_IfcRelNests_type = new entity("IfcRelNests", false, 836, IFC4_IfcRelDecomposes_type); - IFC4_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 837, IFC4_IfcRelDecomposes_type); - IFC4_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 838, IFC4_IfcRelConnects_type); - IFC4_IfcRelSequence_type = new entity("IfcRelSequence", false, 839, IFC4_IfcRelConnects_type); - IFC4_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 840, IFC4_IfcRelConnects_type); - IFC4_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 841, IFC4_IfcRelConnects_type); - IFC4_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 842, IFC4_IfcRelSpaceBoundary_type); - IFC4_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 843, IFC4_IfcRelSpaceBoundary1stLevel_type); - IFC4_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 844, IFC4_IfcRelDecomposes_type); - IFC4_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 845, IFC4_IfcCompositeCurveSegment_type); - IFC4_IfcResource_type = new entity("IfcResource", true, 850, IFC4_IfcObject_type); - IFC4_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 857, IFC4_IfcSweptAreaSolid_type); - IFC4_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 858, IFC4_IfcRevolvedAreaSolid_type); - IFC4_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 859, IFC4_IfcCsgPrimitive3D_type); - IFC4_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 860, IFC4_IfcCsgPrimitive3D_type); - IFC4_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 897, IFC4_IfcPropertyTemplate_type); - IFC4_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 928, IFC4_IfcProduct_type); - IFC4_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 929, IFC4_IfcTypeProduct_type); - IFC4_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 930, IFC4_IfcSpatialElement_type); - IFC4_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 931, IFC4_IfcSpatialElementType_type); - IFC4_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 932, IFC4_IfcSpatialElement_type); - IFC4_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 933, IFC4_IfcSpatialElementType_type); - IFC4_IfcSphere_type = new entity("IfcSphere", false, 939, IFC4_IfcCsgPrimitive3D_type); - IFC4_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 940, IFC4_IfcElementarySurface_type); - IFC4_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 952, IFC4_IfcProduct_type); - IFC4_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 964, IFC4_IfcProduct_type); - IFC4_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 979, IFC4_IfcStructuralItem_type); - IFC4_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 984, IFC4_IfcStructuralActivity_type); - IFC4_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 989, IFC4_IfcStructuralMember_type); - IFC4_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 991, IFC4_IfcStructuralSurfaceMember_type); - IFC4_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 992, IFC4_IfcStructuralReaction_type); - IFC4_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 998, IFC4_IfcConstructionResourceType_type); - IFC4_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1002, IFC4_IfcCurve_type); - IFC4_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1003, IFC4_IfcSweptAreaSolid_type); - IFC4_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1006, IFC4_IfcSweptSurface_type); - IFC4_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1007, IFC4_IfcSweptSurface_type); - IFC4_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1028, IFC4_IfcFurnishingElementType_type); - IFC4_IfcTask_type = new entity("IfcTask", false, 1036, IFC4_IfcProcess_type); - IFC4_IfcTaskType_type = new entity("IfcTaskType", false, 1040, IFC4_IfcTypeProcess_type); - IFC4_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1051, IFC4_IfcTessellatedItem_type); - IFC4_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1087, IFC4_IfcElementarySurface_type); - IFC4_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1095, IFC4_IfcElementType_type); - IFC4_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1098, IFC4_IfcTessellatedFaceSet_type); - IFC4_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1152, IFC4_IfcPreDefinedPropertySet_type); - IFC4_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1155, IFC4_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcMeasureWithUnit_type); - items.push_back(IFC4_IfcReference_type); - items.push_back(IFC4_IfcValue_type); - IFC4_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 37, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcAxis2Placement2D_type); - items.push_back(IFC4_IfcAxis2Placement3D_type); - IFC4_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 54, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4_IfcBooleanResult_type); - items.push_back(IFC4_IfcCsgPrimitive3D_type); - items.push_back(IFC4_IfcHalfSpaceSolid_type); - items.push_back(IFC4_IfcSolidModel_type); - items.push_back(IFC4_IfcTessellatedFaceSet_type); - IFC4_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 71, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcColourSpecification_type); - items.push_back(IFC4_IfcPreDefinedColour_type); - IFC4_IfcColour_type = new select_type("IfcColour", 149, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcColourRgb_type); - items.push_back(IFC4_IfcNormalisedRatioMeasure_type); - IFC4_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 150, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBooleanResult_type); - items.push_back(IFC4_IfcCsgPrimitive3D_type); - IFC4_IfcCsgSelect_type = new select_type("IfcCsgSelect", 229, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcCurveStyleFont_type); - items.push_back(IFC4_IfcPreDefinedCurveFont_type); - IFC4_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 248, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4_IfcColour_type); - items.push_back(IFC4_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4_IfcFillAreaStyleHatching_type); - items.push_back(IFC4_IfcFillAreaStyleTiles_type); - IFC4_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 406, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcCurve_type); - items.push_back(IFC4_IfcPoint_type); - items.push_back(IFC4_IfcSurface_type); - IFC4_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 457, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcDirection_type); - items.push_back(IFC4_IfcVirtualGridIntersection_type); - IFC4_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 463, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4_IfcAppliedValue_type); - items.push_back(IFC4_IfcMeasureWithUnit_type); - items.push_back(IFC4_IfcReference_type); - items.push_back(IFC4_IfcTable_type); - items.push_back(IFC4_IfcTimeSeries_type); - items.push_back(IFC4_IfcValue_type); - IFC4_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 591, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcProcess_type); - items.push_back(IFC4_IfcTypeProcess_type); - IFC4_IfcProcessSelect_type = new select_type("IfcProcessSelect", 709, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcProduct_type); - items.push_back(IFC4_IfcTypeProduct_type); - IFC4_IfcProductSelect_type = new select_type("IfcProductSelect", 714, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcPropertySetDefinition_type); - items.push_back(IFC4_IfcPropertySetDefinitionSet_type); - IFC4_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 737, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcResource_type); - items.push_back(IFC4_IfcTypeResource_type); - IFC4_IfcResourceSelect_type = new select_type("IfcResourceSelect", 855, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcClosedShell_type); - items.push_back(IFC4_IfcOpenShell_type); - IFC4_IfcShell_type = new select_type("IfcShell", 894, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcClosedShell_type); - items.push_back(IFC4_IfcSolidModel_type); - IFC4_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 916, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4_IfcFaceSurface_type); - items.push_back(IFC4_IfcSurface_type); - IFC4_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1008, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcCartesianPoint_type); - items.push_back(IFC4_IfcParameterValue_type); - IFC4_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1101, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcDirection_type); - items.push_back(IFC4_IfcVector_type); - IFC4_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1127, items); - } - IFC4_IfcActor_type = new entity("IfcActor", false, 6, IFC4_IfcObject_type); - IFC4_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4_IfcManifoldSolidBrep_type); - IFC4_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4_IfcAdvancedBrep_type); - IFC4_IfcAnnotation_type = new entity("IfcAnnotation", false, 33, IFC4_IfcProduct_type); - IFC4_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 88, IFC4_IfcBoundedSurface_type); - IFC4_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 90, IFC4_IfcBSplineSurface_type); - IFC4_IfcBlock_type = new entity("IfcBlock", false, 65, IFC4_IfcCsgPrimitive3D_type); - IFC4_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 70, IFC4_IfcBooleanResult_type); - IFC4_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 80, IFC4_IfcCurve_type); - IFC4_IfcBuilding_type = new entity("IfcBuilding", false, 91, IFC4_IfcSpatialStructureElement_type); - IFC4_IfcBuildingElementType_type = new entity("IfcBuildingElementType", true, 99, IFC4_IfcElementType_type); - IFC4_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 100, IFC4_IfcSpatialStructureElement_type); - IFC4_IfcChimneyType_type = new entity("IfcChimneyType", false, 134, IFC4_IfcBuildingElementType_type); - IFC4_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 137, IFC4_IfcCircleProfileDef_type); - IFC4_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 140, IFC4_IfcElementType_type); - IFC4_IfcColumnType_type = new entity("IfcColumnType", false, 156, IFC4_IfcBuildingElementType_type); - IFC4_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 163, IFC4_IfcPropertyTemplate_type); - IFC4_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 165, IFC4_IfcBoundedCurve_type); - IFC4_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 166, IFC4_IfcCompositeCurve_type); - IFC4_IfcConic_type = new entity("IfcConic", true, 176, IFC4_IfcCurve_type); - IFC4_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 188, IFC4_IfcConstructionResourceType_type); - IFC4_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 191, IFC4_IfcConstructionResourceType_type); - IFC4_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 194, IFC4_IfcConstructionResourceType_type); - IFC4_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 196, IFC4_IfcResource_type); - IFC4_IfcControl_type = new entity("IfcControl", true, 201, IFC4_IfcObject_type); - IFC4_IfcCostItem_type = new entity("IfcCostItem", false, 216, IFC4_IfcControl_type); - IFC4_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 218, IFC4_IfcControl_type); - IFC4_IfcCoveringType_type = new entity("IfcCoveringType", false, 223, IFC4_IfcBuildingElementType_type); - IFC4_IfcCrewResource_type = new entity("IfcCrewResource", false, 225, IFC4_IfcConstructionResource_type); - IFC4_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 234, IFC4_IfcBuildingElementType_type); - IFC4_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 249, IFC4_IfcElementarySurface_type); - IFC4_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 279, IFC4_IfcElementType_type); - IFC4_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 281, IFC4_IfcDistributionElementType_type); - IFC4_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 293, IFC4_IfcPreDefinedPropertySet_type); - IFC4_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 296, IFC4_IfcPreDefinedPropertySet_type); - IFC4_IfcDoorType_type = new entity("IfcDoorType", false, 301, IFC4_IfcBuildingElementType_type); - IFC4_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 305, IFC4_IfcPreDefinedColour_type); - IFC4_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 306, IFC4_IfcPreDefinedCurveFont_type); - IFC4_IfcElement_type = new entity("IfcElement", true, 345, IFC4_IfcProduct_type); - IFC4_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 347, IFC4_IfcElement_type); - IFC4_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 348, IFC4_IfcElementType_type); - IFC4_IfcElementComponent_type = new entity("IfcElementComponent", true, 350, IFC4_IfcElement_type); - IFC4_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 351, IFC4_IfcElementType_type); - IFC4_IfcEllipse_type = new entity("IfcEllipse", false, 355, IFC4_IfcConic_type); - IFC4_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 358, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcEngineType_type = new entity("IfcEngineType", false, 361, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 364, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 367, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcEvent_type = new entity("IfcEvent", false, 369, IFC4_IfcProcess_type); - IFC4_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 383, IFC4_IfcSpatialElement_type); - IFC4_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 391, IFC4_IfcManifoldSolidBrep_type); - IFC4_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 392, IFC4_IfcFacetedBrep_type); - IFC4_IfcFastener_type = new entity("IfcFastener", false, 397, IFC4_IfcElementComponent_type); - IFC4_IfcFastenerType_type = new entity("IfcFastenerType", false, 398, IFC4_IfcElementComponentType_type); - IFC4_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 400, IFC4_IfcElement_type); - IFC4_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 401, IFC4_IfcFeatureElement_type); - IFC4_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 402, IFC4_IfcFeatureElement_type); - IFC4_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 415, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 418, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 423, IFC4_IfcFlowControllerType_type); - IFC4_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 426, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 428, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 430, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 432, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 434, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcFootingType_type = new entity("IfcFootingType", false, 439, IFC4_IfcBuildingElementType_type); - IFC4_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 443, IFC4_IfcElement_type); - IFC4_IfcFurniture_type = new entity("IfcFurniture", false, 445, IFC4_IfcFurnishingElement_type); - IFC4_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 448, IFC4_IfcElement_type); - IFC4_IfcGrid_type = new entity("IfcGrid", false, 460, IFC4_IfcProduct_type); - IFC4_IfcGroup_type = new entity("IfcGroup", false, 465, IFC4_IfcObject_type); - IFC4_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 469, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 474, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 480, IFC4_IfcBoundedCurve_type); - IFC4_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 489, IFC4_IfcFlowTreatmentDeviceType_type); - IFC4_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 492, IFC4_IfcSurfaceCurve_type); - IFC4_IfcInventory_type = new entity("IfcInventory", false, 493, IFC4_IfcGroup_type); - IFC4_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 501, IFC4_IfcFlowFittingType_type); - IFC4_IfcLaborResource_type = new entity("IfcLaborResource", false, 506, IFC4_IfcConstructionResource_type); - IFC4_IfcLampType_type = new entity("IfcLampType", false, 511, IFC4_IfcFlowTerminalType_type); - IFC4_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 525, IFC4_IfcFlowTerminalType_type); - IFC4_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 580, IFC4_IfcElementComponent_type); - IFC4_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 581, IFC4_IfcElementComponentType_type); - IFC4_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 584, IFC4_IfcFlowTerminalType_type); - IFC4_IfcMemberType_type = new entity("IfcMemberType", false, 588, IFC4_IfcBuildingElementType_type); - IFC4_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 607, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcOccupant_type = new entity("IfcOccupant", false, 621, IFC4_IfcActor_type); - IFC4_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 625, IFC4_IfcFeatureElementSubtraction_type); - IFC4_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 627, IFC4_IfcOpeningElement_type); - IFC4_IfcOutletType_type = new entity("IfcOutletType", false, 634, IFC4_IfcFlowTerminalType_type); - IFC4_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 641, IFC4_IfcControl_type); - IFC4_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 644, IFC4_IfcPreDefinedPropertySet_type); - IFC4_IfcPermit_type = new entity("IfcPermit", false, 645, IFC4_IfcControl_type); - IFC4_IfcPileType_type = new entity("IfcPileType", false, 656, IFC4_IfcBuildingElementType_type); - IFC4_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 659, IFC4_IfcFlowFittingType_type); - IFC4_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 662, IFC4_IfcFlowSegmentType_type); - IFC4_IfcPlateType_type = new entity("IfcPlateType", false, 673, IFC4_IfcBuildingElementType_type); - IFC4_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 680, IFC4_IfcTessellatedFaceSet_type); - IFC4_IfcPolyline_type = new entity("IfcPolyline", false, 681, IFC4_IfcBoundedCurve_type); - IFC4_IfcPort_type = new entity("IfcPort", true, 683, IFC4_IfcProduct_type); - IFC4_IfcProcedure_type = new entity("IfcProcedure", false, 705, IFC4_IfcProcess_type); - IFC4_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 724, IFC4_IfcControl_type); - IFC4_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 721, IFC4_IfcFeatureElementAddition_type); - IFC4_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 749, IFC4_IfcFlowControllerType_type); - IFC4_IfcPumpType_type = new entity("IfcPumpType", false, 753, IFC4_IfcFlowMovingDeviceType_type); - IFC4_IfcRailingType_type = new entity("IfcRailingType", false, 764, IFC4_IfcBuildingElementType_type); - IFC4_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 768, IFC4_IfcBuildingElementType_type); - IFC4_IfcRampType_type = new entity("IfcRampType", false, 770, IFC4_IfcBuildingElementType_type); - IFC4_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 774, IFC4_IfcBSplineSurfaceWithKnots_type); - IFC4_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 792, IFC4_IfcElementComponent_type); - IFC4_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 793, IFC4_IfcElementComponentType_type); - IFC4_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 794, IFC4_IfcReinforcingElement_type); - IFC4_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 795, IFC4_IfcReinforcingElementType_type); - IFC4_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 797, IFC4_IfcRelDecomposes_type); - IFC4_IfcRoofType_type = new entity("IfcRoofType", false, 863, IFC4_IfcBuildingElementType_type); - IFC4_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 872, IFC4_IfcFlowTerminalType_type); - IFC4_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 875, IFC4_IfcSurfaceCurve_type); - IFC4_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 888, IFC4_IfcBuildingElementType_type); - IFC4_IfcSite_type = new entity("IfcSite", false, 901, IFC4_IfcSpatialStructureElement_type); - IFC4_IfcSlabType_type = new entity("IfcSlabType", false, 908, IFC4_IfcBuildingElementType_type); - IFC4_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 912, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcSpace_type = new entity("IfcSpace", false, 921, IFC4_IfcSpatialStructureElement_type); - IFC4_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 924, IFC4_IfcFlowTerminalType_type); - IFC4_IfcSpaceType_type = new entity("IfcSpaceType", false, 926, IFC4_IfcSpatialStructureElementType_type); - IFC4_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 942, IFC4_IfcFlowTerminalType_type); - IFC4_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 946, IFC4_IfcBuildingElementType_type); - IFC4_IfcStairType_type = new entity("IfcStairType", false, 948, IFC4_IfcBuildingElementType_type); - IFC4_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 951, IFC4_IfcStructuralActivity_type); - IFC4_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 955, IFC4_IfcStructuralItem_type); - IFC4_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 957, IFC4_IfcStructuralAction_type); - IFC4_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 959, IFC4_IfcStructuralConnection_type); - IFC4_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 960, IFC4_IfcStructuralMember_type); - IFC4_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 962, IFC4_IfcStructuralCurveMember_type); - IFC4_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 963, IFC4_IfcStructuralReaction_type); - IFC4_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 965, IFC4_IfcStructuralCurveAction_type); - IFC4_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 969, IFC4_IfcGroup_type); - IFC4_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 981, IFC4_IfcStructuralAction_type); - IFC4_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 982, IFC4_IfcStructuralConnection_type); - IFC4_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 983, IFC4_IfcStructuralReaction_type); - IFC4_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 985, IFC4_IfcGroup_type); - IFC4_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 986, IFC4_IfcStructuralAction_type); - IFC4_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 988, IFC4_IfcStructuralConnection_type); - IFC4_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 997, IFC4_IfcConstructionResource_type); - IFC4_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1004, IFC4_IfcFeatureElement_type); - IFC4_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1024, IFC4_IfcFlowControllerType_type); - IFC4_IfcSystem_type = new entity("IfcSystem", false, 1026, IFC4_IfcGroup_type); - IFC4_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1027, IFC4_IfcFurnishingElement_type); - IFC4_IfcTankType_type = new entity("IfcTankType", false, 1034, IFC4_IfcFlowStorageDeviceType_type); - IFC4_IfcTendon_type = new entity("IfcTendon", false, 1045, IFC4_IfcReinforcingElement_type); - IFC4_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1046, IFC4_IfcReinforcingElement_type); - IFC4_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1047, IFC4_IfcReinforcingElementType_type); - IFC4_IfcTendonType_type = new entity("IfcTendonType", false, 1049, IFC4_IfcReinforcingElementType_type); - IFC4_IfcTransformerType_type = new entity("IfcTransformerType", false, 1090, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcTransportElement_type = new entity("IfcTransportElement", false, 1094, IFC4_IfcElement_type); - IFC4_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1099, IFC4_IfcBoundedCurve_type); - IFC4_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1104, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1115, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcValveType_type = new entity("IfcValveType", false, 1123, IFC4_IfcFlowControllerType_type); - IFC4_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1131, IFC4_IfcElementComponent_type); - IFC4_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1132, IFC4_IfcElementComponentType_type); - IFC4_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1134, IFC4_IfcElement_type); - IFC4_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1136, IFC4_IfcFeatureElementSubtraction_type); - IFC4_IfcWallType_type = new entity("IfcWallType", false, 1143, IFC4_IfcBuildingElementType_type); - IFC4_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1149, IFC4_IfcFlowTerminalType_type); - IFC4_IfcWindowType_type = new entity("IfcWindowType", false, 1160, IFC4_IfcBuildingElementType_type); - IFC4_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1163, IFC4_IfcControl_type); - IFC4_IfcWorkControl_type = new entity("IfcWorkControl", true, 1165, IFC4_IfcControl_type); - IFC4_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1166, IFC4_IfcWorkControl_type); - IFC4_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1168, IFC4_IfcWorkControl_type); - IFC4_IfcZone_type = new entity("IfcZone", false, 1171, IFC4_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4_IfcCurveStyleFontSelect_type); - IFC4_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 240, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4_IfcPcurve_type); - items.push_back(IFC4_IfcSurfaceCurve_type); - IFC4_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 242, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcBoundedCurve_type); - items.push_back(IFC4_IfcEdgeCurve_type); - IFC4_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 243, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcElement_type); - items.push_back(IFC4_IfcStructuralItem_type); - IFC4_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 953, items); - } - IFC4_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4_IfcControl_type); - IFC4_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4_IfcFlowControllerType_type); - IFC4_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4_IfcFlowTerminalType_type); - IFC4_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcAsset_type = new entity("IfcAsset", false, 48, IFC4_IfcGroup_type); - IFC4_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 51, IFC4_IfcFlowTerminalType_type); - IFC4_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 85, IFC4_IfcBoundedCurve_type); - IFC4_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 87, IFC4_IfcBSplineCurve_type); - IFC4_IfcBeamType_type = new entity("IfcBeamType", false, 59, IFC4_IfcBuildingElementType_type); - IFC4_IfcBoilerType_type = new entity("IfcBoilerType", false, 67, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 75, IFC4_IfcCompositeCurveOnSurface_type); - IFC4_IfcBuildingElement_type = new entity("IfcBuildingElement", true, 92, IFC4_IfcElement_type); - IFC4_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 93, IFC4_IfcElementComponent_type); - IFC4_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 94, IFC4_IfcElementComponentType_type); - IFC4_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 96, IFC4_IfcBuildingElement_type); - IFC4_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 97, IFC4_IfcBuildingElementType_type); - IFC4_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 101, IFC4_IfcSystem_type); - IFC4_IfcBurnerType_type = new entity("IfcBurnerType", false, 104, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 107, IFC4_IfcFlowFittingType_type); - IFC4_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 110, IFC4_IfcFlowSegmentType_type); - IFC4_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 113, IFC4_IfcFlowFittingType_type); - IFC4_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 116, IFC4_IfcFlowSegmentType_type); - IFC4_IfcChillerType_type = new entity("IfcChillerType", false, 131, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcChimney_type = new entity("IfcChimney", false, 133, IFC4_IfcBuildingElement_type); - IFC4_IfcCircle_type = new entity("IfcCircle", false, 136, IFC4_IfcConic_type); - IFC4_IfcCivilElement_type = new entity("IfcCivilElement", false, 139, IFC4_IfcElement_type); - IFC4_IfcCoilType_type = new entity("IfcCoilType", false, 147, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcColumn_type = new entity("IfcColumn", false, 154, IFC4_IfcBuildingElement_type); - IFC4_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 155, IFC4_IfcColumn_type); - IFC4_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 159, IFC4_IfcFlowTerminalType_type); - IFC4_IfcCompressorType_type = new entity("IfcCompressorType", false, 171, IFC4_IfcFlowMovingDeviceType_type); - IFC4_IfcCondenserType_type = new entity("IfcCondenserType", false, 174, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 187, IFC4_IfcConstructionResource_type); - IFC4_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 190, IFC4_IfcConstructionResource_type); - IFC4_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 193, IFC4_IfcConstructionResource_type); - IFC4_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 208, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 211, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcCovering_type = new entity("IfcCovering", false, 222, IFC4_IfcBuildingElement_type); - IFC4_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 233, IFC4_IfcBuildingElement_type); - IFC4_IfcDamperType_type = new entity("IfcDamperType", false, 251, IFC4_IfcFlowControllerType_type); - IFC4_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 269, IFC4_IfcElementComponent_type); - IFC4_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 270, IFC4_IfcElementComponentType_type); - IFC4_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 273, IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 277, IFC4_IfcDistributionElementType_type); - IFC4_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 278, IFC4_IfcElement_type); - IFC4_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 280, IFC4_IfcDistributionElement_type); - IFC4_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 282, IFC4_IfcPort_type); - IFC4_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 284, IFC4_IfcSystem_type); - IFC4_IfcDoor_type = new entity("IfcDoor", false, 292, IFC4_IfcBuildingElement_type); - IFC4_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 297, IFC4_IfcDoor_type); - IFC4_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 308, IFC4_IfcFlowFittingType_type); - IFC4_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 311, IFC4_IfcFlowSegmentType_type); - IFC4_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 314, IFC4_IfcFlowTreatmentDeviceType_type); - IFC4_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 322, IFC4_IfcFlowTerminalType_type); - IFC4_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 329, IFC4_IfcFlowControllerType_type); - IFC4_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 332, IFC4_IfcFlowStorageDeviceType_type); - IFC4_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 335, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 338, IFC4_IfcEnergyConversionDeviceType_type); - IFC4_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 342, IFC4_IfcFlowControllerType_type); - IFC4_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 357, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcEngine_type = new entity("IfcEngine", false, 360, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 363, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcEvaporator_type = new entity("IfcEvaporator", false, 366, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 381, IFC4_IfcExternalSpatialStructureElement_type); - IFC4_IfcFanType_type = new entity("IfcFanType", false, 395, IFC4_IfcFlowMovingDeviceType_type); - IFC4_IfcFilterType_type = new entity("IfcFilterType", false, 408, IFC4_IfcFlowTreatmentDeviceType_type); - IFC4_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 411, IFC4_IfcFlowTerminalType_type); - IFC4_IfcFlowController_type = new entity("IfcFlowController", false, 414, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 417, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 420, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 422, IFC4_IfcFlowController_type); - IFC4_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 425, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 427, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 429, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 431, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 433, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcFooting_type = new entity("IfcFooting", false, 438, IFC4_IfcBuildingElement_type); - IFC4_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 468, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcHumidifier_type = new entity("IfcHumidifier", false, 473, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcInterceptor_type = new entity("IfcInterceptor", false, 488, IFC4_IfcFlowTreatmentDevice_type); - IFC4_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 500, IFC4_IfcFlowFitting_type); - IFC4_IfcLamp_type = new entity("IfcLamp", false, 510, IFC4_IfcFlowTerminal_type); - IFC4_IfcLightFixture_type = new entity("IfcLightFixture", false, 524, IFC4_IfcFlowTerminal_type); - IFC4_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 583, IFC4_IfcFlowTerminal_type); - IFC4_IfcMember_type = new entity("IfcMember", false, 586, IFC4_IfcBuildingElement_type); - IFC4_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 587, IFC4_IfcMember_type); - IFC4_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 606, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 632, IFC4_IfcBoundaryCurve_type); - IFC4_IfcOutlet_type = new entity("IfcOutlet", false, 633, IFC4_IfcFlowTerminal_type); - IFC4_IfcPile_type = new entity("IfcPile", false, 654, IFC4_IfcBuildingElement_type); - IFC4_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 658, IFC4_IfcFlowFitting_type); - IFC4_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 661, IFC4_IfcFlowSegment_type); - IFC4_IfcPlate_type = new entity("IfcPlate", false, 671, IFC4_IfcBuildingElement_type); - IFC4_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 672, IFC4_IfcPlate_type); - IFC4_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 745, IFC4_IfcFlowController_type); - IFC4_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 747, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcPump_type = new entity("IfcPump", false, 752, IFC4_IfcFlowMovingDevice_type); - IFC4_IfcRailing_type = new entity("IfcRailing", false, 763, IFC4_IfcBuildingElement_type); - IFC4_IfcRamp_type = new entity("IfcRamp", false, 766, IFC4_IfcBuildingElement_type); - IFC4_IfcRampFlight_type = new entity("IfcRampFlight", false, 767, IFC4_IfcBuildingElement_type); - IFC4_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 773, IFC4_IfcBSplineCurveWithKnots_type); - IFC4_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 787, IFC4_IfcReinforcingElement_type); - IFC4_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 790, IFC4_IfcReinforcingElementType_type); - IFC4_IfcRoof_type = new entity("IfcRoof", false, 862, IFC4_IfcBuildingElement_type); - IFC4_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 871, IFC4_IfcFlowTerminal_type); - IFC4_IfcSensorType_type = new entity("IfcSensorType", false, 884, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 887, IFC4_IfcBuildingElement_type); - IFC4_IfcSlab_type = new entity("IfcSlab", false, 905, IFC4_IfcBuildingElement_type); - IFC4_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 906, IFC4_IfcSlab_type); - IFC4_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 907, IFC4_IfcSlab_type); - IFC4_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 911, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 923, IFC4_IfcFlowTerminal_type); - IFC4_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 941, IFC4_IfcFlowTerminal_type); - IFC4_IfcStair_type = new entity("IfcStair", false, 944, IFC4_IfcBuildingElement_type); - IFC4_IfcStairFlight_type = new entity("IfcStairFlight", false, 945, IFC4_IfcBuildingElement_type); - IFC4_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 954, IFC4_IfcSystem_type); - IFC4_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 967, IFC4_IfcStructuralLoadGroup_type); - IFC4_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 980, IFC4_IfcStructuralSurfaceAction_type); - IFC4_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1023, IFC4_IfcFlowController_type); - IFC4_IfcTank_type = new entity("IfcTank", false, 1033, IFC4_IfcFlowStorageDevice_type); - IFC4_IfcTransformer_type = new entity("IfcTransformer", false, 1089, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1103, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1112, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1114, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcValve_type = new entity("IfcValve", false, 1122, IFC4_IfcFlowController_type); - IFC4_IfcWall_type = new entity("IfcWall", false, 1140, IFC4_IfcBuildingElement_type); - IFC4_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1141, IFC4_IfcWall_type); - IFC4_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1142, IFC4_IfcWall_type); - IFC4_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1148, IFC4_IfcFlowTerminal_type); - IFC4_IfcWindow_type = new entity("IfcWindow", false, 1151, IFC4_IfcBuildingElement_type); - IFC4_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1156, IFC4_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4_IfcExternalSpatialElement_type); - items.push_back(IFC4_IfcSpace_type); - IFC4_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 922, items); - } - IFC4_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4_IfcFlowTerminal_type); - IFC4_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4_IfcFlowController_type); - IFC4_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 50, IFC4_IfcFlowTerminal_type); - IFC4_IfcBeam_type = new entity("IfcBeam", false, 57, IFC4_IfcBuildingElement_type); - IFC4_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 58, IFC4_IfcBeam_type); - IFC4_IfcBoiler_type = new entity("IfcBoiler", false, 66, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcBurner_type = new entity("IfcBurner", false, 103, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 106, IFC4_IfcFlowFitting_type); - IFC4_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 109, IFC4_IfcFlowSegment_type); - IFC4_IfcCableFitting_type = new entity("IfcCableFitting", false, 112, IFC4_IfcFlowFitting_type); - IFC4_IfcCableSegment_type = new entity("IfcCableSegment", false, 115, IFC4_IfcFlowSegment_type); - IFC4_IfcChiller_type = new entity("IfcChiller", false, 130, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcCoil_type = new entity("IfcCoil", false, 146, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 158, IFC4_IfcFlowTerminal_type); - IFC4_IfcCompressor_type = new entity("IfcCompressor", false, 170, IFC4_IfcFlowMovingDevice_type); - IFC4_IfcCondenser_type = new entity("IfcCondenser", false, 173, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcControllerType_type = new entity("IfcControllerType", false, 203, IFC4_IfcDistributionControlElementType_type); - IFC4_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 207, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 210, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcDamper_type = new entity("IfcDamper", false, 250, IFC4_IfcFlowController_type); - IFC4_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 272, IFC4_IfcDistributionFlowElement_type); - IFC4_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 275, IFC4_IfcDistributionSystem_type); - IFC4_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 276, IFC4_IfcDistributionElement_type); - IFC4_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 307, IFC4_IfcFlowFitting_type); - IFC4_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 310, IFC4_IfcFlowSegment_type); - IFC4_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 313, IFC4_IfcFlowTreatmentDevice_type); - IFC4_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 321, IFC4_IfcFlowTerminal_type); - IFC4_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 328, IFC4_IfcFlowController_type); - IFC4_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 331, IFC4_IfcFlowStorageDevice_type); - IFC4_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 334, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 337, IFC4_IfcEnergyConversionDevice_type); - IFC4_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 341, IFC4_IfcFlowController_type); - IFC4_IfcFan_type = new entity("IfcFan", false, 394, IFC4_IfcFlowMovingDevice_type); - IFC4_IfcFilter_type = new entity("IfcFilter", false, 407, IFC4_IfcFlowTreatmentDevice_type); - IFC4_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 410, IFC4_IfcFlowTerminal_type); - IFC4_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 419, IFC4_IfcDistributionControlElement_type); - IFC4_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 746, IFC4_IfcDistributionControlElement_type); - IFC4_IfcSensor_type = new entity("IfcSensor", false, 883, IFC4_IfcDistributionControlElement_type); - IFC4_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1111, IFC4_IfcDistributionControlElement_type); - IFC4_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4_IfcDistributionControlElement_type); - IFC4_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4_IfcDistributionControlElement_type); - IFC4_IfcController_type = new entity("IfcController", false, 202, IFC4_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcLengthMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcLengthMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcCompositeCurveSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Transition", new named_type(IFC4_IfcTransitionCode_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelorDraughting", new named_type(IFC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4_IfcParameterValue_type), true)); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Eastings", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4_IfcReal_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4_IfcCartesianPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcPresentationStyleAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new simple_type(simple_type::logical_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStyleAssignmentSelect_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4_IfcParameterValue_type), true)); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTransportElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTransportElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToActor_type, IFC4_IfcRelAssignsToActor_type->attributes()[0])); - IFC4_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4_IfcPerson_type, IFC4_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4_IfcOrganization_type, IFC4_IfcOrganization_type->attributes()[4])); - IFC4_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesApproval_type, IFC4_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4_IfcResourceApprovalRelationship_type, IFC4_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4_IfcApprovalRelationship_type, IFC4_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4_IfcApprovalRelationship_type, IFC4_IfcApprovalRelationship_type->attributes()[0])); - IFC4_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesClassification_type, IFC4_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcClassificationReference_type, IFC4_IfcClassificationReference_type->attributes()[0])); - IFC4_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesClassification_type, IFC4_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcClassificationReference_type, IFC4_IfcClassificationReference_type->attributes()[0])); - IFC4_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4_IfcCompositeCurve_type, IFC4_IfcCompositeCurve_type->attributes()[0])); - IFC4_IfcCompositeCurveSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4_IfcResourceConstraintRelationship_type, IFC4_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByProperties_type, IFC4_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDeclares_type, IFC4_IfcRelDeclares_type->attributes()[0])); - IFC4_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToControl_type, IFC4_IfcRelAssignsToControl_type->attributes()[0])); - IFC4_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4_IfcCoordinateOperation_type, IFC4_IfcCoordinateOperation_type->attributes()[0])); - IFC4_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4_IfcRelCoversSpaces_type, IFC4_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4_IfcRelCoversBldgElements_type, IFC4_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4_IfcRelFlowControlElements_type, IFC4_IfcRelFlowControlElements_type->attributes()[0])); - IFC4_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsPortToElement_type, IFC4_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4_IfcRelFlowControlElements_type, IFC4_IfcRelFlowControlElements_type->attributes()[1])); - IFC4_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesDocument_type, IFC4_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcDocumentReference_type, IFC4_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4_IfcDocumentInformationRelationship_type, IFC4_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4_IfcDocumentInformationRelationship_type, IFC4_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesDocument_type, IFC4_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4_IfcRelFillsElement_type, IFC4_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsElements_type, IFC4_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4_IfcRelInterferesElements_type, IFC4_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4_IfcRelInterferesElements_type, IFC4_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4_IfcRelProjectsElement_type, IFC4_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4_IfcRelReferencedInSpatialStructure_type, IFC4_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4_IfcRelVoidsElement_type, IFC4_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsWithRealizingElements_type, IFC4_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary_type, IFC4_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsElements_type, IFC4_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4_IfcRelCoversBldgElements_type, IFC4_IfcRelCoversBldgElements_type->attributes()[0])); - IFC4_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary_type, IFC4_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4_IfcTextureMap_type, IFC4_IfcTextureMap_type->attributes()[1])); - IFC4_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4_IfcRelProjectsElement_type, IFC4_IfcRelProjectsElement_type->attributes()[1])); - IFC4_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4_IfcRelVoidsElement_type, IFC4_IfcRelVoidsElement_type->attributes()[1])); - IFC4_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4_IfcGeometricRepresentationSubContext_type, IFC4_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4_IfcCoordinateOperation_type, IFC4_IfcCoordinateOperation_type->attributes()[0])); - IFC4_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4_IfcGrid_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4_IfcGrid_type, IFC4_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4_IfcGrid_type, IFC4_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4_IfcGrid_type, IFC4_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4_IfcVirtualGridIntersection_type, IFC4_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToGroup_type, IFC4_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4_IfcPolygonalFaceSet_type, IFC4_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesLibrary_type, IFC4_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcLibraryReference_type, IFC4_IfcLibraryReference_type->attributes()[2])); - IFC4_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesLibrary_type, IFC4_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4_IfcMaterialDefinitionRepresentation_type, IFC4_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4_IfcMaterialRelationship_type, IFC4_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4_IfcMaterialRelationship_type, IFC4_IfcMaterialRelationship_type->attributes()[0])); - IFC4_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4_IfcMaterialConstituentSet_type, IFC4_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesMaterial_type, IFC4_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4_IfcMaterialProperties_type, IFC4_IfcMaterialProperties_type->attributes()[0])); - IFC4_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4_IfcMaterialLayerSet_type, IFC4_IfcMaterialLayerSet_type->attributes()[0])); - IFC4_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4_IfcMaterialProfileSet_type, IFC4_IfcMaterialProfileSet_type->attributes()[2])); - IFC4_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4_IfcRelAssociatesMaterial_type, IFC4_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4_IfcRelDefinesByObject_type, IFC4_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByObject_type, IFC4_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4_IfcRelDefinesByType_type, IFC4_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByProperties_type, IFC4_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssigns_type, IFC4_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4_IfcRelNests_type, IFC4_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelNests_type, IFC4_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4_IfcRelDeclares_type, IFC4_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAggregates_type, IFC4_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4_IfcRelAggregates_type, IFC4_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociates_type, IFC4_IfcRelAssociates_type->attributes()[0])); - IFC4_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4_IfcProduct_type, IFC4_IfcProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedByPlacements", inverse_attribute::set_type, 0, -1, IFC4_IfcLocalPlacement_type, IFC4_IfcLocalPlacement_type->attributes()[0])); - IFC4_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4_IfcRelFillsElement_type, IFC4_IfcRelFillsElement_type->attributes()[0])); - IFC4_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcOrganizationRelationship_type, IFC4_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4_IfcOrganizationRelationship_type, IFC4_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4_IfcPersonAndOrganization_type, IFC4_IfcPersonAndOrganization_type->attributes()[1])); - IFC4_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4_IfcPersonAndOrganization_type, IFC4_IfcPersonAndOrganization_type->attributes()[0])); - IFC4_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4_IfcPhysicalComplexQuantity_type, IFC4_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsPortToElement_type, IFC4_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsPorts_type, IFC4_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsPorts_type, IFC4_IfcRelConnectsPorts_type->attributes()[0])); - IFC4_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4_IfcRelSequence_type, IFC4_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4_IfcRelSequence_type, IFC4_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProcess_type, IFC4_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProduct_type, IFC4_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4_IfcProduct_type, IFC4_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4_IfcShapeAspect_type, IFC4_IfcShapeAspect_type->attributes()[4])); - IFC4_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4_IfcProfileProperties_type, IFC4_IfcProfileProperties_type->attributes()[0])); - IFC4_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4_IfcPropertySet_type, IFC4_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4_IfcPropertyDependencyRelationship_type, IFC4_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4_IfcPropertyDependencyRelationship_type, IFC4_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4_IfcComplexProperty_type, IFC4_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4_IfcResourceConstraintRelationship_type, IFC4_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4_IfcResourceApprovalRelationship_type, IFC4_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4_IfcRelDeclares_type, IFC4_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociates_type, IFC4_IfcRelAssociates_type->attributes()[0])); - IFC4_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4_IfcTypeObject_type, IFC4_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByTemplate_type, IFC4_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByProperties_type, IFC4_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByTemplate_type, IFC4_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4_IfcComplexPropertyTemplate_type, IFC4_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4_IfcPropertySetTemplate_type, IFC4_IfcPropertySetTemplate_type->attributes()[2])); - IFC4_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary1stLevel_type, IFC4_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4_IfcRelSpaceBoundary2ndLevel_type, IFC4_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4_IfcRepresentationMap_type, IFC4_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4_IfcPresentationLayerAssignment_type, IFC4_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4_IfcProductRepresentation_type, IFC4_IfcProductRepresentation_type->attributes()[2])); - IFC4_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4_IfcRepresentation_type, IFC4_IfcRepresentation_type->attributes()[0])); - IFC4_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4_IfcPresentationLayerAssignment_type, IFC4_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4_IfcStyledItem_type, IFC4_IfcStyledItem_type->attributes()[0])); - IFC4_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4_IfcShapeAspect_type, IFC4_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4_IfcMappedItem_type, IFC4_IfcMappedItem_type->attributes()[0])); - IFC4_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToResource_type, IFC4_IfcRelAssignsToResource_type->attributes()[0])); - IFC4_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4_IfcShapeAspect_type, IFC4_IfcShapeAspect_type->attributes()[0])); - IFC4_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4_IfcRelCoversSpaces_type, IFC4_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary_type, IFC4_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4_IfcRelServicesBuildings_type, IFC4_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4_IfcRelReferencedInSpatialStructure_type, IFC4_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsStructuralActivity_type, IFC4_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4_IfcRelConnectsStructuralMember_type, IFC4_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsStructuralActivity_type, IFC4_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4_IfcStructuralResultGroup_type, IFC4_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4_IfcStructuralAnalysisModel_type, IFC4_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsStructuralMember_type, IFC4_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4_IfcStructuralAnalysisModel_type, IFC4_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcTextureCoordinate_type, IFC4_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4_IfcSurfaceStyleWithTextures_type, IFC4_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4_IfcRelServicesBuildings_type, IFC4_IfcRelServicesBuildings_type->attributes()[0])); - IFC4_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4_IfcIndexedColourMap_type, IFC4_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4_IfcIndexedTextureMap_type, IFC4_IfcIndexedTextureMap_type->attributes()[0])); - IFC4_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4_IfcRelDefinesByType_type, IFC4_IfcRelDefinesByType_type->attributes()[1])); - IFC4_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProcess_type, IFC4_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProduct_type, IFC4_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToResource_type, IFC4_IfcRelAssignsToResource_type->attributes()[0])); - IFC4_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4_IfcActionRequest_type);defs.push_back(IFC4_IfcCostItem_type);defs.push_back(IFC4_IfcCostSchedule_type);defs.push_back(IFC4_IfcPerformanceHistory_type);defs.push_back(IFC4_IfcPermit_type);defs.push_back(IFC4_IfcProjectOrder_type);defs.push_back(IFC4_IfcWorkCalendar_type);defs.push_back(IFC4_IfcWorkControl_type); - IFC4_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcActor_type);defs.push_back(IFC4_IfcControl_type);defs.push_back(IFC4_IfcGroup_type);defs.push_back(IFC4_IfcProcess_type);defs.push_back(IFC4_IfcProduct_type);defs.push_back(IFC4_IfcResource_type); - IFC4_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4_IfcActuator_type);defs.push_back(IFC4_IfcAlarm_type);defs.push_back(IFC4_IfcController_type);defs.push_back(IFC4_IfcFlowInstrument_type);defs.push_back(IFC4_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4_IfcSensor_type);defs.push_back(IFC4_IfcUnitaryControlElement_type); - IFC4_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4_IfcActuatorType_type);defs.push_back(IFC4_IfcAlarmType_type);defs.push_back(IFC4_IfcControllerType_type);defs.push_back(IFC4_IfcFlowInstrumentType_type);defs.push_back(IFC4_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4_IfcSensorType_type);defs.push_back(IFC4_IfcUnitaryControlElementType_type); - IFC4_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcAdvancedBrep_type);defs.push_back(IFC4_IfcFacetedBrep_type); - IFC4_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcAdvancedBrepWithVoids_type); - IFC4_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcAdvancedFace_type); - IFC4_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(13); - defs.push_back(IFC4_IfcAirTerminal_type);defs.push_back(IFC4_IfcAudioVisualAppliance_type);defs.push_back(IFC4_IfcCommunicationsAppliance_type);defs.push_back(IFC4_IfcElectricAppliance_type);defs.push_back(IFC4_IfcFireSuppressionTerminal_type);defs.push_back(IFC4_IfcLamp_type);defs.push_back(IFC4_IfcLightFixture_type);defs.push_back(IFC4_IfcMedicalDevice_type);defs.push_back(IFC4_IfcOutlet_type);defs.push_back(IFC4_IfcSanitaryTerminal_type);defs.push_back(IFC4_IfcSpaceHeater_type);defs.push_back(IFC4_IfcStackTerminal_type);defs.push_back(IFC4_IfcWasteTerminal_type); - IFC4_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4_IfcAirTerminalBox_type);defs.push_back(IFC4_IfcDamper_type);defs.push_back(IFC4_IfcElectricDistributionBoard_type);defs.push_back(IFC4_IfcElectricTimeControl_type);defs.push_back(IFC4_IfcFlowMeter_type);defs.push_back(IFC4_IfcProtectiveDevice_type);defs.push_back(IFC4_IfcSwitchingDevice_type);defs.push_back(IFC4_IfcValve_type); - IFC4_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4_IfcAirTerminalBoxType_type);defs.push_back(IFC4_IfcDamperType_type);defs.push_back(IFC4_IfcElectricDistributionBoardType_type);defs.push_back(IFC4_IfcElectricTimeControlType_type);defs.push_back(IFC4_IfcFlowMeterType_type);defs.push_back(IFC4_IfcProtectiveDeviceType_type);defs.push_back(IFC4_IfcSwitchingDeviceType_type);defs.push_back(IFC4_IfcValveType_type); - IFC4_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(13); - defs.push_back(IFC4_IfcAirTerminalType_type);defs.push_back(IFC4_IfcAudioVisualApplianceType_type);defs.push_back(IFC4_IfcCommunicationsApplianceType_type);defs.push_back(IFC4_IfcElectricApplianceType_type);defs.push_back(IFC4_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4_IfcLampType_type);defs.push_back(IFC4_IfcLightFixtureType_type);defs.push_back(IFC4_IfcMedicalDeviceType_type);defs.push_back(IFC4_IfcOutletType_type);defs.push_back(IFC4_IfcSanitaryTerminalType_type);defs.push_back(IFC4_IfcSpaceHeaterType_type);defs.push_back(IFC4_IfcStackTerminalType_type);defs.push_back(IFC4_IfcWasteTerminalType_type); - IFC4_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4_IfcBoiler_type);defs.push_back(IFC4_IfcBurner_type);defs.push_back(IFC4_IfcChiller_type);defs.push_back(IFC4_IfcCoil_type);defs.push_back(IFC4_IfcCondenser_type);defs.push_back(IFC4_IfcCooledBeam_type);defs.push_back(IFC4_IfcCoolingTower_type);defs.push_back(IFC4_IfcElectricGenerator_type);defs.push_back(IFC4_IfcElectricMotor_type);defs.push_back(IFC4_IfcEngine_type);defs.push_back(IFC4_IfcEvaporativeCooler_type);defs.push_back(IFC4_IfcEvaporator_type);defs.push_back(IFC4_IfcHeatExchanger_type);defs.push_back(IFC4_IfcHumidifier_type);defs.push_back(IFC4_IfcMotorConnection_type);defs.push_back(IFC4_IfcSolarDevice_type);defs.push_back(IFC4_IfcTransformer_type);defs.push_back(IFC4_IfcTubeBundle_type);defs.push_back(IFC4_IfcUnitaryEquipment_type); - IFC4_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4_IfcBoilerType_type);defs.push_back(IFC4_IfcBurnerType_type);defs.push_back(IFC4_IfcChillerType_type);defs.push_back(IFC4_IfcCoilType_type);defs.push_back(IFC4_IfcCondenserType_type);defs.push_back(IFC4_IfcCooledBeamType_type);defs.push_back(IFC4_IfcCoolingTowerType_type);defs.push_back(IFC4_IfcElectricGeneratorType_type);defs.push_back(IFC4_IfcElectricMotorType_type);defs.push_back(IFC4_IfcEngineType_type);defs.push_back(IFC4_IfcEvaporativeCoolerType_type);defs.push_back(IFC4_IfcEvaporatorType_type);defs.push_back(IFC4_IfcHeatExchangerType_type);defs.push_back(IFC4_IfcHumidifierType_type);defs.push_back(IFC4_IfcMotorConnectionType_type);defs.push_back(IFC4_IfcSolarDeviceType_type);defs.push_back(IFC4_IfcTransformerType_type);defs.push_back(IFC4_IfcTubeBundleType_type);defs.push_back(IFC4_IfcUnitaryEquipmentType_type); - IFC4_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4_IfcAnnotation_type);defs.push_back(IFC4_IfcElement_type);defs.push_back(IFC4_IfcGrid_type);defs.push_back(IFC4_IfcPort_type);defs.push_back(IFC4_IfcProxy_type);defs.push_back(IFC4_IfcSpatialElement_type);defs.push_back(IFC4_IfcStructuralActivity_type);defs.push_back(IFC4_IfcStructuralItem_type); - IFC4_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(25); - defs.push_back(IFC4_IfcAnnotationFillArea_type);defs.push_back(IFC4_IfcBooleanResult_type);defs.push_back(IFC4_IfcBoundingBox_type);defs.push_back(IFC4_IfcCartesianPointList_type);defs.push_back(IFC4_IfcCartesianTransformationOperator_type);defs.push_back(IFC4_IfcCompositeCurveSegment_type);defs.push_back(IFC4_IfcCsgPrimitive3D_type);defs.push_back(IFC4_IfcCurve_type);defs.push_back(IFC4_IfcDirection_type);defs.push_back(IFC4_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4_IfcFillAreaStyleHatching_type);defs.push_back(IFC4_IfcFillAreaStyleTiles_type);defs.push_back(IFC4_IfcGeometricSet_type);defs.push_back(IFC4_IfcHalfSpaceSolid_type);defs.push_back(IFC4_IfcLightSource_type);defs.push_back(IFC4_IfcPlacement_type);defs.push_back(IFC4_IfcPlanarExtent_type);defs.push_back(IFC4_IfcPoint_type);defs.push_back(IFC4_IfcSectionedSpine_type);defs.push_back(IFC4_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4_IfcSolidModel_type);defs.push_back(IFC4_IfcSurface_type);defs.push_back(IFC4_IfcTessellatedItem_type);defs.push_back(IFC4_IfcTextLiteral_type);defs.push_back(IFC4_IfcVector_type); - IFC4_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4_IfcApprovalRelationship_type);defs.push_back(IFC4_IfcCurrencyRelationship_type);defs.push_back(IFC4_IfcDocumentInformationRelationship_type);defs.push_back(IFC4_IfcExternalReferenceRelationship_type);defs.push_back(IFC4_IfcMaterialRelationship_type);defs.push_back(IFC4_IfcOrganizationRelationship_type);defs.push_back(IFC4_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4_IfcResourceApprovalRelationship_type);defs.push_back(IFC4_IfcResourceConstraintRelationship_type); - IFC4_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4_IfcCompositeProfileDef_type);defs.push_back(IFC4_IfcDerivedProfileDef_type);defs.push_back(IFC4_IfcParameterizedProfileDef_type); - IFC4_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcArbitraryProfileDefWithVoids_type); - IFC4_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcAsset_type);defs.push_back(IFC4_IfcInventory_type);defs.push_back(IFC4_IfcStructuralLoadGroup_type);defs.push_back(IFC4_IfcStructuralResultGroup_type);defs.push_back(IFC4_IfcSystem_type); - IFC4_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4_IfcCShapeProfileDef_type);defs.push_back(IFC4_IfcCircleProfileDef_type);defs.push_back(IFC4_IfcEllipseProfileDef_type);defs.push_back(IFC4_IfcIShapeProfileDef_type);defs.push_back(IFC4_IfcLShapeProfileDef_type);defs.push_back(IFC4_IfcRectangleProfileDef_type);defs.push_back(IFC4_IfcTShapeProfileDef_type);defs.push_back(IFC4_IfcTrapeziumProfileDef_type);defs.push_back(IFC4_IfcUShapeProfileDef_type);defs.push_back(IFC4_IfcZShapeProfileDef_type); - IFC4_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcAxis1Placement_type);defs.push_back(IFC4_IfcAxis2Placement2D_type);defs.push_back(IFC4_IfcAxis2Placement3D_type); - IFC4_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcBSplineCurve_type);defs.push_back(IFC4_IfcCompositeCurve_type);defs.push_back(IFC4_IfcIndexedPolyCurve_type);defs.push_back(IFC4_IfcPolyline_type);defs.push_back(IFC4_IfcTrimmedCurve_type); - IFC4_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcBSplineCurveWithKnots_type); - IFC4_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcBSplineSurface_type);defs.push_back(IFC4_IfcCurveBoundedPlane_type);defs.push_back(IFC4_IfcCurveBoundedSurface_type);defs.push_back(IFC4_IfcRectangularTrimmedSurface_type); - IFC4_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcBSplineSurfaceWithKnots_type); - IFC4_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(21); - defs.push_back(IFC4_IfcBeam_type);defs.push_back(IFC4_IfcBuildingElementProxy_type);defs.push_back(IFC4_IfcChimney_type);defs.push_back(IFC4_IfcColumn_type);defs.push_back(IFC4_IfcCovering_type);defs.push_back(IFC4_IfcCurtainWall_type);defs.push_back(IFC4_IfcDoor_type);defs.push_back(IFC4_IfcFooting_type);defs.push_back(IFC4_IfcMember_type);defs.push_back(IFC4_IfcPile_type);defs.push_back(IFC4_IfcPlate_type);defs.push_back(IFC4_IfcRailing_type);defs.push_back(IFC4_IfcRamp_type);defs.push_back(IFC4_IfcRampFlight_type);defs.push_back(IFC4_IfcRoof_type);defs.push_back(IFC4_IfcShadingDevice_type);defs.push_back(IFC4_IfcSlab_type);defs.push_back(IFC4_IfcStair_type);defs.push_back(IFC4_IfcStairFlight_type);defs.push_back(IFC4_IfcWall_type);defs.push_back(IFC4_IfcWindow_type); - IFC4_IfcBuildingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcBeamStandardCase_type); - IFC4_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(21); - defs.push_back(IFC4_IfcBeamType_type);defs.push_back(IFC4_IfcBuildingElementProxyType_type);defs.push_back(IFC4_IfcChimneyType_type);defs.push_back(IFC4_IfcColumnType_type);defs.push_back(IFC4_IfcCoveringType_type);defs.push_back(IFC4_IfcCurtainWallType_type);defs.push_back(IFC4_IfcDoorType_type);defs.push_back(IFC4_IfcFootingType_type);defs.push_back(IFC4_IfcMemberType_type);defs.push_back(IFC4_IfcPileType_type);defs.push_back(IFC4_IfcPlateType_type);defs.push_back(IFC4_IfcRailingType_type);defs.push_back(IFC4_IfcRampFlightType_type);defs.push_back(IFC4_IfcRampType_type);defs.push_back(IFC4_IfcRoofType_type);defs.push_back(IFC4_IfcShadingDeviceType_type);defs.push_back(IFC4_IfcSlabType_type);defs.push_back(IFC4_IfcStairFlightType_type);defs.push_back(IFC4_IfcStairType_type);defs.push_back(IFC4_IfcWallType_type);defs.push_back(IFC4_IfcWindowType_type); - IFC4_IfcBuildingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcBlobTexture_type);defs.push_back(IFC4_IfcImageTexture_type);defs.push_back(IFC4_IfcPixelTexture_type); - IFC4_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcBlock_type);defs.push_back(IFC4_IfcRectangularPyramid_type);defs.push_back(IFC4_IfcRightCircularCone_type);defs.push_back(IFC4_IfcRightCircularCylinder_type);defs.push_back(IFC4_IfcSphere_type); - IFC4_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcBooleanClippingResult_type); - IFC4_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcBoundaryCurve_type); - IFC4_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4_IfcBoundaryFaceCondition_type);defs.push_back(IFC4_IfcBoundaryNodeCondition_type); - IFC4_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcBoundaryNodeConditionWarping_type); - IFC4_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4_IfcBoundedCurve_type);defs.push_back(IFC4_IfcConic_type);defs.push_back(IFC4_IfcLine_type);defs.push_back(IFC4_IfcOffsetCurve2D_type);defs.push_back(IFC4_IfcOffsetCurve3D_type);defs.push_back(IFC4_IfcPcurve_type);defs.push_back(IFC4_IfcSurfaceCurve_type); - IFC4_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcBoundedSurface_type);defs.push_back(IFC4_IfcElementarySurface_type);defs.push_back(IFC4_IfcSweptSurface_type); - IFC4_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcBoxedHalfSpace_type);defs.push_back(IFC4_IfcPolygonalBoundedHalfSpace_type); - IFC4_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcBuilding_type);defs.push_back(IFC4_IfcBuildingStorey_type);defs.push_back(IFC4_IfcSite_type);defs.push_back(IFC4_IfcSpace_type); - IFC4_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(10); - defs.push_back(IFC4_IfcBuildingElement_type);defs.push_back(IFC4_IfcCivilElement_type);defs.push_back(IFC4_IfcDistributionElement_type);defs.push_back(IFC4_IfcElementAssembly_type);defs.push_back(IFC4_IfcElementComponent_type);defs.push_back(IFC4_IfcFeatureElement_type);defs.push_back(IFC4_IfcFurnishingElement_type);defs.push_back(IFC4_IfcGeographicElement_type);defs.push_back(IFC4_IfcTransportElement_type);defs.push_back(IFC4_IfcVirtualElement_type); - IFC4_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcBuildingElementPart_type);defs.push_back(IFC4_IfcDiscreteAccessory_type);defs.push_back(IFC4_IfcFastener_type);defs.push_back(IFC4_IfcMechanicalFastener_type);defs.push_back(IFC4_IfcReinforcingElement_type);defs.push_back(IFC4_IfcVibrationIsolator_type); - IFC4_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcBuildingElementPartType_type);defs.push_back(IFC4_IfcDiscreteAccessoryType_type);defs.push_back(IFC4_IfcFastenerType_type);defs.push_back(IFC4_IfcMechanicalFastenerType_type);defs.push_back(IFC4_IfcReinforcingElementType_type);defs.push_back(IFC4_IfcVibrationIsolatorType_type); - IFC4_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4_IfcBuildingElementType_type);defs.push_back(IFC4_IfcCivilElementType_type);defs.push_back(IFC4_IfcDistributionElementType_type);defs.push_back(IFC4_IfcElementAssemblyType_type);defs.push_back(IFC4_IfcElementComponentType_type);defs.push_back(IFC4_IfcFurnishingElementType_type);defs.push_back(IFC4_IfcGeographicElementType_type);defs.push_back(IFC4_IfcTransportElementType_type); - IFC4_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcBuildingSystem_type);defs.push_back(IFC4_IfcDistributionSystem_type);defs.push_back(IFC4_IfcStructuralAnalysisModel_type);defs.push_back(IFC4_IfcZone_type); - IFC4_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcCableCarrierFitting_type);defs.push_back(IFC4_IfcCableFitting_type);defs.push_back(IFC4_IfcDuctFitting_type);defs.push_back(IFC4_IfcJunctionBox_type);defs.push_back(IFC4_IfcPipeFitting_type); - IFC4_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcCableCarrierFittingType_type);defs.push_back(IFC4_IfcCableFittingType_type);defs.push_back(IFC4_IfcDuctFittingType_type);defs.push_back(IFC4_IfcJunctionBoxType_type);defs.push_back(IFC4_IfcPipeFittingType_type); - IFC4_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcCableCarrierSegment_type);defs.push_back(IFC4_IfcCableSegment_type);defs.push_back(IFC4_IfcDuctSegment_type);defs.push_back(IFC4_IfcPipeSegment_type); - IFC4_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcCableCarrierSegmentType_type);defs.push_back(IFC4_IfcCableSegmentType_type);defs.push_back(IFC4_IfcDuctSegmentType_type);defs.push_back(IFC4_IfcPipeSegmentType_type); - IFC4_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcCartesianPoint_type);defs.push_back(IFC4_IfcPointOnCurve_type);defs.push_back(IFC4_IfcPointOnSurface_type); - IFC4_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcCartesianPointList2D_type);defs.push_back(IFC4_IfcCartesianPointList3D_type); - IFC4_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4_IfcCartesianTransformationOperator3D_type); - IFC4_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcCenterLineProfileDef_type); - IFC4_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcCircle_type);defs.push_back(IFC4_IfcEllipse_type); - IFC4_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcCircleHollowProfileDef_type); - IFC4_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcClassification_type);defs.push_back(IFC4_IfcDocumentInformation_type);defs.push_back(IFC4_IfcLibraryInformation_type); - IFC4_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcClassificationReference_type);defs.push_back(IFC4_IfcDocumentReference_type);defs.push_back(IFC4_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4_IfcLibraryReference_type); - IFC4_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcClosedShell_type);defs.push_back(IFC4_IfcOpenShell_type); - IFC4_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcColourRgb_type); - IFC4_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4_IfcColourRgbList_type);defs.push_back(IFC4_IfcColourSpecification_type);defs.push_back(IFC4_IfcCurveStyleFont_type);defs.push_back(IFC4_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4_IfcCurveStyleFontPattern_type);defs.push_back(IFC4_IfcIndexedColourMap_type);defs.push_back(IFC4_IfcPreDefinedItem_type);defs.push_back(IFC4_IfcSurfaceStyleLighting_type);defs.push_back(IFC4_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4_IfcSurfaceStyleShading_type);defs.push_back(IFC4_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4_IfcSurfaceTexture_type);defs.push_back(IFC4_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4_IfcTextStyleTextModel_type);defs.push_back(IFC4_IfcTextureCoordinate_type);defs.push_back(IFC4_IfcTextureVertex_type);defs.push_back(IFC4_IfcTextureVertexList_type); - IFC4_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcColumnStandardCase_type); - IFC4_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcComplexProperty_type);defs.push_back(IFC4_IfcSimpleProperty_type); - IFC4_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcComplexPropertyTemplate_type);defs.push_back(IFC4_IfcSimplePropertyTemplate_type); - IFC4_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcCompositeCurveOnSurface_type); - IFC4_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcCompressor_type);defs.push_back(IFC4_IfcFan_type);defs.push_back(IFC4_IfcPump_type); - IFC4_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcCompressorType_type);defs.push_back(IFC4_IfcFanType_type);defs.push_back(IFC4_IfcPumpType_type); - IFC4_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4_IfcConnectedFaceSet_type);defs.push_back(IFC4_IfcEdge_type);defs.push_back(IFC4_IfcFace_type);defs.push_back(IFC4_IfcFaceBound_type);defs.push_back(IFC4_IfcLoop_type);defs.push_back(IFC4_IfcPath_type);defs.push_back(IFC4_IfcVertex_type); - IFC4_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcConnectionCurveGeometry_type);defs.push_back(IFC4_IfcConnectionPointGeometry_type);defs.push_back(IFC4_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4_IfcConnectionVolumeGeometry_type); - IFC4_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcConnectionPointEccentricity_type); - IFC4_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcConstructionEquipmentResource_type);defs.push_back(IFC4_IfcConstructionMaterialResource_type);defs.push_back(IFC4_IfcConstructionProductResource_type);defs.push_back(IFC4_IfcCrewResource_type);defs.push_back(IFC4_IfcLaborResource_type);defs.push_back(IFC4_IfcSubContractResource_type); - IFC4_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4_IfcConstructionProductResourceType_type);defs.push_back(IFC4_IfcCrewResourceType_type);defs.push_back(IFC4_IfcLaborResourceType_type);defs.push_back(IFC4_IfcSubContractResourceType_type); - IFC4_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcConstructionResource_type); - IFC4_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcConstructionResourceType_type); - IFC4_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcContext_type);defs.push_back(IFC4_IfcObject_type);defs.push_back(IFC4_IfcTypeObject_type); - IFC4_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcContextDependentUnit_type);defs.push_back(IFC4_IfcConversionBasedUnit_type);defs.push_back(IFC4_IfcSIUnit_type); - IFC4_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcConversionBasedUnitWithOffset_type); - IFC4_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcCostValue_type); - IFC4_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcCsgSolid_type);defs.push_back(IFC4_IfcManifoldSolidBrep_type);defs.push_back(IFC4_IfcSweptAreaSolid_type);defs.push_back(IFC4_IfcSweptDiskSolid_type); - IFC4_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcCurveStyle_type);defs.push_back(IFC4_IfcFillAreaStyle_type);defs.push_back(IFC4_IfcSurfaceStyle_type);defs.push_back(IFC4_IfcTextStyle_type); - IFC4_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcCylindricalSurface_type);defs.push_back(IFC4_IfcPlane_type);defs.push_back(IFC4_IfcSphericalSurface_type);defs.push_back(IFC4_IfcToroidalSurface_type); - IFC4_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4_IfcDistributionChamberElement_type);defs.push_back(IFC4_IfcEnergyConversionDevice_type);defs.push_back(IFC4_IfcFlowController_type);defs.push_back(IFC4_IfcFlowFitting_type);defs.push_back(IFC4_IfcFlowMovingDevice_type);defs.push_back(IFC4_IfcFlowSegment_type);defs.push_back(IFC4_IfcFlowStorageDevice_type);defs.push_back(IFC4_IfcFlowTerminal_type);defs.push_back(IFC4_IfcFlowTreatmentDevice_type); - IFC4_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4_IfcDistributionChamberElementType_type);defs.push_back(IFC4_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4_IfcFlowControllerType_type);defs.push_back(IFC4_IfcFlowFittingType_type);defs.push_back(IFC4_IfcFlowMovingDeviceType_type);defs.push_back(IFC4_IfcFlowSegmentType_type);defs.push_back(IFC4_IfcFlowStorageDeviceType_type);defs.push_back(IFC4_IfcFlowTerminalType_type);defs.push_back(IFC4_IfcFlowTreatmentDeviceType_type); - IFC4_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcDistributionCircuit_type); - IFC4_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcDistributionControlElement_type);defs.push_back(IFC4_IfcDistributionFlowElement_type); - IFC4_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcDistributionControlElementType_type);defs.push_back(IFC4_IfcDistributionFlowElementType_type); - IFC4_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcDistributionPort_type); - IFC4_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcDoorLiningProperties_type);defs.push_back(IFC4_IfcDoorPanelProperties_type);defs.push_back(IFC4_IfcPermeableCoveringProperties_type);defs.push_back(IFC4_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4_IfcWindowLiningProperties_type);defs.push_back(IFC4_IfcWindowPanelProperties_type); - IFC4_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcDoorStandardCase_type); - IFC4_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcDoorStyle_type);defs.push_back(IFC4_IfcElementType_type);defs.push_back(IFC4_IfcSpatialElementType_type);defs.push_back(IFC4_IfcWindowStyle_type); - IFC4_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcDraughtingPreDefinedColour_type); - IFC4_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcDraughtingPreDefinedCurveFont_type); - IFC4_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcDuctSilencer_type);defs.push_back(IFC4_IfcFilter_type);defs.push_back(IFC4_IfcInterceptor_type); - IFC4_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcDuctSilencerType_type);defs.push_back(IFC4_IfcFilterType_type);defs.push_back(IFC4_IfcInterceptorType_type); - IFC4_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcEdgeCurve_type);defs.push_back(IFC4_IfcOrientedEdge_type);defs.push_back(IFC4_IfcSubedge_type); - IFC4_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcEdgeLoop_type);defs.push_back(IFC4_IfcPolyLoop_type);defs.push_back(IFC4_IfcVertexLoop_type); - IFC4_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4_IfcTank_type); - IFC4_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4_IfcTankType_type); - IFC4_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcElementQuantity_type); - IFC4_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcEvent_type);defs.push_back(IFC4_IfcProcedure_type);defs.push_back(IFC4_IfcTask_type); - IFC4_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcEventTime_type);defs.push_back(IFC4_IfcLagTime_type);defs.push_back(IFC4_IfcResourceTime_type);defs.push_back(IFC4_IfcTaskTime_type);defs.push_back(IFC4_IfcWorkTime_type); - IFC4_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcEventType_type);defs.push_back(IFC4_IfcProcedureType_type);defs.push_back(IFC4_IfcTaskType_type); - IFC4_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcExtendedProperties_type);defs.push_back(IFC4_IfcPreDefinedProperties_type);defs.push_back(IFC4_IfcProperty_type);defs.push_back(IFC4_IfcPropertyEnumeration_type); - IFC4_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcExternalSpatialElement_type); - IFC4_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4_IfcSpatialStructureElement_type);defs.push_back(IFC4_IfcSpatialZone_type); - IFC4_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcExtrudedAreaSolid_type);defs.push_back(IFC4_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4_IfcRevolvedAreaSolid_type);defs.push_back(IFC4_IfcSurfaceCurveSweptAreaSolid_type); - IFC4_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcExtrudedAreaSolidTapered_type); - IFC4_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcFaceOuterBound_type); - IFC4_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcFaceSurface_type); - IFC4_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcFacetedBrepWithVoids_type); - IFC4_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcFailureConnectionCondition_type);defs.push_back(IFC4_IfcSlippageConnectionCondition_type); - IFC4_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcFeatureElementAddition_type);defs.push_back(IFC4_IfcFeatureElementSubtraction_type);defs.push_back(IFC4_IfcSurfaceFeature_type); - IFC4_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcFurniture_type);defs.push_back(IFC4_IfcSystemFurnitureElement_type); - IFC4_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcFurnitureType_type);defs.push_back(IFC4_IfcSystemFurnitureElementType_type); - IFC4_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcGeometricCurveSet_type); - IFC4_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcGeometricRepresentationContext_type); - IFC4_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcGeometricRepresentationItem_type);defs.push_back(IFC4_IfcMappedItem_type);defs.push_back(IFC4_IfcStyledItem_type);defs.push_back(IFC4_IfcTopologicalRepresentationItem_type); - IFC4_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcGeometricRepresentationSubContext_type); - IFC4_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcGridPlacement_type);defs.push_back(IFC4_IfcLocalPlacement_type); - IFC4_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcIndexedPolygonalFace_type);defs.push_back(IFC4_IfcTessellatedFaceSet_type); - IFC4_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcIndexedPolygonalFaceWithVoids_type); - IFC4_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcIndexedTextureMap_type);defs.push_back(IFC4_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4_IfcTextureMap_type); - IFC4_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcIndexedTriangleTextureMap_type); - IFC4_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcIntersectionCurve_type);defs.push_back(IFC4_IfcSeamCurve_type); - IFC4_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcIrregularTimeSeries_type);defs.push_back(IFC4_IfcRegularTimeSeries_type); - IFC4_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcLightSourceAmbient_type);defs.push_back(IFC4_IfcLightSourceDirectional_type);defs.push_back(IFC4_IfcLightSourceGoniometric_type);defs.push_back(IFC4_IfcLightSourcePositional_type); - IFC4_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcLightSourceSpot_type); - IFC4_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcMapConversion_type); - IFC4_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4_IfcMaterial_type);defs.push_back(IFC4_IfcMaterialConstituent_type);defs.push_back(IFC4_IfcMaterialConstituentSet_type);defs.push_back(IFC4_IfcMaterialLayer_type);defs.push_back(IFC4_IfcMaterialLayerSet_type);defs.push_back(IFC4_IfcMaterialProfile_type);defs.push_back(IFC4_IfcMaterialProfileSet_type); - IFC4_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4_IfcProductDefinitionShape_type); - IFC4_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4_IfcMaterialProfileSetUsage_type); - IFC4_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcMaterialLayerWithOffsets_type); - IFC4_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcMaterialProfileSetUsageTapering_type); - IFC4_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcMaterialProfileWithOffsets_type); - IFC4_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcMaterialProperties_type);defs.push_back(IFC4_IfcProfileProperties_type); - IFC4_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcMemberStandardCase_type); - IFC4_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcMetric_type);defs.push_back(IFC4_IfcObjective_type); - IFC4_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcMirroredProfileDef_type); - IFC4_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcObjectDefinition_type);defs.push_back(IFC4_IfcPropertyDefinition_type);defs.push_back(IFC4_IfcRelationship_type); - IFC4_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcOccupant_type); - IFC4_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcOpeningElement_type);defs.push_back(IFC4_IfcVoidingFeature_type); - IFC4_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcOpeningStandardCase_type); - IFC4_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcOuterBoundaryCurve_type); - IFC4_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4_IfcPhysicalSimpleQuantity_type); - IFC4_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcPlanarBox_type); - IFC4_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcPlateStandardCase_type); - IFC4_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcPolygonalFaceSet_type);defs.push_back(IFC4_IfcTriangulatedFaceSet_type); - IFC4_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcPostalAddress_type);defs.push_back(IFC4_IfcTelecomAddress_type); - IFC4_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcPreDefinedColour_type);defs.push_back(IFC4_IfcPreDefinedCurveFont_type);defs.push_back(IFC4_IfcPreDefinedTextFont_type); - IFC4_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcPreDefinedPropertySet_type);defs.push_back(IFC4_IfcPropertySet_type);defs.push_back(IFC4_IfcQuantitySet_type); - IFC4_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcPresentationLayerWithStyle_type); - IFC4_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcProject_type);defs.push_back(IFC4_IfcProjectLibrary_type); - IFC4_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcProjectedCRS_type); - IFC4_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcProjectionElement_type); - IFC4_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcPropertyBoundedValue_type);defs.push_back(IFC4_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4_IfcPropertyListValue_type);defs.push_back(IFC4_IfcPropertyReferenceValue_type);defs.push_back(IFC4_IfcPropertySingleValue_type);defs.push_back(IFC4_IfcPropertyTableValue_type); - IFC4_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcPropertySetDefinition_type);defs.push_back(IFC4_IfcPropertyTemplateDefinition_type); - IFC4_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcPropertySetTemplate_type);defs.push_back(IFC4_IfcPropertyTemplate_type); - IFC4_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcQuantityArea_type);defs.push_back(IFC4_IfcQuantityCount_type);defs.push_back(IFC4_IfcQuantityLength_type);defs.push_back(IFC4_IfcQuantityTime_type);defs.push_back(IFC4_IfcQuantityVolume_type);defs.push_back(IFC4_IfcQuantityWeight_type); - IFC4_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRationalBSplineCurveWithKnots_type); - IFC4_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRationalBSplineSurfaceWithKnots_type); - IFC4_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4_IfcRoundedRectangleProfileDef_type); - IFC4_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcReinforcementBarProperties_type);defs.push_back(IFC4_IfcSectionProperties_type);defs.push_back(IFC4_IfcSectionReinforcementProperties_type); - IFC4_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcReinforcingBar_type);defs.push_back(IFC4_IfcReinforcingMesh_type);defs.push_back(IFC4_IfcTendon_type);defs.push_back(IFC4_IfcTendonAnchor_type); - IFC4_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcReinforcingBarType_type);defs.push_back(IFC4_IfcReinforcingMeshType_type);defs.push_back(IFC4_IfcTendonAnchorType_type);defs.push_back(IFC4_IfcTendonType_type); - IFC4_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcRelAggregates_type);defs.push_back(IFC4_IfcRelNests_type);defs.push_back(IFC4_IfcRelProjectsElement_type);defs.push_back(IFC4_IfcRelVoidsElement_type); - IFC4_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcRelAssigns_type);defs.push_back(IFC4_IfcRelAssociates_type);defs.push_back(IFC4_IfcRelConnects_type);defs.push_back(IFC4_IfcRelDeclares_type);defs.push_back(IFC4_IfcRelDecomposes_type);defs.push_back(IFC4_IfcRelDefines_type); - IFC4_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcRelAssignsToActor_type);defs.push_back(IFC4_IfcRelAssignsToControl_type);defs.push_back(IFC4_IfcRelAssignsToGroup_type);defs.push_back(IFC4_IfcRelAssignsToProcess_type);defs.push_back(IFC4_IfcRelAssignsToProduct_type);defs.push_back(IFC4_IfcRelAssignsToResource_type); - IFC4_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRelAssignsToGroupByFactor_type); - IFC4_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4_IfcRelAssociatesApproval_type);defs.push_back(IFC4_IfcRelAssociatesClassification_type);defs.push_back(IFC4_IfcRelAssociatesConstraint_type);defs.push_back(IFC4_IfcRelAssociatesDocument_type);defs.push_back(IFC4_IfcRelAssociatesLibrary_type);defs.push_back(IFC4_IfcRelAssociatesMaterial_type); - IFC4_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(15); - defs.push_back(IFC4_IfcRelConnectsElements_type);defs.push_back(IFC4_IfcRelConnectsPortToElement_type);defs.push_back(IFC4_IfcRelConnectsPorts_type);defs.push_back(IFC4_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4_IfcRelCoversBldgElements_type);defs.push_back(IFC4_IfcRelCoversSpaces_type);defs.push_back(IFC4_IfcRelFillsElement_type);defs.push_back(IFC4_IfcRelFlowControlElements_type);defs.push_back(IFC4_IfcRelInterferesElements_type);defs.push_back(IFC4_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4_IfcRelSequence_type);defs.push_back(IFC4_IfcRelServicesBuildings_type);defs.push_back(IFC4_IfcRelSpaceBoundary_type); - IFC4_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcRelConnectsPathElements_type);defs.push_back(IFC4_IfcRelConnectsWithRealizingElements_type); - IFC4_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRelConnectsWithEccentricity_type); - IFC4_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4_IfcRelDefinesByObject_type);defs.push_back(IFC4_IfcRelDefinesByProperties_type);defs.push_back(IFC4_IfcRelDefinesByTemplate_type);defs.push_back(IFC4_IfcRelDefinesByType_type); - IFC4_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRelSpaceBoundary1stLevel_type); - IFC4_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRelSpaceBoundary2ndLevel_type); - IFC4_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcReparametrisedCompositeCurveSegment_type); - IFC4_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcRevolvedAreaSolidTapered_type); - IFC4_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcShapeModel_type);defs.push_back(IFC4_IfcStyleModel_type); - IFC4_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcShapeRepresentation_type);defs.push_back(IFC4_IfcTopologyRepresentation_type); - IFC4_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcSlabElementedCase_type);defs.push_back(IFC4_IfcSlabStandardCase_type); - IFC4_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcSpaceType_type); - IFC4_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcSpatialStructureElementType_type);defs.push_back(IFC4_IfcSpatialZoneType_type); - IFC4_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcStructuralAction_type);defs.push_back(IFC4_IfcStructuralReaction_type); - IFC4_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcStructuralConnection_type);defs.push_back(IFC4_IfcStructuralMember_type); - IFC4_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcStructuralCurveAction_type);defs.push_back(IFC4_IfcStructuralPointAction_type);defs.push_back(IFC4_IfcStructuralSurfaceAction_type); - IFC4_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcStructuralCurveConnection_type);defs.push_back(IFC4_IfcStructuralPointConnection_type);defs.push_back(IFC4_IfcStructuralSurfaceConnection_type); - IFC4_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcStructuralCurveMember_type);defs.push_back(IFC4_IfcStructuralSurfaceMember_type); - IFC4_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralCurveMemberVarying_type); - IFC4_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcStructuralCurveReaction_type);defs.push_back(IFC4_IfcStructuralPointReaction_type);defs.push_back(IFC4_IfcStructuralSurfaceReaction_type); - IFC4_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralLinearAction_type); - IFC4_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralLoadCase_type); - IFC4_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4_IfcStructuralLoadOrResult_type); - IFC4_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4_IfcStructuralLoadTemperature_type); - IFC4_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralLoadSingleForceWarping_type); - IFC4_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcStructuralLoadStatic_type);defs.push_back(IFC4_IfcSurfaceReinforcementArea_type); - IFC4_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralPlanarAction_type); - IFC4_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStructuralSurfaceMemberVarying_type); - IFC4_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcStyledRepresentation_type); - IFC4_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4_IfcSurfaceOfRevolution_type); - IFC4_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcSurfaceStyleRendering_type); - IFC4_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcSweptDiskSolidPolygonal_type); - IFC4_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcTaskTimeRecurring_type); - IFC4_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcTextLiteralWithExtent_type); - IFC4_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcTextStyleFontModel_type); - IFC4_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4_IfcTypeProcess_type);defs.push_back(IFC4_IfcTypeProduct_type);defs.push_back(IFC4_IfcTypeResource_type); - IFC4_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcVertexPoint_type); - IFC4_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcWallElementedCase_type);defs.push_back(IFC4_IfcWallStandardCase_type); - IFC4_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4_IfcWindowStandardCase_type); - IFC4_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4_IfcWorkPlan_type);defs.push_back(IFC4_IfcWorkSchedule_type); - IFC4_IfcWorkControl_type->set_subtypes(defs); - } + IFC4_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[8], + strings[9] + }); + IFC4_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[77], 29, new simple_type(simple_type::real_type)); + IFC4_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[78], 30, { + strings[79], + strings[80], + strings[81], + strings[8], + strings[9] + }); + IFC4_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[82], 31, { + strings[83], + strings[84], + strings[85], + strings[86], + strings[8], + strings[9] + }); + IFC4_IfcAngularVelocityMeasure_type = new type_declaration(strings[87], 32, new simple_type(simple_type::real_type)); + IFC4_IfcAreaDensityMeasure_type = new type_declaration(strings[88], 44, new simple_type(simple_type::real_type)); + IFC4_IfcAreaMeasure_type = new type_declaration(strings[89], 45, new simple_type(simple_type::real_type)); + IFC4_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[90], 46, { + strings[91], + strings[92], + strings[93], + strings[94] + }); + IFC4_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[95], 47, { + strings[48], + strings[96], + strings[9] + }); + IFC4_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[97], 52, { + strings[98], + strings[99], + strings[100], + strings[101], + strings[102], + strings[103], + strings[104], + strings[105], + strings[106], + strings[107], + strings[108], + strings[8], + strings[9] + }); + IFC4_IfcBSplineCurveForm_type = new enumeration_type(strings[109], 86, { + strings[110], + strings[111], + strings[112], + strings[113], + strings[114], + strings[115] + }); + IFC4_IfcBSplineSurfaceForm_type = new enumeration_type(strings[116], 89, { + strings[117], + strings[118], + strings[119], + strings[120], + strings[121], + strings[122], + strings[123], + strings[124], + strings[125], + strings[126], + strings[115] + }); + IFC4_IfcBeamTypeEnum_type = new enumeration_type(strings[127], 60, { + strings[128], + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[8], + strings[9] + }); + IFC4_IfcBenchmarkEnum_type = new enumeration_type(strings[134], 61, { + strings[135], + strings[136], + strings[137], + strings[138], + strings[139], + strings[140], + strings[141], + strings[142], + strings[143], + strings[144] + }); + IFC4_IfcBinary_type = new type_declaration(strings[145], 63, new simple_type(simple_type::binary_type)); + IFC4_IfcBoilerTypeEnum_type = new enumeration_type(strings[146], 68, { + strings[147], + strings[148], + strings[8], + strings[9] + }); + IFC4_IfcBoolean_type = new type_declaration(strings[149], 69, new simple_type(simple_type::boolean_type)); + IFC4_IfcBooleanOperator_type = new enumeration_type(strings[150], 72, { + strings[151], + strings[152], + strings[153] + }); + IFC4_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[154], 95, { + strings[155], + strings[156], + strings[8], + strings[9] + }); + IFC4_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[157], 98, { + strings[158], + strings[159], + strings[160], + strings[161], + strings[162], + strings[8], + strings[9] + }); + IFC4_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[163], 102, { + strings[164], + strings[165], + strings[166], + strings[167], + strings[168], + strings[23], + strings[8], + strings[9] + }); + IFC4_IfcBurnerTypeEnum_type = new enumeration_type(strings[169], 105, { + strings[8], + strings[9] + }); + IFC4_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[170], 108, { + strings[171], + strings[172], + strings[173], + strings[174], + strings[8], + strings[9] + }); + IFC4_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[175], 111, { + strings[176], + strings[177], + strings[178], + strings[179], + strings[8], + strings[9] + }); + IFC4_IfcCableFittingTypeEnum_type = new enumeration_type(strings[180], 114, { + strings[181], + strings[182], + strings[183], + strings[184], + strings[185], + strings[8], + strings[9] + }); + IFC4_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[186], 117, { + strings[187], + strings[188], + strings[189], + strings[190], + strings[8], + strings[9] + }); + IFC4_IfcCardinalPointReference_type = new type_declaration(strings[191], 118, new simple_type(simple_type::integer_type)); + IFC4_IfcChangeActionEnum_type = new enumeration_type(strings[192], 129, { + strings[193], + strings[194], + strings[195], + strings[196], + strings[9] + }); + IFC4_IfcChillerTypeEnum_type = new enumeration_type(strings[197], 132, { + strings[198], + strings[199], + strings[200], + strings[8], + strings[9] + }); + IFC4_IfcChimneyTypeEnum_type = new enumeration_type(strings[201], 135, { + strings[8], + strings[9] + }); + IFC4_IfcCoilTypeEnum_type = new enumeration_type(strings[202], 148, { + strings[203], + strings[204], + strings[205], + strings[206], + strings[207], + strings[208], + strings[209], + strings[8], + strings[9] + }); + IFC4_IfcColumnTypeEnum_type = new enumeration_type(strings[210], 157, { + strings[211], + strings[212], + strings[8], + strings[9] + }); + IFC4_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[213], 160, { + strings[214], + strings[215], + strings[4], + strings[216], + strings[217], + strings[218], + strings[219], + strings[220], + strings[221], + strings[222], + strings[223], + strings[224], + strings[8], + strings[9] + }); + IFC4_IfcComplexNumber_type = new type_declaration(strings[225], 161, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[226], 164, { + strings[227], + strings[228] + }); + IFC4_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[229], 169, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4_IfcCompressorTypeEnum_type = new enumeration_type(strings[230], 172, { + strings[231], + strings[232], + strings[233], + strings[234], + strings[235], + strings[236], + strings[237], + strings[238], + strings[239], + strings[240], + strings[241], + strings[242], + strings[243], + strings[244], + strings[245], + strings[8], + strings[9] + }); + IFC4_IfcCondenserTypeEnum_type = new enumeration_type(strings[246], 175, { + strings[198], + strings[247], + strings[199], + strings[248], + strings[249], + strings[250], + strings[251], + strings[8], + strings[9] + }); + IFC4_IfcConnectionTypeEnum_type = new enumeration_type(strings[252], 183, { + strings[253], + strings[254], + strings[255], + strings[9] + }); + IFC4_IfcConstraintEnum_type = new enumeration_type(strings[256], 186, { + strings[257], + strings[258], + strings[259], + strings[8], + strings[9] + }); + IFC4_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[260], 189, { + strings[261], + strings[262], + strings[263], + strings[264], + strings[265], + strings[266], + strings[267], + strings[268], + strings[8], + strings[9] + }); + IFC4_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[269], 192, { + strings[270], + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[277], + strings[278], + strings[9], + strings[8] + }); + IFC4_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[279], 195, { + strings[280], + strings[281], + strings[8], + strings[9] + }); + IFC4_IfcContextDependentMeasure_type = new type_declaration(strings[282], 199, new simple_type(simple_type::real_type)); + IFC4_IfcControllerTypeEnum_type = new enumeration_type(strings[283], 204, { + strings[284], + strings[285], + strings[286], + strings[287], + strings[288], + strings[8], + strings[9] + }); + IFC4_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[289], 209, { + strings[290], + strings[291], + strings[8], + strings[9] + }); + IFC4_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[292], 212, { + strings[293], + strings[294], + strings[295], + strings[8], + strings[9] + }); + IFC4_IfcCostItemTypeEnum_type = new enumeration_type(strings[296], 217, { + strings[8], + strings[9] + }); + IFC4_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[297], 219, { + strings[298], + strings[299], + strings[300], + strings[301], + strings[302], + strings[303], + strings[304], + strings[8], + strings[9] + }); + IFC4_IfcCountMeasure_type = new type_declaration(strings[305], 221, new simple_type(simple_type::number_type)); + IFC4_IfcCoveringTypeEnum_type = new enumeration_type(strings[306], 224, { + strings[307], + strings[308], + strings[309], + strings[310], + strings[311], + strings[312], + strings[155], + strings[313], + strings[314], + strings[315], + strings[8], + strings[9] + }); + IFC4_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[316], 227, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[317], 235, { + strings[8], + strings[9] + }); + IFC4_IfcCurvatureMeasure_type = new type_declaration(strings[318], 236, new simple_type(simple_type::real_type)); + IFC4_IfcCurveInterpolationEnum_type = new enumeration_type(strings[319], 241, { + strings[320], + strings[321], + strings[322], + strings[9] + }); + IFC4_IfcDamperTypeEnum_type = new enumeration_type(strings[323], 252, { + strings[324], + strings[325], + strings[326], + strings[327], + strings[328], + strings[329], + strings[330], + strings[331], + strings[332], + strings[333], + strings[334], + strings[8], + strings[9] + }); + IFC4_IfcDataOriginEnum_type = new enumeration_type(strings[335], 253, { + strings[336], + strings[337], + strings[338], + strings[8], + strings[9] + }); + IFC4_IfcDate_type = new type_declaration(strings[339], 254, new simple_type(simple_type::string_type)); + IFC4_IfcDateTime_type = new type_declaration(strings[340], 255, new simple_type(simple_type::string_type)); + IFC4_IfcDayInMonthNumber_type = new type_declaration(strings[341], 256, new simple_type(simple_type::integer_type)); + IFC4_IfcDayInWeekNumber_type = new type_declaration(strings[342], 257, new simple_type(simple_type::integer_type)); + IFC4_IfcDerivedUnitEnum_type = new enumeration_type(strings[343], 263, { + strings[344], + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[350], + strings[351], + strings[352], + strings[353], + strings[354], + strings[355], + strings[356], + strings[357], + strings[358], + strings[359], + strings[360], + strings[361], + strings[362], + strings[363], + strings[364], + strings[365], + strings[366], + strings[367], + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[373], + strings[374], + strings[375], + strings[376], + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[383], + strings[384], + strings[385], + strings[386], + strings[387], + strings[388], + strings[389], + strings[390], + strings[391], + strings[392], + strings[393], + strings[394], + strings[395], + strings[8] + }); + IFC4_IfcDescriptiveMeasure_type = new type_declaration(strings[396], 264, new simple_type(simple_type::string_type)); + IFC4_IfcDimensionCount_type = new type_declaration(strings[397], 266, new simple_type(simple_type::integer_type)); + IFC4_IfcDirectionSenseEnum_type = new enumeration_type(strings[398], 268, { + strings[399], + strings[400] + }); + IFC4_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[401], 271, { + strings[402], + strings[403], + strings[404], + strings[8], + strings[9] + }); + IFC4_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[405], 274, { + strings[406], + strings[407], + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[413], + strings[8], + strings[9] + }); + IFC4_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[414], 283, { + strings[415], + strings[416], + strings[417], + strings[418], + strings[8], + strings[9] + }); + IFC4_IfcDistributionSystemEnum_type = new enumeration_type(strings[419], 285, { + strings[420], + strings[421], + strings[422], + strings[423], + strings[424], + strings[425], + strings[426], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[432], + strings[433], + strings[434], + strings[435], + strings[436], + strings[437], + strings[438], + strings[273], + strings[439], + strings[440], + strings[264], + strings[265], + strings[441], + strings[442], + strings[443], + strings[444], + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[107], + strings[452], + strings[453], + strings[454], + strings[455], + strings[456], + strings[457], + strings[8], + strings[9] + }); + IFC4_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[458], 286, { + strings[459], + strings[460], + strings[461], + strings[462], + strings[8], + strings[9] + }); + IFC4_IfcDocumentStatusEnum_type = new enumeration_type(strings[463], 291, { + strings[464], + strings[465], + strings[466], + strings[467], + strings[9] + }); + IFC4_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[468], 294, { + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[8], + strings[9] + }); + IFC4_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[476], 295, { + strings[477], + strings[478], + strings[479], + strings[9] + }); + IFC4_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[480], 299, { + strings[481], + strings[482], + strings[483], + strings[278], + strings[484], + strings[485], + strings[277], + strings[8], + strings[9] + }); + IFC4_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[486], 300, { + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[473], + strings[474], + strings[8], + strings[9] + }); + IFC4_IfcDoorTypeEnum_type = new enumeration_type(strings[501], 302, { + strings[502], + strings[503], + strings[504], + strings[8], + strings[9] + }); + IFC4_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[505], 303, { + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[473], + strings[474], + strings[506], + strings[507], + strings[8], + strings[9] + }); + IFC4_IfcDoseEquivalentMeasure_type = new type_declaration(strings[508], 304, new simple_type(simple_type::real_type)); + IFC4_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[509], 309, { + strings[171], + strings[181], + strings[182], + strings[183], + strings[184], + strings[510], + strings[185], + strings[8], + strings[9] + }); + IFC4_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[511], 312, { + strings[512], + strings[513], + strings[8], + strings[9] + }); + IFC4_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[514], 315, { + strings[515], + strings[516], + strings[517], + strings[8], + strings[9] + }); + IFC4_IfcDuration_type = new type_declaration(strings[518], 316, new simple_type(simple_type::string_type)); + IFC4_IfcDynamicViscosityMeasure_type = new type_declaration(strings[519], 317, new simple_type(simple_type::real_type)); + IFC4_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[520], 323, { + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[535], + strings[536], + strings[8], + strings[9] + }); + IFC4_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[537], 324, new simple_type(simple_type::real_type)); + IFC4_IfcElectricChargeMeasure_type = new type_declaration(strings[538], 325, new simple_type(simple_type::real_type)); + IFC4_IfcElectricConductanceMeasure_type = new type_declaration(strings[539], 326, new simple_type(simple_type::real_type)); + IFC4_IfcElectricCurrentMeasure_type = new type_declaration(strings[540], 327, new simple_type(simple_type::real_type)); + IFC4_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[541], 330, { + strings[542], + strings[543], + strings[544], + strings[545], + strings[8], + strings[9] + }); + IFC4_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[546], 333, { + strings[547], + strings[548], + strings[549], + strings[550], + strings[551], + strings[8], + strings[9] + }); + IFC4_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[552], 336, { + strings[553], + strings[554], + strings[555], + strings[8], + strings[9] + }); + IFC4_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[556], 339, { + strings[557], + strings[558], + strings[559], + strings[560], + strings[561], + strings[8], + strings[9] + }); + IFC4_IfcElectricResistanceMeasure_type = new type_declaration(strings[562], 340, new simple_type(simple_type::real_type)); + IFC4_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[563], 343, { + strings[564], + strings[565], + strings[566], + strings[8], + strings[9] + }); + IFC4_IfcElectricVoltageMeasure_type = new type_declaration(strings[567], 344, new simple_type(simple_type::real_type)); + IFC4_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[568], 349, { + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[577], + strings[8], + strings[9] + }); + IFC4_IfcElementCompositionEnum_type = new enumeration_type(strings[578], 352, { + strings[158], + strings[159], + strings[160] + }); + IFC4_IfcEnergyMeasure_type = new type_declaration(strings[579], 359, new simple_type(simple_type::real_type)); + IFC4_IfcEngineTypeEnum_type = new enumeration_type(strings[580], 362, { + strings[581], + strings[582], + strings[8], + strings[9] + }); + IFC4_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[583], 365, { + strings[584], + strings[585], + strings[586], + strings[587], + strings[588], + strings[589], + strings[590], + strings[591], + strings[592], + strings[8], + strings[9] + }); + IFC4_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[593], 368, { + strings[594], + strings[595], + strings[596], + strings[597], + strings[598], + strings[599], + strings[8], + strings[9] + }); + IFC4_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[600], 371, { + strings[601], + strings[602], + strings[603], + strings[604], + strings[8], + strings[9] + }); + IFC4_IfcEventTypeEnum_type = new enumeration_type(strings[605], 373, { + strings[606], + strings[607], + strings[608], + strings[8], + strings[9] + }); + IFC4_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[609], 382, { + strings[610], + strings[611], + strings[612], + strings[613], + strings[8], + strings[9] + }); + IFC4_IfcFanTypeEnum_type = new enumeration_type(strings[614], 396, { + strings[615], + strings[616], + strings[617], + strings[618], + strings[619], + strings[620], + strings[621], + strings[8], + strings[9] + }); + IFC4_IfcFastenerTypeEnum_type = new enumeration_type(strings[622], 399, { + strings[623], + strings[624], + strings[625], + strings[8], + strings[9] + }); + IFC4_IfcFilterTypeEnum_type = new enumeration_type(strings[626], 409, { + strings[627], + strings[628], + strings[629], + strings[630], + strings[631], + strings[632], + strings[8], + strings[9] + }); + IFC4_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[633], 412, { + strings[634], + strings[635], + strings[636], + strings[637], + strings[638], + strings[8], + strings[9] + }); + IFC4_IfcFlowDirectionEnum_type = new enumeration_type(strings[639], 416, { + strings[640], + strings[641], + strings[642], + strings[9] + }); + IFC4_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[643], 421, { + strings[644], + strings[645], + strings[646], + strings[647], + strings[648], + strings[649], + strings[650], + strings[651], + strings[8], + strings[9] + }); + IFC4_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[652], 424, { + strings[653], + strings[654], + strings[655], + strings[656], + strings[8], + strings[9] + }); + IFC4_IfcFontStyle_type = new type_declaration(strings[657], 435, new simple_type(simple_type::string_type)); + IFC4_IfcFontVariant_type = new type_declaration(strings[658], 436, new simple_type(simple_type::string_type)); + IFC4_IfcFontWeight_type = new type_declaration(strings[659], 437, new simple_type(simple_type::string_type)); + IFC4_IfcFootingTypeEnum_type = new enumeration_type(strings[660], 440, { + strings[661], + strings[662], + strings[663], + strings[664], + strings[665], + strings[8], + strings[9] + }); + IFC4_IfcForceMeasure_type = new type_declaration(strings[666], 441, new simple_type(simple_type::real_type)); + IFC4_IfcFrequencyMeasure_type = new type_declaration(strings[667], 442, new simple_type(simple_type::real_type)); + IFC4_IfcFurnitureTypeEnum_type = new enumeration_type(strings[668], 447, { + strings[669], + strings[670], + strings[671], + strings[672], + strings[673], + strings[674], + strings[675], + strings[8], + strings[9] + }); + IFC4_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[676], 450, { + strings[677], + strings[8], + strings[9] + }); + IFC4_IfcGeometricProjectionEnum_type = new enumeration_type(strings[678], 452, { + strings[679], + strings[680], + strings[681], + strings[682], + strings[683], + strings[684], + strings[685], + strings[8], + strings[9] + }); + IFC4_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[686], 459, { + strings[687], + strings[688] + }); + IFC4_IfcGloballyUniqueId_type = new type_declaration(strings[689], 458, new simple_type(simple_type::string_type)); + IFC4_IfcGridTypeEnum_type = new enumeration_type(strings[690], 464, { + strings[516], + strings[691], + strings[692], + strings[693], + strings[8], + strings[9] + }); + IFC4_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[694], 470, { + strings[695], + strings[696], + strings[8], + strings[9] + }); + IFC4_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[697], 471, new simple_type(simple_type::real_type)); + IFC4_IfcHeatingValueMeasure_type = new type_declaration(strings[698], 472, new simple_type(simple_type::real_type)); + IFC4_IfcHumidifierTypeEnum_type = new enumeration_type(strings[699], 475, { + strings[700], + strings[701], + strings[702], + strings[703], + strings[704], + strings[705], + strings[706], + strings[707], + strings[708], + strings[709], + strings[710], + strings[711], + strings[712], + strings[8], + strings[9] + }); + IFC4_IfcIdentifier_type = new type_declaration(strings[713], 476, new simple_type(simple_type::string_type)); + IFC4_IfcIlluminanceMeasure_type = new type_declaration(strings[714], 477, new simple_type(simple_type::real_type)); + IFC4_IfcInductanceMeasure_type = new type_declaration(strings[715], 485, new simple_type(simple_type::real_type)); + IFC4_IfcInteger_type = new type_declaration(strings[716], 486, new simple_type(simple_type::integer_type)); + IFC4_IfcIntegerCountRateMeasure_type = new type_declaration(strings[717], 487, new simple_type(simple_type::integer_type)); + IFC4_IfcInterceptorTypeEnum_type = new enumeration_type(strings[718], 490, { + strings[719], + strings[720], + strings[443], + strings[721], + strings[8], + strings[9] + }); + IFC4_IfcInternalOrExternalEnum_type = new enumeration_type(strings[722], 491, { + strings[723], + strings[610], + strings[611], + strings[612], + strings[613], + strings[9] + }); + IFC4_IfcInventoryTypeEnum_type = new enumeration_type(strings[724], 494, { + strings[725], + strings[726], + strings[727], + strings[8], + strings[9] + }); + IFC4_IfcIonConcentrationMeasure_type = new type_declaration(strings[728], 495, new simple_type(simple_type::real_type)); + IFC4_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[729], 499, new simple_type(simple_type::real_type)); + IFC4_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[730], 502, { + strings[429], + strings[731], + strings[8], + strings[9] + }); + IFC4_IfcKinematicViscosityMeasure_type = new type_declaration(strings[732], 503, new simple_type(simple_type::real_type)); + IFC4_IfcKnotType_type = new enumeration_type(strings[733], 504, { + strings[734], + strings[735], + strings[736], + strings[115] + }); + IFC4_IfcLabel_type = new type_declaration(strings[737], 505, new simple_type(simple_type::string_type)); + IFC4_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[738], 508, { + strings[739], + strings[740], + strings[741], + strings[271], + strings[272], + strings[742], + strings[743], + strings[308], + strings[744], + strings[745], + strings[746], + strings[275], + strings[747], + strings[266], + strings[748], + strings[310], + strings[749], + strings[750], + strings[751], + strings[8], + strings[9] + }); + IFC4_IfcLampTypeEnum_type = new enumeration_type(strings[752], 512, { + strings[753], + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[759], + strings[760], + strings[761], + strings[8], + strings[9] + }); + IFC4_IfcLanguageId_type = new type_declaration(strings[762], 513, new named_type(IFC4_IfcIdentifier_type)); + IFC4_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[763], 515, { + strings[764], + strings[765], + strings[766] + }); + IFC4_IfcLengthMeasure_type = new type_declaration(strings[767], 516, new simple_type(simple_type::real_type)); + IFC4_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[768], 520, { + strings[769], + strings[770], + strings[771], + strings[9] + }); + IFC4_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[772], 523, { + strings[753], + strings[754], + strings[756], + strings[757], + strings[773], + strings[774], + strings[775], + strings[776], + strings[759], + strings[761], + strings[9] + }); + IFC4_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[777], 526, { + strings[778], + strings[779], + strings[780], + strings[8], + strings[9] + }); + IFC4_IfcLinearForceMeasure_type = new type_declaration(strings[781], 535, new simple_type(simple_type::real_type)); + IFC4_IfcLinearMomentMeasure_type = new type_declaration(strings[782], 536, new simple_type(simple_type::real_type)); + IFC4_IfcLinearStiffnessMeasure_type = new type_declaration(strings[783], 537, new simple_type(simple_type::real_type)); + IFC4_IfcLinearVelocityMeasure_type = new type_declaration(strings[784], 538, new simple_type(simple_type::real_type)); + IFC4_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[785], 540, { + strings[786], + strings[787], + strings[788], + strings[8], + strings[9] + }); + IFC4_IfcLogical_type = new type_declaration(strings[789], 542, new simple_type(simple_type::logical_type)); + IFC4_IfcLogicalOperatorEnum_type = new enumeration_type(strings[790], 543, { + strings[791], + strings[792], + strings[793], + strings[794], + strings[795] + }); + IFC4_IfcLuminousFluxMeasure_type = new type_declaration(strings[796], 546, new simple_type(simple_type::real_type)); + IFC4_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[797], 547, new simple_type(simple_type::real_type)); + IFC4_IfcLuminousIntensityMeasure_type = new type_declaration(strings[798], 548, new simple_type(simple_type::real_type)); + IFC4_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[799], 549, new simple_type(simple_type::real_type)); + IFC4_IfcMagneticFluxMeasure_type = new type_declaration(strings[800], 550, new simple_type(simple_type::real_type)); + IFC4_IfcMassDensityMeasure_type = new type_declaration(strings[801], 554, new simple_type(simple_type::real_type)); + IFC4_IfcMassFlowRateMeasure_type = new type_declaration(strings[802], 555, new simple_type(simple_type::real_type)); + IFC4_IfcMassMeasure_type = new type_declaration(strings[803], 556, new simple_type(simple_type::real_type)); + IFC4_IfcMassPerLengthMeasure_type = new type_declaration(strings[804], 557, new simple_type(simple_type::real_type)); + IFC4_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[805], 582, { + strings[806], + strings[807], + strings[808], + strings[809], + strings[810], + strings[811], + strings[812], + strings[813], + strings[814], + strings[815], + strings[8], + strings[9] + }); + IFC4_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[816], 585, { + strings[817], + strings[818], + strings[819], + strings[820], + strings[821], + strings[8], + strings[9] + }); + IFC4_IfcMemberTypeEnum_type = new enumeration_type(strings[822], 589, { + strings[823], + strings[824], + strings[825], + strings[826], + strings[827], + strings[695], + strings[6], + strings[828], + strings[829], + strings[830], + strings[831], + strings[832], + strings[8], + strings[9] + }); + IFC4_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[833], 593, new simple_type(simple_type::real_type)); + IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[834], 594, new simple_type(simple_type::real_type)); + IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[835], 595, new simple_type(simple_type::real_type)); + IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[836], 596, { + IFC4_IfcBoolean_type, + IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[837], 597, new simple_type(simple_type::real_type)); + IFC4_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[838], 598, { + IFC4_IfcBoolean_type, + IFC4_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[839], 599, { + IFC4_IfcBoolean_type, + IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[840], 600, new simple_type(simple_type::real_type)); + IFC4_IfcMolecularWeightMeasure_type = new type_declaration(strings[841], 601, new simple_type(simple_type::real_type)); + IFC4_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[842], 602, new simple_type(simple_type::real_type)); + IFC4_IfcMonetaryMeasure_type = new type_declaration(strings[843], 603, new simple_type(simple_type::real_type)); + IFC4_IfcMonthInYearNumber_type = new type_declaration(strings[844], 605, new simple_type(simple_type::integer_type)); + IFC4_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[845], 608, { + strings[846], + strings[847], + strings[848], + strings[8], + strings[9] + }); + IFC4_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[849], 610, new named_type(IFC4_IfcLengthMeasure_type)); + IFC4_IfcNullStyle_type = new enumeration_type(strings[850], 612, { + strings[851] + }); + IFC4_IfcNumericMeasure_type = new type_declaration(strings[852], 613, new simple_type(simple_type::number_type)); + IFC4_IfcObjectTypeEnum_type = new enumeration_type(strings[853], 620, { + strings[854], + strings[855], + strings[427], + strings[856], + strings[857], + strings[858], + strings[859], + strings[9] + }); + IFC4_IfcObjectiveEnum_type = new enumeration_type(strings[860], 617, { + strings[861], + strings[862], + strings[863], + strings[610], + strings[864], + strings[865], + strings[866], + strings[867], + strings[868], + strings[869], + strings[870], + strings[8], + strings[9] + }); + IFC4_IfcOccupantTypeEnum_type = new enumeration_type(strings[871], 622, { + strings[872], + strings[873], + strings[874], + strings[875], + strings[876], + strings[877], + strings[878], + strings[8], + strings[9] + }); + IFC4_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[879], 626, { + strings[880], + strings[881], + strings[8], + strings[9] + }); + IFC4_IfcOutletTypeEnum_type = new enumeration_type(strings[882], 635, { + strings[883], + strings[884], + strings[885], + strings[886], + strings[887], + strings[8], + strings[9] + }); + IFC4_IfcPHMeasure_type = new type_declaration(strings[888], 649, new simple_type(simple_type::real_type)); + IFC4_IfcParameterValue_type = new type_declaration(strings[889], 638, new simple_type(simple_type::real_type)); + IFC4_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[890], 642, { + strings[8], + strings[9] + }); + IFC4_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[891], 643, { + strings[892], + strings[893], + strings[894], + strings[8], + strings[9] + }); + IFC4_IfcPermitTypeEnum_type = new enumeration_type(strings[895], 646, { + strings[896], + strings[897], + strings[898], + strings[8], + strings[9] + }); + IFC4_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[899], 651, { + strings[900], + strings[901], + strings[9] + }); + IFC4_IfcPileConstructionEnum_type = new enumeration_type(strings[902], 655, { + strings[903], + strings[904], + strings[905], + strings[906], + strings[8], + strings[9] + }); + IFC4_IfcPileTypeEnum_type = new enumeration_type(strings[907], 657, { + strings[908], + strings[909], + strings[910], + strings[911], + strings[912], + strings[913], + strings[8], + strings[9] + }); + IFC4_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[914], 660, { + strings[171], + strings[181], + strings[182], + strings[183], + strings[184], + strings[510], + strings[185], + strings[8], + strings[9] + }); + IFC4_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[915], 663, { + strings[916], + strings[513], + strings[512], + strings[917], + strings[918], + strings[8], + strings[9] + }); + IFC4_IfcPlanarForceMeasure_type = new type_declaration(strings[919], 668, new simple_type(simple_type::real_type)); + IFC4_IfcPlaneAngleMeasure_type = new type_declaration(strings[920], 670, new simple_type(simple_type::real_type)); + IFC4_IfcPlateTypeEnum_type = new enumeration_type(strings[921], 674, { + strings[922], + strings[923], + strings[8], + strings[9] + }); + IFC4_IfcPositiveInteger_type = new type_declaration(strings[924], 684, new named_type(IFC4_IfcInteger_type)); + IFC4_IfcPositiveLengthMeasure_type = new type_declaration(strings[925], 685, new named_type(IFC4_IfcLengthMeasure_type)); + IFC4_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[926], 686, new named_type(IFC4_IfcPlaneAngleMeasure_type)); + IFC4_IfcPowerMeasure_type = new type_declaration(strings[927], 689, new simple_type(simple_type::real_type)); + IFC4_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[928], 696, { + strings[929], + strings[930], + strings[931] + }); + IFC4_IfcPresentableText_type = new type_declaration(strings[932], 697, new simple_type(simple_type::string_type)); + IFC4_IfcPressureMeasure_type = new type_declaration(strings[933], 704, new simple_type(simple_type::real_type)); + IFC4_IfcProcedureTypeEnum_type = new enumeration_type(strings[934], 707, { + strings[935], + strings[936], + strings[937], + strings[938], + strings[939], + strings[940], + strings[941], + strings[8], + strings[9] + }); + IFC4_IfcProfileTypeEnum_type = new enumeration_type(strings[942], 717, { + strings[943], + strings[944] + }); + IFC4_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[945], 725, { + strings[946], + strings[947], + strings[948], + strings[949], + strings[950], + strings[8], + strings[9] + }); + IFC4_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[951], 720, { + strings[952], + strings[953] + }); + IFC4_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[954], 722, { + strings[8], + strings[9] + }); + IFC4_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[955], 740, { + strings[956], + strings[957], + strings[958], + strings[959], + strings[960], + strings[961], + strings[962], + strings[9] + }); + IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[963], 748, { + strings[964], + strings[965], + strings[966], + strings[967], + strings[8], + strings[9] + }); + IFC4_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[968], 750, { + strings[969], + strings[970], + strings[971], + strings[972], + strings[973], + strings[974], + strings[975], + strings[8], + strings[9] + }); + IFC4_IfcPumpTypeEnum_type = new enumeration_type(strings[976], 754, { + strings[977], + strings[978], + strings[979], + strings[980], + strings[981], + strings[982], + strings[983], + strings[8], + strings[9] + }); + IFC4_IfcRadioActivityMeasure_type = new type_declaration(strings[984], 762, new simple_type(simple_type::real_type)); + IFC4_IfcRailingTypeEnum_type = new enumeration_type(strings[985], 765, { + strings[986], + strings[987], + strings[988], + strings[8], + strings[9] + }); + IFC4_IfcRampFlightTypeEnum_type = new enumeration_type(strings[989], 769, { + strings[990], + strings[991], + strings[8], + strings[9] + }); + IFC4_IfcRampTypeEnum_type = new enumeration_type(strings[992], 771, { + strings[993], + strings[994], + strings[995], + strings[996], + strings[997], + strings[998], + strings[8], + strings[9] + }); + IFC4_IfcRatioMeasure_type = new type_declaration(strings[999], 772, new simple_type(simple_type::real_type)); + IFC4_IfcReal_type = new type_declaration(strings[1000], 775, new simple_type(simple_type::real_type)); + IFC4_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1001], 781, { + strings[1002], + strings[1003], + strings[1004], + strings[1005], + strings[1006], + strings[1007], + strings[1008], + strings[1009] + }); + IFC4_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1010], 783, { + strings[1011], + strings[1012], + strings[1013], + strings[1014], + strings[276], + strings[1015], + strings[1016], + strings[277], + strings[1017], + strings[9] + }); + IFC4_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1018], 788, { + strings[1019], + strings[1020], + strings[1021], + strings[832], + strings[1022], + strings[1023], + strings[1024], + strings[1025], + strings[8], + strings[9] + }); + IFC4_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1026], 789, { + strings[1027], + strings[1028] + }); + IFC4_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1029], 791, { + strings[1025], + strings[1023], + strings[1021], + strings[1019], + strings[1022], + strings[1024], + strings[1020], + strings[832], + strings[8], + strings[9] + }); + IFC4_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1030], 796, { + strings[8], + strings[9] + }); + IFC4_IfcRoleEnum_type = new enumeration_type(strings[1031], 861, { + strings[1032], + strings[1033], + strings[1034], + strings[1035], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[1041], + strings[1042], + strings[1043], + strings[1044], + strings[1045], + strings[1046], + strings[1047], + strings[1048], + strings[877], + strings[1049], + strings[1050], + strings[1051], + strings[1052], + strings[8] + }); + IFC4_IfcRoofTypeEnum_type = new enumeration_type(strings[1053], 864, { + strings[1054], + strings[1055], + strings[1056], + strings[1057], + strings[1058], + strings[1059], + strings[1060], + strings[1061], + strings[1062], + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[8], + strings[9] + }); + IFC4_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1067], 866, new simple_type(simple_type::real_type)); + IFC4_IfcRotationalMassMeasure_type = new type_declaration(strings[1068], 867, new simple_type(simple_type::real_type)); + IFC4_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1069], 868, new simple_type(simple_type::real_type)); + IFC4_IfcRotationalStiffnessSelect_type = new select_type(strings[1070], 869, { + IFC4_IfcBoolean_type, + IFC4_IfcRotationalStiffnessMeasure_type + }); + IFC4_IfcSIPrefix_type = new enumeration_type(strings[1071], 900, { + strings[1072], + strings[1073], + strings[1074], + strings[1075], + strings[1076], + strings[1077], + strings[1078], + strings[1079], + strings[1080], + strings[1081], + strings[1082], + strings[1083], + strings[1084], + strings[1085], + strings[1086], + strings[1087] + }); + IFC4_IfcSIUnitName_type = new enumeration_type(strings[1088], 903, { + strings[1089], + strings[1090], + strings[1091], + strings[1092], + strings[1093], + strings[1094], + strings[1095], + strings[1096], + strings[1097], + strings[1098], + strings[1099], + strings[1100], + strings[1101], + strings[1102], + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[1107], + strings[1108], + strings[1109], + strings[1110], + strings[1111], + strings[1112], + strings[1113], + strings[1114], + strings[1115], + strings[1116], + strings[1117], + strings[1118] + }); + IFC4_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1119], 873, { + strings[1120], + strings[1121], + strings[1122], + strings[1123], + strings[641], + strings[1124], + strings[1125], + strings[1126], + strings[1127], + strings[1128], + strings[8], + strings[9] + }); + IFC4_IfcSectionModulusMeasure_type = new type_declaration(strings[1129], 878, new simple_type(simple_type::real_type)); + IFC4_IfcSectionTypeEnum_type = new enumeration_type(strings[1130], 881, { + strings[1131], + strings[1132] + }); + IFC4_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1133], 876, new simple_type(simple_type::real_type)); + IFC4_IfcSensorTypeEnum_type = new enumeration_type(strings[1134], 885, { + strings[1135], + strings[1136], + strings[1137], + strings[1138], + strings[1139], + strings[1140], + strings[1141], + strings[1142], + strings[1143], + strings[1144], + strings[1145], + strings[1146], + strings[1147], + strings[1148], + strings[1149], + strings[1150], + strings[1151], + strings[1152], + strings[1153], + strings[1154], + strings[1155], + strings[1156], + strings[1157], + strings[1158], + strings[8], + strings[9] + }); + IFC4_IfcSequenceEnum_type = new enumeration_type(strings[1159], 886, { + strings[1160], + strings[1161], + strings[1162], + strings[1163], + strings[8], + strings[9] + }); + IFC4_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1164], 889, { + strings[1165], + strings[1166], + strings[1167], + strings[8], + strings[9] + }); + IFC4_IfcShearModulusMeasure_type = new type_declaration(strings[1168], 893, new simple_type(simple_type::real_type)); + IFC4_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1169], 898, { + strings[1170], + strings[1171], + strings[1172], + strings[1173], + strings[1174], + strings[1175], + strings[1176], + strings[1177], + strings[1178], + strings[1179], + strings[1180], + strings[1181] + }); + IFC4_IfcSlabTypeEnum_type = new enumeration_type(strings[1182], 909, { + strings[1183], + strings[1184], + strings[1185], + strings[1186], + strings[8], + strings[9] + }); + IFC4_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1187], 913, { + strings[1188], + strings[1189], + strings[8], + strings[9] + }); + IFC4_IfcSolidAngleMeasure_type = new type_declaration(strings[1190], 914, new simple_type(simple_type::real_type)); + IFC4_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1191], 917, new simple_type(simple_type::real_type)); + IFC4_IfcSoundPowerMeasure_type = new type_declaration(strings[1192], 918, new simple_type(simple_type::real_type)); + IFC4_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1193], 919, new simple_type(simple_type::real_type)); + IFC4_IfcSoundPressureMeasure_type = new type_declaration(strings[1194], 920, new simple_type(simple_type::real_type)); + IFC4_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1195], 925, { + strings[1196], + strings[1197], + strings[8], + strings[9] + }); + IFC4_IfcSpaceTypeEnum_type = new enumeration_type(strings[1198], 927, { + strings[1199], + strings[1200], + strings[1201], + strings[723], + strings[610], + strings[8], + strings[9] + }); + IFC4_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1202], 934, { + strings[1203], + strings[1204], + strings[265], + strings[1205], + strings[448], + strings[967], + strings[23], + strings[455], + strings[8], + strings[9] + }); + IFC4_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1206], 935, new simple_type(simple_type::real_type)); + IFC4_IfcSpecularExponent_type = new type_declaration(strings[1207], 936, new simple_type(simple_type::real_type)); + IFC4_IfcSpecularRoughness_type = new type_declaration(strings[1208], 938, new simple_type(simple_type::real_type)); + IFC4_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1209], 943, { + strings[1210], + strings[1211], + strings[1212], + strings[8], + strings[9] + }); + IFC4_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1213], 947, { + strings[990], + strings[1214], + strings[991], + strings[1215], + strings[1066], + strings[8], + strings[9] + }); + IFC4_IfcStairTypeEnum_type = new enumeration_type(strings[1216], 949, { + strings[1217], + strings[1218], + strings[1219], + strings[1220], + strings[1221], + strings[1222], + strings[1223], + strings[1224], + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[1229], + strings[1230], + strings[8], + strings[9] + }); + IFC4_IfcStateEnum_type = new enumeration_type(strings[1231], 950, { + strings[1232], + strings[1233], + strings[1234], + strings[1235], + strings[1236] + }); + IFC4_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1237], 958, { + strings[1238], + strings[320], + strings[1239], + strings[1240], + strings[1241], + strings[1242], + strings[1243], + strings[8], + strings[9] + }); + IFC4_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1244], 961, { + strings[1245], + strings[1246], + strings[415], + strings[1247], + strings[1248], + strings[8], + strings[9] + }); + IFC4_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1249], 987, { + strings[1238], + strings[1250], + strings[1243], + strings[1251], + strings[8], + strings[9] + }); + IFC4_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1252], 990, { + strings[1253], + strings[1254], + strings[1255], + strings[8], + strings[9] + }); + IFC4_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1256], 999, { + strings[1257], + strings[898], + strings[8], + strings[9] + }); + IFC4_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1258], 1005, { + strings[1259], + strings[1260], + strings[1261], + strings[8], + strings[9] + }); + IFC4_IfcSurfaceSide_type = new enumeration_type(strings[1262], 1010, { + strings[399], + strings[400], + strings[1263] + }); + IFC4_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1264], 1025, { + strings[1265], + strings[1266], + strings[1267], + strings[1268], + strings[1269], + strings[1270], + strings[1271], + strings[1272], + strings[1273], + strings[8], + strings[9] + }); + IFC4_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1274], 1029, { + strings[1275], + strings[1276], + strings[8], + strings[9] + }); + IFC4_IfcTankTypeEnum_type = new enumeration_type(strings[1277], 1035, { + strings[1278], + strings[1279], + strings[1280], + strings[1281], + strings[1282], + strings[1283], + strings[1284], + strings[8], + strings[9] + }); + IFC4_IfcTaskDurationEnum_type = new enumeration_type(strings[1285], 1037, { + strings[1286], + strings[1287], + strings[9] + }); + IFC4_IfcTaskTypeEnum_type = new enumeration_type(strings[1288], 1041, { + strings[1289], + strings[1203], + strings[1290], + strings[1291], + strings[430], + strings[1292], + strings[1293], + strings[1294], + strings[1295], + strings[1296], + strings[1297], + strings[1298], + strings[8], + strings[9] + }); + IFC4_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1299], 1043, new simple_type(simple_type::real_type)); + IFC4_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1300], 1044, new simple_type(simple_type::real_type)); + IFC4_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1301], 1048, { + strings[1302], + strings[1303], + strings[1304], + strings[8], + strings[9] + }); + IFC4_IfcTendonTypeEnum_type = new enumeration_type(strings[1305], 1050, { + strings[1306], + strings[1307], + strings[1308], + strings[1309], + strings[8], + strings[9] + }); + IFC4_IfcText_type = new type_declaration(strings[1310], 1053, new simple_type(simple_type::string_type)); + IFC4_IfcTextAlignment_type = new type_declaration(strings[1311], 1054, new simple_type(simple_type::string_type)); + IFC4_IfcTextDecoration_type = new type_declaration(strings[1312], 1055, new simple_type(simple_type::string_type)); + IFC4_IfcTextFontName_type = new type_declaration(strings[1313], 1056, new simple_type(simple_type::string_type)); + IFC4_IfcTextPath_type = new enumeration_type(strings[1314], 1060, { + strings[477], + strings[479], + strings[1315], + strings[1316] + }); + IFC4_IfcTextTransformation_type = new type_declaration(strings[1317], 1065, new simple_type(simple_type::string_type)); + IFC4_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1318], 1071, new simple_type(simple_type::real_type)); + IFC4_IfcThermalConductivityMeasure_type = new type_declaration(strings[1319], 1072, new simple_type(simple_type::real_type)); + IFC4_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1320], 1073, new simple_type(simple_type::real_type)); + IFC4_IfcThermalResistanceMeasure_type = new type_declaration(strings[1321], 1074, new simple_type(simple_type::real_type)); + IFC4_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1322], 1075, new simple_type(simple_type::real_type)); + IFC4_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1323], 1076, new simple_type(simple_type::real_type)); + IFC4_IfcTime_type = new type_declaration(strings[1324], 1077, new simple_type(simple_type::string_type)); + IFC4_IfcTimeMeasure_type = new type_declaration(strings[1325], 1078, new simple_type(simple_type::real_type)); + IFC4_IfcTimeOrRatioSelect_type = new select_type(strings[1326], 1079, { + IFC4_IfcDuration_type, + IFC4_IfcRatioMeasure_type + }); + IFC4_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1327], 1082, { + strings[1328], + strings[1243], + strings[1329], + strings[1330], + strings[1331], + strings[1332], + strings[9] + }); + IFC4_IfcTimeStamp_type = new type_declaration(strings[1333], 1084, new simple_type(simple_type::integer_type)); + IFC4_IfcTorqueMeasure_type = new type_declaration(strings[1334], 1088, new simple_type(simple_type::real_type)); + IFC4_IfcTransformerTypeEnum_type = new enumeration_type(strings[1335], 1091, { + strings[32], + strings[1336], + strings[1337], + strings[1338], + strings[1339], + strings[8], + strings[9] + }); + IFC4_IfcTransitionCode_type = new enumeration_type(strings[1340], 1092, { + strings[1341], + strings[1328], + strings[1342], + strings[1343] + }); + IFC4_IfcTranslationalStiffnessSelect_type = new select_type(strings[1344], 1093, { + IFC4_IfcBoolean_type, + IFC4_IfcLinearStiffnessMeasure_type + }); + IFC4_IfcTransportElementTypeEnum_type = new enumeration_type(strings[1345], 1096, { + strings[1346], + strings[1347], + strings[1348], + strings[1349], + strings[1350], + strings[8], + strings[9] + }); + IFC4_IfcTrimmingPreference_type = new enumeration_type(strings[1351], 1100, { + strings[1352], + strings[867], + strings[115] + }); + IFC4_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1353], 1105, { + strings[1354], + strings[8], + strings[9] + }); + IFC4_IfcURIReference_type = new type_declaration(strings[1355], 1119, new simple_type(simple_type::string_type)); + IFC4_IfcUnitEnum_type = new enumeration_type(strings[1356], 1118, { + strings[1357], + strings[1358], + strings[1359], + strings[1360], + strings[1361], + strings[1362], + strings[1363], + strings[1364], + strings[1365], + strings[1366], + strings[1367], + strings[1368], + strings[1369], + strings[1370], + strings[1371], + strings[1372], + strings[1373], + strings[1374], + strings[1375], + strings[1376], + strings[1377], + strings[1378], + strings[1379], + strings[1380], + strings[1381], + strings[1382], + strings[1383], + strings[1384], + strings[1385], + strings[8] + }); + IFC4_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1386], 1113, { + strings[1387], + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[8], + strings[9] + }); + IFC4_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1395], 1116, { + strings[1396], + strings[1397], + strings[1398], + strings[1399], + strings[1400], + strings[8], + strings[9] + }); + IFC4_IfcValveTypeEnum_type = new enumeration_type(strings[1401], 1124, { + strings[1402], + strings[1403], + strings[1404], + strings[1405], + strings[1406], + strings[1407], + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[1417], + strings[1418], + strings[1419], + strings[1420], + strings[1421], + strings[1422], + strings[8], + strings[9] + }); + IFC4_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1423], 1125, new simple_type(simple_type::real_type)); + IFC4_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1424], 1133, { + strings[1425], + strings[1426], + strings[8], + strings[9] + }); + IFC4_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1427], 1137, { + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1023], + strings[8], + strings[9] + }); + IFC4_IfcVolumeMeasure_type = new type_declaration(strings[1433], 1138, new simple_type(simple_type::real_type)); + IFC4_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1434], 1139, new simple_type(simple_type::real_type)); + IFC4_IfcWallTypeEnum_type = new enumeration_type(strings[1435], 1144, { + strings[1436], + strings[1437], + strings[1438], + strings[1439], + strings[1020], + strings[1440], + strings[1441], + strings[1239], + strings[1442], + strings[8], + strings[9] + }); + IFC4_IfcWarpingConstantMeasure_type = new type_declaration(strings[1443], 1145, new simple_type(simple_type::real_type)); + IFC4_IfcWarpingMomentMeasure_type = new type_declaration(strings[1444], 1146, new simple_type(simple_type::real_type)); + IFC4_IfcWarpingStiffnessSelect_type = new select_type(strings[1445], 1147, { + IFC4_IfcBoolean_type, + IFC4_IfcWarpingMomentMeasure_type + }); + IFC4_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1446], 1150, { + strings[1447], + strings[1448], + strings[1449], + strings[1450], + strings[1451], + strings[1452], + strings[1453], + strings[8], + strings[9] + }); + IFC4_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1454], 1153, { + strings[1455], + strings[1456], + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[1466], + strings[1467], + strings[9] + }); + IFC4_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1468], 1154, { + strings[477], + strings[478], + strings[479], + strings[1469], + strings[1470], + strings[9] + }); + IFC4_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1471], 1158, { + strings[481], + strings[482], + strings[483], + strings[278], + strings[484], + strings[277], + strings[1472], + strings[9] + }); + IFC4_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1473], 1159, { + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[1480], + strings[1481], + strings[1482], + strings[8], + strings[9] + }); + IFC4_IfcWindowTypeEnum_type = new enumeration_type(strings[1483], 1161, { + strings[1484], + strings[1485], + strings[1486], + strings[8], + strings[9] + }); + IFC4_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1487], 1162, { + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[1480], + strings[1481], + strings[1482], + strings[8], + strings[9] + }); + IFC4_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1488], 1164, { + strings[1489], + strings[1490], + strings[1491], + strings[8], + strings[9] + }); + IFC4_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1492], 1167, { + strings[1493], + strings[1494], + strings[1495], + strings[8], + strings[9] + }); + IFC4_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1496], 1169, { + strings[1493], + strings[1494], + strings[1495], + strings[8], + strings[9] + }); + IFC4_IfcActorRole_type = new entity(strings[1497], false, 7, 0); + IFC4_IfcAddress_type = new entity(strings[1498], true, 12, 0); + IFC4_IfcApplication_type = new entity(strings[1499], false, 35, 0); + IFC4_IfcAppliedValue_type = new entity(strings[1500], false, 36, 0); + IFC4_IfcApproval_type = new entity(strings[1501], false, 38, 0); + IFC4_IfcBoundaryCondition_type = new entity(strings[1502], true, 74, 0); + IFC4_IfcBoundaryEdgeCondition_type = new entity(strings[1503], false, 76, IFC4_IfcBoundaryCondition_type); + IFC4_IfcBoundaryFaceCondition_type = new entity(strings[1504], false, 77, IFC4_IfcBoundaryCondition_type); + IFC4_IfcBoundaryNodeCondition_type = new entity(strings[1505], false, 78, IFC4_IfcBoundaryCondition_type); + IFC4_IfcBoundaryNodeConditionWarping_type = new entity(strings[1506], false, 79, IFC4_IfcBoundaryNodeCondition_type); + IFC4_IfcConnectionGeometry_type = new entity(strings[1507], true, 179, 0); + IFC4_IfcConnectionPointGeometry_type = new entity(strings[1508], false, 181, IFC4_IfcConnectionGeometry_type); + IFC4_IfcConnectionSurfaceGeometry_type = new entity(strings[1509], false, 182, IFC4_IfcConnectionGeometry_type); + IFC4_IfcConnectionVolumeGeometry_type = new entity(strings[1510], false, 184, IFC4_IfcConnectionGeometry_type); + IFC4_IfcConstraint_type = new entity(strings[1511], true, 185, 0); + IFC4_IfcCoordinateOperation_type = new entity(strings[1512], true, 213, 0); + IFC4_IfcCoordinateReferenceSystem_type = new entity(strings[1513], true, 214, 0); + IFC4_IfcCostValue_type = new entity(strings[1514], false, 220, IFC4_IfcAppliedValue_type); + IFC4_IfcDerivedUnit_type = new entity(strings[1515], false, 261, 0); + IFC4_IfcDerivedUnitElement_type = new entity(strings[1516], false, 262, 0); + IFC4_IfcDimensionalExponents_type = new entity(strings[1517], false, 265, 0); + IFC4_IfcExternalInformation_type = new entity(strings[1518], true, 375, 0); + IFC4_IfcExternalReference_type = new entity(strings[1519], true, 379, 0); + IFC4_IfcExternallyDefinedHatchStyle_type = new entity(strings[1520], false, 376, IFC4_IfcExternalReference_type); + IFC4_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1521], false, 377, IFC4_IfcExternalReference_type); + IFC4_IfcExternallyDefinedTextFont_type = new entity(strings[1522], false, 378, IFC4_IfcExternalReference_type); + IFC4_IfcGridAxis_type = new entity(strings[1523], false, 461, 0); + IFC4_IfcIrregularTimeSeriesValue_type = new entity(strings[1524], false, 497, 0); + IFC4_IfcLibraryInformation_type = new entity(strings[1525], false, 517, IFC4_IfcExternalInformation_type); + IFC4_IfcLibraryReference_type = new entity(strings[1526], false, 518, IFC4_IfcExternalReference_type); + IFC4_IfcLightDistributionData_type = new entity(strings[1527], false, 521, 0); + IFC4_IfcLightIntensityDistribution_type = new entity(strings[1528], false, 527, 0); + IFC4_IfcMapConversion_type = new entity(strings[1529], false, 552, IFC4_IfcCoordinateOperation_type); + IFC4_IfcMaterialClassificationRelationship_type = new entity(strings[1530], false, 559, 0); + IFC4_IfcMaterialDefinition_type = new entity(strings[1531], true, 562, 0); + IFC4_IfcMaterialLayer_type = new entity(strings[1532], false, 564, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialLayerSet_type = new entity(strings[1533], false, 565, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialLayerWithOffsets_type = new entity(strings[1534], false, 567, IFC4_IfcMaterialLayer_type); + IFC4_IfcMaterialList_type = new entity(strings[1535], false, 568, 0); + IFC4_IfcMaterialProfile_type = new entity(strings[1536], false, 569, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialProfileSet_type = new entity(strings[1537], false, 570, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialProfileWithOffsets_type = new entity(strings[1538], false, 573, IFC4_IfcMaterialProfile_type); + IFC4_IfcMaterialUsageDefinition_type = new entity(strings[1539], true, 577, 0); + IFC4_IfcMeasureWithUnit_type = new entity(strings[1540], false, 579, 0); + IFC4_IfcMetric_type = new entity(strings[1541], false, 590, IFC4_IfcConstraint_type); + IFC4_IfcMonetaryUnit_type = new entity(strings[1542], false, 604, 0); + IFC4_IfcNamedUnit_type = new entity(strings[1543], true, 609, 0); + IFC4_IfcObjectPlacement_type = new entity(strings[1544], true, 618, 0); + IFC4_IfcObjective_type = new entity(strings[1545], false, 616, IFC4_IfcConstraint_type); + IFC4_IfcOrganization_type = new entity(strings[1546], false, 629, 0); + IFC4_IfcOwnerHistory_type = new entity(strings[1547], false, 636, 0); + IFC4_IfcPerson_type = new entity(strings[1548], false, 647, 0); + IFC4_IfcPersonAndOrganization_type = new entity(strings[1549], false, 648, 0); + IFC4_IfcPhysicalQuantity_type = new entity(strings[1550], true, 652, 0); + IFC4_IfcPhysicalSimpleQuantity_type = new entity(strings[1551], true, 653, IFC4_IfcPhysicalQuantity_type); + IFC4_IfcPostalAddress_type = new entity(strings[1552], false, 688, IFC4_IfcAddress_type); + IFC4_IfcPresentationItem_type = new entity(strings[1553], true, 698, 0); + IFC4_IfcPresentationLayerAssignment_type = new entity(strings[1554], false, 699, 0); + IFC4_IfcPresentationLayerWithStyle_type = new entity(strings[1555], false, 700, IFC4_IfcPresentationLayerAssignment_type); + IFC4_IfcPresentationStyle_type = new entity(strings[1556], true, 701, 0); + IFC4_IfcPresentationStyleAssignment_type = new entity(strings[1557], false, 702, 0); + IFC4_IfcProductRepresentation_type = new entity(strings[1558], true, 712, 0); + IFC4_IfcProfileDef_type = new entity(strings[1559], false, 715, 0); + IFC4_IfcProjectedCRS_type = new entity(strings[1560], false, 719, IFC4_IfcCoordinateReferenceSystem_type); + IFC4_IfcPropertyAbstraction_type = new entity(strings[1561], true, 727, 0); + IFC4_IfcPropertyEnumeration_type = new entity(strings[1562], false, 732, IFC4_IfcPropertyAbstraction_type); + IFC4_IfcQuantityArea_type = new entity(strings[1563], false, 755, IFC4_IfcPhysicalSimpleQuantity_type); + IFC4_IfcQuantityCount_type = new entity(strings[1564], false, 756, IFC4_IfcPhysicalSimpleQuantity_type); + IFC4_IfcQuantityLength_type = new entity(strings[1565], false, 757, IFC4_IfcPhysicalSimpleQuantity_type); + IFC4_IfcQuantityTime_type = new entity(strings[1566], false, 759, IFC4_IfcPhysicalSimpleQuantity_type); + IFC4_IfcQuantityVolume_type = new entity(strings[1567], false, 760, IFC4_IfcPhysicalSimpleQuantity_type); + IFC4_IfcQuantityWeight_type = new entity(strings[1568], false, 761, IFC4_IfcPhysicalSimpleQuantity_type); + IFC4_IfcRecurrencePattern_type = new entity(strings[1569], false, 780, 0); + IFC4_IfcReference_type = new entity(strings[1570], false, 782, 0); + IFC4_IfcRepresentation_type = new entity(strings[1571], true, 846, 0); + IFC4_IfcRepresentationContext_type = new entity(strings[1572], true, 847, 0); + IFC4_IfcRepresentationItem_type = new entity(strings[1573], true, 848, 0); + IFC4_IfcRepresentationMap_type = new entity(strings[1574], false, 849, 0); + IFC4_IfcResourceLevelRelationship_type = new entity(strings[1575], true, 853, 0); + IFC4_IfcRoot_type = new entity(strings[1576], true, 865, 0); + IFC4_IfcSIUnit_type = new entity(strings[1577], false, 902, IFC4_IfcNamedUnit_type); + IFC4_IfcSchedulingTime_type = new entity(strings[1578], true, 874, 0); + IFC4_IfcShapeAspect_type = new entity(strings[1579], false, 890, 0); + IFC4_IfcShapeModel_type = new entity(strings[1580], true, 891, IFC4_IfcRepresentation_type); + IFC4_IfcShapeRepresentation_type = new entity(strings[1581], false, 892, IFC4_IfcShapeModel_type); + IFC4_IfcStructuralConnectionCondition_type = new entity(strings[1582], true, 956, 0); + IFC4_IfcStructuralLoad_type = new entity(strings[1583], true, 966, 0); + IFC4_IfcStructuralLoadConfiguration_type = new entity(strings[1584], false, 968, IFC4_IfcStructuralLoad_type); + IFC4_IfcStructuralLoadOrResult_type = new entity(strings[1585], true, 971, IFC4_IfcStructuralLoad_type); + IFC4_IfcStructuralLoadStatic_type = new entity(strings[1586], true, 977, IFC4_IfcStructuralLoadOrResult_type); + IFC4_IfcStructuralLoadTemperature_type = new entity(strings[1587], false, 978, IFC4_IfcStructuralLoadStatic_type); + IFC4_IfcStyleModel_type = new entity(strings[1588], true, 996, IFC4_IfcRepresentation_type); + IFC4_IfcStyledItem_type = new entity(strings[1589], false, 994, IFC4_IfcRepresentationItem_type); + IFC4_IfcStyledRepresentation_type = new entity(strings[1590], false, 995, IFC4_IfcStyleModel_type); + IFC4_IfcSurfaceReinforcementArea_type = new entity(strings[1591], false, 1009, IFC4_IfcStructuralLoadOrResult_type); + IFC4_IfcSurfaceStyle_type = new entity(strings[1592], false, 1011, IFC4_IfcPresentationStyle_type); + IFC4_IfcSurfaceStyleLighting_type = new entity(strings[1593], false, 1013, IFC4_IfcPresentationItem_type); + IFC4_IfcSurfaceStyleRefraction_type = new entity(strings[1594], false, 1014, IFC4_IfcPresentationItem_type); + IFC4_IfcSurfaceStyleShading_type = new entity(strings[1595], false, 1016, IFC4_IfcPresentationItem_type); + IFC4_IfcSurfaceStyleWithTextures_type = new entity(strings[1596], false, 1017, IFC4_IfcPresentationItem_type); + IFC4_IfcSurfaceTexture_type = new entity(strings[1597], true, 1018, IFC4_IfcPresentationItem_type); + IFC4_IfcTable_type = new entity(strings[1598], false, 1030, 0); + IFC4_IfcTableColumn_type = new entity(strings[1599], false, 1031, 0); + IFC4_IfcTableRow_type = new entity(strings[1600], false, 1032, 0); + IFC4_IfcTaskTime_type = new entity(strings[1601], false, 1038, IFC4_IfcSchedulingTime_type); + IFC4_IfcTaskTimeRecurring_type = new entity(strings[1602], false, 1039, IFC4_IfcTaskTime_type); + IFC4_IfcTelecomAddress_type = new entity(strings[1603], false, 1042, IFC4_IfcAddress_type); + IFC4_IfcTextStyle_type = new entity(strings[1604], false, 1061, IFC4_IfcPresentationStyle_type); + IFC4_IfcTextStyleForDefinedFont_type = new entity(strings[1605], false, 1063, IFC4_IfcPresentationItem_type); + IFC4_IfcTextStyleTextModel_type = new entity(strings[1606], false, 1064, IFC4_IfcPresentationItem_type); + IFC4_IfcTextureCoordinate_type = new entity(strings[1607], true, 1066, IFC4_IfcPresentationItem_type); + IFC4_IfcTextureCoordinateGenerator_type = new entity(strings[1608], false, 1067, IFC4_IfcTextureCoordinate_type); + IFC4_IfcTextureMap_type = new entity(strings[1609], false, 1068, IFC4_IfcTextureCoordinate_type); + IFC4_IfcTextureVertex_type = new entity(strings[1610], false, 1069, IFC4_IfcPresentationItem_type); + IFC4_IfcTextureVertexList_type = new entity(strings[1611], false, 1070, IFC4_IfcPresentationItem_type); + IFC4_IfcTimePeriod_type = new entity(strings[1612], false, 1080, 0); + IFC4_IfcTimeSeries_type = new entity(strings[1613], true, 1081, 0); + IFC4_IfcTimeSeriesValue_type = new entity(strings[1614], false, 1083, 0); + IFC4_IfcTopologicalRepresentationItem_type = new entity(strings[1615], true, 1085, IFC4_IfcRepresentationItem_type); + IFC4_IfcTopologyRepresentation_type = new entity(strings[1616], false, 1086, IFC4_IfcShapeModel_type); + IFC4_IfcUnitAssignment_type = new entity(strings[1617], false, 1117, 0); + IFC4_IfcVertex_type = new entity(strings[1618], false, 1128, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcVertexPoint_type = new entity(strings[1619], false, 1130, IFC4_IfcVertex_type); + IFC4_IfcVirtualGridIntersection_type = new entity(strings[1620], false, 1135, 0); + IFC4_IfcWorkTime_type = new entity(strings[1621], false, 1170, IFC4_IfcSchedulingTime_type); + IFC4_IfcActorSelect_type = new select_type(strings[1622], 8, { + IFC4_IfcOrganization_type, + IFC4_IfcPerson_type, + IFC4_IfcPersonAndOrganization_type + }); + IFC4_IfcArcIndex_type = new type_declaration(strings[1623], 43, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcPositiveInteger_type))); + IFC4_IfcBendingParameterSelect_type = new select_type(strings[1624], 62, { + IFC4_IfcLengthMeasure_type, + IFC4_IfcPlaneAngleMeasure_type + }); + IFC4_IfcBoxAlignment_type = new type_declaration(strings[1625], 83, new named_type(IFC4_IfcLabel_type)); + IFC4_IfcDerivedMeasureValue_type = new select_type(strings[1626], 259, { + IFC4_IfcAbsorbedDoseMeasure_type, + IFC4_IfcAccelerationMeasure_type, + IFC4_IfcAngularVelocityMeasure_type, + IFC4_IfcAreaDensityMeasure_type, + IFC4_IfcCompoundPlaneAngleMeasure_type, + IFC4_IfcCurvatureMeasure_type, + IFC4_IfcDoseEquivalentMeasure_type, + IFC4_IfcDynamicViscosityMeasure_type, + IFC4_IfcElectricCapacitanceMeasure_type, + IFC4_IfcElectricChargeMeasure_type, + IFC4_IfcElectricConductanceMeasure_type, + IFC4_IfcElectricResistanceMeasure_type, + IFC4_IfcElectricVoltageMeasure_type, + IFC4_IfcEnergyMeasure_type, + IFC4_IfcForceMeasure_type, + IFC4_IfcFrequencyMeasure_type, + IFC4_IfcHeatFluxDensityMeasure_type, + IFC4_IfcHeatingValueMeasure_type, + IFC4_IfcIlluminanceMeasure_type, + IFC4_IfcInductanceMeasure_type, + IFC4_IfcIntegerCountRateMeasure_type, + IFC4_IfcIonConcentrationMeasure_type, + IFC4_IfcIsothermalMoistureCapacityMeasure_type, + IFC4_IfcKinematicViscosityMeasure_type, + IFC4_IfcLinearForceMeasure_type, + IFC4_IfcLinearMomentMeasure_type, + IFC4_IfcLinearStiffnessMeasure_type, + IFC4_IfcLinearVelocityMeasure_type, + IFC4_IfcLuminousFluxMeasure_type, + IFC4_IfcLuminousIntensityDistributionMeasure_type, + IFC4_IfcMagneticFluxDensityMeasure_type, + IFC4_IfcMagneticFluxMeasure_type, + IFC4_IfcMassDensityMeasure_type, + IFC4_IfcMassFlowRateMeasure_type, + IFC4_IfcMassPerLengthMeasure_type, + IFC4_IfcModulusOfElasticityMeasure_type, + IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4_IfcModulusOfSubgradeReactionMeasure_type, + IFC4_IfcMoistureDiffusivityMeasure_type, + IFC4_IfcMolecularWeightMeasure_type, + IFC4_IfcMomentOfInertiaMeasure_type, + IFC4_IfcMonetaryMeasure_type, + IFC4_IfcPHMeasure_type, + IFC4_IfcPlanarForceMeasure_type, + IFC4_IfcPowerMeasure_type, + IFC4_IfcPressureMeasure_type, + IFC4_IfcRadioActivityMeasure_type, + IFC4_IfcRotationalFrequencyMeasure_type, + IFC4_IfcRotationalMassMeasure_type, + IFC4_IfcRotationalStiffnessMeasure_type, + IFC4_IfcSectionModulusMeasure_type, + IFC4_IfcSectionalAreaIntegralMeasure_type, + IFC4_IfcShearModulusMeasure_type, + IFC4_IfcSoundPowerLevelMeasure_type, + IFC4_IfcSoundPowerMeasure_type, + IFC4_IfcSoundPressureLevelMeasure_type, + IFC4_IfcSoundPressureMeasure_type, + IFC4_IfcSpecificHeatCapacityMeasure_type, + IFC4_IfcTemperatureGradientMeasure_type, + IFC4_IfcTemperatureRateOfChangeMeasure_type, + IFC4_IfcThermalAdmittanceMeasure_type, + IFC4_IfcThermalConductivityMeasure_type, + IFC4_IfcThermalExpansionCoefficientMeasure_type, + IFC4_IfcThermalResistanceMeasure_type, + IFC4_IfcThermalTransmittanceMeasure_type, + IFC4_IfcTorqueMeasure_type, + IFC4_IfcVaporPermeabilityMeasure_type, + IFC4_IfcVolumetricFlowRateMeasure_type, + IFC4_IfcWarpingConstantMeasure_type, + IFC4_IfcWarpingMomentMeasure_type + }); + IFC4_IfcLayeredItem_type = new select_type(strings[1627], 514, { + IFC4_IfcRepresentation_type, + IFC4_IfcRepresentationItem_type + }); + IFC4_IfcLibrarySelect_type = new select_type(strings[1628], 519, { + IFC4_IfcLibraryInformation_type, + IFC4_IfcLibraryReference_type + }); + IFC4_IfcLightDistributionDataSourceSelect_type = new select_type(strings[1629], 522, { + IFC4_IfcExternalReference_type, + IFC4_IfcLightIntensityDistribution_type + }); + IFC4_IfcLineIndex_type = new type_declaration(strings[1630], 539, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcPositiveInteger_type))); + IFC4_IfcMaterialSelect_type = new select_type(strings[1631], 576, { + IFC4_IfcMaterialDefinition_type, + IFC4_IfcMaterialList_type, + IFC4_IfcMaterialUsageDefinition_type + }); + IFC4_IfcNormalisedRatioMeasure_type = new type_declaration(strings[1632], 611, new named_type(IFC4_IfcRatioMeasure_type)); + IFC4_IfcObjectReferenceSelect_type = new select_type(strings[1633], 619, { + IFC4_IfcAddress_type, + IFC4_IfcAppliedValue_type, + IFC4_IfcExternalReference_type, + IFC4_IfcMaterialDefinition_type, + IFC4_IfcOrganization_type, + IFC4_IfcPerson_type, + IFC4_IfcPersonAndOrganization_type, + IFC4_IfcTable_type, + IFC4_IfcTimeSeries_type + }); + IFC4_IfcPositiveRatioMeasure_type = new type_declaration(strings[1634], 687, new named_type(IFC4_IfcRatioMeasure_type)); + IFC4_IfcSegmentIndexSelect_type = new select_type(strings[1635], 882, { + IFC4_IfcArcIndex_type, + IFC4_IfcLineIndex_type + }); + IFC4_IfcSimpleValue_type = new select_type(strings[1636], 899, { + IFC4_IfcBinary_type, + IFC4_IfcBoolean_type, + IFC4_IfcDate_type, + IFC4_IfcDateTime_type, + IFC4_IfcDuration_type, + IFC4_IfcIdentifier_type, + IFC4_IfcInteger_type, + IFC4_IfcLabel_type, + IFC4_IfcLogical_type, + IFC4_IfcPositiveInteger_type, + IFC4_IfcReal_type, + IFC4_IfcText_type, + IFC4_IfcTime_type, + IFC4_IfcTimeStamp_type + }); + IFC4_IfcSizeSelect_type = new select_type(strings[1637], 904, { + IFC4_IfcDescriptiveMeasure_type, + IFC4_IfcLengthMeasure_type, + IFC4_IfcNormalisedRatioMeasure_type, + IFC4_IfcPositiveLengthMeasure_type, + IFC4_IfcPositiveRatioMeasure_type, + IFC4_IfcRatioMeasure_type + }); + IFC4_IfcSpecularHighlightSelect_type = new select_type(strings[1638], 937, { + IFC4_IfcSpecularExponent_type, + IFC4_IfcSpecularRoughness_type + }); + IFC4_IfcStyleAssignmentSelect_type = new select_type(strings[1639], 993, { + IFC4_IfcPresentationStyle_type, + IFC4_IfcPresentationStyleAssignment_type + }); + IFC4_IfcSurfaceStyleElementSelect_type = new select_type(strings[1640], 1012, { + IFC4_IfcExternallyDefinedSurfaceStyle_type, + IFC4_IfcSurfaceStyleLighting_type, + IFC4_IfcSurfaceStyleRefraction_type, + IFC4_IfcSurfaceStyleShading_type, + IFC4_IfcSurfaceStyleWithTextures_type + }); + IFC4_IfcUnit_type = new select_type(strings[1641], 1110, { + IFC4_IfcDerivedUnit_type, + IFC4_IfcMonetaryUnit_type, + IFC4_IfcNamedUnit_type + }); + IFC4_IfcApprovalRelationship_type = new entity(strings[1642], false, 39, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcArbitraryClosedProfileDef_type = new entity(strings[1643], false, 40, IFC4_IfcProfileDef_type); + IFC4_IfcArbitraryOpenProfileDef_type = new entity(strings[1644], false, 41, IFC4_IfcProfileDef_type); + IFC4_IfcArbitraryProfileDefWithVoids_type = new entity(strings[1645], false, 42, IFC4_IfcArbitraryClosedProfileDef_type); + IFC4_IfcBlobTexture_type = new entity(strings[1646], false, 64, IFC4_IfcSurfaceTexture_type); + IFC4_IfcCenterLineProfileDef_type = new entity(strings[1647], false, 128, IFC4_IfcArbitraryOpenProfileDef_type); + IFC4_IfcClassification_type = new entity(strings[1648], false, 141, IFC4_IfcExternalInformation_type); + IFC4_IfcClassificationReference_type = new entity(strings[1649], false, 142, IFC4_IfcExternalReference_type); + IFC4_IfcColourRgbList_type = new entity(strings[1650], false, 152, IFC4_IfcPresentationItem_type); + IFC4_IfcColourSpecification_type = new entity(strings[1651], true, 153, IFC4_IfcPresentationItem_type); + IFC4_IfcCompositeProfileDef_type = new entity(strings[1652], false, 168, IFC4_IfcProfileDef_type); + IFC4_IfcConnectedFaceSet_type = new entity(strings[1653], false, 177, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcConnectionCurveGeometry_type = new entity(strings[1654], false, 178, IFC4_IfcConnectionGeometry_type); + IFC4_IfcConnectionPointEccentricity_type = new entity(strings[1655], false, 180, IFC4_IfcConnectionPointGeometry_type); + IFC4_IfcContextDependentUnit_type = new entity(strings[1656], false, 200, IFC4_IfcNamedUnit_type); + IFC4_IfcConversionBasedUnit_type = new entity(strings[1657], false, 205, IFC4_IfcNamedUnit_type); + IFC4_IfcConversionBasedUnitWithOffset_type = new entity(strings[1658], false, 206, IFC4_IfcConversionBasedUnit_type); + IFC4_IfcCurrencyRelationship_type = new entity(strings[1659], false, 232, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcCurveStyle_type = new entity(strings[1660], false, 244, IFC4_IfcPresentationStyle_type); + IFC4_IfcCurveStyleFont_type = new entity(strings[1661], false, 245, IFC4_IfcPresentationItem_type); + IFC4_IfcCurveStyleFontAndScaling_type = new entity(strings[1662], false, 246, IFC4_IfcPresentationItem_type); + IFC4_IfcCurveStyleFontPattern_type = new entity(strings[1663], false, 247, IFC4_IfcPresentationItem_type); + IFC4_IfcDerivedProfileDef_type = new entity(strings[1664], false, 260, IFC4_IfcProfileDef_type); + IFC4_IfcDocumentInformation_type = new entity(strings[1665], false, 287, IFC4_IfcExternalInformation_type); + IFC4_IfcDocumentInformationRelationship_type = new entity(strings[1666], false, 288, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcDocumentReference_type = new entity(strings[1667], false, 289, IFC4_IfcExternalReference_type); + IFC4_IfcEdge_type = new entity(strings[1668], false, 318, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcEdgeCurve_type = new entity(strings[1669], false, 319, IFC4_IfcEdge_type); + IFC4_IfcEventTime_type = new entity(strings[1670], false, 370, IFC4_IfcSchedulingTime_type); + IFC4_IfcExtendedProperties_type = new entity(strings[1671], true, 374, IFC4_IfcPropertyAbstraction_type); + IFC4_IfcExternalReferenceRelationship_type = new entity(strings[1672], false, 380, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcFace_type = new entity(strings[1673], false, 386, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcFaceBound_type = new entity(strings[1674], false, 388, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcFaceOuterBound_type = new entity(strings[1675], false, 389, IFC4_IfcFaceBound_type); + IFC4_IfcFaceSurface_type = new entity(strings[1676], false, 390, IFC4_IfcFace_type); + IFC4_IfcFailureConnectionCondition_type = new entity(strings[1677], false, 393, IFC4_IfcStructuralConnectionCondition_type); + IFC4_IfcFillAreaStyle_type = new entity(strings[1678], false, 403, IFC4_IfcPresentationStyle_type); + IFC4_IfcGeometricRepresentationContext_type = new entity(strings[1679], false, 453, IFC4_IfcRepresentationContext_type); + IFC4_IfcGeometricRepresentationItem_type = new entity(strings[1680], true, 454, IFC4_IfcRepresentationItem_type); + IFC4_IfcGeometricRepresentationSubContext_type = new entity(strings[1681], false, 455, IFC4_IfcGeometricRepresentationContext_type); + IFC4_IfcGeometricSet_type = new entity(strings[1682], false, 456, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcGridPlacement_type = new entity(strings[1683], false, 462, IFC4_IfcObjectPlacement_type); + IFC4_IfcHalfSpaceSolid_type = new entity(strings[1684], false, 466, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcImageTexture_type = new entity(strings[1685], false, 478, IFC4_IfcSurfaceTexture_type); + IFC4_IfcIndexedColourMap_type = new entity(strings[1686], false, 479, IFC4_IfcPresentationItem_type); + IFC4_IfcIndexedTextureMap_type = new entity(strings[1687], true, 483, IFC4_IfcTextureCoordinate_type); + IFC4_IfcIndexedTriangleTextureMap_type = new entity(strings[1688], false, 484, IFC4_IfcIndexedTextureMap_type); + IFC4_IfcIrregularTimeSeries_type = new entity(strings[1689], false, 496, IFC4_IfcTimeSeries_type); + IFC4_IfcLagTime_type = new entity(strings[1690], false, 509, IFC4_IfcSchedulingTime_type); + IFC4_IfcLightSource_type = new entity(strings[1691], true, 528, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcLightSourceAmbient_type = new entity(strings[1692], false, 529, IFC4_IfcLightSource_type); + IFC4_IfcLightSourceDirectional_type = new entity(strings[1693], false, 530, IFC4_IfcLightSource_type); + IFC4_IfcLightSourceGoniometric_type = new entity(strings[1694], false, 531, IFC4_IfcLightSource_type); + IFC4_IfcLightSourcePositional_type = new entity(strings[1695], false, 532, IFC4_IfcLightSource_type); + IFC4_IfcLightSourceSpot_type = new entity(strings[1696], false, 533, IFC4_IfcLightSourcePositional_type); + IFC4_IfcLocalPlacement_type = new entity(strings[1697], false, 541, IFC4_IfcObjectPlacement_type); + IFC4_IfcLoop_type = new entity(strings[1698], false, 544, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcMappedItem_type = new entity(strings[1699], false, 553, IFC4_IfcRepresentationItem_type); + IFC4_IfcMaterial_type = new entity(strings[1700], false, 558, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialConstituent_type = new entity(strings[1701], false, 560, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialConstituentSet_type = new entity(strings[1702], false, 561, IFC4_IfcMaterialDefinition_type); + IFC4_IfcMaterialDefinitionRepresentation_type = new entity(strings[1703], false, 563, IFC4_IfcProductRepresentation_type); + IFC4_IfcMaterialLayerSetUsage_type = new entity(strings[1704], false, 566, IFC4_IfcMaterialUsageDefinition_type); + IFC4_IfcMaterialProfileSetUsage_type = new entity(strings[1705], false, 571, IFC4_IfcMaterialUsageDefinition_type); + IFC4_IfcMaterialProfileSetUsageTapering_type = new entity(strings[1706], false, 572, IFC4_IfcMaterialProfileSetUsage_type); + IFC4_IfcMaterialProperties_type = new entity(strings[1707], false, 574, IFC4_IfcExtendedProperties_type); + IFC4_IfcMaterialRelationship_type = new entity(strings[1708], false, 575, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcMirroredProfileDef_type = new entity(strings[1709], false, 592, IFC4_IfcDerivedProfileDef_type); + IFC4_IfcObjectDefinition_type = new entity(strings[1710], true, 615, IFC4_IfcRoot_type); + IFC4_IfcOpenShell_type = new entity(strings[1711], false, 628, IFC4_IfcConnectedFaceSet_type); + IFC4_IfcOrganizationRelationship_type = new entity(strings[1712], false, 630, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcOrientedEdge_type = new entity(strings[1713], false, 631, IFC4_IfcEdge_type); + IFC4_IfcParameterizedProfileDef_type = new entity(strings[1714], true, 637, IFC4_IfcProfileDef_type); + IFC4_IfcPath_type = new entity(strings[1715], false, 639, IFC4_IfcTopologicalRepresentationItem_type); + IFC4_IfcPhysicalComplexQuantity_type = new entity(strings[1716], false, 650, IFC4_IfcPhysicalQuantity_type); + IFC4_IfcPixelTexture_type = new entity(strings[1717], false, 664, IFC4_IfcSurfaceTexture_type); + IFC4_IfcPlacement_type = new entity(strings[1718], true, 665, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcPlanarExtent_type = new entity(strings[1719], false, 667, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcPoint_type = new entity(strings[1720], true, 675, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcPointOnCurve_type = new entity(strings[1721], false, 676, IFC4_IfcPoint_type); + IFC4_IfcPointOnSurface_type = new entity(strings[1722], false, 677, IFC4_IfcPoint_type); + IFC4_IfcPolyLoop_type = new entity(strings[1723], false, 682, IFC4_IfcLoop_type); + IFC4_IfcPolygonalBoundedHalfSpace_type = new entity(strings[1724], false, 679, IFC4_IfcHalfSpaceSolid_type); + IFC4_IfcPreDefinedItem_type = new entity(strings[1725], true, 692, IFC4_IfcPresentationItem_type); + IFC4_IfcPreDefinedProperties_type = new entity(strings[1726], true, 693, IFC4_IfcPropertyAbstraction_type); + IFC4_IfcPreDefinedTextFont_type = new entity(strings[1727], true, 695, IFC4_IfcPreDefinedItem_type); + IFC4_IfcProductDefinitionShape_type = new entity(strings[1728], false, 711, IFC4_IfcProductRepresentation_type); + IFC4_IfcProfileProperties_type = new entity(strings[1729], false, 716, IFC4_IfcExtendedProperties_type); + IFC4_IfcProperty_type = new entity(strings[1730], true, 726, IFC4_IfcPropertyAbstraction_type); + IFC4_IfcPropertyDefinition_type = new entity(strings[1731], true, 729, IFC4_IfcRoot_type); + IFC4_IfcPropertyDependencyRelationship_type = new entity(strings[1732], false, 730, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcPropertySetDefinition_type = new entity(strings[1733], true, 736, IFC4_IfcPropertyDefinition_type); + IFC4_IfcPropertyTemplateDefinition_type = new entity(strings[1734], true, 744, IFC4_IfcPropertyDefinition_type); + IFC4_IfcQuantitySet_type = new entity(strings[1735], true, 758, IFC4_IfcPropertySetDefinition_type); + IFC4_IfcRectangleProfileDef_type = new entity(strings[1736], false, 777, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcRegularTimeSeries_type = new entity(strings[1737], false, 784, IFC4_IfcTimeSeries_type); + IFC4_IfcReinforcementBarProperties_type = new entity(strings[1738], false, 785, IFC4_IfcPreDefinedProperties_type); + IFC4_IfcRelationship_type = new entity(strings[1739], true, 813, IFC4_IfcRoot_type); + IFC4_IfcResourceApprovalRelationship_type = new entity(strings[1740], false, 851, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcResourceConstraintRelationship_type = new entity(strings[1741], false, 852, IFC4_IfcResourceLevelRelationship_type); + IFC4_IfcResourceTime_type = new entity(strings[1742], false, 856, IFC4_IfcSchedulingTime_type); + IFC4_IfcRoundedRectangleProfileDef_type = new entity(strings[1743], false, 870, IFC4_IfcRectangleProfileDef_type); + IFC4_IfcSectionProperties_type = new entity(strings[1744], false, 879, IFC4_IfcPreDefinedProperties_type); + IFC4_IfcSectionReinforcementProperties_type = new entity(strings[1745], false, 880, IFC4_IfcPreDefinedProperties_type); + IFC4_IfcSectionedSpine_type = new entity(strings[1746], false, 877, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcShellBasedSurfaceModel_type = new entity(strings[1747], false, 895, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcSimpleProperty_type = new entity(strings[1748], true, 896, IFC4_IfcProperty_type); + IFC4_IfcSlippageConnectionCondition_type = new entity(strings[1749], false, 910, IFC4_IfcStructuralConnectionCondition_type); + IFC4_IfcSolidModel_type = new entity(strings[1750], true, 915, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcStructuralLoadLinearForce_type = new entity(strings[1751], false, 970, IFC4_IfcStructuralLoadStatic_type); + IFC4_IfcStructuralLoadPlanarForce_type = new entity(strings[1752], false, 972, IFC4_IfcStructuralLoadStatic_type); + IFC4_IfcStructuralLoadSingleDisplacement_type = new entity(strings[1753], false, 973, IFC4_IfcStructuralLoadStatic_type); + IFC4_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[1754], false, 974, IFC4_IfcStructuralLoadSingleDisplacement_type); + IFC4_IfcStructuralLoadSingleForce_type = new entity(strings[1755], false, 975, IFC4_IfcStructuralLoadStatic_type); + IFC4_IfcStructuralLoadSingleForceWarping_type = new entity(strings[1756], false, 976, IFC4_IfcStructuralLoadSingleForce_type); + IFC4_IfcSubedge_type = new entity(strings[1757], false, 1000, IFC4_IfcEdge_type); + IFC4_IfcSurface_type = new entity(strings[1758], true, 1001, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcSurfaceStyleRendering_type = new entity(strings[1759], false, 1015, IFC4_IfcSurfaceStyleShading_type); + IFC4_IfcSweptAreaSolid_type = new entity(strings[1760], true, 1019, IFC4_IfcSolidModel_type); + IFC4_IfcSweptDiskSolid_type = new entity(strings[1761], false, 1020, IFC4_IfcSolidModel_type); + IFC4_IfcSweptDiskSolidPolygonal_type = new entity(strings[1762], false, 1021, IFC4_IfcSweptDiskSolid_type); + IFC4_IfcSweptSurface_type = new entity(strings[1763], true, 1022, IFC4_IfcSurface_type); + IFC4_IfcTShapeProfileDef_type = new entity(strings[1764], false, 1102, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcTessellatedItem_type = new entity(strings[1765], true, 1052, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcTextLiteral_type = new entity(strings[1766], false, 1058, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcTextLiteralWithExtent_type = new entity(strings[1767], false, 1059, IFC4_IfcTextLiteral_type); + IFC4_IfcTextStyleFontModel_type = new entity(strings[1768], false, 1062, IFC4_IfcPreDefinedTextFont_type); + IFC4_IfcTrapeziumProfileDef_type = new entity(strings[1769], false, 1097, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcTypeObject_type = new entity(strings[1770], false, 1106, IFC4_IfcObjectDefinition_type); + IFC4_IfcTypeProcess_type = new entity(strings[1771], true, 1107, IFC4_IfcTypeObject_type); + IFC4_IfcTypeProduct_type = new entity(strings[1772], false, 1108, IFC4_IfcTypeObject_type); + IFC4_IfcTypeResource_type = new entity(strings[1773], true, 1109, IFC4_IfcTypeObject_type); + IFC4_IfcUShapeProfileDef_type = new entity(strings[1774], false, 1120, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcVector_type = new entity(strings[1775], false, 1126, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcVertexLoop_type = new entity(strings[1776], false, 1129, IFC4_IfcLoop_type); + IFC4_IfcWindowStyle_type = new entity(strings[1777], false, 1157, IFC4_IfcTypeProduct_type); + IFC4_IfcZShapeProfileDef_type = new entity(strings[1778], false, 1172, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcClassificationReferenceSelect_type = new select_type(strings[1779], 143, { + IFC4_IfcClassification_type, + IFC4_IfcClassificationReference_type + }); + IFC4_IfcClassificationSelect_type = new select_type(strings[1780], 144, { + IFC4_IfcClassification_type, + IFC4_IfcClassificationReference_type + }); + IFC4_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[1781], 215, { + IFC4_IfcCoordinateReferenceSystem_type, + IFC4_IfcGeometricRepresentationContext_type + }); + IFC4_IfcDefinitionSelect_type = new select_type(strings[1782], 258, { + IFC4_IfcObjectDefinition_type, + IFC4_IfcPropertyDefinition_type + }); + IFC4_IfcDocumentSelect_type = new select_type(strings[1783], 290, { + IFC4_IfcDocumentInformation_type, + IFC4_IfcDocumentReference_type + }); + IFC4_IfcHatchLineDistanceSelect_type = new select_type(strings[1784], 467, { + IFC4_IfcPositiveLengthMeasure_type, + IFC4_IfcVector_type + }); + IFC4_IfcMeasureValue_type = new select_type(strings[1785], 578, { + IFC4_IfcAmountOfSubstanceMeasure_type, + IFC4_IfcAreaMeasure_type, + IFC4_IfcComplexNumber_type, + IFC4_IfcContextDependentMeasure_type, + IFC4_IfcCountMeasure_type, + IFC4_IfcDescriptiveMeasure_type, + IFC4_IfcElectricCurrentMeasure_type, + IFC4_IfcLengthMeasure_type, + IFC4_IfcLuminousIntensityMeasure_type, + IFC4_IfcMassMeasure_type, + IFC4_IfcNonNegativeLengthMeasure_type, + IFC4_IfcNormalisedRatioMeasure_type, + IFC4_IfcNumericMeasure_type, + IFC4_IfcParameterValue_type, + IFC4_IfcPlaneAngleMeasure_type, + IFC4_IfcPositiveLengthMeasure_type, + IFC4_IfcPositivePlaneAngleMeasure_type, + IFC4_IfcPositiveRatioMeasure_type, + IFC4_IfcRatioMeasure_type, + IFC4_IfcSolidAngleMeasure_type, + IFC4_IfcThermodynamicTemperatureMeasure_type, + IFC4_IfcTimeMeasure_type, + IFC4_IfcVolumeMeasure_type + }); + IFC4_IfcPointOrVertexPoint_type = new select_type(strings[1786], 678, { + IFC4_IfcPoint_type, + IFC4_IfcVertexPoint_type + }); + IFC4_IfcPresentationStyleSelect_type = new select_type(strings[1787], 703, { + IFC4_IfcCurveStyle_type, + IFC4_IfcFillAreaStyle_type, + IFC4_IfcNullStyle_type, + IFC4_IfcSurfaceStyle_type, + IFC4_IfcTextStyle_type + }); + IFC4_IfcProductRepresentationSelect_type = new select_type(strings[1788], 713, { + IFC4_IfcProductDefinitionShape_type, + IFC4_IfcRepresentationMap_type + }); + IFC4_IfcPropertySetDefinitionSet_type = new type_declaration(strings[1789], 738, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertySetDefinition_type))); + IFC4_IfcResourceObjectSelect_type = new select_type(strings[1790], 854, { + IFC4_IfcActorRole_type, + IFC4_IfcAppliedValue_type, + IFC4_IfcApproval_type, + IFC4_IfcConstraint_type, + IFC4_IfcContextDependentUnit_type, + IFC4_IfcConversionBasedUnit_type, + IFC4_IfcExternalInformation_type, + IFC4_IfcExternalReference_type, + IFC4_IfcMaterialDefinition_type, + IFC4_IfcOrganization_type, + IFC4_IfcPerson_type, + IFC4_IfcPersonAndOrganization_type, + IFC4_IfcPhysicalQuantity_type, + IFC4_IfcProfileDef_type, + IFC4_IfcPropertyAbstraction_type, + IFC4_IfcTimeSeries_type + }); + IFC4_IfcTextFontSelect_type = new select_type(strings[1791], 1057, { + IFC4_IfcExternallyDefinedTextFont_type, + IFC4_IfcPreDefinedTextFont_type + }); + IFC4_IfcValue_type = new select_type(strings[1792], 1121, { + IFC4_IfcDerivedMeasureValue_type, + IFC4_IfcMeasureValue_type, + IFC4_IfcSimpleValue_type + }); + IFC4_IfcAdvancedFace_type = new entity(strings[1793], false, 16, IFC4_IfcFaceSurface_type); + IFC4_IfcAnnotationFillArea_type = new entity(strings[1794], false, 34, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcAsymmetricIShapeProfileDef_type = new entity(strings[1795], false, 49, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcAxis1Placement_type = new entity(strings[1796], false, 53, IFC4_IfcPlacement_type); + IFC4_IfcAxis2Placement2D_type = new entity(strings[1797], false, 55, IFC4_IfcPlacement_type); + IFC4_IfcAxis2Placement3D_type = new entity(strings[1798], false, 56, IFC4_IfcPlacement_type); + IFC4_IfcBooleanResult_type = new entity(strings[1799], false, 73, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcBoundedSurface_type = new entity(strings[1800], true, 81, IFC4_IfcSurface_type); + IFC4_IfcBoundingBox_type = new entity(strings[1801], false, 82, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcBoxedHalfSpace_type = new entity(strings[1802], false, 84, IFC4_IfcHalfSpaceSolid_type); + IFC4_IfcCShapeProfileDef_type = new entity(strings[1803], false, 231, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcCartesianPoint_type = new entity(strings[1804], false, 119, IFC4_IfcPoint_type); + IFC4_IfcCartesianPointList_type = new entity(strings[1805], true, 120, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcCartesianPointList2D_type = new entity(strings[1806], false, 121, IFC4_IfcCartesianPointList_type); + IFC4_IfcCartesianPointList3D_type = new entity(strings[1807], false, 122, IFC4_IfcCartesianPointList_type); + IFC4_IfcCartesianTransformationOperator_type = new entity(strings[1808], true, 123, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcCartesianTransformationOperator2D_type = new entity(strings[1809], false, 124, IFC4_IfcCartesianTransformationOperator_type); + IFC4_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[1810], false, 125, IFC4_IfcCartesianTransformationOperator2D_type); + IFC4_IfcCartesianTransformationOperator3D_type = new entity(strings[1811], false, 126, IFC4_IfcCartesianTransformationOperator_type); + IFC4_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[1812], false, 127, IFC4_IfcCartesianTransformationOperator3D_type); + IFC4_IfcCircleProfileDef_type = new entity(strings[1813], false, 138, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcClosedShell_type = new entity(strings[1814], false, 145, IFC4_IfcConnectedFaceSet_type); + IFC4_IfcColourRgb_type = new entity(strings[1815], false, 151, IFC4_IfcColourSpecification_type); + IFC4_IfcComplexProperty_type = new entity(strings[1816], false, 162, IFC4_IfcProperty_type); + IFC4_IfcCompositeCurveSegment_type = new entity(strings[1817], false, 167, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcConstructionResourceType_type = new entity(strings[1818], true, 197, IFC4_IfcTypeResource_type); + IFC4_IfcContext_type = new entity(strings[1819], true, 198, IFC4_IfcObjectDefinition_type); + IFC4_IfcCrewResourceType_type = new entity(strings[1820], false, 226, IFC4_IfcConstructionResourceType_type); + IFC4_IfcCsgPrimitive3D_type = new entity(strings[1821], true, 228, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcCsgSolid_type = new entity(strings[1822], false, 230, IFC4_IfcSolidModel_type); + IFC4_IfcCurve_type = new entity(strings[1823], true, 237, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcCurveBoundedPlane_type = new entity(strings[1824], false, 238, IFC4_IfcBoundedSurface_type); + IFC4_IfcCurveBoundedSurface_type = new entity(strings[1825], false, 239, IFC4_IfcBoundedSurface_type); + IFC4_IfcDirection_type = new entity(strings[1826], false, 267, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcDoorStyle_type = new entity(strings[1827], false, 298, IFC4_IfcTypeProduct_type); + IFC4_IfcEdgeLoop_type = new entity(strings[1828], false, 320, IFC4_IfcLoop_type); + IFC4_IfcElementQuantity_type = new entity(strings[1829], false, 353, IFC4_IfcQuantitySet_type); + IFC4_IfcElementType_type = new entity(strings[1830], true, 354, IFC4_IfcTypeProduct_type); + IFC4_IfcElementarySurface_type = new entity(strings[1831], true, 346, IFC4_IfcSurface_type); + IFC4_IfcEllipseProfileDef_type = new entity(strings[1832], false, 356, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcEventType_type = new entity(strings[1833], false, 372, IFC4_IfcTypeProcess_type); + IFC4_IfcExtrudedAreaSolid_type = new entity(strings[1834], false, 384, IFC4_IfcSweptAreaSolid_type); + IFC4_IfcExtrudedAreaSolidTapered_type = new entity(strings[1835], false, 385, IFC4_IfcExtrudedAreaSolid_type); + IFC4_IfcFaceBasedSurfaceModel_type = new entity(strings[1836], false, 387, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcFillAreaStyleHatching_type = new entity(strings[1837], false, 404, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcFillAreaStyleTiles_type = new entity(strings[1838], false, 405, IFC4_IfcGeometricRepresentationItem_type); + IFC4_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[1839], false, 413, IFC4_IfcSweptAreaSolid_type); + IFC4_IfcFurnishingElementType_type = new entity(strings[1840], false, 444, IFC4_IfcElementType_type); + IFC4_IfcFurnitureType_type = new entity(strings[1841], false, 446, IFC4_IfcFurnishingElementType_type); + IFC4_IfcGeographicElementType_type = new entity(strings[1842], false, 449, IFC4_IfcElementType_type); + IFC4_IfcGeometricCurveSet_type = new entity(strings[1843], false, 451, IFC4_IfcGeometricSet_type); + IFC4_IfcIShapeProfileDef_type = new entity(strings[1844], false, 498, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcIndexedPolygonalFace_type = new entity(strings[1845], false, 481, IFC4_IfcTessellatedItem_type); + IFC4_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[1846], false, 482, IFC4_IfcIndexedPolygonalFace_type); + IFC4_IfcLShapeProfileDef_type = new entity(strings[1847], false, 545, IFC4_IfcParameterizedProfileDef_type); + IFC4_IfcLaborResourceType_type = new entity(strings[1848], false, 507, IFC4_IfcConstructionResourceType_type); + IFC4_IfcLine_type = new entity(strings[1849], false, 534, IFC4_IfcCurve_type); + IFC4_IfcManifoldSolidBrep_type = new entity(strings[1850], true, 551, IFC4_IfcSolidModel_type); + IFC4_IfcObject_type = new entity(strings[1851], true, 614, IFC4_IfcObjectDefinition_type); + IFC4_IfcOffsetCurve2D_type = new entity(strings[1852], false, 623, IFC4_IfcCurve_type); + IFC4_IfcOffsetCurve3D_type = new entity(strings[1853], false, 624, IFC4_IfcCurve_type); + IFC4_IfcPcurve_type = new entity(strings[1854], false, 640, IFC4_IfcCurve_type); + IFC4_IfcPlanarBox_type = new entity(strings[1855], false, 666, IFC4_IfcPlanarExtent_type); + IFC4_IfcPlane_type = new entity(strings[1856], false, 669, IFC4_IfcElementarySurface_type); + IFC4_IfcPreDefinedColour_type = new entity(strings[1857], true, 690, IFC4_IfcPreDefinedItem_type); + IFC4_IfcPreDefinedCurveFont_type = new entity(strings[1858], true, 691, IFC4_IfcPreDefinedItem_type); + IFC4_IfcPreDefinedPropertySet_type = new entity(strings[1859], true, 694, IFC4_IfcPropertySetDefinition_type); + IFC4_IfcProcedureType_type = new entity(strings[1860], false, 706, IFC4_IfcTypeProcess_type); + IFC4_IfcProcess_type = new entity(strings[1861], true, 708, IFC4_IfcObject_type); + IFC4_IfcProduct_type = new entity(strings[1862], true, 710, IFC4_IfcObject_type); + IFC4_IfcProject_type = new entity(strings[1863], false, 718, IFC4_IfcContext_type); + IFC4_IfcProjectLibrary_type = new entity(strings[1864], false, 723, IFC4_IfcContext_type); + IFC4_IfcPropertyBoundedValue_type = new entity(strings[1865], false, 728, IFC4_IfcSimpleProperty_type); + IFC4_IfcPropertyEnumeratedValue_type = new entity(strings[1866], false, 731, IFC4_IfcSimpleProperty_type); + IFC4_IfcPropertyListValue_type = new entity(strings[1867], false, 733, IFC4_IfcSimpleProperty_type); + IFC4_IfcPropertyReferenceValue_type = new entity(strings[1868], false, 734, IFC4_IfcSimpleProperty_type); + IFC4_IfcPropertySet_type = new entity(strings[1869], false, 735, IFC4_IfcPropertySetDefinition_type); + IFC4_IfcPropertySetTemplate_type = new entity(strings[1870], false, 739, IFC4_IfcPropertyTemplateDefinition_type); + IFC4_IfcPropertySingleValue_type = new entity(strings[1871], false, 741, IFC4_IfcSimpleProperty_type); + IFC4_IfcPropertyTableValue_type = new entity(strings[1872], false, 742, IFC4_IfcSimpleProperty_type); + IFC4_IfcPropertyTemplate_type = new entity(strings[1873], true, 743, IFC4_IfcPropertyTemplateDefinition_type); + IFC4_IfcProxy_type = new entity(strings[1874], false, 751, IFC4_IfcProduct_type); + IFC4_IfcRectangleHollowProfileDef_type = new entity(strings[1875], false, 776, IFC4_IfcRectangleProfileDef_type); + IFC4_IfcRectangularPyramid_type = new entity(strings[1876], false, 778, IFC4_IfcCsgPrimitive3D_type); + IFC4_IfcRectangularTrimmedSurface_type = new entity(strings[1877], false, 779, IFC4_IfcBoundedSurface_type); + IFC4_IfcReinforcementDefinitionProperties_type = new entity(strings[1878], false, 786, IFC4_IfcPreDefinedPropertySet_type); + IFC4_IfcRelAssigns_type = new entity(strings[1879], true, 798, IFC4_IfcRelationship_type); + IFC4_IfcRelAssignsToActor_type = new entity(strings[1880], false, 799, IFC4_IfcRelAssigns_type); + IFC4_IfcRelAssignsToControl_type = new entity(strings[1881], false, 800, IFC4_IfcRelAssigns_type); + IFC4_IfcRelAssignsToGroup_type = new entity(strings[1882], false, 801, IFC4_IfcRelAssigns_type); + IFC4_IfcRelAssignsToGroupByFactor_type = new entity(strings[1883], false, 802, IFC4_IfcRelAssignsToGroup_type); + IFC4_IfcRelAssignsToProcess_type = new entity(strings[1884], false, 803, IFC4_IfcRelAssigns_type); + IFC4_IfcRelAssignsToProduct_type = new entity(strings[1885], false, 804, IFC4_IfcRelAssigns_type); + IFC4_IfcRelAssignsToResource_type = new entity(strings[1886], false, 805, IFC4_IfcRelAssigns_type); + IFC4_IfcRelAssociates_type = new entity(strings[1887], true, 806, IFC4_IfcRelationship_type); + IFC4_IfcRelAssociatesApproval_type = new entity(strings[1888], false, 807, IFC4_IfcRelAssociates_type); + IFC4_IfcRelAssociatesClassification_type = new entity(strings[1889], false, 808, IFC4_IfcRelAssociates_type); + IFC4_IfcRelAssociatesConstraint_type = new entity(strings[1890], false, 809, IFC4_IfcRelAssociates_type); + IFC4_IfcRelAssociatesDocument_type = new entity(strings[1891], false, 810, IFC4_IfcRelAssociates_type); + IFC4_IfcRelAssociatesLibrary_type = new entity(strings[1892], false, 811, IFC4_IfcRelAssociates_type); + IFC4_IfcRelAssociatesMaterial_type = new entity(strings[1893], false, 812, IFC4_IfcRelAssociates_type); + IFC4_IfcRelConnects_type = new entity(strings[1894], true, 814, IFC4_IfcRelationship_type); + IFC4_IfcRelConnectsElements_type = new entity(strings[1895], false, 815, IFC4_IfcRelConnects_type); + IFC4_IfcRelConnectsPathElements_type = new entity(strings[1896], false, 816, IFC4_IfcRelConnectsElements_type); + IFC4_IfcRelConnectsPortToElement_type = new entity(strings[1897], false, 818, IFC4_IfcRelConnects_type); + IFC4_IfcRelConnectsPorts_type = new entity(strings[1898], false, 817, IFC4_IfcRelConnects_type); + IFC4_IfcRelConnectsStructuralActivity_type = new entity(strings[1899], false, 819, IFC4_IfcRelConnects_type); + IFC4_IfcRelConnectsStructuralMember_type = new entity(strings[1900], false, 820, IFC4_IfcRelConnects_type); + IFC4_IfcRelConnectsWithEccentricity_type = new entity(strings[1901], false, 821, IFC4_IfcRelConnectsStructuralMember_type); + IFC4_IfcRelConnectsWithRealizingElements_type = new entity(strings[1902], false, 822, IFC4_IfcRelConnectsElements_type); + IFC4_IfcRelContainedInSpatialStructure_type = new entity(strings[1903], false, 823, IFC4_IfcRelConnects_type); + IFC4_IfcRelCoversBldgElements_type = new entity(strings[1904], false, 824, IFC4_IfcRelConnects_type); + IFC4_IfcRelCoversSpaces_type = new entity(strings[1905], false, 825, IFC4_IfcRelConnects_type); + IFC4_IfcRelDeclares_type = new entity(strings[1906], false, 826, IFC4_IfcRelationship_type); + IFC4_IfcRelDecomposes_type = new entity(strings[1907], true, 827, IFC4_IfcRelationship_type); + IFC4_IfcRelDefines_type = new entity(strings[1908], true, 828, IFC4_IfcRelationship_type); + IFC4_IfcRelDefinesByObject_type = new entity(strings[1909], false, 829, IFC4_IfcRelDefines_type); + IFC4_IfcRelDefinesByProperties_type = new entity(strings[1910], false, 830, IFC4_IfcRelDefines_type); + IFC4_IfcRelDefinesByTemplate_type = new entity(strings[1911], false, 831, IFC4_IfcRelDefines_type); + IFC4_IfcRelDefinesByType_type = new entity(strings[1912], false, 832, IFC4_IfcRelDefines_type); + IFC4_IfcRelFillsElement_type = new entity(strings[1913], false, 833, IFC4_IfcRelConnects_type); + IFC4_IfcRelFlowControlElements_type = new entity(strings[1914], false, 834, IFC4_IfcRelConnects_type); + IFC4_IfcRelInterferesElements_type = new entity(strings[1915], false, 835, IFC4_IfcRelConnects_type); + IFC4_IfcRelNests_type = new entity(strings[1916], false, 836, IFC4_IfcRelDecomposes_type); + IFC4_IfcRelProjectsElement_type = new entity(strings[1917], false, 837, IFC4_IfcRelDecomposes_type); + IFC4_IfcRelReferencedInSpatialStructure_type = new entity(strings[1918], false, 838, IFC4_IfcRelConnects_type); + IFC4_IfcRelSequence_type = new entity(strings[1919], false, 839, IFC4_IfcRelConnects_type); + IFC4_IfcRelServicesBuildings_type = new entity(strings[1920], false, 840, IFC4_IfcRelConnects_type); + IFC4_IfcRelSpaceBoundary_type = new entity(strings[1921], false, 841, IFC4_IfcRelConnects_type); + IFC4_IfcRelSpaceBoundary1stLevel_type = new entity(strings[1922], false, 842, IFC4_IfcRelSpaceBoundary_type); + IFC4_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[1923], false, 843, IFC4_IfcRelSpaceBoundary1stLevel_type); + IFC4_IfcRelVoidsElement_type = new entity(strings[1924], false, 844, IFC4_IfcRelDecomposes_type); + IFC4_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[1925], false, 845, IFC4_IfcCompositeCurveSegment_type); + IFC4_IfcResource_type = new entity(strings[1926], true, 850, IFC4_IfcObject_type); + IFC4_IfcRevolvedAreaSolid_type = new entity(strings[1927], false, 857, IFC4_IfcSweptAreaSolid_type); + IFC4_IfcRevolvedAreaSolidTapered_type = new entity(strings[1928], false, 858, IFC4_IfcRevolvedAreaSolid_type); + IFC4_IfcRightCircularCone_type = new entity(strings[1929], false, 859, IFC4_IfcCsgPrimitive3D_type); + IFC4_IfcRightCircularCylinder_type = new entity(strings[1930], false, 860, IFC4_IfcCsgPrimitive3D_type); + IFC4_IfcSimplePropertyTemplate_type = new entity(strings[1931], false, 897, IFC4_IfcPropertyTemplate_type); + IFC4_IfcSpatialElement_type = new entity(strings[1932], true, 928, IFC4_IfcProduct_type); + IFC4_IfcSpatialElementType_type = new entity(strings[1933], true, 929, IFC4_IfcTypeProduct_type); + IFC4_IfcSpatialStructureElement_type = new entity(strings[1934], true, 930, IFC4_IfcSpatialElement_type); + IFC4_IfcSpatialStructureElementType_type = new entity(strings[1935], true, 931, IFC4_IfcSpatialElementType_type); + IFC4_IfcSpatialZone_type = new entity(strings[1936], false, 932, IFC4_IfcSpatialElement_type); + IFC4_IfcSpatialZoneType_type = new entity(strings[1937], false, 933, IFC4_IfcSpatialElementType_type); + IFC4_IfcSphere_type = new entity(strings[1938], false, 939, IFC4_IfcCsgPrimitive3D_type); + IFC4_IfcSphericalSurface_type = new entity(strings[1939], false, 940, IFC4_IfcElementarySurface_type); + IFC4_IfcStructuralActivity_type = new entity(strings[1940], true, 952, IFC4_IfcProduct_type); + IFC4_IfcStructuralItem_type = new entity(strings[1941], true, 964, IFC4_IfcProduct_type); + IFC4_IfcStructuralMember_type = new entity(strings[1942], true, 979, IFC4_IfcStructuralItem_type); + IFC4_IfcStructuralReaction_type = new entity(strings[1943], true, 984, IFC4_IfcStructuralActivity_type); + IFC4_IfcStructuralSurfaceMember_type = new entity(strings[1944], false, 989, IFC4_IfcStructuralMember_type); + IFC4_IfcStructuralSurfaceMemberVarying_type = new entity(strings[1945], false, 991, IFC4_IfcStructuralSurfaceMember_type); + IFC4_IfcStructuralSurfaceReaction_type = new entity(strings[1946], false, 992, IFC4_IfcStructuralReaction_type); + IFC4_IfcSubContractResourceType_type = new entity(strings[1947], false, 998, IFC4_IfcConstructionResourceType_type); + IFC4_IfcSurfaceCurve_type = new entity(strings[1948], false, 1002, IFC4_IfcCurve_type); + IFC4_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[1949], false, 1003, IFC4_IfcSweptAreaSolid_type); + IFC4_IfcSurfaceOfLinearExtrusion_type = new entity(strings[1950], false, 1006, IFC4_IfcSweptSurface_type); + IFC4_IfcSurfaceOfRevolution_type = new entity(strings[1951], false, 1007, IFC4_IfcSweptSurface_type); + IFC4_IfcSystemFurnitureElementType_type = new entity(strings[1952], false, 1028, IFC4_IfcFurnishingElementType_type); + IFC4_IfcTask_type = new entity(strings[1953], false, 1036, IFC4_IfcProcess_type); + IFC4_IfcTaskType_type = new entity(strings[1954], false, 1040, IFC4_IfcTypeProcess_type); + IFC4_IfcTessellatedFaceSet_type = new entity(strings[1955], true, 1051, IFC4_IfcTessellatedItem_type); + IFC4_IfcToroidalSurface_type = new entity(strings[1956], false, 1087, IFC4_IfcElementarySurface_type); + IFC4_IfcTransportElementType_type = new entity(strings[1957], false, 1095, IFC4_IfcElementType_type); + IFC4_IfcTriangulatedFaceSet_type = new entity(strings[1958], false, 1098, IFC4_IfcTessellatedFaceSet_type); + IFC4_IfcWindowLiningProperties_type = new entity(strings[1959], false, 1152, IFC4_IfcPreDefinedPropertySet_type); + IFC4_IfcWindowPanelProperties_type = new entity(strings[1960], false, 1155, IFC4_IfcPreDefinedPropertySet_type); + IFC4_IfcAppliedValueSelect_type = new select_type(strings[1961], 37, { + IFC4_IfcMeasureWithUnit_type, + IFC4_IfcReference_type, + IFC4_IfcValue_type + }); + IFC4_IfcAxis2Placement_type = new select_type(strings[1962], 54, { + IFC4_IfcAxis2Placement2D_type, + IFC4_IfcAxis2Placement3D_type + }); + IFC4_IfcBooleanOperand_type = new select_type(strings[1963], 71, { + IFC4_IfcBooleanResult_type, + IFC4_IfcCsgPrimitive3D_type, + IFC4_IfcHalfSpaceSolid_type, + IFC4_IfcSolidModel_type, + IFC4_IfcTessellatedFaceSet_type + }); + IFC4_IfcColour_type = new select_type(strings[1964], 149, { + IFC4_IfcColourSpecification_type, + IFC4_IfcPreDefinedColour_type + }); + IFC4_IfcColourOrFactor_type = new select_type(strings[1965], 150, { + IFC4_IfcColourRgb_type, + IFC4_IfcNormalisedRatioMeasure_type + }); + IFC4_IfcCsgSelect_type = new select_type(strings[1966], 229, { + IFC4_IfcBooleanResult_type, + IFC4_IfcCsgPrimitive3D_type + }); + IFC4_IfcCurveStyleFontSelect_type = new select_type(strings[1967], 248, { + IFC4_IfcCurveStyleFont_type, + IFC4_IfcPreDefinedCurveFont_type + }); + IFC4_IfcFillStyleSelect_type = new select_type(strings[1968], 406, { + IFC4_IfcColour_type, + IFC4_IfcExternallyDefinedHatchStyle_type, + IFC4_IfcFillAreaStyleHatching_type, + IFC4_IfcFillAreaStyleTiles_type + }); + IFC4_IfcGeometricSetSelect_type = new select_type(strings[1969], 457, { + IFC4_IfcCurve_type, + IFC4_IfcPoint_type, + IFC4_IfcSurface_type + }); + IFC4_IfcGridPlacementDirectionSelect_type = new select_type(strings[1970], 463, { + IFC4_IfcDirection_type, + IFC4_IfcVirtualGridIntersection_type + }); + IFC4_IfcMetricValueSelect_type = new select_type(strings[1971], 591, { + IFC4_IfcAppliedValue_type, + IFC4_IfcMeasureWithUnit_type, + IFC4_IfcReference_type, + IFC4_IfcTable_type, + IFC4_IfcTimeSeries_type, + IFC4_IfcValue_type + }); + IFC4_IfcProcessSelect_type = new select_type(strings[1972], 709, { + IFC4_IfcProcess_type, + IFC4_IfcTypeProcess_type + }); + IFC4_IfcProductSelect_type = new select_type(strings[1973], 714, { + IFC4_IfcProduct_type, + IFC4_IfcTypeProduct_type + }); + IFC4_IfcPropertySetDefinitionSelect_type = new select_type(strings[1974], 737, { + IFC4_IfcPropertySetDefinition_type, + IFC4_IfcPropertySetDefinitionSet_type + }); + IFC4_IfcResourceSelect_type = new select_type(strings[1975], 855, { + IFC4_IfcResource_type, + IFC4_IfcTypeResource_type + }); + IFC4_IfcShell_type = new select_type(strings[1976], 894, { + IFC4_IfcClosedShell_type, + IFC4_IfcOpenShell_type + }); + IFC4_IfcSolidOrShell_type = new select_type(strings[1977], 916, { + IFC4_IfcClosedShell_type, + IFC4_IfcSolidModel_type + }); + IFC4_IfcSurfaceOrFaceSurface_type = new select_type(strings[1978], 1008, { + IFC4_IfcFaceBasedSurfaceModel_type, + IFC4_IfcFaceSurface_type, + IFC4_IfcSurface_type + }); + IFC4_IfcTrimmingSelect_type = new select_type(strings[1979], 1101, { + IFC4_IfcCartesianPoint_type, + IFC4_IfcParameterValue_type + }); + IFC4_IfcVectorOrDirection_type = new select_type(strings[1980], 1127, { + IFC4_IfcDirection_type, + IFC4_IfcVector_type + }); + IFC4_IfcActor_type = new entity(strings[1981], false, 6, IFC4_IfcObject_type); + IFC4_IfcAdvancedBrep_type = new entity(strings[1982], false, 14, IFC4_IfcManifoldSolidBrep_type); + IFC4_IfcAdvancedBrepWithVoids_type = new entity(strings[1983], false, 15, IFC4_IfcAdvancedBrep_type); + IFC4_IfcAnnotation_type = new entity(strings[1984], false, 33, IFC4_IfcProduct_type); + IFC4_IfcBSplineSurface_type = new entity(strings[1985], true, 88, IFC4_IfcBoundedSurface_type); + IFC4_IfcBSplineSurfaceWithKnots_type = new entity(strings[1986], false, 90, IFC4_IfcBSplineSurface_type); + IFC4_IfcBlock_type = new entity(strings[1987], false, 65, IFC4_IfcCsgPrimitive3D_type); + IFC4_IfcBooleanClippingResult_type = new entity(strings[1988], false, 70, IFC4_IfcBooleanResult_type); + IFC4_IfcBoundedCurve_type = new entity(strings[1989], true, 80, IFC4_IfcCurve_type); + IFC4_IfcBuilding_type = new entity(strings[1990], false, 91, IFC4_IfcSpatialStructureElement_type); + IFC4_IfcBuildingElementType_type = new entity(strings[1991], true, 99, IFC4_IfcElementType_type); + IFC4_IfcBuildingStorey_type = new entity(strings[1992], false, 100, IFC4_IfcSpatialStructureElement_type); + IFC4_IfcChimneyType_type = new entity(strings[1993], false, 134, IFC4_IfcBuildingElementType_type); + IFC4_IfcCircleHollowProfileDef_type = new entity(strings[1994], false, 137, IFC4_IfcCircleProfileDef_type); + IFC4_IfcCivilElementType_type = new entity(strings[1995], false, 140, IFC4_IfcElementType_type); + IFC4_IfcColumnType_type = new entity(strings[1996], false, 156, IFC4_IfcBuildingElementType_type); + IFC4_IfcComplexPropertyTemplate_type = new entity(strings[1997], false, 163, IFC4_IfcPropertyTemplate_type); + IFC4_IfcCompositeCurve_type = new entity(strings[1998], false, 165, IFC4_IfcBoundedCurve_type); + IFC4_IfcCompositeCurveOnSurface_type = new entity(strings[1999], false, 166, IFC4_IfcCompositeCurve_type); + IFC4_IfcConic_type = new entity(strings[2000], true, 176, IFC4_IfcCurve_type); + IFC4_IfcConstructionEquipmentResourceType_type = new entity(strings[2001], false, 188, IFC4_IfcConstructionResourceType_type); + IFC4_IfcConstructionMaterialResourceType_type = new entity(strings[2002], false, 191, IFC4_IfcConstructionResourceType_type); + IFC4_IfcConstructionProductResourceType_type = new entity(strings[2003], false, 194, IFC4_IfcConstructionResourceType_type); + IFC4_IfcConstructionResource_type = new entity(strings[2004], true, 196, IFC4_IfcResource_type); + IFC4_IfcControl_type = new entity(strings[2005], true, 201, IFC4_IfcObject_type); + IFC4_IfcCostItem_type = new entity(strings[2006], false, 216, IFC4_IfcControl_type); + IFC4_IfcCostSchedule_type = new entity(strings[2007], false, 218, IFC4_IfcControl_type); + IFC4_IfcCoveringType_type = new entity(strings[2008], false, 223, IFC4_IfcBuildingElementType_type); + IFC4_IfcCrewResource_type = new entity(strings[2009], false, 225, IFC4_IfcConstructionResource_type); + IFC4_IfcCurtainWallType_type = new entity(strings[2010], false, 234, IFC4_IfcBuildingElementType_type); + IFC4_IfcCylindricalSurface_type = new entity(strings[2011], false, 249, IFC4_IfcElementarySurface_type); + IFC4_IfcDistributionElementType_type = new entity(strings[2012], false, 279, IFC4_IfcElementType_type); + IFC4_IfcDistributionFlowElementType_type = new entity(strings[2013], true, 281, IFC4_IfcDistributionElementType_type); + IFC4_IfcDoorLiningProperties_type = new entity(strings[2014], false, 293, IFC4_IfcPreDefinedPropertySet_type); + IFC4_IfcDoorPanelProperties_type = new entity(strings[2015], false, 296, IFC4_IfcPreDefinedPropertySet_type); + IFC4_IfcDoorType_type = new entity(strings[2016], false, 301, IFC4_IfcBuildingElementType_type); + IFC4_IfcDraughtingPreDefinedColour_type = new entity(strings[2017], false, 305, IFC4_IfcPreDefinedColour_type); + IFC4_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2018], false, 306, IFC4_IfcPreDefinedCurveFont_type); + IFC4_IfcElement_type = new entity(strings[2019], true, 345, IFC4_IfcProduct_type); + IFC4_IfcElementAssembly_type = new entity(strings[2020], false, 347, IFC4_IfcElement_type); + IFC4_IfcElementAssemblyType_type = new entity(strings[2021], false, 348, IFC4_IfcElementType_type); + IFC4_IfcElementComponent_type = new entity(strings[2022], true, 350, IFC4_IfcElement_type); + IFC4_IfcElementComponentType_type = new entity(strings[2023], true, 351, IFC4_IfcElementType_type); + IFC4_IfcEllipse_type = new entity(strings[2024], false, 355, IFC4_IfcConic_type); + IFC4_IfcEnergyConversionDeviceType_type = new entity(strings[2025], true, 358, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcEngineType_type = new entity(strings[2026], false, 361, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcEvaporativeCoolerType_type = new entity(strings[2027], false, 364, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcEvaporatorType_type = new entity(strings[2028], false, 367, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcEvent_type = new entity(strings[2029], false, 369, IFC4_IfcProcess_type); + IFC4_IfcExternalSpatialStructureElement_type = new entity(strings[2030], true, 383, IFC4_IfcSpatialElement_type); + IFC4_IfcFacetedBrep_type = new entity(strings[2031], false, 391, IFC4_IfcManifoldSolidBrep_type); + IFC4_IfcFacetedBrepWithVoids_type = new entity(strings[2032], false, 392, IFC4_IfcFacetedBrep_type); + IFC4_IfcFastener_type = new entity(strings[2033], false, 397, IFC4_IfcElementComponent_type); + IFC4_IfcFastenerType_type = new entity(strings[2034], false, 398, IFC4_IfcElementComponentType_type); + IFC4_IfcFeatureElement_type = new entity(strings[2035], true, 400, IFC4_IfcElement_type); + IFC4_IfcFeatureElementAddition_type = new entity(strings[2036], true, 401, IFC4_IfcFeatureElement_type); + IFC4_IfcFeatureElementSubtraction_type = new entity(strings[2037], true, 402, IFC4_IfcFeatureElement_type); + IFC4_IfcFlowControllerType_type = new entity(strings[2038], true, 415, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFlowFittingType_type = new entity(strings[2039], true, 418, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFlowMeterType_type = new entity(strings[2040], false, 423, IFC4_IfcFlowControllerType_type); + IFC4_IfcFlowMovingDeviceType_type = new entity(strings[2041], true, 426, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFlowSegmentType_type = new entity(strings[2042], true, 428, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFlowStorageDeviceType_type = new entity(strings[2043], true, 430, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFlowTerminalType_type = new entity(strings[2044], true, 432, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFlowTreatmentDeviceType_type = new entity(strings[2045], true, 434, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcFootingType_type = new entity(strings[2046], false, 439, IFC4_IfcBuildingElementType_type); + IFC4_IfcFurnishingElement_type = new entity(strings[2047], false, 443, IFC4_IfcElement_type); + IFC4_IfcFurniture_type = new entity(strings[2048], false, 445, IFC4_IfcFurnishingElement_type); + IFC4_IfcGeographicElement_type = new entity(strings[2049], false, 448, IFC4_IfcElement_type); + IFC4_IfcGrid_type = new entity(strings[2050], false, 460, IFC4_IfcProduct_type); + IFC4_IfcGroup_type = new entity(strings[2051], false, 465, IFC4_IfcObject_type); + IFC4_IfcHeatExchangerType_type = new entity(strings[2052], false, 469, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcHumidifierType_type = new entity(strings[2053], false, 474, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcIndexedPolyCurve_type = new entity(strings[2054], false, 480, IFC4_IfcBoundedCurve_type); + IFC4_IfcInterceptorType_type = new entity(strings[2055], false, 489, IFC4_IfcFlowTreatmentDeviceType_type); + IFC4_IfcIntersectionCurve_type = new entity(strings[2056], false, 492, IFC4_IfcSurfaceCurve_type); + IFC4_IfcInventory_type = new entity(strings[2057], false, 493, IFC4_IfcGroup_type); + IFC4_IfcJunctionBoxType_type = new entity(strings[2058], false, 501, IFC4_IfcFlowFittingType_type); + IFC4_IfcLaborResource_type = new entity(strings[2059], false, 506, IFC4_IfcConstructionResource_type); + IFC4_IfcLampType_type = new entity(strings[2060], false, 511, IFC4_IfcFlowTerminalType_type); + IFC4_IfcLightFixtureType_type = new entity(strings[2061], false, 525, IFC4_IfcFlowTerminalType_type); + IFC4_IfcMechanicalFastener_type = new entity(strings[2062], false, 580, IFC4_IfcElementComponent_type); + IFC4_IfcMechanicalFastenerType_type = new entity(strings[2063], false, 581, IFC4_IfcElementComponentType_type); + IFC4_IfcMedicalDeviceType_type = new entity(strings[2064], false, 584, IFC4_IfcFlowTerminalType_type); + IFC4_IfcMemberType_type = new entity(strings[2065], false, 588, IFC4_IfcBuildingElementType_type); + IFC4_IfcMotorConnectionType_type = new entity(strings[2066], false, 607, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcOccupant_type = new entity(strings[2067], false, 621, IFC4_IfcActor_type); + IFC4_IfcOpeningElement_type = new entity(strings[2068], false, 625, IFC4_IfcFeatureElementSubtraction_type); + IFC4_IfcOpeningStandardCase_type = new entity(strings[2069], false, 627, IFC4_IfcOpeningElement_type); + IFC4_IfcOutletType_type = new entity(strings[2070], false, 634, IFC4_IfcFlowTerminalType_type); + IFC4_IfcPerformanceHistory_type = new entity(strings[2071], false, 641, IFC4_IfcControl_type); + IFC4_IfcPermeableCoveringProperties_type = new entity(strings[2072], false, 644, IFC4_IfcPreDefinedPropertySet_type); + IFC4_IfcPermit_type = new entity(strings[2073], false, 645, IFC4_IfcControl_type); + IFC4_IfcPileType_type = new entity(strings[2074], false, 656, IFC4_IfcBuildingElementType_type); + IFC4_IfcPipeFittingType_type = new entity(strings[2075], false, 659, IFC4_IfcFlowFittingType_type); + IFC4_IfcPipeSegmentType_type = new entity(strings[2076], false, 662, IFC4_IfcFlowSegmentType_type); + IFC4_IfcPlateType_type = new entity(strings[2077], false, 673, IFC4_IfcBuildingElementType_type); + IFC4_IfcPolygonalFaceSet_type = new entity(strings[2078], false, 680, IFC4_IfcTessellatedFaceSet_type); + IFC4_IfcPolyline_type = new entity(strings[2079], false, 681, IFC4_IfcBoundedCurve_type); + IFC4_IfcPort_type = new entity(strings[2080], true, 683, IFC4_IfcProduct_type); + IFC4_IfcProcedure_type = new entity(strings[2081], false, 705, IFC4_IfcProcess_type); + IFC4_IfcProjectOrder_type = new entity(strings[2082], false, 724, IFC4_IfcControl_type); + IFC4_IfcProjectionElement_type = new entity(strings[2083], false, 721, IFC4_IfcFeatureElementAddition_type); + IFC4_IfcProtectiveDeviceType_type = new entity(strings[2084], false, 749, IFC4_IfcFlowControllerType_type); + IFC4_IfcPumpType_type = new entity(strings[2085], false, 753, IFC4_IfcFlowMovingDeviceType_type); + IFC4_IfcRailingType_type = new entity(strings[2086], false, 764, IFC4_IfcBuildingElementType_type); + IFC4_IfcRampFlightType_type = new entity(strings[2087], false, 768, IFC4_IfcBuildingElementType_type); + IFC4_IfcRampType_type = new entity(strings[2088], false, 770, IFC4_IfcBuildingElementType_type); + IFC4_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2089], false, 774, IFC4_IfcBSplineSurfaceWithKnots_type); + IFC4_IfcReinforcingElement_type = new entity(strings[2090], true, 792, IFC4_IfcElementComponent_type); + IFC4_IfcReinforcingElementType_type = new entity(strings[2091], true, 793, IFC4_IfcElementComponentType_type); + IFC4_IfcReinforcingMesh_type = new entity(strings[2092], false, 794, IFC4_IfcReinforcingElement_type); + IFC4_IfcReinforcingMeshType_type = new entity(strings[2093], false, 795, IFC4_IfcReinforcingElementType_type); + IFC4_IfcRelAggregates_type = new entity(strings[2094], false, 797, IFC4_IfcRelDecomposes_type); + IFC4_IfcRoofType_type = new entity(strings[2095], false, 863, IFC4_IfcBuildingElementType_type); + IFC4_IfcSanitaryTerminalType_type = new entity(strings[2096], false, 872, IFC4_IfcFlowTerminalType_type); + IFC4_IfcSeamCurve_type = new entity(strings[2097], false, 875, IFC4_IfcSurfaceCurve_type); + IFC4_IfcShadingDeviceType_type = new entity(strings[2098], false, 888, IFC4_IfcBuildingElementType_type); + IFC4_IfcSite_type = new entity(strings[2099], false, 901, IFC4_IfcSpatialStructureElement_type); + IFC4_IfcSlabType_type = new entity(strings[2100], false, 908, IFC4_IfcBuildingElementType_type); + IFC4_IfcSolarDeviceType_type = new entity(strings[2101], false, 912, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcSpace_type = new entity(strings[2102], false, 921, IFC4_IfcSpatialStructureElement_type); + IFC4_IfcSpaceHeaterType_type = new entity(strings[2103], false, 924, IFC4_IfcFlowTerminalType_type); + IFC4_IfcSpaceType_type = new entity(strings[2104], false, 926, IFC4_IfcSpatialStructureElementType_type); + IFC4_IfcStackTerminalType_type = new entity(strings[2105], false, 942, IFC4_IfcFlowTerminalType_type); + IFC4_IfcStairFlightType_type = new entity(strings[2106], false, 946, IFC4_IfcBuildingElementType_type); + IFC4_IfcStairType_type = new entity(strings[2107], false, 948, IFC4_IfcBuildingElementType_type); + IFC4_IfcStructuralAction_type = new entity(strings[2108], true, 951, IFC4_IfcStructuralActivity_type); + IFC4_IfcStructuralConnection_type = new entity(strings[2109], true, 955, IFC4_IfcStructuralItem_type); + IFC4_IfcStructuralCurveAction_type = new entity(strings[2110], false, 957, IFC4_IfcStructuralAction_type); + IFC4_IfcStructuralCurveConnection_type = new entity(strings[2111], false, 959, IFC4_IfcStructuralConnection_type); + IFC4_IfcStructuralCurveMember_type = new entity(strings[2112], false, 960, IFC4_IfcStructuralMember_type); + IFC4_IfcStructuralCurveMemberVarying_type = new entity(strings[2113], false, 962, IFC4_IfcStructuralCurveMember_type); + IFC4_IfcStructuralCurveReaction_type = new entity(strings[2114], false, 963, IFC4_IfcStructuralReaction_type); + IFC4_IfcStructuralLinearAction_type = new entity(strings[2115], false, 965, IFC4_IfcStructuralCurveAction_type); + IFC4_IfcStructuralLoadGroup_type = new entity(strings[2116], false, 969, IFC4_IfcGroup_type); + IFC4_IfcStructuralPointAction_type = new entity(strings[2117], false, 981, IFC4_IfcStructuralAction_type); + IFC4_IfcStructuralPointConnection_type = new entity(strings[2118], false, 982, IFC4_IfcStructuralConnection_type); + IFC4_IfcStructuralPointReaction_type = new entity(strings[2119], false, 983, IFC4_IfcStructuralReaction_type); + IFC4_IfcStructuralResultGroup_type = new entity(strings[2120], false, 985, IFC4_IfcGroup_type); + IFC4_IfcStructuralSurfaceAction_type = new entity(strings[2121], false, 986, IFC4_IfcStructuralAction_type); + IFC4_IfcStructuralSurfaceConnection_type = new entity(strings[2122], false, 988, IFC4_IfcStructuralConnection_type); + IFC4_IfcSubContractResource_type = new entity(strings[2123], false, 997, IFC4_IfcConstructionResource_type); + IFC4_IfcSurfaceFeature_type = new entity(strings[2124], false, 1004, IFC4_IfcFeatureElement_type); + IFC4_IfcSwitchingDeviceType_type = new entity(strings[2125], false, 1024, IFC4_IfcFlowControllerType_type); + IFC4_IfcSystem_type = new entity(strings[2126], false, 1026, IFC4_IfcGroup_type); + IFC4_IfcSystemFurnitureElement_type = new entity(strings[2127], false, 1027, IFC4_IfcFurnishingElement_type); + IFC4_IfcTankType_type = new entity(strings[2128], false, 1034, IFC4_IfcFlowStorageDeviceType_type); + IFC4_IfcTendon_type = new entity(strings[2129], false, 1045, IFC4_IfcReinforcingElement_type); + IFC4_IfcTendonAnchor_type = new entity(strings[2130], false, 1046, IFC4_IfcReinforcingElement_type); + IFC4_IfcTendonAnchorType_type = new entity(strings[2131], false, 1047, IFC4_IfcReinforcingElementType_type); + IFC4_IfcTendonType_type = new entity(strings[2132], false, 1049, IFC4_IfcReinforcingElementType_type); + IFC4_IfcTransformerType_type = new entity(strings[2133], false, 1090, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcTransportElement_type = new entity(strings[2134], false, 1094, IFC4_IfcElement_type); + IFC4_IfcTrimmedCurve_type = new entity(strings[2135], false, 1099, IFC4_IfcBoundedCurve_type); + IFC4_IfcTubeBundleType_type = new entity(strings[2136], false, 1104, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcUnitaryEquipmentType_type = new entity(strings[2137], false, 1115, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcValveType_type = new entity(strings[2138], false, 1123, IFC4_IfcFlowControllerType_type); + IFC4_IfcVibrationIsolator_type = new entity(strings[2139], false, 1131, IFC4_IfcElementComponent_type); + IFC4_IfcVibrationIsolatorType_type = new entity(strings[2140], false, 1132, IFC4_IfcElementComponentType_type); + IFC4_IfcVirtualElement_type = new entity(strings[2141], false, 1134, IFC4_IfcElement_type); + IFC4_IfcVoidingFeature_type = new entity(strings[2142], false, 1136, IFC4_IfcFeatureElementSubtraction_type); + IFC4_IfcWallType_type = new entity(strings[2143], false, 1143, IFC4_IfcBuildingElementType_type); + IFC4_IfcWasteTerminalType_type = new entity(strings[2144], false, 1149, IFC4_IfcFlowTerminalType_type); + IFC4_IfcWindowType_type = new entity(strings[2145], false, 1160, IFC4_IfcBuildingElementType_type); + IFC4_IfcWorkCalendar_type = new entity(strings[2146], false, 1163, IFC4_IfcControl_type); + IFC4_IfcWorkControl_type = new entity(strings[2147], true, 1165, IFC4_IfcControl_type); + IFC4_IfcWorkPlan_type = new entity(strings[2148], false, 1166, IFC4_IfcWorkControl_type); + IFC4_IfcWorkSchedule_type = new entity(strings[2149], false, 1168, IFC4_IfcWorkControl_type); + IFC4_IfcZone_type = new entity(strings[2150], false, 1171, IFC4_IfcSystem_type); + IFC4_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2151], 240, { + IFC4_IfcCurveStyleFontAndScaling_type, + IFC4_IfcCurveStyleFontSelect_type + }); + IFC4_IfcCurveOnSurface_type = new select_type(strings[2152], 242, { + IFC4_IfcCompositeCurveOnSurface_type, + IFC4_IfcPcurve_type, + IFC4_IfcSurfaceCurve_type + }); + IFC4_IfcCurveOrEdgeCurve_type = new select_type(strings[2153], 243, { + IFC4_IfcBoundedCurve_type, + IFC4_IfcEdgeCurve_type + }); + IFC4_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2154], 953, { + IFC4_IfcElement_type, + IFC4_IfcStructuralItem_type + }); + IFC4_IfcActionRequest_type = new entity(strings[2155], false, 2, IFC4_IfcControl_type); + IFC4_IfcAirTerminalBoxType_type = new entity(strings[2156], false, 19, IFC4_IfcFlowControllerType_type); + IFC4_IfcAirTerminalType_type = new entity(strings[2157], false, 21, IFC4_IfcFlowTerminalType_type); + IFC4_IfcAirToAirHeatRecoveryType_type = new entity(strings[2158], false, 24, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcAsset_type = new entity(strings[2159], false, 48, IFC4_IfcGroup_type); + IFC4_IfcAudioVisualApplianceType_type = new entity(strings[2160], false, 51, IFC4_IfcFlowTerminalType_type); + IFC4_IfcBSplineCurve_type = new entity(strings[2161], true, 85, IFC4_IfcBoundedCurve_type); + IFC4_IfcBSplineCurveWithKnots_type = new entity(strings[2162], false, 87, IFC4_IfcBSplineCurve_type); + IFC4_IfcBeamType_type = new entity(strings[2163], false, 59, IFC4_IfcBuildingElementType_type); + IFC4_IfcBoilerType_type = new entity(strings[2164], false, 67, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcBoundaryCurve_type = new entity(strings[2165], false, 75, IFC4_IfcCompositeCurveOnSurface_type); + IFC4_IfcBuildingElement_type = new entity(strings[2166], true, 92, IFC4_IfcElement_type); + IFC4_IfcBuildingElementPart_type = new entity(strings[2167], false, 93, IFC4_IfcElementComponent_type); + IFC4_IfcBuildingElementPartType_type = new entity(strings[2168], false, 94, IFC4_IfcElementComponentType_type); + IFC4_IfcBuildingElementProxy_type = new entity(strings[2169], false, 96, IFC4_IfcBuildingElement_type); + IFC4_IfcBuildingElementProxyType_type = new entity(strings[2170], false, 97, IFC4_IfcBuildingElementType_type); + IFC4_IfcBuildingSystem_type = new entity(strings[2171], false, 101, IFC4_IfcSystem_type); + IFC4_IfcBurnerType_type = new entity(strings[2172], false, 104, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcCableCarrierFittingType_type = new entity(strings[2173], false, 107, IFC4_IfcFlowFittingType_type); + IFC4_IfcCableCarrierSegmentType_type = new entity(strings[2174], false, 110, IFC4_IfcFlowSegmentType_type); + IFC4_IfcCableFittingType_type = new entity(strings[2175], false, 113, IFC4_IfcFlowFittingType_type); + IFC4_IfcCableSegmentType_type = new entity(strings[2176], false, 116, IFC4_IfcFlowSegmentType_type); + IFC4_IfcChillerType_type = new entity(strings[2177], false, 131, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcChimney_type = new entity(strings[2178], false, 133, IFC4_IfcBuildingElement_type); + IFC4_IfcCircle_type = new entity(strings[2179], false, 136, IFC4_IfcConic_type); + IFC4_IfcCivilElement_type = new entity(strings[2180], false, 139, IFC4_IfcElement_type); + IFC4_IfcCoilType_type = new entity(strings[2181], false, 147, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcColumn_type = new entity(strings[2182], false, 154, IFC4_IfcBuildingElement_type); + IFC4_IfcColumnStandardCase_type = new entity(strings[2183], false, 155, IFC4_IfcColumn_type); + IFC4_IfcCommunicationsApplianceType_type = new entity(strings[2184], false, 159, IFC4_IfcFlowTerminalType_type); + IFC4_IfcCompressorType_type = new entity(strings[2185], false, 171, IFC4_IfcFlowMovingDeviceType_type); + IFC4_IfcCondenserType_type = new entity(strings[2186], false, 174, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcConstructionEquipmentResource_type = new entity(strings[2187], false, 187, IFC4_IfcConstructionResource_type); + IFC4_IfcConstructionMaterialResource_type = new entity(strings[2188], false, 190, IFC4_IfcConstructionResource_type); + IFC4_IfcConstructionProductResource_type = new entity(strings[2189], false, 193, IFC4_IfcConstructionResource_type); + IFC4_IfcCooledBeamType_type = new entity(strings[2190], false, 208, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcCoolingTowerType_type = new entity(strings[2191], false, 211, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcCovering_type = new entity(strings[2192], false, 222, IFC4_IfcBuildingElement_type); + IFC4_IfcCurtainWall_type = new entity(strings[2193], false, 233, IFC4_IfcBuildingElement_type); + IFC4_IfcDamperType_type = new entity(strings[2194], false, 251, IFC4_IfcFlowControllerType_type); + IFC4_IfcDiscreteAccessory_type = new entity(strings[2195], false, 269, IFC4_IfcElementComponent_type); + IFC4_IfcDiscreteAccessoryType_type = new entity(strings[2196], false, 270, IFC4_IfcElementComponentType_type); + IFC4_IfcDistributionChamberElementType_type = new entity(strings[2197], false, 273, IFC4_IfcDistributionFlowElementType_type); + IFC4_IfcDistributionControlElementType_type = new entity(strings[2198], true, 277, IFC4_IfcDistributionElementType_type); + IFC4_IfcDistributionElement_type = new entity(strings[2199], false, 278, IFC4_IfcElement_type); + IFC4_IfcDistributionFlowElement_type = new entity(strings[2200], false, 280, IFC4_IfcDistributionElement_type); + IFC4_IfcDistributionPort_type = new entity(strings[2201], false, 282, IFC4_IfcPort_type); + IFC4_IfcDistributionSystem_type = new entity(strings[2202], false, 284, IFC4_IfcSystem_type); + IFC4_IfcDoor_type = new entity(strings[2203], false, 292, IFC4_IfcBuildingElement_type); + IFC4_IfcDoorStandardCase_type = new entity(strings[2204], false, 297, IFC4_IfcDoor_type); + IFC4_IfcDuctFittingType_type = new entity(strings[2205], false, 308, IFC4_IfcFlowFittingType_type); + IFC4_IfcDuctSegmentType_type = new entity(strings[2206], false, 311, IFC4_IfcFlowSegmentType_type); + IFC4_IfcDuctSilencerType_type = new entity(strings[2207], false, 314, IFC4_IfcFlowTreatmentDeviceType_type); + IFC4_IfcElectricApplianceType_type = new entity(strings[2208], false, 322, IFC4_IfcFlowTerminalType_type); + IFC4_IfcElectricDistributionBoardType_type = new entity(strings[2209], false, 329, IFC4_IfcFlowControllerType_type); + IFC4_IfcElectricFlowStorageDeviceType_type = new entity(strings[2210], false, 332, IFC4_IfcFlowStorageDeviceType_type); + IFC4_IfcElectricGeneratorType_type = new entity(strings[2211], false, 335, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcElectricMotorType_type = new entity(strings[2212], false, 338, IFC4_IfcEnergyConversionDeviceType_type); + IFC4_IfcElectricTimeControlType_type = new entity(strings[2213], false, 342, IFC4_IfcFlowControllerType_type); + IFC4_IfcEnergyConversionDevice_type = new entity(strings[2214], false, 357, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcEngine_type = new entity(strings[2215], false, 360, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcEvaporativeCooler_type = new entity(strings[2216], false, 363, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcEvaporator_type = new entity(strings[2217], false, 366, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcExternalSpatialElement_type = new entity(strings[2218], false, 381, IFC4_IfcExternalSpatialStructureElement_type); + IFC4_IfcFanType_type = new entity(strings[2219], false, 395, IFC4_IfcFlowMovingDeviceType_type); + IFC4_IfcFilterType_type = new entity(strings[2220], false, 408, IFC4_IfcFlowTreatmentDeviceType_type); + IFC4_IfcFireSuppressionTerminalType_type = new entity(strings[2221], false, 411, IFC4_IfcFlowTerminalType_type); + IFC4_IfcFlowController_type = new entity(strings[2222], false, 414, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFlowFitting_type = new entity(strings[2223], false, 417, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFlowInstrumentType_type = new entity(strings[2224], false, 420, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcFlowMeter_type = new entity(strings[2225], false, 422, IFC4_IfcFlowController_type); + IFC4_IfcFlowMovingDevice_type = new entity(strings[2226], false, 425, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFlowSegment_type = new entity(strings[2227], false, 427, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFlowStorageDevice_type = new entity(strings[2228], false, 429, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFlowTerminal_type = new entity(strings[2229], false, 431, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFlowTreatmentDevice_type = new entity(strings[2230], false, 433, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcFooting_type = new entity(strings[2231], false, 438, IFC4_IfcBuildingElement_type); + IFC4_IfcHeatExchanger_type = new entity(strings[2232], false, 468, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcHumidifier_type = new entity(strings[2233], false, 473, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcInterceptor_type = new entity(strings[2234], false, 488, IFC4_IfcFlowTreatmentDevice_type); + IFC4_IfcJunctionBox_type = new entity(strings[2235], false, 500, IFC4_IfcFlowFitting_type); + IFC4_IfcLamp_type = new entity(strings[2236], false, 510, IFC4_IfcFlowTerminal_type); + IFC4_IfcLightFixture_type = new entity(strings[2237], false, 524, IFC4_IfcFlowTerminal_type); + IFC4_IfcMedicalDevice_type = new entity(strings[2238], false, 583, IFC4_IfcFlowTerminal_type); + IFC4_IfcMember_type = new entity(strings[2239], false, 586, IFC4_IfcBuildingElement_type); + IFC4_IfcMemberStandardCase_type = new entity(strings[2240], false, 587, IFC4_IfcMember_type); + IFC4_IfcMotorConnection_type = new entity(strings[2241], false, 606, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcOuterBoundaryCurve_type = new entity(strings[2242], false, 632, IFC4_IfcBoundaryCurve_type); + IFC4_IfcOutlet_type = new entity(strings[2243], false, 633, IFC4_IfcFlowTerminal_type); + IFC4_IfcPile_type = new entity(strings[2244], false, 654, IFC4_IfcBuildingElement_type); + IFC4_IfcPipeFitting_type = new entity(strings[2245], false, 658, IFC4_IfcFlowFitting_type); + IFC4_IfcPipeSegment_type = new entity(strings[2246], false, 661, IFC4_IfcFlowSegment_type); + IFC4_IfcPlate_type = new entity(strings[2247], false, 671, IFC4_IfcBuildingElement_type); + IFC4_IfcPlateStandardCase_type = new entity(strings[2248], false, 672, IFC4_IfcPlate_type); + IFC4_IfcProtectiveDevice_type = new entity(strings[2249], false, 745, IFC4_IfcFlowController_type); + IFC4_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2250], false, 747, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcPump_type = new entity(strings[2251], false, 752, IFC4_IfcFlowMovingDevice_type); + IFC4_IfcRailing_type = new entity(strings[2252], false, 763, IFC4_IfcBuildingElement_type); + IFC4_IfcRamp_type = new entity(strings[2253], false, 766, IFC4_IfcBuildingElement_type); + IFC4_IfcRampFlight_type = new entity(strings[2254], false, 767, IFC4_IfcBuildingElement_type); + IFC4_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2255], false, 773, IFC4_IfcBSplineCurveWithKnots_type); + IFC4_IfcReinforcingBar_type = new entity(strings[2256], false, 787, IFC4_IfcReinforcingElement_type); + IFC4_IfcReinforcingBarType_type = new entity(strings[2257], false, 790, IFC4_IfcReinforcingElementType_type); + IFC4_IfcRoof_type = new entity(strings[2258], false, 862, IFC4_IfcBuildingElement_type); + IFC4_IfcSanitaryTerminal_type = new entity(strings[2259], false, 871, IFC4_IfcFlowTerminal_type); + IFC4_IfcSensorType_type = new entity(strings[2260], false, 884, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcShadingDevice_type = new entity(strings[2261], false, 887, IFC4_IfcBuildingElement_type); + IFC4_IfcSlab_type = new entity(strings[2262], false, 905, IFC4_IfcBuildingElement_type); + IFC4_IfcSlabElementedCase_type = new entity(strings[2263], false, 906, IFC4_IfcSlab_type); + IFC4_IfcSlabStandardCase_type = new entity(strings[2264], false, 907, IFC4_IfcSlab_type); + IFC4_IfcSolarDevice_type = new entity(strings[2265], false, 911, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcSpaceHeater_type = new entity(strings[2266], false, 923, IFC4_IfcFlowTerminal_type); + IFC4_IfcStackTerminal_type = new entity(strings[2267], false, 941, IFC4_IfcFlowTerminal_type); + IFC4_IfcStair_type = new entity(strings[2268], false, 944, IFC4_IfcBuildingElement_type); + IFC4_IfcStairFlight_type = new entity(strings[2269], false, 945, IFC4_IfcBuildingElement_type); + IFC4_IfcStructuralAnalysisModel_type = new entity(strings[2270], false, 954, IFC4_IfcSystem_type); + IFC4_IfcStructuralLoadCase_type = new entity(strings[2271], false, 967, IFC4_IfcStructuralLoadGroup_type); + IFC4_IfcStructuralPlanarAction_type = new entity(strings[2272], false, 980, IFC4_IfcStructuralSurfaceAction_type); + IFC4_IfcSwitchingDevice_type = new entity(strings[2273], false, 1023, IFC4_IfcFlowController_type); + IFC4_IfcTank_type = new entity(strings[2274], false, 1033, IFC4_IfcFlowStorageDevice_type); + IFC4_IfcTransformer_type = new entity(strings[2275], false, 1089, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcTubeBundle_type = new entity(strings[2276], false, 1103, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcUnitaryControlElementType_type = new entity(strings[2277], false, 1112, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcUnitaryEquipment_type = new entity(strings[2278], false, 1114, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcValve_type = new entity(strings[2279], false, 1122, IFC4_IfcFlowController_type); + IFC4_IfcWall_type = new entity(strings[2280], false, 1140, IFC4_IfcBuildingElement_type); + IFC4_IfcWallElementedCase_type = new entity(strings[2281], false, 1141, IFC4_IfcWall_type); + IFC4_IfcWallStandardCase_type = new entity(strings[2282], false, 1142, IFC4_IfcWall_type); + IFC4_IfcWasteTerminal_type = new entity(strings[2283], false, 1148, IFC4_IfcFlowTerminal_type); + IFC4_IfcWindow_type = new entity(strings[2284], false, 1151, IFC4_IfcBuildingElement_type); + IFC4_IfcWindowStandardCase_type = new entity(strings[2285], false, 1156, IFC4_IfcWindow_type); + IFC4_IfcSpaceBoundarySelect_type = new select_type(strings[2286], 922, { + IFC4_IfcExternalSpatialElement_type, + IFC4_IfcSpace_type + }); + IFC4_IfcActuatorType_type = new entity(strings[2287], false, 10, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcAirTerminal_type = new entity(strings[2288], false, 17, IFC4_IfcFlowTerminal_type); + IFC4_IfcAirTerminalBox_type = new entity(strings[2289], false, 18, IFC4_IfcFlowController_type); + IFC4_IfcAirToAirHeatRecovery_type = new entity(strings[2290], false, 23, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcAlarmType_type = new entity(strings[2291], false, 27, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcAudioVisualAppliance_type = new entity(strings[2292], false, 50, IFC4_IfcFlowTerminal_type); + IFC4_IfcBeam_type = new entity(strings[2293], false, 57, IFC4_IfcBuildingElement_type); + IFC4_IfcBeamStandardCase_type = new entity(strings[2294], false, 58, IFC4_IfcBeam_type); + IFC4_IfcBoiler_type = new entity(strings[2295], false, 66, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcBurner_type = new entity(strings[2296], false, 103, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcCableCarrierFitting_type = new entity(strings[2297], false, 106, IFC4_IfcFlowFitting_type); + IFC4_IfcCableCarrierSegment_type = new entity(strings[2298], false, 109, IFC4_IfcFlowSegment_type); + IFC4_IfcCableFitting_type = new entity(strings[2299], false, 112, IFC4_IfcFlowFitting_type); + IFC4_IfcCableSegment_type = new entity(strings[2300], false, 115, IFC4_IfcFlowSegment_type); + IFC4_IfcChiller_type = new entity(strings[2301], false, 130, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcCoil_type = new entity(strings[2302], false, 146, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcCommunicationsAppliance_type = new entity(strings[2303], false, 158, IFC4_IfcFlowTerminal_type); + IFC4_IfcCompressor_type = new entity(strings[2304], false, 170, IFC4_IfcFlowMovingDevice_type); + IFC4_IfcCondenser_type = new entity(strings[2305], false, 173, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcControllerType_type = new entity(strings[2306], false, 203, IFC4_IfcDistributionControlElementType_type); + IFC4_IfcCooledBeam_type = new entity(strings[2307], false, 207, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcCoolingTower_type = new entity(strings[2308], false, 210, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcDamper_type = new entity(strings[2309], false, 250, IFC4_IfcFlowController_type); + IFC4_IfcDistributionChamberElement_type = new entity(strings[2310], false, 272, IFC4_IfcDistributionFlowElement_type); + IFC4_IfcDistributionCircuit_type = new entity(strings[2311], false, 275, IFC4_IfcDistributionSystem_type); + IFC4_IfcDistributionControlElement_type = new entity(strings[2312], false, 276, IFC4_IfcDistributionElement_type); + IFC4_IfcDuctFitting_type = new entity(strings[2313], false, 307, IFC4_IfcFlowFitting_type); + IFC4_IfcDuctSegment_type = new entity(strings[2314], false, 310, IFC4_IfcFlowSegment_type); + IFC4_IfcDuctSilencer_type = new entity(strings[2315], false, 313, IFC4_IfcFlowTreatmentDevice_type); + IFC4_IfcElectricAppliance_type = new entity(strings[2316], false, 321, IFC4_IfcFlowTerminal_type); + IFC4_IfcElectricDistributionBoard_type = new entity(strings[2317], false, 328, IFC4_IfcFlowController_type); + IFC4_IfcElectricFlowStorageDevice_type = new entity(strings[2318], false, 331, IFC4_IfcFlowStorageDevice_type); + IFC4_IfcElectricGenerator_type = new entity(strings[2319], false, 334, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcElectricMotor_type = new entity(strings[2320], false, 337, IFC4_IfcEnergyConversionDevice_type); + IFC4_IfcElectricTimeControl_type = new entity(strings[2321], false, 341, IFC4_IfcFlowController_type); + IFC4_IfcFan_type = new entity(strings[2322], false, 394, IFC4_IfcFlowMovingDevice_type); + IFC4_IfcFilter_type = new entity(strings[2323], false, 407, IFC4_IfcFlowTreatmentDevice_type); + IFC4_IfcFireSuppressionTerminal_type = new entity(strings[2324], false, 410, IFC4_IfcFlowTerminal_type); + IFC4_IfcFlowInstrument_type = new entity(strings[2325], false, 419, IFC4_IfcDistributionControlElement_type); + IFC4_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2326], false, 746, IFC4_IfcDistributionControlElement_type); + IFC4_IfcSensor_type = new entity(strings[2327], false, 883, IFC4_IfcDistributionControlElement_type); + IFC4_IfcUnitaryControlElement_type = new entity(strings[2328], false, 1111, IFC4_IfcDistributionControlElement_type); + IFC4_IfcActuator_type = new entity(strings[2329], false, 9, IFC4_IfcDistributionControlElement_type); + IFC4_IfcAlarm_type = new entity(strings[2330], false, 26, IFC4_IfcDistributionControlElement_type); + IFC4_IfcController_type = new entity(strings[2331], false, 202, IFC4_IfcDistributionControlElement_type); + IFC4_IfcActionRequest_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2333], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcActor_type->set_attributes({ + new attribute(strings[2335], new named_type(IFC4_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcActorRole_type->set_attributes({ + new attribute(strings[2336], new named_type(IFC4_IfcRoleEnum_type), false), + new attribute(strings[2337], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false + }); + IFC4_IfcActuator_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcActuatorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAddress_type->set_attributes({ + new attribute(strings[2339], new named_type(IFC4_IfcAddressTypeEnum_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2340], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2341], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAlarm_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAlarmType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAnnotation_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2342], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2343], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCurve_type)), true) + },{ + false, false + }); + IFC4_IfcApplication_type->set_attributes({ + new attribute(strings[2344], new named_type(IFC4_IfcOrganization_type), false), + new attribute(strings[2345], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2346], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2347], new named_type(IFC4_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2349], new named_type(IFC4_IfcAppliedValueSelect_type), true), + new attribute(strings[2350], new named_type(IFC4_IfcMeasureWithUnit_type), true), + new attribute(strings[2351], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2352], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2353], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2354], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2355], new named_type(IFC4_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2356], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcApproval_type->set_attributes({ + new attribute(strings[2357], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2358], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2333], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2359], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2360], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2361], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2362], new named_type(IFC4_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2363], new named_type(IFC4_IfcApproval_type), false), + new attribute(strings[2364], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2365], new named_type(IFC4_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2366], new named_type(IFC4_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2367], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcAsset_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2369], new named_type(IFC4_IfcCostValue_type), true), + new attribute(strings[2370], new named_type(IFC4_IfcCostValue_type), true), + new attribute(strings[2371], new named_type(IFC4_IfcCostValue_type), true), + new attribute(strings[2372], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2373], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2374], new named_type(IFC4_IfcPerson_type), true), + new attribute(strings[2375], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2376], new named_type(IFC4_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2377], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2378], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2379], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2380], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2381], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2382], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2383], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2384], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2385], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2386], new named_type(IFC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2387], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2388], new named_type(IFC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2389], new named_type(IFC4_IfcDirection_type), true) + },{ + false, false + }); + IFC4_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2390], new named_type(IFC4_IfcDirection_type), true) + },{ + false, false + }); + IFC4_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2389], new named_type(IFC4_IfcDirection_type), true), + new attribute(strings[2390], new named_type(IFC4_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2391], new named_type(IFC4_IfcInteger_type), false), + new attribute(strings[2392], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcCartesianPoint_type)), false), + new attribute(strings[2393], new named_type(IFC4_IfcBSplineCurveForm_type), false), + new attribute(strings[2394], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2395], new named_type(IFC4_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2396], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcInteger_type)), false), + new attribute(strings[2397], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcParameterValue_type)), false), + new attribute(strings[2398], new named_type(IFC4_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2399], new named_type(IFC4_IfcInteger_type), false), + new attribute(strings[2400], new named_type(IFC4_IfcInteger_type), false), + new attribute(strings[2392], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcCartesianPoint_type))), false), + new attribute(strings[2401], new named_type(IFC4_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2402], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2403], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2395], new named_type(IFC4_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2404], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcInteger_type)), false), + new attribute(strings[2405], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcInteger_type)), false), + new attribute(strings[2406], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcParameterValue_type)), false), + new attribute(strings[2407], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcParameterValue_type)), false), + new attribute(strings[2398], new named_type(IFC4_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBeam_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBeamType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2408], new named_type(IFC4_IfcIdentifier_type), false), + new attribute(strings[2409], new named_type(IFC4_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcBlock_type->set_attributes({ + new attribute(strings[2410], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2411], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2412], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcBoiler_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBoilerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2413], new named_type(IFC4_IfcBooleanOperator_type), false), + new attribute(strings[2414], new named_type(IFC4_IfcBooleanOperand_type), false), + new attribute(strings[2415], new named_type(IFC4_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false + }); + IFC4_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2416], new named_type(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2417], new named_type(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2418], new named_type(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2419], new named_type(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2420], new named_type(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2421], new named_type(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2422], new named_type(IFC4_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2423], new named_type(IFC4_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2424], new named_type(IFC4_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2425], new named_type(IFC4_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2426], new named_type(IFC4_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2427], new named_type(IFC4_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2428], new named_type(IFC4_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2429], new named_type(IFC4_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2430], new named_type(IFC4_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2431], new named_type(IFC4_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2432], new named_type(IFC4_IfcCartesianPoint_type), false), + new attribute(strings[2433], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2434], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2435], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2436], new named_type(IFC4_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4_IfcBuilding_type->set_attributes({ + new attribute(strings[2437], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2438], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2439], new named_type(IFC4_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2440], new named_type(IFC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcBurner_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcBurnerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2442], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2443], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2444], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2445], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2446], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableFitting_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableSegment_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2447], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2448], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcLengthMeasure_type))), false) + },{ + false + }); + IFC4_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2448], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcLengthMeasure_type))), false) + },{ + false + }); + IFC4_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2449], new named_type(IFC4_IfcDirection_type), true), + new attribute(strings[2450], new named_type(IFC4_IfcDirection_type), true), + new attribute(strings[2451], new named_type(IFC4_IfcCartesianPoint_type), false), + new attribute(strings[2452], new named_type(IFC4_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2453], new named_type(IFC4_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2454], new named_type(IFC4_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2453], new named_type(IFC4_IfcReal_type), true), + new attribute(strings[2455], new named_type(IFC4_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2456], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcChiller_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcChillerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcChimney_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcChimneyType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCircle_type->set_attributes({ + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2444], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcClassification_type->set_attributes({ + new attribute(strings[2458], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2459], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2460], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2461], new named_type(IFC4_IfcURIReference_type), true), + new attribute(strings[2462], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcClassificationReference_type->set_attributes({ + new attribute(strings[2463], new named_type(IFC4_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2464], new named_type(IFC4_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4_IfcCoil_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCoilType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcColourRgb_type->set_attributes({ + new attribute(strings[2465], new named_type(IFC4_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2466], new named_type(IFC4_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2467], new named_type(IFC4_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcColourRgbList_type->set_attributes({ + new attribute(strings[2468], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false + }); + IFC4_IfcColumn_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcColumnType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcComplexProperty_type->set_attributes({ + new attribute(strings[2469], new named_type(IFC4_IfcIdentifier_type), false), + new attribute(strings[2470], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[2469], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2471], new named_type(IFC4_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[2472], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[2473], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcCompositeCurveSegment_type)), false), + new attribute(strings[2395], new named_type(IFC4_IfcLogical_type), false) + },{ + false, false + }); + IFC4_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[2474], new named_type(IFC4_IfcTransitionCode_type), false), + new attribute(strings[2475], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[2476], new named_type(IFC4_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[2477], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4_IfcProfileDef_type)), false), + new attribute(strings[2478], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4_IfcCompressor_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCompressorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCondenser_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCondenserType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConic_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[2480], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcFace_type)), false) + },{ + false + }); + IFC4_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[2481], new named_type(IFC4_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[2482], new named_type(IFC4_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[2483], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2484], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2485], new named_type(IFC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[2486], new named_type(IFC4_IfcPointOrVertexPoint_type), false), + new attribute(strings[2487], new named_type(IFC4_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[2488], new named_type(IFC4_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[2489], new named_type(IFC4_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[2490], new named_type(IFC4_IfcSolidOrShell_type), false), + new attribute(strings[2491], new named_type(IFC4_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4_IfcConstraint_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2492], new named_type(IFC4_IfcConstraintEnum_type), false), + new attribute(strings[2493], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2494], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2495], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2496], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionResource_type->set_attributes({ + new attribute(strings[2497], new named_type(IFC4_IfcResourceTime_type), true), + new attribute(strings[2498], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAppliedValue_type)), true), + new attribute(strings[2499], new named_type(IFC4_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[2498], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAppliedValue_type)), true), + new attribute(strings[2499], new named_type(IFC4_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcContext_type->set_attributes({ + new attribute(strings[2500], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2501], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2502], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcRepresentationContext_type)), true), + new attribute(strings[2503], new named_type(IFC4_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4_IfcControl_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcController_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcControllerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2504], new named_type(IFC4_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[2505], new named_type(IFC4_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[2506], new named_type(IFC4_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[2507], new named_type(IFC4_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2508], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2509], new named_type(IFC4_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4_IfcCostItem_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCostItemTypeEnum_type), true), + new attribute(strings[2510], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcCostValue_type)), true), + new attribute(strings[2511], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2333], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2512], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2513], new named_type(IFC4_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCovering_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCoveringType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCrewResource_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4_IfcCsgSolid_type->set_attributes({ + new attribute(strings[2514], new named_type(IFC4_IfcCsgSelect_type), false) + },{ + false + }); + IFC4_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4_IfcMonetaryUnit_type), false), + new attribute(strings[2516], new named_type(IFC4_IfcMonetaryUnit_type), false), + new attribute(strings[2517], new named_type(IFC4_IfcPositiveRatioMeasure_type), false), + new attribute(strings[2518], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2519], new named_type(IFC4_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[2520], new named_type(IFC4_IfcPlane_type), false), + new attribute(strings[2342], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2343], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[2520], new named_type(IFC4_IfcSurface_type), false), + new attribute(strings[2521], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcBoundaryCurve_type)), false), + new attribute(strings[2522], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4_IfcCurveStyle_type->set_attributes({ + new attribute(strings[2523], new named_type(IFC4_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[2524], new named_type(IFC4_IfcSizeSelect_type), true), + new attribute(strings[2525], new named_type(IFC4_IfcColour_type), true), + new attribute(strings[2526], new named_type(IFC4_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2527], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2523], new named_type(IFC4_IfcCurveStyleFontSelect_type), false), + new attribute(strings[2528], new named_type(IFC4_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[2529], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2530], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcDamper_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDamperType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4_IfcProfileDef_type), false), + new attribute(strings[2413], new named_type(IFC4_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[2478], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[2532], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDerivedUnitElement_type)), false), + new attribute(strings[2533], new named_type(IFC4_IfcDerivedUnitEnum_type), false), + new attribute(strings[2534], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[2535], new named_type(IFC4_IfcNamedUnit_type), false), + new attribute(strings[2536], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[2537], new simple_type(simple_type::integer_type), false), + new attribute(strings[2538], new simple_type(simple_type::integer_type), false), + new attribute(strings[2539], new simple_type(simple_type::integer_type), false), + new attribute(strings[2540], new simple_type(simple_type::integer_type), false), + new attribute(strings[2541], new simple_type(simple_type::integer_type), false), + new attribute(strings[2542], new simple_type(simple_type::integer_type), false), + new attribute(strings[2543], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcDirection_type->set_attributes({ + new attribute(strings[2544], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcReal_type)), false) + },{ + false + }); + IFC4_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionPort_type->set_attributes({ + new attribute(strings[2545], new named_type(IFC4_IfcFlowDirectionEnum_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[2546], new named_type(IFC4_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), false), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2461], new named_type(IFC4_IfcURIReference_type), true), + new attribute(strings[2339], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2547], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2548], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2549], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2550], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2551], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcActorSelect_type)), true), + new attribute(strings[2495], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2552], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2553], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2554], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2555], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2556], new named_type(IFC4_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2333], new named_type(IFC4_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[2557], new named_type(IFC4_IfcDocumentInformation_type), false), + new attribute(strings[2558], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDocumentInformation_type)), false), + new attribute(strings[2559], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2560], new named_type(IFC4_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcDoor_type->set_attributes({ + new attribute(strings[2561], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2562], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcDoorTypeEnum_type), true), + new attribute(strings[2563], new named_type(IFC4_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[2564], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[2565], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2566], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2567], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2568], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2569], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2570], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2571], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2572], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2573], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2574], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2575], new named_type(IFC4_IfcShapeAspect_type), true), + new attribute(strings[2576], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2577], new named_type(IFC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[2578], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2579], new named_type(IFC4_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[2580], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2581], new named_type(IFC4_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[2575], new named_type(IFC4_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDoorStyle_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC4_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[2582], new named_type(IFC4_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[2583], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[2584], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDoorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDoorTypeEnum_type), false), + new attribute(strings[2563], new named_type(IFC4_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[2583], new named_type(IFC4_IfcBoolean_type), true), + new attribute(strings[2564], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEdge_type->set_attributes({ + new attribute(strings[2585], new named_type(IFC4_IfcVertex_type), false), + new attribute(strings[2586], new named_type(IFC4_IfcVertex_type), false) + },{ + false, false + }); + IFC4_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[2587], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2475], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[2588], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElement_type->set_attributes({ + new attribute(strings[2589], new named_type(IFC4_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcElementAssembly_type->set_attributes({ + new attribute(strings[2590], new named_type(IFC4_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElementQuantity_type->set_attributes({ + new attribute(strings[2591], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2592], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcElementType_type->set_attributes({ + new attribute(strings[2593], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcElementarySurface_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4_IfcEllipse_type->set_attributes({ + new attribute(strings[2594], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2595], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[2594], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2595], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEngine_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEngineType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEvaporator_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEvent_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEventTypeEnum_type), true), + new attribute(strings[2596], new named_type(IFC4_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[2597], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2598], new named_type(IFC4_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcEventTime_type->set_attributes({ + new attribute(strings[2599], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2600], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2601], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2602], new named_type(IFC4_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcEventType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcEventTypeEnum_type), false), + new attribute(strings[2596], new named_type(IFC4_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[2597], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2603], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4_IfcExternalReference_type->set_attributes({ + new attribute(strings[2461], new named_type(IFC4_IfcURIReference_type), true), + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[2604], new named_type(IFC4_IfcExternalReference_type), false), + new attribute(strings[2605], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[2606], new named_type(IFC4_IfcDirection_type), false), + new attribute(strings[2442], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[2607], new named_type(IFC4_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcFace_type->set_attributes({ + new attribute(strings[2608], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcFaceBound_type)), false) + },{ + false + }); + IFC4_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[2609], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4_IfcFaceBound_type->set_attributes({ + new attribute(strings[2610], new named_type(IFC4_IfcLoop_type), false), + new attribute(strings[2611], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false + }); + IFC4_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4_IfcFaceSurface_type->set_attributes({ + new attribute(strings[2612], new named_type(IFC4_IfcSurface_type), false), + new attribute(strings[2475], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2341], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[2613], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[2614], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[2615], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[2616], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[2617], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[2618], new named_type(IFC4_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcFan_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFanType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFastener_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFastenerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[2619], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcFillStyleSelect_type)), false), + new attribute(strings[2620], new named_type(IFC4_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[2621], new named_type(IFC4_IfcCurveStyle_type), false), + new attribute(strings[2622], new named_type(IFC4_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[2623], new named_type(IFC4_IfcCartesianPoint_type), true), + new attribute(strings[2624], new named_type(IFC4_IfcCartesianPoint_type), true), + new attribute(strings[2625], new named_type(IFC4_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[2626], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcVector_type)), false), + new attribute(strings[2627], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStyledItem_type)), false), + new attribute(strings[2628], new named_type(IFC4_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4_IfcFilter_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFilterType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[2629], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2630], new named_type(IFC4_IfcParameterValue_type), true), + new attribute(strings[2631], new named_type(IFC4_IfcParameterValue_type), true), + new attribute(strings[2632], new named_type(IFC4_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFooting_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFootingType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFurniture_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcFurnitureType_type->set_attributes({ + new attribute(strings[2590], new named_type(IFC4_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2332], new named_type(IFC4_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[2633], new named_type(IFC4_IfcDimensionCount_type), false), + new attribute(strings[2634], new named_type(IFC4_IfcReal_type), true), + new attribute(strings[2635], new named_type(IFC4_IfcAxis2Placement_type), false), + new attribute(strings[2636], new named_type(IFC4_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[2637], new named_type(IFC4_IfcGeometricRepresentationContext_type), false), + new attribute(strings[2638], new named_type(IFC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2639], new named_type(IFC4_IfcGeometricProjectionEnum_type), false), + new attribute(strings[2640], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4_IfcGeometricSet_type->set_attributes({ + new attribute(strings[2532], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4_IfcGrid_type->set_attributes({ + new attribute(strings[2641], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcGridAxis_type)), false), + new attribute(strings[2642], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcGridAxis_type)), false), + new attribute(strings[2643], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcGridAxis_type)), true), + new attribute(strings[2332], new named_type(IFC4_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcGridAxis_type->set_attributes({ + new attribute(strings[2644], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2645], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2475], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4_IfcGridPlacement_type->set_attributes({ + new attribute(strings[2646], new named_type(IFC4_IfcVirtualGridIntersection_type), false), + new attribute(strings[2647], new named_type(IFC4_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false + }); + IFC4_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[2648], new named_type(IFC4_IfcSurface_type), false), + new attribute(strings[2649], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false + }); + IFC4_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcHumidifier_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[2562], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2378], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2379], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2650], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2651], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2652], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2653], new named_type(IFC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcImageTexture_type->set_attributes({ + new attribute(strings[2654], new named_type(IFC4_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[2655], new named_type(IFC4_IfcTessellatedFaceSet_type), false), + new attribute(strings[2656], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2657], new named_type(IFC4_IfcColourRgbList_type), false), + new attribute(strings[2658], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[2659], new named_type(IFC4_IfcCartesianPointList_type), false), + new attribute(strings[2473], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2395], new named_type(IFC4_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[2660], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[2661], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[2655], new named_type(IFC4_IfcTessellatedFaceSet_type), false), + new attribute(strings[2662], new named_type(IFC4_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[2663], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4_IfcInterceptor_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcInventory_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcInventoryTypeEnum_type), true), + new attribute(strings[2664], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2665], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPerson_type)), true), + new attribute(strings[2666], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[2370], new named_type(IFC4_IfcCostValue_type), true), + new attribute(strings[2369], new named_type(IFC4_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[2667], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[2668], new named_type(IFC4_IfcDateTime_type), false), + new attribute(strings[2669], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), false) + },{ + false, false + }); + IFC4_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2442], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2443], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2456], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2651], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2670], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2671], new named_type(IFC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLaborResource_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLagTime_type->set_attributes({ + new attribute(strings[2672], new named_type(IFC4_IfcTimeOrRatioSelect_type), false), + new attribute(strings[2673], new named_type(IFC4_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcLamp_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLampType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2345], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2674], new named_type(IFC4_IfcActorSelect_type), true), + new attribute(strings[2675], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2461], new named_type(IFC4_IfcURIReference_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2676], new named_type(IFC4_IfcLanguageId_type), true), + new attribute(strings[2677], new named_type(IFC4_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[2678], new named_type(IFC4_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2679], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[2680], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4_IfcLightFixture_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[2681], new named_type(IFC4_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[2682], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4_IfcLightSource_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2683], new named_type(IFC4_IfcColourRgb_type), false), + new attribute(strings[2684], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2685], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[2611], new named_type(IFC4_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement3D_type), false), + new attribute(strings[2686], new named_type(IFC4_IfcColourRgb_type), true), + new attribute(strings[2687], new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[2688], new named_type(IFC4_IfcLuminousFluxMeasure_type), false), + new attribute(strings[2689], new named_type(IFC4_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[2690], new named_type(IFC4_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcCartesianPoint_type), false), + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2691], new named_type(IFC4_IfcReal_type), false), + new attribute(strings[2692], new named_type(IFC4_IfcReal_type), false), + new attribute(strings[2693], new named_type(IFC4_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[2611], new named_type(IFC4_IfcDirection_type), false), + new attribute(strings[2694], new named_type(IFC4_IfcReal_type), true), + new attribute(strings[2695], new named_type(IFC4_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[2696], new named_type(IFC4_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcLine_type->set_attributes({ + new attribute(strings[2697], new named_type(IFC4_IfcCartesianPoint_type), false), + new attribute(strings[2698], new named_type(IFC4_IfcVector_type), false) + },{ + false, false + }); + IFC4_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[2699], new named_type(IFC4_IfcObjectPlacement_type), true), + new attribute(strings[2700], new named_type(IFC4_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[2701], new named_type(IFC4_IfcClosedShell_type), false) + },{ + false + }); + IFC4_IfcMapConversion_type->set_attributes({ + new attribute(strings[2702], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2703], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2704], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2705], new named_type(IFC4_IfcReal_type), true), + new attribute(strings[2706], new named_type(IFC4_IfcReal_type), true), + new attribute(strings[2452], new named_type(IFC4_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcMappedItem_type->set_attributes({ + new attribute(strings[2707], new named_type(IFC4_IfcRepresentationMap_type), false), + new attribute(strings[2708], new named_type(IFC4_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4_IfcMaterial_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2353], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[2709], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcClassificationSelect_type)), false), + new attribute(strings[2710], new named_type(IFC4_IfcMaterial_type), false) + },{ + false, false + }); + IFC4_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2711], new named_type(IFC4_IfcMaterial_type), false), + new attribute(strings[2712], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2353], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2713], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[2714], new named_type(IFC4_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[2711], new named_type(IFC4_IfcMaterial_type), true), + new attribute(strings[2715], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2716], new named_type(IFC4_IfcLogical_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2353], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2717], new named_type(IFC4_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[2718], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcMaterialLayer_type)), false), + new attribute(strings[2719], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false + }); + IFC4_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[2720], new named_type(IFC4_IfcMaterialLayerSet_type), false), + new attribute(strings[2721], new named_type(IFC4_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2722], new named_type(IFC4_IfcDirectionSenseEnum_type), false), + new attribute(strings[2723], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2724], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[2725], new named_type(IFC4_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2726], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMaterialList_type->set_attributes({ + new attribute(strings[2727], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcMaterial_type)), false) + },{ + false + }); + IFC4_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2711], new named_type(IFC4_IfcMaterial_type), true), + new attribute(strings[2728], new named_type(IFC4_IfcProfileDef_type), false), + new attribute(strings[2717], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[2353], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2729], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcMaterialProfile_type)), false), + new attribute(strings[2730], new named_type(IFC4_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[2731], new named_type(IFC4_IfcMaterialProfileSet_type), false), + new attribute(strings[2732], new named_type(IFC4_IfcCardinalPointReference_type), true), + new attribute(strings[2724], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[2733], new named_type(IFC4_IfcMaterialProfileSet_type), false), + new attribute(strings[2734], new named_type(IFC4_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[2726], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[2711], new named_type(IFC4_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[2735], new named_type(IFC4_IfcMaterial_type), false), + new attribute(strings[2736], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcMaterial_type)), false), + new attribute(strings[2737], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[2738], new named_type(IFC4_IfcValue_type), false), + new attribute(strings[2739], new named_type(IFC4_IfcUnit_type), false) + },{ + false, false + }); + IFC4_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[2740], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2741], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[2740], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2741], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMember_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMemberType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMetric_type->set_attributes({ + new attribute(strings[2742], new named_type(IFC4_IfcBenchmarkEnum_type), false), + new attribute(strings[2743], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2744], new named_type(IFC4_IfcMetricValueSelect_type), true), + new attribute(strings[2745], new named_type(IFC4_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[2746], new named_type(IFC4_IfcLabel_type), false) + },{ + false + }); + IFC4_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcNamedUnit_type->set_attributes({ + new attribute(strings[2747], new named_type(IFC4_IfcDimensionalExponents_type), false), + new attribute(strings[2533], new named_type(IFC4_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4_IfcObject_type->set_attributes({ + new attribute(strings[2500], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcObjectPlacement_type->set_attributes({ + },{ + + }); + IFC4_IfcObjective_type->set_attributes({ + new attribute(strings[2748], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcConstraint_type)), true), + new attribute(strings[2749], new named_type(IFC4_IfcLogicalOperatorEnum_type), true), + new attribute(strings[2750], new named_type(IFC4_IfcObjectiveEnum_type), false), + new attribute(strings[2751], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcOccupant_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[2752], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2753], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2395], new named_type(IFC4_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[2752], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2753], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2395], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2390], new named_type(IFC4_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcOrganization_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2754], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcActorRole_type)), true), + new attribute(strings[2755], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[2756], new named_type(IFC4_IfcOrganization_type), false), + new attribute(strings[2757], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[2758], new named_type(IFC4_IfcEdge_type), false), + new attribute(strings[2611], new named_type(IFC4_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4_IfcOutlet_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcOutletType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[2759], new named_type(IFC4_IfcPersonAndOrganization_type), false), + new attribute(strings[2760], new named_type(IFC4_IfcApplication_type), false), + new attribute(strings[2761], new named_type(IFC4_IfcStateEnum_type), true), + new attribute(strings[2762], new named_type(IFC4_IfcChangeActionEnum_type), true), + new attribute(strings[2763], new named_type(IFC4_IfcTimeStamp_type), true), + new attribute(strings[2764], new named_type(IFC4_IfcPersonAndOrganization_type), true), + new attribute(strings[2765], new named_type(IFC4_IfcApplication_type), true), + new attribute(strings[2766], new named_type(IFC4_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4_IfcPath_type->set_attributes({ + new attribute(strings[2588], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4_IfcPcurve_type->set_attributes({ + new attribute(strings[2520], new named_type(IFC4_IfcSurface_type), false), + new attribute(strings[2767], new named_type(IFC4_IfcCurve_type), false) + },{ + false, false + }); + IFC4_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[2768], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2332], new named_type(IFC4_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC4_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[2581], new named_type(IFC4_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2769], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2770], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2575], new named_type(IFC4_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPermit_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPermitTypeEnum_type), true), + new attribute(strings[2333], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPerson_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2771], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2772], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2773], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[2774], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[2775], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[2754], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcActorRole_type)), true), + new attribute(strings[2755], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[2776], new named_type(IFC4_IfcPerson_type), false), + new attribute(strings[2777], new named_type(IFC4_IfcOrganization_type), false), + new attribute(strings[2754], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[2778], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPhysicalQuantity_type)), false), + new attribute(strings[2779], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2780], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2497], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false + }); + IFC4_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[2535], new named_type(IFC4_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4_IfcPile_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPileTypeEnum_type), true), + new attribute(strings[2582], new named_type(IFC4_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPileType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2443], new named_type(IFC4_IfcInteger_type), false), + new attribute(strings[2781], new named_type(IFC4_IfcInteger_type), false), + new attribute(strings[2782], new named_type(IFC4_IfcInteger_type), false), + new attribute(strings[2783], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPlacement_type->set_attributes({ + new attribute(strings[2461], new named_type(IFC4_IfcCartesianPoint_type), false) + },{ + false + }); + IFC4_IfcPlanarBox_type->set_attributes({ + new attribute(strings[2784], new named_type(IFC4_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[2785], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2786], new named_type(IFC4_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4_IfcPlate_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPlateType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[2752], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2787], new named_type(IFC4_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[2520], new named_type(IFC4_IfcSurface_type), false), + new attribute(strings[2788], new named_type(IFC4_IfcParameterValue_type), false), + new attribute(strings[2789], new named_type(IFC4_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4_IfcPolyLoop_type->set_attributes({ + new attribute(strings[2790], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement3D_type), false), + new attribute(strings[2791], new named_type(IFC4_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[2792], new named_type(IFC4_IfcBoolean_type), true), + new attribute(strings[2793], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[2794], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4_IfcPolyline_type->set_attributes({ + new attribute(strings[2659], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcPostalAddress_type->set_attributes({ + new attribute(strings[2795], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2796], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[2797], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2798], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2799], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2800], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2801], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false) + },{ + false + }); + IFC4_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2802], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcLayeredItem_type)), false), + new attribute(strings[2357], new named_type(IFC4_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[2803], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2804], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2805], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2806], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false + }); + IFC4_IfcPresentationStyleAssignment_type->set_attributes({ + new attribute(strings[2807], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPresentationStyleSelect_type)), false) + },{ + false + }); + IFC4_IfcProcedure_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcProcedureType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProcess_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcProduct_type->set_attributes({ + new attribute(strings[2808], new named_type(IFC4_IfcObjectPlacement_type), true), + new attribute(strings[2809], new named_type(IFC4_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2810], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4_IfcProfileDef_type->set_attributes({ + new attribute(strings[2811], new named_type(IFC4_IfcProfileTypeEnum_type), false), + new attribute(strings[2812], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false + }); + IFC4_IfcProfileProperties_type->set_attributes({ + new attribute(strings[2813], new named_type(IFC4_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2333], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[2814], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2815], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2816], new named_type(IFC4_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProperty_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcIdentifier_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false + }); + IFC4_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[2817], new named_type(IFC4_IfcValue_type), true), + new attribute(strings[2818], new named_type(IFC4_IfcValue_type), true), + new attribute(strings[2535], new named_type(IFC4_IfcUnit_type), true), + new attribute(strings[2819], new named_type(IFC4_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[2820], new named_type(IFC4_IfcProperty_type), false), + new attribute(strings[2821], new named_type(IFC4_IfcProperty_type), false), + new attribute(strings[2737], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[2822], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true), + new attribute(strings[2823], new named_type(IFC4_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2822], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), false), + new attribute(strings[2535], new named_type(IFC4_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[2669], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true), + new attribute(strings[2535], new named_type(IFC4_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[2469], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2824], new named_type(IFC4_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4_IfcPropertySet_type->set_attributes({ + new attribute(strings[2470], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[2471], new named_type(IFC4_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[2825], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2472], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[2826], new named_type(IFC4_IfcValue_type), true), + new attribute(strings[2535], new named_type(IFC4_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[2827], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true), + new attribute(strings[2828], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true), + new attribute(strings[2737], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2829], new named_type(IFC4_IfcUnit_type), true), + new attribute(strings[2830], new named_type(IFC4_IfcUnit_type), true), + new attribute(strings[2831], new named_type(IFC4_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcProxy_type->set_attributes({ + new attribute(strings[2832], new named_type(IFC4_IfcObjectTypeEnum_type), false), + new attribute(strings[2589], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPump_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcPumpType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcQuantityArea_type->set_attributes({ + new attribute(strings[2833], new named_type(IFC4_IfcAreaMeasure_type), false), + new attribute(strings[2834], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcQuantityCount_type->set_attributes({ + new attribute(strings[2835], new named_type(IFC4_IfcCountMeasure_type), false), + new attribute(strings[2834], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcQuantityLength_type->set_attributes({ + new attribute(strings[2836], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2834], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcQuantityTime_type->set_attributes({ + new attribute(strings[2837], new named_type(IFC4_IfcTimeMeasure_type), false), + new attribute(strings[2834], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[2838], new named_type(IFC4_IfcVolumeMeasure_type), false), + new attribute(strings[2834], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[2839], new named_type(IFC4_IfcMassMeasure_type), false), + new attribute(strings[2834], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcRailing_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRailingType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRamp_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRampFlight_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRampType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2840], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2840], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2444], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2841], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2842], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2433], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2434], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2410], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2411], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2781], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[2520], new named_type(IFC4_IfcSurface_type), false), + new attribute(strings[2843], new named_type(IFC4_IfcParameterValue_type), false), + new attribute(strings[2844], new named_type(IFC4_IfcParameterValue_type), false), + new attribute(strings[2845], new named_type(IFC4_IfcParameterValue_type), false), + new attribute(strings[2846], new named_type(IFC4_IfcParameterValue_type), false), + new attribute(strings[2847], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[2848], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[2849], new named_type(IFC4_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[2850], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDayInMonthNumber_type)), true), + new attribute(strings[2851], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDayInWeekNumber_type)), true), + new attribute(strings[2852], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcMonthInYearNumber_type)), true), + new attribute(strings[2479], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[2853], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[2854], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[2855], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcReference_type->set_attributes({ + new attribute(strings[2856], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2857], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2858], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2859], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcInteger_type)), true), + new attribute(strings[2860], new named_type(IFC4_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[2861], new named_type(IFC4_IfcTimeMeasure_type), false), + new attribute(strings[2667], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[2862], new named_type(IFC4_IfcAreaMeasure_type), false), + new attribute(strings[2863], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2864], new named_type(IFC4_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[2865], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2866], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2867], new named_type(IFC4_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[2868], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2869], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[2740], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2870], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[2871], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[2864], new named_type(IFC4_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[2740], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2870], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[2871], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2864], new named_type(IFC4_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[2872], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2873], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[2863], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[2874], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2875], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2876], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2877], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2878], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[2879], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[2880], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2881], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[2874], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2875], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2876], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2877], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2878], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[2879], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[2880], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2881], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2872], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2873], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelAggregates_type->set_attributes({ + new attribute(strings[2882], new named_type(IFC4_IfcObjectDefinition_type), false), + new attribute(strings[2883], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelAssigns_type->set_attributes({ + new attribute(strings[2883], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false), + new attribute(strings[2884], new named_type(IFC4_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4_IfcActor_type), false), + new attribute(strings[2886], new named_type(IFC4_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[2888], new named_type(IFC4_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[2889], new named_type(IFC4_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[2890], new named_type(IFC4_IfcProcessSelect_type), false), + new attribute(strings[2891], new named_type(IFC4_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[2892], new named_type(IFC4_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[2893], new named_type(IFC4_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelAssociates_type->set_attributes({ + new attribute(strings[2883], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2363], new named_type(IFC4_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[2894], new named_type(IFC4_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[2895], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2896], new named_type(IFC4_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[2557], new named_type(IFC4_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[2897], new named_type(IFC4_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[2735], new named_type(IFC4_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[2898], new named_type(IFC4_IfcConnectionGeometry_type), true), + new attribute(strings[2899], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2900], new named_type(IFC4_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[2901], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4_IfcInteger_type)), false), + new attribute(strings[2902], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4_IfcInteger_type)), false), + new attribute(strings[2903], new named_type(IFC4_IfcConnectionTypeEnum_type), false), + new attribute(strings[2904], new named_type(IFC4_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4_IfcPort_type), false), + new attribute(strings[2900], new named_type(IFC4_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4_IfcPort_type), false), + new attribute(strings[2906], new named_type(IFC4_IfcPort_type), false), + new attribute(strings[2907], new named_type(IFC4_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[2899], new named_type(IFC4_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[2908], new named_type(IFC4_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[2909], new named_type(IFC4_IfcStructuralMember_type), false), + new attribute(strings[2910], new named_type(IFC4_IfcStructuralConnection_type), false), + new attribute(strings[2911], new named_type(IFC4_IfcBoundaryCondition_type), true), + new attribute(strings[2912], new named_type(IFC4_IfcStructuralConnectionCondition_type), true), + new attribute(strings[2913], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2914], new named_type(IFC4_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[2915], new named_type(IFC4_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[2916], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcElement_type)), false), + new attribute(strings[2917], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[2918], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProduct_type)), false), + new attribute(strings[2919], new named_type(IFC4_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[2920], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2921], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[2922], new named_type(IFC4_IfcSpace_type), false), + new attribute(strings[2921], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelDeclares_type->set_attributes({ + new attribute(strings[2923], new named_type(IFC4_IfcContext_type), false), + new attribute(strings[2924], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[2883], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObject_type)), false), + new attribute(strings[2882], new named_type(IFC4_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[2883], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false), + new attribute(strings[2925], new named_type(IFC4_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[2926], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertySetDefinition_type)), false), + new attribute(strings[2927], new named_type(IFC4_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[2883], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcObject_type)), false), + new attribute(strings[2928], new named_type(IFC4_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[2929], new named_type(IFC4_IfcOpeningElement_type), false), + new attribute(strings[2930], new named_type(IFC4_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[2931], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcDistributionControlElement_type)), false), + new attribute(strings[2932], new named_type(IFC4_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[2899], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2900], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2933], new named_type(IFC4_IfcConnectionGeometry_type), true), + new attribute(strings[2934], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2935], new simple_type(simple_type::logical_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelNests_type->set_attributes({ + new attribute(strings[2882], new named_type(IFC4_IfcObjectDefinition_type), false), + new attribute(strings[2883], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[2899], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2936], new named_type(IFC4_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[2918], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcProduct_type)), false), + new attribute(strings[2919], new named_type(IFC4_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelSequence_type->set_attributes({ + new attribute(strings[2890], new named_type(IFC4_IfcProcess_type), false), + new attribute(strings[2937], new named_type(IFC4_IfcProcess_type), false), + new attribute(strings[2938], new named_type(IFC4_IfcLagTime_type), true), + new attribute(strings[2939], new named_type(IFC4_IfcSequenceEnum_type), true), + new attribute(strings[2940], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[2941], new named_type(IFC4_IfcSystem_type), false), + new attribute(strings[2942], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[2922], new named_type(IFC4_IfcSpaceBoundarySelect_type), false), + new attribute(strings[2930], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2898], new named_type(IFC4_IfcConnectionGeometry_type), true), + new attribute(strings[2943], new named_type(IFC4_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[2944], new named_type(IFC4_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[2945], new named_type(IFC4_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[2946], new named_type(IFC4_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[2920], new named_type(IFC4_IfcElement_type), false), + new attribute(strings[2947], new named_type(IFC4_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[2948], new named_type(IFC4_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4_IfcRepresentation_type->set_attributes({ + new attribute(strings[2949], new named_type(IFC4_IfcRepresentationContext_type), false), + new attribute(strings[2950], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2951], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2952], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[2953], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2954], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false + }); + IFC4_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[2955], new named_type(IFC4_IfcAxis2Placement_type), false), + new attribute(strings[2956], new named_type(IFC4_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4_IfcResource_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[2605], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcResourceObjectSelect_type)), false), + new attribute(strings[2363], new named_type(IFC4_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4_IfcConstraint_type), false), + new attribute(strings[2605], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false + }); + IFC4_IfcResourceTime_type->set_attributes({ + new attribute(strings[2957], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2958], new named_type(IFC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2959], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2960], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2961], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2962], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2963], new named_type(IFC4_IfcBoolean_type), true), + new attribute(strings[2964], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2965], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2966], new named_type(IFC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2967], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2968], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2969], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2970], new named_type(IFC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2971], new named_type(IFC4_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2389], new named_type(IFC4_IfcAxis1Placement_type), false), + new attribute(strings[2972], new named_type(IFC4_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[2607], new named_type(IFC4_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[2781], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2973], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[2781], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4_IfcRoof_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRoofType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcRoot_type->set_attributes({ + new attribute(strings[2974], new named_type(IFC4_IfcGloballyUniqueId_type), false), + new attribute(strings[2975], new named_type(IFC4_IfcOwnerHistory_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[2976], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcSIUnit_type->set_attributes({ + new attribute(strings[2977], new named_type(IFC4_IfcSIPrefix_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2978], new named_type(IFC4_IfcDataOriginEnum_type), true), + new attribute(strings[2979], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4_IfcSectionProperties_type->set_attributes({ + new attribute(strings[2980], new named_type(IFC4_IfcSectionTypeEnum_type), false), + new attribute(strings[2981], new named_type(IFC4_IfcProfileDef_type), false), + new attribute(strings[2982], new named_type(IFC4_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2984], new named_type(IFC4_IfcLengthMeasure_type), false), + new attribute(strings[2985], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2986], new named_type(IFC4_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[2987], new named_type(IFC4_IfcSectionProperties_type), false), + new attribute(strings[2988], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4_IfcCompositeCurve_type), false), + new attribute(strings[2990], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcProfileDef_type)), false), + new attribute(strings[2991], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4_IfcSensor_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSensorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcShapeAspect_type->set_attributes({ + new attribute(strings[2992], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcShapeModel_type)), false), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2993], new named_type(IFC4_IfcLogical_type), false), + new attribute(strings[2994], new named_type(IFC4_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[2995], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcShell_type)), false) + },{ + false + }); + IFC4_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[2471], new named_type(IFC4_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[2996], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2997], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2998], new named_type(IFC4_IfcPropertyEnumeration_type), true), + new attribute(strings[2999], new named_type(IFC4_IfcUnit_type), true), + new attribute(strings[3000], new named_type(IFC4_IfcUnit_type), true), + new attribute(strings[2737], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3001], new named_type(IFC4_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSite_type->set_attributes({ + new attribute(strings[3002], new named_type(IFC4_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3003], new named_type(IFC4_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3004], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[3005], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3006], new named_type(IFC4_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSlab_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSlabType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3007], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[3008], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[3009], new named_type(IFC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4_IfcSpace_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSpaceTypeEnum_type), true), + new attribute(strings[3010], new named_type(IFC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpaceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSpaceTypeEnum_type), false), + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[2593], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3011], new named_type(IFC4_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSphere_type->set_attributes({ + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStair_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStairFlight_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[3013], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[3014], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3015], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStairType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3016], new named_type(IFC4_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3017], new named_type(IFC4_IfcStructuralLoad_type), false), + new attribute(strings[3018], new named_type(IFC4_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3019], new named_type(IFC4_IfcAxis2Placement3D_type), true), + new attribute(strings[3020], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3021], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStructuralResultGroup_type)), true), + new attribute(strings[3022], new named_type(IFC4_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[2911], new named_type(IFC4_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false + }); + IFC4_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3023], new named_type(IFC4_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2389], new named_type(IFC4_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2389], new named_type(IFC4_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false + }); + IFC4_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3024], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[2667], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3025], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3026], new named_type(IFC4_IfcActionTypeEnum_type), false), + new attribute(strings[3027], new named_type(IFC4_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3028], new named_type(IFC4_IfcRatioMeasure_type), true), + new attribute(strings[2339], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3029], new named_type(IFC4_IfcLinearForceMeasure_type), true), + new attribute(strings[3030], new named_type(IFC4_IfcLinearForceMeasure_type), true), + new attribute(strings[3031], new named_type(IFC4_IfcLinearForceMeasure_type), true), + new attribute(strings[3032], new named_type(IFC4_IfcLinearMomentMeasure_type), true), + new attribute(strings[3033], new named_type(IFC4_IfcLinearMomentMeasure_type), true), + new attribute(strings[3034], new named_type(IFC4_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3035], new named_type(IFC4_IfcPlanarForceMeasure_type), true), + new attribute(strings[3036], new named_type(IFC4_IfcPlanarForceMeasure_type), true), + new attribute(strings[3037], new named_type(IFC4_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3038], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[3039], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[3040], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[3041], new named_type(IFC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3042], new named_type(IFC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3043], new named_type(IFC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3044], new named_type(IFC4_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3045], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[3046], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[3047], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[3048], new named_type(IFC4_IfcTorqueMeasure_type), true), + new attribute(strings[3049], new named_type(IFC4_IfcTorqueMeasure_type), true), + new attribute(strings[3050], new named_type(IFC4_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3051], new named_type(IFC4_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3052], new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3053], new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3054], new named_type(IFC4_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[2914], new named_type(IFC4_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3056], new named_type(IFC4_IfcStructuralLoadGroup_type), true), + new attribute(strings[3057], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3023], new named_type(IFC4_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[2456], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcStyledItem_type->set_attributes({ + new attribute(strings[3058], new named_type(IFC4_IfcRepresentationItem_type), true), + new attribute(strings[2807], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcStyleAssignmentSelect_type)), false), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSubedge_type->set_attributes({ + new attribute(strings[3059], new named_type(IFC4_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3060], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[3061], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4_IfcPcurve_type)), false), + new attribute(strings[3062], new named_type(IFC4_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[2629], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2630], new named_type(IFC4_IfcParameterValue_type), true), + new attribute(strings[2631], new named_type(IFC4_IfcParameterValue_type), true), + new attribute(strings[3063], new named_type(IFC4_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[2606], new named_type(IFC4_IfcDirection_type), false), + new attribute(strings[2442], new named_type(IFC4_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3064], new named_type(IFC4_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3065], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcLengthMeasure_type)), true), + new attribute(strings[3066], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcLengthMeasure_type)), true), + new attribute(strings[3067], new named_type(IFC4_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3068], new named_type(IFC4_IfcSurfaceSide_type), false), + new attribute(strings[2807], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3069], new named_type(IFC4_IfcColourRgb_type), false), + new attribute(strings[3070], new named_type(IFC4_IfcColourRgb_type), false), + new attribute(strings[3071], new named_type(IFC4_IfcColourRgb_type), false), + new attribute(strings[3072], new named_type(IFC4_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3073], new named_type(IFC4_IfcReal_type), true), + new attribute(strings[3074], new named_type(IFC4_IfcReal_type), true) + },{ + false, false + }); + IFC4_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3075], new named_type(IFC4_IfcColourOrFactor_type), true), + new attribute(strings[3071], new named_type(IFC4_IfcColourOrFactor_type), true), + new attribute(strings[3069], new named_type(IFC4_IfcColourOrFactor_type), true), + new attribute(strings[3076], new named_type(IFC4_IfcColourOrFactor_type), true), + new attribute(strings[3077], new named_type(IFC4_IfcColourOrFactor_type), true), + new attribute(strings[3078], new named_type(IFC4_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3079], new named_type(IFC4_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4_IfcColourRgb_type), false), + new attribute(strings[3081], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3082], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3083], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[3084], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[3085], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[3086], new named_type(IFC4_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3087], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3088], new named_type(IFC4_IfcProfileDef_type), false), + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[2629], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[2457], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3089], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2630], new named_type(IFC4_IfcParameterValue_type), true), + new attribute(strings[2631], new named_type(IFC4_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[2651], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3090], new named_type(IFC4_IfcProfileDef_type), false), + new attribute(strings[2479], new named_type(IFC4_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2442], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3091], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2379], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2650], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2651], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2652], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3092], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3093], new named_type(IFC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2653], new named_type(IFC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTable_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3094], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTableRow_type)), true), + new attribute(strings[3095], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4_IfcTableColumn_type->set_attributes({ + new attribute(strings[2357], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[2535], new named_type(IFC4_IfcUnit_type), true), + new attribute(strings[2745], new named_type(IFC4_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcTableRow_type->set_attributes({ + new attribute(strings[3096], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), true), + new attribute(strings[3097], new named_type(IFC4_IfcBoolean_type), true) + },{ + false, false + }); + IFC4_IfcTank_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTankType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTask_type->set_attributes({ + new attribute(strings[2333], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3098], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3099], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[2717], new named_type(IFC4_IfcInteger_type), true), + new attribute(strings[3100], new named_type(IFC4_IfcTaskTime_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTaskTime_type->set_attributes({ + new attribute(strings[2673], new named_type(IFC4_IfcTaskDurationEnum_type), true), + new attribute(strings[3101], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2959], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2960], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3102], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3103], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3104], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3105], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3106], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[3107], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[3108], new named_type(IFC4_IfcBoolean_type), true), + new attribute(strings[2964], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3109], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2967], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[2968], new named_type(IFC4_IfcDateTime_type), true), + new attribute(strings[3110], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[2971], new named_type(IFC4_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3111], new named_type(IFC4_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTaskType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTaskTypeEnum_type), false), + new attribute(strings[3098], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3112], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[3113], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[3114], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3115], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcLabel_type)), true), + new attribute(strings[3116], new named_type(IFC4_IfcURIReference_type), true), + new attribute(strings[3117], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTendon_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTendonTypeEnum_type), true), + new attribute(strings[2740], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2870], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4_IfcForceMeasure_type), true), + new attribute(strings[3119], new named_type(IFC4_IfcPressureMeasure_type), true), + new attribute(strings[3120], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3121], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3122], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTendonType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTendonTypeEnum_type), false), + new attribute(strings[2740], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2870], new named_type(IFC4_IfcAreaMeasure_type), true), + new attribute(strings[3123], new named_type(IFC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2447], new named_type(IFC4_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3124], new named_type(IFC4_IfcPresentableText_type), false), + new attribute(strings[2784], new named_type(IFC4_IfcAxis2Placement_type), false), + new attribute(strings[3125], new named_type(IFC4_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3126], new named_type(IFC4_IfcPlanarExtent_type), false), + new attribute(strings[3127], new named_type(IFC4_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcTextStyle_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3129], new named_type(IFC4_IfcTextStyleTextModel_type), true), + new attribute(strings[3130], new named_type(IFC4_IfcTextFontSelect_type), false), + new attribute(strings[2526], new named_type(IFC4_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3131], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcTextFontName_type)), false), + new attribute(strings[3132], new named_type(IFC4_IfcFontStyle_type), true), + new attribute(strings[3133], new named_type(IFC4_IfcFontVariant_type), true), + new attribute(strings[3134], new named_type(IFC4_IfcFontWeight_type), true), + new attribute(strings[3135], new named_type(IFC4_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3136], new named_type(IFC4_IfcColour_type), false), + new attribute(strings[3137], new named_type(IFC4_IfcColour_type), true) + },{ + false, false + }); + IFC4_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3138], new named_type(IFC4_IfcSizeSelect_type), true), + new attribute(strings[3139], new named_type(IFC4_IfcTextAlignment_type), true), + new attribute(strings[3140], new named_type(IFC4_IfcTextDecoration_type), true), + new attribute(strings[3141], new named_type(IFC4_IfcSizeSelect_type), true), + new attribute(strings[3142], new named_type(IFC4_IfcSizeSelect_type), true), + new attribute(strings[3143], new named_type(IFC4_IfcTextTransformation_type), true), + new attribute(strings[3144], new named_type(IFC4_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3145], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3085], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[3087], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4_IfcTextureMap_type->set_attributes({ + new attribute(strings[3146], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4_IfcTextureVertex_type)), false), + new attribute(strings[2655], new named_type(IFC4_IfcFace_type), false) + },{ + false, false, false + }); + IFC4_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2447], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcParameterValue_type)), false) + },{ + false + }); + IFC4_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3147], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcParameterValue_type))), false) + },{ + false + }); + IFC4_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3148], new named_type(IFC4_IfcTime_type), false), + new attribute(strings[3149], new named_type(IFC4_IfcTime_type), false) + },{ + false, false + }); + IFC4_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2348], new named_type(IFC4_IfcLabel_type), false), + new attribute(strings[2338], new named_type(IFC4_IfcText_type), true), + new attribute(strings[3148], new named_type(IFC4_IfcDateTime_type), false), + new attribute(strings[3149], new named_type(IFC4_IfcDateTime_type), false), + new attribute(strings[3150], new named_type(IFC4_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[2978], new named_type(IFC4_IfcDataOriginEnum_type), false), + new attribute(strings[2979], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[2535], new named_type(IFC4_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[2669], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcValue_type)), false) + },{ + false + }); + IFC4_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3151], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3152], new named_type(IFC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4_IfcTransformer_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTransformerType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTransportElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTransportElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTransportElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3153], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3154], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2434], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3155], new named_type(IFC4_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3156], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcParameterValue_type))), true), + new attribute(strings[2792], new named_type(IFC4_IfcBoolean_type), true), + new attribute(strings[2660], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4_IfcPositiveInteger_type))), false), + new attribute(strings[2794], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[2752], new named_type(IFC4_IfcCurve_type), false), + new attribute(strings[3157], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4_IfcTrimmingSelect_type)), false), + new attribute(strings[3158], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4_IfcTrimmingSelect_type)), false), + new attribute(strings[3159], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[3062], new named_type(IFC4_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTypeObject_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[3161], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true), + new attribute(strings[3162], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3163], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4_IfcRepresentationMap_type)), true), + new attribute(strings[2589], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcTypeResource_type->set_attributes({ + new attribute(strings[2368], new named_type(IFC4_IfcIdentifier_type), true), + new attribute(strings[2334], new named_type(IFC4_IfcText_type), true), + new attribute(strings[3164], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2442], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3091], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2379], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2650], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2651], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2670], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2653], new named_type(IFC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3165], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcUnit_type)), false) + },{ + false + }); + IFC4_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcValve_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcValveType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcVector_type->set_attributes({ + new attribute(strings[2611], new named_type(IFC4_IfcDirection_type), false), + new attribute(strings[3166], new named_type(IFC4_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3167], new named_type(IFC4_IfcVertex_type), false) + },{ + false + }); + IFC4_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3168], new named_type(IFC4_IfcPoint_type), false) + },{ + false + }); + IFC4_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3169], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4_IfcGridAxis_type)), false), + new attribute(strings[3170], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWall_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWallType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWindow_type->set_attributes({ + new attribute(strings[2561], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2562], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2332], new named_type(IFC4_IfcWindowTypeEnum_type), true), + new attribute(strings[3171], new named_type(IFC4_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3172], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[2565], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2566], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2569], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3173], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3174], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3175], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3176], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3177], new named_type(IFC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2575], new named_type(IFC4_IfcShapeAspect_type), true), + new attribute(strings[2571], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2576], new named_type(IFC4_IfcLengthMeasure_type), true), + new attribute(strings[2577], new named_type(IFC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC4_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[2581], new named_type(IFC4_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2769], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2770], new named_type(IFC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2575], new named_type(IFC4_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWindowStyle_type->set_attributes({ + new attribute(strings[2582], new named_type(IFC4_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[2563], new named_type(IFC4_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[2583], new named_type(IFC4_IfcBoolean_type), false), + new attribute(strings[2584], new named_type(IFC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWindowType_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWindowTypeEnum_type), false), + new attribute(strings[3171], new named_type(IFC4_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[2583], new named_type(IFC4_IfcBoolean_type), true), + new attribute(strings[3172], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3178], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcWorkTime_type)), true), + new attribute(strings[3179], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcWorkTime_type)), true), + new attribute(strings[2332], new named_type(IFC4_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWorkControl_type->set_attributes({ + new attribute(strings[2766], new named_type(IFC4_IfcDateTime_type), false), + new attribute(strings[3180], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4_IfcPerson_type)), true), + new attribute(strings[2339], new named_type(IFC4_IfcLabel_type), true), + new attribute(strings[3181], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[3107], new named_type(IFC4_IfcDuration_type), true), + new attribute(strings[3148], new named_type(IFC4_IfcDateTime_type), false), + new attribute(strings[3182], new named_type(IFC4_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2332], new named_type(IFC4_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4_IfcWorkTime_type->set_attributes({ + new attribute(strings[3183], new named_type(IFC4_IfcRecurrencePattern_type), true), + new attribute(strings[3184], new named_type(IFC4_IfcDate_type), true), + new attribute(strings[3185], new named_type(IFC4_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2442], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3091], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2379], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2650], new named_type(IFC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2651], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2670], new named_type(IFC4_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4_IfcZone_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3186], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToActor_type, IFC4_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3187], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3188], inverse_attribute::set_type, 0, -1, IFC4_IfcPerson_type, IFC4_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3189], inverse_attribute::set_type, 0, -1, IFC4_IfcOrganization_type, IFC4_IfcOrganization_type->attributes()[4]) + }); + IFC4_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3190], inverse_attribute::set_type, 0, 1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3187], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3191], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3192], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesApproval_type, IFC4_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3193], inverse_attribute::set_type, 0, -1, IFC4_IfcResourceApprovalRelationship_type, IFC4_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3194], inverse_attribute::set_type, 0, -1, IFC4_IfcApprovalRelationship_type, IFC4_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3195], inverse_attribute::set_type, 0, -1, IFC4_IfcApprovalRelationship_type, IFC4_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3196], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesClassification_type, IFC4_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3197], inverse_attribute::set_type, 0, -1, IFC4_IfcClassificationReference_type, IFC4_IfcClassificationReference_type->attributes()[0]) + }); + IFC4_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3198], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesClassification_type, IFC4_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3197], inverse_attribute::set_type, 0, -1, IFC4_IfcClassificationReference_type, IFC4_IfcClassificationReference_type->attributes()[0]) + }); + IFC4_IfcCompositeCurveSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3199], inverse_attribute::set_type, 1, -1, IFC4_IfcCompositeCurve_type, IFC4_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3191], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3200], inverse_attribute::set_type, 0, -1, IFC4_IfcResourceConstraintRelationship_type, IFC4_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3201], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByProperties_type, IFC4_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3202], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDeclares_type, IFC4_IfcRelDeclares_type->attributes()[0]) + }); + IFC4_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3187], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3203], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToControl_type, IFC4_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3187], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3204], inverse_attribute::set_type, 0, 1, IFC4_IfcCoordinateOperation_type, IFC4_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3205], inverse_attribute::set_type, 0, 1, IFC4_IfcRelCoversSpaces_type, IFC4_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3206], inverse_attribute::set_type, 0, 1, IFC4_IfcRelCoversBldgElements_type, IFC4_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3207], inverse_attribute::set_type, 0, 1, IFC4_IfcRelFlowControlElements_type, IFC4_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3208], inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsPortToElement_type, IFC4_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3209], inverse_attribute::set_type, 0, 1, IFC4_IfcRelFlowControlElements_type, IFC4_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3210], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesDocument_type, IFC4_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3211], inverse_attribute::set_type, 0, -1, IFC4_IfcDocumentReference_type, IFC4_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3212], inverse_attribute::set_type, 0, -1, IFC4_IfcDocumentInformationRelationship_type, IFC4_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3213], inverse_attribute::set_type, 0, 1, IFC4_IfcDocumentInformationRelationship_type, IFC4_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3214], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesDocument_type, IFC4_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3215], inverse_attribute::set_type, 0, 1, IFC4_IfcRelFillsElement_type, IFC4_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3216], inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsElements_type, IFC4_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3217], inverse_attribute::set_type, 0, -1, IFC4_IfcRelInterferesElements_type, IFC4_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3218], inverse_attribute::set_type, 0, -1, IFC4_IfcRelInterferesElements_type, IFC4_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3219], inverse_attribute::set_type, 0, -1, IFC4_IfcRelProjectsElement_type, IFC4_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3220], inverse_attribute::set_type, 0, -1, IFC4_IfcRelReferencedInSpatialStructure_type, IFC4_IfcRelReferencedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3221], inverse_attribute::set_type, 0, -1, IFC4_IfcRelVoidsElement_type, IFC4_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3222], inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsWithRealizingElements_type, IFC4_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3223], inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary_type, IFC4_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3224], inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsElements_type, IFC4_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3190], inverse_attribute::set_type, 0, 1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3225], inverse_attribute::set_type, 0, -1, IFC4_IfcRelCoversBldgElements_type, IFC4_IfcRelCoversBldgElements_type->attributes()[0]) + }); + IFC4_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3226], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3227], inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary_type, IFC4_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3228], inverse_attribute::set_type, 0, -1, IFC4_IfcTextureMap_type, IFC4_IfcTextureMap_type->attributes()[1]) + }); + IFC4_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3229], inverse_attribute::unspecified_type, -1, -1, IFC4_IfcRelProjectsElement_type, IFC4_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3230], inverse_attribute::unspecified_type, -1, -1, IFC4_IfcRelVoidsElement_type, IFC4_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3231], inverse_attribute::set_type, 0, -1, IFC4_IfcGeometricRepresentationSubContext_type, IFC4_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3204], inverse_attribute::set_type, 0, 1, IFC4_IfcCoordinateOperation_type, IFC4_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4_IfcGrid_type->set_inverse_attributes({ + new inverse_attribute(strings[3190], inverse_attribute::set_type, 0, 1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3232], inverse_attribute::set_type, 0, 1, IFC4_IfcGrid_type, IFC4_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3233], inverse_attribute::set_type, 0, 1, IFC4_IfcGrid_type, IFC4_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3234], inverse_attribute::set_type, 0, 1, IFC4_IfcGrid_type, IFC4_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3235], inverse_attribute::set_type, 0, -1, IFC4_IfcVirtualGridIntersection_type, IFC4_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3236], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToGroup_type, IFC4_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3237], inverse_attribute::set_type, 1, -1, IFC4_IfcPolygonalFaceSet_type, IFC4_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3238], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesLibrary_type, IFC4_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3239], inverse_attribute::set_type, 0, -1, IFC4_IfcLibraryReference_type, IFC4_IfcLibraryReference_type->attributes()[2]) + }); + IFC4_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3240], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesLibrary_type, IFC4_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3241], inverse_attribute::set_type, 0, 1, IFC4_IfcMaterialDefinitionRepresentation_type, IFC4_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3194], inverse_attribute::set_type, 0, -1, IFC4_IfcMaterialRelationship_type, IFC4_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3242], inverse_attribute::set_type, 0, 1, IFC4_IfcMaterialRelationship_type, IFC4_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3243], inverse_attribute::unspecified_type, -1, -1, IFC4_IfcMaterialConstituentSet_type, IFC4_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3244], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociatesMaterial_type, IFC4_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3191], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2470], inverse_attribute::set_type, 0, -1, IFC4_IfcMaterialProperties_type, IFC4_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3245], inverse_attribute::unspecified_type, -1, -1, IFC4_IfcMaterialLayerSet_type, IFC4_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3246], inverse_attribute::unspecified_type, -1, -1, IFC4_IfcMaterialProfileSet_type, IFC4_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3244], inverse_attribute::set_type, 1, -1, IFC4_IfcRelAssociatesMaterial_type, IFC4_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3247], inverse_attribute::set_type, 0, 1, IFC4_IfcRelDefinesByObject_type, IFC4_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3202], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByObject_type, IFC4_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3248], inverse_attribute::set_type, 0, 1, IFC4_IfcRelDefinesByType_type, IFC4_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3201], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByProperties_type, IFC4_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3249], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssigns_type, IFC4_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3250], inverse_attribute::set_type, 0, 1, IFC4_IfcRelNests_type, IFC4_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3251], inverse_attribute::set_type, 0, -1, IFC4_IfcRelNests_type, IFC4_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3252], inverse_attribute::set_type, 0, 1, IFC4_IfcRelDeclares_type, IFC4_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3253], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAggregates_type, IFC4_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3254], inverse_attribute::set_type, 0, 1, IFC4_IfcRelAggregates_type, IFC4_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3255], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociates_type, IFC4_IfcRelAssociates_type->attributes()[0]) + }); + IFC4_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3256], inverse_attribute::set_type, 0, -1, IFC4_IfcProduct_type, IFC4_IfcProduct_type->attributes()[0]), + new inverse_attribute(strings[3257], inverse_attribute::set_type, 0, -1, IFC4_IfcLocalPlacement_type, IFC4_IfcLocalPlacement_type->attributes()[0]) + }); + IFC4_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3258], inverse_attribute::set_type, 0, -1, IFC4_IfcRelFillsElement_type, IFC4_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3259], inverse_attribute::set_type, 0, -1, IFC4_IfcOrganizationRelationship_type, IFC4_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3195], inverse_attribute::set_type, 0, -1, IFC4_IfcOrganizationRelationship_type, IFC4_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3260], inverse_attribute::set_type, 0, -1, IFC4_IfcPersonAndOrganization_type, IFC4_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3261], inverse_attribute::set_type, 0, -1, IFC4_IfcPersonAndOrganization_type, IFC4_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3191], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3262], inverse_attribute::set_type, 0, 1, IFC4_IfcPhysicalComplexQuantity_type, IFC4_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3263], inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsPortToElement_type, IFC4_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3224], inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsPorts_type, IFC4_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3216], inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsPorts_type, IFC4_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4_IfcRelSequence_type, IFC4_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3265], inverse_attribute::set_type, 0, -1, IFC4_IfcRelSequence_type, IFC4_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3266], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProcess_type, IFC4_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3267], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProduct_type, IFC4_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3268], inverse_attribute::set_type, 1, -1, IFC4_IfcProduct_type, IFC4_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3269], inverse_attribute::set_type, 0, -1, IFC4_IfcShapeAspect_type, IFC4_IfcShapeAspect_type->attributes()[4]) + }); + IFC4_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3187], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2470], inverse_attribute::set_type, 0, -1, IFC4_IfcProfileProperties_type, IFC4_IfcProfileProperties_type->attributes()[0]) + }); + IFC4_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3270], inverse_attribute::set_type, 0, -1, IFC4_IfcPropertySet_type, IFC4_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3271], inverse_attribute::set_type, 0, -1, IFC4_IfcPropertyDependencyRelationship_type, IFC4_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3272], inverse_attribute::set_type, 0, -1, IFC4_IfcPropertyDependencyRelationship_type, IFC4_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3262], inverse_attribute::set_type, 0, -1, IFC4_IfcComplexProperty_type, IFC4_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3273], inverse_attribute::set_type, 0, -1, IFC4_IfcResourceConstraintRelationship_type, IFC4_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3274], inverse_attribute::set_type, 0, -1, IFC4_IfcResourceApprovalRelationship_type, IFC4_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3191], inverse_attribute::set_type, 0, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3252], inverse_attribute::set_type, 0, 1, IFC4_IfcRelDeclares_type, IFC4_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3255], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssociates_type, IFC4_IfcRelAssociates_type->attributes()[0]) + }); + IFC4_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3275], inverse_attribute::set_type, 0, -1, IFC4_IfcTypeObject_type, IFC4_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3201], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByTemplate_type, IFC4_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3276], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByProperties_type, IFC4_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3277], inverse_attribute::set_type, 0, -1, IFC4_IfcRelDefinesByTemplate_type, IFC4_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3278], inverse_attribute::set_type, 0, -1, IFC4_IfcComplexPropertyTemplate_type, IFC4_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3279], inverse_attribute::set_type, 0, -1, IFC4_IfcPropertySetTemplate_type, IFC4_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2343], inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary1stLevel_type, IFC4_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3280], inverse_attribute::set_type, 0, 1, IFC4_IfcRelSpaceBoundary2ndLevel_type, IFC4_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3281], inverse_attribute::set_type, 0, 1, IFC4_IfcRepresentationMap_type, IFC4_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3282], inverse_attribute::set_type, 0, -1, IFC4_IfcPresentationLayerAssignment_type, IFC4_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3283], inverse_attribute::set_type, 0, -1, IFC4_IfcProductRepresentation_type, IFC4_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3284], inverse_attribute::set_type, 0, -1, IFC4_IfcRepresentation_type, IFC4_IfcRepresentation_type->attributes()[0]) + }); + IFC4_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3285], inverse_attribute::set_type, 0, 1, IFC4_IfcPresentationLayerAssignment_type, IFC4_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3286], inverse_attribute::set_type, 0, 1, IFC4_IfcStyledItem_type, IFC4_IfcStyledItem_type->attributes()[0]) + }); + IFC4_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3269], inverse_attribute::set_type, 0, -1, IFC4_IfcShapeAspect_type, IFC4_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3287], inverse_attribute::set_type, 0, -1, IFC4_IfcMappedItem_type, IFC4_IfcMappedItem_type->attributes()[0]) + }); + IFC4_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3288], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToResource_type, IFC4_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3289], inverse_attribute::set_type, 0, 1, IFC4_IfcShapeAspect_type, IFC4_IfcShapeAspect_type->attributes()[0]) + }); + IFC4_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3225], inverse_attribute::set_type, 0, -1, IFC4_IfcRelCoversSpaces_type, IFC4_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3227], inverse_attribute::set_type, 0, -1, IFC4_IfcRelSpaceBoundary_type, IFC4_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3290], inverse_attribute::set_type, 0, -1, IFC4_IfcRelContainedInSpatialStructure_type, IFC4_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3291], inverse_attribute::set_type, 0, -1, IFC4_IfcRelServicesBuildings_type, IFC4_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3292], inverse_attribute::set_type, 0, -1, IFC4_IfcRelReferencedInSpatialStructure_type, IFC4_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3293], inverse_attribute::set_type, 0, 1, IFC4_IfcRelConnectsStructuralActivity_type, IFC4_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3294], inverse_attribute::set_type, 1, -1, IFC4_IfcRelConnectsStructuralMember_type, IFC4_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3295], inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsStructuralActivity_type, IFC4_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3296], inverse_attribute::set_type, 0, 1, IFC4_IfcStructuralResultGroup_type, IFC4_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3297], inverse_attribute::set_type, 0, -1, IFC4_IfcStructuralAnalysisModel_type, IFC4_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3298], inverse_attribute::set_type, 0, -1, IFC4_IfcRelConnectsStructuralMember_type, IFC4_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3299], inverse_attribute::set_type, 0, 1, IFC4_IfcStructuralAnalysisModel_type, IFC4_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3300], inverse_attribute::set_type, 0, -1, IFC4_IfcTextureCoordinate_type, IFC4_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3301], inverse_attribute::set_type, 0, -1, IFC4_IfcSurfaceStyleWithTextures_type, IFC4_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3302], inverse_attribute::set_type, 0, 1, IFC4_IfcRelServicesBuildings_type, IFC4_IfcRelServicesBuildings_type->attributes()[0]) + }); + IFC4_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3303], inverse_attribute::set_type, 0, 1, IFC4_IfcIndexedColourMap_type, IFC4_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3304], inverse_attribute::set_type, 0, -1, IFC4_IfcIndexedTextureMap_type, IFC4_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3187], inverse_attribute::set_type, 1, -1, IFC4_IfcExternalReferenceRelationship_type, IFC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3305], inverse_attribute::set_type, 0, 1, IFC4_IfcRelDefinesByType_type, IFC4_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3266], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProcess_type, IFC4_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3267], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToProduct_type, IFC4_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3288], inverse_attribute::set_type, 0, -1, IFC4_IfcRelAssignsToResource_type, IFC4_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4_IfcControl_type->set_subtypes({ + IFC4_IfcActionRequest_type,IFC4_IfcCostItem_type,IFC4_IfcCostSchedule_type,IFC4_IfcPerformanceHistory_type,IFC4_IfcPermit_type,IFC4_IfcProjectOrder_type,IFC4_IfcWorkCalendar_type,IFC4_IfcWorkControl_type + }); + IFC4_IfcObject_type->set_subtypes({ + IFC4_IfcActor_type,IFC4_IfcControl_type,IFC4_IfcGroup_type,IFC4_IfcProcess_type,IFC4_IfcProduct_type,IFC4_IfcResource_type + }); + IFC4_IfcDistributionControlElement_type->set_subtypes({ + IFC4_IfcActuator_type,IFC4_IfcAlarm_type,IFC4_IfcController_type,IFC4_IfcFlowInstrument_type,IFC4_IfcProtectiveDeviceTrippingUnit_type,IFC4_IfcSensor_type,IFC4_IfcUnitaryControlElement_type + }); + IFC4_IfcDistributionControlElementType_type->set_subtypes({ + IFC4_IfcActuatorType_type,IFC4_IfcAlarmType_type,IFC4_IfcControllerType_type,IFC4_IfcFlowInstrumentType_type,IFC4_IfcProtectiveDeviceTrippingUnitType_type,IFC4_IfcSensorType_type,IFC4_IfcUnitaryControlElementType_type + }); + IFC4_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4_IfcAdvancedBrep_type,IFC4_IfcFacetedBrep_type + }); + IFC4_IfcAdvancedBrep_type->set_subtypes({ + IFC4_IfcAdvancedBrepWithVoids_type + }); + IFC4_IfcFaceSurface_type->set_subtypes({ + IFC4_IfcAdvancedFace_type + }); + IFC4_IfcFlowTerminal_type->set_subtypes({ + IFC4_IfcAirTerminal_type,IFC4_IfcAudioVisualAppliance_type,IFC4_IfcCommunicationsAppliance_type,IFC4_IfcElectricAppliance_type,IFC4_IfcFireSuppressionTerminal_type,IFC4_IfcLamp_type,IFC4_IfcLightFixture_type,IFC4_IfcMedicalDevice_type,IFC4_IfcOutlet_type,IFC4_IfcSanitaryTerminal_type,IFC4_IfcSpaceHeater_type,IFC4_IfcStackTerminal_type,IFC4_IfcWasteTerminal_type + }); + IFC4_IfcFlowController_type->set_subtypes({ + IFC4_IfcAirTerminalBox_type,IFC4_IfcDamper_type,IFC4_IfcElectricDistributionBoard_type,IFC4_IfcElectricTimeControl_type,IFC4_IfcFlowMeter_type,IFC4_IfcProtectiveDevice_type,IFC4_IfcSwitchingDevice_type,IFC4_IfcValve_type + }); + IFC4_IfcFlowControllerType_type->set_subtypes({ + IFC4_IfcAirTerminalBoxType_type,IFC4_IfcDamperType_type,IFC4_IfcElectricDistributionBoardType_type,IFC4_IfcElectricTimeControlType_type,IFC4_IfcFlowMeterType_type,IFC4_IfcProtectiveDeviceType_type,IFC4_IfcSwitchingDeviceType_type,IFC4_IfcValveType_type + }); + IFC4_IfcFlowTerminalType_type->set_subtypes({ + IFC4_IfcAirTerminalType_type,IFC4_IfcAudioVisualApplianceType_type,IFC4_IfcCommunicationsApplianceType_type,IFC4_IfcElectricApplianceType_type,IFC4_IfcFireSuppressionTerminalType_type,IFC4_IfcLampType_type,IFC4_IfcLightFixtureType_type,IFC4_IfcMedicalDeviceType_type,IFC4_IfcOutletType_type,IFC4_IfcSanitaryTerminalType_type,IFC4_IfcSpaceHeaterType_type,IFC4_IfcStackTerminalType_type,IFC4_IfcWasteTerminalType_type + }); + IFC4_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4_IfcAirToAirHeatRecovery_type,IFC4_IfcBoiler_type,IFC4_IfcBurner_type,IFC4_IfcChiller_type,IFC4_IfcCoil_type,IFC4_IfcCondenser_type,IFC4_IfcCooledBeam_type,IFC4_IfcCoolingTower_type,IFC4_IfcElectricGenerator_type,IFC4_IfcElectricMotor_type,IFC4_IfcEngine_type,IFC4_IfcEvaporativeCooler_type,IFC4_IfcEvaporator_type,IFC4_IfcHeatExchanger_type,IFC4_IfcHumidifier_type,IFC4_IfcMotorConnection_type,IFC4_IfcSolarDevice_type,IFC4_IfcTransformer_type,IFC4_IfcTubeBundle_type,IFC4_IfcUnitaryEquipment_type + }); + IFC4_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4_IfcAirToAirHeatRecoveryType_type,IFC4_IfcBoilerType_type,IFC4_IfcBurnerType_type,IFC4_IfcChillerType_type,IFC4_IfcCoilType_type,IFC4_IfcCondenserType_type,IFC4_IfcCooledBeamType_type,IFC4_IfcCoolingTowerType_type,IFC4_IfcElectricGeneratorType_type,IFC4_IfcElectricMotorType_type,IFC4_IfcEngineType_type,IFC4_IfcEvaporativeCoolerType_type,IFC4_IfcEvaporatorType_type,IFC4_IfcHeatExchangerType_type,IFC4_IfcHumidifierType_type,IFC4_IfcMotorConnectionType_type,IFC4_IfcSolarDeviceType_type,IFC4_IfcTransformerType_type,IFC4_IfcTubeBundleType_type,IFC4_IfcUnitaryEquipmentType_type + }); + IFC4_IfcProduct_type->set_subtypes({ + IFC4_IfcAnnotation_type,IFC4_IfcElement_type,IFC4_IfcGrid_type,IFC4_IfcPort_type,IFC4_IfcProxy_type,IFC4_IfcSpatialElement_type,IFC4_IfcStructuralActivity_type,IFC4_IfcStructuralItem_type + }); + IFC4_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4_IfcAnnotationFillArea_type,IFC4_IfcBooleanResult_type,IFC4_IfcBoundingBox_type,IFC4_IfcCartesianPointList_type,IFC4_IfcCartesianTransformationOperator_type,IFC4_IfcCompositeCurveSegment_type,IFC4_IfcCsgPrimitive3D_type,IFC4_IfcCurve_type,IFC4_IfcDirection_type,IFC4_IfcFaceBasedSurfaceModel_type,IFC4_IfcFillAreaStyleHatching_type,IFC4_IfcFillAreaStyleTiles_type,IFC4_IfcGeometricSet_type,IFC4_IfcHalfSpaceSolid_type,IFC4_IfcLightSource_type,IFC4_IfcPlacement_type,IFC4_IfcPlanarExtent_type,IFC4_IfcPoint_type,IFC4_IfcSectionedSpine_type,IFC4_IfcShellBasedSurfaceModel_type,IFC4_IfcSolidModel_type,IFC4_IfcSurface_type,IFC4_IfcTessellatedItem_type,IFC4_IfcTextLiteral_type,IFC4_IfcVector_type + }); + IFC4_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4_IfcApprovalRelationship_type,IFC4_IfcCurrencyRelationship_type,IFC4_IfcDocumentInformationRelationship_type,IFC4_IfcExternalReferenceRelationship_type,IFC4_IfcMaterialRelationship_type,IFC4_IfcOrganizationRelationship_type,IFC4_IfcPropertyDependencyRelationship_type,IFC4_IfcResourceApprovalRelationship_type,IFC4_IfcResourceConstraintRelationship_type + }); + IFC4_IfcProfileDef_type->set_subtypes({ + IFC4_IfcArbitraryClosedProfileDef_type,IFC4_IfcArbitraryOpenProfileDef_type,IFC4_IfcCompositeProfileDef_type,IFC4_IfcDerivedProfileDef_type,IFC4_IfcParameterizedProfileDef_type + }); + IFC4_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4_IfcArbitraryProfileDefWithVoids_type + }); + IFC4_IfcGroup_type->set_subtypes({ + IFC4_IfcAsset_type,IFC4_IfcInventory_type,IFC4_IfcStructuralLoadGroup_type,IFC4_IfcStructuralResultGroup_type,IFC4_IfcSystem_type + }); + IFC4_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4_IfcAsymmetricIShapeProfileDef_type,IFC4_IfcCShapeProfileDef_type,IFC4_IfcCircleProfileDef_type,IFC4_IfcEllipseProfileDef_type,IFC4_IfcIShapeProfileDef_type,IFC4_IfcLShapeProfileDef_type,IFC4_IfcRectangleProfileDef_type,IFC4_IfcTShapeProfileDef_type,IFC4_IfcTrapeziumProfileDef_type,IFC4_IfcUShapeProfileDef_type,IFC4_IfcZShapeProfileDef_type + }); + IFC4_IfcPlacement_type->set_subtypes({ + IFC4_IfcAxis1Placement_type,IFC4_IfcAxis2Placement2D_type,IFC4_IfcAxis2Placement3D_type + }); + IFC4_IfcBoundedCurve_type->set_subtypes({ + IFC4_IfcBSplineCurve_type,IFC4_IfcCompositeCurve_type,IFC4_IfcIndexedPolyCurve_type,IFC4_IfcPolyline_type,IFC4_IfcTrimmedCurve_type + }); + IFC4_IfcBSplineCurve_type->set_subtypes({ + IFC4_IfcBSplineCurveWithKnots_type + }); + IFC4_IfcBoundedSurface_type->set_subtypes({ + IFC4_IfcBSplineSurface_type,IFC4_IfcCurveBoundedPlane_type,IFC4_IfcCurveBoundedSurface_type,IFC4_IfcRectangularTrimmedSurface_type + }); + IFC4_IfcBSplineSurface_type->set_subtypes({ + IFC4_IfcBSplineSurfaceWithKnots_type + }); + IFC4_IfcBuildingElement_type->set_subtypes({ + IFC4_IfcBeam_type,IFC4_IfcBuildingElementProxy_type,IFC4_IfcChimney_type,IFC4_IfcColumn_type,IFC4_IfcCovering_type,IFC4_IfcCurtainWall_type,IFC4_IfcDoor_type,IFC4_IfcFooting_type,IFC4_IfcMember_type,IFC4_IfcPile_type,IFC4_IfcPlate_type,IFC4_IfcRailing_type,IFC4_IfcRamp_type,IFC4_IfcRampFlight_type,IFC4_IfcRoof_type,IFC4_IfcShadingDevice_type,IFC4_IfcSlab_type,IFC4_IfcStair_type,IFC4_IfcStairFlight_type,IFC4_IfcWall_type,IFC4_IfcWindow_type + }); + IFC4_IfcBeam_type->set_subtypes({ + IFC4_IfcBeamStandardCase_type + }); + IFC4_IfcBuildingElementType_type->set_subtypes({ + IFC4_IfcBeamType_type,IFC4_IfcBuildingElementProxyType_type,IFC4_IfcChimneyType_type,IFC4_IfcColumnType_type,IFC4_IfcCoveringType_type,IFC4_IfcCurtainWallType_type,IFC4_IfcDoorType_type,IFC4_IfcFootingType_type,IFC4_IfcMemberType_type,IFC4_IfcPileType_type,IFC4_IfcPlateType_type,IFC4_IfcRailingType_type,IFC4_IfcRampFlightType_type,IFC4_IfcRampType_type,IFC4_IfcRoofType_type,IFC4_IfcShadingDeviceType_type,IFC4_IfcSlabType_type,IFC4_IfcStairFlightType_type,IFC4_IfcStairType_type,IFC4_IfcWallType_type,IFC4_IfcWindowType_type + }); + IFC4_IfcSurfaceTexture_type->set_subtypes({ + IFC4_IfcBlobTexture_type,IFC4_IfcImageTexture_type,IFC4_IfcPixelTexture_type + }); + IFC4_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4_IfcBlock_type,IFC4_IfcRectangularPyramid_type,IFC4_IfcRightCircularCone_type,IFC4_IfcRightCircularCylinder_type,IFC4_IfcSphere_type + }); + IFC4_IfcBooleanResult_type->set_subtypes({ + IFC4_IfcBooleanClippingResult_type + }); + IFC4_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4_IfcBoundaryCurve_type + }); + IFC4_IfcBoundaryCondition_type->set_subtypes({ + IFC4_IfcBoundaryEdgeCondition_type,IFC4_IfcBoundaryFaceCondition_type,IFC4_IfcBoundaryNodeCondition_type + }); + IFC4_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4_IfcBoundaryNodeConditionWarping_type + }); + IFC4_IfcCurve_type->set_subtypes({ + IFC4_IfcBoundedCurve_type,IFC4_IfcConic_type,IFC4_IfcLine_type,IFC4_IfcOffsetCurve2D_type,IFC4_IfcOffsetCurve3D_type,IFC4_IfcPcurve_type,IFC4_IfcSurfaceCurve_type + }); + IFC4_IfcSurface_type->set_subtypes({ + IFC4_IfcBoundedSurface_type,IFC4_IfcElementarySurface_type,IFC4_IfcSweptSurface_type + }); + IFC4_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4_IfcBoxedHalfSpace_type,IFC4_IfcPolygonalBoundedHalfSpace_type + }); + IFC4_IfcSpatialStructureElement_type->set_subtypes({ + IFC4_IfcBuilding_type,IFC4_IfcBuildingStorey_type,IFC4_IfcSite_type,IFC4_IfcSpace_type + }); + IFC4_IfcElement_type->set_subtypes({ + IFC4_IfcBuildingElement_type,IFC4_IfcCivilElement_type,IFC4_IfcDistributionElement_type,IFC4_IfcElementAssembly_type,IFC4_IfcElementComponent_type,IFC4_IfcFeatureElement_type,IFC4_IfcFurnishingElement_type,IFC4_IfcGeographicElement_type,IFC4_IfcTransportElement_type,IFC4_IfcVirtualElement_type + }); + IFC4_IfcElementComponent_type->set_subtypes({ + IFC4_IfcBuildingElementPart_type,IFC4_IfcDiscreteAccessory_type,IFC4_IfcFastener_type,IFC4_IfcMechanicalFastener_type,IFC4_IfcReinforcingElement_type,IFC4_IfcVibrationIsolator_type + }); + IFC4_IfcElementComponentType_type->set_subtypes({ + IFC4_IfcBuildingElementPartType_type,IFC4_IfcDiscreteAccessoryType_type,IFC4_IfcFastenerType_type,IFC4_IfcMechanicalFastenerType_type,IFC4_IfcReinforcingElementType_type,IFC4_IfcVibrationIsolatorType_type + }); + IFC4_IfcElementType_type->set_subtypes({ + IFC4_IfcBuildingElementType_type,IFC4_IfcCivilElementType_type,IFC4_IfcDistributionElementType_type,IFC4_IfcElementAssemblyType_type,IFC4_IfcElementComponentType_type,IFC4_IfcFurnishingElementType_type,IFC4_IfcGeographicElementType_type,IFC4_IfcTransportElementType_type + }); + IFC4_IfcSystem_type->set_subtypes({ + IFC4_IfcBuildingSystem_type,IFC4_IfcDistributionSystem_type,IFC4_IfcStructuralAnalysisModel_type,IFC4_IfcZone_type + }); + IFC4_IfcFlowFitting_type->set_subtypes({ + IFC4_IfcCableCarrierFitting_type,IFC4_IfcCableFitting_type,IFC4_IfcDuctFitting_type,IFC4_IfcJunctionBox_type,IFC4_IfcPipeFitting_type + }); + IFC4_IfcFlowFittingType_type->set_subtypes({ + IFC4_IfcCableCarrierFittingType_type,IFC4_IfcCableFittingType_type,IFC4_IfcDuctFittingType_type,IFC4_IfcJunctionBoxType_type,IFC4_IfcPipeFittingType_type + }); + IFC4_IfcFlowSegment_type->set_subtypes({ + IFC4_IfcCableCarrierSegment_type,IFC4_IfcCableSegment_type,IFC4_IfcDuctSegment_type,IFC4_IfcPipeSegment_type + }); + IFC4_IfcFlowSegmentType_type->set_subtypes({ + IFC4_IfcCableCarrierSegmentType_type,IFC4_IfcCableSegmentType_type,IFC4_IfcDuctSegmentType_type,IFC4_IfcPipeSegmentType_type + }); + IFC4_IfcPoint_type->set_subtypes({ + IFC4_IfcCartesianPoint_type,IFC4_IfcPointOnCurve_type,IFC4_IfcPointOnSurface_type + }); + IFC4_IfcCartesianPointList_type->set_subtypes({ + IFC4_IfcCartesianPointList2D_type,IFC4_IfcCartesianPointList3D_type + }); + IFC4_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4_IfcCartesianTransformationOperator2D_type,IFC4_IfcCartesianTransformationOperator3D_type + }); + IFC4_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4_IfcCenterLineProfileDef_type + }); + IFC4_IfcConic_type->set_subtypes({ + IFC4_IfcCircle_type,IFC4_IfcEllipse_type + }); + IFC4_IfcCircleProfileDef_type->set_subtypes({ + IFC4_IfcCircleHollowProfileDef_type + }); + IFC4_IfcExternalInformation_type->set_subtypes({ + IFC4_IfcClassification_type,IFC4_IfcDocumentInformation_type,IFC4_IfcLibraryInformation_type + }); + IFC4_IfcExternalReference_type->set_subtypes({ + IFC4_IfcClassificationReference_type,IFC4_IfcDocumentReference_type,IFC4_IfcExternallyDefinedHatchStyle_type,IFC4_IfcExternallyDefinedSurfaceStyle_type,IFC4_IfcExternallyDefinedTextFont_type,IFC4_IfcLibraryReference_type + }); + IFC4_IfcConnectedFaceSet_type->set_subtypes({ + IFC4_IfcClosedShell_type,IFC4_IfcOpenShell_type + }); + IFC4_IfcColourSpecification_type->set_subtypes({ + IFC4_IfcColourRgb_type + }); + IFC4_IfcPresentationItem_type->set_subtypes({ + IFC4_IfcColourRgbList_type,IFC4_IfcColourSpecification_type,IFC4_IfcCurveStyleFont_type,IFC4_IfcCurveStyleFontAndScaling_type,IFC4_IfcCurveStyleFontPattern_type,IFC4_IfcIndexedColourMap_type,IFC4_IfcPreDefinedItem_type,IFC4_IfcSurfaceStyleLighting_type,IFC4_IfcSurfaceStyleRefraction_type,IFC4_IfcSurfaceStyleShading_type,IFC4_IfcSurfaceStyleWithTextures_type,IFC4_IfcSurfaceTexture_type,IFC4_IfcTextStyleForDefinedFont_type,IFC4_IfcTextStyleTextModel_type,IFC4_IfcTextureCoordinate_type,IFC4_IfcTextureVertex_type,IFC4_IfcTextureVertexList_type + }); + IFC4_IfcColumn_type->set_subtypes({ + IFC4_IfcColumnStandardCase_type + }); + IFC4_IfcProperty_type->set_subtypes({ + IFC4_IfcComplexProperty_type,IFC4_IfcSimpleProperty_type + }); + IFC4_IfcPropertyTemplate_type->set_subtypes({ + IFC4_IfcComplexPropertyTemplate_type,IFC4_IfcSimplePropertyTemplate_type + }); + IFC4_IfcCompositeCurve_type->set_subtypes({ + IFC4_IfcCompositeCurveOnSurface_type + }); + IFC4_IfcFlowMovingDevice_type->set_subtypes({ + IFC4_IfcCompressor_type,IFC4_IfcFan_type,IFC4_IfcPump_type + }); + IFC4_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4_IfcCompressorType_type,IFC4_IfcFanType_type,IFC4_IfcPumpType_type + }); + IFC4_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4_IfcConnectedFaceSet_type,IFC4_IfcEdge_type,IFC4_IfcFace_type,IFC4_IfcFaceBound_type,IFC4_IfcLoop_type,IFC4_IfcPath_type,IFC4_IfcVertex_type + }); + IFC4_IfcConnectionGeometry_type->set_subtypes({ + IFC4_IfcConnectionCurveGeometry_type,IFC4_IfcConnectionPointGeometry_type,IFC4_IfcConnectionSurfaceGeometry_type,IFC4_IfcConnectionVolumeGeometry_type + }); + IFC4_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4_IfcConnectionPointEccentricity_type + }); + IFC4_IfcConstructionResource_type->set_subtypes({ + IFC4_IfcConstructionEquipmentResource_type,IFC4_IfcConstructionMaterialResource_type,IFC4_IfcConstructionProductResource_type,IFC4_IfcCrewResource_type,IFC4_IfcLaborResource_type,IFC4_IfcSubContractResource_type + }); + IFC4_IfcConstructionResourceType_type->set_subtypes({ + IFC4_IfcConstructionEquipmentResourceType_type,IFC4_IfcConstructionMaterialResourceType_type,IFC4_IfcConstructionProductResourceType_type,IFC4_IfcCrewResourceType_type,IFC4_IfcLaborResourceType_type,IFC4_IfcSubContractResourceType_type + }); + IFC4_IfcResource_type->set_subtypes({ + IFC4_IfcConstructionResource_type + }); + IFC4_IfcTypeResource_type->set_subtypes({ + IFC4_IfcConstructionResourceType_type + }); + IFC4_IfcObjectDefinition_type->set_subtypes({ + IFC4_IfcContext_type,IFC4_IfcObject_type,IFC4_IfcTypeObject_type + }); + IFC4_IfcNamedUnit_type->set_subtypes({ + IFC4_IfcContextDependentUnit_type,IFC4_IfcConversionBasedUnit_type,IFC4_IfcSIUnit_type + }); + IFC4_IfcConversionBasedUnit_type->set_subtypes({ + IFC4_IfcConversionBasedUnitWithOffset_type + }); + IFC4_IfcAppliedValue_type->set_subtypes({ + IFC4_IfcCostValue_type + }); + IFC4_IfcSolidModel_type->set_subtypes({ + IFC4_IfcCsgSolid_type,IFC4_IfcManifoldSolidBrep_type,IFC4_IfcSweptAreaSolid_type,IFC4_IfcSweptDiskSolid_type + }); + IFC4_IfcPresentationStyle_type->set_subtypes({ + IFC4_IfcCurveStyle_type,IFC4_IfcFillAreaStyle_type,IFC4_IfcSurfaceStyle_type,IFC4_IfcTextStyle_type + }); + IFC4_IfcElementarySurface_type->set_subtypes({ + IFC4_IfcCylindricalSurface_type,IFC4_IfcPlane_type,IFC4_IfcSphericalSurface_type,IFC4_IfcToroidalSurface_type + }); + IFC4_IfcDistributionFlowElement_type->set_subtypes({ + IFC4_IfcDistributionChamberElement_type,IFC4_IfcEnergyConversionDevice_type,IFC4_IfcFlowController_type,IFC4_IfcFlowFitting_type,IFC4_IfcFlowMovingDevice_type,IFC4_IfcFlowSegment_type,IFC4_IfcFlowStorageDevice_type,IFC4_IfcFlowTerminal_type,IFC4_IfcFlowTreatmentDevice_type + }); + IFC4_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4_IfcDistributionChamberElementType_type,IFC4_IfcEnergyConversionDeviceType_type,IFC4_IfcFlowControllerType_type,IFC4_IfcFlowFittingType_type,IFC4_IfcFlowMovingDeviceType_type,IFC4_IfcFlowSegmentType_type,IFC4_IfcFlowStorageDeviceType_type,IFC4_IfcFlowTerminalType_type,IFC4_IfcFlowTreatmentDeviceType_type + }); + IFC4_IfcDistributionSystem_type->set_subtypes({ + IFC4_IfcDistributionCircuit_type + }); + IFC4_IfcDistributionElement_type->set_subtypes({ + IFC4_IfcDistributionControlElement_type,IFC4_IfcDistributionFlowElement_type + }); + IFC4_IfcDistributionElementType_type->set_subtypes({ + IFC4_IfcDistributionControlElementType_type,IFC4_IfcDistributionFlowElementType_type + }); + IFC4_IfcPort_type->set_subtypes({ + IFC4_IfcDistributionPort_type + }); + IFC4_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4_IfcDoorLiningProperties_type,IFC4_IfcDoorPanelProperties_type,IFC4_IfcPermeableCoveringProperties_type,IFC4_IfcReinforcementDefinitionProperties_type,IFC4_IfcWindowLiningProperties_type,IFC4_IfcWindowPanelProperties_type + }); + IFC4_IfcDoor_type->set_subtypes({ + IFC4_IfcDoorStandardCase_type + }); + IFC4_IfcTypeProduct_type->set_subtypes({ + IFC4_IfcDoorStyle_type,IFC4_IfcElementType_type,IFC4_IfcSpatialElementType_type,IFC4_IfcWindowStyle_type + }); + IFC4_IfcPreDefinedColour_type->set_subtypes({ + IFC4_IfcDraughtingPreDefinedColour_type + }); + IFC4_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4_IfcDuctSilencer_type,IFC4_IfcFilter_type,IFC4_IfcInterceptor_type + }); + IFC4_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4_IfcDuctSilencerType_type,IFC4_IfcFilterType_type,IFC4_IfcInterceptorType_type + }); + IFC4_IfcEdge_type->set_subtypes({ + IFC4_IfcEdgeCurve_type,IFC4_IfcOrientedEdge_type,IFC4_IfcSubedge_type + }); + IFC4_IfcLoop_type->set_subtypes({ + IFC4_IfcEdgeLoop_type,IFC4_IfcPolyLoop_type,IFC4_IfcVertexLoop_type + }); + IFC4_IfcFlowStorageDevice_type->set_subtypes({ + IFC4_IfcElectricFlowStorageDevice_type,IFC4_IfcTank_type + }); + IFC4_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4_IfcElectricFlowStorageDeviceType_type,IFC4_IfcTankType_type + }); + IFC4_IfcQuantitySet_type->set_subtypes({ + IFC4_IfcElementQuantity_type + }); + IFC4_IfcProcess_type->set_subtypes({ + IFC4_IfcEvent_type,IFC4_IfcProcedure_type,IFC4_IfcTask_type + }); + IFC4_IfcSchedulingTime_type->set_subtypes({ + IFC4_IfcEventTime_type,IFC4_IfcLagTime_type,IFC4_IfcResourceTime_type,IFC4_IfcTaskTime_type,IFC4_IfcWorkTime_type + }); + IFC4_IfcTypeProcess_type->set_subtypes({ + IFC4_IfcEventType_type,IFC4_IfcProcedureType_type,IFC4_IfcTaskType_type + }); + IFC4_IfcPropertyAbstraction_type->set_subtypes({ + IFC4_IfcExtendedProperties_type,IFC4_IfcPreDefinedProperties_type,IFC4_IfcProperty_type,IFC4_IfcPropertyEnumeration_type + }); + IFC4_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4_IfcExternalSpatialElement_type + }); + IFC4_IfcSpatialElement_type->set_subtypes({ + IFC4_IfcExternalSpatialStructureElement_type,IFC4_IfcSpatialStructureElement_type,IFC4_IfcSpatialZone_type + }); + IFC4_IfcSweptAreaSolid_type->set_subtypes({ + IFC4_IfcExtrudedAreaSolid_type,IFC4_IfcFixedReferenceSweptAreaSolid_type,IFC4_IfcRevolvedAreaSolid_type,IFC4_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4_IfcExtrudedAreaSolidTapered_type + }); + IFC4_IfcFaceBound_type->set_subtypes({ + IFC4_IfcFaceOuterBound_type + }); + IFC4_IfcFace_type->set_subtypes({ + IFC4_IfcFaceSurface_type + }); + IFC4_IfcFacetedBrep_type->set_subtypes({ + IFC4_IfcFacetedBrepWithVoids_type + }); + IFC4_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4_IfcFailureConnectionCondition_type,IFC4_IfcSlippageConnectionCondition_type + }); + IFC4_IfcFeatureElement_type->set_subtypes({ + IFC4_IfcFeatureElementAddition_type,IFC4_IfcFeatureElementSubtraction_type,IFC4_IfcSurfaceFeature_type + }); + IFC4_IfcFurnishingElement_type->set_subtypes({ + IFC4_IfcFurniture_type,IFC4_IfcSystemFurnitureElement_type + }); + IFC4_IfcFurnishingElementType_type->set_subtypes({ + IFC4_IfcFurnitureType_type,IFC4_IfcSystemFurnitureElementType_type + }); + IFC4_IfcGeometricSet_type->set_subtypes({ + IFC4_IfcGeometricCurveSet_type + }); + IFC4_IfcRepresentationContext_type->set_subtypes({ + IFC4_IfcGeometricRepresentationContext_type + }); + IFC4_IfcRepresentationItem_type->set_subtypes({ + IFC4_IfcGeometricRepresentationItem_type,IFC4_IfcMappedItem_type,IFC4_IfcStyledItem_type,IFC4_IfcTopologicalRepresentationItem_type + }); + IFC4_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4_IfcGeometricRepresentationSubContext_type + }); + IFC4_IfcObjectPlacement_type->set_subtypes({ + IFC4_IfcGridPlacement_type,IFC4_IfcLocalPlacement_type + }); + IFC4_IfcTessellatedItem_type->set_subtypes({ + IFC4_IfcIndexedPolygonalFace_type,IFC4_IfcTessellatedFaceSet_type + }); + IFC4_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4_IfcTextureCoordinate_type->set_subtypes({ + IFC4_IfcIndexedTextureMap_type,IFC4_IfcTextureCoordinateGenerator_type,IFC4_IfcTextureMap_type + }); + IFC4_IfcIndexedTextureMap_type->set_subtypes({ + IFC4_IfcIndexedTriangleTextureMap_type + }); + IFC4_IfcSurfaceCurve_type->set_subtypes({ + IFC4_IfcIntersectionCurve_type,IFC4_IfcSeamCurve_type + }); + IFC4_IfcTimeSeries_type->set_subtypes({ + IFC4_IfcIrregularTimeSeries_type,IFC4_IfcRegularTimeSeries_type + }); + IFC4_IfcLightSource_type->set_subtypes({ + IFC4_IfcLightSourceAmbient_type,IFC4_IfcLightSourceDirectional_type,IFC4_IfcLightSourceGoniometric_type,IFC4_IfcLightSourcePositional_type + }); + IFC4_IfcLightSourcePositional_type->set_subtypes({ + IFC4_IfcLightSourceSpot_type + }); + IFC4_IfcCoordinateOperation_type->set_subtypes({ + IFC4_IfcMapConversion_type + }); + IFC4_IfcMaterialDefinition_type->set_subtypes({ + IFC4_IfcMaterial_type,IFC4_IfcMaterialConstituent_type,IFC4_IfcMaterialConstituentSet_type,IFC4_IfcMaterialLayer_type,IFC4_IfcMaterialLayerSet_type,IFC4_IfcMaterialProfile_type,IFC4_IfcMaterialProfileSet_type + }); + IFC4_IfcProductRepresentation_type->set_subtypes({ + IFC4_IfcMaterialDefinitionRepresentation_type,IFC4_IfcProductDefinitionShape_type + }); + IFC4_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4_IfcMaterialLayerSetUsage_type,IFC4_IfcMaterialProfileSetUsage_type + }); + IFC4_IfcMaterialLayer_type->set_subtypes({ + IFC4_IfcMaterialLayerWithOffsets_type + }); + IFC4_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4_IfcMaterialProfileSetUsageTapering_type + }); + IFC4_IfcMaterialProfile_type->set_subtypes({ + IFC4_IfcMaterialProfileWithOffsets_type + }); + IFC4_IfcExtendedProperties_type->set_subtypes({ + IFC4_IfcMaterialProperties_type,IFC4_IfcProfileProperties_type + }); + IFC4_IfcMember_type->set_subtypes({ + IFC4_IfcMemberStandardCase_type + }); + IFC4_IfcConstraint_type->set_subtypes({ + IFC4_IfcMetric_type,IFC4_IfcObjective_type + }); + IFC4_IfcDerivedProfileDef_type->set_subtypes({ + IFC4_IfcMirroredProfileDef_type + }); + IFC4_IfcRoot_type->set_subtypes({ + IFC4_IfcObjectDefinition_type,IFC4_IfcPropertyDefinition_type,IFC4_IfcRelationship_type + }); + IFC4_IfcActor_type->set_subtypes({ + IFC4_IfcOccupant_type + }); + IFC4_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4_IfcOpeningElement_type,IFC4_IfcVoidingFeature_type + }); + IFC4_IfcOpeningElement_type->set_subtypes({ + IFC4_IfcOpeningStandardCase_type + }); + IFC4_IfcBoundaryCurve_type->set_subtypes({ + IFC4_IfcOuterBoundaryCurve_type + }); + IFC4_IfcPhysicalQuantity_type->set_subtypes({ + IFC4_IfcPhysicalComplexQuantity_type,IFC4_IfcPhysicalSimpleQuantity_type + }); + IFC4_IfcPlanarExtent_type->set_subtypes({ + IFC4_IfcPlanarBox_type + }); + IFC4_IfcPlate_type->set_subtypes({ + IFC4_IfcPlateStandardCase_type + }); + IFC4_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4_IfcPolygonalFaceSet_type,IFC4_IfcTriangulatedFaceSet_type + }); + IFC4_IfcAddress_type->set_subtypes({ + IFC4_IfcPostalAddress_type,IFC4_IfcTelecomAddress_type + }); + IFC4_IfcPreDefinedItem_type->set_subtypes({ + IFC4_IfcPreDefinedColour_type,IFC4_IfcPreDefinedCurveFont_type,IFC4_IfcPreDefinedTextFont_type + }); + IFC4_IfcPropertySetDefinition_type->set_subtypes({ + IFC4_IfcPreDefinedPropertySet_type,IFC4_IfcPropertySet_type,IFC4_IfcQuantitySet_type + }); + IFC4_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4_IfcPresentationLayerWithStyle_type + }); + IFC4_IfcContext_type->set_subtypes({ + IFC4_IfcProject_type,IFC4_IfcProjectLibrary_type + }); + IFC4_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4_IfcProjectedCRS_type + }); + IFC4_IfcFeatureElementAddition_type->set_subtypes({ + IFC4_IfcProjectionElement_type + }); + IFC4_IfcSimpleProperty_type->set_subtypes({ + IFC4_IfcPropertyBoundedValue_type,IFC4_IfcPropertyEnumeratedValue_type,IFC4_IfcPropertyListValue_type,IFC4_IfcPropertyReferenceValue_type,IFC4_IfcPropertySingleValue_type,IFC4_IfcPropertyTableValue_type + }); + IFC4_IfcPropertyDefinition_type->set_subtypes({ + IFC4_IfcPropertySetDefinition_type,IFC4_IfcPropertyTemplateDefinition_type + }); + IFC4_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4_IfcPropertySetTemplate_type,IFC4_IfcPropertyTemplate_type + }); + IFC4_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4_IfcQuantityArea_type,IFC4_IfcQuantityCount_type,IFC4_IfcQuantityLength_type,IFC4_IfcQuantityTime_type,IFC4_IfcQuantityVolume_type,IFC4_IfcQuantityWeight_type + }); + IFC4_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4_IfcRationalBSplineCurveWithKnots_type + }); + IFC4_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4_IfcRectangleProfileDef_type->set_subtypes({ + IFC4_IfcRectangleHollowProfileDef_type,IFC4_IfcRoundedRectangleProfileDef_type + }); + IFC4_IfcPreDefinedProperties_type->set_subtypes({ + IFC4_IfcReinforcementBarProperties_type,IFC4_IfcSectionProperties_type,IFC4_IfcSectionReinforcementProperties_type + }); + IFC4_IfcReinforcingElement_type->set_subtypes({ + IFC4_IfcReinforcingBar_type,IFC4_IfcReinforcingMesh_type,IFC4_IfcTendon_type,IFC4_IfcTendonAnchor_type + }); + IFC4_IfcReinforcingElementType_type->set_subtypes({ + IFC4_IfcReinforcingBarType_type,IFC4_IfcReinforcingMeshType_type,IFC4_IfcTendonAnchorType_type,IFC4_IfcTendonType_type + }); + IFC4_IfcRelDecomposes_type->set_subtypes({ + IFC4_IfcRelAggregates_type,IFC4_IfcRelNests_type,IFC4_IfcRelProjectsElement_type,IFC4_IfcRelVoidsElement_type + }); + IFC4_IfcRelationship_type->set_subtypes({ + IFC4_IfcRelAssigns_type,IFC4_IfcRelAssociates_type,IFC4_IfcRelConnects_type,IFC4_IfcRelDeclares_type,IFC4_IfcRelDecomposes_type,IFC4_IfcRelDefines_type + }); + IFC4_IfcRelAssigns_type->set_subtypes({ + IFC4_IfcRelAssignsToActor_type,IFC4_IfcRelAssignsToControl_type,IFC4_IfcRelAssignsToGroup_type,IFC4_IfcRelAssignsToProcess_type,IFC4_IfcRelAssignsToProduct_type,IFC4_IfcRelAssignsToResource_type + }); + IFC4_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4_IfcRelAssignsToGroupByFactor_type + }); + IFC4_IfcRelAssociates_type->set_subtypes({ + IFC4_IfcRelAssociatesApproval_type,IFC4_IfcRelAssociatesClassification_type,IFC4_IfcRelAssociatesConstraint_type,IFC4_IfcRelAssociatesDocument_type,IFC4_IfcRelAssociatesLibrary_type,IFC4_IfcRelAssociatesMaterial_type + }); + IFC4_IfcRelConnects_type->set_subtypes({ + IFC4_IfcRelConnectsElements_type,IFC4_IfcRelConnectsPortToElement_type,IFC4_IfcRelConnectsPorts_type,IFC4_IfcRelConnectsStructuralActivity_type,IFC4_IfcRelConnectsStructuralMember_type,IFC4_IfcRelContainedInSpatialStructure_type,IFC4_IfcRelCoversBldgElements_type,IFC4_IfcRelCoversSpaces_type,IFC4_IfcRelFillsElement_type,IFC4_IfcRelFlowControlElements_type,IFC4_IfcRelInterferesElements_type,IFC4_IfcRelReferencedInSpatialStructure_type,IFC4_IfcRelSequence_type,IFC4_IfcRelServicesBuildings_type,IFC4_IfcRelSpaceBoundary_type + }); + IFC4_IfcRelConnectsElements_type->set_subtypes({ + IFC4_IfcRelConnectsPathElements_type,IFC4_IfcRelConnectsWithRealizingElements_type + }); + IFC4_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4_IfcRelConnectsWithEccentricity_type + }); + IFC4_IfcRelDefines_type->set_subtypes({ + IFC4_IfcRelDefinesByObject_type,IFC4_IfcRelDefinesByProperties_type,IFC4_IfcRelDefinesByTemplate_type,IFC4_IfcRelDefinesByType_type + }); + IFC4_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4_IfcRelSpaceBoundary1stLevel_type + }); + IFC4_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4_IfcRevolvedAreaSolidTapered_type + }); + IFC4_IfcRepresentation_type->set_subtypes({ + IFC4_IfcShapeModel_type,IFC4_IfcStyleModel_type + }); + IFC4_IfcShapeModel_type->set_subtypes({ + IFC4_IfcShapeRepresentation_type,IFC4_IfcTopologyRepresentation_type + }); + IFC4_IfcSlab_type->set_subtypes({ + IFC4_IfcSlabElementedCase_type,IFC4_IfcSlabStandardCase_type + }); + IFC4_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4_IfcSpaceType_type + }); + IFC4_IfcSpatialElementType_type->set_subtypes({ + IFC4_IfcSpatialStructureElementType_type,IFC4_IfcSpatialZoneType_type + }); + IFC4_IfcStructuralActivity_type->set_subtypes({ + IFC4_IfcStructuralAction_type,IFC4_IfcStructuralReaction_type + }); + IFC4_IfcStructuralItem_type->set_subtypes({ + IFC4_IfcStructuralConnection_type,IFC4_IfcStructuralMember_type + }); + IFC4_IfcStructuralAction_type->set_subtypes({ + IFC4_IfcStructuralCurveAction_type,IFC4_IfcStructuralPointAction_type,IFC4_IfcStructuralSurfaceAction_type + }); + IFC4_IfcStructuralConnection_type->set_subtypes({ + IFC4_IfcStructuralCurveConnection_type,IFC4_IfcStructuralPointConnection_type,IFC4_IfcStructuralSurfaceConnection_type + }); + IFC4_IfcStructuralMember_type->set_subtypes({ + IFC4_IfcStructuralCurveMember_type,IFC4_IfcStructuralSurfaceMember_type + }); + IFC4_IfcStructuralCurveMember_type->set_subtypes({ + IFC4_IfcStructuralCurveMemberVarying_type + }); + IFC4_IfcStructuralReaction_type->set_subtypes({ + IFC4_IfcStructuralCurveReaction_type,IFC4_IfcStructuralPointReaction_type,IFC4_IfcStructuralSurfaceReaction_type + }); + IFC4_IfcStructuralCurveAction_type->set_subtypes({ + IFC4_IfcStructuralLinearAction_type + }); + IFC4_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4_IfcStructuralLoadCase_type + }); + IFC4_IfcStructuralLoad_type->set_subtypes({ + IFC4_IfcStructuralLoadConfiguration_type,IFC4_IfcStructuralLoadOrResult_type + }); + IFC4_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4_IfcStructuralLoadLinearForce_type,IFC4_IfcStructuralLoadPlanarForce_type,IFC4_IfcStructuralLoadSingleDisplacement_type,IFC4_IfcStructuralLoadSingleForce_type,IFC4_IfcStructuralLoadTemperature_type + }); + IFC4_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4_IfcStructuralLoadSingleForceWarping_type + }); + IFC4_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4_IfcStructuralLoadStatic_type,IFC4_IfcSurfaceReinforcementArea_type + }); + IFC4_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4_IfcStructuralPlanarAction_type + }); + IFC4_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4_IfcStructuralSurfaceMemberVarying_type + }); + IFC4_IfcStyleModel_type->set_subtypes({ + IFC4_IfcStyledRepresentation_type + }); + IFC4_IfcSweptSurface_type->set_subtypes({ + IFC4_IfcSurfaceOfLinearExtrusion_type,IFC4_IfcSurfaceOfRevolution_type + }); + IFC4_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4_IfcSurfaceStyleRendering_type + }); + IFC4_IfcSweptDiskSolid_type->set_subtypes({ + IFC4_IfcSweptDiskSolidPolygonal_type + }); + IFC4_IfcTaskTime_type->set_subtypes({ + IFC4_IfcTaskTimeRecurring_type + }); + IFC4_IfcTextLiteral_type->set_subtypes({ + IFC4_IfcTextLiteralWithExtent_type + }); + IFC4_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4_IfcTextStyleFontModel_type + }); + IFC4_IfcTypeObject_type->set_subtypes({ + IFC4_IfcTypeProcess_type,IFC4_IfcTypeProduct_type,IFC4_IfcTypeResource_type + }); + IFC4_IfcVertex_type->set_subtypes({ + IFC4_IfcVertexPoint_type + }); + IFC4_IfcWall_type->set_subtypes({ + IFC4_IfcWallElementedCase_type,IFC4_IfcWallStandardCase_type + }); + IFC4_IfcWindow_type->set_subtypes({ + IFC4_IfcWindowStandardCase_type + }); + IFC4_IfcWorkControl_type->set_subtypes({ + IFC4_IfcWorkPlan_type,IFC4_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1173); - declarations.push_back(IFC4_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4_IfcAccelerationMeasure_type); - declarations.push_back(IFC4_IfcActionRequest_type); - declarations.push_back(IFC4_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4_IfcActionTypeEnum_type); - declarations.push_back(IFC4_IfcActor_type); - declarations.push_back(IFC4_IfcActorRole_type); - declarations.push_back(IFC4_IfcActorSelect_type); - declarations.push_back(IFC4_IfcActuator_type); - declarations.push_back(IFC4_IfcActuatorType_type); - declarations.push_back(IFC4_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4_IfcAddress_type); - declarations.push_back(IFC4_IfcAddressTypeEnum_type); - declarations.push_back(IFC4_IfcAdvancedBrep_type); - declarations.push_back(IFC4_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4_IfcAdvancedFace_type); - declarations.push_back(IFC4_IfcAirTerminal_type); - declarations.push_back(IFC4_IfcAirTerminalBox_type); - declarations.push_back(IFC4_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4_IfcAirTerminalType_type); - declarations.push_back(IFC4_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4_IfcAlarm_type); - declarations.push_back(IFC4_IfcAlarmType_type); - declarations.push_back(IFC4_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4_IfcAnnotation_type); - declarations.push_back(IFC4_IfcAnnotationFillArea_type); - declarations.push_back(IFC4_IfcApplication_type); - declarations.push_back(IFC4_IfcAppliedValue_type); - declarations.push_back(IFC4_IfcAppliedValueSelect_type); - declarations.push_back(IFC4_IfcApproval_type); - declarations.push_back(IFC4_IfcApprovalRelationship_type); - declarations.push_back(IFC4_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4_IfcArcIndex_type); - declarations.push_back(IFC4_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4_IfcAreaMeasure_type); - declarations.push_back(IFC4_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4_IfcAsset_type); - declarations.push_back(IFC4_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4_IfcAxis1Placement_type); - declarations.push_back(IFC4_IfcAxis2Placement_type); - declarations.push_back(IFC4_IfcAxis2Placement2D_type); - declarations.push_back(IFC4_IfcAxis2Placement3D_type); - declarations.push_back(IFC4_IfcBeam_type); - declarations.push_back(IFC4_IfcBeamStandardCase_type); - declarations.push_back(IFC4_IfcBeamType_type); - declarations.push_back(IFC4_IfcBeamTypeEnum_type); - declarations.push_back(IFC4_IfcBenchmarkEnum_type); - declarations.push_back(IFC4_IfcBendingParameterSelect_type); - declarations.push_back(IFC4_IfcBinary_type); - declarations.push_back(IFC4_IfcBlobTexture_type); - declarations.push_back(IFC4_IfcBlock_type); - declarations.push_back(IFC4_IfcBoiler_type); - declarations.push_back(IFC4_IfcBoilerType_type); - declarations.push_back(IFC4_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4_IfcBoolean_type); - declarations.push_back(IFC4_IfcBooleanClippingResult_type); - declarations.push_back(IFC4_IfcBooleanOperand_type); - declarations.push_back(IFC4_IfcBooleanOperator_type); - declarations.push_back(IFC4_IfcBooleanResult_type); - declarations.push_back(IFC4_IfcBoundaryCondition_type); - declarations.push_back(IFC4_IfcBoundaryCurve_type); - declarations.push_back(IFC4_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4_IfcBoundedCurve_type); - declarations.push_back(IFC4_IfcBoundedSurface_type); - declarations.push_back(IFC4_IfcBoundingBox_type); - declarations.push_back(IFC4_IfcBoxAlignment_type); - declarations.push_back(IFC4_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4_IfcBSplineCurve_type); - declarations.push_back(IFC4_IfcBSplineCurveForm_type); - declarations.push_back(IFC4_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4_IfcBSplineSurface_type); - declarations.push_back(IFC4_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4_IfcBuilding_type); - declarations.push_back(IFC4_IfcBuildingElement_type); - declarations.push_back(IFC4_IfcBuildingElementPart_type); - declarations.push_back(IFC4_IfcBuildingElementPartType_type); - declarations.push_back(IFC4_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4_IfcBuildingElementProxy_type); - declarations.push_back(IFC4_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4_IfcBuildingElementType_type); - declarations.push_back(IFC4_IfcBuildingStorey_type); - declarations.push_back(IFC4_IfcBuildingSystem_type); - declarations.push_back(IFC4_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4_IfcBurner_type); - declarations.push_back(IFC4_IfcBurnerType_type); - declarations.push_back(IFC4_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4_IfcCableCarrierFitting_type); - declarations.push_back(IFC4_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4_IfcCableCarrierSegment_type); - declarations.push_back(IFC4_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4_IfcCableFitting_type); - declarations.push_back(IFC4_IfcCableFittingType_type); - declarations.push_back(IFC4_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4_IfcCableSegment_type); - declarations.push_back(IFC4_IfcCableSegmentType_type); - declarations.push_back(IFC4_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4_IfcCardinalPointReference_type); - declarations.push_back(IFC4_IfcCartesianPoint_type); - declarations.push_back(IFC4_IfcCartesianPointList_type); - declarations.push_back(IFC4_IfcCartesianPointList2D_type); - declarations.push_back(IFC4_IfcCartesianPointList3D_type); - declarations.push_back(IFC4_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4_IfcChangeActionEnum_type); - declarations.push_back(IFC4_IfcChiller_type); - declarations.push_back(IFC4_IfcChillerType_type); - declarations.push_back(IFC4_IfcChillerTypeEnum_type); - declarations.push_back(IFC4_IfcChimney_type); - declarations.push_back(IFC4_IfcChimneyType_type); - declarations.push_back(IFC4_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4_IfcCircle_type); - declarations.push_back(IFC4_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4_IfcCircleProfileDef_type); - declarations.push_back(IFC4_IfcCivilElement_type); - declarations.push_back(IFC4_IfcCivilElementType_type); - declarations.push_back(IFC4_IfcClassification_type); - declarations.push_back(IFC4_IfcClassificationReference_type); - declarations.push_back(IFC4_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4_IfcClassificationSelect_type); - declarations.push_back(IFC4_IfcClosedShell_type); - declarations.push_back(IFC4_IfcCoil_type); - declarations.push_back(IFC4_IfcCoilType_type); - declarations.push_back(IFC4_IfcCoilTypeEnum_type); - declarations.push_back(IFC4_IfcColour_type); - declarations.push_back(IFC4_IfcColourOrFactor_type); - declarations.push_back(IFC4_IfcColourRgb_type); - declarations.push_back(IFC4_IfcColourRgbList_type); - declarations.push_back(IFC4_IfcColourSpecification_type); - declarations.push_back(IFC4_IfcColumn_type); - declarations.push_back(IFC4_IfcColumnStandardCase_type); - declarations.push_back(IFC4_IfcColumnType_type); - declarations.push_back(IFC4_IfcColumnTypeEnum_type); - declarations.push_back(IFC4_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4_IfcComplexNumber_type); - declarations.push_back(IFC4_IfcComplexProperty_type); - declarations.push_back(IFC4_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4_IfcCompositeCurve_type); - declarations.push_back(IFC4_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4_IfcCompositeProfileDef_type); - declarations.push_back(IFC4_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4_IfcCompressor_type); - declarations.push_back(IFC4_IfcCompressorType_type); - declarations.push_back(IFC4_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4_IfcCondenser_type); - declarations.push_back(IFC4_IfcCondenserType_type); - declarations.push_back(IFC4_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4_IfcConic_type); - declarations.push_back(IFC4_IfcConnectedFaceSet_type); - declarations.push_back(IFC4_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4_IfcConnectionGeometry_type); - declarations.push_back(IFC4_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4_IfcConstraint_type); - declarations.push_back(IFC4_IfcConstraintEnum_type); - declarations.push_back(IFC4_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4_IfcConstructionProductResource_type); - declarations.push_back(IFC4_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4_IfcConstructionResource_type); - declarations.push_back(IFC4_IfcConstructionResourceType_type); - declarations.push_back(IFC4_IfcContext_type); - declarations.push_back(IFC4_IfcContextDependentMeasure_type); - declarations.push_back(IFC4_IfcContextDependentUnit_type); - declarations.push_back(IFC4_IfcControl_type); - declarations.push_back(IFC4_IfcController_type); - declarations.push_back(IFC4_IfcControllerType_type); - declarations.push_back(IFC4_IfcControllerTypeEnum_type); - declarations.push_back(IFC4_IfcConversionBasedUnit_type); - declarations.push_back(IFC4_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4_IfcCooledBeam_type); - declarations.push_back(IFC4_IfcCooledBeamType_type); - declarations.push_back(IFC4_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4_IfcCoolingTower_type); - declarations.push_back(IFC4_IfcCoolingTowerType_type); - declarations.push_back(IFC4_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4_IfcCoordinateOperation_type); - declarations.push_back(IFC4_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4_IfcCostItem_type); - declarations.push_back(IFC4_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4_IfcCostSchedule_type); - declarations.push_back(IFC4_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4_IfcCostValue_type); - declarations.push_back(IFC4_IfcCountMeasure_type); - declarations.push_back(IFC4_IfcCovering_type); - declarations.push_back(IFC4_IfcCoveringType_type); - declarations.push_back(IFC4_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4_IfcCrewResource_type); - declarations.push_back(IFC4_IfcCrewResourceType_type); - declarations.push_back(IFC4_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4_IfcCsgSelect_type); - declarations.push_back(IFC4_IfcCsgSolid_type); - declarations.push_back(IFC4_IfcCShapeProfileDef_type); - declarations.push_back(IFC4_IfcCurrencyRelationship_type); - declarations.push_back(IFC4_IfcCurtainWall_type); - declarations.push_back(IFC4_IfcCurtainWallType_type); - declarations.push_back(IFC4_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4_IfcCurvatureMeasure_type); - declarations.push_back(IFC4_IfcCurve_type); - declarations.push_back(IFC4_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4_IfcCurveOnSurface_type); - declarations.push_back(IFC4_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4_IfcCurveStyle_type); - declarations.push_back(IFC4_IfcCurveStyleFont_type); - declarations.push_back(IFC4_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4_IfcCylindricalSurface_type); - declarations.push_back(IFC4_IfcDamper_type); - declarations.push_back(IFC4_IfcDamperType_type); - declarations.push_back(IFC4_IfcDamperTypeEnum_type); - declarations.push_back(IFC4_IfcDataOriginEnum_type); - declarations.push_back(IFC4_IfcDate_type); - declarations.push_back(IFC4_IfcDateTime_type); - declarations.push_back(IFC4_IfcDayInMonthNumber_type); - declarations.push_back(IFC4_IfcDayInWeekNumber_type); - declarations.push_back(IFC4_IfcDefinitionSelect_type); - declarations.push_back(IFC4_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4_IfcDerivedProfileDef_type); - declarations.push_back(IFC4_IfcDerivedUnit_type); - declarations.push_back(IFC4_IfcDerivedUnitElement_type); - declarations.push_back(IFC4_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4_IfcDimensionalExponents_type); - declarations.push_back(IFC4_IfcDimensionCount_type); - declarations.push_back(IFC4_IfcDirection_type); - declarations.push_back(IFC4_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4_IfcDiscreteAccessory_type); - declarations.push_back(IFC4_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4_IfcDistributionChamberElement_type); - declarations.push_back(IFC4_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4_IfcDistributionCircuit_type); - declarations.push_back(IFC4_IfcDistributionControlElement_type); - declarations.push_back(IFC4_IfcDistributionControlElementType_type); - declarations.push_back(IFC4_IfcDistributionElement_type); - declarations.push_back(IFC4_IfcDistributionElementType_type); - declarations.push_back(IFC4_IfcDistributionFlowElement_type); - declarations.push_back(IFC4_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4_IfcDistributionPort_type); - declarations.push_back(IFC4_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4_IfcDistributionSystem_type); - declarations.push_back(IFC4_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4_IfcDocumentInformation_type); - declarations.push_back(IFC4_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4_IfcDocumentReference_type); - declarations.push_back(IFC4_IfcDocumentSelect_type); - declarations.push_back(IFC4_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4_IfcDoor_type); - declarations.push_back(IFC4_IfcDoorLiningProperties_type); - declarations.push_back(IFC4_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4_IfcDoorPanelProperties_type); - declarations.push_back(IFC4_IfcDoorStandardCase_type); - declarations.push_back(IFC4_IfcDoorStyle_type); - declarations.push_back(IFC4_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4_IfcDoorType_type); - declarations.push_back(IFC4_IfcDoorTypeEnum_type); - declarations.push_back(IFC4_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4_IfcDuctFitting_type); - declarations.push_back(IFC4_IfcDuctFittingType_type); - declarations.push_back(IFC4_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4_IfcDuctSegment_type); - declarations.push_back(IFC4_IfcDuctSegmentType_type); - declarations.push_back(IFC4_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4_IfcDuctSilencer_type); - declarations.push_back(IFC4_IfcDuctSilencerType_type); - declarations.push_back(IFC4_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4_IfcDuration_type); - declarations.push_back(IFC4_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4_IfcEdge_type); - declarations.push_back(IFC4_IfcEdgeCurve_type); - declarations.push_back(IFC4_IfcEdgeLoop_type); - declarations.push_back(IFC4_IfcElectricAppliance_type); - declarations.push_back(IFC4_IfcElectricApplianceType_type); - declarations.push_back(IFC4_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4_IfcElectricGenerator_type); - declarations.push_back(IFC4_IfcElectricGeneratorType_type); - declarations.push_back(IFC4_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4_IfcElectricMotor_type); - declarations.push_back(IFC4_IfcElectricMotorType_type); - declarations.push_back(IFC4_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4_IfcElectricTimeControl_type); - declarations.push_back(IFC4_IfcElectricTimeControlType_type); - declarations.push_back(IFC4_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4_IfcElement_type); - declarations.push_back(IFC4_IfcElementarySurface_type); - declarations.push_back(IFC4_IfcElementAssembly_type); - declarations.push_back(IFC4_IfcElementAssemblyType_type); - declarations.push_back(IFC4_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4_IfcElementComponent_type); - declarations.push_back(IFC4_IfcElementComponentType_type); - declarations.push_back(IFC4_IfcElementCompositionEnum_type); - declarations.push_back(IFC4_IfcElementQuantity_type); - declarations.push_back(IFC4_IfcElementType_type); - declarations.push_back(IFC4_IfcEllipse_type); - declarations.push_back(IFC4_IfcEllipseProfileDef_type); - declarations.push_back(IFC4_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4_IfcEnergyMeasure_type); - declarations.push_back(IFC4_IfcEngine_type); - declarations.push_back(IFC4_IfcEngineType_type); - declarations.push_back(IFC4_IfcEngineTypeEnum_type); - declarations.push_back(IFC4_IfcEvaporativeCooler_type); - declarations.push_back(IFC4_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4_IfcEvaporator_type); - declarations.push_back(IFC4_IfcEvaporatorType_type); - declarations.push_back(IFC4_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4_IfcEvent_type); - declarations.push_back(IFC4_IfcEventTime_type); - declarations.push_back(IFC4_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4_IfcEventType_type); - declarations.push_back(IFC4_IfcEventTypeEnum_type); - declarations.push_back(IFC4_IfcExtendedProperties_type); - declarations.push_back(IFC4_IfcExternalInformation_type); - declarations.push_back(IFC4_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4_IfcExternalReference_type); - declarations.push_back(IFC4_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4_IfcExternalSpatialElement_type); - declarations.push_back(IFC4_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4_IfcFace_type); - declarations.push_back(IFC4_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4_IfcFaceBound_type); - declarations.push_back(IFC4_IfcFaceOuterBound_type); - declarations.push_back(IFC4_IfcFaceSurface_type); - declarations.push_back(IFC4_IfcFacetedBrep_type); - declarations.push_back(IFC4_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4_IfcFan_type); - declarations.push_back(IFC4_IfcFanType_type); - declarations.push_back(IFC4_IfcFanTypeEnum_type); - declarations.push_back(IFC4_IfcFastener_type); - declarations.push_back(IFC4_IfcFastenerType_type); - declarations.push_back(IFC4_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4_IfcFeatureElement_type); - declarations.push_back(IFC4_IfcFeatureElementAddition_type); - declarations.push_back(IFC4_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4_IfcFillAreaStyle_type); - declarations.push_back(IFC4_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4_IfcFillStyleSelect_type); - declarations.push_back(IFC4_IfcFilter_type); - declarations.push_back(IFC4_IfcFilterType_type); - declarations.push_back(IFC4_IfcFilterTypeEnum_type); - declarations.push_back(IFC4_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4_IfcFlowController_type); - declarations.push_back(IFC4_IfcFlowControllerType_type); - declarations.push_back(IFC4_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4_IfcFlowFitting_type); - declarations.push_back(IFC4_IfcFlowFittingType_type); - declarations.push_back(IFC4_IfcFlowInstrument_type); - declarations.push_back(IFC4_IfcFlowInstrumentType_type); - declarations.push_back(IFC4_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4_IfcFlowMeter_type); - declarations.push_back(IFC4_IfcFlowMeterType_type); - declarations.push_back(IFC4_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4_IfcFlowMovingDevice_type); - declarations.push_back(IFC4_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4_IfcFlowSegment_type); - declarations.push_back(IFC4_IfcFlowSegmentType_type); - declarations.push_back(IFC4_IfcFlowStorageDevice_type); - declarations.push_back(IFC4_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4_IfcFlowTerminal_type); - declarations.push_back(IFC4_IfcFlowTerminalType_type); - declarations.push_back(IFC4_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4_IfcFontStyle_type); - declarations.push_back(IFC4_IfcFontVariant_type); - declarations.push_back(IFC4_IfcFontWeight_type); - declarations.push_back(IFC4_IfcFooting_type); - declarations.push_back(IFC4_IfcFootingType_type); - declarations.push_back(IFC4_IfcFootingTypeEnum_type); - declarations.push_back(IFC4_IfcForceMeasure_type); - declarations.push_back(IFC4_IfcFrequencyMeasure_type); - declarations.push_back(IFC4_IfcFurnishingElement_type); - declarations.push_back(IFC4_IfcFurnishingElementType_type); - declarations.push_back(IFC4_IfcFurniture_type); - declarations.push_back(IFC4_IfcFurnitureType_type); - declarations.push_back(IFC4_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4_IfcGeographicElement_type); - declarations.push_back(IFC4_IfcGeographicElementType_type); - declarations.push_back(IFC4_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4_IfcGeometricCurveSet_type); - declarations.push_back(IFC4_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4_IfcGeometricSet_type); - declarations.push_back(IFC4_IfcGeometricSetSelect_type); - declarations.push_back(IFC4_IfcGloballyUniqueId_type); - declarations.push_back(IFC4_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4_IfcGrid_type); - declarations.push_back(IFC4_IfcGridAxis_type); - declarations.push_back(IFC4_IfcGridPlacement_type); - declarations.push_back(IFC4_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4_IfcGridTypeEnum_type); - declarations.push_back(IFC4_IfcGroup_type); - declarations.push_back(IFC4_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4_IfcHeatExchanger_type); - declarations.push_back(IFC4_IfcHeatExchangerType_type); - declarations.push_back(IFC4_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4_IfcHumidifier_type); - declarations.push_back(IFC4_IfcHumidifierType_type); - declarations.push_back(IFC4_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4_IfcIdentifier_type); - declarations.push_back(IFC4_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4_IfcImageTexture_type); - declarations.push_back(IFC4_IfcIndexedColourMap_type); - declarations.push_back(IFC4_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4_IfcIndexedTextureMap_type); - declarations.push_back(IFC4_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4_IfcInductanceMeasure_type); - declarations.push_back(IFC4_IfcInteger_type); - declarations.push_back(IFC4_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4_IfcInterceptor_type); - declarations.push_back(IFC4_IfcInterceptorType_type); - declarations.push_back(IFC4_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4_IfcIntersectionCurve_type); - declarations.push_back(IFC4_IfcInventory_type); - declarations.push_back(IFC4_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4_IfcIShapeProfileDef_type); - declarations.push_back(IFC4_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4_IfcJunctionBox_type); - declarations.push_back(IFC4_IfcJunctionBoxType_type); - declarations.push_back(IFC4_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4_IfcKnotType_type); - declarations.push_back(IFC4_IfcLabel_type); - declarations.push_back(IFC4_IfcLaborResource_type); - declarations.push_back(IFC4_IfcLaborResourceType_type); - declarations.push_back(IFC4_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4_IfcLagTime_type); - declarations.push_back(IFC4_IfcLamp_type); - declarations.push_back(IFC4_IfcLampType_type); - declarations.push_back(IFC4_IfcLampTypeEnum_type); - declarations.push_back(IFC4_IfcLanguageId_type); - declarations.push_back(IFC4_IfcLayeredItem_type); - declarations.push_back(IFC4_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4_IfcLengthMeasure_type); - declarations.push_back(IFC4_IfcLibraryInformation_type); - declarations.push_back(IFC4_IfcLibraryReference_type); - declarations.push_back(IFC4_IfcLibrarySelect_type); - declarations.push_back(IFC4_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4_IfcLightDistributionData_type); - declarations.push_back(IFC4_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4_IfcLightFixture_type); - declarations.push_back(IFC4_IfcLightFixtureType_type); - declarations.push_back(IFC4_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4_IfcLightSource_type); - declarations.push_back(IFC4_IfcLightSourceAmbient_type); - declarations.push_back(IFC4_IfcLightSourceDirectional_type); - declarations.push_back(IFC4_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4_IfcLightSourcePositional_type); - declarations.push_back(IFC4_IfcLightSourceSpot_type); - declarations.push_back(IFC4_IfcLine_type); - declarations.push_back(IFC4_IfcLinearForceMeasure_type); - declarations.push_back(IFC4_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4_IfcLineIndex_type); - declarations.push_back(IFC4_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4_IfcLocalPlacement_type); - declarations.push_back(IFC4_IfcLogical_type); - declarations.push_back(IFC4_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4_IfcLoop_type); - declarations.push_back(IFC4_IfcLShapeProfileDef_type); - declarations.push_back(IFC4_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4_IfcMapConversion_type); - declarations.push_back(IFC4_IfcMappedItem_type); - declarations.push_back(IFC4_IfcMassDensityMeasure_type); - declarations.push_back(IFC4_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4_IfcMassMeasure_type); - declarations.push_back(IFC4_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4_IfcMaterial_type); - declarations.push_back(IFC4_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4_IfcMaterialConstituent_type); - declarations.push_back(IFC4_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4_IfcMaterialDefinition_type); - declarations.push_back(IFC4_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4_IfcMaterialLayer_type); - declarations.push_back(IFC4_IfcMaterialLayerSet_type); - declarations.push_back(IFC4_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4_IfcMaterialList_type); - declarations.push_back(IFC4_IfcMaterialProfile_type); - declarations.push_back(IFC4_IfcMaterialProfileSet_type); - declarations.push_back(IFC4_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4_IfcMaterialProperties_type); - declarations.push_back(IFC4_IfcMaterialRelationship_type); - declarations.push_back(IFC4_IfcMaterialSelect_type); - declarations.push_back(IFC4_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4_IfcMeasureValue_type); - declarations.push_back(IFC4_IfcMeasureWithUnit_type); - declarations.push_back(IFC4_IfcMechanicalFastener_type); - declarations.push_back(IFC4_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4_IfcMedicalDevice_type); - declarations.push_back(IFC4_IfcMedicalDeviceType_type); - declarations.push_back(IFC4_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4_IfcMember_type); - declarations.push_back(IFC4_IfcMemberStandardCase_type); - declarations.push_back(IFC4_IfcMemberType_type); - declarations.push_back(IFC4_IfcMemberTypeEnum_type); - declarations.push_back(IFC4_IfcMetric_type); - declarations.push_back(IFC4_IfcMetricValueSelect_type); - declarations.push_back(IFC4_IfcMirroredProfileDef_type); - declarations.push_back(IFC4_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4_IfcMonetaryMeasure_type); - declarations.push_back(IFC4_IfcMonetaryUnit_type); - declarations.push_back(IFC4_IfcMonthInYearNumber_type); - declarations.push_back(IFC4_IfcMotorConnection_type); - declarations.push_back(IFC4_IfcMotorConnectionType_type); - declarations.push_back(IFC4_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4_IfcNamedUnit_type); - declarations.push_back(IFC4_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4_IfcNullStyle_type); - declarations.push_back(IFC4_IfcNumericMeasure_type); - declarations.push_back(IFC4_IfcObject_type); - declarations.push_back(IFC4_IfcObjectDefinition_type); - declarations.push_back(IFC4_IfcObjective_type); - declarations.push_back(IFC4_IfcObjectiveEnum_type); - declarations.push_back(IFC4_IfcObjectPlacement_type); - declarations.push_back(IFC4_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4_IfcObjectTypeEnum_type); - declarations.push_back(IFC4_IfcOccupant_type); - declarations.push_back(IFC4_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4_IfcOffsetCurve2D_type); - declarations.push_back(IFC4_IfcOffsetCurve3D_type); - declarations.push_back(IFC4_IfcOpeningElement_type); - declarations.push_back(IFC4_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4_IfcOpeningStandardCase_type); - declarations.push_back(IFC4_IfcOpenShell_type); - declarations.push_back(IFC4_IfcOrganization_type); - declarations.push_back(IFC4_IfcOrganizationRelationship_type); - declarations.push_back(IFC4_IfcOrientedEdge_type); - declarations.push_back(IFC4_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4_IfcOutlet_type); - declarations.push_back(IFC4_IfcOutletType_type); - declarations.push_back(IFC4_IfcOutletTypeEnum_type); - declarations.push_back(IFC4_IfcOwnerHistory_type); - declarations.push_back(IFC4_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4_IfcParameterValue_type); - declarations.push_back(IFC4_IfcPath_type); - declarations.push_back(IFC4_IfcPcurve_type); - declarations.push_back(IFC4_IfcPerformanceHistory_type); - declarations.push_back(IFC4_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4_IfcPermit_type); - declarations.push_back(IFC4_IfcPermitTypeEnum_type); - declarations.push_back(IFC4_IfcPerson_type); - declarations.push_back(IFC4_IfcPersonAndOrganization_type); - declarations.push_back(IFC4_IfcPHMeasure_type); - declarations.push_back(IFC4_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4_IfcPhysicalQuantity_type); - declarations.push_back(IFC4_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4_IfcPile_type); - declarations.push_back(IFC4_IfcPileConstructionEnum_type); - declarations.push_back(IFC4_IfcPileType_type); - declarations.push_back(IFC4_IfcPileTypeEnum_type); - declarations.push_back(IFC4_IfcPipeFitting_type); - declarations.push_back(IFC4_IfcPipeFittingType_type); - declarations.push_back(IFC4_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4_IfcPipeSegment_type); - declarations.push_back(IFC4_IfcPipeSegmentType_type); - declarations.push_back(IFC4_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4_IfcPixelTexture_type); - declarations.push_back(IFC4_IfcPlacement_type); - declarations.push_back(IFC4_IfcPlanarBox_type); - declarations.push_back(IFC4_IfcPlanarExtent_type); - declarations.push_back(IFC4_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4_IfcPlane_type); - declarations.push_back(IFC4_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4_IfcPlate_type); - declarations.push_back(IFC4_IfcPlateStandardCase_type); - declarations.push_back(IFC4_IfcPlateType_type); - declarations.push_back(IFC4_IfcPlateTypeEnum_type); - declarations.push_back(IFC4_IfcPoint_type); - declarations.push_back(IFC4_IfcPointOnCurve_type); - declarations.push_back(IFC4_IfcPointOnSurface_type); - declarations.push_back(IFC4_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4_IfcPolyline_type); - declarations.push_back(IFC4_IfcPolyLoop_type); - declarations.push_back(IFC4_IfcPort_type); - declarations.push_back(IFC4_IfcPositiveInteger_type); - declarations.push_back(IFC4_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4_IfcPostalAddress_type); - declarations.push_back(IFC4_IfcPowerMeasure_type); - declarations.push_back(IFC4_IfcPreDefinedColour_type); - declarations.push_back(IFC4_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4_IfcPreDefinedItem_type); - declarations.push_back(IFC4_IfcPreDefinedProperties_type); - declarations.push_back(IFC4_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4_IfcPresentableText_type); - declarations.push_back(IFC4_IfcPresentationItem_type); - declarations.push_back(IFC4_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4_IfcPresentationStyle_type); - declarations.push_back(IFC4_IfcPresentationStyleAssignment_type); - declarations.push_back(IFC4_IfcPresentationStyleSelect_type); - declarations.push_back(IFC4_IfcPressureMeasure_type); - declarations.push_back(IFC4_IfcProcedure_type); - declarations.push_back(IFC4_IfcProcedureType_type); - declarations.push_back(IFC4_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4_IfcProcess_type); - declarations.push_back(IFC4_IfcProcessSelect_type); - declarations.push_back(IFC4_IfcProduct_type); - declarations.push_back(IFC4_IfcProductDefinitionShape_type); - declarations.push_back(IFC4_IfcProductRepresentation_type); - declarations.push_back(IFC4_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4_IfcProductSelect_type); - declarations.push_back(IFC4_IfcProfileDef_type); - declarations.push_back(IFC4_IfcProfileProperties_type); - declarations.push_back(IFC4_IfcProfileTypeEnum_type); - declarations.push_back(IFC4_IfcProject_type); - declarations.push_back(IFC4_IfcProjectedCRS_type); - declarations.push_back(IFC4_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4_IfcProjectionElement_type); - declarations.push_back(IFC4_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4_IfcProjectLibrary_type); - declarations.push_back(IFC4_IfcProjectOrder_type); - declarations.push_back(IFC4_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4_IfcProperty_type); - declarations.push_back(IFC4_IfcPropertyAbstraction_type); - declarations.push_back(IFC4_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4_IfcPropertyDefinition_type); - declarations.push_back(IFC4_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4_IfcPropertyEnumeration_type); - declarations.push_back(IFC4_IfcPropertyListValue_type); - declarations.push_back(IFC4_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4_IfcPropertySet_type); - declarations.push_back(IFC4_IfcPropertySetDefinition_type); - declarations.push_back(IFC4_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4_IfcPropertySetTemplate_type); - declarations.push_back(IFC4_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4_IfcPropertySingleValue_type); - declarations.push_back(IFC4_IfcPropertyTableValue_type); - declarations.push_back(IFC4_IfcPropertyTemplate_type); - declarations.push_back(IFC4_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4_IfcProtectiveDevice_type); - declarations.push_back(IFC4_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4_IfcProxy_type); - declarations.push_back(IFC4_IfcPump_type); - declarations.push_back(IFC4_IfcPumpType_type); - declarations.push_back(IFC4_IfcPumpTypeEnum_type); - declarations.push_back(IFC4_IfcQuantityArea_type); - declarations.push_back(IFC4_IfcQuantityCount_type); - declarations.push_back(IFC4_IfcQuantityLength_type); - declarations.push_back(IFC4_IfcQuantitySet_type); - declarations.push_back(IFC4_IfcQuantityTime_type); - declarations.push_back(IFC4_IfcQuantityVolume_type); - declarations.push_back(IFC4_IfcQuantityWeight_type); - declarations.push_back(IFC4_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4_IfcRailing_type); - declarations.push_back(IFC4_IfcRailingType_type); - declarations.push_back(IFC4_IfcRailingTypeEnum_type); - declarations.push_back(IFC4_IfcRamp_type); - declarations.push_back(IFC4_IfcRampFlight_type); - declarations.push_back(IFC4_IfcRampFlightType_type); - declarations.push_back(IFC4_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4_IfcRampType_type); - declarations.push_back(IFC4_IfcRampTypeEnum_type); - declarations.push_back(IFC4_IfcRatioMeasure_type); - declarations.push_back(IFC4_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4_IfcReal_type); - declarations.push_back(IFC4_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4_IfcRectangleProfileDef_type); - declarations.push_back(IFC4_IfcRectangularPyramid_type); - declarations.push_back(IFC4_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4_IfcRecurrencePattern_type); - declarations.push_back(IFC4_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4_IfcReference_type); - declarations.push_back(IFC4_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4_IfcRegularTimeSeries_type); - declarations.push_back(IFC4_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4_IfcReinforcingBar_type); - declarations.push_back(IFC4_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4_IfcReinforcingBarType_type); - declarations.push_back(IFC4_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4_IfcReinforcingElement_type); - declarations.push_back(IFC4_IfcReinforcingElementType_type); - declarations.push_back(IFC4_IfcReinforcingMesh_type); - declarations.push_back(IFC4_IfcReinforcingMeshType_type); - declarations.push_back(IFC4_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4_IfcRelAggregates_type); - declarations.push_back(IFC4_IfcRelAssigns_type); - declarations.push_back(IFC4_IfcRelAssignsToActor_type); - declarations.push_back(IFC4_IfcRelAssignsToControl_type); - declarations.push_back(IFC4_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4_IfcRelAssignsToResource_type); - declarations.push_back(IFC4_IfcRelAssociates_type); - declarations.push_back(IFC4_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4_IfcRelationship_type); - declarations.push_back(IFC4_IfcRelConnects_type); - declarations.push_back(IFC4_IfcRelConnectsElements_type); - declarations.push_back(IFC4_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4_IfcRelConnectsPorts_type); - declarations.push_back(IFC4_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4_IfcRelCoversSpaces_type); - declarations.push_back(IFC4_IfcRelDeclares_type); - declarations.push_back(IFC4_IfcRelDecomposes_type); - declarations.push_back(IFC4_IfcRelDefines_type); - declarations.push_back(IFC4_IfcRelDefinesByObject_type); - declarations.push_back(IFC4_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4_IfcRelDefinesByType_type); - declarations.push_back(IFC4_IfcRelFillsElement_type); - declarations.push_back(IFC4_IfcRelFlowControlElements_type); - declarations.push_back(IFC4_IfcRelInterferesElements_type); - declarations.push_back(IFC4_IfcRelNests_type); - declarations.push_back(IFC4_IfcRelProjectsElement_type); - declarations.push_back(IFC4_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4_IfcRelSequence_type); - declarations.push_back(IFC4_IfcRelServicesBuildings_type); - declarations.push_back(IFC4_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4_IfcRelVoidsElement_type); - declarations.push_back(IFC4_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4_IfcRepresentation_type); - declarations.push_back(IFC4_IfcRepresentationContext_type); - declarations.push_back(IFC4_IfcRepresentationItem_type); - declarations.push_back(IFC4_IfcRepresentationMap_type); - declarations.push_back(IFC4_IfcResource_type); - declarations.push_back(IFC4_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4_IfcResourceObjectSelect_type); - declarations.push_back(IFC4_IfcResourceSelect_type); - declarations.push_back(IFC4_IfcResourceTime_type); - declarations.push_back(IFC4_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4_IfcRightCircularCone_type); - declarations.push_back(IFC4_IfcRightCircularCylinder_type); - declarations.push_back(IFC4_IfcRoleEnum_type); - declarations.push_back(IFC4_IfcRoof_type); - declarations.push_back(IFC4_IfcRoofType_type); - declarations.push_back(IFC4_IfcRoofTypeEnum_type); - declarations.push_back(IFC4_IfcRoot_type); - declarations.push_back(IFC4_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4_IfcSanitaryTerminal_type); - declarations.push_back(IFC4_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4_IfcSchedulingTime_type); - declarations.push_back(IFC4_IfcSeamCurve_type); - declarations.push_back(IFC4_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4_IfcSectionedSpine_type); - declarations.push_back(IFC4_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4_IfcSectionProperties_type); - declarations.push_back(IFC4_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4_IfcSectionTypeEnum_type); - declarations.push_back(IFC4_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4_IfcSensor_type); - declarations.push_back(IFC4_IfcSensorType_type); - declarations.push_back(IFC4_IfcSensorTypeEnum_type); - declarations.push_back(IFC4_IfcSequenceEnum_type); - declarations.push_back(IFC4_IfcShadingDevice_type); - declarations.push_back(IFC4_IfcShadingDeviceType_type); - declarations.push_back(IFC4_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4_IfcShapeAspect_type); - declarations.push_back(IFC4_IfcShapeModel_type); - declarations.push_back(IFC4_IfcShapeRepresentation_type); - declarations.push_back(IFC4_IfcShearModulusMeasure_type); - declarations.push_back(IFC4_IfcShell_type); - declarations.push_back(IFC4_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4_IfcSimpleProperty_type); - declarations.push_back(IFC4_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4_IfcSimpleValue_type); - declarations.push_back(IFC4_IfcSIPrefix_type); - declarations.push_back(IFC4_IfcSite_type); - declarations.push_back(IFC4_IfcSIUnit_type); - declarations.push_back(IFC4_IfcSIUnitName_type); - declarations.push_back(IFC4_IfcSizeSelect_type); - declarations.push_back(IFC4_IfcSlab_type); - declarations.push_back(IFC4_IfcSlabElementedCase_type); - declarations.push_back(IFC4_IfcSlabStandardCase_type); - declarations.push_back(IFC4_IfcSlabType_type); - declarations.push_back(IFC4_IfcSlabTypeEnum_type); - declarations.push_back(IFC4_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4_IfcSolarDevice_type); - declarations.push_back(IFC4_IfcSolarDeviceType_type); - declarations.push_back(IFC4_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4_IfcSolidModel_type); - declarations.push_back(IFC4_IfcSolidOrShell_type); - declarations.push_back(IFC4_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4_IfcSpace_type); - declarations.push_back(IFC4_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4_IfcSpaceHeater_type); - declarations.push_back(IFC4_IfcSpaceHeaterType_type); - declarations.push_back(IFC4_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4_IfcSpaceType_type); - declarations.push_back(IFC4_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4_IfcSpatialElement_type); - declarations.push_back(IFC4_IfcSpatialElementType_type); - declarations.push_back(IFC4_IfcSpatialStructureElement_type); - declarations.push_back(IFC4_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4_IfcSpatialZone_type); - declarations.push_back(IFC4_IfcSpatialZoneType_type); - declarations.push_back(IFC4_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4_IfcSpecularExponent_type); - declarations.push_back(IFC4_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4_IfcSpecularRoughness_type); - declarations.push_back(IFC4_IfcSphere_type); - declarations.push_back(IFC4_IfcSphericalSurface_type); - declarations.push_back(IFC4_IfcStackTerminal_type); - declarations.push_back(IFC4_IfcStackTerminalType_type); - declarations.push_back(IFC4_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4_IfcStair_type); - declarations.push_back(IFC4_IfcStairFlight_type); - declarations.push_back(IFC4_IfcStairFlightType_type); - declarations.push_back(IFC4_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4_IfcStairType_type); - declarations.push_back(IFC4_IfcStairTypeEnum_type); - declarations.push_back(IFC4_IfcStateEnum_type); - declarations.push_back(IFC4_IfcStructuralAction_type); - declarations.push_back(IFC4_IfcStructuralActivity_type); - declarations.push_back(IFC4_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4_IfcStructuralConnection_type); - declarations.push_back(IFC4_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4_IfcStructuralCurveAction_type); - declarations.push_back(IFC4_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4_IfcStructuralCurveMember_type); - declarations.push_back(IFC4_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4_IfcStructuralItem_type); - declarations.push_back(IFC4_IfcStructuralLinearAction_type); - declarations.push_back(IFC4_IfcStructuralLoad_type); - declarations.push_back(IFC4_IfcStructuralLoadCase_type); - declarations.push_back(IFC4_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4_IfcStructuralMember_type); - declarations.push_back(IFC4_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4_IfcStructuralPointAction_type); - declarations.push_back(IFC4_IfcStructuralPointConnection_type); - declarations.push_back(IFC4_IfcStructuralPointReaction_type); - declarations.push_back(IFC4_IfcStructuralReaction_type); - declarations.push_back(IFC4_IfcStructuralResultGroup_type); - declarations.push_back(IFC4_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4_IfcStyleAssignmentSelect_type); - declarations.push_back(IFC4_IfcStyledItem_type); - declarations.push_back(IFC4_IfcStyledRepresentation_type); - declarations.push_back(IFC4_IfcStyleModel_type); - declarations.push_back(IFC4_IfcSubContractResource_type); - declarations.push_back(IFC4_IfcSubContractResourceType_type); - declarations.push_back(IFC4_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4_IfcSubedge_type); - declarations.push_back(IFC4_IfcSurface_type); - declarations.push_back(IFC4_IfcSurfaceCurve_type); - declarations.push_back(IFC4_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4_IfcSurfaceFeature_type); - declarations.push_back(IFC4_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4_IfcSurfaceSide_type); - declarations.push_back(IFC4_IfcSurfaceStyle_type); - declarations.push_back(IFC4_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4_IfcSurfaceTexture_type); - declarations.push_back(IFC4_IfcSweptAreaSolid_type); - declarations.push_back(IFC4_IfcSweptDiskSolid_type); - declarations.push_back(IFC4_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4_IfcSweptSurface_type); - declarations.push_back(IFC4_IfcSwitchingDevice_type); - declarations.push_back(IFC4_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4_IfcSystem_type); - declarations.push_back(IFC4_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4_IfcTable_type); - declarations.push_back(IFC4_IfcTableColumn_type); - declarations.push_back(IFC4_IfcTableRow_type); - declarations.push_back(IFC4_IfcTank_type); - declarations.push_back(IFC4_IfcTankType_type); - declarations.push_back(IFC4_IfcTankTypeEnum_type); - declarations.push_back(IFC4_IfcTask_type); - declarations.push_back(IFC4_IfcTaskDurationEnum_type); - declarations.push_back(IFC4_IfcTaskTime_type); - declarations.push_back(IFC4_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4_IfcTaskType_type); - declarations.push_back(IFC4_IfcTaskTypeEnum_type); - declarations.push_back(IFC4_IfcTelecomAddress_type); - declarations.push_back(IFC4_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4_IfcTendon_type); - declarations.push_back(IFC4_IfcTendonAnchor_type); - declarations.push_back(IFC4_IfcTendonAnchorType_type); - declarations.push_back(IFC4_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4_IfcTendonType_type); - declarations.push_back(IFC4_IfcTendonTypeEnum_type); - declarations.push_back(IFC4_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4_IfcTessellatedItem_type); - declarations.push_back(IFC4_IfcText_type); - declarations.push_back(IFC4_IfcTextAlignment_type); - declarations.push_back(IFC4_IfcTextDecoration_type); - declarations.push_back(IFC4_IfcTextFontName_type); - declarations.push_back(IFC4_IfcTextFontSelect_type); - declarations.push_back(IFC4_IfcTextLiteral_type); - declarations.push_back(IFC4_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4_IfcTextPath_type); - declarations.push_back(IFC4_IfcTextStyle_type); - declarations.push_back(IFC4_IfcTextStyleFontModel_type); - declarations.push_back(IFC4_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4_IfcTextStyleTextModel_type); - declarations.push_back(IFC4_IfcTextTransformation_type); - declarations.push_back(IFC4_IfcTextureCoordinate_type); - declarations.push_back(IFC4_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4_IfcTextureMap_type); - declarations.push_back(IFC4_IfcTextureVertex_type); - declarations.push_back(IFC4_IfcTextureVertexList_type); - declarations.push_back(IFC4_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4_IfcTime_type); - declarations.push_back(IFC4_IfcTimeMeasure_type); - declarations.push_back(IFC4_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4_IfcTimePeriod_type); - declarations.push_back(IFC4_IfcTimeSeries_type); - declarations.push_back(IFC4_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4_IfcTimeSeriesValue_type); - declarations.push_back(IFC4_IfcTimeStamp_type); - declarations.push_back(IFC4_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4_IfcTopologyRepresentation_type); - declarations.push_back(IFC4_IfcToroidalSurface_type); - declarations.push_back(IFC4_IfcTorqueMeasure_type); - declarations.push_back(IFC4_IfcTransformer_type); - declarations.push_back(IFC4_IfcTransformerType_type); - declarations.push_back(IFC4_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4_IfcTransitionCode_type); - declarations.push_back(IFC4_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4_IfcTransportElement_type); - declarations.push_back(IFC4_IfcTransportElementType_type); - declarations.push_back(IFC4_IfcTransportElementTypeEnum_type); - declarations.push_back(IFC4_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4_IfcTrimmedCurve_type); - declarations.push_back(IFC4_IfcTrimmingPreference_type); - declarations.push_back(IFC4_IfcTrimmingSelect_type); - declarations.push_back(IFC4_IfcTShapeProfileDef_type); - declarations.push_back(IFC4_IfcTubeBundle_type); - declarations.push_back(IFC4_IfcTubeBundleType_type); - declarations.push_back(IFC4_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4_IfcTypeObject_type); - declarations.push_back(IFC4_IfcTypeProcess_type); - declarations.push_back(IFC4_IfcTypeProduct_type); - declarations.push_back(IFC4_IfcTypeResource_type); - declarations.push_back(IFC4_IfcUnit_type); - declarations.push_back(IFC4_IfcUnitaryControlElement_type); - declarations.push_back(IFC4_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4_IfcUnitaryEquipment_type); - declarations.push_back(IFC4_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4_IfcUnitAssignment_type); - declarations.push_back(IFC4_IfcUnitEnum_type); - declarations.push_back(IFC4_IfcURIReference_type); - declarations.push_back(IFC4_IfcUShapeProfileDef_type); - declarations.push_back(IFC4_IfcValue_type); - declarations.push_back(IFC4_IfcValve_type); - declarations.push_back(IFC4_IfcValveType_type); - declarations.push_back(IFC4_IfcValveTypeEnum_type); - declarations.push_back(IFC4_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4_IfcVector_type); - declarations.push_back(IFC4_IfcVectorOrDirection_type); - declarations.push_back(IFC4_IfcVertex_type); - declarations.push_back(IFC4_IfcVertexLoop_type); - declarations.push_back(IFC4_IfcVertexPoint_type); - declarations.push_back(IFC4_IfcVibrationIsolator_type); - declarations.push_back(IFC4_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4_IfcVirtualElement_type); - declarations.push_back(IFC4_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4_IfcVoidingFeature_type); - declarations.push_back(IFC4_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4_IfcVolumeMeasure_type); - declarations.push_back(IFC4_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4_IfcWall_type); - declarations.push_back(IFC4_IfcWallElementedCase_type); - declarations.push_back(IFC4_IfcWallStandardCase_type); - declarations.push_back(IFC4_IfcWallType_type); - declarations.push_back(IFC4_IfcWallTypeEnum_type); - declarations.push_back(IFC4_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4_IfcWasteTerminal_type); - declarations.push_back(IFC4_IfcWasteTerminalType_type); - declarations.push_back(IFC4_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4_IfcWindow_type); - declarations.push_back(IFC4_IfcWindowLiningProperties_type); - declarations.push_back(IFC4_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4_IfcWindowPanelProperties_type); - declarations.push_back(IFC4_IfcWindowStandardCase_type); - declarations.push_back(IFC4_IfcWindowStyle_type); - declarations.push_back(IFC4_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4_IfcWindowType_type); - declarations.push_back(IFC4_IfcWindowTypeEnum_type); - declarations.push_back(IFC4_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4_IfcWorkCalendar_type); - declarations.push_back(IFC4_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4_IfcWorkControl_type); - declarations.push_back(IFC4_IfcWorkPlan_type); - declarations.push_back(IFC4_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4_IfcWorkSchedule_type); - declarations.push_back(IFC4_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4_IfcWorkTime_type); - declarations.push_back(IFC4_IfcZone_type); - declarations.push_back(IFC4_IfcZShapeProfileDef_type); - return new schema_definition("IFC4", declarations, new IFC4_instance_factory()); + std::vector declarations= { + IFC4_IfcAbsorbedDoseMeasure_type, + IFC4_IfcAccelerationMeasure_type, + IFC4_IfcActionRequest_type, + IFC4_IfcActionRequestTypeEnum_type, + IFC4_IfcActionSourceTypeEnum_type, + IFC4_IfcActionTypeEnum_type, + IFC4_IfcActor_type, + IFC4_IfcActorRole_type, + IFC4_IfcActorSelect_type, + IFC4_IfcActuator_type, + IFC4_IfcActuatorType_type, + IFC4_IfcActuatorTypeEnum_type, + IFC4_IfcAddress_type, + IFC4_IfcAddressTypeEnum_type, + IFC4_IfcAdvancedBrep_type, + IFC4_IfcAdvancedBrepWithVoids_type, + IFC4_IfcAdvancedFace_type, + IFC4_IfcAirTerminal_type, + IFC4_IfcAirTerminalBox_type, + IFC4_IfcAirTerminalBoxType_type, + IFC4_IfcAirTerminalBoxTypeEnum_type, + IFC4_IfcAirTerminalType_type, + IFC4_IfcAirTerminalTypeEnum_type, + IFC4_IfcAirToAirHeatRecovery_type, + IFC4_IfcAirToAirHeatRecoveryType_type, + IFC4_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4_IfcAlarm_type, + IFC4_IfcAlarmType_type, + IFC4_IfcAlarmTypeEnum_type, + IFC4_IfcAmountOfSubstanceMeasure_type, + IFC4_IfcAnalysisModelTypeEnum_type, + IFC4_IfcAnalysisTheoryTypeEnum_type, + IFC4_IfcAngularVelocityMeasure_type, + IFC4_IfcAnnotation_type, + IFC4_IfcAnnotationFillArea_type, + IFC4_IfcApplication_type, + IFC4_IfcAppliedValue_type, + IFC4_IfcAppliedValueSelect_type, + IFC4_IfcApproval_type, + IFC4_IfcApprovalRelationship_type, + IFC4_IfcArbitraryClosedProfileDef_type, + IFC4_IfcArbitraryOpenProfileDef_type, + IFC4_IfcArbitraryProfileDefWithVoids_type, + IFC4_IfcArcIndex_type, + IFC4_IfcAreaDensityMeasure_type, + IFC4_IfcAreaMeasure_type, + IFC4_IfcArithmeticOperatorEnum_type, + IFC4_IfcAssemblyPlaceEnum_type, + IFC4_IfcAsset_type, + IFC4_IfcAsymmetricIShapeProfileDef_type, + IFC4_IfcAudioVisualAppliance_type, + IFC4_IfcAudioVisualApplianceType_type, + IFC4_IfcAudioVisualApplianceTypeEnum_type, + IFC4_IfcAxis1Placement_type, + IFC4_IfcAxis2Placement_type, + IFC4_IfcAxis2Placement2D_type, + IFC4_IfcAxis2Placement3D_type, + IFC4_IfcBeam_type, + IFC4_IfcBeamStandardCase_type, + IFC4_IfcBeamType_type, + IFC4_IfcBeamTypeEnum_type, + IFC4_IfcBenchmarkEnum_type, + IFC4_IfcBendingParameterSelect_type, + IFC4_IfcBinary_type, + IFC4_IfcBlobTexture_type, + IFC4_IfcBlock_type, + IFC4_IfcBoiler_type, + IFC4_IfcBoilerType_type, + IFC4_IfcBoilerTypeEnum_type, + IFC4_IfcBoolean_type, + IFC4_IfcBooleanClippingResult_type, + IFC4_IfcBooleanOperand_type, + IFC4_IfcBooleanOperator_type, + IFC4_IfcBooleanResult_type, + IFC4_IfcBoundaryCondition_type, + IFC4_IfcBoundaryCurve_type, + IFC4_IfcBoundaryEdgeCondition_type, + IFC4_IfcBoundaryFaceCondition_type, + IFC4_IfcBoundaryNodeCondition_type, + IFC4_IfcBoundaryNodeConditionWarping_type, + IFC4_IfcBoundedCurve_type, + IFC4_IfcBoundedSurface_type, + IFC4_IfcBoundingBox_type, + IFC4_IfcBoxAlignment_type, + IFC4_IfcBoxedHalfSpace_type, + IFC4_IfcBSplineCurve_type, + IFC4_IfcBSplineCurveForm_type, + IFC4_IfcBSplineCurveWithKnots_type, + IFC4_IfcBSplineSurface_type, + IFC4_IfcBSplineSurfaceForm_type, + IFC4_IfcBSplineSurfaceWithKnots_type, + IFC4_IfcBuilding_type, + IFC4_IfcBuildingElement_type, + IFC4_IfcBuildingElementPart_type, + IFC4_IfcBuildingElementPartType_type, + IFC4_IfcBuildingElementPartTypeEnum_type, + IFC4_IfcBuildingElementProxy_type, + IFC4_IfcBuildingElementProxyType_type, + IFC4_IfcBuildingElementProxyTypeEnum_type, + IFC4_IfcBuildingElementType_type, + IFC4_IfcBuildingStorey_type, + IFC4_IfcBuildingSystem_type, + IFC4_IfcBuildingSystemTypeEnum_type, + IFC4_IfcBurner_type, + IFC4_IfcBurnerType_type, + IFC4_IfcBurnerTypeEnum_type, + IFC4_IfcCableCarrierFitting_type, + IFC4_IfcCableCarrierFittingType_type, + IFC4_IfcCableCarrierFittingTypeEnum_type, + IFC4_IfcCableCarrierSegment_type, + IFC4_IfcCableCarrierSegmentType_type, + IFC4_IfcCableCarrierSegmentTypeEnum_type, + IFC4_IfcCableFitting_type, + IFC4_IfcCableFittingType_type, + IFC4_IfcCableFittingTypeEnum_type, + IFC4_IfcCableSegment_type, + IFC4_IfcCableSegmentType_type, + IFC4_IfcCableSegmentTypeEnum_type, + IFC4_IfcCardinalPointReference_type, + IFC4_IfcCartesianPoint_type, + IFC4_IfcCartesianPointList_type, + IFC4_IfcCartesianPointList2D_type, + IFC4_IfcCartesianPointList3D_type, + IFC4_IfcCartesianTransformationOperator_type, + IFC4_IfcCartesianTransformationOperator2D_type, + IFC4_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4_IfcCartesianTransformationOperator3D_type, + IFC4_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4_IfcCenterLineProfileDef_type, + IFC4_IfcChangeActionEnum_type, + IFC4_IfcChiller_type, + IFC4_IfcChillerType_type, + IFC4_IfcChillerTypeEnum_type, + IFC4_IfcChimney_type, + IFC4_IfcChimneyType_type, + IFC4_IfcChimneyTypeEnum_type, + IFC4_IfcCircle_type, + IFC4_IfcCircleHollowProfileDef_type, + IFC4_IfcCircleProfileDef_type, + IFC4_IfcCivilElement_type, + IFC4_IfcCivilElementType_type, + IFC4_IfcClassification_type, + IFC4_IfcClassificationReference_type, + IFC4_IfcClassificationReferenceSelect_type, + IFC4_IfcClassificationSelect_type, + IFC4_IfcClosedShell_type, + IFC4_IfcCoil_type, + IFC4_IfcCoilType_type, + IFC4_IfcCoilTypeEnum_type, + IFC4_IfcColour_type, + IFC4_IfcColourOrFactor_type, + IFC4_IfcColourRgb_type, + IFC4_IfcColourRgbList_type, + IFC4_IfcColourSpecification_type, + IFC4_IfcColumn_type, + IFC4_IfcColumnStandardCase_type, + IFC4_IfcColumnType_type, + IFC4_IfcColumnTypeEnum_type, + IFC4_IfcCommunicationsAppliance_type, + IFC4_IfcCommunicationsApplianceType_type, + IFC4_IfcCommunicationsApplianceTypeEnum_type, + IFC4_IfcComplexNumber_type, + IFC4_IfcComplexProperty_type, + IFC4_IfcComplexPropertyTemplate_type, + IFC4_IfcComplexPropertyTemplateTypeEnum_type, + IFC4_IfcCompositeCurve_type, + IFC4_IfcCompositeCurveOnSurface_type, + IFC4_IfcCompositeCurveSegment_type, + IFC4_IfcCompositeProfileDef_type, + IFC4_IfcCompoundPlaneAngleMeasure_type, + IFC4_IfcCompressor_type, + IFC4_IfcCompressorType_type, + IFC4_IfcCompressorTypeEnum_type, + IFC4_IfcCondenser_type, + IFC4_IfcCondenserType_type, + IFC4_IfcCondenserTypeEnum_type, + IFC4_IfcConic_type, + IFC4_IfcConnectedFaceSet_type, + IFC4_IfcConnectionCurveGeometry_type, + IFC4_IfcConnectionGeometry_type, + IFC4_IfcConnectionPointEccentricity_type, + IFC4_IfcConnectionPointGeometry_type, + IFC4_IfcConnectionSurfaceGeometry_type, + IFC4_IfcConnectionTypeEnum_type, + IFC4_IfcConnectionVolumeGeometry_type, + IFC4_IfcConstraint_type, + IFC4_IfcConstraintEnum_type, + IFC4_IfcConstructionEquipmentResource_type, + IFC4_IfcConstructionEquipmentResourceType_type, + IFC4_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4_IfcConstructionMaterialResource_type, + IFC4_IfcConstructionMaterialResourceType_type, + IFC4_IfcConstructionMaterialResourceTypeEnum_type, + IFC4_IfcConstructionProductResource_type, + IFC4_IfcConstructionProductResourceType_type, + IFC4_IfcConstructionProductResourceTypeEnum_type, + IFC4_IfcConstructionResource_type, + IFC4_IfcConstructionResourceType_type, + IFC4_IfcContext_type, + IFC4_IfcContextDependentMeasure_type, + IFC4_IfcContextDependentUnit_type, + IFC4_IfcControl_type, + IFC4_IfcController_type, + IFC4_IfcControllerType_type, + IFC4_IfcControllerTypeEnum_type, + IFC4_IfcConversionBasedUnit_type, + IFC4_IfcConversionBasedUnitWithOffset_type, + IFC4_IfcCooledBeam_type, + IFC4_IfcCooledBeamType_type, + IFC4_IfcCooledBeamTypeEnum_type, + IFC4_IfcCoolingTower_type, + IFC4_IfcCoolingTowerType_type, + IFC4_IfcCoolingTowerTypeEnum_type, + IFC4_IfcCoordinateOperation_type, + IFC4_IfcCoordinateReferenceSystem_type, + IFC4_IfcCoordinateReferenceSystemSelect_type, + IFC4_IfcCostItem_type, + IFC4_IfcCostItemTypeEnum_type, + IFC4_IfcCostSchedule_type, + IFC4_IfcCostScheduleTypeEnum_type, + IFC4_IfcCostValue_type, + IFC4_IfcCountMeasure_type, + IFC4_IfcCovering_type, + IFC4_IfcCoveringType_type, + IFC4_IfcCoveringTypeEnum_type, + IFC4_IfcCrewResource_type, + IFC4_IfcCrewResourceType_type, + IFC4_IfcCrewResourceTypeEnum_type, + IFC4_IfcCsgPrimitive3D_type, + IFC4_IfcCsgSelect_type, + IFC4_IfcCsgSolid_type, + IFC4_IfcCShapeProfileDef_type, + IFC4_IfcCurrencyRelationship_type, + IFC4_IfcCurtainWall_type, + IFC4_IfcCurtainWallType_type, + IFC4_IfcCurtainWallTypeEnum_type, + IFC4_IfcCurvatureMeasure_type, + IFC4_IfcCurve_type, + IFC4_IfcCurveBoundedPlane_type, + IFC4_IfcCurveBoundedSurface_type, + IFC4_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4_IfcCurveInterpolationEnum_type, + IFC4_IfcCurveOnSurface_type, + IFC4_IfcCurveOrEdgeCurve_type, + IFC4_IfcCurveStyle_type, + IFC4_IfcCurveStyleFont_type, + IFC4_IfcCurveStyleFontAndScaling_type, + IFC4_IfcCurveStyleFontPattern_type, + IFC4_IfcCurveStyleFontSelect_type, + IFC4_IfcCylindricalSurface_type, + IFC4_IfcDamper_type, + IFC4_IfcDamperType_type, + IFC4_IfcDamperTypeEnum_type, + IFC4_IfcDataOriginEnum_type, + IFC4_IfcDate_type, + IFC4_IfcDateTime_type, + IFC4_IfcDayInMonthNumber_type, + IFC4_IfcDayInWeekNumber_type, + IFC4_IfcDefinitionSelect_type, + IFC4_IfcDerivedMeasureValue_type, + IFC4_IfcDerivedProfileDef_type, + IFC4_IfcDerivedUnit_type, + IFC4_IfcDerivedUnitElement_type, + IFC4_IfcDerivedUnitEnum_type, + IFC4_IfcDescriptiveMeasure_type, + IFC4_IfcDimensionalExponents_type, + IFC4_IfcDimensionCount_type, + IFC4_IfcDirection_type, + IFC4_IfcDirectionSenseEnum_type, + IFC4_IfcDiscreteAccessory_type, + IFC4_IfcDiscreteAccessoryType_type, + IFC4_IfcDiscreteAccessoryTypeEnum_type, + IFC4_IfcDistributionChamberElement_type, + IFC4_IfcDistributionChamberElementType_type, + IFC4_IfcDistributionChamberElementTypeEnum_type, + IFC4_IfcDistributionCircuit_type, + IFC4_IfcDistributionControlElement_type, + IFC4_IfcDistributionControlElementType_type, + IFC4_IfcDistributionElement_type, + IFC4_IfcDistributionElementType_type, + IFC4_IfcDistributionFlowElement_type, + IFC4_IfcDistributionFlowElementType_type, + IFC4_IfcDistributionPort_type, + IFC4_IfcDistributionPortTypeEnum_type, + IFC4_IfcDistributionSystem_type, + IFC4_IfcDistributionSystemEnum_type, + IFC4_IfcDocumentConfidentialityEnum_type, + IFC4_IfcDocumentInformation_type, + IFC4_IfcDocumentInformationRelationship_type, + IFC4_IfcDocumentReference_type, + IFC4_IfcDocumentSelect_type, + IFC4_IfcDocumentStatusEnum_type, + IFC4_IfcDoor_type, + IFC4_IfcDoorLiningProperties_type, + IFC4_IfcDoorPanelOperationEnum_type, + IFC4_IfcDoorPanelPositionEnum_type, + IFC4_IfcDoorPanelProperties_type, + IFC4_IfcDoorStandardCase_type, + IFC4_IfcDoorStyle_type, + IFC4_IfcDoorStyleConstructionEnum_type, + IFC4_IfcDoorStyleOperationEnum_type, + IFC4_IfcDoorType_type, + IFC4_IfcDoorTypeEnum_type, + IFC4_IfcDoorTypeOperationEnum_type, + IFC4_IfcDoseEquivalentMeasure_type, + IFC4_IfcDraughtingPreDefinedColour_type, + IFC4_IfcDraughtingPreDefinedCurveFont_type, + IFC4_IfcDuctFitting_type, + IFC4_IfcDuctFittingType_type, + IFC4_IfcDuctFittingTypeEnum_type, + IFC4_IfcDuctSegment_type, + IFC4_IfcDuctSegmentType_type, + IFC4_IfcDuctSegmentTypeEnum_type, + IFC4_IfcDuctSilencer_type, + IFC4_IfcDuctSilencerType_type, + IFC4_IfcDuctSilencerTypeEnum_type, + IFC4_IfcDuration_type, + IFC4_IfcDynamicViscosityMeasure_type, + IFC4_IfcEdge_type, + IFC4_IfcEdgeCurve_type, + IFC4_IfcEdgeLoop_type, + IFC4_IfcElectricAppliance_type, + IFC4_IfcElectricApplianceType_type, + IFC4_IfcElectricApplianceTypeEnum_type, + IFC4_IfcElectricCapacitanceMeasure_type, + IFC4_IfcElectricChargeMeasure_type, + IFC4_IfcElectricConductanceMeasure_type, + IFC4_IfcElectricCurrentMeasure_type, + IFC4_IfcElectricDistributionBoard_type, + IFC4_IfcElectricDistributionBoardType_type, + IFC4_IfcElectricDistributionBoardTypeEnum_type, + IFC4_IfcElectricFlowStorageDevice_type, + IFC4_IfcElectricFlowStorageDeviceType_type, + IFC4_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4_IfcElectricGenerator_type, + IFC4_IfcElectricGeneratorType_type, + IFC4_IfcElectricGeneratorTypeEnum_type, + IFC4_IfcElectricMotor_type, + IFC4_IfcElectricMotorType_type, + IFC4_IfcElectricMotorTypeEnum_type, + IFC4_IfcElectricResistanceMeasure_type, + IFC4_IfcElectricTimeControl_type, + IFC4_IfcElectricTimeControlType_type, + IFC4_IfcElectricTimeControlTypeEnum_type, + IFC4_IfcElectricVoltageMeasure_type, + IFC4_IfcElement_type, + IFC4_IfcElementarySurface_type, + IFC4_IfcElementAssembly_type, + IFC4_IfcElementAssemblyType_type, + IFC4_IfcElementAssemblyTypeEnum_type, + IFC4_IfcElementComponent_type, + IFC4_IfcElementComponentType_type, + IFC4_IfcElementCompositionEnum_type, + IFC4_IfcElementQuantity_type, + IFC4_IfcElementType_type, + IFC4_IfcEllipse_type, + IFC4_IfcEllipseProfileDef_type, + IFC4_IfcEnergyConversionDevice_type, + IFC4_IfcEnergyConversionDeviceType_type, + IFC4_IfcEnergyMeasure_type, + IFC4_IfcEngine_type, + IFC4_IfcEngineType_type, + IFC4_IfcEngineTypeEnum_type, + IFC4_IfcEvaporativeCooler_type, + IFC4_IfcEvaporativeCoolerType_type, + IFC4_IfcEvaporativeCoolerTypeEnum_type, + IFC4_IfcEvaporator_type, + IFC4_IfcEvaporatorType_type, + IFC4_IfcEvaporatorTypeEnum_type, + IFC4_IfcEvent_type, + IFC4_IfcEventTime_type, + IFC4_IfcEventTriggerTypeEnum_type, + IFC4_IfcEventType_type, + IFC4_IfcEventTypeEnum_type, + IFC4_IfcExtendedProperties_type, + IFC4_IfcExternalInformation_type, + IFC4_IfcExternallyDefinedHatchStyle_type, + IFC4_IfcExternallyDefinedSurfaceStyle_type, + IFC4_IfcExternallyDefinedTextFont_type, + IFC4_IfcExternalReference_type, + IFC4_IfcExternalReferenceRelationship_type, + IFC4_IfcExternalSpatialElement_type, + IFC4_IfcExternalSpatialElementTypeEnum_type, + IFC4_IfcExternalSpatialStructureElement_type, + IFC4_IfcExtrudedAreaSolid_type, + IFC4_IfcExtrudedAreaSolidTapered_type, + IFC4_IfcFace_type, + IFC4_IfcFaceBasedSurfaceModel_type, + IFC4_IfcFaceBound_type, + IFC4_IfcFaceOuterBound_type, + IFC4_IfcFaceSurface_type, + IFC4_IfcFacetedBrep_type, + IFC4_IfcFacetedBrepWithVoids_type, + IFC4_IfcFailureConnectionCondition_type, + IFC4_IfcFan_type, + IFC4_IfcFanType_type, + IFC4_IfcFanTypeEnum_type, + IFC4_IfcFastener_type, + IFC4_IfcFastenerType_type, + IFC4_IfcFastenerTypeEnum_type, + IFC4_IfcFeatureElement_type, + IFC4_IfcFeatureElementAddition_type, + IFC4_IfcFeatureElementSubtraction_type, + IFC4_IfcFillAreaStyle_type, + IFC4_IfcFillAreaStyleHatching_type, + IFC4_IfcFillAreaStyleTiles_type, + IFC4_IfcFillStyleSelect_type, + IFC4_IfcFilter_type, + IFC4_IfcFilterType_type, + IFC4_IfcFilterTypeEnum_type, + IFC4_IfcFireSuppressionTerminal_type, + IFC4_IfcFireSuppressionTerminalType_type, + IFC4_IfcFireSuppressionTerminalTypeEnum_type, + IFC4_IfcFixedReferenceSweptAreaSolid_type, + IFC4_IfcFlowController_type, + IFC4_IfcFlowControllerType_type, + IFC4_IfcFlowDirectionEnum_type, + IFC4_IfcFlowFitting_type, + IFC4_IfcFlowFittingType_type, + IFC4_IfcFlowInstrument_type, + IFC4_IfcFlowInstrumentType_type, + IFC4_IfcFlowInstrumentTypeEnum_type, + IFC4_IfcFlowMeter_type, + IFC4_IfcFlowMeterType_type, + IFC4_IfcFlowMeterTypeEnum_type, + IFC4_IfcFlowMovingDevice_type, + IFC4_IfcFlowMovingDeviceType_type, + IFC4_IfcFlowSegment_type, + IFC4_IfcFlowSegmentType_type, + IFC4_IfcFlowStorageDevice_type, + IFC4_IfcFlowStorageDeviceType_type, + IFC4_IfcFlowTerminal_type, + IFC4_IfcFlowTerminalType_type, + IFC4_IfcFlowTreatmentDevice_type, + IFC4_IfcFlowTreatmentDeviceType_type, + IFC4_IfcFontStyle_type, + IFC4_IfcFontVariant_type, + IFC4_IfcFontWeight_type, + IFC4_IfcFooting_type, + IFC4_IfcFootingType_type, + IFC4_IfcFootingTypeEnum_type, + IFC4_IfcForceMeasure_type, + IFC4_IfcFrequencyMeasure_type, + IFC4_IfcFurnishingElement_type, + IFC4_IfcFurnishingElementType_type, + IFC4_IfcFurniture_type, + IFC4_IfcFurnitureType_type, + IFC4_IfcFurnitureTypeEnum_type, + IFC4_IfcGeographicElement_type, + IFC4_IfcGeographicElementType_type, + IFC4_IfcGeographicElementTypeEnum_type, + IFC4_IfcGeometricCurveSet_type, + IFC4_IfcGeometricProjectionEnum_type, + IFC4_IfcGeometricRepresentationContext_type, + IFC4_IfcGeometricRepresentationItem_type, + IFC4_IfcGeometricRepresentationSubContext_type, + IFC4_IfcGeometricSet_type, + IFC4_IfcGeometricSetSelect_type, + IFC4_IfcGloballyUniqueId_type, + IFC4_IfcGlobalOrLocalEnum_type, + IFC4_IfcGrid_type, + IFC4_IfcGridAxis_type, + IFC4_IfcGridPlacement_type, + IFC4_IfcGridPlacementDirectionSelect_type, + IFC4_IfcGridTypeEnum_type, + IFC4_IfcGroup_type, + IFC4_IfcHalfSpaceSolid_type, + IFC4_IfcHatchLineDistanceSelect_type, + IFC4_IfcHeatExchanger_type, + IFC4_IfcHeatExchangerType_type, + IFC4_IfcHeatExchangerTypeEnum_type, + IFC4_IfcHeatFluxDensityMeasure_type, + IFC4_IfcHeatingValueMeasure_type, + IFC4_IfcHumidifier_type, + IFC4_IfcHumidifierType_type, + IFC4_IfcHumidifierTypeEnum_type, + IFC4_IfcIdentifier_type, + IFC4_IfcIlluminanceMeasure_type, + IFC4_IfcImageTexture_type, + IFC4_IfcIndexedColourMap_type, + IFC4_IfcIndexedPolyCurve_type, + IFC4_IfcIndexedPolygonalFace_type, + IFC4_IfcIndexedPolygonalFaceWithVoids_type, + IFC4_IfcIndexedTextureMap_type, + IFC4_IfcIndexedTriangleTextureMap_type, + IFC4_IfcInductanceMeasure_type, + IFC4_IfcInteger_type, + IFC4_IfcIntegerCountRateMeasure_type, + IFC4_IfcInterceptor_type, + IFC4_IfcInterceptorType_type, + IFC4_IfcInterceptorTypeEnum_type, + IFC4_IfcInternalOrExternalEnum_type, + IFC4_IfcIntersectionCurve_type, + IFC4_IfcInventory_type, + IFC4_IfcInventoryTypeEnum_type, + IFC4_IfcIonConcentrationMeasure_type, + IFC4_IfcIrregularTimeSeries_type, + IFC4_IfcIrregularTimeSeriesValue_type, + IFC4_IfcIShapeProfileDef_type, + IFC4_IfcIsothermalMoistureCapacityMeasure_type, + IFC4_IfcJunctionBox_type, + IFC4_IfcJunctionBoxType_type, + IFC4_IfcJunctionBoxTypeEnum_type, + IFC4_IfcKinematicViscosityMeasure_type, + IFC4_IfcKnotType_type, + IFC4_IfcLabel_type, + IFC4_IfcLaborResource_type, + IFC4_IfcLaborResourceType_type, + IFC4_IfcLaborResourceTypeEnum_type, + IFC4_IfcLagTime_type, + IFC4_IfcLamp_type, + IFC4_IfcLampType_type, + IFC4_IfcLampTypeEnum_type, + IFC4_IfcLanguageId_type, + IFC4_IfcLayeredItem_type, + IFC4_IfcLayerSetDirectionEnum_type, + IFC4_IfcLengthMeasure_type, + IFC4_IfcLibraryInformation_type, + IFC4_IfcLibraryReference_type, + IFC4_IfcLibrarySelect_type, + IFC4_IfcLightDistributionCurveEnum_type, + IFC4_IfcLightDistributionData_type, + IFC4_IfcLightDistributionDataSourceSelect_type, + IFC4_IfcLightEmissionSourceEnum_type, + IFC4_IfcLightFixture_type, + IFC4_IfcLightFixtureType_type, + IFC4_IfcLightFixtureTypeEnum_type, + IFC4_IfcLightIntensityDistribution_type, + IFC4_IfcLightSource_type, + IFC4_IfcLightSourceAmbient_type, + IFC4_IfcLightSourceDirectional_type, + IFC4_IfcLightSourceGoniometric_type, + IFC4_IfcLightSourcePositional_type, + IFC4_IfcLightSourceSpot_type, + IFC4_IfcLine_type, + IFC4_IfcLinearForceMeasure_type, + IFC4_IfcLinearMomentMeasure_type, + IFC4_IfcLinearStiffnessMeasure_type, + IFC4_IfcLinearVelocityMeasure_type, + IFC4_IfcLineIndex_type, + IFC4_IfcLoadGroupTypeEnum_type, + IFC4_IfcLocalPlacement_type, + IFC4_IfcLogical_type, + IFC4_IfcLogicalOperatorEnum_type, + IFC4_IfcLoop_type, + IFC4_IfcLShapeProfileDef_type, + IFC4_IfcLuminousFluxMeasure_type, + IFC4_IfcLuminousIntensityDistributionMeasure_type, + IFC4_IfcLuminousIntensityMeasure_type, + IFC4_IfcMagneticFluxDensityMeasure_type, + IFC4_IfcMagneticFluxMeasure_type, + IFC4_IfcManifoldSolidBrep_type, + IFC4_IfcMapConversion_type, + IFC4_IfcMappedItem_type, + IFC4_IfcMassDensityMeasure_type, + IFC4_IfcMassFlowRateMeasure_type, + IFC4_IfcMassMeasure_type, + IFC4_IfcMassPerLengthMeasure_type, + IFC4_IfcMaterial_type, + IFC4_IfcMaterialClassificationRelationship_type, + IFC4_IfcMaterialConstituent_type, + IFC4_IfcMaterialConstituentSet_type, + IFC4_IfcMaterialDefinition_type, + IFC4_IfcMaterialDefinitionRepresentation_type, + IFC4_IfcMaterialLayer_type, + IFC4_IfcMaterialLayerSet_type, + IFC4_IfcMaterialLayerSetUsage_type, + IFC4_IfcMaterialLayerWithOffsets_type, + IFC4_IfcMaterialList_type, + IFC4_IfcMaterialProfile_type, + IFC4_IfcMaterialProfileSet_type, + IFC4_IfcMaterialProfileSetUsage_type, + IFC4_IfcMaterialProfileSetUsageTapering_type, + IFC4_IfcMaterialProfileWithOffsets_type, + IFC4_IfcMaterialProperties_type, + IFC4_IfcMaterialRelationship_type, + IFC4_IfcMaterialSelect_type, + IFC4_IfcMaterialUsageDefinition_type, + IFC4_IfcMeasureValue_type, + IFC4_IfcMeasureWithUnit_type, + IFC4_IfcMechanicalFastener_type, + IFC4_IfcMechanicalFastenerType_type, + IFC4_IfcMechanicalFastenerTypeEnum_type, + IFC4_IfcMedicalDevice_type, + IFC4_IfcMedicalDeviceType_type, + IFC4_IfcMedicalDeviceTypeEnum_type, + IFC4_IfcMember_type, + IFC4_IfcMemberStandardCase_type, + IFC4_IfcMemberType_type, + IFC4_IfcMemberTypeEnum_type, + IFC4_IfcMetric_type, + IFC4_IfcMetricValueSelect_type, + IFC4_IfcMirroredProfileDef_type, + IFC4_IfcModulusOfElasticityMeasure_type, + IFC4_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4_IfcModulusOfSubgradeReactionMeasure_type, + IFC4_IfcModulusOfSubgradeReactionSelect_type, + IFC4_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4_IfcMoistureDiffusivityMeasure_type, + IFC4_IfcMolecularWeightMeasure_type, + IFC4_IfcMomentOfInertiaMeasure_type, + IFC4_IfcMonetaryMeasure_type, + IFC4_IfcMonetaryUnit_type, + IFC4_IfcMonthInYearNumber_type, + IFC4_IfcMotorConnection_type, + IFC4_IfcMotorConnectionType_type, + IFC4_IfcMotorConnectionTypeEnum_type, + IFC4_IfcNamedUnit_type, + IFC4_IfcNonNegativeLengthMeasure_type, + IFC4_IfcNormalisedRatioMeasure_type, + IFC4_IfcNullStyle_type, + IFC4_IfcNumericMeasure_type, + IFC4_IfcObject_type, + IFC4_IfcObjectDefinition_type, + IFC4_IfcObjective_type, + IFC4_IfcObjectiveEnum_type, + IFC4_IfcObjectPlacement_type, + IFC4_IfcObjectReferenceSelect_type, + IFC4_IfcObjectTypeEnum_type, + IFC4_IfcOccupant_type, + IFC4_IfcOccupantTypeEnum_type, + IFC4_IfcOffsetCurve2D_type, + IFC4_IfcOffsetCurve3D_type, + IFC4_IfcOpeningElement_type, + IFC4_IfcOpeningElementTypeEnum_type, + IFC4_IfcOpeningStandardCase_type, + IFC4_IfcOpenShell_type, + IFC4_IfcOrganization_type, + IFC4_IfcOrganizationRelationship_type, + IFC4_IfcOrientedEdge_type, + IFC4_IfcOuterBoundaryCurve_type, + IFC4_IfcOutlet_type, + IFC4_IfcOutletType_type, + IFC4_IfcOutletTypeEnum_type, + IFC4_IfcOwnerHistory_type, + IFC4_IfcParameterizedProfileDef_type, + IFC4_IfcParameterValue_type, + IFC4_IfcPath_type, + IFC4_IfcPcurve_type, + IFC4_IfcPerformanceHistory_type, + IFC4_IfcPerformanceHistoryTypeEnum_type, + IFC4_IfcPermeableCoveringOperationEnum_type, + IFC4_IfcPermeableCoveringProperties_type, + IFC4_IfcPermit_type, + IFC4_IfcPermitTypeEnum_type, + IFC4_IfcPerson_type, + IFC4_IfcPersonAndOrganization_type, + IFC4_IfcPHMeasure_type, + IFC4_IfcPhysicalComplexQuantity_type, + IFC4_IfcPhysicalOrVirtualEnum_type, + IFC4_IfcPhysicalQuantity_type, + IFC4_IfcPhysicalSimpleQuantity_type, + IFC4_IfcPile_type, + IFC4_IfcPileConstructionEnum_type, + IFC4_IfcPileType_type, + IFC4_IfcPileTypeEnum_type, + IFC4_IfcPipeFitting_type, + IFC4_IfcPipeFittingType_type, + IFC4_IfcPipeFittingTypeEnum_type, + IFC4_IfcPipeSegment_type, + IFC4_IfcPipeSegmentType_type, + IFC4_IfcPipeSegmentTypeEnum_type, + IFC4_IfcPixelTexture_type, + IFC4_IfcPlacement_type, + IFC4_IfcPlanarBox_type, + IFC4_IfcPlanarExtent_type, + IFC4_IfcPlanarForceMeasure_type, + IFC4_IfcPlane_type, + IFC4_IfcPlaneAngleMeasure_type, + IFC4_IfcPlate_type, + IFC4_IfcPlateStandardCase_type, + IFC4_IfcPlateType_type, + IFC4_IfcPlateTypeEnum_type, + IFC4_IfcPoint_type, + IFC4_IfcPointOnCurve_type, + IFC4_IfcPointOnSurface_type, + IFC4_IfcPointOrVertexPoint_type, + IFC4_IfcPolygonalBoundedHalfSpace_type, + IFC4_IfcPolygonalFaceSet_type, + IFC4_IfcPolyline_type, + IFC4_IfcPolyLoop_type, + IFC4_IfcPort_type, + IFC4_IfcPositiveInteger_type, + IFC4_IfcPositiveLengthMeasure_type, + IFC4_IfcPositivePlaneAngleMeasure_type, + IFC4_IfcPositiveRatioMeasure_type, + IFC4_IfcPostalAddress_type, + IFC4_IfcPowerMeasure_type, + IFC4_IfcPreDefinedColour_type, + IFC4_IfcPreDefinedCurveFont_type, + IFC4_IfcPreDefinedItem_type, + IFC4_IfcPreDefinedProperties_type, + IFC4_IfcPreDefinedPropertySet_type, + IFC4_IfcPreDefinedTextFont_type, + IFC4_IfcPreferredSurfaceCurveRepresentation_type, + IFC4_IfcPresentableText_type, + IFC4_IfcPresentationItem_type, + IFC4_IfcPresentationLayerAssignment_type, + IFC4_IfcPresentationLayerWithStyle_type, + IFC4_IfcPresentationStyle_type, + IFC4_IfcPresentationStyleAssignment_type, + IFC4_IfcPresentationStyleSelect_type, + IFC4_IfcPressureMeasure_type, + IFC4_IfcProcedure_type, + IFC4_IfcProcedureType_type, + IFC4_IfcProcedureTypeEnum_type, + IFC4_IfcProcess_type, + IFC4_IfcProcessSelect_type, + IFC4_IfcProduct_type, + IFC4_IfcProductDefinitionShape_type, + IFC4_IfcProductRepresentation_type, + IFC4_IfcProductRepresentationSelect_type, + IFC4_IfcProductSelect_type, + IFC4_IfcProfileDef_type, + IFC4_IfcProfileProperties_type, + IFC4_IfcProfileTypeEnum_type, + IFC4_IfcProject_type, + IFC4_IfcProjectedCRS_type, + IFC4_IfcProjectedOrTrueLengthEnum_type, + IFC4_IfcProjectionElement_type, + IFC4_IfcProjectionElementTypeEnum_type, + IFC4_IfcProjectLibrary_type, + IFC4_IfcProjectOrder_type, + IFC4_IfcProjectOrderTypeEnum_type, + IFC4_IfcProperty_type, + IFC4_IfcPropertyAbstraction_type, + IFC4_IfcPropertyBoundedValue_type, + IFC4_IfcPropertyDefinition_type, + IFC4_IfcPropertyDependencyRelationship_type, + IFC4_IfcPropertyEnumeratedValue_type, + IFC4_IfcPropertyEnumeration_type, + IFC4_IfcPropertyListValue_type, + IFC4_IfcPropertyReferenceValue_type, + IFC4_IfcPropertySet_type, + IFC4_IfcPropertySetDefinition_type, + IFC4_IfcPropertySetDefinitionSelect_type, + IFC4_IfcPropertySetDefinitionSet_type, + IFC4_IfcPropertySetTemplate_type, + IFC4_IfcPropertySetTemplateTypeEnum_type, + IFC4_IfcPropertySingleValue_type, + IFC4_IfcPropertyTableValue_type, + IFC4_IfcPropertyTemplate_type, + IFC4_IfcPropertyTemplateDefinition_type, + IFC4_IfcProtectiveDevice_type, + IFC4_IfcProtectiveDeviceTrippingUnit_type, + IFC4_IfcProtectiveDeviceTrippingUnitType_type, + IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4_IfcProtectiveDeviceType_type, + IFC4_IfcProtectiveDeviceTypeEnum_type, + IFC4_IfcProxy_type, + IFC4_IfcPump_type, + IFC4_IfcPumpType_type, + IFC4_IfcPumpTypeEnum_type, + IFC4_IfcQuantityArea_type, + IFC4_IfcQuantityCount_type, + IFC4_IfcQuantityLength_type, + IFC4_IfcQuantitySet_type, + IFC4_IfcQuantityTime_type, + IFC4_IfcQuantityVolume_type, + IFC4_IfcQuantityWeight_type, + IFC4_IfcRadioActivityMeasure_type, + IFC4_IfcRailing_type, + IFC4_IfcRailingType_type, + IFC4_IfcRailingTypeEnum_type, + IFC4_IfcRamp_type, + IFC4_IfcRampFlight_type, + IFC4_IfcRampFlightType_type, + IFC4_IfcRampFlightTypeEnum_type, + IFC4_IfcRampType_type, + IFC4_IfcRampTypeEnum_type, + IFC4_IfcRatioMeasure_type, + IFC4_IfcRationalBSplineCurveWithKnots_type, + IFC4_IfcRationalBSplineSurfaceWithKnots_type, + IFC4_IfcReal_type, + IFC4_IfcRectangleHollowProfileDef_type, + IFC4_IfcRectangleProfileDef_type, + IFC4_IfcRectangularPyramid_type, + IFC4_IfcRectangularTrimmedSurface_type, + IFC4_IfcRecurrencePattern_type, + IFC4_IfcRecurrenceTypeEnum_type, + IFC4_IfcReference_type, + IFC4_IfcReflectanceMethodEnum_type, + IFC4_IfcRegularTimeSeries_type, + IFC4_IfcReinforcementBarProperties_type, + IFC4_IfcReinforcementDefinitionProperties_type, + IFC4_IfcReinforcingBar_type, + IFC4_IfcReinforcingBarRoleEnum_type, + IFC4_IfcReinforcingBarSurfaceEnum_type, + IFC4_IfcReinforcingBarType_type, + IFC4_IfcReinforcingBarTypeEnum_type, + IFC4_IfcReinforcingElement_type, + IFC4_IfcReinforcingElementType_type, + IFC4_IfcReinforcingMesh_type, + IFC4_IfcReinforcingMeshType_type, + IFC4_IfcReinforcingMeshTypeEnum_type, + IFC4_IfcRelAggregates_type, + IFC4_IfcRelAssigns_type, + IFC4_IfcRelAssignsToActor_type, + IFC4_IfcRelAssignsToControl_type, + IFC4_IfcRelAssignsToGroup_type, + IFC4_IfcRelAssignsToGroupByFactor_type, + IFC4_IfcRelAssignsToProcess_type, + IFC4_IfcRelAssignsToProduct_type, + IFC4_IfcRelAssignsToResource_type, + IFC4_IfcRelAssociates_type, + IFC4_IfcRelAssociatesApproval_type, + IFC4_IfcRelAssociatesClassification_type, + IFC4_IfcRelAssociatesConstraint_type, + IFC4_IfcRelAssociatesDocument_type, + IFC4_IfcRelAssociatesLibrary_type, + IFC4_IfcRelAssociatesMaterial_type, + IFC4_IfcRelationship_type, + IFC4_IfcRelConnects_type, + IFC4_IfcRelConnectsElements_type, + IFC4_IfcRelConnectsPathElements_type, + IFC4_IfcRelConnectsPorts_type, + IFC4_IfcRelConnectsPortToElement_type, + IFC4_IfcRelConnectsStructuralActivity_type, + IFC4_IfcRelConnectsStructuralMember_type, + IFC4_IfcRelConnectsWithEccentricity_type, + IFC4_IfcRelConnectsWithRealizingElements_type, + IFC4_IfcRelContainedInSpatialStructure_type, + IFC4_IfcRelCoversBldgElements_type, + IFC4_IfcRelCoversSpaces_type, + IFC4_IfcRelDeclares_type, + IFC4_IfcRelDecomposes_type, + IFC4_IfcRelDefines_type, + IFC4_IfcRelDefinesByObject_type, + IFC4_IfcRelDefinesByProperties_type, + IFC4_IfcRelDefinesByTemplate_type, + IFC4_IfcRelDefinesByType_type, + IFC4_IfcRelFillsElement_type, + IFC4_IfcRelFlowControlElements_type, + IFC4_IfcRelInterferesElements_type, + IFC4_IfcRelNests_type, + IFC4_IfcRelProjectsElement_type, + IFC4_IfcRelReferencedInSpatialStructure_type, + IFC4_IfcRelSequence_type, + IFC4_IfcRelServicesBuildings_type, + IFC4_IfcRelSpaceBoundary_type, + IFC4_IfcRelSpaceBoundary1stLevel_type, + IFC4_IfcRelSpaceBoundary2ndLevel_type, + IFC4_IfcRelVoidsElement_type, + IFC4_IfcReparametrisedCompositeCurveSegment_type, + IFC4_IfcRepresentation_type, + IFC4_IfcRepresentationContext_type, + IFC4_IfcRepresentationItem_type, + IFC4_IfcRepresentationMap_type, + IFC4_IfcResource_type, + IFC4_IfcResourceApprovalRelationship_type, + IFC4_IfcResourceConstraintRelationship_type, + IFC4_IfcResourceLevelRelationship_type, + IFC4_IfcResourceObjectSelect_type, + IFC4_IfcResourceSelect_type, + IFC4_IfcResourceTime_type, + IFC4_IfcRevolvedAreaSolid_type, + IFC4_IfcRevolvedAreaSolidTapered_type, + IFC4_IfcRightCircularCone_type, + IFC4_IfcRightCircularCylinder_type, + IFC4_IfcRoleEnum_type, + IFC4_IfcRoof_type, + IFC4_IfcRoofType_type, + IFC4_IfcRoofTypeEnum_type, + IFC4_IfcRoot_type, + IFC4_IfcRotationalFrequencyMeasure_type, + IFC4_IfcRotationalMassMeasure_type, + IFC4_IfcRotationalStiffnessMeasure_type, + IFC4_IfcRotationalStiffnessSelect_type, + IFC4_IfcRoundedRectangleProfileDef_type, + IFC4_IfcSanitaryTerminal_type, + IFC4_IfcSanitaryTerminalType_type, + IFC4_IfcSanitaryTerminalTypeEnum_type, + IFC4_IfcSchedulingTime_type, + IFC4_IfcSeamCurve_type, + IFC4_IfcSectionalAreaIntegralMeasure_type, + IFC4_IfcSectionedSpine_type, + IFC4_IfcSectionModulusMeasure_type, + IFC4_IfcSectionProperties_type, + IFC4_IfcSectionReinforcementProperties_type, + IFC4_IfcSectionTypeEnum_type, + IFC4_IfcSegmentIndexSelect_type, + IFC4_IfcSensor_type, + IFC4_IfcSensorType_type, + IFC4_IfcSensorTypeEnum_type, + IFC4_IfcSequenceEnum_type, + IFC4_IfcShadingDevice_type, + IFC4_IfcShadingDeviceType_type, + IFC4_IfcShadingDeviceTypeEnum_type, + IFC4_IfcShapeAspect_type, + IFC4_IfcShapeModel_type, + IFC4_IfcShapeRepresentation_type, + IFC4_IfcShearModulusMeasure_type, + IFC4_IfcShell_type, + IFC4_IfcShellBasedSurfaceModel_type, + IFC4_IfcSimpleProperty_type, + IFC4_IfcSimplePropertyTemplate_type, + IFC4_IfcSimplePropertyTemplateTypeEnum_type, + IFC4_IfcSimpleValue_type, + IFC4_IfcSIPrefix_type, + IFC4_IfcSite_type, + IFC4_IfcSIUnit_type, + IFC4_IfcSIUnitName_type, + IFC4_IfcSizeSelect_type, + IFC4_IfcSlab_type, + IFC4_IfcSlabElementedCase_type, + IFC4_IfcSlabStandardCase_type, + IFC4_IfcSlabType_type, + IFC4_IfcSlabTypeEnum_type, + IFC4_IfcSlippageConnectionCondition_type, + IFC4_IfcSolarDevice_type, + IFC4_IfcSolarDeviceType_type, + IFC4_IfcSolarDeviceTypeEnum_type, + IFC4_IfcSolidAngleMeasure_type, + IFC4_IfcSolidModel_type, + IFC4_IfcSolidOrShell_type, + IFC4_IfcSoundPowerLevelMeasure_type, + IFC4_IfcSoundPowerMeasure_type, + IFC4_IfcSoundPressureLevelMeasure_type, + IFC4_IfcSoundPressureMeasure_type, + IFC4_IfcSpace_type, + IFC4_IfcSpaceBoundarySelect_type, + IFC4_IfcSpaceHeater_type, + IFC4_IfcSpaceHeaterType_type, + IFC4_IfcSpaceHeaterTypeEnum_type, + IFC4_IfcSpaceType_type, + IFC4_IfcSpaceTypeEnum_type, + IFC4_IfcSpatialElement_type, + IFC4_IfcSpatialElementType_type, + IFC4_IfcSpatialStructureElement_type, + IFC4_IfcSpatialStructureElementType_type, + IFC4_IfcSpatialZone_type, + IFC4_IfcSpatialZoneType_type, + IFC4_IfcSpatialZoneTypeEnum_type, + IFC4_IfcSpecificHeatCapacityMeasure_type, + IFC4_IfcSpecularExponent_type, + IFC4_IfcSpecularHighlightSelect_type, + IFC4_IfcSpecularRoughness_type, + IFC4_IfcSphere_type, + IFC4_IfcSphericalSurface_type, + IFC4_IfcStackTerminal_type, + IFC4_IfcStackTerminalType_type, + IFC4_IfcStackTerminalTypeEnum_type, + IFC4_IfcStair_type, + IFC4_IfcStairFlight_type, + IFC4_IfcStairFlightType_type, + IFC4_IfcStairFlightTypeEnum_type, + IFC4_IfcStairType_type, + IFC4_IfcStairTypeEnum_type, + IFC4_IfcStateEnum_type, + IFC4_IfcStructuralAction_type, + IFC4_IfcStructuralActivity_type, + IFC4_IfcStructuralActivityAssignmentSelect_type, + IFC4_IfcStructuralAnalysisModel_type, + IFC4_IfcStructuralConnection_type, + IFC4_IfcStructuralConnectionCondition_type, + IFC4_IfcStructuralCurveAction_type, + IFC4_IfcStructuralCurveActivityTypeEnum_type, + IFC4_IfcStructuralCurveConnection_type, + IFC4_IfcStructuralCurveMember_type, + IFC4_IfcStructuralCurveMemberTypeEnum_type, + IFC4_IfcStructuralCurveMemberVarying_type, + IFC4_IfcStructuralCurveReaction_type, + IFC4_IfcStructuralItem_type, + IFC4_IfcStructuralLinearAction_type, + IFC4_IfcStructuralLoad_type, + IFC4_IfcStructuralLoadCase_type, + IFC4_IfcStructuralLoadConfiguration_type, + IFC4_IfcStructuralLoadGroup_type, + IFC4_IfcStructuralLoadLinearForce_type, + IFC4_IfcStructuralLoadOrResult_type, + IFC4_IfcStructuralLoadPlanarForce_type, + IFC4_IfcStructuralLoadSingleDisplacement_type, + IFC4_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4_IfcStructuralLoadSingleForce_type, + IFC4_IfcStructuralLoadSingleForceWarping_type, + IFC4_IfcStructuralLoadStatic_type, + IFC4_IfcStructuralLoadTemperature_type, + IFC4_IfcStructuralMember_type, + IFC4_IfcStructuralPlanarAction_type, + IFC4_IfcStructuralPointAction_type, + IFC4_IfcStructuralPointConnection_type, + IFC4_IfcStructuralPointReaction_type, + IFC4_IfcStructuralReaction_type, + IFC4_IfcStructuralResultGroup_type, + IFC4_IfcStructuralSurfaceAction_type, + IFC4_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4_IfcStructuralSurfaceConnection_type, + IFC4_IfcStructuralSurfaceMember_type, + IFC4_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4_IfcStructuralSurfaceMemberVarying_type, + IFC4_IfcStructuralSurfaceReaction_type, + IFC4_IfcStyleAssignmentSelect_type, + IFC4_IfcStyledItem_type, + IFC4_IfcStyledRepresentation_type, + IFC4_IfcStyleModel_type, + IFC4_IfcSubContractResource_type, + IFC4_IfcSubContractResourceType_type, + IFC4_IfcSubContractResourceTypeEnum_type, + IFC4_IfcSubedge_type, + IFC4_IfcSurface_type, + IFC4_IfcSurfaceCurve_type, + IFC4_IfcSurfaceCurveSweptAreaSolid_type, + IFC4_IfcSurfaceFeature_type, + IFC4_IfcSurfaceFeatureTypeEnum_type, + IFC4_IfcSurfaceOfLinearExtrusion_type, + IFC4_IfcSurfaceOfRevolution_type, + IFC4_IfcSurfaceOrFaceSurface_type, + IFC4_IfcSurfaceReinforcementArea_type, + IFC4_IfcSurfaceSide_type, + IFC4_IfcSurfaceStyle_type, + IFC4_IfcSurfaceStyleElementSelect_type, + IFC4_IfcSurfaceStyleLighting_type, + IFC4_IfcSurfaceStyleRefraction_type, + IFC4_IfcSurfaceStyleRendering_type, + IFC4_IfcSurfaceStyleShading_type, + IFC4_IfcSurfaceStyleWithTextures_type, + IFC4_IfcSurfaceTexture_type, + IFC4_IfcSweptAreaSolid_type, + IFC4_IfcSweptDiskSolid_type, + IFC4_IfcSweptDiskSolidPolygonal_type, + IFC4_IfcSweptSurface_type, + IFC4_IfcSwitchingDevice_type, + IFC4_IfcSwitchingDeviceType_type, + IFC4_IfcSwitchingDeviceTypeEnum_type, + IFC4_IfcSystem_type, + IFC4_IfcSystemFurnitureElement_type, + IFC4_IfcSystemFurnitureElementType_type, + IFC4_IfcSystemFurnitureElementTypeEnum_type, + IFC4_IfcTable_type, + IFC4_IfcTableColumn_type, + IFC4_IfcTableRow_type, + IFC4_IfcTank_type, + IFC4_IfcTankType_type, + IFC4_IfcTankTypeEnum_type, + IFC4_IfcTask_type, + IFC4_IfcTaskDurationEnum_type, + IFC4_IfcTaskTime_type, + IFC4_IfcTaskTimeRecurring_type, + IFC4_IfcTaskType_type, + IFC4_IfcTaskTypeEnum_type, + IFC4_IfcTelecomAddress_type, + IFC4_IfcTemperatureGradientMeasure_type, + IFC4_IfcTemperatureRateOfChangeMeasure_type, + IFC4_IfcTendon_type, + IFC4_IfcTendonAnchor_type, + IFC4_IfcTendonAnchorType_type, + IFC4_IfcTendonAnchorTypeEnum_type, + IFC4_IfcTendonType_type, + IFC4_IfcTendonTypeEnum_type, + IFC4_IfcTessellatedFaceSet_type, + IFC4_IfcTessellatedItem_type, + IFC4_IfcText_type, + IFC4_IfcTextAlignment_type, + IFC4_IfcTextDecoration_type, + IFC4_IfcTextFontName_type, + IFC4_IfcTextFontSelect_type, + IFC4_IfcTextLiteral_type, + IFC4_IfcTextLiteralWithExtent_type, + IFC4_IfcTextPath_type, + IFC4_IfcTextStyle_type, + IFC4_IfcTextStyleFontModel_type, + IFC4_IfcTextStyleForDefinedFont_type, + IFC4_IfcTextStyleTextModel_type, + IFC4_IfcTextTransformation_type, + IFC4_IfcTextureCoordinate_type, + IFC4_IfcTextureCoordinateGenerator_type, + IFC4_IfcTextureMap_type, + IFC4_IfcTextureVertex_type, + IFC4_IfcTextureVertexList_type, + IFC4_IfcThermalAdmittanceMeasure_type, + IFC4_IfcThermalConductivityMeasure_type, + IFC4_IfcThermalExpansionCoefficientMeasure_type, + IFC4_IfcThermalResistanceMeasure_type, + IFC4_IfcThermalTransmittanceMeasure_type, + IFC4_IfcThermodynamicTemperatureMeasure_type, + IFC4_IfcTime_type, + IFC4_IfcTimeMeasure_type, + IFC4_IfcTimeOrRatioSelect_type, + IFC4_IfcTimePeriod_type, + IFC4_IfcTimeSeries_type, + IFC4_IfcTimeSeriesDataTypeEnum_type, + IFC4_IfcTimeSeriesValue_type, + IFC4_IfcTimeStamp_type, + IFC4_IfcTopologicalRepresentationItem_type, + IFC4_IfcTopologyRepresentation_type, + IFC4_IfcToroidalSurface_type, + IFC4_IfcTorqueMeasure_type, + IFC4_IfcTransformer_type, + IFC4_IfcTransformerType_type, + IFC4_IfcTransformerTypeEnum_type, + IFC4_IfcTransitionCode_type, + IFC4_IfcTranslationalStiffnessSelect_type, + IFC4_IfcTransportElement_type, + IFC4_IfcTransportElementType_type, + IFC4_IfcTransportElementTypeEnum_type, + IFC4_IfcTrapeziumProfileDef_type, + IFC4_IfcTriangulatedFaceSet_type, + IFC4_IfcTrimmedCurve_type, + IFC4_IfcTrimmingPreference_type, + IFC4_IfcTrimmingSelect_type, + IFC4_IfcTShapeProfileDef_type, + IFC4_IfcTubeBundle_type, + IFC4_IfcTubeBundleType_type, + IFC4_IfcTubeBundleTypeEnum_type, + IFC4_IfcTypeObject_type, + IFC4_IfcTypeProcess_type, + IFC4_IfcTypeProduct_type, + IFC4_IfcTypeResource_type, + IFC4_IfcUnit_type, + IFC4_IfcUnitaryControlElement_type, + IFC4_IfcUnitaryControlElementType_type, + IFC4_IfcUnitaryControlElementTypeEnum_type, + IFC4_IfcUnitaryEquipment_type, + IFC4_IfcUnitaryEquipmentType_type, + IFC4_IfcUnitaryEquipmentTypeEnum_type, + IFC4_IfcUnitAssignment_type, + IFC4_IfcUnitEnum_type, + IFC4_IfcURIReference_type, + IFC4_IfcUShapeProfileDef_type, + IFC4_IfcValue_type, + IFC4_IfcValve_type, + IFC4_IfcValveType_type, + IFC4_IfcValveTypeEnum_type, + IFC4_IfcVaporPermeabilityMeasure_type, + IFC4_IfcVector_type, + IFC4_IfcVectorOrDirection_type, + IFC4_IfcVertex_type, + IFC4_IfcVertexLoop_type, + IFC4_IfcVertexPoint_type, + IFC4_IfcVibrationIsolator_type, + IFC4_IfcVibrationIsolatorType_type, + IFC4_IfcVibrationIsolatorTypeEnum_type, + IFC4_IfcVirtualElement_type, + IFC4_IfcVirtualGridIntersection_type, + IFC4_IfcVoidingFeature_type, + IFC4_IfcVoidingFeatureTypeEnum_type, + IFC4_IfcVolumeMeasure_type, + IFC4_IfcVolumetricFlowRateMeasure_type, + IFC4_IfcWall_type, + IFC4_IfcWallElementedCase_type, + IFC4_IfcWallStandardCase_type, + IFC4_IfcWallType_type, + IFC4_IfcWallTypeEnum_type, + IFC4_IfcWarpingConstantMeasure_type, + IFC4_IfcWarpingMomentMeasure_type, + IFC4_IfcWarpingStiffnessSelect_type, + IFC4_IfcWasteTerminal_type, + IFC4_IfcWasteTerminalType_type, + IFC4_IfcWasteTerminalTypeEnum_type, + IFC4_IfcWindow_type, + IFC4_IfcWindowLiningProperties_type, + IFC4_IfcWindowPanelOperationEnum_type, + IFC4_IfcWindowPanelPositionEnum_type, + IFC4_IfcWindowPanelProperties_type, + IFC4_IfcWindowStandardCase_type, + IFC4_IfcWindowStyle_type, + IFC4_IfcWindowStyleConstructionEnum_type, + IFC4_IfcWindowStyleOperationEnum_type, + IFC4_IfcWindowType_type, + IFC4_IfcWindowTypeEnum_type, + IFC4_IfcWindowTypePartitioningEnum_type, + IFC4_IfcWorkCalendar_type, + IFC4_IfcWorkCalendarTypeEnum_type, + IFC4_IfcWorkControl_type, + IFC4_IfcWorkPlan_type, + IFC4_IfcWorkPlanTypeEnum_type, + IFC4_IfcWorkSchedule_type, + IFC4_IfcWorkScheduleTypeEnum_type, + IFC4_IfcWorkTime_type, + IFC4_IfcZone_type, + IFC4_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3306], declarations, new IFC4_instance_factory()); } diff --git a/src/ifcparse/Ifc4.cpp b/src/ifcparse/Ifc4.cpp index 3f0b878a59..6d37017993 100644 --- a/src/ifcparse/Ifc4.cpp +++ b/src/ifcparse/Ifc4.cpp @@ -1234,20 +1234,11 @@ Ifc4::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string& v) { } const char* Ifc4::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcActionRequestTypeEnum::Value Ifc4::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcActionRequestTypeEnum::Value) IFC4_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcActionRequestTypeEnum::operator Ifc4::IfcActionRequestTypeEnum::Value() const { @@ -1276,40 +1267,11 @@ Ifc4::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& v) { } const char* Ifc4::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcActionSourceTypeEnum::Value Ifc4::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcActionSourceTypeEnum::Value) IFC4_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcActionSourceTypeEnum::operator Ifc4::IfcActionSourceTypeEnum::Value() const { @@ -1338,18 +1300,11 @@ Ifc4::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcActionTypeEnum::Value Ifc4::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcActionTypeEnum::Value) IFC4_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcActionTypeEnum::operator Ifc4::IfcActionTypeEnum::Value() const { @@ -1378,20 +1333,11 @@ Ifc4::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcActuatorTypeEnum::Value Ifc4::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcActuatorTypeEnum::Value) IFC4_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcActuatorTypeEnum::operator Ifc4::IfcActuatorTypeEnum::Value() const { @@ -1420,18 +1366,11 @@ Ifc4::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAddressTypeEnum::Value Ifc4::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAddressTypeEnum::Value) IFC4_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAddressTypeEnum::operator Ifc4::IfcAddressTypeEnum::Value() const { @@ -1460,18 +1399,11 @@ Ifc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::string& v) } const char* Ifc4::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAirTerminalBoxTypeEnum::Value Ifc4::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAirTerminalBoxTypeEnum::Value) IFC4_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAirTerminalBoxTypeEnum::operator Ifc4::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1500,19 +1432,11 @@ Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) { } const char* Ifc4::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAirTerminalTypeEnum::Value Ifc4::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAirTerminalTypeEnum::Value) IFC4_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAirTerminalTypeEnum::operator Ifc4::IfcAirTerminalTypeEnum::Value() const { @@ -1541,24 +1465,11 @@ Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const std } const char* Ifc4::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1587,21 +1498,11 @@ Ifc4::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAlarmTypeEnum::Value Ifc4::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "USERDEFINED") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAlarmTypeEnum::Value) IFC4_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAlarmTypeEnum::operator Ifc4::IfcAlarmTypeEnum::Value() const { @@ -1630,18 +1531,11 @@ Ifc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string& v) { } const char* Ifc4::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAnalysisModelTypeEnum::Value Ifc4::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAnalysisModelTypeEnum::Value) IFC4_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAnalysisModelTypeEnum::operator Ifc4::IfcAnalysisModelTypeEnum::Value() const { @@ -1670,19 +1564,11 @@ Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::string& v) } const char* Ifc4::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAnalysisTheoryTypeEnum::Value Ifc4::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAnalysisTheoryTypeEnum::Value) IFC4_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAnalysisTheoryTypeEnum::operator Ifc4::IfcAnalysisTheoryTypeEnum::Value() const { @@ -1711,17 +1597,11 @@ Ifc4::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::string& v) } const char* Ifc4::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcArithmeticOperatorEnum::Value Ifc4::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcArithmeticOperatorEnum::Value) IFC4_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4::IfcArithmeticOperatorEnum::operator Ifc4::IfcArithmeticOperatorEnum::Value() const { @@ -1750,16 +1630,11 @@ Ifc4::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAssemblyPlaceEnum::Value Ifc4::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAssemblyPlaceEnum::Value) IFC4_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4::IfcAssemblyPlaceEnum::operator Ifc4::IfcAssemblyPlaceEnum::Value() const { @@ -1788,26 +1663,11 @@ Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(const std } const char* Ifc4::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcAudioVisualApplianceTypeEnum::Value Ifc4::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "USERDEFINED") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcAudioVisualApplianceTypeEnum::Value) IFC4_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcAudioVisualApplianceTypeEnum::operator Ifc4::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -1836,19 +1696,11 @@ Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4::IfcBSplineCurveForm::Value Ifc4::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBSplineCurveForm::Value) IFC4_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4::IfcBSplineCurveForm::operator Ifc4::IfcBSplineCurveForm::Value() const { @@ -1877,24 +1729,11 @@ Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4::IfcBSplineSurfaceForm::Value Ifc4::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBSplineSurfaceForm::Value) IFC4_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4::IfcBSplineSurfaceForm::operator Ifc4::IfcBSplineSurfaceForm::Value() const { @@ -1923,21 +1762,11 @@ Ifc4::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBeamTypeEnum::Value Ifc4::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "USERDEFINED") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBeamTypeEnum::Value) IFC4_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcBeamTypeEnum::operator Ifc4::IfcBeamTypeEnum::Value() const { @@ -1966,23 +1795,11 @@ Ifc4::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBenchmarkEnum::Value Ifc4::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBenchmarkEnum::Value) IFC4_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4::IfcBenchmarkEnum::operator Ifc4::IfcBenchmarkEnum::Value() const { @@ -2011,17 +1828,11 @@ Ifc4::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBoilerTypeEnum::Value Ifc4::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBoilerTypeEnum::Value) IFC4_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcBoilerTypeEnum::operator Ifc4::IfcBoilerTypeEnum::Value() const { @@ -2050,16 +1861,11 @@ Ifc4::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4::IfcBooleanOperator::Value Ifc4::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBooleanOperator::Value) IFC4_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4::IfcBooleanOperator::operator Ifc4::IfcBooleanOperator::Value() const { @@ -2088,17 +1894,11 @@ Ifc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const std:: } const char* Ifc4::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBuildingElementPartTypeEnum::Value Ifc4::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "USERDEFINED") return ::Ifc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBuildingElementPartTypeEnum::Value) IFC4_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcBuildingElementPartTypeEnum::operator Ifc4::IfcBuildingElementPartTypeEnum::Value() const { @@ -2127,20 +1927,11 @@ Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const std } const char* Ifc4::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBuildingElementProxyTypeEnum::Value Ifc4::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBuildingElementProxyTypeEnum::Value) IFC4_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcBuildingElementProxyTypeEnum::operator Ifc4::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2169,21 +1960,11 @@ Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::string& v) } const char* Ifc4::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBuildingSystemTypeEnum::Value Ifc4::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "USERDEFINED") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBuildingSystemTypeEnum::Value) IFC4_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcBuildingSystemTypeEnum::operator Ifc4::IfcBuildingSystemTypeEnum::Value() const { @@ -2212,15 +1993,11 @@ Ifc4::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcBurnerTypeEnum::Value Ifc4::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcBurnerTypeEnum::Value) IFC4_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcBurnerTypeEnum::operator Ifc4::IfcBurnerTypeEnum::Value() const { @@ -2249,19 +2026,11 @@ Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std:: } const char* Ifc4::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCableCarrierFittingTypeEnum::Value Ifc4::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCableCarrierFittingTypeEnum::Value) IFC4_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCableCarrierFittingTypeEnum::operator Ifc4::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2290,19 +2059,11 @@ Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std:: } const char* Ifc4::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCableCarrierSegmentTypeEnum::Value Ifc4::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "USERDEFINED") return ::Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCableCarrierSegmentTypeEnum::Value) IFC4_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCableCarrierSegmentTypeEnum::operator Ifc4::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2331,20 +2092,11 @@ Ifc4::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& v) { } const char* Ifc4::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCableFittingTypeEnum::Value Ifc4::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCableFittingTypeEnum::Value) IFC4_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCableFittingTypeEnum::operator Ifc4::IfcCableFittingTypeEnum::Value() const { @@ -2373,19 +2125,11 @@ Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& v) { } const char* Ifc4::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCableSegmentTypeEnum::Value Ifc4::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "USERDEFINED") return ::Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCableSegmentTypeEnum::Value) IFC4_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCableSegmentTypeEnum::operator Ifc4::IfcCableSegmentTypeEnum::Value() const { @@ -2414,18 +2158,11 @@ Ifc4::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcChangeActionEnum::Value Ifc4::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcChangeActionEnum::Value) IFC4_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4::IfcChangeActionEnum::operator Ifc4::IfcChangeActionEnum::Value() const { @@ -2454,18 +2191,11 @@ Ifc4::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcChillerTypeEnum::Value Ifc4::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcChillerTypeEnum::Value) IFC4_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcChillerTypeEnum::operator Ifc4::IfcChillerTypeEnum::Value() const { @@ -2494,15 +2224,11 @@ Ifc4::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcChimneyTypeEnum::Value Ifc4::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcChimneyTypeEnum::Value) IFC4_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcChimneyTypeEnum::operator Ifc4::IfcChimneyTypeEnum::Value() const { @@ -2531,22 +2257,11 @@ Ifc4::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCoilTypeEnum::Value Ifc4::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCoilTypeEnum::Value) IFC4_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCoilTypeEnum::operator Ifc4::IfcCoilTypeEnum::Value() const { @@ -2575,17 +2290,11 @@ Ifc4::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcColumnTypeEnum::Value Ifc4::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "USERDEFINED") return ::Ifc4::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcColumnTypeEnum::Value) IFC4_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcColumnTypeEnum::operator Ifc4::IfcColumnTypeEnum::Value() const { @@ -2614,27 +2323,11 @@ Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(con } const char* Ifc4::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCommunicationsApplianceTypeEnum::Value Ifc4::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "USERDEFINED") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCommunicationsApplianceTypeEnum::Value) IFC4_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCommunicationsApplianceTypeEnum::operator Ifc4::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -2663,15 +2356,11 @@ Ifc4::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(con } const char* Ifc4::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcComplexPropertyTemplateTypeEnum::Value Ifc4::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcComplexPropertyTemplateTypeEnum::Value) IFC4_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcComplexPropertyTemplateTypeEnum::operator Ifc4::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -2700,30 +2389,11 @@ Ifc4::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCompressorTypeEnum::Value Ifc4::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCompressorTypeEnum::Value) IFC4_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCompressorTypeEnum::operator Ifc4::IfcCompressorTypeEnum::Value() const { @@ -2752,22 +2422,11 @@ Ifc4::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCondenserTypeEnum::Value Ifc4::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCondenserTypeEnum::Value) IFC4_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCondenserTypeEnum::operator Ifc4::IfcCondenserTypeEnum::Value() const { @@ -2796,17 +2455,11 @@ Ifc4::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcConnectionTypeEnum::Value Ifc4::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcConnectionTypeEnum::Value) IFC4_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcConnectionTypeEnum::operator Ifc4::IfcConnectionTypeEnum::Value() const { @@ -2835,18 +2488,11 @@ Ifc4::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcConstraintEnum::Value Ifc4::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcConstraintEnum::Value) IFC4_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4::IfcConstraintEnum::operator Ifc4::IfcConstraintEnum::Value() const { @@ -2875,23 +2521,11 @@ Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResource } const char* Ifc4::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -2920,24 +2554,11 @@ Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceTy } const char* Ifc4::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcConstructionMaterialResourceTypeEnum::Value Ifc4::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcConstructionMaterialResourceTypeEnum::Value) IFC4_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcConstructionMaterialResourceTypeEnum::operator Ifc4::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -2966,17 +2587,11 @@ Ifc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType } const char* Ifc4::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcConstructionProductResourceTypeEnum::Value Ifc4::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcConstructionProductResourceTypeEnum::Value) IFC4_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcConstructionProductResourceTypeEnum::operator Ifc4::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3005,20 +2620,11 @@ Ifc4::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcControllerTypeEnum::Value Ifc4::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcControllerTypeEnum::Value) IFC4_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcControllerTypeEnum::operator Ifc4::IfcControllerTypeEnum::Value() const { @@ -3047,17 +2653,11 @@ Ifc4::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCooledBeamTypeEnum::Value Ifc4::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCooledBeamTypeEnum::Value) IFC4_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCooledBeamTypeEnum::operator Ifc4::IfcCooledBeamTypeEnum::Value() const { @@ -3086,18 +2686,11 @@ Ifc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& v) { } const char* Ifc4::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCoolingTowerTypeEnum::Value Ifc4::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCoolingTowerTypeEnum::Value) IFC4_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCoolingTowerTypeEnum::operator Ifc4::IfcCoolingTowerTypeEnum::Value() const { @@ -3126,15 +2719,11 @@ Ifc4::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCostItemTypeEnum::Value Ifc4::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCostItemTypeEnum::Value) IFC4_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCostItemTypeEnum::operator Ifc4::IfcCostItemTypeEnum::Value() const { @@ -3163,22 +2752,11 @@ Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& v) { } const char* Ifc4::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCostScheduleTypeEnum::Value Ifc4::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCostScheduleTypeEnum::Value) IFC4_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCostScheduleTypeEnum::operator Ifc4::IfcCostScheduleTypeEnum::Value() const { @@ -3207,25 +2785,11 @@ Ifc4::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCoveringTypeEnum::Value Ifc4::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "USERDEFINED") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCoveringTypeEnum::Value) IFC4_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCoveringTypeEnum::operator Ifc4::IfcCoveringTypeEnum::Value() const { @@ -3254,17 +2818,11 @@ Ifc4::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& v) { } const char* Ifc4::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCrewResourceTypeEnum::Value Ifc4::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCrewResourceTypeEnum::Value) IFC4_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCrewResourceTypeEnum::operator Ifc4::IfcCrewResourceTypeEnum::Value() const { @@ -3293,15 +2851,11 @@ Ifc4::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) { } const char* Ifc4::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCurtainWallTypeEnum::Value Ifc4::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCurtainWallTypeEnum::Value) IFC4_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcCurtainWallTypeEnum::operator Ifc4::IfcCurtainWallTypeEnum::Value() const { @@ -3330,17 +2884,11 @@ Ifc4::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::string& v) } const char* Ifc4::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcCurveInterpolationEnum::Value Ifc4::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcCurveInterpolationEnum::Value) IFC4_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4::IfcCurveInterpolationEnum::operator Ifc4::IfcCurveInterpolationEnum::Value() const { @@ -3369,26 +2917,11 @@ Ifc4::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDamperTypeEnum::Value Ifc4::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDamperTypeEnum::Value) IFC4_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDamperTypeEnum::operator Ifc4::IfcDamperTypeEnum::Value() const { @@ -3417,18 +2950,11 @@ Ifc4::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDataOriginEnum::Value Ifc4::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDataOriginEnum::Value) IFC4_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4::IfcDataOriginEnum::operator Ifc4::IfcDataOriginEnum::Value() const { @@ -3457,66 +2983,11 @@ Ifc4::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDerivedUnitEnum::Value Ifc4::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDerivedUnitEnum::Value) IFC4_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4::IfcDerivedUnitEnum::operator Ifc4::IfcDerivedUnitEnum::Value() const { @@ -3545,15 +3016,11 @@ Ifc4::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDirectionSenseEnum::Value Ifc4::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDirectionSenseEnum::Value) IFC4_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4::IfcDirectionSenseEnum::operator Ifc4::IfcDirectionSenseEnum::Value() const { @@ -3582,18 +3049,11 @@ Ifc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std::stri } const char* Ifc4::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDiscreteAccessoryTypeEnum::Value Ifc4::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "USERDEFINED") return ::Ifc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDiscreteAccessoryTypeEnum::Value) IFC4_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDiscreteAccessoryTypeEnum::operator Ifc4::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -3622,23 +3082,11 @@ Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementTypeEn } const char* Ifc4::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDistributionChamberElementTypeEnum::Value Ifc4::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDistributionChamberElementTypeEnum::Value) IFC4_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDistributionChamberElementTypeEnum::operator Ifc4::IfcDistributionChamberElementTypeEnum::Value() const { @@ -3667,19 +3115,11 @@ Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std::string } const char* Ifc4::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDistributionPortTypeEnum::Value Ifc4::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "USERDEFINED") return ::Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDistributionPortTypeEnum::Value) IFC4_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDistributionPortTypeEnum::operator Ifc4::IfcDistributionPortTypeEnum::Value() const { @@ -3708,57 +3148,11 @@ Ifc4::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::string& v) } const char* Ifc4::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 44 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDistributionSystemEnum::Value Ifc4::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "USERDEFINED") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDistributionSystemEnum::Value) IFC4_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4::IfcDistributionSystemEnum::operator Ifc4::IfcDistributionSystemEnum::Value() const { @@ -3787,19 +3181,11 @@ Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std:: } const char* Ifc4::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDocumentConfidentialityEnum::Value Ifc4::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDocumentConfidentialityEnum::Value) IFC4_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4::IfcDocumentConfidentialityEnum::operator Ifc4::IfcDocumentConfidentialityEnum::Value() const { @@ -3828,18 +3214,11 @@ Ifc4::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDocumentStatusEnum::Value Ifc4::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDocumentStatusEnum::Value) IFC4_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4::IfcDocumentStatusEnum::operator Ifc4::IfcDocumentStatusEnum::Value() const { @@ -3868,22 +3247,11 @@ Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::string& v) } const char* Ifc4::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDoorPanelOperationEnum::Value Ifc4::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDoorPanelOperationEnum::Value) IFC4_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4::IfcDoorPanelOperationEnum::operator Ifc4::IfcDoorPanelOperationEnum::Value() const { @@ -3912,17 +3280,11 @@ Ifc4::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string& v) { } const char* Ifc4::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDoorPanelPositionEnum::Value Ifc4::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDoorPanelPositionEnum::Value) IFC4_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4::IfcDoorPanelPositionEnum::operator Ifc4::IfcDoorPanelPositionEnum::Value() const { @@ -3951,22 +3313,11 @@ Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std::stri } const char* Ifc4::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDoorStyleConstructionEnum::Value Ifc4::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDoorStyleConstructionEnum::Value) IFC4_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4::IfcDoorStyleConstructionEnum::operator Ifc4::IfcDoorStyleConstructionEnum::Value() const { @@ -3995,31 +3346,11 @@ Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::string& v) } const char* Ifc4::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDoorStyleOperationEnum::Value Ifc4::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDoorStyleOperationEnum::Value) IFC4_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4::IfcDoorStyleOperationEnum::operator Ifc4::IfcDoorStyleOperationEnum::Value() const { @@ -4048,18 +3379,11 @@ Ifc4::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDoorTypeEnum::Value Ifc4::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "USERDEFINED") return ::Ifc4::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDoorTypeEnum::Value) IFC4_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDoorTypeEnum::operator Ifc4::IfcDoorTypeEnum::Value() const { @@ -4088,33 +3412,11 @@ Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string& v) { } const char* Ifc4::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 20 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDoorTypeOperationEnum::Value Ifc4::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "USERDEFINED") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDoorTypeOperationEnum::Value) IFC4_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4::IfcDoorTypeOperationEnum::operator Ifc4::IfcDoorTypeOperationEnum::Value() const { @@ -4143,22 +3445,11 @@ Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) { } const char* Ifc4::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDuctFittingTypeEnum::Value Ifc4::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDuctFittingTypeEnum::Value) IFC4_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDuctFittingTypeEnum::operator Ifc4::IfcDuctFittingTypeEnum::Value() const { @@ -4187,17 +3478,11 @@ Ifc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) { } const char* Ifc4::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDuctSegmentTypeEnum::Value Ifc4::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDuctSegmentTypeEnum::Value) IFC4_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDuctSegmentTypeEnum::operator Ifc4::IfcDuctSegmentTypeEnum::Value() const { @@ -4226,18 +3511,11 @@ Ifc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& v) { } const char* Ifc4::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcDuctSilencerTypeEnum::Value Ifc4::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcDuctSilencerTypeEnum::Value) IFC4_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcDuctSilencerTypeEnum::operator Ifc4::IfcDuctSilencerTypeEnum::Value() const { @@ -4266,31 +3544,11 @@ Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::stri } const char* Ifc4::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElectricApplianceTypeEnum::Value Ifc4::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElectricApplianceTypeEnum::Value) IFC4_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElectricApplianceTypeEnum::operator Ifc4::IfcElectricApplianceTypeEnum::Value() const { @@ -4319,19 +3577,11 @@ Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEnum } const char* Ifc4::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElectricDistributionBoardTypeEnum::Value Ifc4::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElectricDistributionBoardTypeEnum::Value) IFC4_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElectricDistributionBoardTypeEnum::operator Ifc4::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -4360,20 +3610,11 @@ Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEnum } const char* Ifc4::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "USERDEFINED") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -4402,18 +3643,11 @@ Ifc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::stri } const char* Ifc4::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElectricGeneratorTypeEnum::Value Ifc4::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElectricGeneratorTypeEnum::Value) IFC4_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElectricGeneratorTypeEnum::operator Ifc4::IfcElectricGeneratorTypeEnum::Value() const { @@ -4442,20 +3676,11 @@ Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string& v) { } const char* Ifc4::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElectricMotorTypeEnum::Value Ifc4::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElectricMotorTypeEnum::Value) IFC4_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElectricMotorTypeEnum::operator Ifc4::IfcElectricMotorTypeEnum::Value() const { @@ -4484,18 +3709,11 @@ Ifc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std:: } const char* Ifc4::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElectricTimeControlTypeEnum::Value Ifc4::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElectricTimeControlTypeEnum::Value) IFC4_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElectricTimeControlTypeEnum::operator Ifc4::IfcElectricTimeControlTypeEnum::Value() const { @@ -4524,24 +3742,11 @@ Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::string& } const char* Ifc4::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElementAssemblyTypeEnum::Value Ifc4::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElementAssemblyTypeEnum::Value) IFC4_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcElementAssemblyTypeEnum::operator Ifc4::IfcElementAssemblyTypeEnum::Value() const { @@ -4570,16 +3775,11 @@ Ifc4::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::string& v) } const char* Ifc4::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcElementCompositionEnum::Value Ifc4::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcElementCompositionEnum::Value) IFC4_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4::IfcElementCompositionEnum::operator Ifc4::IfcElementCompositionEnum::Value() const { @@ -4608,17 +3808,11 @@ Ifc4::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcEngineTypeEnum::Value Ifc4::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcEngineTypeEnum::Value) IFC4_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcEngineTypeEnum::operator Ifc4::IfcEngineTypeEnum::Value() const { @@ -4647,24 +3841,11 @@ Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::stri } const char* Ifc4::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcEvaporativeCoolerTypeEnum::Value Ifc4::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcEvaporativeCoolerTypeEnum::Value) IFC4_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcEvaporativeCoolerTypeEnum::operator Ifc4::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -4693,21 +3874,11 @@ Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcEvaporatorTypeEnum::Value Ifc4::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcEvaporatorTypeEnum::Value) IFC4_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcEvaporatorTypeEnum::operator Ifc4::IfcEvaporatorTypeEnum::Value() const { @@ -4736,19 +3907,11 @@ Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& v) { } const char* Ifc4::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcEventTriggerTypeEnum::Value Ifc4::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcEventTriggerTypeEnum::Value) IFC4_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcEventTriggerTypeEnum::operator Ifc4::IfcEventTriggerTypeEnum::Value() const { @@ -4777,18 +3940,11 @@ Ifc4::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcEventTypeEnum::Value Ifc4::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcEventTypeEnum::Value) IFC4_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcEventTypeEnum::operator Ifc4::IfcEventTypeEnum::Value() const { @@ -4817,19 +3973,11 @@ Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(const } const char* Ifc4::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcExternalSpatialElementTypeEnum::Value Ifc4::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcExternalSpatialElementTypeEnum::Value) IFC4_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcExternalSpatialElementTypeEnum::operator Ifc4::IfcExternalSpatialElementTypeEnum::Value() const { @@ -4858,22 +4006,11 @@ Ifc4::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFanTypeEnum::Value Ifc4::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFanTypeEnum::Value) IFC4_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFanTypeEnum::operator Ifc4::IfcFanTypeEnum::Value() const { @@ -4902,18 +4039,11 @@ Ifc4::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFastenerTypeEnum::Value Ifc4::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFastenerTypeEnum::Value) IFC4_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFastenerTypeEnum::operator Ifc4::IfcFastenerTypeEnum::Value() const { @@ -4942,21 +4072,11 @@ Ifc4::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFilterTypeEnum::Value Ifc4::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFilterTypeEnum::Value) IFC4_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFilterTypeEnum::operator Ifc4::IfcFilterTypeEnum::Value() const { @@ -4985,20 +4105,11 @@ Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(con } const char* Ifc4::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFireSuppressionTerminalTypeEnum::Value Ifc4::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFireSuppressionTerminalTypeEnum::Value) IFC4_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFireSuppressionTerminalTypeEnum::operator Ifc4::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -5027,17 +4138,11 @@ Ifc4::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFlowDirectionEnum::Value Ifc4::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFlowDirectionEnum::Value) IFC4_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4::IfcFlowDirectionEnum::operator Ifc4::IfcFlowDirectionEnum::Value() const { @@ -5066,23 +4171,11 @@ Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::string& v) } const char* Ifc4::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFlowInstrumentTypeEnum::Value Ifc4::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "USERDEFINED") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFlowInstrumentTypeEnum::Value) IFC4_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFlowInstrumentTypeEnum::operator Ifc4::IfcFlowInstrumentTypeEnum::Value() const { @@ -5111,19 +4204,11 @@ Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFlowMeterTypeEnum::Value Ifc4::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFlowMeterTypeEnum::Value) IFC4_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFlowMeterTypeEnum::operator Ifc4::IfcFlowMeterTypeEnum::Value() const { @@ -5152,20 +4237,11 @@ Ifc4::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFootingTypeEnum::Value Ifc4::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFootingTypeEnum::Value) IFC4_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFootingTypeEnum::operator Ifc4::IfcFootingTypeEnum::Value() const { @@ -5194,22 +4270,11 @@ Ifc4::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcFurnitureTypeEnum::Value Ifc4::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "USERDEFINED") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcFurnitureTypeEnum::Value) IFC4_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcFurnitureTypeEnum::operator Ifc4::IfcFurnitureTypeEnum::Value() const { @@ -5238,16 +4303,11 @@ Ifc4::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std::stri } const char* Ifc4::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcGeographicElementTypeEnum::Value Ifc4::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "USERDEFINED") return ::Ifc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcGeographicElementTypeEnum::Value) IFC4_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcGeographicElementTypeEnum::operator Ifc4::IfcGeographicElementTypeEnum::Value() const { @@ -5276,22 +4336,11 @@ Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::string& } const char* Ifc4::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcGeometricProjectionEnum::Value Ifc4::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcGeometricProjectionEnum::Value) IFC4_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4::IfcGeometricProjectionEnum::operator Ifc4::IfcGeometricProjectionEnum::Value() const { @@ -5320,15 +4369,11 @@ Ifc4::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcGlobalOrLocalEnum::Value Ifc4::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcGlobalOrLocalEnum::Value) IFC4_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4::IfcGlobalOrLocalEnum::operator Ifc4::IfcGlobalOrLocalEnum::Value() const { @@ -5357,19 +4402,11 @@ Ifc4::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcGridTypeEnum::Value Ifc4::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcGridTypeEnum::Value) IFC4_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcGridTypeEnum::operator Ifc4::IfcGridTypeEnum::Value() const { @@ -5398,17 +4435,11 @@ Ifc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string& v) { } const char* Ifc4::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcHeatExchangerTypeEnum::Value Ifc4::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "USERDEFINED") return ::Ifc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcHeatExchangerTypeEnum::Value) IFC4_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcHeatExchangerTypeEnum::operator Ifc4::IfcHeatExchangerTypeEnum::Value() const { @@ -5437,28 +4468,11 @@ Ifc4::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcHumidifierTypeEnum::Value Ifc4::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcHumidifierTypeEnum::Value) IFC4_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcHumidifierTypeEnum::operator Ifc4::IfcHumidifierTypeEnum::Value() const { @@ -5487,19 +4501,11 @@ Ifc4::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) { } const char* Ifc4::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcInterceptorTypeEnum::Value Ifc4::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcInterceptorTypeEnum::Value) IFC4_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcInterceptorTypeEnum::operator Ifc4::IfcInterceptorTypeEnum::Value() const { @@ -5528,19 +4534,11 @@ Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::string& v) } const char* Ifc4::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcInternalOrExternalEnum::Value Ifc4::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcInternalOrExternalEnum::Value) IFC4_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4::IfcInternalOrExternalEnum::operator Ifc4::IfcInternalOrExternalEnum::Value() const { @@ -5569,18 +4567,11 @@ Ifc4::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcInventoryTypeEnum::Value Ifc4::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcInventoryTypeEnum::Value) IFC4_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcInventoryTypeEnum::operator Ifc4::IfcInventoryTypeEnum::Value() const { @@ -5609,17 +4600,11 @@ Ifc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) { } const char* Ifc4::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcJunctionBoxTypeEnum::Value Ifc4::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcJunctionBoxTypeEnum::Value) IFC4_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcJunctionBoxTypeEnum::operator Ifc4::IfcJunctionBoxTypeEnum::Value() const { @@ -5648,17 +4633,11 @@ Ifc4::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4::IfcKnotType::Value Ifc4::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcKnotType::Value) IFC4_IfcKnotType_type->lookup_enum_offset(s); } Ifc4::IfcKnotType::operator Ifc4::IfcKnotType::Value() const { @@ -5687,34 +4666,11 @@ Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string& v) { } const char* Ifc4::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLaborResourceTypeEnum::Value Ifc4::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLaborResourceTypeEnum::Value) IFC4_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcLaborResourceTypeEnum::operator Ifc4::IfcLaborResourceTypeEnum::Value() const { @@ -5743,24 +4699,11 @@ Ifc4::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLampTypeEnum::Value Ifc4::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLampTypeEnum::Value) IFC4_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcLampTypeEnum::operator Ifc4::IfcLampTypeEnum::Value() const { @@ -5789,16 +4732,11 @@ Ifc4::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string& v) { } const char* Ifc4::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLayerSetDirectionEnum::Value Ifc4::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLayerSetDirectionEnum::Value) IFC4_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4::IfcLayerSetDirectionEnum::operator Ifc4::IfcLayerSetDirectionEnum::Value() const { @@ -5827,17 +4765,11 @@ Ifc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std::st } const char* Ifc4::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLightDistributionCurveEnum::Value Ifc4::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLightDistributionCurveEnum::Value) IFC4_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4::IfcLightDistributionCurveEnum::operator Ifc4::IfcLightDistributionCurveEnum::Value() const { @@ -5866,24 +4798,11 @@ Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::string& } const char* Ifc4::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLightEmissionSourceEnum::Value Ifc4::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLightEmissionSourceEnum::Value) IFC4_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4::IfcLightEmissionSourceEnum::operator Ifc4::IfcLightEmissionSourceEnum::Value() const { @@ -5912,18 +4831,11 @@ Ifc4::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& v) { } const char* Ifc4::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLightFixtureTypeEnum::Value Ifc4::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLightFixtureTypeEnum::Value) IFC4_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcLightFixtureTypeEnum::operator Ifc4::IfcLightFixtureTypeEnum::Value() const { @@ -5952,18 +4864,11 @@ Ifc4::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLoadGroupTypeEnum::Value Ifc4::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLoadGroupTypeEnum::Value) IFC4_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcLoadGroupTypeEnum::operator Ifc4::IfcLoadGroupTypeEnum::Value() const { @@ -5992,18 +4897,11 @@ Ifc4::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) { } const char* Ifc4::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcLogicalOperatorEnum::Value Ifc4::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcLogicalOperatorEnum::Value) IFC4_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4::IfcLogicalOperatorEnum::operator Ifc4::IfcLogicalOperatorEnum::Value() const { @@ -6032,25 +4930,11 @@ Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const std::st } const char* Ifc4::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcMechanicalFastenerTypeEnum::Value Ifc4::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "USERDEFINED") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcMechanicalFastenerTypeEnum::Value) IFC4_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcMechanicalFastenerTypeEnum::operator Ifc4::IfcMechanicalFastenerTypeEnum::Value() const { @@ -6079,20 +4963,11 @@ Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string& v) { } const char* Ifc4::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcMedicalDeviceTypeEnum::Value Ifc4::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcMedicalDeviceTypeEnum::Value) IFC4_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcMedicalDeviceTypeEnum::operator Ifc4::IfcMedicalDeviceTypeEnum::Value() const { @@ -6121,27 +4996,11 @@ Ifc4::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcMemberTypeEnum::Value Ifc4::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "USERDEFINED") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcMemberTypeEnum::Value) IFC4_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcMemberTypeEnum::operator Ifc4::IfcMemberTypeEnum::Value() const { @@ -6170,18 +5029,11 @@ Ifc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::string& } const char* Ifc4::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcMotorConnectionTypeEnum::Value Ifc4::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcMotorConnectionTypeEnum::Value) IFC4_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcMotorConnectionTypeEnum::operator Ifc4::IfcMotorConnectionTypeEnum::Value() const { @@ -6210,14 +5062,11 @@ Ifc4::IfcNullStyle::IfcNullStyle(const std::string& v) { } const char* Ifc4::IfcNullStyle::ToString(Value v) { - if ( v < 0 || v >= 1 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NULL" }; - return names[v]; + return IFC4_IfcNullStyle_type->lookup_enum_value((size_t) v); } Ifc4::IfcNullStyle::Value Ifc4::IfcNullStyle::FromString(const std::string& s) { - if (s == "NULL") return ::Ifc4::IfcNullStyle::IfcNullStyle_NULL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcNullStyle::Value) IFC4_IfcNullStyle_type->lookup_enum_offset(s); } Ifc4::IfcNullStyle::operator Ifc4::IfcNullStyle::Value() const { @@ -6246,21 +5095,11 @@ Ifc4::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcObjectTypeEnum::Value Ifc4::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcObjectTypeEnum::Value) IFC4_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcObjectTypeEnum::operator Ifc4::IfcObjectTypeEnum::Value() const { @@ -6289,26 +5128,11 @@ Ifc4::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcObjectiveEnum::Value Ifc4::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcObjectiveEnum::Value) IFC4_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4::IfcObjectiveEnum::operator Ifc4::IfcObjectiveEnum::Value() const { @@ -6337,22 +5161,11 @@ Ifc4::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcOccupantTypeEnum::Value Ifc4::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcOccupantTypeEnum::Value) IFC4_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcOccupantTypeEnum::operator Ifc4::IfcOccupantTypeEnum::Value() const { @@ -6381,17 +5194,11 @@ Ifc4::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::string& v) } const char* Ifc4::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcOpeningElementTypeEnum::Value Ifc4::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcOpeningElementTypeEnum::Value) IFC4_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcOpeningElementTypeEnum::operator Ifc4::IfcOpeningElementTypeEnum::Value() const { @@ -6420,20 +5227,11 @@ Ifc4::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcOutletTypeEnum::Value Ifc4::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcOutletTypeEnum::Value) IFC4_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcOutletTypeEnum::operator Ifc4::IfcOutletTypeEnum::Value() const { @@ -6462,15 +5260,11 @@ Ifc4::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const std::st } const char* Ifc4::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPerformanceHistoryTypeEnum::Value Ifc4::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPerformanceHistoryTypeEnum::Value) IFC4_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPerformanceHistoryTypeEnum::operator Ifc4::IfcPerformanceHistoryTypeEnum::Value() const { @@ -6499,18 +5293,11 @@ Ifc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(const } const char* Ifc4::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPermeableCoveringOperationEnum::Value Ifc4::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPermeableCoveringOperationEnum::Value) IFC4_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4::IfcPermeableCoveringOperationEnum::operator Ifc4::IfcPermeableCoveringOperationEnum::Value() const { @@ -6539,18 +5326,11 @@ Ifc4::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPermitTypeEnum::Value Ifc4::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPermitTypeEnum::Value) IFC4_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPermitTypeEnum::operator Ifc4::IfcPermitTypeEnum::Value() const { @@ -6579,16 +5359,11 @@ Ifc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string& v) { } const char* Ifc4::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPhysicalOrVirtualEnum::Value Ifc4::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPhysicalOrVirtualEnum::Value) IFC4_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4::IfcPhysicalOrVirtualEnum::operator Ifc4::IfcPhysicalOrVirtualEnum::Value() const { @@ -6617,19 +5392,11 @@ Ifc4::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& v) { } const char* Ifc4::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPileConstructionEnum::Value Ifc4::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPileConstructionEnum::Value) IFC4_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4::IfcPileConstructionEnum::operator Ifc4::IfcPileConstructionEnum::Value() const { @@ -6658,21 +5425,11 @@ Ifc4::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPileTypeEnum::Value Ifc4::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPileTypeEnum::Value) IFC4_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPileTypeEnum::operator Ifc4::IfcPileTypeEnum::Value() const { @@ -6701,22 +5458,11 @@ Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) { } const char* Ifc4::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPipeFittingTypeEnum::Value Ifc4::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPipeFittingTypeEnum::Value) IFC4_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPipeFittingTypeEnum::operator Ifc4::IfcPipeFittingTypeEnum::Value() const { @@ -6745,20 +5491,11 @@ Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) { } const char* Ifc4::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPipeSegmentTypeEnum::Value Ifc4::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPipeSegmentTypeEnum::Value) IFC4_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPipeSegmentTypeEnum::operator Ifc4::IfcPipeSegmentTypeEnum::Value() const { @@ -6787,17 +5524,11 @@ Ifc4::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPlateTypeEnum::Value Ifc4::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "USERDEFINED") return ::Ifc4::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPlateTypeEnum::Value) IFC4_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPlateTypeEnum::operator Ifc4::IfcPlateTypeEnum::Value() const { @@ -6826,16 +5557,11 @@ Ifc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresenta } const char* Ifc4::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4::IfcPreferredSurfaceCurveRepresentation::Value Ifc4::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPreferredSurfaceCurveRepresentation::Value) IFC4_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4::IfcPreferredSurfaceCurveRepresentation::operator Ifc4::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -6864,22 +5590,11 @@ Ifc4::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProcedureTypeEnum::Value Ifc4::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProcedureTypeEnum::Value) IFC4_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcProcedureTypeEnum::operator Ifc4::IfcProcedureTypeEnum::Value() const { @@ -6908,15 +5623,11 @@ Ifc4::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProfileTypeEnum::Value Ifc4::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProfileTypeEnum::Value) IFC4_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcProfileTypeEnum::operator Ifc4::IfcProfileTypeEnum::Value() const { @@ -6945,20 +5656,11 @@ Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& v) { } const char* Ifc4::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProjectOrderTypeEnum::Value Ifc4::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProjectOrderTypeEnum::Value) IFC4_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcProjectOrderTypeEnum::operator Ifc4::IfcProjectOrderTypeEnum::Value() const { @@ -6987,15 +5689,11 @@ Ifc4::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::stri } const char* Ifc4::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProjectedOrTrueLengthEnum::Value Ifc4::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProjectedOrTrueLengthEnum::Value) IFC4_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4::IfcProjectedOrTrueLengthEnum::operator Ifc4::IfcProjectedOrTrueLengthEnum::Value() const { @@ -7024,15 +5722,11 @@ Ifc4::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std::stri } const char* Ifc4::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProjectionElementTypeEnum::Value Ifc4::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProjectionElementTypeEnum::Value) IFC4_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcProjectionElementTypeEnum::operator Ifc4::IfcProjectionElementTypeEnum::Value() const { @@ -7061,21 +5755,11 @@ Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const std:: } const char* Ifc4::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPropertySetTemplateTypeEnum::Value Ifc4::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPropertySetTemplateTypeEnum::Value) IFC4_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPropertySetTemplateTypeEnum::operator Ifc4::IfcPropertySetTemplateTypeEnum::Value() const { @@ -7104,19 +5788,11 @@ Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitTy } const char* Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -7145,22 +5821,11 @@ Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::string } const char* Ifc4::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcProtectiveDeviceTypeEnum::Value Ifc4::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "USERDEFINED") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcProtectiveDeviceTypeEnum::Value) IFC4_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcProtectiveDeviceTypeEnum::operator Ifc4::IfcProtectiveDeviceTypeEnum::Value() const { @@ -7189,22 +5854,11 @@ Ifc4::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcPumpTypeEnum::Value Ifc4::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcPumpTypeEnum::Value) IFC4_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcPumpTypeEnum::operator Ifc4::IfcPumpTypeEnum::Value() const { @@ -7233,18 +5887,11 @@ Ifc4::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcRailingTypeEnum::Value Ifc4::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "USERDEFINED") return ::Ifc4::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcRailingTypeEnum::Value) IFC4_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcRailingTypeEnum::operator Ifc4::IfcRailingTypeEnum::Value() const { @@ -7273,17 +5920,11 @@ Ifc4::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcRampFlightTypeEnum::Value Ifc4::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcRampFlightTypeEnum::Value) IFC4_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcRampFlightTypeEnum::operator Ifc4::IfcRampFlightTypeEnum::Value() const { @@ -7312,21 +5953,11 @@ Ifc4::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcRampTypeEnum::Value Ifc4::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcRampTypeEnum::Value) IFC4_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcRampTypeEnum::operator Ifc4::IfcRampTypeEnum::Value() const { @@ -7355,21 +5986,11 @@ Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcRecurrenceTypeEnum::Value Ifc4::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcRecurrenceTypeEnum::Value) IFC4_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcRecurrenceTypeEnum::operator Ifc4::IfcRecurrenceTypeEnum::Value() const { @@ -7398,23 +6019,11 @@ Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string& v) { } const char* Ifc4::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcReflectanceMethodEnum::Value Ifc4::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcReflectanceMethodEnum::Value) IFC4_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4::IfcReflectanceMethodEnum::operator Ifc4::IfcReflectanceMethodEnum::Value() const { @@ -7443,23 +6052,11 @@ Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::string& v) } const char* Ifc4::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcReinforcingBarRoleEnum::Value Ifc4::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcReinforcingBarRoleEnum::Value) IFC4_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4::IfcReinforcingBarRoleEnum::operator Ifc4::IfcReinforcingBarRoleEnum::Value() const { @@ -7488,15 +6085,11 @@ Ifc4::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::stri } const char* Ifc4::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcReinforcingBarSurfaceEnum::Value Ifc4::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcReinforcingBarSurfaceEnum::Value) IFC4_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4::IfcReinforcingBarSurfaceEnum::operator Ifc4::IfcReinforcingBarSurfaceEnum::Value() const { @@ -7525,23 +6118,11 @@ Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::string& v) } const char* Ifc4::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcReinforcingBarTypeEnum::Value Ifc4::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "USERDEFINED") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcReinforcingBarTypeEnum::Value) IFC4_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcReinforcingBarTypeEnum::operator Ifc4::IfcReinforcingBarTypeEnum::Value() const { @@ -7570,15 +6151,11 @@ Ifc4::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::string& } const char* Ifc4::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcReinforcingMeshTypeEnum::Value Ifc4::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcReinforcingMeshTypeEnum::Value) IFC4_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcReinforcingMeshTypeEnum::operator Ifc4::IfcReinforcingMeshTypeEnum::Value() const { @@ -7607,36 +6184,11 @@ Ifc4::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcRoleEnum::Value Ifc4::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcRoleEnum::Value) IFC4_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4::IfcRoleEnum::operator Ifc4::IfcRoleEnum::Value() const { @@ -7665,28 +6217,11 @@ Ifc4::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcRoofTypeEnum::Value Ifc4::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcRoofTypeEnum::Value) IFC4_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcRoofTypeEnum::operator Ifc4::IfcRoofTypeEnum::Value() const { @@ -7715,29 +6250,11 @@ Ifc4::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4::IfcSIPrefix::Value Ifc4::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSIPrefix::Value) IFC4_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4::IfcSIPrefix::operator Ifc4::IfcSIPrefix::Value() const { @@ -7766,43 +6283,11 @@ Ifc4::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4::IfcSIUnitName::Value Ifc4::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSIUnitName::Value) IFC4_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4::IfcSIUnitName::operator Ifc4::IfcSIUnitName::Value() const { @@ -7831,25 +6316,11 @@ Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::string } const char* Ifc4::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSanitaryTerminalTypeEnum::Value Ifc4::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSanitaryTerminalTypeEnum::Value) IFC4_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSanitaryTerminalTypeEnum::operator Ifc4::IfcSanitaryTerminalTypeEnum::Value() const { @@ -7878,15 +6349,11 @@ Ifc4::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSectionTypeEnum::Value Ifc4::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSectionTypeEnum::Value) IFC4_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSectionTypeEnum::operator Ifc4::IfcSectionTypeEnum::Value() const { @@ -7915,39 +6382,11 @@ Ifc4::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSensorTypeEnum::Value Ifc4::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "USERDEFINED") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSensorTypeEnum::Value) IFC4_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSensorTypeEnum::operator Ifc4::IfcSensorTypeEnum::Value() const { @@ -7976,19 +6415,11 @@ Ifc4::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSequenceEnum::Value Ifc4::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSequenceEnum::Value) IFC4_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4::IfcSequenceEnum::operator Ifc4::IfcSequenceEnum::Value() const { @@ -8017,18 +6448,11 @@ Ifc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string& v) { } const char* Ifc4::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcShadingDeviceTypeEnum::Value Ifc4::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcShadingDeviceTypeEnum::Value) IFC4_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcShadingDeviceTypeEnum::operator Ifc4::IfcShadingDeviceTypeEnum::Value() const { @@ -8057,25 +6481,11 @@ Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(const } const char* Ifc4::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSimplePropertyTemplateTypeEnum::Value Ifc4::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSimplePropertyTemplateTypeEnum::Value) IFC4_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSimplePropertyTemplateTypeEnum::operator Ifc4::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -8104,19 +6514,11 @@ Ifc4::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSlabTypeEnum::Value Ifc4::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "USERDEFINED") return ::Ifc4::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSlabTypeEnum::Value) IFC4_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSlabTypeEnum::operator Ifc4::IfcSlabTypeEnum::Value() const { @@ -8145,17 +6547,11 @@ Ifc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) { } const char* Ifc4::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSolarDeviceTypeEnum::Value Ifc4::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSolarDeviceTypeEnum::Value) IFC4_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSolarDeviceTypeEnum::operator Ifc4::IfcSolarDeviceTypeEnum::Value() const { @@ -8184,17 +6580,11 @@ Ifc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) { } const char* Ifc4::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSpaceHeaterTypeEnum::Value Ifc4::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSpaceHeaterTypeEnum::Value) IFC4_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSpaceHeaterTypeEnum::operator Ifc4::IfcSpaceHeaterTypeEnum::Value() const { @@ -8223,20 +6613,11 @@ Ifc4::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSpaceTypeEnum::Value Ifc4::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "USERDEFINED") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSpaceTypeEnum::Value) IFC4_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSpaceTypeEnum::operator Ifc4::IfcSpaceTypeEnum::Value() const { @@ -8265,23 +6646,11 @@ Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) { } const char* Ifc4::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSpatialZoneTypeEnum::Value Ifc4::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "USERDEFINED") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSpatialZoneTypeEnum::Value) IFC4_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSpatialZoneTypeEnum::operator Ifc4::IfcSpatialZoneTypeEnum::Value() const { @@ -8310,18 +6679,11 @@ Ifc4::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string& v) { } const char* Ifc4::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStackTerminalTypeEnum::Value Ifc4::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStackTerminalTypeEnum::Value) IFC4_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStackTerminalTypeEnum::operator Ifc4::IfcStackTerminalTypeEnum::Value() const { @@ -8350,20 +6712,11 @@ Ifc4::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) { } const char* Ifc4::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStairFlightTypeEnum::Value Ifc4::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStairFlightTypeEnum::Value) IFC4_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStairFlightTypeEnum::operator Ifc4::IfcStairFlightTypeEnum::Value() const { @@ -8392,29 +6745,11 @@ Ifc4::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStairTypeEnum::Value Ifc4::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "USERDEFINED") return ::Ifc4::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStairTypeEnum::Value) IFC4_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStairTypeEnum::operator Ifc4::IfcStairTypeEnum::Value() const { @@ -8443,18 +6778,11 @@ Ifc4::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStateEnum::Value Ifc4::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStateEnum::Value) IFC4_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4::IfcStateEnum::operator Ifc4::IfcStateEnum::Value() const { @@ -8483,22 +6811,11 @@ Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(con } const char* Ifc4::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStructuralCurveActivityTypeEnum::Value Ifc4::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStructuralCurveActivityTypeEnum::Value) IFC4_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStructuralCurveActivityTypeEnum::operator Ifc4::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -8527,20 +6844,11 @@ Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(const s } const char* Ifc4::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStructuralCurveMemberTypeEnum::Value Ifc4::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStructuralCurveMemberTypeEnum::Value) IFC4_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStructuralCurveMemberTypeEnum::operator Ifc4::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -8569,19 +6877,11 @@ Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEnum } const char* Ifc4::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -8610,18 +6910,11 @@ Ifc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(con } const char* Ifc4::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -8650,17 +6943,11 @@ Ifc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const std:: } const char* Ifc4::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSubContractResourceTypeEnum::Value Ifc4::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSubContractResourceTypeEnum::Value) IFC4_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSubContractResourceTypeEnum::operator Ifc4::IfcSubContractResourceTypeEnum::Value() const { @@ -8689,18 +6976,11 @@ Ifc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::string& v) } const char* Ifc4::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSurfaceFeatureTypeEnum::Value Ifc4::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "USERDEFINED") return ::Ifc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSurfaceFeatureTypeEnum::Value) IFC4_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSurfaceFeatureTypeEnum::operator Ifc4::IfcSurfaceFeatureTypeEnum::Value() const { @@ -8729,16 +7009,11 @@ Ifc4::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4::IfcSurfaceSide::Value Ifc4::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSurfaceSide::Value) IFC4_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4::IfcSurfaceSide::operator Ifc4::IfcSurfaceSide::Value() const { @@ -8767,24 +7042,11 @@ Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::string& } const char* Ifc4::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSwitchingDeviceTypeEnum::Value Ifc4::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "USERDEFINED") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSwitchingDeviceTypeEnum::Value) IFC4_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSwitchingDeviceTypeEnum::operator Ifc4::IfcSwitchingDeviceTypeEnum::Value() const { @@ -8813,17 +7075,11 @@ Ifc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(const } const char* Ifc4::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcSystemFurnitureElementTypeEnum::Value Ifc4::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "USERDEFINED") return ::Ifc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcSystemFurnitureElementTypeEnum::Value) IFC4_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcSystemFurnitureElementTypeEnum::operator Ifc4::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -8852,22 +7108,11 @@ Ifc4::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTankTypeEnum::Value Ifc4::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "USERDEFINED") return ::Ifc4::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTankTypeEnum::Value) IFC4_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTankTypeEnum::operator Ifc4::IfcTankTypeEnum::Value() const { @@ -8896,16 +7141,11 @@ Ifc4::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTaskDurationEnum::Value Ifc4::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTaskDurationEnum::Value) IFC4_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4::IfcTaskDurationEnum::operator Ifc4::IfcTaskDurationEnum::Value() const { @@ -8934,27 +7174,11 @@ Ifc4::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTaskTypeEnum::Value Ifc4::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTaskTypeEnum::Value) IFC4_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTaskTypeEnum::operator Ifc4::IfcTaskTypeEnum::Value() const { @@ -8983,18 +7207,11 @@ Ifc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& v) { } const char* Ifc4::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTendonAnchorTypeEnum::Value Ifc4::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTendonAnchorTypeEnum::Value) IFC4_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTendonAnchorTypeEnum::operator Ifc4::IfcTendonAnchorTypeEnum::Value() const { @@ -9023,19 +7240,11 @@ Ifc4::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTendonTypeEnum::Value Ifc4::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTendonTypeEnum::Value) IFC4_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTendonTypeEnum::operator Ifc4::IfcTendonTypeEnum::Value() const { @@ -9064,17 +7273,11 @@ Ifc4::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4::IfcTextPath::Value Ifc4::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTextPath::Value) IFC4_IfcTextPath_type->lookup_enum_offset(s); } Ifc4::IfcTextPath::operator Ifc4::IfcTextPath::Value() const { @@ -9103,20 +7306,11 @@ Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::string& v) } const char* Ifc4::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTimeSeriesDataTypeEnum::Value Ifc4::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTimeSeriesDataTypeEnum::Value) IFC4_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTimeSeriesDataTypeEnum::operator Ifc4::IfcTimeSeriesDataTypeEnum::Value() const { @@ -9145,20 +7339,11 @@ Ifc4::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) { } const char* Ifc4::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTransformerTypeEnum::Value Ifc4::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "USERDEFINED") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTransformerTypeEnum::Value) IFC4_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTransformerTypeEnum::operator Ifc4::IfcTransformerTypeEnum::Value() const { @@ -9187,17 +7372,11 @@ Ifc4::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4::IfcTransitionCode::Value Ifc4::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTransitionCode::Value) IFC4_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4::IfcTransitionCode::operator Ifc4::IfcTransitionCode::Value() const { @@ -9226,20 +7405,11 @@ Ifc4::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::string } const char* Ifc4::IfcTransportElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTransportElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTransportElementTypeEnum::Value Ifc4::IfcTransportElementTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_LIFTINGGEAR; - if (s == "USERDEFINED") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTransportElementTypeEnum::IfcTransportElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTransportElementTypeEnum::Value) IFC4_IfcTransportElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTransportElementTypeEnum::operator Ifc4::IfcTransportElementTypeEnum::Value() const { @@ -9268,16 +7438,11 @@ Ifc4::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4::IfcTrimmingPreference::Value Ifc4::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTrimmingPreference::Value) IFC4_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4::IfcTrimmingPreference::operator Ifc4::IfcTrimmingPreference::Value() const { @@ -9306,16 +7471,11 @@ Ifc4::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcTubeBundleTypeEnum::Value Ifc4::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcTubeBundleTypeEnum::Value) IFC4_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcTubeBundleTypeEnum::operator Ifc4::IfcTubeBundleTypeEnum::Value() const { @@ -9344,43 +7504,11 @@ Ifc4::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcUnitEnum::Value Ifc4::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcUnitEnum::Value) IFC4_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4::IfcUnitEnum::operator Ifc4::IfcUnitEnum::Value() const { @@ -9409,23 +7537,11 @@ Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(const s } const char* Ifc4::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcUnitaryControlElementTypeEnum::Value Ifc4::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "USERDEFINED") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcUnitaryControlElementTypeEnum::Value) IFC4_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcUnitaryControlElementTypeEnum::operator Ifc4::IfcUnitaryControlElementTypeEnum::Value() const { @@ -9454,20 +7570,11 @@ Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::string } const char* Ifc4::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcUnitaryEquipmentTypeEnum::Value Ifc4::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcUnitaryEquipmentTypeEnum::Value) IFC4_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcUnitaryEquipmentTypeEnum::operator Ifc4::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -9496,36 +7603,11 @@ Ifc4::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcValveTypeEnum::Value Ifc4::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcValveTypeEnum::Value) IFC4_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcValveTypeEnum::operator Ifc4::IfcValveTypeEnum::Value() const { @@ -9554,17 +7636,11 @@ Ifc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::stri } const char* Ifc4::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcVibrationIsolatorTypeEnum::Value Ifc4::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "USERDEFINED") return ::Ifc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcVibrationIsolatorTypeEnum::Value) IFC4_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcVibrationIsolatorTypeEnum::operator Ifc4::IfcVibrationIsolatorTypeEnum::Value() const { @@ -9593,21 +7669,11 @@ Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::string& v) } const char* Ifc4::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcVoidingFeatureTypeEnum::Value Ifc4::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcVoidingFeatureTypeEnum::Value) IFC4_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcVoidingFeatureTypeEnum::operator Ifc4::IfcVoidingFeatureTypeEnum::Value() const { @@ -9636,24 +7702,11 @@ Ifc4::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWallTypeEnum::Value Ifc4::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "USERDEFINED") return ::Ifc4::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWallTypeEnum::Value) IFC4_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcWallTypeEnum::operator Ifc4::IfcWallTypeEnum::Value() const { @@ -9682,22 +7735,11 @@ Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string& v) { } const char* Ifc4::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWasteTerminalTypeEnum::Value Ifc4::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWasteTerminalTypeEnum::Value) IFC4_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcWasteTerminalTypeEnum::operator Ifc4::IfcWasteTerminalTypeEnum::Value() const { @@ -9726,27 +7768,11 @@ Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::string } const char* Ifc4::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWindowPanelOperationEnum::Value Ifc4::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWindowPanelOperationEnum::Value) IFC4_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4::IfcWindowPanelOperationEnum::operator Ifc4::IfcWindowPanelOperationEnum::Value() const { @@ -9775,19 +7801,11 @@ Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::string& } const char* Ifc4::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWindowPanelPositionEnum::Value Ifc4::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWindowPanelPositionEnum::Value) IFC4_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4::IfcWindowPanelPositionEnum::operator Ifc4::IfcWindowPanelPositionEnum::Value() const { @@ -9816,21 +7834,11 @@ Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const std:: } const char* Ifc4::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWindowStyleConstructionEnum::Value Ifc4::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWindowStyleConstructionEnum::Value) IFC4_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4::IfcWindowStyleConstructionEnum::operator Ifc4::IfcWindowStyleConstructionEnum::Value() const { @@ -9859,24 +7867,11 @@ Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std::string } const char* Ifc4::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWindowStyleOperationEnum::Value Ifc4::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWindowStyleOperationEnum::Value) IFC4_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4::IfcWindowStyleOperationEnum::operator Ifc4::IfcWindowStyleOperationEnum::Value() const { @@ -9905,18 +7900,11 @@ Ifc4::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWindowTypeEnum::Value Ifc4::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWindowTypeEnum::Value) IFC4_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcWindowTypeEnum::operator Ifc4::IfcWindowTypeEnum::Value() const { @@ -9945,24 +7933,11 @@ Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const std::st } const char* Ifc4::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWindowTypePartitioningEnum::Value Ifc4::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWindowTypePartitioningEnum::Value) IFC4_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4::IfcWindowTypePartitioningEnum::operator Ifc4::IfcWindowTypePartitioningEnum::Value() const { @@ -9991,18 +7966,11 @@ Ifc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& v) { } const char* Ifc4::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWorkCalendarTypeEnum::Value Ifc4::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWorkCalendarTypeEnum::Value) IFC4_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcWorkCalendarTypeEnum::operator Ifc4::IfcWorkCalendarTypeEnum::Value() const { @@ -10031,18 +7999,11 @@ Ifc4::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWorkPlanTypeEnum::Value Ifc4::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWorkPlanTypeEnum::Value) IFC4_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcWorkPlanTypeEnum::operator Ifc4::IfcWorkPlanTypeEnum::Value() const { @@ -10071,18 +8032,11 @@ Ifc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& v) { } const char* Ifc4::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4::IfcWorkScheduleTypeEnum::Value Ifc4::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4::IfcWorkScheduleTypeEnum::Value) IFC4_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4::IfcWorkScheduleTypeEnum::operator Ifc4::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x1-schema.cpp b/src/ifcparse/Ifc4x1-schema.cpp index 277c319cc6..53c0e25a69 100644 --- a/src/ifcparse/Ifc4x1-schema.cpp +++ b/src/ifcparse/Ifc4x1-schema.cpp @@ -2381,6 +2381,3387 @@ class IFC4X1_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"IfcAlignmentTypeEnum"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"FOUNDATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"IfcDoorTypeOperationEnum"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"CONSUMERUNIT"s, +"DISTRIBUTIONBOARD"s, +"MOTORCONTROLCENTRE"s, +"SWITCHBOARD"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"GIRDER"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"TRUSS"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNullStyle"s, +"NULL"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"CULVERT"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"GUARDRAIL"s, +"BALUSTRADE"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"KILOPOINT"s, +"MILEPOINT"s, +"STATION"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"STORAGE"s, +"VESSEL"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"COUPLER"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTransitionCurveType"s, +"BIQUADRATICPARABOLA"s, +"BLOSSCURVE"s, +"CLOTHOIDCURVE"s, +"COSINECURVE"s, +"CUBICPARABOLA"s, +"SINECURVE"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcPresentationStyleAssignment"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcDerivedMeasureValue"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcStyleAssignmentSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientationExpression"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcPresentationStyleSelect"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAlignment2DHorizontal"s, +"IfcAlignment2DSegment"s, +"IfcAlignment2DVertical"s, +"IfcAlignment2DVerticalSegment"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcDirection"s, +"IfcDistanceExpression"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAlignment2DHorizontalSegment"s, +"IfcAlignment2DVerSegCircularArc"s, +"IfcAlignment2DVerSegLine"s, +"IfcAlignment2DVerSegParabolicArc"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuilding"s, +"IfcBuildingElementType"s, +"IfcBuildingStorey"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCurveSegment2D"s, +"IfcCylindricalSurface"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLineSegment2D"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMotorConnectionType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailingType"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAggregates"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcShadingDeviceType"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonType"s, +"IfcTransformerType"s, +"IfcTransitionCurveSegment2D"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignmentCurve"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBuildingElement"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxy"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCircularArcSegment2D"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMotorConnection"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBoiler"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"StartDistAlong"s, +"Segments"s, +"CurveGeometry"s, +"TangentialContinuity"s, +"StartTag"s, +"EndTag"s, +"Radius"s, +"IsConvex"s, +"ParabolaConstant"s, +"HorizontalLength"s, +"StartHeight"s, +"StartGradient"s, +"Horizontal"s, +"Vertical"s, +"Tag"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"IsCCW"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Transition"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"StartPoint"s, +"StartDirection"s, +"SegmentLength"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"AlongHorizontal"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"ModelorDraughting"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"PlacementRelTo"s, +"Distance"s, +"CartesianPosition"s, +"RelativePlacement"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"LateralAxisDirection"s, +"VerticalAxisDirection"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"Placement"s, +"SizeInX"s, +"SizeInY"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"Styles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"RestartDistance"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"FixedAxisVertical"s, +"SpineCurve"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"StartRadius"s, +"EndRadius"s, +"IsStartRadiusCCW"s, +"IsEndRadiusCCW"s, +"TransitionCurveType"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ToAlignmentCurve"s, +"ToHorizontal"s, +"ToVertical"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"UsingCurves"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"ReferencedInStructures"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"ReferencedByPlacements"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4X1"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2392,13076 +5773,10327 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4X1_populate_schema() { - IFC4X1_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 39, items); - } - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 42, items); - } - IFC4X1_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 43, new simple_type(simple_type::real_type)); - IFC4X1_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 55, new simple_type(simple_type::real_type)); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_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"); - IFC4X1_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 97, 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"); - IFC4X1_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 100, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BEAM"); - items.push_back("HOLLOWCORE"); - items.push_back("JOIST"); - items.push_back("LINTEL"); - items.push_back("NOTDEFINED"); - items.push_back("SPANDREL"); - items.push_back("T_BEAM"); - items.push_back("USERDEFINED"); - IFC4X1_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 71, 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"); - IFC4X1_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 72, items); - } - IFC4X1_IfcBinary_type = new type_declaration("IfcBinary", 74, 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"); - IFC4X1_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 79, items); - } - IFC4X1_IfcBoolean_type = new type_declaration("IfcBoolean", 80, 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"); - IFC4X1_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 83, items); - } - { - std::vector items; items.reserve(4); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("USERDEFINED"); - IFC4X1_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 106, 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"); - IFC4X1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 109, items); - } - { - std::vector items; items.reserve(8); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("SHADING"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X1_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 113, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 116, 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"); - IFC4X1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 119, 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"); - IFC4X1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 122, 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"); - IFC4X1_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 125, 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"); - IFC4X1_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 128, items); - } - IFC4X1_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 129, 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"); - IFC4X1_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 140, 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"); - IFC4X1_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 143, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 146, 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"); - IFC4X1_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 160, items); - } - { - std::vector items; items.reserve(4); - items.push_back("COLUMN"); - items.push_back("NOTDEFINED"); - items.push_back("PILASTER"); - items.push_back("USERDEFINED"); - IFC4X1_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 169, 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"); - IFC4X1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 172, items); - } - IFC4X1_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 173, 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"); - IFC4X1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 176, items); - } - IFC4X1_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 181, 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"); - IFC4X1_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 184, 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"); - IFC4X1_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 187, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4X1_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 195, 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"); - IFC4X1_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 198, 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"); - IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 201, 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"); - IFC4X1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 204, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 207, items); - } - IFC4X1_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 211, 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"); - IFC4X1_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 216, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4X1_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 221, 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"); - IFC4X1_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 224, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 229, 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"); - IFC4X1_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 231, items); - } - IFC4X1_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 233, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(12); - items.push_back("CEILING"); - items.push_back("CLADDING"); - 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"); - IFC4X1_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 236, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4X1_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 239, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 247, items); - } - IFC4X1_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 248, 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"); - IFC4X1_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 253, 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"); - IFC4X1_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 265, 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"); - IFC4X1_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 266, items); - } - IFC4X1_IfcDate_type = new type_declaration("IfcDate", 267, new simple_type(simple_type::string_type)); - IFC4X1_IfcDateTime_type = new type_declaration("IfcDateTime", 268, new simple_type(simple_type::string_type)); - IFC4X1_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 269, new simple_type(simple_type::integer_type)); - IFC4X1_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 270, 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"); - IFC4X1_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 276, items); - } - IFC4X1_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 277, new simple_type(simple_type::string_type)); - IFC4X1_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 279, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X1_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 281, items); - } - { - std::vector items; items.reserve(5); - items.push_back("ANCHORPLATE"); - items.push_back("BRACKET"); - items.push_back("NOTDEFINED"); - items.push_back("SHOE"); - items.push_back("USERDEFINED"); - IFC4X1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 284, 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"); - IFC4X1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 288, 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"); - IFC4X1_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 297, 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"); - IFC4X1_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 299, 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"); - IFC4X1_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 300, 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"); - IFC4X1_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 305, 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"); - IFC4X1_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 308, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4X1_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 309, 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"); - IFC4X1_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 313, 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"); - IFC4X1_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 314, 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"); - IFC4X1_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 316, 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"); - IFC4X1_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 317, items); - } - IFC4X1_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 318, 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"); - IFC4X1_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 323, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4X1_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 326, 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"); - IFC4X1_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 329, items); - } - IFC4X1_IfcDuration_type = new type_declaration("IfcDuration", 330, new simple_type(simple_type::string_type)); - IFC4X1_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 331, 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"); - IFC4X1_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 337, items); - } - IFC4X1_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 338, new simple_type(simple_type::real_type)); - IFC4X1_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 339, new simple_type(simple_type::real_type)); - IFC4X1_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 340, new simple_type(simple_type::real_type)); - IFC4X1_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 341, 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"); - IFC4X1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 344, 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"); - IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 347, 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"); - IFC4X1_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 350, 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"); - IFC4X1_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 353, items); - } - IFC4X1_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 354, 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"); - IFC4X1_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 357, items); - } - IFC4X1_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 358, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ACCESSORY_ASSEMBLY"); - items.push_back("ARCH"); - items.push_back("BEAM_GRID"); - items.push_back("BRACED_FRAME"); - items.push_back("GIRDER"); - items.push_back("NOTDEFINED"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SLAB_FIELD"); - items.push_back("TRUSS"); - items.push_back("USERDEFINED"); - IFC4X1_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 363, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4X1_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 366, items); - } - IFC4X1_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 373, 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"); - IFC4X1_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 376, 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"); - IFC4X1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 379, 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"); - IFC4X1_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 382, 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"); - IFC4X1_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 385, 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"); - IFC4X1_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 387, 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"); - IFC4X1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 396, 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"); - IFC4X1_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 410, 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"); - IFC4X1_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 413, 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"); - IFC4X1_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 423, 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"); - IFC4X1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 426, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4X1_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 430, 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"); - IFC4X1_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 435, 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"); - IFC4X1_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 438, items); - } - IFC4X1_IfcFontStyle_type = new type_declaration("IfcFontStyle", 449, new simple_type(simple_type::string_type)); - IFC4X1_IfcFontVariant_type = new type_declaration("IfcFontVariant", 450, new simple_type(simple_type::string_type)); - IFC4X1_IfcFontWeight_type = new type_declaration("IfcFontWeight", 451, 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"); - IFC4X1_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 454, items); - } - IFC4X1_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 455, new simple_type(simple_type::real_type)); - IFC4X1_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 456, 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"); - IFC4X1_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 461, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("TERRAIN"); - items.push_back("USERDEFINED"); - IFC4X1_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 464, 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"); - IFC4X1_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 466, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4X1_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 473, items); - } - IFC4X1_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 472, 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"); - IFC4X1_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 478, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("USERDEFINED"); - IFC4X1_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 484, items); - } - IFC4X1_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 485, new simple_type(simple_type::real_type)); - IFC4X1_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 486, 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"); - IFC4X1_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 489, items); - } - IFC4X1_IfcIdentifier_type = new type_declaration("IfcIdentifier", 490, new simple_type(simple_type::string_type)); - IFC4X1_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 491, new simple_type(simple_type::real_type)); - IFC4X1_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 499, new simple_type(simple_type::real_type)); - IFC4X1_IfcInteger_type = new type_declaration("IfcInteger", 500, new simple_type(simple_type::integer_type)); - IFC4X1_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 501, 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"); - IFC4X1_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 504, 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"); - IFC4X1_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 505, 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"); - IFC4X1_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 508, items); - } - IFC4X1_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 509, new simple_type(simple_type::real_type)); - IFC4X1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 513, 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"); - IFC4X1_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 516, items); - } - IFC4X1_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 517, 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"); - IFC4X1_IfcKnotType_type = new enumeration_type("IfcKnotType", 518, items); - } - IFC4X1_IfcLabel_type = new type_declaration("IfcLabel", 519, 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"); - IFC4X1_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 522, 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"); - IFC4X1_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 526, items); - } - IFC4X1_IfcLanguageId_type = new type_declaration("IfcLanguageId", 527, new named_type(IFC4X1_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4X1_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 529, items); - } - IFC4X1_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 530, 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"); - IFC4X1_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 534, 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"); - IFC4X1_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 537, 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"); - IFC4X1_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 540, items); - } - IFC4X1_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 549, new simple_type(simple_type::real_type)); - IFC4X1_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 550, new simple_type(simple_type::real_type)); - IFC4X1_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 553, new simple_type(simple_type::real_type)); - IFC4X1_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 554, 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"); - IFC4X1_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 557, items); - } - IFC4X1_IfcLogical_type = new type_declaration("IfcLogical", 559, 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"); - IFC4X1_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 560, items); - } - IFC4X1_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 563, new simple_type(simple_type::real_type)); - IFC4X1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 564, new simple_type(simple_type::real_type)); - IFC4X1_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 565, new simple_type(simple_type::real_type)); - IFC4X1_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 566, new simple_type(simple_type::real_type)); - IFC4X1_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 567, new simple_type(simple_type::real_type)); - IFC4X1_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 571, new simple_type(simple_type::real_type)); - IFC4X1_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 572, new simple_type(simple_type::real_type)); - IFC4X1_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 573, new simple_type(simple_type::real_type)); - IFC4X1_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 574, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(12); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - 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"); - IFC4X1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 599, 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"); - IFC4X1_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 602, items); - } - { - std::vector items; items.reserve(14); - 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("STRINGER"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("USERDEFINED"); - IFC4X1_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 606, items); - } - IFC4X1_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 610, new simple_type(simple_type::real_type)); - IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 611, new simple_type(simple_type::real_type)); - IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 612, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 613, items); - } - IFC4X1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 614, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcModulusOfSubgradeReactionMeasure_type); - IFC4X1_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 615, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 616, items); - } - IFC4X1_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 617, new simple_type(simple_type::real_type)); - IFC4X1_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 618, new simple_type(simple_type::real_type)); - IFC4X1_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 619, new simple_type(simple_type::real_type)); - IFC4X1_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 620, new simple_type(simple_type::real_type)); - IFC4X1_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 622, 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"); - IFC4X1_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 625, items); - } - IFC4X1_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 627, new named_type(IFC4X1_IfcLengthMeasure_type)); - { - std::vector items; items.reserve(1); - items.push_back("NULL"); - IFC4X1_IfcNullStyle_type = new enumeration_type("IfcNullStyle", 629, items); - } - IFC4X1_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 630, 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"); - IFC4X1_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 637, 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"); - IFC4X1_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 634, 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"); - IFC4X1_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 639, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4X1_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 645, 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"); - IFC4X1_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 655, items); - } - IFC4X1_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 669, new simple_type(simple_type::real_type)); - IFC4X1_IfcParameterValue_type = new type_declaration("IfcParameterValue", 658, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 662, 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"); - IFC4X1_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 663, 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"); - IFC4X1_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 666, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4X1_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 671, 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"); - IFC4X1_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 675, 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"); - IFC4X1_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 677, 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"); - IFC4X1_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 680, 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"); - IFC4X1_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 683, items); - } - IFC4X1_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 688, new simple_type(simple_type::real_type)); - IFC4X1_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 690, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("CURTAIN_PANEL"); - items.push_back("NOTDEFINED"); - items.push_back("SHEET"); - items.push_back("USERDEFINED"); - IFC4X1_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 694, items); - } - IFC4X1_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 705, new named_type(IFC4X1_IfcInteger_type)); - IFC4X1_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 706, new named_type(IFC4X1_IfcLengthMeasure_type)); - IFC4X1_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 707, new named_type(IFC4X1_IfcPlaneAngleMeasure_type)); - IFC4X1_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 710, 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"); - IFC4X1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 717, items); - } - IFC4X1_IfcPresentableText_type = new type_declaration("IfcPresentableText", 718, new simple_type(simple_type::string_type)); - IFC4X1_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 725, 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"); - IFC4X1_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 728, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4X1_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 738, 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"); - IFC4X1_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 746, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4X1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 741, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 743, 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"); - IFC4X1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 761, 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"); - IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 769, 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"); - IFC4X1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 771, 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"); - IFC4X1_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 775, items); - } - IFC4X1_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 783, 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"); - IFC4X1_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 786, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4X1_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 790, 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"); - IFC4X1_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 792, items); - } - IFC4X1_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 793, new simple_type(simple_type::real_type)); - IFC4X1_IfcReal_type = new type_declaration("IfcReal", 796, 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"); - IFC4X1_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 802, 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"); - IFC4X1_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 805, 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"); - IFC4X1_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 806, 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"); - IFC4X1_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 811, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4X1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 812, 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"); - IFC4X1_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 814, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 819, 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"); - IFC4X1_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 884, 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"); - IFC4X1_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 887, items); - } - IFC4X1_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 889, new simple_type(simple_type::real_type)); - IFC4X1_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 890, new simple_type(simple_type::real_type)); - IFC4X1_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 891, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcRotationalStiffnessMeasure_type); - IFC4X1_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 892, 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"); - IFC4X1_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 925, 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"); - IFC4X1_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 928, 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"); - IFC4X1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 896, items); - } - IFC4X1_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 903, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4X1_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 906, items); - } - IFC4X1_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 899, 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"); - IFC4X1_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 910, 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"); - IFC4X1_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 911, 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"); - IFC4X1_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 914, items); - } - IFC4X1_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 918, 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"); - IFC4X1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 923, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BASESLAB"); - items.push_back("FLOOR"); - items.push_back("LANDING"); - items.push_back("NOTDEFINED"); - items.push_back("ROOF"); - items.push_back("USERDEFINED"); - IFC4X1_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 934, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4X1_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 938, items); - } - IFC4X1_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 939, new simple_type(simple_type::real_type)); - IFC4X1_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 942, new simple_type(simple_type::real_type)); - IFC4X1_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 943, new simple_type(simple_type::real_type)); - IFC4X1_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 944, new simple_type(simple_type::real_type)); - IFC4X1_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 945, 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"); - IFC4X1_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 950, 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"); - IFC4X1_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 952, 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"); - IFC4X1_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 959, items); - } - IFC4X1_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 960, new simple_type(simple_type::real_type)); - IFC4X1_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 961, new simple_type(simple_type::real_type)); - IFC4X1_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 963, 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"); - IFC4X1_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 968, 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"); - IFC4X1_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 972, 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"); - IFC4X1_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 974, 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"); - IFC4X1_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 975, 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"); - IFC4X1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 983, 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"); - IFC4X1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 986, 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"); - IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1012, 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"); - IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1015, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4X1_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1024, items); - } - { - std::vector items; items.reserve(5); - items.push_back("MARK"); - items.push_back("NOTDEFINED"); - items.push_back("TAG"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4X1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1030, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X1_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1035, 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"); - IFC4X1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1050, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4X1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1054, 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"); - IFC4X1_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1060, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4X1_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1062, 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"); - IFC4X1_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1066, items); - } - IFC4X1_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1068, new simple_type(simple_type::real_type)); - IFC4X1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1069, 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"); - IFC4X1_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1073, 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"); - IFC4X1_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1075, items); - } - IFC4X1_IfcText_type = new type_declaration("IfcText", 1078, new simple_type(simple_type::string_type)); - IFC4X1_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1079, new simple_type(simple_type::string_type)); - IFC4X1_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1080, new simple_type(simple_type::string_type)); - IFC4X1_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1081, 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"); - IFC4X1_IfcTextPath_type = new enumeration_type("IfcTextPath", 1085, items); - } - IFC4X1_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1090, new simple_type(simple_type::string_type)); - IFC4X1_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1096, new simple_type(simple_type::real_type)); - IFC4X1_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1097, new simple_type(simple_type::real_type)); - IFC4X1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1098, new simple_type(simple_type::real_type)); - IFC4X1_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1099, new simple_type(simple_type::real_type)); - IFC4X1_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1100, new simple_type(simple_type::real_type)); - IFC4X1_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1101, new simple_type(simple_type::real_type)); - IFC4X1_IfcTime_type = new type_declaration("IfcTime", 1102, new simple_type(simple_type::string_type)); - IFC4X1_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1103, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcDuration_type); - items.push_back(IFC4X1_IfcRatioMeasure_type); - IFC4X1_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1104, 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"); - IFC4X1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1107, items); - } - IFC4X1_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1109, new simple_type(simple_type::integer_type)); - IFC4X1_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1113, 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"); - IFC4X1_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1116, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4X1_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1117, 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"); - IFC4X1_IfcTransitionCurveType_type = new enumeration_type("IfcTransitionCurveType", 1119, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcLinearStiffnessMeasure_type); - IFC4X1_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1120, 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"); - IFC4X1_IfcTransportElementTypeEnum_type = new enumeration_type("IfcTransportElementTypeEnum", 1123, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4X1_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1128, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X1_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1133, items); - } - IFC4X1_IfcURIReference_type = new type_declaration("IfcURIReference", 1147, 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"); - IFC4X1_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1146, 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"); - IFC4X1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1141, 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"); - IFC4X1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1144, 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"); - IFC4X1_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1152, items); - } - IFC4X1_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1153, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("COMPRESSION"); - items.push_back("NOTDEFINED"); - items.push_back("SPRING"); - items.push_back("USERDEFINED"); - IFC4X1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1161, 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"); - IFC4X1_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1165, items); - } - IFC4X1_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1166, new simple_type(simple_type::real_type)); - IFC4X1_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1167, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - 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("SHEAR"); - items.push_back("SOLIDWALL"); - items.push_back("STANDARD"); - items.push_back("USERDEFINED"); - IFC4X1_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1172, items); - } - IFC4X1_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1173, new simple_type(simple_type::real_type)); - IFC4X1_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1174, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcWarpingMomentMeasure_type); - IFC4X1_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1175, 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"); - IFC4X1_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1178, 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"); - IFC4X1_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1181, 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"); - IFC4X1_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1182, 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"); - IFC4X1_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1186, 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"); - IFC4X1_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1187, 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"); - IFC4X1_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1189, 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"); - IFC4X1_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1190, 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"); - IFC4X1_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1192, 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"); - IFC4X1_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1195, 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"); - IFC4X1_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1197, items); - } - IFC4X1_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4X1_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4X1_IfcApplication_type = new entity("IfcApplication", false, 46, 0); - IFC4X1_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 47, 0); - IFC4X1_IfcApproval_type = new entity("IfcApproval", false, 49, 0); - IFC4X1_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 85, 0); - IFC4X1_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 87, IFC4X1_IfcBoundaryCondition_type); - IFC4X1_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 88, IFC4X1_IfcBoundaryCondition_type); - IFC4X1_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 89, IFC4X1_IfcBoundaryCondition_type); - IFC4X1_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 90, IFC4X1_IfcBoundaryNodeCondition_type); - IFC4X1_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 191, 0); - IFC4X1_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 193, IFC4X1_IfcConnectionGeometry_type); - IFC4X1_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 194, IFC4X1_IfcConnectionGeometry_type); - IFC4X1_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 196, IFC4X1_IfcConnectionGeometry_type); - IFC4X1_IfcConstraint_type = new entity("IfcConstraint", true, 197, 0); - IFC4X1_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 225, 0); - IFC4X1_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 226, 0); - IFC4X1_IfcCostValue_type = new entity("IfcCostValue", false, 232, IFC4X1_IfcAppliedValue_type); - IFC4X1_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 274, 0); - IFC4X1_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 275, 0); - IFC4X1_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 278, 0); - IFC4X1_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 389, 0); - IFC4X1_IfcExternalReference_type = new entity("IfcExternalReference", true, 393, 0); - IFC4X1_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 390, IFC4X1_IfcExternalReference_type); - IFC4X1_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 391, IFC4X1_IfcExternalReference_type); - IFC4X1_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 392, IFC4X1_IfcExternalReference_type); - IFC4X1_IfcGridAxis_type = new entity("IfcGridAxis", false, 475, 0); - IFC4X1_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 511, 0); - IFC4X1_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 531, IFC4X1_IfcExternalInformation_type); - IFC4X1_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 532, IFC4X1_IfcExternalReference_type); - IFC4X1_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 535, 0); - IFC4X1_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 541, 0); - IFC4X1_IfcMapConversion_type = new entity("IfcMapConversion", false, 569, IFC4X1_IfcCoordinateOperation_type); - IFC4X1_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 576, 0); - IFC4X1_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 579, 0); - IFC4X1_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 581, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 582, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 584, IFC4X1_IfcMaterialLayer_type); - IFC4X1_IfcMaterialList_type = new entity("IfcMaterialList", false, 585, 0); - IFC4X1_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 586, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 587, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 590, IFC4X1_IfcMaterialProfile_type); - IFC4X1_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 594, 0); - IFC4X1_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 596, 0); - IFC4X1_IfcMetric_type = new entity("IfcMetric", false, 607, IFC4X1_IfcConstraint_type); - IFC4X1_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 621, 0); - IFC4X1_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 626, 0); - IFC4X1_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 635, 0); - IFC4X1_IfcObjective_type = new entity("IfcObjective", false, 633, IFC4X1_IfcConstraint_type); - IFC4X1_IfcOrganization_type = new entity("IfcOrganization", false, 648, 0); - IFC4X1_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 656, 0); - IFC4X1_IfcPerson_type = new entity("IfcPerson", false, 667, 0); - IFC4X1_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 668, 0); - IFC4X1_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 672, 0); - IFC4X1_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 673, IFC4X1_IfcPhysicalQuantity_type); - IFC4X1_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 709, IFC4X1_IfcAddress_type); - IFC4X1_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 719, 0); - IFC4X1_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 720, 0); - IFC4X1_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 721, IFC4X1_IfcPresentationLayerAssignment_type); - IFC4X1_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 722, 0); - IFC4X1_IfcPresentationStyleAssignment_type = new entity("IfcPresentationStyleAssignment", false, 723, 0); - IFC4X1_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 733, 0); - IFC4X1_IfcProfileDef_type = new entity("IfcProfileDef", false, 736, 0); - IFC4X1_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 740, IFC4X1_IfcCoordinateReferenceSystem_type); - IFC4X1_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 748, 0); - IFC4X1_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 753, IFC4X1_IfcPropertyAbstraction_type); - IFC4X1_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 776, IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 777, IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 778, IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 780, IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 781, IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 782, IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 801, 0); - IFC4X1_IfcReference_type = new entity("IfcReference", false, 803, 0); - IFC4X1_IfcRepresentation_type = new entity("IfcRepresentation", true, 869, 0); - IFC4X1_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 870, 0); - IFC4X1_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 871, 0); - IFC4X1_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 872, 0); - IFC4X1_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 876, 0); - IFC4X1_IfcRoot_type = new entity("IfcRoot", true, 888, 0); - IFC4X1_IfcSIUnit_type = new entity("IfcSIUnit", false, 927, IFC4X1_IfcNamedUnit_type); - IFC4X1_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 897, 0); - IFC4X1_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 915, 0); - IFC4X1_IfcShapeModel_type = new entity("IfcShapeModel", true, 916, IFC4X1_IfcRepresentation_type); - IFC4X1_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 917, IFC4X1_IfcShapeModel_type); - IFC4X1_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 981, 0); - IFC4X1_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 991, 0); - IFC4X1_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 993, IFC4X1_IfcStructuralLoad_type); - IFC4X1_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 996, IFC4X1_IfcStructuralLoad_type); - IFC4X1_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1002, IFC4X1_IfcStructuralLoadOrResult_type); - IFC4X1_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1003, IFC4X1_IfcStructuralLoadStatic_type); - IFC4X1_IfcStyleModel_type = new entity("IfcStyleModel", true, 1021, IFC4X1_IfcRepresentation_type); - IFC4X1_IfcStyledItem_type = new entity("IfcStyledItem", false, 1019, IFC4X1_IfcRepresentationItem_type); - IFC4X1_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1020, IFC4X1_IfcStyleModel_type); - IFC4X1_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1034, IFC4X1_IfcStructuralLoadOrResult_type); - IFC4X1_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1036, IFC4X1_IfcPresentationStyle_type); - IFC4X1_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1038, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1039, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1041, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1042, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1043, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcTable_type = new entity("IfcTable", false, 1055, 0); - IFC4X1_IfcTableColumn_type = new entity("IfcTableColumn", false, 1056, 0); - IFC4X1_IfcTableRow_type = new entity("IfcTableRow", false, 1057, 0); - IFC4X1_IfcTaskTime_type = new entity("IfcTaskTime", false, 1063, IFC4X1_IfcSchedulingTime_type); - IFC4X1_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1064, IFC4X1_IfcTaskTime_type); - IFC4X1_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1067, IFC4X1_IfcAddress_type); - IFC4X1_IfcTextStyle_type = new entity("IfcTextStyle", false, 1086, IFC4X1_IfcPresentationStyle_type); - IFC4X1_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1088, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1089, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1091, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1092, IFC4X1_IfcTextureCoordinate_type); - IFC4X1_IfcTextureMap_type = new entity("IfcTextureMap", false, 1093, IFC4X1_IfcTextureCoordinate_type); - IFC4X1_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1094, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1095, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1105, 0); - IFC4X1_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1106, 0); - IFC4X1_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1108, 0); - IFC4X1_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1110, IFC4X1_IfcRepresentationItem_type); - IFC4X1_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1111, IFC4X1_IfcShapeModel_type); - IFC4X1_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1145, 0); - IFC4X1_IfcVertex_type = new entity("IfcVertex", false, 1156, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1158, IFC4X1_IfcVertex_type); - IFC4X1_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1163, 0); - IFC4X1_IfcWorkTime_type = new entity("IfcWorkTime", false, 1198, IFC4X1_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcOrganization_type); - items.push_back(IFC4X1_IfcPerson_type); - items.push_back(IFC4X1_IfcPersonAndOrganization_type); - IFC4X1_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4X1_IfcArcIndex_type = new type_declaration("IfcArcIndex", 54, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcLengthMeasure_type); - items.push_back(IFC4X1_IfcPlaneAngleMeasure_type); - IFC4X1_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 73, items); - } - IFC4X1_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 94, new named_type(IFC4X1_IfcLabel_type)); - { - std::vector items; items.reserve(71); - items.push_back(IFC4X1_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4X1_IfcAccelerationMeasure_type); - items.push_back(IFC4X1_IfcAngularVelocityMeasure_type); - items.push_back(IFC4X1_IfcAreaDensityMeasure_type); - items.push_back(IFC4X1_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4X1_IfcCurvatureMeasure_type); - items.push_back(IFC4X1_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4X1_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4X1_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4X1_IfcElectricChargeMeasure_type); - items.push_back(IFC4X1_IfcElectricConductanceMeasure_type); - items.push_back(IFC4X1_IfcElectricResistanceMeasure_type); - items.push_back(IFC4X1_IfcElectricVoltageMeasure_type); - items.push_back(IFC4X1_IfcEnergyMeasure_type); - items.push_back(IFC4X1_IfcForceMeasure_type); - items.push_back(IFC4X1_IfcFrequencyMeasure_type); - items.push_back(IFC4X1_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4X1_IfcHeatingValueMeasure_type); - items.push_back(IFC4X1_IfcIlluminanceMeasure_type); - items.push_back(IFC4X1_IfcInductanceMeasure_type); - items.push_back(IFC4X1_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4X1_IfcIonConcentrationMeasure_type); - items.push_back(IFC4X1_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4X1_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4X1_IfcLinearForceMeasure_type); - items.push_back(IFC4X1_IfcLinearMomentMeasure_type); - items.push_back(IFC4X1_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4X1_IfcLinearVelocityMeasure_type); - items.push_back(IFC4X1_IfcLuminousFluxMeasure_type); - items.push_back(IFC4X1_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4X1_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4X1_IfcMagneticFluxMeasure_type); - items.push_back(IFC4X1_IfcMassDensityMeasure_type); - items.push_back(IFC4X1_IfcMassFlowRateMeasure_type); - items.push_back(IFC4X1_IfcMassPerLengthMeasure_type); - items.push_back(IFC4X1_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4X1_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4X1_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4X1_IfcMolecularWeightMeasure_type); - items.push_back(IFC4X1_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4X1_IfcMonetaryMeasure_type); - items.push_back(IFC4X1_IfcPHMeasure_type); - items.push_back(IFC4X1_IfcPlanarForceMeasure_type); - items.push_back(IFC4X1_IfcPowerMeasure_type); - items.push_back(IFC4X1_IfcPressureMeasure_type); - items.push_back(IFC4X1_IfcRadioActivityMeasure_type); - items.push_back(IFC4X1_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4X1_IfcRotationalMassMeasure_type); - items.push_back(IFC4X1_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4X1_IfcSectionModulusMeasure_type); - items.push_back(IFC4X1_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4X1_IfcShearModulusMeasure_type); - items.push_back(IFC4X1_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4X1_IfcSoundPowerMeasure_type); - items.push_back(IFC4X1_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4X1_IfcSoundPressureMeasure_type); - items.push_back(IFC4X1_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4X1_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4X1_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4X1_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4X1_IfcThermalConductivityMeasure_type); - items.push_back(IFC4X1_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4X1_IfcThermalResistanceMeasure_type); - items.push_back(IFC4X1_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4X1_IfcTorqueMeasure_type); - items.push_back(IFC4X1_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4X1_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4X1_IfcWarpingConstantMeasure_type); - items.push_back(IFC4X1_IfcWarpingMomentMeasure_type); - IFC4X1_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 272, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcRepresentation_type); - items.push_back(IFC4X1_IfcRepresentationItem_type); - IFC4X1_IfcLayeredItem_type = new select_type("IfcLayeredItem", 528, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcLibraryInformation_type); - items.push_back(IFC4X1_IfcLibraryReference_type); - IFC4X1_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 533, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcExternalReference_type); - items.push_back(IFC4X1_IfcLightIntensityDistribution_type); - IFC4X1_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 536, items); - } - IFC4X1_IfcLineIndex_type = new type_declaration("IfcLineIndex", 555, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcMaterialDefinition_type); - items.push_back(IFC4X1_IfcMaterialList_type); - items.push_back(IFC4X1_IfcMaterialUsageDefinition_type); - IFC4X1_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 593, items); - } - IFC4X1_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 628, new named_type(IFC4X1_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4X1_IfcAddress_type); - items.push_back(IFC4X1_IfcAppliedValue_type); - items.push_back(IFC4X1_IfcExternalReference_type); - items.push_back(IFC4X1_IfcMaterialDefinition_type); - items.push_back(IFC4X1_IfcOrganization_type); - items.push_back(IFC4X1_IfcPerson_type); - items.push_back(IFC4X1_IfcPersonAndOrganization_type); - items.push_back(IFC4X1_IfcTable_type); - items.push_back(IFC4X1_IfcTimeSeries_type); - IFC4X1_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 636, items); - } - IFC4X1_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 708, new named_type(IFC4X1_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcArcIndex_type); - items.push_back(IFC4X1_IfcLineIndex_type); - IFC4X1_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 907, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4X1_IfcBinary_type); - items.push_back(IFC4X1_IfcBoolean_type); - items.push_back(IFC4X1_IfcDate_type); - items.push_back(IFC4X1_IfcDateTime_type); - items.push_back(IFC4X1_IfcDuration_type); - items.push_back(IFC4X1_IfcIdentifier_type); - items.push_back(IFC4X1_IfcInteger_type); - items.push_back(IFC4X1_IfcLabel_type); - items.push_back(IFC4X1_IfcLogical_type); - items.push_back(IFC4X1_IfcPositiveInteger_type); - items.push_back(IFC4X1_IfcReal_type); - items.push_back(IFC4X1_IfcText_type); - items.push_back(IFC4X1_IfcTime_type); - items.push_back(IFC4X1_IfcTimeStamp_type); - IFC4X1_IfcSimpleValue_type = new select_type("IfcSimpleValue", 924, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X1_IfcDescriptiveMeasure_type); - items.push_back(IFC4X1_IfcLengthMeasure_type); - items.push_back(IFC4X1_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X1_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X1_IfcRatioMeasure_type); - IFC4X1_IfcSizeSelect_type = new select_type("IfcSizeSelect", 929, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcSpecularExponent_type); - items.push_back(IFC4X1_IfcSpecularRoughness_type); - IFC4X1_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 962, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcPresentationStyle_type); - items.push_back(IFC4X1_IfcPresentationStyleAssignment_type); - IFC4X1_IfcStyleAssignmentSelect_type = new select_type("IfcStyleAssignmentSelect", 1018, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X1_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4X1_IfcSurfaceStyleLighting_type); - items.push_back(IFC4X1_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4X1_IfcSurfaceStyleShading_type); - items.push_back(IFC4X1_IfcSurfaceStyleWithTextures_type); - IFC4X1_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1037, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcDerivedUnit_type); - items.push_back(IFC4X1_IfcMonetaryUnit_type); - items.push_back(IFC4X1_IfcNamedUnit_type); - IFC4X1_IfcUnit_type = new select_type("IfcUnit", 1138, items); - } - IFC4X1_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 50, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 51, IFC4X1_IfcProfileDef_type); - IFC4X1_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 52, IFC4X1_IfcProfileDef_type); - IFC4X1_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 53, IFC4X1_IfcArbitraryClosedProfileDef_type); - IFC4X1_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 75, IFC4X1_IfcSurfaceTexture_type); - IFC4X1_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 139, IFC4X1_IfcArbitraryOpenProfileDef_type); - IFC4X1_IfcClassification_type = new entity("IfcClassification", false, 153, IFC4X1_IfcExternalInformation_type); - IFC4X1_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 154, IFC4X1_IfcExternalReference_type); - IFC4X1_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 164, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 165, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 180, IFC4X1_IfcProfileDef_type); - IFC4X1_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 189, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 190, IFC4X1_IfcConnectionGeometry_type); - IFC4X1_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 192, IFC4X1_IfcConnectionPointGeometry_type); - IFC4X1_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 212, IFC4X1_IfcNamedUnit_type); - IFC4X1_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 217, IFC4X1_IfcNamedUnit_type); - IFC4X1_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 218, IFC4X1_IfcConversionBasedUnit_type); - IFC4X1_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 244, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 257, IFC4X1_IfcPresentationStyle_type); - IFC4X1_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 258, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 259, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 260, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 273, IFC4X1_IfcProfileDef_type); - IFC4X1_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 301, IFC4X1_IfcExternalInformation_type); - IFC4X1_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 302, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 303, IFC4X1_IfcExternalReference_type); - IFC4X1_IfcEdge_type = new entity("IfcEdge", false, 332, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 333, IFC4X1_IfcEdge_type); - IFC4X1_IfcEventTime_type = new entity("IfcEventTime", false, 384, IFC4X1_IfcSchedulingTime_type); - IFC4X1_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 388, IFC4X1_IfcPropertyAbstraction_type); - IFC4X1_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 394, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcFace_type = new entity("IfcFace", false, 400, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcFaceBound_type = new entity("IfcFaceBound", false, 402, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 403, IFC4X1_IfcFaceBound_type); - IFC4X1_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 404, IFC4X1_IfcFace_type); - IFC4X1_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 407, IFC4X1_IfcStructuralConnectionCondition_type); - IFC4X1_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 417, IFC4X1_IfcPresentationStyle_type); - IFC4X1_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 467, IFC4X1_IfcRepresentationContext_type); - IFC4X1_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 468, IFC4X1_IfcRepresentationItem_type); - IFC4X1_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 469, IFC4X1_IfcGeometricRepresentationContext_type); - IFC4X1_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 470, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 476, IFC4X1_IfcObjectPlacement_type); - IFC4X1_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 480, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcImageTexture_type = new entity("IfcImageTexture", false, 492, IFC4X1_IfcSurfaceTexture_type); - IFC4X1_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 493, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 497, IFC4X1_IfcTextureCoordinate_type); - IFC4X1_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 498, IFC4X1_IfcIndexedTextureMap_type); - IFC4X1_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 510, IFC4X1_IfcTimeSeries_type); - IFC4X1_IfcLagTime_type = new entity("IfcLagTime", false, 523, IFC4X1_IfcSchedulingTime_type); - IFC4X1_IfcLightSource_type = new entity("IfcLightSource", true, 542, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 543, IFC4X1_IfcLightSource_type); - IFC4X1_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 544, IFC4X1_IfcLightSource_type); - IFC4X1_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 545, IFC4X1_IfcLightSource_type); - IFC4X1_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 546, IFC4X1_IfcLightSource_type); - IFC4X1_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 547, IFC4X1_IfcLightSourcePositional_type); - IFC4X1_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 551, IFC4X1_IfcObjectPlacement_type); - IFC4X1_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 558, IFC4X1_IfcObjectPlacement_type); - IFC4X1_IfcLoop_type = new entity("IfcLoop", false, 561, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcMappedItem_type = new entity("IfcMappedItem", false, 570, IFC4X1_IfcRepresentationItem_type); - IFC4X1_IfcMaterial_type = new entity("IfcMaterial", false, 575, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 577, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 578, IFC4X1_IfcMaterialDefinition_type); - IFC4X1_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 580, IFC4X1_IfcProductRepresentation_type); - IFC4X1_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 583, IFC4X1_IfcMaterialUsageDefinition_type); - IFC4X1_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 588, IFC4X1_IfcMaterialUsageDefinition_type); - IFC4X1_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 589, IFC4X1_IfcMaterialProfileSetUsage_type); - IFC4X1_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 591, IFC4X1_IfcExtendedProperties_type); - IFC4X1_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 592, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 609, IFC4X1_IfcDerivedProfileDef_type); - IFC4X1_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 632, IFC4X1_IfcRoot_type); - IFC4X1_IfcOpenShell_type = new entity("IfcOpenShell", false, 647, IFC4X1_IfcConnectedFaceSet_type); - IFC4X1_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 649, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcOrientationExpression_type = new entity("IfcOrientationExpression", false, 650, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 651, IFC4X1_IfcEdge_type); - IFC4X1_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 657, IFC4X1_IfcProfileDef_type); - IFC4X1_IfcPath_type = new entity("IfcPath", false, 659, IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 670, IFC4X1_IfcPhysicalQuantity_type); - IFC4X1_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 684, IFC4X1_IfcSurfaceTexture_type); - IFC4X1_IfcPlacement_type = new entity("IfcPlacement", true, 685, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 687, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcPoint_type = new entity("IfcPoint", true, 695, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 696, IFC4X1_IfcPoint_type); - IFC4X1_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 697, IFC4X1_IfcPoint_type); - IFC4X1_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 702, IFC4X1_IfcLoop_type); - IFC4X1_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 699, IFC4X1_IfcHalfSpaceSolid_type); - IFC4X1_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 713, IFC4X1_IfcPresentationItem_type); - IFC4X1_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 714, IFC4X1_IfcPropertyAbstraction_type); - IFC4X1_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 716, IFC4X1_IfcPreDefinedItem_type); - IFC4X1_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 732, IFC4X1_IfcProductRepresentation_type); - IFC4X1_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 737, IFC4X1_IfcExtendedProperties_type); - IFC4X1_IfcProperty_type = new entity("IfcProperty", true, 747, IFC4X1_IfcPropertyAbstraction_type); - IFC4X1_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 750, IFC4X1_IfcRoot_type); - IFC4X1_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 751, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 757, IFC4X1_IfcPropertyDefinition_type); - IFC4X1_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 765, IFC4X1_IfcPropertyDefinition_type); - IFC4X1_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 779, IFC4X1_IfcPropertySetDefinition_type); - IFC4X1_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 798, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 807, IFC4X1_IfcTimeSeries_type); - IFC4X1_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 808, IFC4X1_IfcPreDefinedProperties_type); - IFC4X1_IfcRelationship_type = new entity("IfcRelationship", true, 836, IFC4X1_IfcRoot_type); - IFC4X1_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 874, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 875, IFC4X1_IfcResourceLevelRelationship_type); - IFC4X1_IfcResourceTime_type = new entity("IfcResourceTime", false, 879, IFC4X1_IfcSchedulingTime_type); - IFC4X1_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 893, IFC4X1_IfcRectangleProfileDef_type); - IFC4X1_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 904, IFC4X1_IfcPreDefinedProperties_type); - IFC4X1_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 905, IFC4X1_IfcPreDefinedProperties_type); - IFC4X1_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 902, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 920, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 921, IFC4X1_IfcProperty_type); - IFC4X1_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 935, IFC4X1_IfcStructuralConnectionCondition_type); - IFC4X1_IfcSolidModel_type = new entity("IfcSolidModel", true, 940, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 995, IFC4X1_IfcStructuralLoadStatic_type); - IFC4X1_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 997, IFC4X1_IfcStructuralLoadStatic_type); - IFC4X1_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 998, IFC4X1_IfcStructuralLoadStatic_type); - IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 999, IFC4X1_IfcStructuralLoadSingleDisplacement_type); - IFC4X1_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1000, IFC4X1_IfcStructuralLoadStatic_type); - IFC4X1_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1001, IFC4X1_IfcStructuralLoadSingleForce_type); - IFC4X1_IfcSubedge_type = new entity("IfcSubedge", false, 1025, IFC4X1_IfcEdge_type); - IFC4X1_IfcSurface_type = new entity("IfcSurface", true, 1026, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1040, IFC4X1_IfcSurfaceStyleShading_type); - IFC4X1_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1044, IFC4X1_IfcSolidModel_type); - IFC4X1_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1045, IFC4X1_IfcSolidModel_type); - IFC4X1_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1046, IFC4X1_IfcSweptDiskSolid_type); - IFC4X1_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1047, IFC4X1_IfcSurface_type); - IFC4X1_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1130, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1077, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1083, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1084, IFC4X1_IfcTextLiteral_type); - IFC4X1_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1087, IFC4X1_IfcPreDefinedTextFont_type); - IFC4X1_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1124, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcTypeObject_type = new entity("IfcTypeObject", false, 1134, IFC4X1_IfcObjectDefinition_type); - IFC4X1_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1135, IFC4X1_IfcTypeObject_type); - IFC4X1_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1136, IFC4X1_IfcTypeObject_type); - IFC4X1_IfcTypeResource_type = new entity("IfcTypeResource", true, 1137, IFC4X1_IfcTypeObject_type); - IFC4X1_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1148, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcVector_type = new entity("IfcVector", false, 1154, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1157, IFC4X1_IfcLoop_type); - IFC4X1_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1185, IFC4X1_IfcTypeProduct_type); - IFC4X1_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1200, IFC4X1_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcClassification_type); - items.push_back(IFC4X1_IfcClassificationReference_type); - IFC4X1_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 155, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcClassification_type); - items.push_back(IFC4X1_IfcClassificationReference_type); - IFC4X1_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 156, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4X1_IfcGeometricRepresentationContext_type); - IFC4X1_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 227, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcObjectDefinition_type); - items.push_back(IFC4X1_IfcPropertyDefinition_type); - IFC4X1_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 271, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcDocumentInformation_type); - items.push_back(IFC4X1_IfcDocumentReference_type); - IFC4X1_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 304, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X1_IfcVector_type); - IFC4X1_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 481, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4X1_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4X1_IfcAreaMeasure_type); - items.push_back(IFC4X1_IfcComplexNumber_type); - items.push_back(IFC4X1_IfcContextDependentMeasure_type); - items.push_back(IFC4X1_IfcCountMeasure_type); - items.push_back(IFC4X1_IfcDescriptiveMeasure_type); - items.push_back(IFC4X1_IfcElectricCurrentMeasure_type); - items.push_back(IFC4X1_IfcLengthMeasure_type); - items.push_back(IFC4X1_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4X1_IfcMassMeasure_type); - items.push_back(IFC4X1_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X1_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X1_IfcNumericMeasure_type); - items.push_back(IFC4X1_IfcParameterValue_type); - items.push_back(IFC4X1_IfcPlaneAngleMeasure_type); - items.push_back(IFC4X1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X1_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4X1_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X1_IfcRatioMeasure_type); - items.push_back(IFC4X1_IfcSolidAngleMeasure_type); - items.push_back(IFC4X1_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4X1_IfcTimeMeasure_type); - items.push_back(IFC4X1_IfcVolumeMeasure_type); - IFC4X1_IfcMeasureValue_type = new select_type("IfcMeasureValue", 595, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcPoint_type); - items.push_back(IFC4X1_IfcVertexPoint_type); - IFC4X1_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 698, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X1_IfcCurveStyle_type); - items.push_back(IFC4X1_IfcFillAreaStyle_type); - items.push_back(IFC4X1_IfcNullStyle_type); - items.push_back(IFC4X1_IfcSurfaceStyle_type); - items.push_back(IFC4X1_IfcTextStyle_type); - IFC4X1_IfcPresentationStyleSelect_type = new select_type("IfcPresentationStyleSelect", 724, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcProductDefinitionShape_type); - items.push_back(IFC4X1_IfcRepresentationMap_type); - IFC4X1_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 734, items); - } - IFC4X1_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 759, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(17); - items.push_back(IFC4X1_IfcActorRole_type); - items.push_back(IFC4X1_IfcAppliedValue_type); - items.push_back(IFC4X1_IfcApproval_type); - items.push_back(IFC4X1_IfcConstraint_type); - items.push_back(IFC4X1_IfcContextDependentUnit_type); - items.push_back(IFC4X1_IfcConversionBasedUnit_type); - items.push_back(IFC4X1_IfcExternalInformation_type); - items.push_back(IFC4X1_IfcExternalReference_type); - items.push_back(IFC4X1_IfcMaterialDefinition_type); - items.push_back(IFC4X1_IfcOrganization_type); - items.push_back(IFC4X1_IfcPerson_type); - items.push_back(IFC4X1_IfcPersonAndOrganization_type); - items.push_back(IFC4X1_IfcPhysicalQuantity_type); - items.push_back(IFC4X1_IfcProfileDef_type); - items.push_back(IFC4X1_IfcPropertyAbstraction_type); - items.push_back(IFC4X1_IfcShapeAspect_type); - items.push_back(IFC4X1_IfcTimeSeries_type); - IFC4X1_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 877, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4X1_IfcPreDefinedTextFont_type); - IFC4X1_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1082, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcDerivedMeasureValue_type); - items.push_back(IFC4X1_IfcMeasureValue_type); - items.push_back(IFC4X1_IfcSimpleValue_type); - IFC4X1_IfcValue_type = new select_type("IfcValue", 1149, items); - } - IFC4X1_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X1_IfcFaceSurface_type); - IFC4X1_IfcAlignment2DHorizontal_type = new entity("IfcAlignment2DHorizontal", false, 30, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcAlignment2DSegment_type = new entity("IfcAlignment2DSegment", true, 32, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcAlignment2DVertical_type = new entity("IfcAlignment2DVertical", false, 36, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcAlignment2DVerticalSegment_type = new entity("IfcAlignment2DVerticalSegment", true, 37, IFC4X1_IfcAlignment2DSegment_type); - IFC4X1_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 45, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 60, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 64, IFC4X1_IfcPlacement_type); - IFC4X1_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 66, IFC4X1_IfcPlacement_type); - IFC4X1_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 67, IFC4X1_IfcPlacement_type); - IFC4X1_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 84, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 92, IFC4X1_IfcSurface_type); - IFC4X1_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 93, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 95, IFC4X1_IfcHalfSpaceSolid_type); - IFC4X1_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 243, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 130, IFC4X1_IfcPoint_type); - IFC4X1_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 131, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 132, IFC4X1_IfcCartesianPointList_type); - IFC4X1_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 133, IFC4X1_IfcCartesianPointList_type); - IFC4X1_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 134, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 135, IFC4X1_IfcCartesianTransformationOperator_type); - IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 136, IFC4X1_IfcCartesianTransformationOperator2D_type); - IFC4X1_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 137, IFC4X1_IfcCartesianTransformationOperator_type); - IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 138, IFC4X1_IfcCartesianTransformationOperator3D_type); - IFC4X1_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 149, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcClosedShell_type = new entity("IfcClosedShell", false, 157, IFC4X1_IfcConnectedFaceSet_type); - IFC4X1_IfcColourRgb_type = new entity("IfcColourRgb", false, 163, IFC4X1_IfcColourSpecification_type); - IFC4X1_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 174, IFC4X1_IfcProperty_type); - IFC4X1_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 179, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 209, IFC4X1_IfcTypeResource_type); - IFC4X1_IfcContext_type = new entity("IfcContext", true, 210, IFC4X1_IfcObjectDefinition_type); - IFC4X1_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 238, IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 240, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 242, IFC4X1_IfcSolidModel_type); - IFC4X1_IfcCurve_type = new entity("IfcCurve", true, 249, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 250, IFC4X1_IfcBoundedSurface_type); - IFC4X1_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 251, IFC4X1_IfcBoundedSurface_type); - IFC4X1_IfcDirection_type = new entity("IfcDirection", false, 280, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcDistanceExpression_type = new entity("IfcDistanceExpression", false, 285, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 312, IFC4X1_IfcTypeProduct_type); - IFC4X1_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 334, IFC4X1_IfcLoop_type); - IFC4X1_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 367, IFC4X1_IfcQuantitySet_type); - IFC4X1_IfcElementType_type = new entity("IfcElementType", true, 368, IFC4X1_IfcTypeProduct_type); - IFC4X1_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 360, IFC4X1_IfcSurface_type); - IFC4X1_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 370, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcEventType_type = new entity("IfcEventType", false, 386, IFC4X1_IfcTypeProcess_type); - IFC4X1_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 398, IFC4X1_IfcSweptAreaSolid_type); - IFC4X1_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 399, IFC4X1_IfcExtrudedAreaSolid_type); - IFC4X1_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 401, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 418, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 419, IFC4X1_IfcGeometricRepresentationItem_type); - IFC4X1_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 427, IFC4X1_IfcSweptAreaSolid_type); - IFC4X1_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 458, IFC4X1_IfcElementType_type); - IFC4X1_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 460, IFC4X1_IfcFurnishingElementType_type); - IFC4X1_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 463, IFC4X1_IfcElementType_type); - IFC4X1_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 465, IFC4X1_IfcGeometricSet_type); - IFC4X1_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 512, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 495, IFC4X1_IfcTessellatedItem_type); - IFC4X1_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 496, IFC4X1_IfcIndexedPolygonalFace_type); - IFC4X1_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 562, IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 521, IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcLine_type = new entity("IfcLine", false, 548, IFC4X1_IfcCurve_type); - IFC4X1_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 568, IFC4X1_IfcSolidModel_type); - IFC4X1_IfcObject_type = new entity("IfcObject", true, 631, IFC4X1_IfcObjectDefinition_type); - IFC4X1_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 640, IFC4X1_IfcCurve_type); - IFC4X1_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 641, IFC4X1_IfcOffsetCurve_type); - IFC4X1_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 642, IFC4X1_IfcOffsetCurve_type); - IFC4X1_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 643, IFC4X1_IfcOffsetCurve_type); - IFC4X1_IfcPcurve_type = new entity("IfcPcurve", false, 660, IFC4X1_IfcCurve_type); - IFC4X1_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 686, IFC4X1_IfcPlanarExtent_type); - IFC4X1_IfcPlane_type = new entity("IfcPlane", false, 689, IFC4X1_IfcElementarySurface_type); - IFC4X1_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 711, IFC4X1_IfcPreDefinedItem_type); - IFC4X1_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 712, IFC4X1_IfcPreDefinedItem_type); - IFC4X1_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 715, IFC4X1_IfcPropertySetDefinition_type); - IFC4X1_IfcProcedureType_type = new entity("IfcProcedureType", false, 727, IFC4X1_IfcTypeProcess_type); - IFC4X1_IfcProcess_type = new entity("IfcProcess", true, 729, IFC4X1_IfcObject_type); - IFC4X1_IfcProduct_type = new entity("IfcProduct", true, 731, IFC4X1_IfcObject_type); - IFC4X1_IfcProject_type = new entity("IfcProject", false, 739, IFC4X1_IfcContext_type); - IFC4X1_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 744, IFC4X1_IfcContext_type); - IFC4X1_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 749, IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 752, IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 754, IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 755, IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcPropertySet_type = new entity("IfcPropertySet", false, 756, IFC4X1_IfcPropertySetDefinition_type); - IFC4X1_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 760, IFC4X1_IfcPropertyTemplateDefinition_type); - IFC4X1_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 762, IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 763, IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 764, IFC4X1_IfcPropertyTemplateDefinition_type); - IFC4X1_IfcProxy_type = new entity("IfcProxy", false, 772, IFC4X1_IfcProduct_type); - IFC4X1_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 797, IFC4X1_IfcRectangleProfileDef_type); - IFC4X1_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 799, IFC4X1_IfcCsgPrimitive3D_type); - IFC4X1_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 800, IFC4X1_IfcBoundedSurface_type); - IFC4X1_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 809, IFC4X1_IfcPreDefinedPropertySet_type); - IFC4X1_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 821, IFC4X1_IfcRelationship_type); - IFC4X1_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 822, IFC4X1_IfcRelAssigns_type); - IFC4X1_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 823, IFC4X1_IfcRelAssigns_type); - IFC4X1_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 824, IFC4X1_IfcRelAssigns_type); - IFC4X1_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 825, IFC4X1_IfcRelAssignsToGroup_type); - IFC4X1_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 826, IFC4X1_IfcRelAssigns_type); - IFC4X1_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 827, IFC4X1_IfcRelAssigns_type); - IFC4X1_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 828, IFC4X1_IfcRelAssigns_type); - IFC4X1_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 829, IFC4X1_IfcRelationship_type); - IFC4X1_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 830, IFC4X1_IfcRelAssociates_type); - IFC4X1_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 831, IFC4X1_IfcRelAssociates_type); - IFC4X1_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 832, IFC4X1_IfcRelAssociates_type); - IFC4X1_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 833, IFC4X1_IfcRelAssociates_type); - IFC4X1_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 834, IFC4X1_IfcRelAssociates_type); - IFC4X1_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 835, IFC4X1_IfcRelAssociates_type); - IFC4X1_IfcRelConnects_type = new entity("IfcRelConnects", true, 837, IFC4X1_IfcRelationship_type); - IFC4X1_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 838, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 839, IFC4X1_IfcRelConnectsElements_type); - IFC4X1_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 841, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 840, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 842, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 843, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 844, IFC4X1_IfcRelConnectsStructuralMember_type); - IFC4X1_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 845, IFC4X1_IfcRelConnectsElements_type); - IFC4X1_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 846, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 847, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 848, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 849, IFC4X1_IfcRelationship_type); - IFC4X1_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 850, IFC4X1_IfcRelationship_type); - IFC4X1_IfcRelDefines_type = new entity("IfcRelDefines", true, 851, IFC4X1_IfcRelationship_type); - IFC4X1_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 852, IFC4X1_IfcRelDefines_type); - IFC4X1_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 853, IFC4X1_IfcRelDefines_type); - IFC4X1_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 854, IFC4X1_IfcRelDefines_type); - IFC4X1_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 855, IFC4X1_IfcRelDefines_type); - IFC4X1_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 856, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 857, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 858, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelNests_type = new entity("IfcRelNests", false, 859, IFC4X1_IfcRelDecomposes_type); - IFC4X1_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 860, IFC4X1_IfcRelDecomposes_type); - IFC4X1_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 861, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelSequence_type = new entity("IfcRelSequence", false, 862, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 863, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 864, IFC4X1_IfcRelConnects_type); - IFC4X1_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 865, IFC4X1_IfcRelSpaceBoundary_type); - IFC4X1_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 866, IFC4X1_IfcRelSpaceBoundary1stLevel_type); - IFC4X1_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 867, IFC4X1_IfcRelDecomposes_type); - IFC4X1_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 868, IFC4X1_IfcCompositeCurveSegment_type); - IFC4X1_IfcResource_type = new entity("IfcResource", true, 873, IFC4X1_IfcObject_type); - IFC4X1_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 880, IFC4X1_IfcSweptAreaSolid_type); - IFC4X1_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 881, IFC4X1_IfcRevolvedAreaSolid_type); - IFC4X1_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 882, IFC4X1_IfcCsgPrimitive3D_type); - IFC4X1_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 883, IFC4X1_IfcCsgPrimitive3D_type); - IFC4X1_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 900, IFC4X1_IfcSolidModel_type); - IFC4X1_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 901, IFC4X1_IfcSectionedSolid_type); - IFC4X1_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 922, IFC4X1_IfcPropertyTemplate_type); - IFC4X1_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 953, IFC4X1_IfcProduct_type); - IFC4X1_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 954, IFC4X1_IfcTypeProduct_type); - IFC4X1_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 955, IFC4X1_IfcSpatialElement_type); - IFC4X1_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 956, IFC4X1_IfcSpatialElementType_type); - IFC4X1_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 957, IFC4X1_IfcSpatialElement_type); - IFC4X1_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 958, IFC4X1_IfcSpatialElementType_type); - IFC4X1_IfcSphere_type = new entity("IfcSphere", false, 964, IFC4X1_IfcCsgPrimitive3D_type); - IFC4X1_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 965, IFC4X1_IfcElementarySurface_type); - IFC4X1_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 977, IFC4X1_IfcProduct_type); - IFC4X1_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 989, IFC4X1_IfcProduct_type); - IFC4X1_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1004, IFC4X1_IfcStructuralItem_type); - IFC4X1_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1009, IFC4X1_IfcStructuralActivity_type); - IFC4X1_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1014, IFC4X1_IfcStructuralMember_type); - IFC4X1_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1016, IFC4X1_IfcStructuralSurfaceMember_type); - IFC4X1_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1017, IFC4X1_IfcStructuralReaction_type); - IFC4X1_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1023, IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1027, IFC4X1_IfcCurve_type); - IFC4X1_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1028, IFC4X1_IfcSweptAreaSolid_type); - IFC4X1_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1031, IFC4X1_IfcSweptSurface_type); - IFC4X1_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1032, IFC4X1_IfcSweptSurface_type); - IFC4X1_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1053, IFC4X1_IfcFurnishingElementType_type); - IFC4X1_IfcTask_type = new entity("IfcTask", false, 1061, IFC4X1_IfcProcess_type); - IFC4X1_IfcTaskType_type = new entity("IfcTaskType", false, 1065, IFC4X1_IfcTypeProcess_type); - IFC4X1_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1076, IFC4X1_IfcTessellatedItem_type); - IFC4X1_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1112, IFC4X1_IfcElementarySurface_type); - IFC4X1_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1122, IFC4X1_IfcElementType_type); - IFC4X1_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1125, IFC4X1_IfcTessellatedFaceSet_type); - IFC4X1_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1126, IFC4X1_IfcTriangulatedFaceSet_type); - IFC4X1_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1180, IFC4X1_IfcPreDefinedPropertySet_type); - IFC4X1_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1183, IFC4X1_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcMeasureWithUnit_type); - items.push_back(IFC4X1_IfcReference_type); - items.push_back(IFC4X1_IfcValue_type); - IFC4X1_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 48, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcAxis2Placement2D_type); - items.push_back(IFC4X1_IfcAxis2Placement3D_type); - IFC4X1_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 65, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X1_IfcBooleanResult_type); - items.push_back(IFC4X1_IfcCsgPrimitive3D_type); - items.push_back(IFC4X1_IfcHalfSpaceSolid_type); - items.push_back(IFC4X1_IfcSolidModel_type); - items.push_back(IFC4X1_IfcTessellatedFaceSet_type); - IFC4X1_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 82, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcColourSpecification_type); - items.push_back(IFC4X1_IfcPreDefinedColour_type); - IFC4X1_IfcColour_type = new select_type("IfcColour", 161, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcColourRgb_type); - items.push_back(IFC4X1_IfcNormalisedRatioMeasure_type); - IFC4X1_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 162, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBooleanResult_type); - items.push_back(IFC4X1_IfcCsgPrimitive3D_type); - IFC4X1_IfcCsgSelect_type = new select_type("IfcCsgSelect", 241, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcCurveStyleFont_type); - items.push_back(IFC4X1_IfcPreDefinedCurveFont_type); - IFC4X1_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 261, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X1_IfcColour_type); - items.push_back(IFC4X1_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X1_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X1_IfcFillAreaStyleTiles_type); - IFC4X1_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 420, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcCurve_type); - items.push_back(IFC4X1_IfcPoint_type); - items.push_back(IFC4X1_IfcSurface_type); - IFC4X1_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 471, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcDirection_type); - items.push_back(IFC4X1_IfcVirtualGridIntersection_type); - IFC4X1_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 477, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X1_IfcAppliedValue_type); - items.push_back(IFC4X1_IfcMeasureWithUnit_type); - items.push_back(IFC4X1_IfcReference_type); - items.push_back(IFC4X1_IfcTable_type); - items.push_back(IFC4X1_IfcTimeSeries_type); - items.push_back(IFC4X1_IfcValue_type); - IFC4X1_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 608, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcProcess_type); - items.push_back(IFC4X1_IfcTypeProcess_type); - IFC4X1_IfcProcessSelect_type = new select_type("IfcProcessSelect", 730, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcProduct_type); - items.push_back(IFC4X1_IfcTypeProduct_type); - IFC4X1_IfcProductSelect_type = new select_type("IfcProductSelect", 735, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcPropertySetDefinition_type); - items.push_back(IFC4X1_IfcPropertySetDefinitionSet_type); - IFC4X1_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 758, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcResource_type); - items.push_back(IFC4X1_IfcTypeResource_type); - IFC4X1_IfcResourceSelect_type = new select_type("IfcResourceSelect", 878, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcClosedShell_type); - items.push_back(IFC4X1_IfcOpenShell_type); - IFC4X1_IfcShell_type = new select_type("IfcShell", 919, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcClosedShell_type); - items.push_back(IFC4X1_IfcSolidModel_type); - IFC4X1_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 941, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X1_IfcFaceSurface_type); - items.push_back(IFC4X1_IfcSurface_type); - IFC4X1_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1033, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcCartesianPoint_type); - items.push_back(IFC4X1_IfcParameterValue_type); - IFC4X1_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1129, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcDirection_type); - items.push_back(IFC4X1_IfcVector_type); - IFC4X1_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1155, items); - } - IFC4X1_IfcActor_type = new entity("IfcActor", false, 6, IFC4X1_IfcObject_type); - IFC4X1_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X1_IfcManifoldSolidBrep_type); - IFC4X1_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X1_IfcAdvancedBrep_type); - IFC4X1_IfcAlignment2DHorizontalSegment_type = new entity("IfcAlignment2DHorizontalSegment", false, 31, IFC4X1_IfcAlignment2DSegment_type); - IFC4X1_IfcAlignment2DVerSegCircularArc_type = new entity("IfcAlignment2DVerSegCircularArc", false, 33, IFC4X1_IfcAlignment2DVerticalSegment_type); - IFC4X1_IfcAlignment2DVerSegLine_type = new entity("IfcAlignment2DVerSegLine", false, 34, IFC4X1_IfcAlignment2DVerticalSegment_type); - IFC4X1_IfcAlignment2DVerSegParabolicArc_type = new entity("IfcAlignment2DVerSegParabolicArc", false, 35, IFC4X1_IfcAlignment2DVerticalSegment_type); - IFC4X1_IfcAnnotation_type = new entity("IfcAnnotation", false, 44, IFC4X1_IfcProduct_type); - IFC4X1_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 99, IFC4X1_IfcBoundedSurface_type); - IFC4X1_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 101, IFC4X1_IfcBSplineSurface_type); - IFC4X1_IfcBlock_type = new entity("IfcBlock", false, 76, IFC4X1_IfcCsgPrimitive3D_type); - IFC4X1_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 81, IFC4X1_IfcBooleanResult_type); - IFC4X1_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 91, IFC4X1_IfcCurve_type); - IFC4X1_IfcBuilding_type = new entity("IfcBuilding", false, 102, IFC4X1_IfcSpatialStructureElement_type); - IFC4X1_IfcBuildingElementType_type = new entity("IfcBuildingElementType", true, 110, IFC4X1_IfcElementType_type); - IFC4X1_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 111, IFC4X1_IfcSpatialStructureElement_type); - IFC4X1_IfcChimneyType_type = new entity("IfcChimneyType", false, 145, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 148, IFC4X1_IfcCircleProfileDef_type); - IFC4X1_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 152, IFC4X1_IfcElementType_type); - IFC4X1_IfcColumnType_type = new entity("IfcColumnType", false, 168, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 175, IFC4X1_IfcPropertyTemplate_type); - IFC4X1_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 177, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 178, IFC4X1_IfcCompositeCurve_type); - IFC4X1_IfcConic_type = new entity("IfcConic", true, 188, IFC4X1_IfcCurve_type); - IFC4X1_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 200, IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 203, IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 206, IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 208, IFC4X1_IfcResource_type); - IFC4X1_IfcControl_type = new entity("IfcControl", true, 213, IFC4X1_IfcObject_type); - IFC4X1_IfcCostItem_type = new entity("IfcCostItem", false, 228, IFC4X1_IfcControl_type); - IFC4X1_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 230, IFC4X1_IfcControl_type); - IFC4X1_IfcCoveringType_type = new entity("IfcCoveringType", false, 235, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcCrewResource_type = new entity("IfcCrewResource", false, 237, IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 246, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcCurveSegment2D_type = new entity("IfcCurveSegment2D", true, 256, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 262, IFC4X1_IfcElementarySurface_type); - IFC4X1_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 293, IFC4X1_IfcElementType_type); - IFC4X1_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 295, IFC4X1_IfcDistributionElementType_type); - IFC4X1_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 307, IFC4X1_IfcPreDefinedPropertySet_type); - IFC4X1_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 310, IFC4X1_IfcPreDefinedPropertySet_type); - IFC4X1_IfcDoorType_type = new entity("IfcDoorType", false, 315, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 319, IFC4X1_IfcPreDefinedColour_type); - IFC4X1_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 320, IFC4X1_IfcPreDefinedCurveFont_type); - IFC4X1_IfcElement_type = new entity("IfcElement", true, 359, IFC4X1_IfcProduct_type); - IFC4X1_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 361, IFC4X1_IfcElement_type); - IFC4X1_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 362, IFC4X1_IfcElementType_type); - IFC4X1_IfcElementComponent_type = new entity("IfcElementComponent", true, 364, IFC4X1_IfcElement_type); - IFC4X1_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 365, IFC4X1_IfcElementType_type); - IFC4X1_IfcEllipse_type = new entity("IfcEllipse", false, 369, IFC4X1_IfcConic_type); - IFC4X1_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 372, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcEngineType_type = new entity("IfcEngineType", false, 375, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 378, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 381, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcEvent_type = new entity("IfcEvent", false, 383, IFC4X1_IfcProcess_type); - IFC4X1_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 397, IFC4X1_IfcSpatialElement_type); - IFC4X1_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 405, IFC4X1_IfcManifoldSolidBrep_type); - IFC4X1_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 406, IFC4X1_IfcFacetedBrep_type); - IFC4X1_IfcFastener_type = new entity("IfcFastener", false, 411, IFC4X1_IfcElementComponent_type); - IFC4X1_IfcFastenerType_type = new entity("IfcFastenerType", false, 412, IFC4X1_IfcElementComponentType_type); - IFC4X1_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 414, IFC4X1_IfcElement_type); - IFC4X1_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 415, IFC4X1_IfcFeatureElement_type); - IFC4X1_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 416, IFC4X1_IfcFeatureElement_type); - IFC4X1_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 429, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 432, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 437, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 440, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 442, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 444, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 446, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 448, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcFootingType_type = new entity("IfcFootingType", false, 453, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 457, IFC4X1_IfcElement_type); - IFC4X1_IfcFurniture_type = new entity("IfcFurniture", false, 459, IFC4X1_IfcFurnishingElement_type); - IFC4X1_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 462, IFC4X1_IfcElement_type); - IFC4X1_IfcGroup_type = new entity("IfcGroup", false, 479, IFC4X1_IfcObject_type); - IFC4X1_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 483, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 488, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 494, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 503, IFC4X1_IfcFlowTreatmentDeviceType_type); - IFC4X1_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 506, IFC4X1_IfcSurfaceCurve_type); - IFC4X1_IfcInventory_type = new entity("IfcInventory", false, 507, IFC4X1_IfcGroup_type); - IFC4X1_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 515, IFC4X1_IfcFlowFittingType_type); - IFC4X1_IfcLaborResource_type = new entity("IfcLaborResource", false, 520, IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcLampType_type = new entity("IfcLampType", false, 525, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 539, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcLineSegment2D_type = new entity("IfcLineSegment2D", false, 556, IFC4X1_IfcCurveSegment2D_type); - IFC4X1_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 597, IFC4X1_IfcElementComponent_type); - IFC4X1_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 598, IFC4X1_IfcElementComponentType_type); - IFC4X1_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 601, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcMemberType_type = new entity("IfcMemberType", false, 605, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 624, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcOccupant_type = new entity("IfcOccupant", false, 638, IFC4X1_IfcActor_type); - IFC4X1_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 644, IFC4X1_IfcFeatureElementSubtraction_type); - IFC4X1_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 646, IFC4X1_IfcOpeningElement_type); - IFC4X1_IfcOutletType_type = new entity("IfcOutletType", false, 654, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 661, IFC4X1_IfcControl_type); - IFC4X1_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 664, IFC4X1_IfcPreDefinedPropertySet_type); - IFC4X1_IfcPermit_type = new entity("IfcPermit", false, 665, IFC4X1_IfcControl_type); - IFC4X1_IfcPileType_type = new entity("IfcPileType", false, 676, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 679, IFC4X1_IfcFlowFittingType_type); - IFC4X1_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 682, IFC4X1_IfcFlowSegmentType_type); - IFC4X1_IfcPlateType_type = new entity("IfcPlateType", false, 693, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 700, IFC4X1_IfcTessellatedFaceSet_type); - IFC4X1_IfcPolyline_type = new entity("IfcPolyline", false, 701, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcPort_type = new entity("IfcPort", true, 703, IFC4X1_IfcProduct_type); - IFC4X1_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 704, IFC4X1_IfcProduct_type); - IFC4X1_IfcProcedure_type = new entity("IfcProcedure", false, 726, IFC4X1_IfcProcess_type); - IFC4X1_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 745, IFC4X1_IfcControl_type); - IFC4X1_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 742, IFC4X1_IfcFeatureElementAddition_type); - IFC4X1_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 770, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcPumpType_type = new entity("IfcPumpType", false, 774, IFC4X1_IfcFlowMovingDeviceType_type); - IFC4X1_IfcRailingType_type = new entity("IfcRailingType", false, 785, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 789, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcRampType_type = new entity("IfcRampType", false, 791, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 795, IFC4X1_IfcBSplineSurfaceWithKnots_type); - IFC4X1_IfcReferent_type = new entity("IfcReferent", false, 804, IFC4X1_IfcPositioningElement_type); - IFC4X1_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 815, IFC4X1_IfcElementComponent_type); - IFC4X1_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 816, IFC4X1_IfcElementComponentType_type); - IFC4X1_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 817, IFC4X1_IfcReinforcingElement_type); - IFC4X1_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 818, IFC4X1_IfcReinforcingElementType_type); - IFC4X1_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 820, IFC4X1_IfcRelDecomposes_type); - IFC4X1_IfcRoofType_type = new entity("IfcRoofType", false, 886, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 895, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 898, IFC4X1_IfcSurfaceCurve_type); - IFC4X1_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 913, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcSite_type = new entity("IfcSite", false, 926, IFC4X1_IfcSpatialStructureElement_type); - IFC4X1_IfcSlabType_type = new entity("IfcSlabType", false, 933, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 937, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcSpace_type = new entity("IfcSpace", false, 946, IFC4X1_IfcSpatialStructureElement_type); - IFC4X1_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 949, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcSpaceType_type = new entity("IfcSpaceType", false, 951, IFC4X1_IfcSpatialStructureElementType_type); - IFC4X1_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 967, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 971, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcStairType_type = new entity("IfcStairType", false, 973, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 976, IFC4X1_IfcStructuralActivity_type); - IFC4X1_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 980, IFC4X1_IfcStructuralItem_type); - IFC4X1_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 982, IFC4X1_IfcStructuralAction_type); - IFC4X1_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 984, IFC4X1_IfcStructuralConnection_type); - IFC4X1_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 985, IFC4X1_IfcStructuralMember_type); - IFC4X1_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 987, IFC4X1_IfcStructuralCurveMember_type); - IFC4X1_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 988, IFC4X1_IfcStructuralReaction_type); - IFC4X1_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 990, IFC4X1_IfcStructuralCurveAction_type); - IFC4X1_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 994, IFC4X1_IfcGroup_type); - IFC4X1_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1006, IFC4X1_IfcStructuralAction_type); - IFC4X1_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1007, IFC4X1_IfcStructuralConnection_type); - IFC4X1_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1008, IFC4X1_IfcStructuralReaction_type); - IFC4X1_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1010, IFC4X1_IfcGroup_type); - IFC4X1_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1011, IFC4X1_IfcStructuralAction_type); - IFC4X1_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1013, IFC4X1_IfcStructuralConnection_type); - IFC4X1_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1022, IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1029, IFC4X1_IfcFeatureElement_type); - IFC4X1_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1049, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcSystem_type = new entity("IfcSystem", false, 1051, IFC4X1_IfcGroup_type); - IFC4X1_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1052, IFC4X1_IfcFurnishingElement_type); - IFC4X1_IfcTankType_type = new entity("IfcTankType", false, 1059, IFC4X1_IfcFlowStorageDeviceType_type); - IFC4X1_IfcTendon_type = new entity("IfcTendon", false, 1070, IFC4X1_IfcReinforcingElement_type); - IFC4X1_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1071, IFC4X1_IfcReinforcingElement_type); - IFC4X1_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1072, IFC4X1_IfcReinforcingElementType_type); - IFC4X1_IfcTendonType_type = new entity("IfcTendonType", false, 1074, IFC4X1_IfcReinforcingElementType_type); - IFC4X1_IfcTransformerType_type = new entity("IfcTransformerType", false, 1115, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcTransitionCurveSegment2D_type = new entity("IfcTransitionCurveSegment2D", false, 1118, IFC4X1_IfcCurveSegment2D_type); - IFC4X1_IfcTransportElement_type = new entity("IfcTransportElement", false, 1121, IFC4X1_IfcElement_type); - IFC4X1_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1127, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1132, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1143, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcValveType_type = new entity("IfcValveType", false, 1151, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1159, IFC4X1_IfcElementComponent_type); - IFC4X1_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1160, IFC4X1_IfcElementComponentType_type); - IFC4X1_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1162, IFC4X1_IfcElement_type); - IFC4X1_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1164, IFC4X1_IfcFeatureElementSubtraction_type); - IFC4X1_IfcWallType_type = new entity("IfcWallType", false, 1171, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1177, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcWindowType_type = new entity("IfcWindowType", false, 1188, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1191, IFC4X1_IfcControl_type); - IFC4X1_IfcWorkControl_type = new entity("IfcWorkControl", true, 1193, IFC4X1_IfcControl_type); - IFC4X1_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1194, IFC4X1_IfcWorkControl_type); - IFC4X1_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1196, IFC4X1_IfcWorkControl_type); - IFC4X1_IfcZone_type = new entity("IfcZone", false, 1199, IFC4X1_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X1_IfcCurveStyleFontSelect_type); - IFC4X1_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 252, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X1_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X1_IfcPcurve_type); - items.push_back(IFC4X1_IfcSurfaceCurve_type); - IFC4X1_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 254, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcBoundedCurve_type); - items.push_back(IFC4X1_IfcEdgeCurve_type); - IFC4X1_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 255, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcElement_type); - items.push_back(IFC4X1_IfcStructuralItem_type); - IFC4X1_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 978, items); - } - IFC4X1_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X1_IfcControl_type); - IFC4X1_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcAlignmentCurve_type = new entity("IfcAlignmentCurve", false, 38, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcAsset_type = new entity("IfcAsset", false, 59, IFC4X1_IfcGroup_type); - IFC4X1_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 62, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 96, IFC4X1_IfcBoundedCurve_type); - IFC4X1_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 98, IFC4X1_IfcBSplineCurve_type); - IFC4X1_IfcBeamType_type = new entity("IfcBeamType", false, 70, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcBoilerType_type = new entity("IfcBoilerType", false, 78, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 86, IFC4X1_IfcCompositeCurveOnSurface_type); - IFC4X1_IfcBuildingElement_type = new entity("IfcBuildingElement", true, 103, IFC4X1_IfcElement_type); - IFC4X1_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 104, IFC4X1_IfcElementComponent_type); - IFC4X1_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 105, IFC4X1_IfcElementComponentType_type); - IFC4X1_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 107, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 108, IFC4X1_IfcBuildingElementType_type); - IFC4X1_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 112, IFC4X1_IfcSystem_type); - IFC4X1_IfcBurnerType_type = new entity("IfcBurnerType", false, 115, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 118, IFC4X1_IfcFlowFittingType_type); - IFC4X1_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 121, IFC4X1_IfcFlowSegmentType_type); - IFC4X1_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 124, IFC4X1_IfcFlowFittingType_type); - IFC4X1_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 127, IFC4X1_IfcFlowSegmentType_type); - IFC4X1_IfcChillerType_type = new entity("IfcChillerType", false, 142, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcChimney_type = new entity("IfcChimney", false, 144, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcCircle_type = new entity("IfcCircle", false, 147, IFC4X1_IfcConic_type); - IFC4X1_IfcCircularArcSegment2D_type = new entity("IfcCircularArcSegment2D", false, 150, IFC4X1_IfcCurveSegment2D_type); - IFC4X1_IfcCivilElement_type = new entity("IfcCivilElement", false, 151, IFC4X1_IfcElement_type); - IFC4X1_IfcCoilType_type = new entity("IfcCoilType", false, 159, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcColumn_type = new entity("IfcColumn", false, 166, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 167, IFC4X1_IfcColumn_type); - IFC4X1_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 171, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcCompressorType_type = new entity("IfcCompressorType", false, 183, IFC4X1_IfcFlowMovingDeviceType_type); - IFC4X1_IfcCondenserType_type = new entity("IfcCondenserType", false, 186, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 199, IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 202, IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 205, IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 220, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 223, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcCovering_type = new entity("IfcCovering", false, 234, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 245, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcDamperType_type = new entity("IfcDamperType", false, 264, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 282, IFC4X1_IfcElementComponent_type); - IFC4X1_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 283, IFC4X1_IfcElementComponentType_type); - IFC4X1_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 287, IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 291, IFC4X1_IfcDistributionElementType_type); - IFC4X1_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 292, IFC4X1_IfcElement_type); - IFC4X1_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 294, IFC4X1_IfcDistributionElement_type); - IFC4X1_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 296, IFC4X1_IfcPort_type); - IFC4X1_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 298, IFC4X1_IfcSystem_type); - IFC4X1_IfcDoor_type = new entity("IfcDoor", false, 306, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 311, IFC4X1_IfcDoor_type); - IFC4X1_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 322, IFC4X1_IfcFlowFittingType_type); - IFC4X1_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 325, IFC4X1_IfcFlowSegmentType_type); - IFC4X1_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 328, IFC4X1_IfcFlowTreatmentDeviceType_type); - IFC4X1_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 336, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 343, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 346, IFC4X1_IfcFlowStorageDeviceType_type); - IFC4X1_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 349, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 352, IFC4X1_IfcEnergyConversionDeviceType_type); - IFC4X1_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 356, IFC4X1_IfcFlowControllerType_type); - IFC4X1_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 371, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcEngine_type = new entity("IfcEngine", false, 374, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 377, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcEvaporator_type = new entity("IfcEvaporator", false, 380, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 395, IFC4X1_IfcExternalSpatialStructureElement_type); - IFC4X1_IfcFanType_type = new entity("IfcFanType", false, 409, IFC4X1_IfcFlowMovingDeviceType_type); - IFC4X1_IfcFilterType_type = new entity("IfcFilterType", false, 422, IFC4X1_IfcFlowTreatmentDeviceType_type); - IFC4X1_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 425, IFC4X1_IfcFlowTerminalType_type); - IFC4X1_IfcFlowController_type = new entity("IfcFlowController", false, 428, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 431, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 434, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 436, IFC4X1_IfcFlowController_type); - IFC4X1_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 439, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 441, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 443, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 445, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 447, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcFooting_type = new entity("IfcFooting", false, 452, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcGrid_type = new entity("IfcGrid", false, 474, IFC4X1_IfcPositioningElement_type); - IFC4X1_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 482, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcHumidifier_type = new entity("IfcHumidifier", false, 487, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcInterceptor_type = new entity("IfcInterceptor", false, 502, IFC4X1_IfcFlowTreatmentDevice_type); - IFC4X1_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 514, IFC4X1_IfcFlowFitting_type); - IFC4X1_IfcLamp_type = new entity("IfcLamp", false, 524, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcLightFixture_type = new entity("IfcLightFixture", false, 538, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", true, 552, IFC4X1_IfcPositioningElement_type); - IFC4X1_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 600, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcMember_type = new entity("IfcMember", false, 603, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 604, IFC4X1_IfcMember_type); - IFC4X1_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 623, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 652, IFC4X1_IfcBoundaryCurve_type); - IFC4X1_IfcOutlet_type = new entity("IfcOutlet", false, 653, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcPile_type = new entity("IfcPile", false, 674, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 678, IFC4X1_IfcFlowFitting_type); - IFC4X1_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 681, IFC4X1_IfcFlowSegment_type); - IFC4X1_IfcPlate_type = new entity("IfcPlate", false, 691, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 692, IFC4X1_IfcPlate_type); - IFC4X1_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 766, IFC4X1_IfcFlowController_type); - IFC4X1_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 768, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcPump_type = new entity("IfcPump", false, 773, IFC4X1_IfcFlowMovingDevice_type); - IFC4X1_IfcRailing_type = new entity("IfcRailing", false, 784, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcRamp_type = new entity("IfcRamp", false, 787, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcRampFlight_type = new entity("IfcRampFlight", false, 788, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 794, IFC4X1_IfcBSplineCurveWithKnots_type); - IFC4X1_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 810, IFC4X1_IfcReinforcingElement_type); - IFC4X1_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 813, IFC4X1_IfcReinforcingElementType_type); - IFC4X1_IfcRoof_type = new entity("IfcRoof", false, 885, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 894, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcSensorType_type = new entity("IfcSensorType", false, 909, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 912, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcSlab_type = new entity("IfcSlab", false, 930, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 931, IFC4X1_IfcSlab_type); - IFC4X1_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 932, IFC4X1_IfcSlab_type); - IFC4X1_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 936, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 948, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 966, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcStair_type = new entity("IfcStair", false, 969, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcStairFlight_type = new entity("IfcStairFlight", false, 970, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 979, IFC4X1_IfcSystem_type); - IFC4X1_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 992, IFC4X1_IfcStructuralLoadGroup_type); - IFC4X1_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1005, IFC4X1_IfcStructuralSurfaceAction_type); - IFC4X1_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1048, IFC4X1_IfcFlowController_type); - IFC4X1_IfcTank_type = new entity("IfcTank", false, 1058, IFC4X1_IfcFlowStorageDevice_type); - IFC4X1_IfcTransformer_type = new entity("IfcTransformer", false, 1114, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1131, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1140, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1142, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcValve_type = new entity("IfcValve", false, 1150, IFC4X1_IfcFlowController_type); - IFC4X1_IfcWall_type = new entity("IfcWall", false, 1168, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1169, IFC4X1_IfcWall_type); - IFC4X1_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1170, IFC4X1_IfcWall_type); - IFC4X1_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1176, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcWindow_type = new entity("IfcWindow", false, 1179, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1184, IFC4X1_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X1_IfcExternalSpatialElement_type); - items.push_back(IFC4X1_IfcSpace_type); - IFC4X1_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 947, items); - } - IFC4X1_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X1_IfcFlowController_type); - IFC4X1_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X1_IfcLinearPositioningElement_type); - IFC4X1_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 61, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcBeam_type = new entity("IfcBeam", false, 68, IFC4X1_IfcBuildingElement_type); - IFC4X1_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 69, IFC4X1_IfcBeam_type); - IFC4X1_IfcBoiler_type = new entity("IfcBoiler", false, 77, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcBurner_type = new entity("IfcBurner", false, 114, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 117, IFC4X1_IfcFlowFitting_type); - IFC4X1_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 120, IFC4X1_IfcFlowSegment_type); - IFC4X1_IfcCableFitting_type = new entity("IfcCableFitting", false, 123, IFC4X1_IfcFlowFitting_type); - IFC4X1_IfcCableSegment_type = new entity("IfcCableSegment", false, 126, IFC4X1_IfcFlowSegment_type); - IFC4X1_IfcChiller_type = new entity("IfcChiller", false, 141, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcCoil_type = new entity("IfcCoil", false, 158, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 170, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcCompressor_type = new entity("IfcCompressor", false, 182, IFC4X1_IfcFlowMovingDevice_type); - IFC4X1_IfcCondenser_type = new entity("IfcCondenser", false, 185, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcControllerType_type = new entity("IfcControllerType", false, 215, IFC4X1_IfcDistributionControlElementType_type); - IFC4X1_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 219, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 222, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcDamper_type = new entity("IfcDamper", false, 263, IFC4X1_IfcFlowController_type); - IFC4X1_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 286, IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 289, IFC4X1_IfcDistributionSystem_type); - IFC4X1_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 290, IFC4X1_IfcDistributionElement_type); - IFC4X1_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 321, IFC4X1_IfcFlowFitting_type); - IFC4X1_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 324, IFC4X1_IfcFlowSegment_type); - IFC4X1_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 327, IFC4X1_IfcFlowTreatmentDevice_type); - IFC4X1_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 335, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 342, IFC4X1_IfcFlowController_type); - IFC4X1_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 345, IFC4X1_IfcFlowStorageDevice_type); - IFC4X1_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 348, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 351, IFC4X1_IfcEnergyConversionDevice_type); - IFC4X1_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 355, IFC4X1_IfcFlowController_type); - IFC4X1_IfcFan_type = new entity("IfcFan", false, 408, IFC4X1_IfcFlowMovingDevice_type); - IFC4X1_IfcFilter_type = new entity("IfcFilter", false, 421, IFC4X1_IfcFlowTreatmentDevice_type); - IFC4X1_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 424, IFC4X1_IfcFlowTerminal_type); - IFC4X1_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 433, IFC4X1_IfcDistributionControlElement_type); - IFC4X1_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 767, IFC4X1_IfcDistributionControlElement_type); - IFC4X1_IfcSensor_type = new entity("IfcSensor", false, 908, IFC4X1_IfcDistributionControlElement_type); - IFC4X1_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1139, IFC4X1_IfcDistributionControlElement_type); - IFC4X1_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X1_IfcDistributionControlElement_type); - IFC4X1_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X1_IfcDistributionControlElement_type); - IFC4X1_IfcController_type = new entity("IfcController", false, 214, IFC4X1_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X1_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X1_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X1_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAlignment2DHorizontalSegment_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CurveGeometry", new named_type(IFC4X1_IfcCurveSegment2D_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TangentialContinuity", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DVerSegCircularArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DVerSegLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ParabolaConstant", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DVerSegParabolicArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAlignment2DVerticalSegment_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcAlignment2DVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X1_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignment2DVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Horizontal", new named_type(IFC4X1_IfcAlignment2DHorizontal_type), false)); - attributes.push_back(new attribute("Vertical", new named_type(IFC4X1_IfcAlignment2DVertical_type), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAlignmentCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X1_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X1_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X1_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X1_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X1_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X1_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X1_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X1_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X1_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X1_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X1_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X1_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X1_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X1_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X1_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X1_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X1_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X1_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X1_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X1_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X1_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X1_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X1_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X1_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X1_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X1_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X1_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X1_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X1_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X1_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X1_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X1_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X1_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X1_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X1_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X1_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X1_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X1_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X1_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X1_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X1_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X1_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X1_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X1_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X1_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X1_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X1_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsCCW", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCircularArcSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X1_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X1_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X1_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcCompositeCurveSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X1_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Transition", new named_type(IFC4X1_IfcTransitionCode_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X1_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X1_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X1_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X1_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X1_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X1_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X1_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X1_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X1_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X1_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X1_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X1_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X1_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X1_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X1_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X1_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X1_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X1_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X1_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X1_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X1_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X1_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X1_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X1_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X1_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X1_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X1_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X1_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X1_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X1_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("AlongHorizontal", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X1_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X1_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X1_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X1_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X1_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X1_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X1_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X1_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X1_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X1_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X1_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X1_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X1_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X1_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X1_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X1_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X1_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X1_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X1_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X1_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X1_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X1_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X1_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelorDraughting", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X1_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X1_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X1_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X1_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X1_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X1_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X1_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X1_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X1_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X1_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X1_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X1_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X1_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X1_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X1_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X1_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X1_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X1_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X1_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X1_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X1_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X1_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X1_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X1_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X1_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X1_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X1_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X1_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X1_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X1_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X1_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X1_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X1_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X1_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X1_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X1_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X1_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X1_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X1_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X1_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X1_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLineSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC4X1_IfcDistanceExpression_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X1_IfcOrientationExpression_type), true)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X1_IfcCurve_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X1_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X1_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X1_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X1_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X1_IfcReal_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X1_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X1_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X1_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X1_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X1_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X1_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X1_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X1_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X1_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X1_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X1_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X1_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X1_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X1_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X1_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X1_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X1_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X1_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X1_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X1_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X1_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X1_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X1_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X1_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X1_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X1_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X1_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X1_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X1_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X1_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X1_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X1_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X1_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X1_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X1_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LateralAxisDirection", new named_type(IFC4X1_IfcDirection_type), false)); - attributes.push_back(new attribute("VerticalAxisDirection", new named_type(IFC4X1_IfcDirection_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOrientationExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X1_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X1_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X1_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X1_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X1_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X1_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X1_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X1_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X1_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X1_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X1_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X1_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X1_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X1_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X1_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X1_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X1_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X1_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X1_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X1_IfcCartesianPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X1_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X1_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X1_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcPresentationStyleAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X1_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X1_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X1_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X1_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X1_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X1_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X1_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X1_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X1_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X1_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X1_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X1_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X1_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X1_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X1_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4X1_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X1_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X1_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X1_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X1_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X1_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X1_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X1_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X1_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcReferentTypeEnum_type), true)); - attributes.push_back(new attribute("RestartDistance", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X1_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X1_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X1_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X1_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X1_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X1_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X1_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X1_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X1_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X1_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X1_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X1_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X1_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X1_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X1_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X1_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X1_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X1_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X1_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X1_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X1_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X1_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X1_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X1_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X1_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X1_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X1_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X1_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X1_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X1_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X1_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X1_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X1_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X1_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X1_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X1_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X1_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X1_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X1_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X1_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X1_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X1_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X1_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X1_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X1_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X1_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X1_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X1_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X1_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new simple_type(simple_type::logical_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X1_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X1_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X1_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X1_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X1_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X1_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X1_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X1_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X1_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X1_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X1_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X1_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X1_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X1_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X1_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X1_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X1_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X1_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X1_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X1_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X1_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X1_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X1_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X1_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X1_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X1_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X1_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X1_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X1_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X1_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X1_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X1_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X1_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X1_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X1_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X1_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X1_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X1_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X1_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X1_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X1_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X1_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X1_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X1_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X1_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X1_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X1_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X1_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X1_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X1_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X1_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X1_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X1_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X1_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X1_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X1_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X1_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X1_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X1_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X1_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X1_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X1_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X1_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X1_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X1_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X1_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStyleAssignmentSelect_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X1_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X1_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X1_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X1_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X1_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X1_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X1_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X1_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X1_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X1_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X1_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X1_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X1_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X1_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X1_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X1_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X1_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X1_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X1_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X1_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X1_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X1_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X1_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X1_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X1_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X1_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X1_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X1_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X1_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X1_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X1_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X1_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X1_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X1_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X1_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X1_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X1_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X1_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X1_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X1_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X1_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X1_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X1_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X1_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X1_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X1_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X1_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X1_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X1_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("StartRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EndRadius", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("IsStartRadiusCCW", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("IsEndRadiusCCW", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("TransitionCurveType", new named_type(IFC4X1_IfcTransitionCurveType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTransitionCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTransportElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTransportElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X1_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X1_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X1_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X1_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X1_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X1_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X1_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X1_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X1_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X1_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X1_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X1_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X1_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X1_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X1_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X1_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X1_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X1_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X1_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X1_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X1_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X1_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X1_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X1_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X1_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4X1_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4X1_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X1_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToActor_type, IFC4X1_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X1_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPerson_type, IFC4X1_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X1_IfcOrganization_type, IFC4X1_IfcOrganization_type->attributes()[4])); - IFC4X1_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToAlignmentCurve", inverse_attribute::set_type, 1, -1, IFC4X1_IfcAlignmentCurve_type, IFC4X1_IfcAlignmentCurve_type->attributes()[0])); - IFC4X1_IfcAlignment2DHorizontal_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToHorizontal", inverse_attribute::set_type, 1, 1, IFC4X1_IfcAlignment2DHorizontal_type, IFC4X1_IfcAlignment2DHorizontal_type->attributes()[1])); - IFC4X1_IfcAlignment2DHorizontalSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToAlignmentCurve", inverse_attribute::set_type, 1, 1, IFC4X1_IfcAlignmentCurve_type, IFC4X1_IfcAlignmentCurve_type->attributes()[1])); - IFC4X1_IfcAlignment2DVertical_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToVertical", inverse_attribute::set_type, 1, 1, IFC4X1_IfcAlignment2DVertical_type, IFC4X1_IfcAlignment2DVertical_type->attributes()[0])); - IFC4X1_IfcAlignment2DVerticalSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X1_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesApproval_type, IFC4X1_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceApprovalRelationship_type, IFC4X1_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X1_IfcApprovalRelationship_type, IFC4X1_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X1_IfcApprovalRelationship_type, IFC4X1_IfcApprovalRelationship_type->attributes()[0])); - IFC4X1_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesClassification_type, IFC4X1_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcClassificationReference_type, IFC4X1_IfcClassificationReference_type->attributes()[0])); - IFC4X1_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesClassification_type, IFC4X1_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcClassificationReference_type, IFC4X1_IfcClassificationReference_type->attributes()[0])); - IFC4X1_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X1_IfcCompositeCurve_type, IFC4X1_IfcCompositeCurve_type->attributes()[0])); - IFC4X1_IfcCompositeCurveSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceConstraintRelationship_type, IFC4X1_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X1_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByProperties_type, IFC4X1_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDeclares_type, IFC4X1_IfcRelDeclares_type->attributes()[0])); - IFC4X1_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToControl_type, IFC4X1_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X1_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X1_IfcCoordinateOperation_type, IFC4X1_IfcCoordinateOperation_type->attributes()[0])); - IFC4X1_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelCoversSpaces_type, IFC4X1_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelCoversBldgElements_type, IFC4X1_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X1_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelFlowControlElements_type, IFC4X1_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X1_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsPortToElement_type, IFC4X1_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X1_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelFlowControlElements_type, IFC4X1_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X1_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesDocument_type, IFC4X1_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcDocumentReference_type, IFC4X1_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X1_IfcDocumentInformationRelationship_type, IFC4X1_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X1_IfcDocumentInformationRelationship_type, IFC4X1_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X1_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesDocument_type, IFC4X1_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X1_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelFillsElement_type, IFC4X1_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsElements_type, IFC4X1_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelInterferesElements_type, IFC4X1_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelInterferesElements_type, IFC4X1_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelProjectsElement_type, IFC4X1_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelReferencedInSpatialStructure_type, IFC4X1_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelVoidsElement_type, IFC4X1_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsWithRealizingElements_type, IFC4X1_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary_type, IFC4X1_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsElements_type, IFC4X1_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelCoversBldgElements_type, IFC4X1_IfcRelCoversBldgElements_type->attributes()[0])); - IFC4X1_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X1_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary_type, IFC4X1_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X1_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X1_IfcTextureMap_type, IFC4X1_IfcTextureMap_type->attributes()[1])); - IFC4X1_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcRelProjectsElement_type, IFC4X1_IfcRelProjectsElement_type->attributes()[1])); - IFC4X1_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcRelVoidsElement_type, IFC4X1_IfcRelVoidsElement_type->attributes()[1])); - IFC4X1_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X1_IfcGeometricRepresentationSubContext_type, IFC4X1_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X1_IfcCoordinateOperation_type, IFC4X1_IfcCoordinateOperation_type->attributes()[0])); - IFC4X1_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X1_IfcGrid_type, IFC4X1_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X1_IfcGrid_type, IFC4X1_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X1_IfcGrid_type, IFC4X1_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X1_IfcVirtualGridIntersection_type, IFC4X1_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X1_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToGroup_type, IFC4X1_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4X1_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X1_IfcPolygonalFaceSet_type, IFC4X1_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4X1_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesLibrary_type, IFC4X1_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcLibraryReference_type, IFC4X1_IfcLibraryReference_type->attributes()[2])); - IFC4X1_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesLibrary_type, IFC4X1_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X1_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X1_IfcMaterialDefinitionRepresentation_type, IFC4X1_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X1_IfcMaterialRelationship_type, IFC4X1_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X1_IfcMaterialRelationship_type, IFC4X1_IfcMaterialRelationship_type->attributes()[0])); - IFC4X1_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcMaterialConstituentSet_type, IFC4X1_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X1_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesMaterial_type, IFC4X1_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X1_IfcMaterialProperties_type, IFC4X1_IfcMaterialProperties_type->attributes()[0])); - IFC4X1_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcMaterialLayerSet_type, IFC4X1_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X1_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcMaterialProfileSet_type, IFC4X1_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X1_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X1_IfcRelAssociatesMaterial_type, IFC4X1_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X1_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDefinesByObject_type, IFC4X1_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByObject_type, IFC4X1_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDefinesByType_type, IFC4X1_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByProperties_type, IFC4X1_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X1_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssigns_type, IFC4X1_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelNests_type, IFC4X1_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelNests_type, IFC4X1_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDeclares_type, IFC4X1_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAggregates_type, IFC4X1_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelAggregates_type, IFC4X1_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociates_type, IFC4X1_IfcRelAssociates_type->attributes()[0])); - IFC4X1_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X1_IfcProduct_type, IFC4X1_IfcProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedByPlacements", inverse_attribute::set_type, 0, -1, IFC4X1_IfcLocalPlacement_type, IFC4X1_IfcLocalPlacement_type->attributes()[0])); - IFC4X1_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelFillsElement_type, IFC4X1_IfcRelFillsElement_type->attributes()[0])); - IFC4X1_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcOrganizationRelationship_type, IFC4X1_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X1_IfcOrganizationRelationship_type, IFC4X1_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPersonAndOrganization_type, IFC4X1_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X1_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPersonAndOrganization_type, IFC4X1_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X1_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X1_IfcPhysicalComplexQuantity_type, IFC4X1_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X1_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsPortToElement_type, IFC4X1_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsPorts_type, IFC4X1_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsPorts_type, IFC4X1_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X1_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X1_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSequence_type, IFC4X1_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSequence_type, IFC4X1_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProcess_type, IFC4X1_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X1_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProduct_type, IFC4X1_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X1_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X1_IfcProduct_type, IFC4X1_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcShapeAspect_type, IFC4X1_IfcShapeAspect_type->attributes()[4])); - IFC4X1_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X1_IfcProfileProperties_type, IFC4X1_IfcProfileProperties_type->attributes()[0])); - IFC4X1_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertySet_type, IFC4X1_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertyDependencyRelationship_type, IFC4X1_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertyDependencyRelationship_type, IFC4X1_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X1_IfcComplexProperty_type, IFC4X1_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceConstraintRelationship_type, IFC4X1_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceApprovalRelationship_type, IFC4X1_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X1_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDeclares_type, IFC4X1_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociates_type, IFC4X1_IfcRelAssociates_type->attributes()[0])); - IFC4X1_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X1_IfcTypeObject_type, IFC4X1_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByTemplate_type, IFC4X1_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByProperties_type, IFC4X1_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X1_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByTemplate_type, IFC4X1_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X1_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X1_IfcComplexPropertyTemplate_type, IFC4X1_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertySetTemplate_type, IFC4X1_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X1_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary1stLevel_type, IFC4X1_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X1_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelSpaceBoundary2ndLevel_type, IFC4X1_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X1_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRepresentationMap_type, IFC4X1_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X1_IfcPresentationLayerAssignment_type, IFC4X1_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X1_IfcProductRepresentation_type, IFC4X1_IfcProductRepresentation_type->attributes()[2])); - IFC4X1_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRepresentation_type, IFC4X1_IfcRepresentation_type->attributes()[0])); - IFC4X1_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X1_IfcPresentationLayerAssignment_type, IFC4X1_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X1_IfcStyledItem_type, IFC4X1_IfcStyledItem_type->attributes()[0])); - IFC4X1_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X1_IfcShapeAspect_type, IFC4X1_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X1_IfcMappedItem_type, IFC4X1_IfcMappedItem_type->attributes()[0])); - IFC4X1_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToResource_type, IFC4X1_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X1_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X1_IfcShapeAspect_type, IFC4X1_IfcShapeAspect_type->attributes()[0])); - IFC4X1_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelCoversSpaces_type, IFC4X1_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary_type, IFC4X1_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X1_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelServicesBuildings_type, IFC4X1_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelReferencedInSpatialStructure_type, IFC4X1_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4X1_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsStructuralActivity_type, IFC4X1_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X1_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X1_IfcRelConnectsStructuralMember_type, IFC4X1_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X1_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsStructuralActivity_type, IFC4X1_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X1_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X1_IfcStructuralResultGroup_type, IFC4X1_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X1_IfcStructuralAnalysisModel_type, IFC4X1_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X1_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsStructuralMember_type, IFC4X1_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X1_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X1_IfcStructuralAnalysisModel_type, IFC4X1_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X1_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcTextureCoordinate_type, IFC4X1_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X1_IfcSurfaceStyleWithTextures_type, IFC4X1_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X1_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelServicesBuildings_type, IFC4X1_IfcRelServicesBuildings_type->attributes()[0])); - IFC4X1_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X1_IfcIndexedColourMap_type, IFC4X1_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X1_IfcIndexedTextureMap_type, IFC4X1_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X1_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X1_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDefinesByType_type, IFC4X1_IfcRelDefinesByType_type->attributes()[1])); - IFC4X1_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProcess_type, IFC4X1_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X1_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProduct_type, IFC4X1_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X1_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToResource_type, IFC4X1_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X1_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X1_IfcActionRequest_type);defs.push_back(IFC4X1_IfcCostItem_type);defs.push_back(IFC4X1_IfcCostSchedule_type);defs.push_back(IFC4X1_IfcPerformanceHistory_type);defs.push_back(IFC4X1_IfcPermit_type);defs.push_back(IFC4X1_IfcProjectOrder_type);defs.push_back(IFC4X1_IfcWorkCalendar_type);defs.push_back(IFC4X1_IfcWorkControl_type); - IFC4X1_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcActor_type);defs.push_back(IFC4X1_IfcControl_type);defs.push_back(IFC4X1_IfcGroup_type);defs.push_back(IFC4X1_IfcProcess_type);defs.push_back(IFC4X1_IfcProduct_type);defs.push_back(IFC4X1_IfcResource_type); - IFC4X1_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X1_IfcActuator_type);defs.push_back(IFC4X1_IfcAlarm_type);defs.push_back(IFC4X1_IfcController_type);defs.push_back(IFC4X1_IfcFlowInstrument_type);defs.push_back(IFC4X1_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X1_IfcSensor_type);defs.push_back(IFC4X1_IfcUnitaryControlElement_type); - IFC4X1_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X1_IfcActuatorType_type);defs.push_back(IFC4X1_IfcAlarmType_type);defs.push_back(IFC4X1_IfcControllerType_type);defs.push_back(IFC4X1_IfcFlowInstrumentType_type);defs.push_back(IFC4X1_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X1_IfcSensorType_type);defs.push_back(IFC4X1_IfcUnitaryControlElementType_type); - IFC4X1_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcAdvancedBrep_type);defs.push_back(IFC4X1_IfcFacetedBrep_type); - IFC4X1_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcAdvancedBrepWithVoids_type); - IFC4X1_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcAdvancedFace_type); - IFC4X1_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(13); - defs.push_back(IFC4X1_IfcAirTerminal_type);defs.push_back(IFC4X1_IfcAudioVisualAppliance_type);defs.push_back(IFC4X1_IfcCommunicationsAppliance_type);defs.push_back(IFC4X1_IfcElectricAppliance_type);defs.push_back(IFC4X1_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X1_IfcLamp_type);defs.push_back(IFC4X1_IfcLightFixture_type);defs.push_back(IFC4X1_IfcMedicalDevice_type);defs.push_back(IFC4X1_IfcOutlet_type);defs.push_back(IFC4X1_IfcSanitaryTerminal_type);defs.push_back(IFC4X1_IfcSpaceHeater_type);defs.push_back(IFC4X1_IfcStackTerminal_type);defs.push_back(IFC4X1_IfcWasteTerminal_type); - IFC4X1_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X1_IfcAirTerminalBox_type);defs.push_back(IFC4X1_IfcDamper_type);defs.push_back(IFC4X1_IfcElectricDistributionBoard_type);defs.push_back(IFC4X1_IfcElectricTimeControl_type);defs.push_back(IFC4X1_IfcFlowMeter_type);defs.push_back(IFC4X1_IfcProtectiveDevice_type);defs.push_back(IFC4X1_IfcSwitchingDevice_type);defs.push_back(IFC4X1_IfcValve_type); - IFC4X1_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X1_IfcAirTerminalBoxType_type);defs.push_back(IFC4X1_IfcDamperType_type);defs.push_back(IFC4X1_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X1_IfcElectricTimeControlType_type);defs.push_back(IFC4X1_IfcFlowMeterType_type);defs.push_back(IFC4X1_IfcProtectiveDeviceType_type);defs.push_back(IFC4X1_IfcSwitchingDeviceType_type);defs.push_back(IFC4X1_IfcValveType_type); - IFC4X1_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(13); - defs.push_back(IFC4X1_IfcAirTerminalType_type);defs.push_back(IFC4X1_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X1_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X1_IfcElectricApplianceType_type);defs.push_back(IFC4X1_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X1_IfcLampType_type);defs.push_back(IFC4X1_IfcLightFixtureType_type);defs.push_back(IFC4X1_IfcMedicalDeviceType_type);defs.push_back(IFC4X1_IfcOutletType_type);defs.push_back(IFC4X1_IfcSanitaryTerminalType_type);defs.push_back(IFC4X1_IfcSpaceHeaterType_type);defs.push_back(IFC4X1_IfcStackTerminalType_type);defs.push_back(IFC4X1_IfcWasteTerminalType_type); - IFC4X1_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X1_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X1_IfcBoiler_type);defs.push_back(IFC4X1_IfcBurner_type);defs.push_back(IFC4X1_IfcChiller_type);defs.push_back(IFC4X1_IfcCoil_type);defs.push_back(IFC4X1_IfcCondenser_type);defs.push_back(IFC4X1_IfcCooledBeam_type);defs.push_back(IFC4X1_IfcCoolingTower_type);defs.push_back(IFC4X1_IfcElectricGenerator_type);defs.push_back(IFC4X1_IfcElectricMotor_type);defs.push_back(IFC4X1_IfcEngine_type);defs.push_back(IFC4X1_IfcEvaporativeCooler_type);defs.push_back(IFC4X1_IfcEvaporator_type);defs.push_back(IFC4X1_IfcHeatExchanger_type);defs.push_back(IFC4X1_IfcHumidifier_type);defs.push_back(IFC4X1_IfcMotorConnection_type);defs.push_back(IFC4X1_IfcSolarDevice_type);defs.push_back(IFC4X1_IfcTransformer_type);defs.push_back(IFC4X1_IfcTubeBundle_type);defs.push_back(IFC4X1_IfcUnitaryEquipment_type); - IFC4X1_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X1_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X1_IfcBoilerType_type);defs.push_back(IFC4X1_IfcBurnerType_type);defs.push_back(IFC4X1_IfcChillerType_type);defs.push_back(IFC4X1_IfcCoilType_type);defs.push_back(IFC4X1_IfcCondenserType_type);defs.push_back(IFC4X1_IfcCooledBeamType_type);defs.push_back(IFC4X1_IfcCoolingTowerType_type);defs.push_back(IFC4X1_IfcElectricGeneratorType_type);defs.push_back(IFC4X1_IfcElectricMotorType_type);defs.push_back(IFC4X1_IfcEngineType_type);defs.push_back(IFC4X1_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X1_IfcEvaporatorType_type);defs.push_back(IFC4X1_IfcHeatExchangerType_type);defs.push_back(IFC4X1_IfcHumidifierType_type);defs.push_back(IFC4X1_IfcMotorConnectionType_type);defs.push_back(IFC4X1_IfcSolarDeviceType_type);defs.push_back(IFC4X1_IfcTransformerType_type);defs.push_back(IFC4X1_IfcTubeBundleType_type);defs.push_back(IFC4X1_IfcUnitaryEquipmentType_type); - IFC4X1_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcAlignment_type); - IFC4X1_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X1_IfcAlignment2DHorizontal_type);defs.push_back(IFC4X1_IfcAlignment2DSegment_type);defs.push_back(IFC4X1_IfcAlignment2DVertical_type);defs.push_back(IFC4X1_IfcAnnotationFillArea_type);defs.push_back(IFC4X1_IfcBooleanResult_type);defs.push_back(IFC4X1_IfcBoundingBox_type);defs.push_back(IFC4X1_IfcCartesianPointList_type);defs.push_back(IFC4X1_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X1_IfcCompositeCurveSegment_type);defs.push_back(IFC4X1_IfcCsgPrimitive3D_type);defs.push_back(IFC4X1_IfcCurve_type);defs.push_back(IFC4X1_IfcDirection_type);defs.push_back(IFC4X1_IfcDistanceExpression_type);defs.push_back(IFC4X1_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X1_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X1_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X1_IfcGeometricSet_type);defs.push_back(IFC4X1_IfcHalfSpaceSolid_type);defs.push_back(IFC4X1_IfcLightSource_type);defs.push_back(IFC4X1_IfcOrientationExpression_type);defs.push_back(IFC4X1_IfcPlacement_type);defs.push_back(IFC4X1_IfcPlanarExtent_type);defs.push_back(IFC4X1_IfcPoint_type);defs.push_back(IFC4X1_IfcSectionedSpine_type);defs.push_back(IFC4X1_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X1_IfcSolidModel_type);defs.push_back(IFC4X1_IfcSurface_type);defs.push_back(IFC4X1_IfcTessellatedItem_type);defs.push_back(IFC4X1_IfcTextLiteral_type);defs.push_back(IFC4X1_IfcVector_type); - IFC4X1_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcAlignment2DHorizontalSegment_type);defs.push_back(IFC4X1_IfcAlignment2DVerticalSegment_type); - IFC4X1_IfcAlignment2DSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcAlignment2DVerSegCircularArc_type);defs.push_back(IFC4X1_IfcAlignment2DVerSegLine_type);defs.push_back(IFC4X1_IfcAlignment2DVerSegParabolicArc_type); - IFC4X1_IfcAlignment2DVerticalSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X1_IfcAlignmentCurve_type);defs.push_back(IFC4X1_IfcBSplineCurve_type);defs.push_back(IFC4X1_IfcCompositeCurve_type);defs.push_back(IFC4X1_IfcCurveSegment2D_type);defs.push_back(IFC4X1_IfcIndexedPolyCurve_type);defs.push_back(IFC4X1_IfcPolyline_type);defs.push_back(IFC4X1_IfcTrimmedCurve_type); - IFC4X1_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X1_IfcAnnotation_type);defs.push_back(IFC4X1_IfcElement_type);defs.push_back(IFC4X1_IfcPort_type);defs.push_back(IFC4X1_IfcPositioningElement_type);defs.push_back(IFC4X1_IfcProxy_type);defs.push_back(IFC4X1_IfcSpatialElement_type);defs.push_back(IFC4X1_IfcStructuralActivity_type);defs.push_back(IFC4X1_IfcStructuralItem_type); - IFC4X1_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X1_IfcApprovalRelationship_type);defs.push_back(IFC4X1_IfcCurrencyRelationship_type);defs.push_back(IFC4X1_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X1_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X1_IfcMaterialRelationship_type);defs.push_back(IFC4X1_IfcOrganizationRelationship_type);defs.push_back(IFC4X1_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X1_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X1_IfcResourceConstraintRelationship_type); - IFC4X1_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X1_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X1_IfcCompositeProfileDef_type);defs.push_back(IFC4X1_IfcDerivedProfileDef_type);defs.push_back(IFC4X1_IfcParameterizedProfileDef_type); - IFC4X1_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcArbitraryProfileDefWithVoids_type); - IFC4X1_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcAsset_type);defs.push_back(IFC4X1_IfcInventory_type);defs.push_back(IFC4X1_IfcStructuralLoadGroup_type);defs.push_back(IFC4X1_IfcStructuralResultGroup_type);defs.push_back(IFC4X1_IfcSystem_type); - IFC4X1_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X1_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X1_IfcCShapeProfileDef_type);defs.push_back(IFC4X1_IfcCircleProfileDef_type);defs.push_back(IFC4X1_IfcEllipseProfileDef_type);defs.push_back(IFC4X1_IfcIShapeProfileDef_type);defs.push_back(IFC4X1_IfcLShapeProfileDef_type);defs.push_back(IFC4X1_IfcRectangleProfileDef_type);defs.push_back(IFC4X1_IfcTShapeProfileDef_type);defs.push_back(IFC4X1_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X1_IfcUShapeProfileDef_type);defs.push_back(IFC4X1_IfcZShapeProfileDef_type); - IFC4X1_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcAxis1Placement_type);defs.push_back(IFC4X1_IfcAxis2Placement2D_type);defs.push_back(IFC4X1_IfcAxis2Placement3D_type); - IFC4X1_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcBSplineCurveWithKnots_type); - IFC4X1_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcBSplineSurface_type);defs.push_back(IFC4X1_IfcCurveBoundedPlane_type);defs.push_back(IFC4X1_IfcCurveBoundedSurface_type);defs.push_back(IFC4X1_IfcRectangularTrimmedSurface_type); - IFC4X1_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcBSplineSurfaceWithKnots_type); - IFC4X1_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(21); - defs.push_back(IFC4X1_IfcBeam_type);defs.push_back(IFC4X1_IfcBuildingElementProxy_type);defs.push_back(IFC4X1_IfcChimney_type);defs.push_back(IFC4X1_IfcColumn_type);defs.push_back(IFC4X1_IfcCovering_type);defs.push_back(IFC4X1_IfcCurtainWall_type);defs.push_back(IFC4X1_IfcDoor_type);defs.push_back(IFC4X1_IfcFooting_type);defs.push_back(IFC4X1_IfcMember_type);defs.push_back(IFC4X1_IfcPile_type);defs.push_back(IFC4X1_IfcPlate_type);defs.push_back(IFC4X1_IfcRailing_type);defs.push_back(IFC4X1_IfcRamp_type);defs.push_back(IFC4X1_IfcRampFlight_type);defs.push_back(IFC4X1_IfcRoof_type);defs.push_back(IFC4X1_IfcShadingDevice_type);defs.push_back(IFC4X1_IfcSlab_type);defs.push_back(IFC4X1_IfcStair_type);defs.push_back(IFC4X1_IfcStairFlight_type);defs.push_back(IFC4X1_IfcWall_type);defs.push_back(IFC4X1_IfcWindow_type); - IFC4X1_IfcBuildingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcBeamStandardCase_type); - IFC4X1_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(21); - defs.push_back(IFC4X1_IfcBeamType_type);defs.push_back(IFC4X1_IfcBuildingElementProxyType_type);defs.push_back(IFC4X1_IfcChimneyType_type);defs.push_back(IFC4X1_IfcColumnType_type);defs.push_back(IFC4X1_IfcCoveringType_type);defs.push_back(IFC4X1_IfcCurtainWallType_type);defs.push_back(IFC4X1_IfcDoorType_type);defs.push_back(IFC4X1_IfcFootingType_type);defs.push_back(IFC4X1_IfcMemberType_type);defs.push_back(IFC4X1_IfcPileType_type);defs.push_back(IFC4X1_IfcPlateType_type);defs.push_back(IFC4X1_IfcRailingType_type);defs.push_back(IFC4X1_IfcRampFlightType_type);defs.push_back(IFC4X1_IfcRampType_type);defs.push_back(IFC4X1_IfcRoofType_type);defs.push_back(IFC4X1_IfcShadingDeviceType_type);defs.push_back(IFC4X1_IfcSlabType_type);defs.push_back(IFC4X1_IfcStairFlightType_type);defs.push_back(IFC4X1_IfcStairType_type);defs.push_back(IFC4X1_IfcWallType_type);defs.push_back(IFC4X1_IfcWindowType_type); - IFC4X1_IfcBuildingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcBlobTexture_type);defs.push_back(IFC4X1_IfcImageTexture_type);defs.push_back(IFC4X1_IfcPixelTexture_type); - IFC4X1_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcBlock_type);defs.push_back(IFC4X1_IfcRectangularPyramid_type);defs.push_back(IFC4X1_IfcRightCircularCone_type);defs.push_back(IFC4X1_IfcRightCircularCylinder_type);defs.push_back(IFC4X1_IfcSphere_type); - IFC4X1_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcBooleanClippingResult_type); - IFC4X1_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcBoundaryCurve_type); - IFC4X1_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X1_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X1_IfcBoundaryNodeCondition_type); - IFC4X1_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcBoundaryNodeConditionWarping_type); - IFC4X1_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcBoundedCurve_type);defs.push_back(IFC4X1_IfcConic_type);defs.push_back(IFC4X1_IfcLine_type);defs.push_back(IFC4X1_IfcOffsetCurve_type);defs.push_back(IFC4X1_IfcPcurve_type);defs.push_back(IFC4X1_IfcSurfaceCurve_type); - IFC4X1_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcBoundedSurface_type);defs.push_back(IFC4X1_IfcElementarySurface_type);defs.push_back(IFC4X1_IfcSweptSurface_type); - IFC4X1_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcBoxedHalfSpace_type);defs.push_back(IFC4X1_IfcPolygonalBoundedHalfSpace_type); - IFC4X1_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcBuilding_type);defs.push_back(IFC4X1_IfcBuildingStorey_type);defs.push_back(IFC4X1_IfcSite_type);defs.push_back(IFC4X1_IfcSpace_type); - IFC4X1_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(10); - defs.push_back(IFC4X1_IfcBuildingElement_type);defs.push_back(IFC4X1_IfcCivilElement_type);defs.push_back(IFC4X1_IfcDistributionElement_type);defs.push_back(IFC4X1_IfcElementAssembly_type);defs.push_back(IFC4X1_IfcElementComponent_type);defs.push_back(IFC4X1_IfcFeatureElement_type);defs.push_back(IFC4X1_IfcFurnishingElement_type);defs.push_back(IFC4X1_IfcGeographicElement_type);defs.push_back(IFC4X1_IfcTransportElement_type);defs.push_back(IFC4X1_IfcVirtualElement_type); - IFC4X1_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcBuildingElementPart_type);defs.push_back(IFC4X1_IfcDiscreteAccessory_type);defs.push_back(IFC4X1_IfcFastener_type);defs.push_back(IFC4X1_IfcMechanicalFastener_type);defs.push_back(IFC4X1_IfcReinforcingElement_type);defs.push_back(IFC4X1_IfcVibrationIsolator_type); - IFC4X1_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcBuildingElementPartType_type);defs.push_back(IFC4X1_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X1_IfcFastenerType_type);defs.push_back(IFC4X1_IfcMechanicalFastenerType_type);defs.push_back(IFC4X1_IfcReinforcingElementType_type);defs.push_back(IFC4X1_IfcVibrationIsolatorType_type); - IFC4X1_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X1_IfcBuildingElementType_type);defs.push_back(IFC4X1_IfcCivilElementType_type);defs.push_back(IFC4X1_IfcDistributionElementType_type);defs.push_back(IFC4X1_IfcElementAssemblyType_type);defs.push_back(IFC4X1_IfcElementComponentType_type);defs.push_back(IFC4X1_IfcFurnishingElementType_type);defs.push_back(IFC4X1_IfcGeographicElementType_type);defs.push_back(IFC4X1_IfcTransportElementType_type); - IFC4X1_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcBuildingSystem_type);defs.push_back(IFC4X1_IfcDistributionSystem_type);defs.push_back(IFC4X1_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X1_IfcZone_type); - IFC4X1_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcCableCarrierFitting_type);defs.push_back(IFC4X1_IfcCableFitting_type);defs.push_back(IFC4X1_IfcDuctFitting_type);defs.push_back(IFC4X1_IfcJunctionBox_type);defs.push_back(IFC4X1_IfcPipeFitting_type); - IFC4X1_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcCableCarrierFittingType_type);defs.push_back(IFC4X1_IfcCableFittingType_type);defs.push_back(IFC4X1_IfcDuctFittingType_type);defs.push_back(IFC4X1_IfcJunctionBoxType_type);defs.push_back(IFC4X1_IfcPipeFittingType_type); - IFC4X1_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcCableCarrierSegment_type);defs.push_back(IFC4X1_IfcCableSegment_type);defs.push_back(IFC4X1_IfcDuctSegment_type);defs.push_back(IFC4X1_IfcPipeSegment_type); - IFC4X1_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X1_IfcCableSegmentType_type);defs.push_back(IFC4X1_IfcDuctSegmentType_type);defs.push_back(IFC4X1_IfcPipeSegmentType_type); - IFC4X1_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcCartesianPoint_type);defs.push_back(IFC4X1_IfcPointOnCurve_type);defs.push_back(IFC4X1_IfcPointOnSurface_type); - IFC4X1_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcCartesianPointList2D_type);defs.push_back(IFC4X1_IfcCartesianPointList3D_type); - IFC4X1_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X1_IfcCartesianTransformationOperator3D_type); - IFC4X1_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X1_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X1_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcCenterLineProfileDef_type); - IFC4X1_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcCircle_type);defs.push_back(IFC4X1_IfcEllipse_type); - IFC4X1_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcCircleHollowProfileDef_type); - IFC4X1_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcCircularArcSegment2D_type);defs.push_back(IFC4X1_IfcLineSegment2D_type);defs.push_back(IFC4X1_IfcTransitionCurveSegment2D_type); - IFC4X1_IfcCurveSegment2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcClassification_type);defs.push_back(IFC4X1_IfcDocumentInformation_type);defs.push_back(IFC4X1_IfcLibraryInformation_type); - IFC4X1_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcClassificationReference_type);defs.push_back(IFC4X1_IfcDocumentReference_type);defs.push_back(IFC4X1_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X1_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X1_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X1_IfcLibraryReference_type); - IFC4X1_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcClosedShell_type);defs.push_back(IFC4X1_IfcOpenShell_type); - IFC4X1_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcColourRgb_type); - IFC4X1_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X1_IfcColourRgbList_type);defs.push_back(IFC4X1_IfcColourSpecification_type);defs.push_back(IFC4X1_IfcCurveStyleFont_type);defs.push_back(IFC4X1_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X1_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X1_IfcIndexedColourMap_type);defs.push_back(IFC4X1_IfcPreDefinedItem_type);defs.push_back(IFC4X1_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X1_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X1_IfcSurfaceStyleShading_type);defs.push_back(IFC4X1_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X1_IfcSurfaceTexture_type);defs.push_back(IFC4X1_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X1_IfcTextStyleTextModel_type);defs.push_back(IFC4X1_IfcTextureCoordinate_type);defs.push_back(IFC4X1_IfcTextureVertex_type);defs.push_back(IFC4X1_IfcTextureVertexList_type); - IFC4X1_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcColumnStandardCase_type); - IFC4X1_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcComplexProperty_type);defs.push_back(IFC4X1_IfcSimpleProperty_type); - IFC4X1_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X1_IfcSimplePropertyTemplate_type); - IFC4X1_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcCompositeCurveOnSurface_type); - IFC4X1_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcCompressor_type);defs.push_back(IFC4X1_IfcFan_type);defs.push_back(IFC4X1_IfcPump_type); - IFC4X1_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcCompressorType_type);defs.push_back(IFC4X1_IfcFanType_type);defs.push_back(IFC4X1_IfcPumpType_type); - IFC4X1_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X1_IfcConnectedFaceSet_type);defs.push_back(IFC4X1_IfcEdge_type);defs.push_back(IFC4X1_IfcFace_type);defs.push_back(IFC4X1_IfcFaceBound_type);defs.push_back(IFC4X1_IfcLoop_type);defs.push_back(IFC4X1_IfcPath_type);defs.push_back(IFC4X1_IfcVertex_type); - IFC4X1_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X1_IfcConnectionPointGeometry_type);defs.push_back(IFC4X1_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X1_IfcConnectionVolumeGeometry_type); - IFC4X1_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcConnectionPointEccentricity_type); - IFC4X1_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X1_IfcConstructionMaterialResource_type);defs.push_back(IFC4X1_IfcConstructionProductResource_type);defs.push_back(IFC4X1_IfcCrewResource_type);defs.push_back(IFC4X1_IfcLaborResource_type);defs.push_back(IFC4X1_IfcSubContractResource_type); - IFC4X1_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X1_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X1_IfcConstructionProductResourceType_type);defs.push_back(IFC4X1_IfcCrewResourceType_type);defs.push_back(IFC4X1_IfcLaborResourceType_type);defs.push_back(IFC4X1_IfcSubContractResourceType_type); - IFC4X1_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcConstructionResource_type); - IFC4X1_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcConstructionResourceType_type); - IFC4X1_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcContext_type);defs.push_back(IFC4X1_IfcObject_type);defs.push_back(IFC4X1_IfcTypeObject_type); - IFC4X1_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcContextDependentUnit_type);defs.push_back(IFC4X1_IfcConversionBasedUnit_type);defs.push_back(IFC4X1_IfcSIUnit_type); - IFC4X1_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcConversionBasedUnitWithOffset_type); - IFC4X1_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcCostValue_type); - IFC4X1_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcCsgSolid_type);defs.push_back(IFC4X1_IfcManifoldSolidBrep_type);defs.push_back(IFC4X1_IfcSectionedSolid_type);defs.push_back(IFC4X1_IfcSweptAreaSolid_type);defs.push_back(IFC4X1_IfcSweptDiskSolid_type); - IFC4X1_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcCurveStyle_type);defs.push_back(IFC4X1_IfcFillAreaStyle_type);defs.push_back(IFC4X1_IfcSurfaceStyle_type);defs.push_back(IFC4X1_IfcTextStyle_type); - IFC4X1_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcCylindricalSurface_type);defs.push_back(IFC4X1_IfcPlane_type);defs.push_back(IFC4X1_IfcSphericalSurface_type);defs.push_back(IFC4X1_IfcToroidalSurface_type); - IFC4X1_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X1_IfcDistributionChamberElement_type);defs.push_back(IFC4X1_IfcEnergyConversionDevice_type);defs.push_back(IFC4X1_IfcFlowController_type);defs.push_back(IFC4X1_IfcFlowFitting_type);defs.push_back(IFC4X1_IfcFlowMovingDevice_type);defs.push_back(IFC4X1_IfcFlowSegment_type);defs.push_back(IFC4X1_IfcFlowStorageDevice_type);defs.push_back(IFC4X1_IfcFlowTerminal_type);defs.push_back(IFC4X1_IfcFlowTreatmentDevice_type); - IFC4X1_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X1_IfcDistributionChamberElementType_type);defs.push_back(IFC4X1_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X1_IfcFlowControllerType_type);defs.push_back(IFC4X1_IfcFlowFittingType_type);defs.push_back(IFC4X1_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X1_IfcFlowSegmentType_type);defs.push_back(IFC4X1_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X1_IfcFlowTerminalType_type);defs.push_back(IFC4X1_IfcFlowTreatmentDeviceType_type); - IFC4X1_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcDistributionCircuit_type); - IFC4X1_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcDistributionControlElement_type);defs.push_back(IFC4X1_IfcDistributionFlowElement_type); - IFC4X1_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcDistributionControlElementType_type);defs.push_back(IFC4X1_IfcDistributionFlowElementType_type); - IFC4X1_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcDistributionPort_type); - IFC4X1_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcDoorLiningProperties_type);defs.push_back(IFC4X1_IfcDoorPanelProperties_type);defs.push_back(IFC4X1_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X1_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X1_IfcWindowLiningProperties_type);defs.push_back(IFC4X1_IfcWindowPanelProperties_type); - IFC4X1_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcDoorStandardCase_type); - IFC4X1_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcDoorStyle_type);defs.push_back(IFC4X1_IfcElementType_type);defs.push_back(IFC4X1_IfcSpatialElementType_type);defs.push_back(IFC4X1_IfcWindowStyle_type); - IFC4X1_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcDraughtingPreDefinedColour_type); - IFC4X1_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcDraughtingPreDefinedCurveFont_type); - IFC4X1_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcDuctSilencer_type);defs.push_back(IFC4X1_IfcFilter_type);defs.push_back(IFC4X1_IfcInterceptor_type); - IFC4X1_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcDuctSilencerType_type);defs.push_back(IFC4X1_IfcFilterType_type);defs.push_back(IFC4X1_IfcInterceptorType_type); - IFC4X1_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcEdgeCurve_type);defs.push_back(IFC4X1_IfcOrientedEdge_type);defs.push_back(IFC4X1_IfcSubedge_type); - IFC4X1_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcEdgeLoop_type);defs.push_back(IFC4X1_IfcPolyLoop_type);defs.push_back(IFC4X1_IfcVertexLoop_type); - IFC4X1_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X1_IfcTank_type); - IFC4X1_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X1_IfcTankType_type); - IFC4X1_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcElementQuantity_type); - IFC4X1_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcEvent_type);defs.push_back(IFC4X1_IfcProcedure_type);defs.push_back(IFC4X1_IfcTask_type); - IFC4X1_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcEventTime_type);defs.push_back(IFC4X1_IfcLagTime_type);defs.push_back(IFC4X1_IfcResourceTime_type);defs.push_back(IFC4X1_IfcTaskTime_type);defs.push_back(IFC4X1_IfcWorkTime_type); - IFC4X1_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcEventType_type);defs.push_back(IFC4X1_IfcProcedureType_type);defs.push_back(IFC4X1_IfcTaskType_type); - IFC4X1_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcExtendedProperties_type);defs.push_back(IFC4X1_IfcPreDefinedProperties_type);defs.push_back(IFC4X1_IfcProperty_type);defs.push_back(IFC4X1_IfcPropertyEnumeration_type); - IFC4X1_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcExternalSpatialElement_type); - IFC4X1_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X1_IfcSpatialStructureElement_type);defs.push_back(IFC4X1_IfcSpatialZone_type); - IFC4X1_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X1_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X1_IfcRevolvedAreaSolid_type);defs.push_back(IFC4X1_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X1_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcExtrudedAreaSolidTapered_type); - IFC4X1_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcFaceOuterBound_type); - IFC4X1_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcFaceSurface_type); - IFC4X1_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcFacetedBrepWithVoids_type); - IFC4X1_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcFailureConnectionCondition_type);defs.push_back(IFC4X1_IfcSlippageConnectionCondition_type); - IFC4X1_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcFeatureElementAddition_type);defs.push_back(IFC4X1_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X1_IfcSurfaceFeature_type); - IFC4X1_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcFurniture_type);defs.push_back(IFC4X1_IfcSystemFurnitureElement_type); - IFC4X1_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcFurnitureType_type);defs.push_back(IFC4X1_IfcSystemFurnitureElementType_type); - IFC4X1_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcGeometricCurveSet_type); - IFC4X1_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcGeometricRepresentationContext_type); - IFC4X1_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X1_IfcMappedItem_type);defs.push_back(IFC4X1_IfcStyledItem_type);defs.push_back(IFC4X1_IfcTopologicalRepresentationItem_type); - IFC4X1_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcGeometricRepresentationSubContext_type); - IFC4X1_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcGrid_type);defs.push_back(IFC4X1_IfcLinearPositioningElement_type);defs.push_back(IFC4X1_IfcReferent_type); - IFC4X1_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcGridPlacement_type);defs.push_back(IFC4X1_IfcLinearPlacement_type);defs.push_back(IFC4X1_IfcLocalPlacement_type); - IFC4X1_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X1_IfcTessellatedFaceSet_type); - IFC4X1_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X1_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcIndexedTextureMap_type);defs.push_back(IFC4X1_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X1_IfcTextureMap_type); - IFC4X1_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcIndexedTriangleTextureMap_type); - IFC4X1_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcIntersectionCurve_type);defs.push_back(IFC4X1_IfcSeamCurve_type); - IFC4X1_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcIrregularTimeSeries_type);defs.push_back(IFC4X1_IfcRegularTimeSeries_type); - IFC4X1_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcLightSourceAmbient_type);defs.push_back(IFC4X1_IfcLightSourceDirectional_type);defs.push_back(IFC4X1_IfcLightSourceGoniometric_type);defs.push_back(IFC4X1_IfcLightSourcePositional_type); - IFC4X1_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcLightSourceSpot_type); - IFC4X1_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcMapConversion_type); - IFC4X1_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X1_IfcMaterial_type);defs.push_back(IFC4X1_IfcMaterialConstituent_type);defs.push_back(IFC4X1_IfcMaterialConstituentSet_type);defs.push_back(IFC4X1_IfcMaterialLayer_type);defs.push_back(IFC4X1_IfcMaterialLayerSet_type);defs.push_back(IFC4X1_IfcMaterialProfile_type);defs.push_back(IFC4X1_IfcMaterialProfileSet_type); - IFC4X1_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X1_IfcProductDefinitionShape_type); - IFC4X1_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X1_IfcMaterialProfileSetUsage_type); - IFC4X1_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcMaterialLayerWithOffsets_type); - IFC4X1_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcMaterialProfileSetUsageTapering_type); - IFC4X1_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcMaterialProfileWithOffsets_type); - IFC4X1_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcMaterialProperties_type);defs.push_back(IFC4X1_IfcProfileProperties_type); - IFC4X1_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcMemberStandardCase_type); - IFC4X1_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcMetric_type);defs.push_back(IFC4X1_IfcObjective_type); - IFC4X1_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcMirroredProfileDef_type); - IFC4X1_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcObjectDefinition_type);defs.push_back(IFC4X1_IfcPropertyDefinition_type);defs.push_back(IFC4X1_IfcRelationship_type); - IFC4X1_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcOccupant_type); - IFC4X1_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcOffsetCurve2D_type);defs.push_back(IFC4X1_IfcOffsetCurve3D_type);defs.push_back(IFC4X1_IfcOffsetCurveByDistances_type); - IFC4X1_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcOpeningElement_type);defs.push_back(IFC4X1_IfcVoidingFeature_type); - IFC4X1_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcOpeningStandardCase_type); - IFC4X1_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcOuterBoundaryCurve_type); - IFC4X1_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X1_IfcPhysicalSimpleQuantity_type); - IFC4X1_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcPlanarBox_type); - IFC4X1_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcPlateStandardCase_type); - IFC4X1_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcPolygonalFaceSet_type);defs.push_back(IFC4X1_IfcTriangulatedFaceSet_type); - IFC4X1_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcPostalAddress_type);defs.push_back(IFC4X1_IfcTelecomAddress_type); - IFC4X1_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcPreDefinedColour_type);defs.push_back(IFC4X1_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X1_IfcPreDefinedTextFont_type); - IFC4X1_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X1_IfcPropertySet_type);defs.push_back(IFC4X1_IfcQuantitySet_type); - IFC4X1_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcPresentationLayerWithStyle_type); - IFC4X1_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcProject_type);defs.push_back(IFC4X1_IfcProjectLibrary_type); - IFC4X1_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcProjectedCRS_type); - IFC4X1_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcProjectionElement_type); - IFC4X1_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcPropertyBoundedValue_type);defs.push_back(IFC4X1_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X1_IfcPropertyListValue_type);defs.push_back(IFC4X1_IfcPropertyReferenceValue_type);defs.push_back(IFC4X1_IfcPropertySingleValue_type);defs.push_back(IFC4X1_IfcPropertyTableValue_type); - IFC4X1_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcPropertySetDefinition_type);defs.push_back(IFC4X1_IfcPropertyTemplateDefinition_type); - IFC4X1_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcPropertySetTemplate_type);defs.push_back(IFC4X1_IfcPropertyTemplate_type); - IFC4X1_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcQuantityArea_type);defs.push_back(IFC4X1_IfcQuantityCount_type);defs.push_back(IFC4X1_IfcQuantityLength_type);defs.push_back(IFC4X1_IfcQuantityTime_type);defs.push_back(IFC4X1_IfcQuantityVolume_type);defs.push_back(IFC4X1_IfcQuantityWeight_type); - IFC4X1_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRationalBSplineCurveWithKnots_type); - IFC4X1_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X1_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X1_IfcRoundedRectangleProfileDef_type); - IFC4X1_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcReinforcementBarProperties_type);defs.push_back(IFC4X1_IfcSectionProperties_type);defs.push_back(IFC4X1_IfcSectionReinforcementProperties_type); - IFC4X1_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcReinforcingBar_type);defs.push_back(IFC4X1_IfcReinforcingMesh_type);defs.push_back(IFC4X1_IfcTendon_type);defs.push_back(IFC4X1_IfcTendonAnchor_type); - IFC4X1_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcReinforcingBarType_type);defs.push_back(IFC4X1_IfcReinforcingMeshType_type);defs.push_back(IFC4X1_IfcTendonAnchorType_type);defs.push_back(IFC4X1_IfcTendonType_type); - IFC4X1_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcRelAggregates_type);defs.push_back(IFC4X1_IfcRelNests_type);defs.push_back(IFC4X1_IfcRelProjectsElement_type);defs.push_back(IFC4X1_IfcRelVoidsElement_type); - IFC4X1_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcRelAssigns_type);defs.push_back(IFC4X1_IfcRelAssociates_type);defs.push_back(IFC4X1_IfcRelConnects_type);defs.push_back(IFC4X1_IfcRelDeclares_type);defs.push_back(IFC4X1_IfcRelDecomposes_type);defs.push_back(IFC4X1_IfcRelDefines_type); - IFC4X1_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcRelAssignsToActor_type);defs.push_back(IFC4X1_IfcRelAssignsToControl_type);defs.push_back(IFC4X1_IfcRelAssignsToGroup_type);defs.push_back(IFC4X1_IfcRelAssignsToProcess_type);defs.push_back(IFC4X1_IfcRelAssignsToProduct_type);defs.push_back(IFC4X1_IfcRelAssignsToResource_type); - IFC4X1_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRelAssignsToGroupByFactor_type); - IFC4X1_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X1_IfcRelAssociatesApproval_type);defs.push_back(IFC4X1_IfcRelAssociatesClassification_type);defs.push_back(IFC4X1_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X1_IfcRelAssociatesDocument_type);defs.push_back(IFC4X1_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X1_IfcRelAssociatesMaterial_type); - IFC4X1_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(15); - defs.push_back(IFC4X1_IfcRelConnectsElements_type);defs.push_back(IFC4X1_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X1_IfcRelConnectsPorts_type);defs.push_back(IFC4X1_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X1_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X1_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X1_IfcRelCoversBldgElements_type);defs.push_back(IFC4X1_IfcRelCoversSpaces_type);defs.push_back(IFC4X1_IfcRelFillsElement_type);defs.push_back(IFC4X1_IfcRelFlowControlElements_type);defs.push_back(IFC4X1_IfcRelInterferesElements_type);defs.push_back(IFC4X1_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X1_IfcRelSequence_type);defs.push_back(IFC4X1_IfcRelServicesBuildings_type);defs.push_back(IFC4X1_IfcRelSpaceBoundary_type); - IFC4X1_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcRelConnectsPathElements_type);defs.push_back(IFC4X1_IfcRelConnectsWithRealizingElements_type); - IFC4X1_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRelConnectsWithEccentricity_type); - IFC4X1_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X1_IfcRelDefinesByObject_type);defs.push_back(IFC4X1_IfcRelDefinesByProperties_type);defs.push_back(IFC4X1_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X1_IfcRelDefinesByType_type); - IFC4X1_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRelSpaceBoundary1stLevel_type); - IFC4X1_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRelSpaceBoundary2ndLevel_type); - IFC4X1_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcReparametrisedCompositeCurveSegment_type); - IFC4X1_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcRevolvedAreaSolidTapered_type); - IFC4X1_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcSectionedSolidHorizontal_type); - IFC4X1_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcShapeModel_type);defs.push_back(IFC4X1_IfcStyleModel_type); - IFC4X1_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcShapeRepresentation_type);defs.push_back(IFC4X1_IfcTopologyRepresentation_type); - IFC4X1_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcSlabElementedCase_type);defs.push_back(IFC4X1_IfcSlabStandardCase_type); - IFC4X1_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcSpaceType_type); - IFC4X1_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcSpatialStructureElementType_type);defs.push_back(IFC4X1_IfcSpatialZoneType_type); - IFC4X1_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcStructuralAction_type);defs.push_back(IFC4X1_IfcStructuralReaction_type); - IFC4X1_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcStructuralConnection_type);defs.push_back(IFC4X1_IfcStructuralMember_type); - IFC4X1_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcStructuralCurveAction_type);defs.push_back(IFC4X1_IfcStructuralPointAction_type);defs.push_back(IFC4X1_IfcStructuralSurfaceAction_type); - IFC4X1_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcStructuralCurveConnection_type);defs.push_back(IFC4X1_IfcStructuralPointConnection_type);defs.push_back(IFC4X1_IfcStructuralSurfaceConnection_type); - IFC4X1_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcStructuralCurveMember_type);defs.push_back(IFC4X1_IfcStructuralSurfaceMember_type); - IFC4X1_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralCurveMemberVarying_type); - IFC4X1_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcStructuralCurveReaction_type);defs.push_back(IFC4X1_IfcStructuralPointReaction_type);defs.push_back(IFC4X1_IfcStructuralSurfaceReaction_type); - IFC4X1_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralLinearAction_type); - IFC4X1_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralLoadCase_type); - IFC4X1_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X1_IfcStructuralLoadOrResult_type); - IFC4X1_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X1_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X1_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X1_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X1_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X1_IfcStructuralLoadTemperature_type); - IFC4X1_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X1_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralLoadSingleForceWarping_type); - IFC4X1_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcStructuralLoadStatic_type);defs.push_back(IFC4X1_IfcSurfaceReinforcementArea_type); - IFC4X1_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralPlanarAction_type); - IFC4X1_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStructuralSurfaceMemberVarying_type); - IFC4X1_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcStyledRepresentation_type); - IFC4X1_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X1_IfcSurfaceOfRevolution_type); - IFC4X1_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcSurfaceStyleRendering_type); - IFC4X1_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcSweptDiskSolidPolygonal_type); - IFC4X1_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcTaskTimeRecurring_type); - IFC4X1_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcTextLiteralWithExtent_type); - IFC4X1_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcTextStyleFontModel_type); - IFC4X1_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcTriangulatedIrregularNetwork_type); - IFC4X1_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X1_IfcTypeProcess_type);defs.push_back(IFC4X1_IfcTypeProduct_type);defs.push_back(IFC4X1_IfcTypeResource_type); - IFC4X1_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcVertexPoint_type); - IFC4X1_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcWallElementedCase_type);defs.push_back(IFC4X1_IfcWallStandardCase_type); - IFC4X1_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X1_IfcWindowStandardCase_type); - IFC4X1_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X1_IfcWorkPlan_type);defs.push_back(IFC4X1_IfcWorkSchedule_type); - IFC4X1_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X1_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X1_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X1_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X1_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X1_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X1_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X1_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X1_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X1_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X1_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[8], + strings[9] + }); + IFC4X1_IfcAlignmentTypeEnum_type = new enumeration_type(strings[77], 39, { + strings[8], + strings[9] + }); + IFC4X1_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[78], 40, new simple_type(simple_type::real_type)); + IFC4X1_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[79], 41, { + strings[80], + strings[81], + strings[82], + strings[8], + strings[9] + }); + IFC4X1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[83], 42, { + strings[84], + strings[85], + strings[86], + strings[87], + strings[8], + strings[9] + }); + IFC4X1_IfcAngularVelocityMeasure_type = new type_declaration(strings[88], 43, new simple_type(simple_type::real_type)); + IFC4X1_IfcAreaDensityMeasure_type = new type_declaration(strings[89], 55, new simple_type(simple_type::real_type)); + IFC4X1_IfcAreaMeasure_type = new type_declaration(strings[90], 56, new simple_type(simple_type::real_type)); + IFC4X1_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[91], 57, { + strings[92], + strings[93], + strings[94], + strings[95] + }); + IFC4X1_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[96], 58, { + strings[48], + strings[97], + strings[9] + }); + IFC4X1_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[98], 63, { + strings[99], + strings[100], + strings[101], + strings[102], + strings[103], + strings[104], + strings[105], + strings[106], + strings[107], + strings[108], + strings[109], + strings[8], + strings[9] + }); + IFC4X1_IfcBSplineCurveForm_type = new enumeration_type(strings[110], 97, { + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116] + }); + IFC4X1_IfcBSplineSurfaceForm_type = new enumeration_type(strings[117], 100, { + strings[118], + strings[119], + strings[120], + strings[121], + strings[122], + strings[123], + strings[124], + strings[125], + strings[126], + strings[127], + strings[116] + }); + IFC4X1_IfcBeamTypeEnum_type = new enumeration_type(strings[128], 71, { + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[134], + strings[8], + strings[9] + }); + IFC4X1_IfcBenchmarkEnum_type = new enumeration_type(strings[135], 72, { + strings[136], + strings[137], + strings[138], + strings[139], + strings[140], + strings[141], + strings[142], + strings[143], + strings[144], + strings[145] + }); + IFC4X1_IfcBinary_type = new type_declaration(strings[146], 74, new simple_type(simple_type::binary_type)); + IFC4X1_IfcBoilerTypeEnum_type = new enumeration_type(strings[147], 79, { + strings[148], + strings[149], + strings[8], + strings[9] + }); + IFC4X1_IfcBoolean_type = new type_declaration(strings[150], 80, new simple_type(simple_type::boolean_type)); + IFC4X1_IfcBooleanOperator_type = new enumeration_type(strings[151], 83, { + strings[152], + strings[153], + strings[154] + }); + IFC4X1_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[155], 106, { + strings[156], + strings[157], + strings[8], + strings[9] + }); + IFC4X1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[158], 109, { + strings[159], + strings[160], + strings[161], + strings[162], + strings[163], + strings[8], + strings[9] + }); + IFC4X1_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[164], 113, { + strings[165], + strings[166], + strings[167], + strings[168], + strings[169], + strings[23], + strings[8], + strings[9] + }); + IFC4X1_IfcBurnerTypeEnum_type = new enumeration_type(strings[170], 116, { + strings[8], + strings[9] + }); + IFC4X1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[171], 119, { + strings[172], + strings[173], + strings[174], + strings[175], + strings[8], + strings[9] + }); + IFC4X1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[176], 122, { + strings[177], + strings[178], + strings[179], + strings[180], + strings[8], + strings[9] + }); + IFC4X1_IfcCableFittingTypeEnum_type = new enumeration_type(strings[181], 125, { + strings[182], + strings[183], + strings[184], + strings[185], + strings[186], + strings[8], + strings[9] + }); + IFC4X1_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[187], 128, { + strings[188], + strings[189], + strings[190], + strings[191], + strings[8], + strings[9] + }); + IFC4X1_IfcCardinalPointReference_type = new type_declaration(strings[192], 129, new simple_type(simple_type::integer_type)); + IFC4X1_IfcChangeActionEnum_type = new enumeration_type(strings[193], 140, { + strings[194], + strings[195], + strings[196], + strings[197], + strings[9] + }); + IFC4X1_IfcChillerTypeEnum_type = new enumeration_type(strings[198], 143, { + strings[199], + strings[200], + strings[201], + strings[8], + strings[9] + }); + IFC4X1_IfcChimneyTypeEnum_type = new enumeration_type(strings[202], 146, { + strings[8], + strings[9] + }); + IFC4X1_IfcCoilTypeEnum_type = new enumeration_type(strings[203], 160, { + strings[204], + strings[205], + strings[206], + strings[207], + strings[208], + strings[209], + strings[210], + strings[8], + strings[9] + }); + IFC4X1_IfcColumnTypeEnum_type = new enumeration_type(strings[211], 169, { + strings[212], + strings[213], + strings[8], + strings[9] + }); + IFC4X1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[214], 172, { + strings[215], + strings[216], + strings[4], + strings[217], + strings[218], + strings[219], + strings[220], + strings[221], + strings[222], + strings[223], + strings[224], + strings[225], + strings[8], + strings[9] + }); + IFC4X1_IfcComplexNumber_type = new type_declaration(strings[226], 173, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[227], 176, { + strings[228], + strings[229] + }); + IFC4X1_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[230], 181, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X1_IfcCompressorTypeEnum_type = new enumeration_type(strings[231], 184, { + strings[232], + strings[233], + strings[234], + strings[235], + strings[236], + strings[237], + strings[238], + strings[239], + strings[240], + strings[241], + strings[242], + strings[243], + strings[244], + strings[245], + strings[246], + strings[8], + strings[9] + }); + IFC4X1_IfcCondenserTypeEnum_type = new enumeration_type(strings[247], 187, { + strings[199], + strings[248], + strings[200], + strings[249], + strings[250], + strings[251], + strings[252], + strings[8], + strings[9] + }); + IFC4X1_IfcConnectionTypeEnum_type = new enumeration_type(strings[253], 195, { + strings[254], + strings[255], + strings[256], + strings[9] + }); + IFC4X1_IfcConstraintEnum_type = new enumeration_type(strings[257], 198, { + strings[258], + strings[259], + strings[260], + strings[8], + strings[9] + }); + IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[261], 201, { + strings[262], + strings[263], + strings[264], + strings[265], + strings[266], + strings[267], + strings[268], + strings[269], + strings[8], + strings[9] + }); + IFC4X1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[270], 204, { + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[277], + strings[278], + strings[279], + strings[9], + strings[8] + }); + IFC4X1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[280], 207, { + strings[281], + strings[282], + strings[8], + strings[9] + }); + IFC4X1_IfcContextDependentMeasure_type = new type_declaration(strings[283], 211, new simple_type(simple_type::real_type)); + IFC4X1_IfcControllerTypeEnum_type = new enumeration_type(strings[284], 216, { + strings[285], + strings[286], + strings[287], + strings[288], + strings[289], + strings[8], + strings[9] + }); + IFC4X1_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[290], 221, { + strings[291], + strings[292], + strings[8], + strings[9] + }); + IFC4X1_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[293], 224, { + strings[294], + strings[295], + strings[296], + strings[8], + strings[9] + }); + IFC4X1_IfcCostItemTypeEnum_type = new enumeration_type(strings[297], 229, { + strings[8], + strings[9] + }); + IFC4X1_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[298], 231, { + strings[299], + strings[300], + strings[301], + strings[302], + strings[303], + strings[304], + strings[305], + strings[8], + strings[9] + }); + IFC4X1_IfcCountMeasure_type = new type_declaration(strings[306], 233, new simple_type(simple_type::number_type)); + IFC4X1_IfcCoveringTypeEnum_type = new enumeration_type(strings[307], 236, { + strings[308], + strings[309], + strings[310], + strings[311], + strings[312], + strings[313], + strings[156], + strings[314], + strings[315], + strings[316], + strings[8], + strings[9] + }); + IFC4X1_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[317], 239, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4X1_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[318], 247, { + strings[8], + strings[9] + }); + IFC4X1_IfcCurvatureMeasure_type = new type_declaration(strings[319], 248, new simple_type(simple_type::real_type)); + IFC4X1_IfcCurveInterpolationEnum_type = new enumeration_type(strings[320], 253, { + strings[321], + strings[322], + strings[323], + strings[9] + }); + IFC4X1_IfcDamperTypeEnum_type = new enumeration_type(strings[324], 265, { + strings[325], + strings[326], + strings[327], + strings[328], + strings[329], + strings[330], + strings[331], + strings[332], + strings[333], + strings[334], + strings[335], + strings[8], + strings[9] + }); + IFC4X1_IfcDataOriginEnum_type = new enumeration_type(strings[336], 266, { + strings[337], + strings[338], + strings[339], + strings[8], + strings[9] + }); + IFC4X1_IfcDate_type = new type_declaration(strings[340], 267, new simple_type(simple_type::string_type)); + IFC4X1_IfcDateTime_type = new type_declaration(strings[341], 268, new simple_type(simple_type::string_type)); + IFC4X1_IfcDayInMonthNumber_type = new type_declaration(strings[342], 269, new simple_type(simple_type::integer_type)); + IFC4X1_IfcDayInWeekNumber_type = new type_declaration(strings[343], 270, new simple_type(simple_type::integer_type)); + IFC4X1_IfcDerivedUnitEnum_type = new enumeration_type(strings[344], 276, { + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[350], + strings[351], + strings[352], + strings[353], + strings[354], + strings[355], + strings[356], + strings[357], + strings[358], + strings[359], + strings[360], + strings[361], + strings[362], + strings[363], + strings[364], + strings[365], + strings[366], + strings[367], + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[373], + strings[374], + strings[375], + strings[376], + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[383], + strings[384], + strings[385], + strings[386], + strings[387], + strings[388], + strings[389], + strings[390], + strings[391], + strings[392], + strings[393], + strings[394], + strings[395], + strings[396], + strings[8] + }); + IFC4X1_IfcDescriptiveMeasure_type = new type_declaration(strings[397], 277, new simple_type(simple_type::string_type)); + IFC4X1_IfcDimensionCount_type = new type_declaration(strings[398], 279, new simple_type(simple_type::integer_type)); + IFC4X1_IfcDirectionSenseEnum_type = new enumeration_type(strings[399], 281, { + strings[400], + strings[401] + }); + IFC4X1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[402], 284, { + strings[403], + strings[404], + strings[405], + strings[8], + strings[9] + }); + IFC4X1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[406], 288, { + strings[407], + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[413], + strings[414], + strings[8], + strings[9] + }); + IFC4X1_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[415], 297, { + strings[416], + strings[417], + strings[418], + strings[419], + strings[8], + strings[9] + }); + IFC4X1_IfcDistributionSystemEnum_type = new enumeration_type(strings[420], 299, { + strings[421], + strings[422], + strings[423], + strings[424], + strings[425], + strings[426], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[432], + strings[433], + strings[434], + strings[435], + strings[436], + strings[437], + strings[438], + strings[439], + strings[274], + strings[440], + strings[441], + strings[265], + strings[266], + strings[442], + strings[443], + strings[444], + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[452], + strings[108], + strings[453], + strings[454], + strings[455], + strings[456], + strings[457], + strings[458], + strings[8], + strings[9] + }); + IFC4X1_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[459], 300, { + strings[460], + strings[461], + strings[462], + strings[463], + strings[8], + strings[9] + }); + IFC4X1_IfcDocumentStatusEnum_type = new enumeration_type(strings[464], 305, { + strings[465], + strings[466], + strings[467], + strings[468], + strings[9] + }); + IFC4X1_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[469], 308, { + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[8], + strings[9] + }); + IFC4X1_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[477], 309, { + strings[478], + strings[479], + strings[480], + strings[9] + }); + IFC4X1_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[481], 313, { + strings[482], + strings[483], + strings[484], + strings[279], + strings[485], + strings[486], + strings[278], + strings[8], + strings[9] + }); + IFC4X1_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[487], 314, { + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[474], + strings[475], + strings[8], + strings[9] + }); + IFC4X1_IfcDoorTypeEnum_type = new enumeration_type(strings[502], 316, { + strings[503], + strings[504], + strings[505], + strings[8], + strings[9] + }); + IFC4X1_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[506], 317, { + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[474], + strings[475], + strings[507], + strings[508], + strings[8], + strings[9] + }); + IFC4X1_IfcDoseEquivalentMeasure_type = new type_declaration(strings[509], 318, new simple_type(simple_type::real_type)); + IFC4X1_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[510], 323, { + strings[172], + strings[182], + strings[183], + strings[184], + strings[185], + strings[511], + strings[186], + strings[8], + strings[9] + }); + IFC4X1_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[512], 326, { + strings[513], + strings[514], + strings[8], + strings[9] + }); + IFC4X1_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[515], 329, { + strings[516], + strings[517], + strings[518], + strings[8], + strings[9] + }); + IFC4X1_IfcDuration_type = new type_declaration(strings[519], 330, new simple_type(simple_type::string_type)); + IFC4X1_IfcDynamicViscosityMeasure_type = new type_declaration(strings[520], 331, new simple_type(simple_type::real_type)); + IFC4X1_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[521], 337, { + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[535], + strings[536], + strings[537], + strings[8], + strings[9] + }); + IFC4X1_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[538], 338, new simple_type(simple_type::real_type)); + IFC4X1_IfcElectricChargeMeasure_type = new type_declaration(strings[539], 339, new simple_type(simple_type::real_type)); + IFC4X1_IfcElectricConductanceMeasure_type = new type_declaration(strings[540], 340, new simple_type(simple_type::real_type)); + IFC4X1_IfcElectricCurrentMeasure_type = new type_declaration(strings[541], 341, new simple_type(simple_type::real_type)); + IFC4X1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[542], 344, { + strings[543], + strings[544], + strings[545], + strings[546], + strings[8], + strings[9] + }); + IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[547], 347, { + strings[548], + strings[549], + strings[550], + strings[551], + strings[552], + strings[8], + strings[9] + }); + IFC4X1_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[553], 350, { + strings[554], + strings[555], + strings[556], + strings[8], + strings[9] + }); + IFC4X1_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[557], 353, { + strings[558], + strings[559], + strings[560], + strings[561], + strings[562], + strings[8], + strings[9] + }); + IFC4X1_IfcElectricResistanceMeasure_type = new type_declaration(strings[563], 354, new simple_type(simple_type::real_type)); + IFC4X1_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[564], 357, { + strings[565], + strings[566], + strings[567], + strings[8], + strings[9] + }); + IFC4X1_IfcElectricVoltageMeasure_type = new type_declaration(strings[568], 358, new simple_type(simple_type::real_type)); + IFC4X1_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[569], 363, { + strings[570], + strings[571], + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[577], + strings[578], + strings[8], + strings[9] + }); + IFC4X1_IfcElementCompositionEnum_type = new enumeration_type(strings[579], 366, { + strings[159], + strings[160], + strings[161] + }); + IFC4X1_IfcEnergyMeasure_type = new type_declaration(strings[580], 373, new simple_type(simple_type::real_type)); + IFC4X1_IfcEngineTypeEnum_type = new enumeration_type(strings[581], 376, { + strings[582], + strings[583], + strings[8], + strings[9] + }); + IFC4X1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[584], 379, { + strings[585], + strings[586], + strings[587], + strings[588], + strings[589], + strings[590], + strings[591], + strings[592], + strings[593], + strings[8], + strings[9] + }); + IFC4X1_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[594], 382, { + strings[595], + strings[596], + strings[597], + strings[598], + strings[599], + strings[600], + strings[8], + strings[9] + }); + IFC4X1_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[601], 385, { + strings[602], + strings[603], + strings[604], + strings[605], + strings[8], + strings[9] + }); + IFC4X1_IfcEventTypeEnum_type = new enumeration_type(strings[606], 387, { + strings[607], + strings[608], + strings[609], + strings[8], + strings[9] + }); + IFC4X1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[610], 396, { + strings[611], + strings[612], + strings[613], + strings[614], + strings[8], + strings[9] + }); + IFC4X1_IfcFanTypeEnum_type = new enumeration_type(strings[615], 410, { + strings[616], + strings[617], + strings[618], + strings[619], + strings[620], + strings[621], + strings[622], + strings[8], + strings[9] + }); + IFC4X1_IfcFastenerTypeEnum_type = new enumeration_type(strings[623], 413, { + strings[624], + strings[625], + strings[626], + strings[8], + strings[9] + }); + IFC4X1_IfcFilterTypeEnum_type = new enumeration_type(strings[627], 423, { + strings[628], + strings[629], + strings[630], + strings[631], + strings[632], + strings[633], + strings[8], + strings[9] + }); + IFC4X1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[634], 426, { + strings[635], + strings[636], + strings[637], + strings[638], + strings[639], + strings[8], + strings[9] + }); + IFC4X1_IfcFlowDirectionEnum_type = new enumeration_type(strings[640], 430, { + strings[641], + strings[642], + strings[643], + strings[9] + }); + IFC4X1_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[644], 435, { + strings[645], + strings[646], + strings[647], + strings[648], + strings[649], + strings[650], + strings[651], + strings[652], + strings[8], + strings[9] + }); + IFC4X1_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[653], 438, { + strings[654], + strings[655], + strings[656], + strings[657], + strings[8], + strings[9] + }); + IFC4X1_IfcFontStyle_type = new type_declaration(strings[658], 449, new simple_type(simple_type::string_type)); + IFC4X1_IfcFontVariant_type = new type_declaration(strings[659], 450, new simple_type(simple_type::string_type)); + IFC4X1_IfcFontWeight_type = new type_declaration(strings[660], 451, new simple_type(simple_type::string_type)); + IFC4X1_IfcFootingTypeEnum_type = new enumeration_type(strings[661], 454, { + strings[662], + strings[663], + strings[664], + strings[665], + strings[666], + strings[8], + strings[9] + }); + IFC4X1_IfcForceMeasure_type = new type_declaration(strings[667], 455, new simple_type(simple_type::real_type)); + IFC4X1_IfcFrequencyMeasure_type = new type_declaration(strings[668], 456, new simple_type(simple_type::real_type)); + IFC4X1_IfcFurnitureTypeEnum_type = new enumeration_type(strings[669], 461, { + strings[670], + strings[671], + strings[672], + strings[673], + strings[674], + strings[675], + strings[676], + strings[8], + strings[9] + }); + IFC4X1_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[677], 464, { + strings[678], + strings[8], + strings[9] + }); + IFC4X1_IfcGeometricProjectionEnum_type = new enumeration_type(strings[679], 466, { + strings[680], + strings[681], + strings[682], + strings[683], + strings[684], + strings[685], + strings[686], + strings[8], + strings[9] + }); + IFC4X1_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[687], 473, { + strings[688], + strings[689] + }); + IFC4X1_IfcGloballyUniqueId_type = new type_declaration(strings[690], 472, new simple_type(simple_type::string_type)); + IFC4X1_IfcGridTypeEnum_type = new enumeration_type(strings[691], 478, { + strings[517], + strings[692], + strings[693], + strings[694], + strings[8], + strings[9] + }); + IFC4X1_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[695], 484, { + strings[696], + strings[697], + strings[8], + strings[9] + }); + IFC4X1_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[698], 485, new simple_type(simple_type::real_type)); + IFC4X1_IfcHeatingValueMeasure_type = new type_declaration(strings[699], 486, new simple_type(simple_type::real_type)); + IFC4X1_IfcHumidifierTypeEnum_type = new enumeration_type(strings[700], 489, { + strings[701], + strings[702], + strings[703], + strings[704], + strings[705], + strings[706], + strings[707], + strings[708], + strings[709], + strings[710], + strings[711], + strings[712], + strings[713], + strings[8], + strings[9] + }); + IFC4X1_IfcIdentifier_type = new type_declaration(strings[714], 490, new simple_type(simple_type::string_type)); + IFC4X1_IfcIlluminanceMeasure_type = new type_declaration(strings[715], 491, new simple_type(simple_type::real_type)); + IFC4X1_IfcInductanceMeasure_type = new type_declaration(strings[716], 499, new simple_type(simple_type::real_type)); + IFC4X1_IfcInteger_type = new type_declaration(strings[717], 500, new simple_type(simple_type::integer_type)); + IFC4X1_IfcIntegerCountRateMeasure_type = new type_declaration(strings[718], 501, new simple_type(simple_type::integer_type)); + IFC4X1_IfcInterceptorTypeEnum_type = new enumeration_type(strings[719], 504, { + strings[720], + strings[721], + strings[444], + strings[722], + strings[8], + strings[9] + }); + IFC4X1_IfcInternalOrExternalEnum_type = new enumeration_type(strings[723], 505, { + strings[724], + strings[611], + strings[612], + strings[613], + strings[614], + strings[9] + }); + IFC4X1_IfcInventoryTypeEnum_type = new enumeration_type(strings[725], 508, { + strings[726], + strings[727], + strings[728], + strings[8], + strings[9] + }); + IFC4X1_IfcIonConcentrationMeasure_type = new type_declaration(strings[729], 509, new simple_type(simple_type::real_type)); + IFC4X1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[730], 513, new simple_type(simple_type::real_type)); + IFC4X1_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[731], 516, { + strings[430], + strings[732], + strings[8], + strings[9] + }); + IFC4X1_IfcKinematicViscosityMeasure_type = new type_declaration(strings[733], 517, new simple_type(simple_type::real_type)); + IFC4X1_IfcKnotType_type = new enumeration_type(strings[734], 518, { + strings[735], + strings[736], + strings[737], + strings[116] + }); + IFC4X1_IfcLabel_type = new type_declaration(strings[738], 519, new simple_type(simple_type::string_type)); + IFC4X1_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[739], 522, { + strings[740], + strings[741], + strings[742], + strings[272], + strings[273], + strings[743], + strings[744], + strings[309], + strings[745], + strings[746], + strings[747], + strings[276], + strings[748], + strings[267], + strings[749], + strings[311], + strings[750], + strings[751], + strings[752], + strings[8], + strings[9] + }); + IFC4X1_IfcLampTypeEnum_type = new enumeration_type(strings[753], 526, { + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[759], + strings[760], + strings[761], + strings[762], + strings[8], + strings[9] + }); + IFC4X1_IfcLanguageId_type = new type_declaration(strings[763], 527, new named_type(IFC4X1_IfcIdentifier_type)); + IFC4X1_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[764], 529, { + strings[765], + strings[766], + strings[767] + }); + IFC4X1_IfcLengthMeasure_type = new type_declaration(strings[768], 530, new simple_type(simple_type::real_type)); + IFC4X1_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[769], 534, { + strings[770], + strings[771], + strings[772], + strings[9] + }); + IFC4X1_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[773], 537, { + strings[754], + strings[755], + strings[757], + strings[758], + strings[774], + strings[775], + strings[776], + strings[777], + strings[760], + strings[762], + strings[9] + }); + IFC4X1_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[778], 540, { + strings[779], + strings[780], + strings[781], + strings[8], + strings[9] + }); + IFC4X1_IfcLinearForceMeasure_type = new type_declaration(strings[782], 549, new simple_type(simple_type::real_type)); + IFC4X1_IfcLinearMomentMeasure_type = new type_declaration(strings[783], 550, new simple_type(simple_type::real_type)); + IFC4X1_IfcLinearStiffnessMeasure_type = new type_declaration(strings[784], 553, new simple_type(simple_type::real_type)); + IFC4X1_IfcLinearVelocityMeasure_type = new type_declaration(strings[785], 554, new simple_type(simple_type::real_type)); + IFC4X1_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[786], 557, { + strings[787], + strings[788], + strings[789], + strings[8], + strings[9] + }); + IFC4X1_IfcLogical_type = new type_declaration(strings[790], 559, new simple_type(simple_type::logical_type)); + IFC4X1_IfcLogicalOperatorEnum_type = new enumeration_type(strings[791], 560, { + strings[792], + strings[793], + strings[794], + strings[795], + strings[796] + }); + IFC4X1_IfcLuminousFluxMeasure_type = new type_declaration(strings[797], 563, new simple_type(simple_type::real_type)); + IFC4X1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[798], 564, new simple_type(simple_type::real_type)); + IFC4X1_IfcLuminousIntensityMeasure_type = new type_declaration(strings[799], 565, new simple_type(simple_type::real_type)); + IFC4X1_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[800], 566, new simple_type(simple_type::real_type)); + IFC4X1_IfcMagneticFluxMeasure_type = new type_declaration(strings[801], 567, new simple_type(simple_type::real_type)); + IFC4X1_IfcMassDensityMeasure_type = new type_declaration(strings[802], 571, new simple_type(simple_type::real_type)); + IFC4X1_IfcMassFlowRateMeasure_type = new type_declaration(strings[803], 572, new simple_type(simple_type::real_type)); + IFC4X1_IfcMassMeasure_type = new type_declaration(strings[804], 573, new simple_type(simple_type::real_type)); + IFC4X1_IfcMassPerLengthMeasure_type = new type_declaration(strings[805], 574, new simple_type(simple_type::real_type)); + IFC4X1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[806], 599, { + strings[807], + strings[808], + strings[809], + strings[810], + strings[811], + strings[812], + strings[813], + strings[814], + strings[815], + strings[816], + strings[8], + strings[9] + }); + IFC4X1_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[817], 602, { + strings[818], + strings[819], + strings[820], + strings[821], + strings[822], + strings[8], + strings[9] + }); + IFC4X1_IfcMemberTypeEnum_type = new enumeration_type(strings[823], 606, { + strings[824], + strings[825], + strings[826], + strings[827], + strings[828], + strings[696], + strings[6], + strings[829], + strings[830], + strings[831], + strings[832], + strings[833], + strings[8], + strings[9] + }); + IFC4X1_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[834], 610, new simple_type(simple_type::real_type)); + IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[835], 611, new simple_type(simple_type::real_type)); + IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[836], 612, new simple_type(simple_type::real_type)); + IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[837], 613, { + IFC4X1_IfcBoolean_type, + IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[838], 614, new simple_type(simple_type::real_type)); + IFC4X1_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[839], 615, { + IFC4X1_IfcBoolean_type, + IFC4X1_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[840], 616, { + IFC4X1_IfcBoolean_type, + IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X1_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[841], 617, new simple_type(simple_type::real_type)); + IFC4X1_IfcMolecularWeightMeasure_type = new type_declaration(strings[842], 618, new simple_type(simple_type::real_type)); + IFC4X1_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[843], 619, new simple_type(simple_type::real_type)); + IFC4X1_IfcMonetaryMeasure_type = new type_declaration(strings[844], 620, new simple_type(simple_type::real_type)); + IFC4X1_IfcMonthInYearNumber_type = new type_declaration(strings[845], 622, new simple_type(simple_type::integer_type)); + IFC4X1_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[846], 625, { + strings[847], + strings[848], + strings[849], + strings[8], + strings[9] + }); + IFC4X1_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[850], 627, new named_type(IFC4X1_IfcLengthMeasure_type)); + IFC4X1_IfcNullStyle_type = new enumeration_type(strings[851], 629, { + strings[852] + }); + IFC4X1_IfcNumericMeasure_type = new type_declaration(strings[853], 630, new simple_type(simple_type::number_type)); + IFC4X1_IfcObjectTypeEnum_type = new enumeration_type(strings[854], 637, { + strings[855], + strings[856], + strings[428], + strings[857], + strings[858], + strings[859], + strings[860], + strings[9] + }); + IFC4X1_IfcObjectiveEnum_type = new enumeration_type(strings[861], 634, { + strings[862], + strings[863], + strings[864], + strings[611], + strings[865], + strings[866], + strings[867], + strings[868], + strings[869], + strings[870], + strings[871], + strings[8], + strings[9] + }); + IFC4X1_IfcOccupantTypeEnum_type = new enumeration_type(strings[872], 639, { + strings[873], + strings[874], + strings[875], + strings[876], + strings[877], + strings[878], + strings[879], + strings[8], + strings[9] + }); + IFC4X1_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[880], 645, { + strings[881], + strings[882], + strings[8], + strings[9] + }); + IFC4X1_IfcOutletTypeEnum_type = new enumeration_type(strings[883], 655, { + strings[884], + strings[885], + strings[886], + strings[887], + strings[888], + strings[8], + strings[9] + }); + IFC4X1_IfcPHMeasure_type = new type_declaration(strings[889], 669, new simple_type(simple_type::real_type)); + IFC4X1_IfcParameterValue_type = new type_declaration(strings[890], 658, new simple_type(simple_type::real_type)); + IFC4X1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[891], 662, { + strings[8], + strings[9] + }); + IFC4X1_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[892], 663, { + strings[893], + strings[894], + strings[895], + strings[8], + strings[9] + }); + IFC4X1_IfcPermitTypeEnum_type = new enumeration_type(strings[896], 666, { + strings[897], + strings[898], + strings[899], + strings[8], + strings[9] + }); + IFC4X1_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[900], 671, { + strings[901], + strings[902], + strings[9] + }); + IFC4X1_IfcPileConstructionEnum_type = new enumeration_type(strings[903], 675, { + strings[904], + strings[905], + strings[906], + strings[907], + strings[8], + strings[9] + }); + IFC4X1_IfcPileTypeEnum_type = new enumeration_type(strings[908], 677, { + strings[909], + strings[910], + strings[911], + strings[912], + strings[913], + strings[914], + strings[8], + strings[9] + }); + IFC4X1_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[915], 680, { + strings[172], + strings[182], + strings[183], + strings[184], + strings[185], + strings[511], + strings[186], + strings[8], + strings[9] + }); + IFC4X1_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[916], 683, { + strings[917], + strings[514], + strings[513], + strings[918], + strings[919], + strings[8], + strings[9] + }); + IFC4X1_IfcPlanarForceMeasure_type = new type_declaration(strings[920], 688, new simple_type(simple_type::real_type)); + IFC4X1_IfcPlaneAngleMeasure_type = new type_declaration(strings[921], 690, new simple_type(simple_type::real_type)); + IFC4X1_IfcPlateTypeEnum_type = new enumeration_type(strings[922], 694, { + strings[923], + strings[924], + strings[8], + strings[9] + }); + IFC4X1_IfcPositiveInteger_type = new type_declaration(strings[925], 705, new named_type(IFC4X1_IfcInteger_type)); + IFC4X1_IfcPositiveLengthMeasure_type = new type_declaration(strings[926], 706, new named_type(IFC4X1_IfcLengthMeasure_type)); + IFC4X1_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[927], 707, new named_type(IFC4X1_IfcPlaneAngleMeasure_type)); + IFC4X1_IfcPowerMeasure_type = new type_declaration(strings[928], 710, new simple_type(simple_type::real_type)); + IFC4X1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[929], 717, { + strings[930], + strings[931], + strings[932] + }); + IFC4X1_IfcPresentableText_type = new type_declaration(strings[933], 718, new simple_type(simple_type::string_type)); + IFC4X1_IfcPressureMeasure_type = new type_declaration(strings[934], 725, new simple_type(simple_type::real_type)); + IFC4X1_IfcProcedureTypeEnum_type = new enumeration_type(strings[935], 728, { + strings[936], + strings[937], + strings[938], + strings[939], + strings[940], + strings[941], + strings[942], + strings[8], + strings[9] + }); + IFC4X1_IfcProfileTypeEnum_type = new enumeration_type(strings[943], 738, { + strings[944], + strings[945] + }); + IFC4X1_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[946], 746, { + strings[947], + strings[948], + strings[949], + strings[950], + strings[951], + strings[8], + strings[9] + }); + IFC4X1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[952], 741, { + strings[953], + strings[954] + }); + IFC4X1_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[955], 743, { + strings[8], + strings[9] + }); + IFC4X1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[956], 761, { + strings[957], + strings[958], + strings[959], + strings[960], + strings[961], + strings[962], + strings[963], + strings[9] + }); + IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[964], 769, { + strings[965], + strings[966], + strings[967], + strings[968], + strings[8], + strings[9] + }); + IFC4X1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[969], 771, { + strings[970], + strings[971], + strings[972], + strings[973], + strings[974], + strings[975], + strings[976], + strings[8], + strings[9] + }); + IFC4X1_IfcPumpTypeEnum_type = new enumeration_type(strings[977], 775, { + strings[978], + strings[979], + strings[980], + strings[981], + strings[982], + strings[983], + strings[984], + strings[8], + strings[9] + }); + IFC4X1_IfcRadioActivityMeasure_type = new type_declaration(strings[985], 783, new simple_type(simple_type::real_type)); + IFC4X1_IfcRailingTypeEnum_type = new enumeration_type(strings[986], 786, { + strings[987], + strings[988], + strings[989], + strings[8], + strings[9] + }); + IFC4X1_IfcRampFlightTypeEnum_type = new enumeration_type(strings[990], 790, { + strings[991], + strings[992], + strings[8], + strings[9] + }); + IFC4X1_IfcRampTypeEnum_type = new enumeration_type(strings[993], 792, { + strings[994], + strings[995], + strings[996], + strings[997], + strings[998], + strings[999], + strings[8], + strings[9] + }); + IFC4X1_IfcRatioMeasure_type = new type_declaration(strings[1000], 793, new simple_type(simple_type::real_type)); + IFC4X1_IfcReal_type = new type_declaration(strings[1001], 796, new simple_type(simple_type::real_type)); + IFC4X1_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1002], 802, { + strings[1003], + strings[1004], + strings[1005], + strings[1006], + strings[1007], + strings[1008], + strings[1009], + strings[1010] + }); + IFC4X1_IfcReferentTypeEnum_type = new enumeration_type(strings[1011], 805, { + strings[1012], + strings[1013], + strings[1014], + strings[8], + strings[9] + }); + IFC4X1_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1015], 806, { + strings[1016], + strings[1017], + strings[1018], + strings[1019], + strings[277], + strings[1020], + strings[1021], + strings[278], + strings[1022], + strings[9] + }); + IFC4X1_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1023], 811, { + strings[1024], + strings[1025], + strings[1026], + strings[833], + strings[1027], + strings[1028], + strings[1029], + strings[1030], + strings[8], + strings[9] + }); + IFC4X1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1031], 812, { + strings[1032], + strings[1033] + }); + IFC4X1_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1034], 814, { + strings[1030], + strings[1028], + strings[1026], + strings[1024], + strings[1027], + strings[1029], + strings[1025], + strings[833], + strings[8], + strings[9] + }); + IFC4X1_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1035], 819, { + strings[8], + strings[9] + }); + IFC4X1_IfcRoleEnum_type = new enumeration_type(strings[1036], 884, { + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[1041], + strings[1042], + strings[1043], + strings[1044], + strings[1045], + strings[1046], + strings[1047], + strings[1048], + strings[1049], + strings[1050], + strings[1051], + strings[1052], + strings[1053], + strings[878], + strings[1054], + strings[1055], + strings[1056], + strings[1057], + strings[8] + }); + IFC4X1_IfcRoofTypeEnum_type = new enumeration_type(strings[1058], 887, { + strings[1059], + strings[1060], + strings[1061], + strings[1062], + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[1067], + strings[1068], + strings[1069], + strings[1070], + strings[1071], + strings[8], + strings[9] + }); + IFC4X1_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1072], 889, new simple_type(simple_type::real_type)); + IFC4X1_IfcRotationalMassMeasure_type = new type_declaration(strings[1073], 890, new simple_type(simple_type::real_type)); + IFC4X1_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1074], 891, new simple_type(simple_type::real_type)); + IFC4X1_IfcRotationalStiffnessSelect_type = new select_type(strings[1075], 892, { + IFC4X1_IfcBoolean_type, + IFC4X1_IfcRotationalStiffnessMeasure_type + }); + IFC4X1_IfcSIPrefix_type = new enumeration_type(strings[1076], 925, { + strings[1077], + strings[1078], + strings[1079], + strings[1080], + strings[1081], + strings[1082], + strings[1083], + strings[1084], + strings[1085], + strings[1086], + strings[1087], + strings[1088], + strings[1089], + strings[1090], + strings[1091], + strings[1092] + }); + IFC4X1_IfcSIUnitName_type = new enumeration_type(strings[1093], 928, { + strings[1094], + strings[1095], + strings[1096], + strings[1097], + strings[1098], + strings[1099], + strings[1100], + strings[1101], + strings[1102], + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[1107], + strings[1108], + strings[1109], + strings[1110], + strings[1111], + strings[1112], + strings[1113], + strings[1114], + strings[1115], + strings[1116], + strings[1117], + strings[1118], + strings[1119], + strings[1120], + strings[1121], + strings[1122], + strings[1123] + }); + IFC4X1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1124], 896, { + strings[1125], + strings[1126], + strings[1127], + strings[1128], + strings[642], + strings[1129], + strings[1130], + strings[1131], + strings[1132], + strings[1133], + strings[8], + strings[9] + }); + IFC4X1_IfcSectionModulusMeasure_type = new type_declaration(strings[1134], 903, new simple_type(simple_type::real_type)); + IFC4X1_IfcSectionTypeEnum_type = new enumeration_type(strings[1135], 906, { + strings[1136], + strings[1137] + }); + IFC4X1_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1138], 899, new simple_type(simple_type::real_type)); + IFC4X1_IfcSensorTypeEnum_type = new enumeration_type(strings[1139], 910, { + strings[1140], + strings[1141], + strings[1142], + strings[1143], + strings[1144], + strings[1145], + strings[1146], + strings[1147], + strings[1148], + strings[1149], + strings[1150], + strings[1151], + strings[1152], + strings[1153], + strings[1154], + strings[1155], + strings[1156], + strings[1157], + strings[1158], + strings[1159], + strings[1160], + strings[1161], + strings[1162], + strings[1163], + strings[8], + strings[9] + }); + IFC4X1_IfcSequenceEnum_type = new enumeration_type(strings[1164], 911, { + strings[1165], + strings[1166], + strings[1167], + strings[1168], + strings[8], + strings[9] + }); + IFC4X1_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1169], 914, { + strings[1170], + strings[1171], + strings[1172], + strings[8], + strings[9] + }); + IFC4X1_IfcShearModulusMeasure_type = new type_declaration(strings[1173], 918, new simple_type(simple_type::real_type)); + IFC4X1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1174], 923, { + strings[1175], + strings[1176], + strings[1177], + strings[1178], + strings[1179], + strings[1180], + strings[1181], + strings[1182], + strings[1183], + strings[1184], + strings[1185], + strings[1186] + }); + IFC4X1_IfcSlabTypeEnum_type = new enumeration_type(strings[1187], 934, { + strings[1188], + strings[1189], + strings[1190], + strings[1191], + strings[8], + strings[9] + }); + IFC4X1_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1192], 938, { + strings[1193], + strings[1194], + strings[8], + strings[9] + }); + IFC4X1_IfcSolidAngleMeasure_type = new type_declaration(strings[1195], 939, new simple_type(simple_type::real_type)); + IFC4X1_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1196], 942, new simple_type(simple_type::real_type)); + IFC4X1_IfcSoundPowerMeasure_type = new type_declaration(strings[1197], 943, new simple_type(simple_type::real_type)); + IFC4X1_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1198], 944, new simple_type(simple_type::real_type)); + IFC4X1_IfcSoundPressureMeasure_type = new type_declaration(strings[1199], 945, new simple_type(simple_type::real_type)); + IFC4X1_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1200], 950, { + strings[1201], + strings[1202], + strings[8], + strings[9] + }); + IFC4X1_IfcSpaceTypeEnum_type = new enumeration_type(strings[1203], 952, { + strings[1204], + strings[1205], + strings[1206], + strings[724], + strings[611], + strings[8], + strings[9] + }); + IFC4X1_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1207], 959, { + strings[1208], + strings[1209], + strings[266], + strings[1210], + strings[449], + strings[968], + strings[23], + strings[456], + strings[8], + strings[9] + }); + IFC4X1_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1211], 960, new simple_type(simple_type::real_type)); + IFC4X1_IfcSpecularExponent_type = new type_declaration(strings[1212], 961, new simple_type(simple_type::real_type)); + IFC4X1_IfcSpecularRoughness_type = new type_declaration(strings[1213], 963, new simple_type(simple_type::real_type)); + IFC4X1_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1214], 968, { + strings[1215], + strings[1216], + strings[1217], + strings[8], + strings[9] + }); + IFC4X1_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1218], 972, { + strings[991], + strings[1219], + strings[992], + strings[1220], + strings[1071], + strings[8], + strings[9] + }); + IFC4X1_IfcStairTypeEnum_type = new enumeration_type(strings[1221], 974, { + strings[1222], + strings[1223], + strings[1224], + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[1229], + strings[1230], + strings[1231], + strings[1232], + strings[1233], + strings[1234], + strings[1235], + strings[8], + strings[9] + }); + IFC4X1_IfcStateEnum_type = new enumeration_type(strings[1236], 975, { + strings[1237], + strings[1238], + strings[1239], + strings[1240], + strings[1241] + }); + IFC4X1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1242], 983, { + strings[1243], + strings[321], + strings[1244], + strings[1245], + strings[1246], + strings[1247], + strings[1248], + strings[8], + strings[9] + }); + IFC4X1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1249], 986, { + strings[1250], + strings[1251], + strings[416], + strings[1252], + strings[1253], + strings[8], + strings[9] + }); + IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1254], 1012, { + strings[1243], + strings[1255], + strings[1248], + strings[1256], + strings[8], + strings[9] + }); + IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1257], 1015, { + strings[1258], + strings[1259], + strings[1260], + strings[8], + strings[9] + }); + IFC4X1_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1261], 1024, { + strings[1262], + strings[899], + strings[8], + strings[9] + }); + IFC4X1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1263], 1030, { + strings[1264], + strings[1265], + strings[1266], + strings[8], + strings[9] + }); + IFC4X1_IfcSurfaceSide_type = new enumeration_type(strings[1267], 1035, { + strings[400], + strings[401], + strings[1268] + }); + IFC4X1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1269], 1050, { + strings[1270], + strings[1271], + strings[1272], + strings[1273], + strings[1274], + strings[1275], + strings[1276], + strings[1277], + strings[1278], + strings[8], + strings[9] + }); + IFC4X1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1279], 1054, { + strings[1280], + strings[1281], + strings[8], + strings[9] + }); + IFC4X1_IfcTankTypeEnum_type = new enumeration_type(strings[1282], 1060, { + strings[1283], + strings[1284], + strings[1285], + strings[1286], + strings[1287], + strings[1288], + strings[1289], + strings[8], + strings[9] + }); + IFC4X1_IfcTaskDurationEnum_type = new enumeration_type(strings[1290], 1062, { + strings[1291], + strings[1292], + strings[9] + }); + IFC4X1_IfcTaskTypeEnum_type = new enumeration_type(strings[1293], 1066, { + strings[1294], + strings[1208], + strings[1295], + strings[1296], + strings[431], + strings[1297], + strings[1298], + strings[1299], + strings[1300], + strings[1301], + strings[1302], + strings[1303], + strings[8], + strings[9] + }); + IFC4X1_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1304], 1068, new simple_type(simple_type::real_type)); + IFC4X1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1305], 1069, new simple_type(simple_type::real_type)); + IFC4X1_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1306], 1073, { + strings[1307], + strings[1308], + strings[1309], + strings[8], + strings[9] + }); + IFC4X1_IfcTendonTypeEnum_type = new enumeration_type(strings[1310], 1075, { + strings[1311], + strings[1312], + strings[1313], + strings[1314], + strings[8], + strings[9] + }); + IFC4X1_IfcText_type = new type_declaration(strings[1315], 1078, new simple_type(simple_type::string_type)); + IFC4X1_IfcTextAlignment_type = new type_declaration(strings[1316], 1079, new simple_type(simple_type::string_type)); + IFC4X1_IfcTextDecoration_type = new type_declaration(strings[1317], 1080, new simple_type(simple_type::string_type)); + IFC4X1_IfcTextFontName_type = new type_declaration(strings[1318], 1081, new simple_type(simple_type::string_type)); + IFC4X1_IfcTextPath_type = new enumeration_type(strings[1319], 1085, { + strings[478], + strings[480], + strings[1320], + strings[1321] + }); + IFC4X1_IfcTextTransformation_type = new type_declaration(strings[1322], 1090, new simple_type(simple_type::string_type)); + IFC4X1_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1323], 1096, new simple_type(simple_type::real_type)); + IFC4X1_IfcThermalConductivityMeasure_type = new type_declaration(strings[1324], 1097, new simple_type(simple_type::real_type)); + IFC4X1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1325], 1098, new simple_type(simple_type::real_type)); + IFC4X1_IfcThermalResistanceMeasure_type = new type_declaration(strings[1326], 1099, new simple_type(simple_type::real_type)); + IFC4X1_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1327], 1100, new simple_type(simple_type::real_type)); + IFC4X1_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1328], 1101, new simple_type(simple_type::real_type)); + IFC4X1_IfcTime_type = new type_declaration(strings[1329], 1102, new simple_type(simple_type::string_type)); + IFC4X1_IfcTimeMeasure_type = new type_declaration(strings[1330], 1103, new simple_type(simple_type::real_type)); + IFC4X1_IfcTimeOrRatioSelect_type = new select_type(strings[1331], 1104, { + IFC4X1_IfcDuration_type, + IFC4X1_IfcRatioMeasure_type + }); + IFC4X1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1332], 1107, { + strings[1333], + strings[1248], + strings[1334], + strings[1335], + strings[1336], + strings[1337], + strings[9] + }); + IFC4X1_IfcTimeStamp_type = new type_declaration(strings[1338], 1109, new simple_type(simple_type::integer_type)); + IFC4X1_IfcTorqueMeasure_type = new type_declaration(strings[1339], 1113, new simple_type(simple_type::real_type)); + IFC4X1_IfcTransformerTypeEnum_type = new enumeration_type(strings[1340], 1116, { + strings[32], + strings[1341], + strings[1342], + strings[1343], + strings[1344], + strings[8], + strings[9] + }); + IFC4X1_IfcTransitionCode_type = new enumeration_type(strings[1345], 1117, { + strings[1346], + strings[1333], + strings[1347], + strings[1348] + }); + IFC4X1_IfcTransitionCurveType_type = new enumeration_type(strings[1349], 1119, { + strings[1350], + strings[1351], + strings[1352], + strings[1353], + strings[1354], + strings[1355] + }); + IFC4X1_IfcTranslationalStiffnessSelect_type = new select_type(strings[1356], 1120, { + IFC4X1_IfcBoolean_type, + IFC4X1_IfcLinearStiffnessMeasure_type + }); + IFC4X1_IfcTransportElementTypeEnum_type = new enumeration_type(strings[1357], 1123, { + strings[1358], + strings[1359], + strings[1360], + strings[1361], + strings[1362], + strings[8], + strings[9] + }); + IFC4X1_IfcTrimmingPreference_type = new enumeration_type(strings[1363], 1128, { + strings[1364], + strings[868], + strings[116] + }); + IFC4X1_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1365], 1133, { + strings[1366], + strings[8], + strings[9] + }); + IFC4X1_IfcURIReference_type = new type_declaration(strings[1367], 1147, new simple_type(simple_type::string_type)); + IFC4X1_IfcUnitEnum_type = new enumeration_type(strings[1368], 1146, { + strings[1369], + strings[1370], + strings[1371], + strings[1372], + strings[1373], + strings[1374], + strings[1375], + strings[1376], + strings[1377], + strings[1378], + strings[1379], + strings[1380], + strings[1381], + strings[1382], + strings[1383], + strings[1384], + strings[1385], + strings[1386], + strings[1387], + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[1395], + strings[1396], + strings[1397], + strings[8] + }); + IFC4X1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1398], 1141, { + strings[1399], + strings[1400], + strings[1401], + strings[1402], + strings[1403], + strings[1404], + strings[1405], + strings[1406], + strings[8], + strings[9] + }); + IFC4X1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1407], 1144, { + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[8], + strings[9] + }); + IFC4X1_IfcValveTypeEnum_type = new enumeration_type(strings[1413], 1152, { + strings[1414], + strings[1415], + strings[1416], + strings[1417], + strings[1418], + strings[1419], + strings[1420], + strings[1421], + strings[1422], + strings[1423], + strings[1424], + strings[1425], + strings[1426], + strings[1427], + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434], + strings[8], + strings[9] + }); + IFC4X1_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1435], 1153, new simple_type(simple_type::real_type)); + IFC4X1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1436], 1161, { + strings[1437], + strings[1438], + strings[8], + strings[9] + }); + IFC4X1_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1439], 1165, { + strings[1440], + strings[1441], + strings[1442], + strings[1443], + strings[1444], + strings[1028], + strings[8], + strings[9] + }); + IFC4X1_IfcVolumeMeasure_type = new type_declaration(strings[1445], 1166, new simple_type(simple_type::real_type)); + IFC4X1_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1446], 1167, new simple_type(simple_type::real_type)); + IFC4X1_IfcWallTypeEnum_type = new enumeration_type(strings[1447], 1172, { + strings[1448], + strings[1449], + strings[1450], + strings[1451], + strings[1025], + strings[1452], + strings[1453], + strings[1244], + strings[1454], + strings[8], + strings[9] + }); + IFC4X1_IfcWarpingConstantMeasure_type = new type_declaration(strings[1455], 1173, new simple_type(simple_type::real_type)); + IFC4X1_IfcWarpingMomentMeasure_type = new type_declaration(strings[1456], 1174, new simple_type(simple_type::real_type)); + IFC4X1_IfcWarpingStiffnessSelect_type = new select_type(strings[1457], 1175, { + IFC4X1_IfcBoolean_type, + IFC4X1_IfcWarpingMomentMeasure_type + }); + IFC4X1_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1458], 1178, { + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[8], + strings[9] + }); + IFC4X1_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1466], 1181, { + strings[1467], + strings[1468], + strings[1469], + strings[1470], + strings[1471], + strings[1472], + strings[1473], + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[9] + }); + IFC4X1_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1480], 1182, { + strings[478], + strings[479], + strings[480], + strings[1481], + strings[1482], + strings[9] + }); + IFC4X1_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1483], 1186, { + strings[482], + strings[483], + strings[484], + strings[279], + strings[485], + strings[278], + strings[1484], + strings[9] + }); + IFC4X1_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1485], 1187, { + strings[1486], + strings[1487], + strings[1488], + strings[1489], + strings[1490], + strings[1491], + strings[1492], + strings[1493], + strings[1494], + strings[8], + strings[9] + }); + IFC4X1_IfcWindowTypeEnum_type = new enumeration_type(strings[1495], 1189, { + strings[1496], + strings[1497], + strings[1498], + strings[8], + strings[9] + }); + IFC4X1_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1499], 1190, { + strings[1486], + strings[1487], + strings[1488], + strings[1489], + strings[1490], + strings[1491], + strings[1492], + strings[1493], + strings[1494], + strings[8], + strings[9] + }); + IFC4X1_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1500], 1192, { + strings[1501], + strings[1502], + strings[1503], + strings[8], + strings[9] + }); + IFC4X1_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1504], 1195, { + strings[1505], + strings[1506], + strings[1507], + strings[8], + strings[9] + }); + IFC4X1_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1508], 1197, { + strings[1505], + strings[1506], + strings[1507], + strings[8], + strings[9] + }); + IFC4X1_IfcActorRole_type = new entity(strings[1509], false, 7, 0); + IFC4X1_IfcAddress_type = new entity(strings[1510], true, 12, 0); + IFC4X1_IfcApplication_type = new entity(strings[1511], false, 46, 0); + IFC4X1_IfcAppliedValue_type = new entity(strings[1512], false, 47, 0); + IFC4X1_IfcApproval_type = new entity(strings[1513], false, 49, 0); + IFC4X1_IfcBoundaryCondition_type = new entity(strings[1514], true, 85, 0); + IFC4X1_IfcBoundaryEdgeCondition_type = new entity(strings[1515], false, 87, IFC4X1_IfcBoundaryCondition_type); + IFC4X1_IfcBoundaryFaceCondition_type = new entity(strings[1516], false, 88, IFC4X1_IfcBoundaryCondition_type); + IFC4X1_IfcBoundaryNodeCondition_type = new entity(strings[1517], false, 89, IFC4X1_IfcBoundaryCondition_type); + IFC4X1_IfcBoundaryNodeConditionWarping_type = new entity(strings[1518], false, 90, IFC4X1_IfcBoundaryNodeCondition_type); + IFC4X1_IfcConnectionGeometry_type = new entity(strings[1519], true, 191, 0); + IFC4X1_IfcConnectionPointGeometry_type = new entity(strings[1520], false, 193, IFC4X1_IfcConnectionGeometry_type); + IFC4X1_IfcConnectionSurfaceGeometry_type = new entity(strings[1521], false, 194, IFC4X1_IfcConnectionGeometry_type); + IFC4X1_IfcConnectionVolumeGeometry_type = new entity(strings[1522], false, 196, IFC4X1_IfcConnectionGeometry_type); + IFC4X1_IfcConstraint_type = new entity(strings[1523], true, 197, 0); + IFC4X1_IfcCoordinateOperation_type = new entity(strings[1524], true, 225, 0); + IFC4X1_IfcCoordinateReferenceSystem_type = new entity(strings[1525], true, 226, 0); + IFC4X1_IfcCostValue_type = new entity(strings[1526], false, 232, IFC4X1_IfcAppliedValue_type); + IFC4X1_IfcDerivedUnit_type = new entity(strings[1527], false, 274, 0); + IFC4X1_IfcDerivedUnitElement_type = new entity(strings[1528], false, 275, 0); + IFC4X1_IfcDimensionalExponents_type = new entity(strings[1529], false, 278, 0); + IFC4X1_IfcExternalInformation_type = new entity(strings[1530], true, 389, 0); + IFC4X1_IfcExternalReference_type = new entity(strings[1531], true, 393, 0); + IFC4X1_IfcExternallyDefinedHatchStyle_type = new entity(strings[1532], false, 390, IFC4X1_IfcExternalReference_type); + IFC4X1_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1533], false, 391, IFC4X1_IfcExternalReference_type); + IFC4X1_IfcExternallyDefinedTextFont_type = new entity(strings[1534], false, 392, IFC4X1_IfcExternalReference_type); + IFC4X1_IfcGridAxis_type = new entity(strings[1535], false, 475, 0); + IFC4X1_IfcIrregularTimeSeriesValue_type = new entity(strings[1536], false, 511, 0); + IFC4X1_IfcLibraryInformation_type = new entity(strings[1537], false, 531, IFC4X1_IfcExternalInformation_type); + IFC4X1_IfcLibraryReference_type = new entity(strings[1538], false, 532, IFC4X1_IfcExternalReference_type); + IFC4X1_IfcLightDistributionData_type = new entity(strings[1539], false, 535, 0); + IFC4X1_IfcLightIntensityDistribution_type = new entity(strings[1540], false, 541, 0); + IFC4X1_IfcMapConversion_type = new entity(strings[1541], false, 569, IFC4X1_IfcCoordinateOperation_type); + IFC4X1_IfcMaterialClassificationRelationship_type = new entity(strings[1542], false, 576, 0); + IFC4X1_IfcMaterialDefinition_type = new entity(strings[1543], true, 579, 0); + IFC4X1_IfcMaterialLayer_type = new entity(strings[1544], false, 581, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialLayerSet_type = new entity(strings[1545], false, 582, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialLayerWithOffsets_type = new entity(strings[1546], false, 584, IFC4X1_IfcMaterialLayer_type); + IFC4X1_IfcMaterialList_type = new entity(strings[1547], false, 585, 0); + IFC4X1_IfcMaterialProfile_type = new entity(strings[1548], false, 586, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialProfileSet_type = new entity(strings[1549], false, 587, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialProfileWithOffsets_type = new entity(strings[1550], false, 590, IFC4X1_IfcMaterialProfile_type); + IFC4X1_IfcMaterialUsageDefinition_type = new entity(strings[1551], true, 594, 0); + IFC4X1_IfcMeasureWithUnit_type = new entity(strings[1552], false, 596, 0); + IFC4X1_IfcMetric_type = new entity(strings[1553], false, 607, IFC4X1_IfcConstraint_type); + IFC4X1_IfcMonetaryUnit_type = new entity(strings[1554], false, 621, 0); + IFC4X1_IfcNamedUnit_type = new entity(strings[1555], true, 626, 0); + IFC4X1_IfcObjectPlacement_type = new entity(strings[1556], true, 635, 0); + IFC4X1_IfcObjective_type = new entity(strings[1557], false, 633, IFC4X1_IfcConstraint_type); + IFC4X1_IfcOrganization_type = new entity(strings[1558], false, 648, 0); + IFC4X1_IfcOwnerHistory_type = new entity(strings[1559], false, 656, 0); + IFC4X1_IfcPerson_type = new entity(strings[1560], false, 667, 0); + IFC4X1_IfcPersonAndOrganization_type = new entity(strings[1561], false, 668, 0); + IFC4X1_IfcPhysicalQuantity_type = new entity(strings[1562], true, 672, 0); + IFC4X1_IfcPhysicalSimpleQuantity_type = new entity(strings[1563], true, 673, IFC4X1_IfcPhysicalQuantity_type); + IFC4X1_IfcPostalAddress_type = new entity(strings[1564], false, 709, IFC4X1_IfcAddress_type); + IFC4X1_IfcPresentationItem_type = new entity(strings[1565], true, 719, 0); + IFC4X1_IfcPresentationLayerAssignment_type = new entity(strings[1566], false, 720, 0); + IFC4X1_IfcPresentationLayerWithStyle_type = new entity(strings[1567], false, 721, IFC4X1_IfcPresentationLayerAssignment_type); + IFC4X1_IfcPresentationStyle_type = new entity(strings[1568], true, 722, 0); + IFC4X1_IfcPresentationStyleAssignment_type = new entity(strings[1569], false, 723, 0); + IFC4X1_IfcProductRepresentation_type = new entity(strings[1570], true, 733, 0); + IFC4X1_IfcProfileDef_type = new entity(strings[1571], false, 736, 0); + IFC4X1_IfcProjectedCRS_type = new entity(strings[1572], false, 740, IFC4X1_IfcCoordinateReferenceSystem_type); + IFC4X1_IfcPropertyAbstraction_type = new entity(strings[1573], true, 748, 0); + IFC4X1_IfcPropertyEnumeration_type = new entity(strings[1574], false, 753, IFC4X1_IfcPropertyAbstraction_type); + IFC4X1_IfcQuantityArea_type = new entity(strings[1575], false, 776, IFC4X1_IfcPhysicalSimpleQuantity_type); + IFC4X1_IfcQuantityCount_type = new entity(strings[1576], false, 777, IFC4X1_IfcPhysicalSimpleQuantity_type); + IFC4X1_IfcQuantityLength_type = new entity(strings[1577], false, 778, IFC4X1_IfcPhysicalSimpleQuantity_type); + IFC4X1_IfcQuantityTime_type = new entity(strings[1578], false, 780, IFC4X1_IfcPhysicalSimpleQuantity_type); + IFC4X1_IfcQuantityVolume_type = new entity(strings[1579], false, 781, IFC4X1_IfcPhysicalSimpleQuantity_type); + IFC4X1_IfcQuantityWeight_type = new entity(strings[1580], false, 782, IFC4X1_IfcPhysicalSimpleQuantity_type); + IFC4X1_IfcRecurrencePattern_type = new entity(strings[1581], false, 801, 0); + IFC4X1_IfcReference_type = new entity(strings[1582], false, 803, 0); + IFC4X1_IfcRepresentation_type = new entity(strings[1583], true, 869, 0); + IFC4X1_IfcRepresentationContext_type = new entity(strings[1584], true, 870, 0); + IFC4X1_IfcRepresentationItem_type = new entity(strings[1585], true, 871, 0); + IFC4X1_IfcRepresentationMap_type = new entity(strings[1586], false, 872, 0); + IFC4X1_IfcResourceLevelRelationship_type = new entity(strings[1587], true, 876, 0); + IFC4X1_IfcRoot_type = new entity(strings[1588], true, 888, 0); + IFC4X1_IfcSIUnit_type = new entity(strings[1589], false, 927, IFC4X1_IfcNamedUnit_type); + IFC4X1_IfcSchedulingTime_type = new entity(strings[1590], true, 897, 0); + IFC4X1_IfcShapeAspect_type = new entity(strings[1591], false, 915, 0); + IFC4X1_IfcShapeModel_type = new entity(strings[1592], true, 916, IFC4X1_IfcRepresentation_type); + IFC4X1_IfcShapeRepresentation_type = new entity(strings[1593], false, 917, IFC4X1_IfcShapeModel_type); + IFC4X1_IfcStructuralConnectionCondition_type = new entity(strings[1594], true, 981, 0); + IFC4X1_IfcStructuralLoad_type = new entity(strings[1595], true, 991, 0); + IFC4X1_IfcStructuralLoadConfiguration_type = new entity(strings[1596], false, 993, IFC4X1_IfcStructuralLoad_type); + IFC4X1_IfcStructuralLoadOrResult_type = new entity(strings[1597], true, 996, IFC4X1_IfcStructuralLoad_type); + IFC4X1_IfcStructuralLoadStatic_type = new entity(strings[1598], true, 1002, IFC4X1_IfcStructuralLoadOrResult_type); + IFC4X1_IfcStructuralLoadTemperature_type = new entity(strings[1599], false, 1003, IFC4X1_IfcStructuralLoadStatic_type); + IFC4X1_IfcStyleModel_type = new entity(strings[1600], true, 1021, IFC4X1_IfcRepresentation_type); + IFC4X1_IfcStyledItem_type = new entity(strings[1601], false, 1019, IFC4X1_IfcRepresentationItem_type); + IFC4X1_IfcStyledRepresentation_type = new entity(strings[1602], false, 1020, IFC4X1_IfcStyleModel_type); + IFC4X1_IfcSurfaceReinforcementArea_type = new entity(strings[1603], false, 1034, IFC4X1_IfcStructuralLoadOrResult_type); + IFC4X1_IfcSurfaceStyle_type = new entity(strings[1604], false, 1036, IFC4X1_IfcPresentationStyle_type); + IFC4X1_IfcSurfaceStyleLighting_type = new entity(strings[1605], false, 1038, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcSurfaceStyleRefraction_type = new entity(strings[1606], false, 1039, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcSurfaceStyleShading_type = new entity(strings[1607], false, 1041, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcSurfaceStyleWithTextures_type = new entity(strings[1608], false, 1042, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcSurfaceTexture_type = new entity(strings[1609], true, 1043, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcTable_type = new entity(strings[1610], false, 1055, 0); + IFC4X1_IfcTableColumn_type = new entity(strings[1611], false, 1056, 0); + IFC4X1_IfcTableRow_type = new entity(strings[1612], false, 1057, 0); + IFC4X1_IfcTaskTime_type = new entity(strings[1613], false, 1063, IFC4X1_IfcSchedulingTime_type); + IFC4X1_IfcTaskTimeRecurring_type = new entity(strings[1614], false, 1064, IFC4X1_IfcTaskTime_type); + IFC4X1_IfcTelecomAddress_type = new entity(strings[1615], false, 1067, IFC4X1_IfcAddress_type); + IFC4X1_IfcTextStyle_type = new entity(strings[1616], false, 1086, IFC4X1_IfcPresentationStyle_type); + IFC4X1_IfcTextStyleForDefinedFont_type = new entity(strings[1617], false, 1088, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcTextStyleTextModel_type = new entity(strings[1618], false, 1089, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcTextureCoordinate_type = new entity(strings[1619], true, 1091, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcTextureCoordinateGenerator_type = new entity(strings[1620], false, 1092, IFC4X1_IfcTextureCoordinate_type); + IFC4X1_IfcTextureMap_type = new entity(strings[1621], false, 1093, IFC4X1_IfcTextureCoordinate_type); + IFC4X1_IfcTextureVertex_type = new entity(strings[1622], false, 1094, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcTextureVertexList_type = new entity(strings[1623], false, 1095, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcTimePeriod_type = new entity(strings[1624], false, 1105, 0); + IFC4X1_IfcTimeSeries_type = new entity(strings[1625], true, 1106, 0); + IFC4X1_IfcTimeSeriesValue_type = new entity(strings[1626], false, 1108, 0); + IFC4X1_IfcTopologicalRepresentationItem_type = new entity(strings[1627], true, 1110, IFC4X1_IfcRepresentationItem_type); + IFC4X1_IfcTopologyRepresentation_type = new entity(strings[1628], false, 1111, IFC4X1_IfcShapeModel_type); + IFC4X1_IfcUnitAssignment_type = new entity(strings[1629], false, 1145, 0); + IFC4X1_IfcVertex_type = new entity(strings[1630], false, 1156, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcVertexPoint_type = new entity(strings[1631], false, 1158, IFC4X1_IfcVertex_type); + IFC4X1_IfcVirtualGridIntersection_type = new entity(strings[1632], false, 1163, 0); + IFC4X1_IfcWorkTime_type = new entity(strings[1633], false, 1198, IFC4X1_IfcSchedulingTime_type); + IFC4X1_IfcActorSelect_type = new select_type(strings[1634], 8, { + IFC4X1_IfcOrganization_type, + IFC4X1_IfcPerson_type, + IFC4X1_IfcPersonAndOrganization_type + }); + IFC4X1_IfcArcIndex_type = new type_declaration(strings[1635], 54, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcPositiveInteger_type))); + IFC4X1_IfcBendingParameterSelect_type = new select_type(strings[1636], 73, { + IFC4X1_IfcLengthMeasure_type, + IFC4X1_IfcPlaneAngleMeasure_type + }); + IFC4X1_IfcBoxAlignment_type = new type_declaration(strings[1637], 94, new named_type(IFC4X1_IfcLabel_type)); + IFC4X1_IfcDerivedMeasureValue_type = new select_type(strings[1638], 272, { + IFC4X1_IfcAbsorbedDoseMeasure_type, + IFC4X1_IfcAccelerationMeasure_type, + IFC4X1_IfcAngularVelocityMeasure_type, + IFC4X1_IfcAreaDensityMeasure_type, + IFC4X1_IfcCompoundPlaneAngleMeasure_type, + IFC4X1_IfcCurvatureMeasure_type, + IFC4X1_IfcDoseEquivalentMeasure_type, + IFC4X1_IfcDynamicViscosityMeasure_type, + IFC4X1_IfcElectricCapacitanceMeasure_type, + IFC4X1_IfcElectricChargeMeasure_type, + IFC4X1_IfcElectricConductanceMeasure_type, + IFC4X1_IfcElectricResistanceMeasure_type, + IFC4X1_IfcElectricVoltageMeasure_type, + IFC4X1_IfcEnergyMeasure_type, + IFC4X1_IfcForceMeasure_type, + IFC4X1_IfcFrequencyMeasure_type, + IFC4X1_IfcHeatFluxDensityMeasure_type, + IFC4X1_IfcHeatingValueMeasure_type, + IFC4X1_IfcIlluminanceMeasure_type, + IFC4X1_IfcInductanceMeasure_type, + IFC4X1_IfcIntegerCountRateMeasure_type, + IFC4X1_IfcIonConcentrationMeasure_type, + IFC4X1_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X1_IfcKinematicViscosityMeasure_type, + IFC4X1_IfcLinearForceMeasure_type, + IFC4X1_IfcLinearMomentMeasure_type, + IFC4X1_IfcLinearStiffnessMeasure_type, + IFC4X1_IfcLinearVelocityMeasure_type, + IFC4X1_IfcLuminousFluxMeasure_type, + IFC4X1_IfcLuminousIntensityDistributionMeasure_type, + IFC4X1_IfcMagneticFluxDensityMeasure_type, + IFC4X1_IfcMagneticFluxMeasure_type, + IFC4X1_IfcMassDensityMeasure_type, + IFC4X1_IfcMassFlowRateMeasure_type, + IFC4X1_IfcMassPerLengthMeasure_type, + IFC4X1_IfcModulusOfElasticityMeasure_type, + IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X1_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X1_IfcMoistureDiffusivityMeasure_type, + IFC4X1_IfcMolecularWeightMeasure_type, + IFC4X1_IfcMomentOfInertiaMeasure_type, + IFC4X1_IfcMonetaryMeasure_type, + IFC4X1_IfcPHMeasure_type, + IFC4X1_IfcPlanarForceMeasure_type, + IFC4X1_IfcPowerMeasure_type, + IFC4X1_IfcPressureMeasure_type, + IFC4X1_IfcRadioActivityMeasure_type, + IFC4X1_IfcRotationalFrequencyMeasure_type, + IFC4X1_IfcRotationalMassMeasure_type, + IFC4X1_IfcRotationalStiffnessMeasure_type, + IFC4X1_IfcSectionModulusMeasure_type, + IFC4X1_IfcSectionalAreaIntegralMeasure_type, + IFC4X1_IfcShearModulusMeasure_type, + IFC4X1_IfcSoundPowerLevelMeasure_type, + IFC4X1_IfcSoundPowerMeasure_type, + IFC4X1_IfcSoundPressureLevelMeasure_type, + IFC4X1_IfcSoundPressureMeasure_type, + IFC4X1_IfcSpecificHeatCapacityMeasure_type, + IFC4X1_IfcTemperatureGradientMeasure_type, + IFC4X1_IfcTemperatureRateOfChangeMeasure_type, + IFC4X1_IfcThermalAdmittanceMeasure_type, + IFC4X1_IfcThermalConductivityMeasure_type, + IFC4X1_IfcThermalExpansionCoefficientMeasure_type, + IFC4X1_IfcThermalResistanceMeasure_type, + IFC4X1_IfcThermalTransmittanceMeasure_type, + IFC4X1_IfcTorqueMeasure_type, + IFC4X1_IfcVaporPermeabilityMeasure_type, + IFC4X1_IfcVolumetricFlowRateMeasure_type, + IFC4X1_IfcWarpingConstantMeasure_type, + IFC4X1_IfcWarpingMomentMeasure_type + }); + IFC4X1_IfcLayeredItem_type = new select_type(strings[1639], 528, { + IFC4X1_IfcRepresentation_type, + IFC4X1_IfcRepresentationItem_type + }); + IFC4X1_IfcLibrarySelect_type = new select_type(strings[1640], 533, { + IFC4X1_IfcLibraryInformation_type, + IFC4X1_IfcLibraryReference_type + }); + IFC4X1_IfcLightDistributionDataSourceSelect_type = new select_type(strings[1641], 536, { + IFC4X1_IfcExternalReference_type, + IFC4X1_IfcLightIntensityDistribution_type + }); + IFC4X1_IfcLineIndex_type = new type_declaration(strings[1642], 555, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcPositiveInteger_type))); + IFC4X1_IfcMaterialSelect_type = new select_type(strings[1643], 593, { + IFC4X1_IfcMaterialDefinition_type, + IFC4X1_IfcMaterialList_type, + IFC4X1_IfcMaterialUsageDefinition_type + }); + IFC4X1_IfcNormalisedRatioMeasure_type = new type_declaration(strings[1644], 628, new named_type(IFC4X1_IfcRatioMeasure_type)); + IFC4X1_IfcObjectReferenceSelect_type = new select_type(strings[1645], 636, { + IFC4X1_IfcAddress_type, + IFC4X1_IfcAppliedValue_type, + IFC4X1_IfcExternalReference_type, + IFC4X1_IfcMaterialDefinition_type, + IFC4X1_IfcOrganization_type, + IFC4X1_IfcPerson_type, + IFC4X1_IfcPersonAndOrganization_type, + IFC4X1_IfcTable_type, + IFC4X1_IfcTimeSeries_type + }); + IFC4X1_IfcPositiveRatioMeasure_type = new type_declaration(strings[1646], 708, new named_type(IFC4X1_IfcRatioMeasure_type)); + IFC4X1_IfcSegmentIndexSelect_type = new select_type(strings[1647], 907, { + IFC4X1_IfcArcIndex_type, + IFC4X1_IfcLineIndex_type + }); + IFC4X1_IfcSimpleValue_type = new select_type(strings[1648], 924, { + IFC4X1_IfcBinary_type, + IFC4X1_IfcBoolean_type, + IFC4X1_IfcDate_type, + IFC4X1_IfcDateTime_type, + IFC4X1_IfcDuration_type, + IFC4X1_IfcIdentifier_type, + IFC4X1_IfcInteger_type, + IFC4X1_IfcLabel_type, + IFC4X1_IfcLogical_type, + IFC4X1_IfcPositiveInteger_type, + IFC4X1_IfcReal_type, + IFC4X1_IfcText_type, + IFC4X1_IfcTime_type, + IFC4X1_IfcTimeStamp_type + }); + IFC4X1_IfcSizeSelect_type = new select_type(strings[1649], 929, { + IFC4X1_IfcDescriptiveMeasure_type, + IFC4X1_IfcLengthMeasure_type, + IFC4X1_IfcNormalisedRatioMeasure_type, + IFC4X1_IfcPositiveLengthMeasure_type, + IFC4X1_IfcPositiveRatioMeasure_type, + IFC4X1_IfcRatioMeasure_type + }); + IFC4X1_IfcSpecularHighlightSelect_type = new select_type(strings[1650], 962, { + IFC4X1_IfcSpecularExponent_type, + IFC4X1_IfcSpecularRoughness_type + }); + IFC4X1_IfcStyleAssignmentSelect_type = new select_type(strings[1651], 1018, { + IFC4X1_IfcPresentationStyle_type, + IFC4X1_IfcPresentationStyleAssignment_type + }); + IFC4X1_IfcSurfaceStyleElementSelect_type = new select_type(strings[1652], 1037, { + IFC4X1_IfcExternallyDefinedSurfaceStyle_type, + IFC4X1_IfcSurfaceStyleLighting_type, + IFC4X1_IfcSurfaceStyleRefraction_type, + IFC4X1_IfcSurfaceStyleShading_type, + IFC4X1_IfcSurfaceStyleWithTextures_type + }); + IFC4X1_IfcUnit_type = new select_type(strings[1653], 1138, { + IFC4X1_IfcDerivedUnit_type, + IFC4X1_IfcMonetaryUnit_type, + IFC4X1_IfcNamedUnit_type + }); + IFC4X1_IfcApprovalRelationship_type = new entity(strings[1654], false, 50, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcArbitraryClosedProfileDef_type = new entity(strings[1655], false, 51, IFC4X1_IfcProfileDef_type); + IFC4X1_IfcArbitraryOpenProfileDef_type = new entity(strings[1656], false, 52, IFC4X1_IfcProfileDef_type); + IFC4X1_IfcArbitraryProfileDefWithVoids_type = new entity(strings[1657], false, 53, IFC4X1_IfcArbitraryClosedProfileDef_type); + IFC4X1_IfcBlobTexture_type = new entity(strings[1658], false, 75, IFC4X1_IfcSurfaceTexture_type); + IFC4X1_IfcCenterLineProfileDef_type = new entity(strings[1659], false, 139, IFC4X1_IfcArbitraryOpenProfileDef_type); + IFC4X1_IfcClassification_type = new entity(strings[1660], false, 153, IFC4X1_IfcExternalInformation_type); + IFC4X1_IfcClassificationReference_type = new entity(strings[1661], false, 154, IFC4X1_IfcExternalReference_type); + IFC4X1_IfcColourRgbList_type = new entity(strings[1662], false, 164, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcColourSpecification_type = new entity(strings[1663], true, 165, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcCompositeProfileDef_type = new entity(strings[1664], false, 180, IFC4X1_IfcProfileDef_type); + IFC4X1_IfcConnectedFaceSet_type = new entity(strings[1665], false, 189, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcConnectionCurveGeometry_type = new entity(strings[1666], false, 190, IFC4X1_IfcConnectionGeometry_type); + IFC4X1_IfcConnectionPointEccentricity_type = new entity(strings[1667], false, 192, IFC4X1_IfcConnectionPointGeometry_type); + IFC4X1_IfcContextDependentUnit_type = new entity(strings[1668], false, 212, IFC4X1_IfcNamedUnit_type); + IFC4X1_IfcConversionBasedUnit_type = new entity(strings[1669], false, 217, IFC4X1_IfcNamedUnit_type); + IFC4X1_IfcConversionBasedUnitWithOffset_type = new entity(strings[1670], false, 218, IFC4X1_IfcConversionBasedUnit_type); + IFC4X1_IfcCurrencyRelationship_type = new entity(strings[1671], false, 244, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcCurveStyle_type = new entity(strings[1672], false, 257, IFC4X1_IfcPresentationStyle_type); + IFC4X1_IfcCurveStyleFont_type = new entity(strings[1673], false, 258, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcCurveStyleFontAndScaling_type = new entity(strings[1674], false, 259, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcCurveStyleFontPattern_type = new entity(strings[1675], false, 260, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcDerivedProfileDef_type = new entity(strings[1676], false, 273, IFC4X1_IfcProfileDef_type); + IFC4X1_IfcDocumentInformation_type = new entity(strings[1677], false, 301, IFC4X1_IfcExternalInformation_type); + IFC4X1_IfcDocumentInformationRelationship_type = new entity(strings[1678], false, 302, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcDocumentReference_type = new entity(strings[1679], false, 303, IFC4X1_IfcExternalReference_type); + IFC4X1_IfcEdge_type = new entity(strings[1680], false, 332, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcEdgeCurve_type = new entity(strings[1681], false, 333, IFC4X1_IfcEdge_type); + IFC4X1_IfcEventTime_type = new entity(strings[1682], false, 384, IFC4X1_IfcSchedulingTime_type); + IFC4X1_IfcExtendedProperties_type = new entity(strings[1683], true, 388, IFC4X1_IfcPropertyAbstraction_type); + IFC4X1_IfcExternalReferenceRelationship_type = new entity(strings[1684], false, 394, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcFace_type = new entity(strings[1685], false, 400, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcFaceBound_type = new entity(strings[1686], false, 402, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcFaceOuterBound_type = new entity(strings[1687], false, 403, IFC4X1_IfcFaceBound_type); + IFC4X1_IfcFaceSurface_type = new entity(strings[1688], false, 404, IFC4X1_IfcFace_type); + IFC4X1_IfcFailureConnectionCondition_type = new entity(strings[1689], false, 407, IFC4X1_IfcStructuralConnectionCondition_type); + IFC4X1_IfcFillAreaStyle_type = new entity(strings[1690], false, 417, IFC4X1_IfcPresentationStyle_type); + IFC4X1_IfcGeometricRepresentationContext_type = new entity(strings[1691], false, 467, IFC4X1_IfcRepresentationContext_type); + IFC4X1_IfcGeometricRepresentationItem_type = new entity(strings[1692], true, 468, IFC4X1_IfcRepresentationItem_type); + IFC4X1_IfcGeometricRepresentationSubContext_type = new entity(strings[1693], false, 469, IFC4X1_IfcGeometricRepresentationContext_type); + IFC4X1_IfcGeometricSet_type = new entity(strings[1694], false, 470, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcGridPlacement_type = new entity(strings[1695], false, 476, IFC4X1_IfcObjectPlacement_type); + IFC4X1_IfcHalfSpaceSolid_type = new entity(strings[1696], false, 480, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcImageTexture_type = new entity(strings[1697], false, 492, IFC4X1_IfcSurfaceTexture_type); + IFC4X1_IfcIndexedColourMap_type = new entity(strings[1698], false, 493, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcIndexedTextureMap_type = new entity(strings[1699], true, 497, IFC4X1_IfcTextureCoordinate_type); + IFC4X1_IfcIndexedTriangleTextureMap_type = new entity(strings[1700], false, 498, IFC4X1_IfcIndexedTextureMap_type); + IFC4X1_IfcIrregularTimeSeries_type = new entity(strings[1701], false, 510, IFC4X1_IfcTimeSeries_type); + IFC4X1_IfcLagTime_type = new entity(strings[1702], false, 523, IFC4X1_IfcSchedulingTime_type); + IFC4X1_IfcLightSource_type = new entity(strings[1703], true, 542, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcLightSourceAmbient_type = new entity(strings[1704], false, 543, IFC4X1_IfcLightSource_type); + IFC4X1_IfcLightSourceDirectional_type = new entity(strings[1705], false, 544, IFC4X1_IfcLightSource_type); + IFC4X1_IfcLightSourceGoniometric_type = new entity(strings[1706], false, 545, IFC4X1_IfcLightSource_type); + IFC4X1_IfcLightSourcePositional_type = new entity(strings[1707], false, 546, IFC4X1_IfcLightSource_type); + IFC4X1_IfcLightSourceSpot_type = new entity(strings[1708], false, 547, IFC4X1_IfcLightSourcePositional_type); + IFC4X1_IfcLinearPlacement_type = new entity(strings[1709], false, 551, IFC4X1_IfcObjectPlacement_type); + IFC4X1_IfcLocalPlacement_type = new entity(strings[1710], false, 558, IFC4X1_IfcObjectPlacement_type); + IFC4X1_IfcLoop_type = new entity(strings[1711], false, 561, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcMappedItem_type = new entity(strings[1712], false, 570, IFC4X1_IfcRepresentationItem_type); + IFC4X1_IfcMaterial_type = new entity(strings[1713], false, 575, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialConstituent_type = new entity(strings[1714], false, 577, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialConstituentSet_type = new entity(strings[1715], false, 578, IFC4X1_IfcMaterialDefinition_type); + IFC4X1_IfcMaterialDefinitionRepresentation_type = new entity(strings[1716], false, 580, IFC4X1_IfcProductRepresentation_type); + IFC4X1_IfcMaterialLayerSetUsage_type = new entity(strings[1717], false, 583, IFC4X1_IfcMaterialUsageDefinition_type); + IFC4X1_IfcMaterialProfileSetUsage_type = new entity(strings[1718], false, 588, IFC4X1_IfcMaterialUsageDefinition_type); + IFC4X1_IfcMaterialProfileSetUsageTapering_type = new entity(strings[1719], false, 589, IFC4X1_IfcMaterialProfileSetUsage_type); + IFC4X1_IfcMaterialProperties_type = new entity(strings[1720], false, 591, IFC4X1_IfcExtendedProperties_type); + IFC4X1_IfcMaterialRelationship_type = new entity(strings[1721], false, 592, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcMirroredProfileDef_type = new entity(strings[1722], false, 609, IFC4X1_IfcDerivedProfileDef_type); + IFC4X1_IfcObjectDefinition_type = new entity(strings[1723], true, 632, IFC4X1_IfcRoot_type); + IFC4X1_IfcOpenShell_type = new entity(strings[1724], false, 647, IFC4X1_IfcConnectedFaceSet_type); + IFC4X1_IfcOrganizationRelationship_type = new entity(strings[1725], false, 649, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcOrientationExpression_type = new entity(strings[1726], false, 650, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcOrientedEdge_type = new entity(strings[1727], false, 651, IFC4X1_IfcEdge_type); + IFC4X1_IfcParameterizedProfileDef_type = new entity(strings[1728], true, 657, IFC4X1_IfcProfileDef_type); + IFC4X1_IfcPath_type = new entity(strings[1729], false, 659, IFC4X1_IfcTopologicalRepresentationItem_type); + IFC4X1_IfcPhysicalComplexQuantity_type = new entity(strings[1730], false, 670, IFC4X1_IfcPhysicalQuantity_type); + IFC4X1_IfcPixelTexture_type = new entity(strings[1731], false, 684, IFC4X1_IfcSurfaceTexture_type); + IFC4X1_IfcPlacement_type = new entity(strings[1732], true, 685, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcPlanarExtent_type = new entity(strings[1733], false, 687, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcPoint_type = new entity(strings[1734], true, 695, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcPointOnCurve_type = new entity(strings[1735], false, 696, IFC4X1_IfcPoint_type); + IFC4X1_IfcPointOnSurface_type = new entity(strings[1736], false, 697, IFC4X1_IfcPoint_type); + IFC4X1_IfcPolyLoop_type = new entity(strings[1737], false, 702, IFC4X1_IfcLoop_type); + IFC4X1_IfcPolygonalBoundedHalfSpace_type = new entity(strings[1738], false, 699, IFC4X1_IfcHalfSpaceSolid_type); + IFC4X1_IfcPreDefinedItem_type = new entity(strings[1739], true, 713, IFC4X1_IfcPresentationItem_type); + IFC4X1_IfcPreDefinedProperties_type = new entity(strings[1740], true, 714, IFC4X1_IfcPropertyAbstraction_type); + IFC4X1_IfcPreDefinedTextFont_type = new entity(strings[1741], true, 716, IFC4X1_IfcPreDefinedItem_type); + IFC4X1_IfcProductDefinitionShape_type = new entity(strings[1742], false, 732, IFC4X1_IfcProductRepresentation_type); + IFC4X1_IfcProfileProperties_type = new entity(strings[1743], false, 737, IFC4X1_IfcExtendedProperties_type); + IFC4X1_IfcProperty_type = new entity(strings[1744], true, 747, IFC4X1_IfcPropertyAbstraction_type); + IFC4X1_IfcPropertyDefinition_type = new entity(strings[1745], true, 750, IFC4X1_IfcRoot_type); + IFC4X1_IfcPropertyDependencyRelationship_type = new entity(strings[1746], false, 751, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcPropertySetDefinition_type = new entity(strings[1747], true, 757, IFC4X1_IfcPropertyDefinition_type); + IFC4X1_IfcPropertyTemplateDefinition_type = new entity(strings[1748], true, 765, IFC4X1_IfcPropertyDefinition_type); + IFC4X1_IfcQuantitySet_type = new entity(strings[1749], true, 779, IFC4X1_IfcPropertySetDefinition_type); + IFC4X1_IfcRectangleProfileDef_type = new entity(strings[1750], false, 798, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcRegularTimeSeries_type = new entity(strings[1751], false, 807, IFC4X1_IfcTimeSeries_type); + IFC4X1_IfcReinforcementBarProperties_type = new entity(strings[1752], false, 808, IFC4X1_IfcPreDefinedProperties_type); + IFC4X1_IfcRelationship_type = new entity(strings[1753], true, 836, IFC4X1_IfcRoot_type); + IFC4X1_IfcResourceApprovalRelationship_type = new entity(strings[1754], false, 874, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcResourceConstraintRelationship_type = new entity(strings[1755], false, 875, IFC4X1_IfcResourceLevelRelationship_type); + IFC4X1_IfcResourceTime_type = new entity(strings[1756], false, 879, IFC4X1_IfcSchedulingTime_type); + IFC4X1_IfcRoundedRectangleProfileDef_type = new entity(strings[1757], false, 893, IFC4X1_IfcRectangleProfileDef_type); + IFC4X1_IfcSectionProperties_type = new entity(strings[1758], false, 904, IFC4X1_IfcPreDefinedProperties_type); + IFC4X1_IfcSectionReinforcementProperties_type = new entity(strings[1759], false, 905, IFC4X1_IfcPreDefinedProperties_type); + IFC4X1_IfcSectionedSpine_type = new entity(strings[1760], false, 902, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcShellBasedSurfaceModel_type = new entity(strings[1761], false, 920, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcSimpleProperty_type = new entity(strings[1762], true, 921, IFC4X1_IfcProperty_type); + IFC4X1_IfcSlippageConnectionCondition_type = new entity(strings[1763], false, 935, IFC4X1_IfcStructuralConnectionCondition_type); + IFC4X1_IfcSolidModel_type = new entity(strings[1764], true, 940, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcStructuralLoadLinearForce_type = new entity(strings[1765], false, 995, IFC4X1_IfcStructuralLoadStatic_type); + IFC4X1_IfcStructuralLoadPlanarForce_type = new entity(strings[1766], false, 997, IFC4X1_IfcStructuralLoadStatic_type); + IFC4X1_IfcStructuralLoadSingleDisplacement_type = new entity(strings[1767], false, 998, IFC4X1_IfcStructuralLoadStatic_type); + IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[1768], false, 999, IFC4X1_IfcStructuralLoadSingleDisplacement_type); + IFC4X1_IfcStructuralLoadSingleForce_type = new entity(strings[1769], false, 1000, IFC4X1_IfcStructuralLoadStatic_type); + IFC4X1_IfcStructuralLoadSingleForceWarping_type = new entity(strings[1770], false, 1001, IFC4X1_IfcStructuralLoadSingleForce_type); + IFC4X1_IfcSubedge_type = new entity(strings[1771], false, 1025, IFC4X1_IfcEdge_type); + IFC4X1_IfcSurface_type = new entity(strings[1772], true, 1026, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcSurfaceStyleRendering_type = new entity(strings[1773], false, 1040, IFC4X1_IfcSurfaceStyleShading_type); + IFC4X1_IfcSweptAreaSolid_type = new entity(strings[1774], true, 1044, IFC4X1_IfcSolidModel_type); + IFC4X1_IfcSweptDiskSolid_type = new entity(strings[1775], false, 1045, IFC4X1_IfcSolidModel_type); + IFC4X1_IfcSweptDiskSolidPolygonal_type = new entity(strings[1776], false, 1046, IFC4X1_IfcSweptDiskSolid_type); + IFC4X1_IfcSweptSurface_type = new entity(strings[1777], true, 1047, IFC4X1_IfcSurface_type); + IFC4X1_IfcTShapeProfileDef_type = new entity(strings[1778], false, 1130, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcTessellatedItem_type = new entity(strings[1779], true, 1077, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcTextLiteral_type = new entity(strings[1780], false, 1083, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcTextLiteralWithExtent_type = new entity(strings[1781], false, 1084, IFC4X1_IfcTextLiteral_type); + IFC4X1_IfcTextStyleFontModel_type = new entity(strings[1782], false, 1087, IFC4X1_IfcPreDefinedTextFont_type); + IFC4X1_IfcTrapeziumProfileDef_type = new entity(strings[1783], false, 1124, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcTypeObject_type = new entity(strings[1784], false, 1134, IFC4X1_IfcObjectDefinition_type); + IFC4X1_IfcTypeProcess_type = new entity(strings[1785], true, 1135, IFC4X1_IfcTypeObject_type); + IFC4X1_IfcTypeProduct_type = new entity(strings[1786], false, 1136, IFC4X1_IfcTypeObject_type); + IFC4X1_IfcTypeResource_type = new entity(strings[1787], true, 1137, IFC4X1_IfcTypeObject_type); + IFC4X1_IfcUShapeProfileDef_type = new entity(strings[1788], false, 1148, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcVector_type = new entity(strings[1789], false, 1154, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcVertexLoop_type = new entity(strings[1790], false, 1157, IFC4X1_IfcLoop_type); + IFC4X1_IfcWindowStyle_type = new entity(strings[1791], false, 1185, IFC4X1_IfcTypeProduct_type); + IFC4X1_IfcZShapeProfileDef_type = new entity(strings[1792], false, 1200, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcClassificationReferenceSelect_type = new select_type(strings[1793], 155, { + IFC4X1_IfcClassification_type, + IFC4X1_IfcClassificationReference_type + }); + IFC4X1_IfcClassificationSelect_type = new select_type(strings[1794], 156, { + IFC4X1_IfcClassification_type, + IFC4X1_IfcClassificationReference_type + }); + IFC4X1_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[1795], 227, { + IFC4X1_IfcCoordinateReferenceSystem_type, + IFC4X1_IfcGeometricRepresentationContext_type + }); + IFC4X1_IfcDefinitionSelect_type = new select_type(strings[1796], 271, { + IFC4X1_IfcObjectDefinition_type, + IFC4X1_IfcPropertyDefinition_type + }); + IFC4X1_IfcDocumentSelect_type = new select_type(strings[1797], 304, { + IFC4X1_IfcDocumentInformation_type, + IFC4X1_IfcDocumentReference_type + }); + IFC4X1_IfcHatchLineDistanceSelect_type = new select_type(strings[1798], 481, { + IFC4X1_IfcPositiveLengthMeasure_type, + IFC4X1_IfcVector_type + }); + IFC4X1_IfcMeasureValue_type = new select_type(strings[1799], 595, { + IFC4X1_IfcAmountOfSubstanceMeasure_type, + IFC4X1_IfcAreaMeasure_type, + IFC4X1_IfcComplexNumber_type, + IFC4X1_IfcContextDependentMeasure_type, + IFC4X1_IfcCountMeasure_type, + IFC4X1_IfcDescriptiveMeasure_type, + IFC4X1_IfcElectricCurrentMeasure_type, + IFC4X1_IfcLengthMeasure_type, + IFC4X1_IfcLuminousIntensityMeasure_type, + IFC4X1_IfcMassMeasure_type, + IFC4X1_IfcNonNegativeLengthMeasure_type, + IFC4X1_IfcNormalisedRatioMeasure_type, + IFC4X1_IfcNumericMeasure_type, + IFC4X1_IfcParameterValue_type, + IFC4X1_IfcPlaneAngleMeasure_type, + IFC4X1_IfcPositiveLengthMeasure_type, + IFC4X1_IfcPositivePlaneAngleMeasure_type, + IFC4X1_IfcPositiveRatioMeasure_type, + IFC4X1_IfcRatioMeasure_type, + IFC4X1_IfcSolidAngleMeasure_type, + IFC4X1_IfcThermodynamicTemperatureMeasure_type, + IFC4X1_IfcTimeMeasure_type, + IFC4X1_IfcVolumeMeasure_type + }); + IFC4X1_IfcPointOrVertexPoint_type = new select_type(strings[1800], 698, { + IFC4X1_IfcPoint_type, + IFC4X1_IfcVertexPoint_type + }); + IFC4X1_IfcPresentationStyleSelect_type = new select_type(strings[1801], 724, { + IFC4X1_IfcCurveStyle_type, + IFC4X1_IfcFillAreaStyle_type, + IFC4X1_IfcNullStyle_type, + IFC4X1_IfcSurfaceStyle_type, + IFC4X1_IfcTextStyle_type + }); + IFC4X1_IfcProductRepresentationSelect_type = new select_type(strings[1802], 734, { + IFC4X1_IfcProductDefinitionShape_type, + IFC4X1_IfcRepresentationMap_type + }); + IFC4X1_IfcPropertySetDefinitionSet_type = new type_declaration(strings[1803], 759, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertySetDefinition_type))); + IFC4X1_IfcResourceObjectSelect_type = new select_type(strings[1804], 877, { + IFC4X1_IfcActorRole_type, + IFC4X1_IfcAppliedValue_type, + IFC4X1_IfcApproval_type, + IFC4X1_IfcConstraint_type, + IFC4X1_IfcContextDependentUnit_type, + IFC4X1_IfcConversionBasedUnit_type, + IFC4X1_IfcExternalInformation_type, + IFC4X1_IfcExternalReference_type, + IFC4X1_IfcMaterialDefinition_type, + IFC4X1_IfcOrganization_type, + IFC4X1_IfcPerson_type, + IFC4X1_IfcPersonAndOrganization_type, + IFC4X1_IfcPhysicalQuantity_type, + IFC4X1_IfcProfileDef_type, + IFC4X1_IfcPropertyAbstraction_type, + IFC4X1_IfcShapeAspect_type, + IFC4X1_IfcTimeSeries_type + }); + IFC4X1_IfcTextFontSelect_type = new select_type(strings[1805], 1082, { + IFC4X1_IfcExternallyDefinedTextFont_type, + IFC4X1_IfcPreDefinedTextFont_type + }); + IFC4X1_IfcValue_type = new select_type(strings[1806], 1149, { + IFC4X1_IfcDerivedMeasureValue_type, + IFC4X1_IfcMeasureValue_type, + IFC4X1_IfcSimpleValue_type + }); + IFC4X1_IfcAdvancedFace_type = new entity(strings[1807], false, 16, IFC4X1_IfcFaceSurface_type); + IFC4X1_IfcAlignment2DHorizontal_type = new entity(strings[1808], false, 30, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcAlignment2DSegment_type = new entity(strings[1809], true, 32, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcAlignment2DVertical_type = new entity(strings[1810], false, 36, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcAlignment2DVerticalSegment_type = new entity(strings[1811], true, 37, IFC4X1_IfcAlignment2DSegment_type); + IFC4X1_IfcAnnotationFillArea_type = new entity(strings[1812], false, 45, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcAsymmetricIShapeProfileDef_type = new entity(strings[1813], false, 60, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcAxis1Placement_type = new entity(strings[1814], false, 64, IFC4X1_IfcPlacement_type); + IFC4X1_IfcAxis2Placement2D_type = new entity(strings[1815], false, 66, IFC4X1_IfcPlacement_type); + IFC4X1_IfcAxis2Placement3D_type = new entity(strings[1816], false, 67, IFC4X1_IfcPlacement_type); + IFC4X1_IfcBooleanResult_type = new entity(strings[1817], false, 84, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcBoundedSurface_type = new entity(strings[1818], true, 92, IFC4X1_IfcSurface_type); + IFC4X1_IfcBoundingBox_type = new entity(strings[1819], false, 93, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcBoxedHalfSpace_type = new entity(strings[1820], false, 95, IFC4X1_IfcHalfSpaceSolid_type); + IFC4X1_IfcCShapeProfileDef_type = new entity(strings[1821], false, 243, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcCartesianPoint_type = new entity(strings[1822], false, 130, IFC4X1_IfcPoint_type); + IFC4X1_IfcCartesianPointList_type = new entity(strings[1823], true, 131, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcCartesianPointList2D_type = new entity(strings[1824], false, 132, IFC4X1_IfcCartesianPointList_type); + IFC4X1_IfcCartesianPointList3D_type = new entity(strings[1825], false, 133, IFC4X1_IfcCartesianPointList_type); + IFC4X1_IfcCartesianTransformationOperator_type = new entity(strings[1826], true, 134, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcCartesianTransformationOperator2D_type = new entity(strings[1827], false, 135, IFC4X1_IfcCartesianTransformationOperator_type); + IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[1828], false, 136, IFC4X1_IfcCartesianTransformationOperator2D_type); + IFC4X1_IfcCartesianTransformationOperator3D_type = new entity(strings[1829], false, 137, IFC4X1_IfcCartesianTransformationOperator_type); + IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[1830], false, 138, IFC4X1_IfcCartesianTransformationOperator3D_type); + IFC4X1_IfcCircleProfileDef_type = new entity(strings[1831], false, 149, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcClosedShell_type = new entity(strings[1832], false, 157, IFC4X1_IfcConnectedFaceSet_type); + IFC4X1_IfcColourRgb_type = new entity(strings[1833], false, 163, IFC4X1_IfcColourSpecification_type); + IFC4X1_IfcComplexProperty_type = new entity(strings[1834], false, 174, IFC4X1_IfcProperty_type); + IFC4X1_IfcCompositeCurveSegment_type = new entity(strings[1835], false, 179, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcConstructionResourceType_type = new entity(strings[1836], true, 209, IFC4X1_IfcTypeResource_type); + IFC4X1_IfcContext_type = new entity(strings[1837], true, 210, IFC4X1_IfcObjectDefinition_type); + IFC4X1_IfcCrewResourceType_type = new entity(strings[1838], false, 238, IFC4X1_IfcConstructionResourceType_type); + IFC4X1_IfcCsgPrimitive3D_type = new entity(strings[1839], true, 240, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcCsgSolid_type = new entity(strings[1840], false, 242, IFC4X1_IfcSolidModel_type); + IFC4X1_IfcCurve_type = new entity(strings[1841], true, 249, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcCurveBoundedPlane_type = new entity(strings[1842], false, 250, IFC4X1_IfcBoundedSurface_type); + IFC4X1_IfcCurveBoundedSurface_type = new entity(strings[1843], false, 251, IFC4X1_IfcBoundedSurface_type); + IFC4X1_IfcDirection_type = new entity(strings[1844], false, 280, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcDistanceExpression_type = new entity(strings[1845], false, 285, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcDoorStyle_type = new entity(strings[1846], false, 312, IFC4X1_IfcTypeProduct_type); + IFC4X1_IfcEdgeLoop_type = new entity(strings[1847], false, 334, IFC4X1_IfcLoop_type); + IFC4X1_IfcElementQuantity_type = new entity(strings[1848], false, 367, IFC4X1_IfcQuantitySet_type); + IFC4X1_IfcElementType_type = new entity(strings[1849], true, 368, IFC4X1_IfcTypeProduct_type); + IFC4X1_IfcElementarySurface_type = new entity(strings[1850], true, 360, IFC4X1_IfcSurface_type); + IFC4X1_IfcEllipseProfileDef_type = new entity(strings[1851], false, 370, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcEventType_type = new entity(strings[1852], false, 386, IFC4X1_IfcTypeProcess_type); + IFC4X1_IfcExtrudedAreaSolid_type = new entity(strings[1853], false, 398, IFC4X1_IfcSweptAreaSolid_type); + IFC4X1_IfcExtrudedAreaSolidTapered_type = new entity(strings[1854], false, 399, IFC4X1_IfcExtrudedAreaSolid_type); + IFC4X1_IfcFaceBasedSurfaceModel_type = new entity(strings[1855], false, 401, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcFillAreaStyleHatching_type = new entity(strings[1856], false, 418, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcFillAreaStyleTiles_type = new entity(strings[1857], false, 419, IFC4X1_IfcGeometricRepresentationItem_type); + IFC4X1_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[1858], false, 427, IFC4X1_IfcSweptAreaSolid_type); + IFC4X1_IfcFurnishingElementType_type = new entity(strings[1859], false, 458, IFC4X1_IfcElementType_type); + IFC4X1_IfcFurnitureType_type = new entity(strings[1860], false, 460, IFC4X1_IfcFurnishingElementType_type); + IFC4X1_IfcGeographicElementType_type = new entity(strings[1861], false, 463, IFC4X1_IfcElementType_type); + IFC4X1_IfcGeometricCurveSet_type = new entity(strings[1862], false, 465, IFC4X1_IfcGeometricSet_type); + IFC4X1_IfcIShapeProfileDef_type = new entity(strings[1863], false, 512, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcIndexedPolygonalFace_type = new entity(strings[1864], false, 495, IFC4X1_IfcTessellatedItem_type); + IFC4X1_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[1865], false, 496, IFC4X1_IfcIndexedPolygonalFace_type); + IFC4X1_IfcLShapeProfileDef_type = new entity(strings[1866], false, 562, IFC4X1_IfcParameterizedProfileDef_type); + IFC4X1_IfcLaborResourceType_type = new entity(strings[1867], false, 521, IFC4X1_IfcConstructionResourceType_type); + IFC4X1_IfcLine_type = new entity(strings[1868], false, 548, IFC4X1_IfcCurve_type); + IFC4X1_IfcManifoldSolidBrep_type = new entity(strings[1869], true, 568, IFC4X1_IfcSolidModel_type); + IFC4X1_IfcObject_type = new entity(strings[1870], true, 631, IFC4X1_IfcObjectDefinition_type); + IFC4X1_IfcOffsetCurve_type = new entity(strings[1871], true, 640, IFC4X1_IfcCurve_type); + IFC4X1_IfcOffsetCurve2D_type = new entity(strings[1872], false, 641, IFC4X1_IfcOffsetCurve_type); + IFC4X1_IfcOffsetCurve3D_type = new entity(strings[1873], false, 642, IFC4X1_IfcOffsetCurve_type); + IFC4X1_IfcOffsetCurveByDistances_type = new entity(strings[1874], false, 643, IFC4X1_IfcOffsetCurve_type); + IFC4X1_IfcPcurve_type = new entity(strings[1875], false, 660, IFC4X1_IfcCurve_type); + IFC4X1_IfcPlanarBox_type = new entity(strings[1876], false, 686, IFC4X1_IfcPlanarExtent_type); + IFC4X1_IfcPlane_type = new entity(strings[1877], false, 689, IFC4X1_IfcElementarySurface_type); + IFC4X1_IfcPreDefinedColour_type = new entity(strings[1878], true, 711, IFC4X1_IfcPreDefinedItem_type); + IFC4X1_IfcPreDefinedCurveFont_type = new entity(strings[1879], true, 712, IFC4X1_IfcPreDefinedItem_type); + IFC4X1_IfcPreDefinedPropertySet_type = new entity(strings[1880], true, 715, IFC4X1_IfcPropertySetDefinition_type); + IFC4X1_IfcProcedureType_type = new entity(strings[1881], false, 727, IFC4X1_IfcTypeProcess_type); + IFC4X1_IfcProcess_type = new entity(strings[1882], true, 729, IFC4X1_IfcObject_type); + IFC4X1_IfcProduct_type = new entity(strings[1883], true, 731, IFC4X1_IfcObject_type); + IFC4X1_IfcProject_type = new entity(strings[1884], false, 739, IFC4X1_IfcContext_type); + IFC4X1_IfcProjectLibrary_type = new entity(strings[1885], false, 744, IFC4X1_IfcContext_type); + IFC4X1_IfcPropertyBoundedValue_type = new entity(strings[1886], false, 749, IFC4X1_IfcSimpleProperty_type); + IFC4X1_IfcPropertyEnumeratedValue_type = new entity(strings[1887], false, 752, IFC4X1_IfcSimpleProperty_type); + IFC4X1_IfcPropertyListValue_type = new entity(strings[1888], false, 754, IFC4X1_IfcSimpleProperty_type); + IFC4X1_IfcPropertyReferenceValue_type = new entity(strings[1889], false, 755, IFC4X1_IfcSimpleProperty_type); + IFC4X1_IfcPropertySet_type = new entity(strings[1890], false, 756, IFC4X1_IfcPropertySetDefinition_type); + IFC4X1_IfcPropertySetTemplate_type = new entity(strings[1891], false, 760, IFC4X1_IfcPropertyTemplateDefinition_type); + IFC4X1_IfcPropertySingleValue_type = new entity(strings[1892], false, 762, IFC4X1_IfcSimpleProperty_type); + IFC4X1_IfcPropertyTableValue_type = new entity(strings[1893], false, 763, IFC4X1_IfcSimpleProperty_type); + IFC4X1_IfcPropertyTemplate_type = new entity(strings[1894], true, 764, IFC4X1_IfcPropertyTemplateDefinition_type); + IFC4X1_IfcProxy_type = new entity(strings[1895], false, 772, IFC4X1_IfcProduct_type); + IFC4X1_IfcRectangleHollowProfileDef_type = new entity(strings[1896], false, 797, IFC4X1_IfcRectangleProfileDef_type); + IFC4X1_IfcRectangularPyramid_type = new entity(strings[1897], false, 799, IFC4X1_IfcCsgPrimitive3D_type); + IFC4X1_IfcRectangularTrimmedSurface_type = new entity(strings[1898], false, 800, IFC4X1_IfcBoundedSurface_type); + IFC4X1_IfcReinforcementDefinitionProperties_type = new entity(strings[1899], false, 809, IFC4X1_IfcPreDefinedPropertySet_type); + IFC4X1_IfcRelAssigns_type = new entity(strings[1900], true, 821, IFC4X1_IfcRelationship_type); + IFC4X1_IfcRelAssignsToActor_type = new entity(strings[1901], false, 822, IFC4X1_IfcRelAssigns_type); + IFC4X1_IfcRelAssignsToControl_type = new entity(strings[1902], false, 823, IFC4X1_IfcRelAssigns_type); + IFC4X1_IfcRelAssignsToGroup_type = new entity(strings[1903], false, 824, IFC4X1_IfcRelAssigns_type); + IFC4X1_IfcRelAssignsToGroupByFactor_type = new entity(strings[1904], false, 825, IFC4X1_IfcRelAssignsToGroup_type); + IFC4X1_IfcRelAssignsToProcess_type = new entity(strings[1905], false, 826, IFC4X1_IfcRelAssigns_type); + IFC4X1_IfcRelAssignsToProduct_type = new entity(strings[1906], false, 827, IFC4X1_IfcRelAssigns_type); + IFC4X1_IfcRelAssignsToResource_type = new entity(strings[1907], false, 828, IFC4X1_IfcRelAssigns_type); + IFC4X1_IfcRelAssociates_type = new entity(strings[1908], true, 829, IFC4X1_IfcRelationship_type); + IFC4X1_IfcRelAssociatesApproval_type = new entity(strings[1909], false, 830, IFC4X1_IfcRelAssociates_type); + IFC4X1_IfcRelAssociatesClassification_type = new entity(strings[1910], false, 831, IFC4X1_IfcRelAssociates_type); + IFC4X1_IfcRelAssociatesConstraint_type = new entity(strings[1911], false, 832, IFC4X1_IfcRelAssociates_type); + IFC4X1_IfcRelAssociatesDocument_type = new entity(strings[1912], false, 833, IFC4X1_IfcRelAssociates_type); + IFC4X1_IfcRelAssociatesLibrary_type = new entity(strings[1913], false, 834, IFC4X1_IfcRelAssociates_type); + IFC4X1_IfcRelAssociatesMaterial_type = new entity(strings[1914], false, 835, IFC4X1_IfcRelAssociates_type); + IFC4X1_IfcRelConnects_type = new entity(strings[1915], true, 837, IFC4X1_IfcRelationship_type); + IFC4X1_IfcRelConnectsElements_type = new entity(strings[1916], false, 838, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelConnectsPathElements_type = new entity(strings[1917], false, 839, IFC4X1_IfcRelConnectsElements_type); + IFC4X1_IfcRelConnectsPortToElement_type = new entity(strings[1918], false, 841, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelConnectsPorts_type = new entity(strings[1919], false, 840, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelConnectsStructuralActivity_type = new entity(strings[1920], false, 842, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelConnectsStructuralMember_type = new entity(strings[1921], false, 843, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelConnectsWithEccentricity_type = new entity(strings[1922], false, 844, IFC4X1_IfcRelConnectsStructuralMember_type); + IFC4X1_IfcRelConnectsWithRealizingElements_type = new entity(strings[1923], false, 845, IFC4X1_IfcRelConnectsElements_type); + IFC4X1_IfcRelContainedInSpatialStructure_type = new entity(strings[1924], false, 846, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelCoversBldgElements_type = new entity(strings[1925], false, 847, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelCoversSpaces_type = new entity(strings[1926], false, 848, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelDeclares_type = new entity(strings[1927], false, 849, IFC4X1_IfcRelationship_type); + IFC4X1_IfcRelDecomposes_type = new entity(strings[1928], true, 850, IFC4X1_IfcRelationship_type); + IFC4X1_IfcRelDefines_type = new entity(strings[1929], true, 851, IFC4X1_IfcRelationship_type); + IFC4X1_IfcRelDefinesByObject_type = new entity(strings[1930], false, 852, IFC4X1_IfcRelDefines_type); + IFC4X1_IfcRelDefinesByProperties_type = new entity(strings[1931], false, 853, IFC4X1_IfcRelDefines_type); + IFC4X1_IfcRelDefinesByTemplate_type = new entity(strings[1932], false, 854, IFC4X1_IfcRelDefines_type); + IFC4X1_IfcRelDefinesByType_type = new entity(strings[1933], false, 855, IFC4X1_IfcRelDefines_type); + IFC4X1_IfcRelFillsElement_type = new entity(strings[1934], false, 856, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelFlowControlElements_type = new entity(strings[1935], false, 857, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelInterferesElements_type = new entity(strings[1936], false, 858, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelNests_type = new entity(strings[1937], false, 859, IFC4X1_IfcRelDecomposes_type); + IFC4X1_IfcRelProjectsElement_type = new entity(strings[1938], false, 860, IFC4X1_IfcRelDecomposes_type); + IFC4X1_IfcRelReferencedInSpatialStructure_type = new entity(strings[1939], false, 861, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelSequence_type = new entity(strings[1940], false, 862, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelServicesBuildings_type = new entity(strings[1941], false, 863, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelSpaceBoundary_type = new entity(strings[1942], false, 864, IFC4X1_IfcRelConnects_type); + IFC4X1_IfcRelSpaceBoundary1stLevel_type = new entity(strings[1943], false, 865, IFC4X1_IfcRelSpaceBoundary_type); + IFC4X1_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[1944], false, 866, IFC4X1_IfcRelSpaceBoundary1stLevel_type); + IFC4X1_IfcRelVoidsElement_type = new entity(strings[1945], false, 867, IFC4X1_IfcRelDecomposes_type); + IFC4X1_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[1946], false, 868, IFC4X1_IfcCompositeCurveSegment_type); + IFC4X1_IfcResource_type = new entity(strings[1947], true, 873, IFC4X1_IfcObject_type); + IFC4X1_IfcRevolvedAreaSolid_type = new entity(strings[1948], false, 880, IFC4X1_IfcSweptAreaSolid_type); + IFC4X1_IfcRevolvedAreaSolidTapered_type = new entity(strings[1949], false, 881, IFC4X1_IfcRevolvedAreaSolid_type); + IFC4X1_IfcRightCircularCone_type = new entity(strings[1950], false, 882, IFC4X1_IfcCsgPrimitive3D_type); + IFC4X1_IfcRightCircularCylinder_type = new entity(strings[1951], false, 883, IFC4X1_IfcCsgPrimitive3D_type); + IFC4X1_IfcSectionedSolid_type = new entity(strings[1952], true, 900, IFC4X1_IfcSolidModel_type); + IFC4X1_IfcSectionedSolidHorizontal_type = new entity(strings[1953], false, 901, IFC4X1_IfcSectionedSolid_type); + IFC4X1_IfcSimplePropertyTemplate_type = new entity(strings[1954], false, 922, IFC4X1_IfcPropertyTemplate_type); + IFC4X1_IfcSpatialElement_type = new entity(strings[1955], true, 953, IFC4X1_IfcProduct_type); + IFC4X1_IfcSpatialElementType_type = new entity(strings[1956], true, 954, IFC4X1_IfcTypeProduct_type); + IFC4X1_IfcSpatialStructureElement_type = new entity(strings[1957], true, 955, IFC4X1_IfcSpatialElement_type); + IFC4X1_IfcSpatialStructureElementType_type = new entity(strings[1958], true, 956, IFC4X1_IfcSpatialElementType_type); + IFC4X1_IfcSpatialZone_type = new entity(strings[1959], false, 957, IFC4X1_IfcSpatialElement_type); + IFC4X1_IfcSpatialZoneType_type = new entity(strings[1960], false, 958, IFC4X1_IfcSpatialElementType_type); + IFC4X1_IfcSphere_type = new entity(strings[1961], false, 964, IFC4X1_IfcCsgPrimitive3D_type); + IFC4X1_IfcSphericalSurface_type = new entity(strings[1962], false, 965, IFC4X1_IfcElementarySurface_type); + IFC4X1_IfcStructuralActivity_type = new entity(strings[1963], true, 977, IFC4X1_IfcProduct_type); + IFC4X1_IfcStructuralItem_type = new entity(strings[1964], true, 989, IFC4X1_IfcProduct_type); + IFC4X1_IfcStructuralMember_type = new entity(strings[1965], true, 1004, IFC4X1_IfcStructuralItem_type); + IFC4X1_IfcStructuralReaction_type = new entity(strings[1966], true, 1009, IFC4X1_IfcStructuralActivity_type); + IFC4X1_IfcStructuralSurfaceMember_type = new entity(strings[1967], false, 1014, IFC4X1_IfcStructuralMember_type); + IFC4X1_IfcStructuralSurfaceMemberVarying_type = new entity(strings[1968], false, 1016, IFC4X1_IfcStructuralSurfaceMember_type); + IFC4X1_IfcStructuralSurfaceReaction_type = new entity(strings[1969], false, 1017, IFC4X1_IfcStructuralReaction_type); + IFC4X1_IfcSubContractResourceType_type = new entity(strings[1970], false, 1023, IFC4X1_IfcConstructionResourceType_type); + IFC4X1_IfcSurfaceCurve_type = new entity(strings[1971], false, 1027, IFC4X1_IfcCurve_type); + IFC4X1_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[1972], false, 1028, IFC4X1_IfcSweptAreaSolid_type); + IFC4X1_IfcSurfaceOfLinearExtrusion_type = new entity(strings[1973], false, 1031, IFC4X1_IfcSweptSurface_type); + IFC4X1_IfcSurfaceOfRevolution_type = new entity(strings[1974], false, 1032, IFC4X1_IfcSweptSurface_type); + IFC4X1_IfcSystemFurnitureElementType_type = new entity(strings[1975], false, 1053, IFC4X1_IfcFurnishingElementType_type); + IFC4X1_IfcTask_type = new entity(strings[1976], false, 1061, IFC4X1_IfcProcess_type); + IFC4X1_IfcTaskType_type = new entity(strings[1977], false, 1065, IFC4X1_IfcTypeProcess_type); + IFC4X1_IfcTessellatedFaceSet_type = new entity(strings[1978], true, 1076, IFC4X1_IfcTessellatedItem_type); + IFC4X1_IfcToroidalSurface_type = new entity(strings[1979], false, 1112, IFC4X1_IfcElementarySurface_type); + IFC4X1_IfcTransportElementType_type = new entity(strings[1980], false, 1122, IFC4X1_IfcElementType_type); + IFC4X1_IfcTriangulatedFaceSet_type = new entity(strings[1981], false, 1125, IFC4X1_IfcTessellatedFaceSet_type); + IFC4X1_IfcTriangulatedIrregularNetwork_type = new entity(strings[1982], false, 1126, IFC4X1_IfcTriangulatedFaceSet_type); + IFC4X1_IfcWindowLiningProperties_type = new entity(strings[1983], false, 1180, IFC4X1_IfcPreDefinedPropertySet_type); + IFC4X1_IfcWindowPanelProperties_type = new entity(strings[1984], false, 1183, IFC4X1_IfcPreDefinedPropertySet_type); + IFC4X1_IfcAppliedValueSelect_type = new select_type(strings[1985], 48, { + IFC4X1_IfcMeasureWithUnit_type, + IFC4X1_IfcReference_type, + IFC4X1_IfcValue_type + }); + IFC4X1_IfcAxis2Placement_type = new select_type(strings[1986], 65, { + IFC4X1_IfcAxis2Placement2D_type, + IFC4X1_IfcAxis2Placement3D_type + }); + IFC4X1_IfcBooleanOperand_type = new select_type(strings[1987], 82, { + IFC4X1_IfcBooleanResult_type, + IFC4X1_IfcCsgPrimitive3D_type, + IFC4X1_IfcHalfSpaceSolid_type, + IFC4X1_IfcSolidModel_type, + IFC4X1_IfcTessellatedFaceSet_type + }); + IFC4X1_IfcColour_type = new select_type(strings[1988], 161, { + IFC4X1_IfcColourSpecification_type, + IFC4X1_IfcPreDefinedColour_type + }); + IFC4X1_IfcColourOrFactor_type = new select_type(strings[1989], 162, { + IFC4X1_IfcColourRgb_type, + IFC4X1_IfcNormalisedRatioMeasure_type + }); + IFC4X1_IfcCsgSelect_type = new select_type(strings[1990], 241, { + IFC4X1_IfcBooleanResult_type, + IFC4X1_IfcCsgPrimitive3D_type + }); + IFC4X1_IfcCurveStyleFontSelect_type = new select_type(strings[1991], 261, { + IFC4X1_IfcCurveStyleFont_type, + IFC4X1_IfcPreDefinedCurveFont_type + }); + IFC4X1_IfcFillStyleSelect_type = new select_type(strings[1992], 420, { + IFC4X1_IfcColour_type, + IFC4X1_IfcExternallyDefinedHatchStyle_type, + IFC4X1_IfcFillAreaStyleHatching_type, + IFC4X1_IfcFillAreaStyleTiles_type + }); + IFC4X1_IfcGeometricSetSelect_type = new select_type(strings[1993], 471, { + IFC4X1_IfcCurve_type, + IFC4X1_IfcPoint_type, + IFC4X1_IfcSurface_type + }); + IFC4X1_IfcGridPlacementDirectionSelect_type = new select_type(strings[1994], 477, { + IFC4X1_IfcDirection_type, + IFC4X1_IfcVirtualGridIntersection_type + }); + IFC4X1_IfcMetricValueSelect_type = new select_type(strings[1995], 608, { + IFC4X1_IfcAppliedValue_type, + IFC4X1_IfcMeasureWithUnit_type, + IFC4X1_IfcReference_type, + IFC4X1_IfcTable_type, + IFC4X1_IfcTimeSeries_type, + IFC4X1_IfcValue_type + }); + IFC4X1_IfcProcessSelect_type = new select_type(strings[1996], 730, { + IFC4X1_IfcProcess_type, + IFC4X1_IfcTypeProcess_type + }); + IFC4X1_IfcProductSelect_type = new select_type(strings[1997], 735, { + IFC4X1_IfcProduct_type, + IFC4X1_IfcTypeProduct_type + }); + IFC4X1_IfcPropertySetDefinitionSelect_type = new select_type(strings[1998], 758, { + IFC4X1_IfcPropertySetDefinition_type, + IFC4X1_IfcPropertySetDefinitionSet_type + }); + IFC4X1_IfcResourceSelect_type = new select_type(strings[1999], 878, { + IFC4X1_IfcResource_type, + IFC4X1_IfcTypeResource_type + }); + IFC4X1_IfcShell_type = new select_type(strings[2000], 919, { + IFC4X1_IfcClosedShell_type, + IFC4X1_IfcOpenShell_type + }); + IFC4X1_IfcSolidOrShell_type = new select_type(strings[2001], 941, { + IFC4X1_IfcClosedShell_type, + IFC4X1_IfcSolidModel_type + }); + IFC4X1_IfcSurfaceOrFaceSurface_type = new select_type(strings[2002], 1033, { + IFC4X1_IfcFaceBasedSurfaceModel_type, + IFC4X1_IfcFaceSurface_type, + IFC4X1_IfcSurface_type + }); + IFC4X1_IfcTrimmingSelect_type = new select_type(strings[2003], 1129, { + IFC4X1_IfcCartesianPoint_type, + IFC4X1_IfcParameterValue_type + }); + IFC4X1_IfcVectorOrDirection_type = new select_type(strings[2004], 1155, { + IFC4X1_IfcDirection_type, + IFC4X1_IfcVector_type + }); + IFC4X1_IfcActor_type = new entity(strings[2005], false, 6, IFC4X1_IfcObject_type); + IFC4X1_IfcAdvancedBrep_type = new entity(strings[2006], false, 14, IFC4X1_IfcManifoldSolidBrep_type); + IFC4X1_IfcAdvancedBrepWithVoids_type = new entity(strings[2007], false, 15, IFC4X1_IfcAdvancedBrep_type); + IFC4X1_IfcAlignment2DHorizontalSegment_type = new entity(strings[2008], false, 31, IFC4X1_IfcAlignment2DSegment_type); + IFC4X1_IfcAlignment2DVerSegCircularArc_type = new entity(strings[2009], false, 33, IFC4X1_IfcAlignment2DVerticalSegment_type); + IFC4X1_IfcAlignment2DVerSegLine_type = new entity(strings[2010], false, 34, IFC4X1_IfcAlignment2DVerticalSegment_type); + IFC4X1_IfcAlignment2DVerSegParabolicArc_type = new entity(strings[2011], false, 35, IFC4X1_IfcAlignment2DVerticalSegment_type); + IFC4X1_IfcAnnotation_type = new entity(strings[2012], false, 44, IFC4X1_IfcProduct_type); + IFC4X1_IfcBSplineSurface_type = new entity(strings[2013], true, 99, IFC4X1_IfcBoundedSurface_type); + IFC4X1_IfcBSplineSurfaceWithKnots_type = new entity(strings[2014], false, 101, IFC4X1_IfcBSplineSurface_type); + IFC4X1_IfcBlock_type = new entity(strings[2015], false, 76, IFC4X1_IfcCsgPrimitive3D_type); + IFC4X1_IfcBooleanClippingResult_type = new entity(strings[2016], false, 81, IFC4X1_IfcBooleanResult_type); + IFC4X1_IfcBoundedCurve_type = new entity(strings[2017], true, 91, IFC4X1_IfcCurve_type); + IFC4X1_IfcBuilding_type = new entity(strings[2018], false, 102, IFC4X1_IfcSpatialStructureElement_type); + IFC4X1_IfcBuildingElementType_type = new entity(strings[2019], true, 110, IFC4X1_IfcElementType_type); + IFC4X1_IfcBuildingStorey_type = new entity(strings[2020], false, 111, IFC4X1_IfcSpatialStructureElement_type); + IFC4X1_IfcChimneyType_type = new entity(strings[2021], false, 145, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcCircleHollowProfileDef_type = new entity(strings[2022], false, 148, IFC4X1_IfcCircleProfileDef_type); + IFC4X1_IfcCivilElementType_type = new entity(strings[2023], false, 152, IFC4X1_IfcElementType_type); + IFC4X1_IfcColumnType_type = new entity(strings[2024], false, 168, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcComplexPropertyTemplate_type = new entity(strings[2025], false, 175, IFC4X1_IfcPropertyTemplate_type); + IFC4X1_IfcCompositeCurve_type = new entity(strings[2026], false, 177, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcCompositeCurveOnSurface_type = new entity(strings[2027], false, 178, IFC4X1_IfcCompositeCurve_type); + IFC4X1_IfcConic_type = new entity(strings[2028], true, 188, IFC4X1_IfcCurve_type); + IFC4X1_IfcConstructionEquipmentResourceType_type = new entity(strings[2029], false, 200, IFC4X1_IfcConstructionResourceType_type); + IFC4X1_IfcConstructionMaterialResourceType_type = new entity(strings[2030], false, 203, IFC4X1_IfcConstructionResourceType_type); + IFC4X1_IfcConstructionProductResourceType_type = new entity(strings[2031], false, 206, IFC4X1_IfcConstructionResourceType_type); + IFC4X1_IfcConstructionResource_type = new entity(strings[2032], true, 208, IFC4X1_IfcResource_type); + IFC4X1_IfcControl_type = new entity(strings[2033], true, 213, IFC4X1_IfcObject_type); + IFC4X1_IfcCostItem_type = new entity(strings[2034], false, 228, IFC4X1_IfcControl_type); + IFC4X1_IfcCostSchedule_type = new entity(strings[2035], false, 230, IFC4X1_IfcControl_type); + IFC4X1_IfcCoveringType_type = new entity(strings[2036], false, 235, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcCrewResource_type = new entity(strings[2037], false, 237, IFC4X1_IfcConstructionResource_type); + IFC4X1_IfcCurtainWallType_type = new entity(strings[2038], false, 246, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcCurveSegment2D_type = new entity(strings[2039], true, 256, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcCylindricalSurface_type = new entity(strings[2040], false, 262, IFC4X1_IfcElementarySurface_type); + IFC4X1_IfcDistributionElementType_type = new entity(strings[2041], false, 293, IFC4X1_IfcElementType_type); + IFC4X1_IfcDistributionFlowElementType_type = new entity(strings[2042], true, 295, IFC4X1_IfcDistributionElementType_type); + IFC4X1_IfcDoorLiningProperties_type = new entity(strings[2043], false, 307, IFC4X1_IfcPreDefinedPropertySet_type); + IFC4X1_IfcDoorPanelProperties_type = new entity(strings[2044], false, 310, IFC4X1_IfcPreDefinedPropertySet_type); + IFC4X1_IfcDoorType_type = new entity(strings[2045], false, 315, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcDraughtingPreDefinedColour_type = new entity(strings[2046], false, 319, IFC4X1_IfcPreDefinedColour_type); + IFC4X1_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2047], false, 320, IFC4X1_IfcPreDefinedCurveFont_type); + IFC4X1_IfcElement_type = new entity(strings[2048], true, 359, IFC4X1_IfcProduct_type); + IFC4X1_IfcElementAssembly_type = new entity(strings[2049], false, 361, IFC4X1_IfcElement_type); + IFC4X1_IfcElementAssemblyType_type = new entity(strings[2050], false, 362, IFC4X1_IfcElementType_type); + IFC4X1_IfcElementComponent_type = new entity(strings[2051], true, 364, IFC4X1_IfcElement_type); + IFC4X1_IfcElementComponentType_type = new entity(strings[2052], true, 365, IFC4X1_IfcElementType_type); + IFC4X1_IfcEllipse_type = new entity(strings[2053], false, 369, IFC4X1_IfcConic_type); + IFC4X1_IfcEnergyConversionDeviceType_type = new entity(strings[2054], true, 372, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcEngineType_type = new entity(strings[2055], false, 375, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcEvaporativeCoolerType_type = new entity(strings[2056], false, 378, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcEvaporatorType_type = new entity(strings[2057], false, 381, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcEvent_type = new entity(strings[2058], false, 383, IFC4X1_IfcProcess_type); + IFC4X1_IfcExternalSpatialStructureElement_type = new entity(strings[2059], true, 397, IFC4X1_IfcSpatialElement_type); + IFC4X1_IfcFacetedBrep_type = new entity(strings[2060], false, 405, IFC4X1_IfcManifoldSolidBrep_type); + IFC4X1_IfcFacetedBrepWithVoids_type = new entity(strings[2061], false, 406, IFC4X1_IfcFacetedBrep_type); + IFC4X1_IfcFastener_type = new entity(strings[2062], false, 411, IFC4X1_IfcElementComponent_type); + IFC4X1_IfcFastenerType_type = new entity(strings[2063], false, 412, IFC4X1_IfcElementComponentType_type); + IFC4X1_IfcFeatureElement_type = new entity(strings[2064], true, 414, IFC4X1_IfcElement_type); + IFC4X1_IfcFeatureElementAddition_type = new entity(strings[2065], true, 415, IFC4X1_IfcFeatureElement_type); + IFC4X1_IfcFeatureElementSubtraction_type = new entity(strings[2066], true, 416, IFC4X1_IfcFeatureElement_type); + IFC4X1_IfcFlowControllerType_type = new entity(strings[2067], true, 429, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFlowFittingType_type = new entity(strings[2068], true, 432, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFlowMeterType_type = new entity(strings[2069], false, 437, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcFlowMovingDeviceType_type = new entity(strings[2070], true, 440, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFlowSegmentType_type = new entity(strings[2071], true, 442, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFlowStorageDeviceType_type = new entity(strings[2072], true, 444, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFlowTerminalType_type = new entity(strings[2073], true, 446, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFlowTreatmentDeviceType_type = new entity(strings[2074], true, 448, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcFootingType_type = new entity(strings[2075], false, 453, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcFurnishingElement_type = new entity(strings[2076], false, 457, IFC4X1_IfcElement_type); + IFC4X1_IfcFurniture_type = new entity(strings[2077], false, 459, IFC4X1_IfcFurnishingElement_type); + IFC4X1_IfcGeographicElement_type = new entity(strings[2078], false, 462, IFC4X1_IfcElement_type); + IFC4X1_IfcGroup_type = new entity(strings[2079], false, 479, IFC4X1_IfcObject_type); + IFC4X1_IfcHeatExchangerType_type = new entity(strings[2080], false, 483, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcHumidifierType_type = new entity(strings[2081], false, 488, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcIndexedPolyCurve_type = new entity(strings[2082], false, 494, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcInterceptorType_type = new entity(strings[2083], false, 503, IFC4X1_IfcFlowTreatmentDeviceType_type); + IFC4X1_IfcIntersectionCurve_type = new entity(strings[2084], false, 506, IFC4X1_IfcSurfaceCurve_type); + IFC4X1_IfcInventory_type = new entity(strings[2085], false, 507, IFC4X1_IfcGroup_type); + IFC4X1_IfcJunctionBoxType_type = new entity(strings[2086], false, 515, IFC4X1_IfcFlowFittingType_type); + IFC4X1_IfcLaborResource_type = new entity(strings[2087], false, 520, IFC4X1_IfcConstructionResource_type); + IFC4X1_IfcLampType_type = new entity(strings[2088], false, 525, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcLightFixtureType_type = new entity(strings[2089], false, 539, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcLineSegment2D_type = new entity(strings[2090], false, 556, IFC4X1_IfcCurveSegment2D_type); + IFC4X1_IfcMechanicalFastener_type = new entity(strings[2091], false, 597, IFC4X1_IfcElementComponent_type); + IFC4X1_IfcMechanicalFastenerType_type = new entity(strings[2092], false, 598, IFC4X1_IfcElementComponentType_type); + IFC4X1_IfcMedicalDeviceType_type = new entity(strings[2093], false, 601, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcMemberType_type = new entity(strings[2094], false, 605, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcMotorConnectionType_type = new entity(strings[2095], false, 624, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcOccupant_type = new entity(strings[2096], false, 638, IFC4X1_IfcActor_type); + IFC4X1_IfcOpeningElement_type = new entity(strings[2097], false, 644, IFC4X1_IfcFeatureElementSubtraction_type); + IFC4X1_IfcOpeningStandardCase_type = new entity(strings[2098], false, 646, IFC4X1_IfcOpeningElement_type); + IFC4X1_IfcOutletType_type = new entity(strings[2099], false, 654, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcPerformanceHistory_type = new entity(strings[2100], false, 661, IFC4X1_IfcControl_type); + IFC4X1_IfcPermeableCoveringProperties_type = new entity(strings[2101], false, 664, IFC4X1_IfcPreDefinedPropertySet_type); + IFC4X1_IfcPermit_type = new entity(strings[2102], false, 665, IFC4X1_IfcControl_type); + IFC4X1_IfcPileType_type = new entity(strings[2103], false, 676, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcPipeFittingType_type = new entity(strings[2104], false, 679, IFC4X1_IfcFlowFittingType_type); + IFC4X1_IfcPipeSegmentType_type = new entity(strings[2105], false, 682, IFC4X1_IfcFlowSegmentType_type); + IFC4X1_IfcPlateType_type = new entity(strings[2106], false, 693, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcPolygonalFaceSet_type = new entity(strings[2107], false, 700, IFC4X1_IfcTessellatedFaceSet_type); + IFC4X1_IfcPolyline_type = new entity(strings[2108], false, 701, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcPort_type = new entity(strings[2109], true, 703, IFC4X1_IfcProduct_type); + IFC4X1_IfcPositioningElement_type = new entity(strings[2110], true, 704, IFC4X1_IfcProduct_type); + IFC4X1_IfcProcedure_type = new entity(strings[2111], false, 726, IFC4X1_IfcProcess_type); + IFC4X1_IfcProjectOrder_type = new entity(strings[2112], false, 745, IFC4X1_IfcControl_type); + IFC4X1_IfcProjectionElement_type = new entity(strings[2113], false, 742, IFC4X1_IfcFeatureElementAddition_type); + IFC4X1_IfcProtectiveDeviceType_type = new entity(strings[2114], false, 770, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcPumpType_type = new entity(strings[2115], false, 774, IFC4X1_IfcFlowMovingDeviceType_type); + IFC4X1_IfcRailingType_type = new entity(strings[2116], false, 785, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcRampFlightType_type = new entity(strings[2117], false, 789, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcRampType_type = new entity(strings[2118], false, 791, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2119], false, 795, IFC4X1_IfcBSplineSurfaceWithKnots_type); + IFC4X1_IfcReferent_type = new entity(strings[2120], false, 804, IFC4X1_IfcPositioningElement_type); + IFC4X1_IfcReinforcingElement_type = new entity(strings[2121], true, 815, IFC4X1_IfcElementComponent_type); + IFC4X1_IfcReinforcingElementType_type = new entity(strings[2122], true, 816, IFC4X1_IfcElementComponentType_type); + IFC4X1_IfcReinforcingMesh_type = new entity(strings[2123], false, 817, IFC4X1_IfcReinforcingElement_type); + IFC4X1_IfcReinforcingMeshType_type = new entity(strings[2124], false, 818, IFC4X1_IfcReinforcingElementType_type); + IFC4X1_IfcRelAggregates_type = new entity(strings[2125], false, 820, IFC4X1_IfcRelDecomposes_type); + IFC4X1_IfcRoofType_type = new entity(strings[2126], false, 886, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcSanitaryTerminalType_type = new entity(strings[2127], false, 895, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcSeamCurve_type = new entity(strings[2128], false, 898, IFC4X1_IfcSurfaceCurve_type); + IFC4X1_IfcShadingDeviceType_type = new entity(strings[2129], false, 913, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcSite_type = new entity(strings[2130], false, 926, IFC4X1_IfcSpatialStructureElement_type); + IFC4X1_IfcSlabType_type = new entity(strings[2131], false, 933, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcSolarDeviceType_type = new entity(strings[2132], false, 937, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcSpace_type = new entity(strings[2133], false, 946, IFC4X1_IfcSpatialStructureElement_type); + IFC4X1_IfcSpaceHeaterType_type = new entity(strings[2134], false, 949, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcSpaceType_type = new entity(strings[2135], false, 951, IFC4X1_IfcSpatialStructureElementType_type); + IFC4X1_IfcStackTerminalType_type = new entity(strings[2136], false, 967, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcStairFlightType_type = new entity(strings[2137], false, 971, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcStairType_type = new entity(strings[2138], false, 973, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcStructuralAction_type = new entity(strings[2139], true, 976, IFC4X1_IfcStructuralActivity_type); + IFC4X1_IfcStructuralConnection_type = new entity(strings[2140], true, 980, IFC4X1_IfcStructuralItem_type); + IFC4X1_IfcStructuralCurveAction_type = new entity(strings[2141], false, 982, IFC4X1_IfcStructuralAction_type); + IFC4X1_IfcStructuralCurveConnection_type = new entity(strings[2142], false, 984, IFC4X1_IfcStructuralConnection_type); + IFC4X1_IfcStructuralCurveMember_type = new entity(strings[2143], false, 985, IFC4X1_IfcStructuralMember_type); + IFC4X1_IfcStructuralCurveMemberVarying_type = new entity(strings[2144], false, 987, IFC4X1_IfcStructuralCurveMember_type); + IFC4X1_IfcStructuralCurveReaction_type = new entity(strings[2145], false, 988, IFC4X1_IfcStructuralReaction_type); + IFC4X1_IfcStructuralLinearAction_type = new entity(strings[2146], false, 990, IFC4X1_IfcStructuralCurveAction_type); + IFC4X1_IfcStructuralLoadGroup_type = new entity(strings[2147], false, 994, IFC4X1_IfcGroup_type); + IFC4X1_IfcStructuralPointAction_type = new entity(strings[2148], false, 1006, IFC4X1_IfcStructuralAction_type); + IFC4X1_IfcStructuralPointConnection_type = new entity(strings[2149], false, 1007, IFC4X1_IfcStructuralConnection_type); + IFC4X1_IfcStructuralPointReaction_type = new entity(strings[2150], false, 1008, IFC4X1_IfcStructuralReaction_type); + IFC4X1_IfcStructuralResultGroup_type = new entity(strings[2151], false, 1010, IFC4X1_IfcGroup_type); + IFC4X1_IfcStructuralSurfaceAction_type = new entity(strings[2152], false, 1011, IFC4X1_IfcStructuralAction_type); + IFC4X1_IfcStructuralSurfaceConnection_type = new entity(strings[2153], false, 1013, IFC4X1_IfcStructuralConnection_type); + IFC4X1_IfcSubContractResource_type = new entity(strings[2154], false, 1022, IFC4X1_IfcConstructionResource_type); + IFC4X1_IfcSurfaceFeature_type = new entity(strings[2155], false, 1029, IFC4X1_IfcFeatureElement_type); + IFC4X1_IfcSwitchingDeviceType_type = new entity(strings[2156], false, 1049, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcSystem_type = new entity(strings[2157], false, 1051, IFC4X1_IfcGroup_type); + IFC4X1_IfcSystemFurnitureElement_type = new entity(strings[2158], false, 1052, IFC4X1_IfcFurnishingElement_type); + IFC4X1_IfcTankType_type = new entity(strings[2159], false, 1059, IFC4X1_IfcFlowStorageDeviceType_type); + IFC4X1_IfcTendon_type = new entity(strings[2160], false, 1070, IFC4X1_IfcReinforcingElement_type); + IFC4X1_IfcTendonAnchor_type = new entity(strings[2161], false, 1071, IFC4X1_IfcReinforcingElement_type); + IFC4X1_IfcTendonAnchorType_type = new entity(strings[2162], false, 1072, IFC4X1_IfcReinforcingElementType_type); + IFC4X1_IfcTendonType_type = new entity(strings[2163], false, 1074, IFC4X1_IfcReinforcingElementType_type); + IFC4X1_IfcTransformerType_type = new entity(strings[2164], false, 1115, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcTransitionCurveSegment2D_type = new entity(strings[2165], false, 1118, IFC4X1_IfcCurveSegment2D_type); + IFC4X1_IfcTransportElement_type = new entity(strings[2166], false, 1121, IFC4X1_IfcElement_type); + IFC4X1_IfcTrimmedCurve_type = new entity(strings[2167], false, 1127, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcTubeBundleType_type = new entity(strings[2168], false, 1132, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcUnitaryEquipmentType_type = new entity(strings[2169], false, 1143, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcValveType_type = new entity(strings[2170], false, 1151, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcVibrationIsolator_type = new entity(strings[2171], false, 1159, IFC4X1_IfcElementComponent_type); + IFC4X1_IfcVibrationIsolatorType_type = new entity(strings[2172], false, 1160, IFC4X1_IfcElementComponentType_type); + IFC4X1_IfcVirtualElement_type = new entity(strings[2173], false, 1162, IFC4X1_IfcElement_type); + IFC4X1_IfcVoidingFeature_type = new entity(strings[2174], false, 1164, IFC4X1_IfcFeatureElementSubtraction_type); + IFC4X1_IfcWallType_type = new entity(strings[2175], false, 1171, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcWasteTerminalType_type = new entity(strings[2176], false, 1177, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcWindowType_type = new entity(strings[2177], false, 1188, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcWorkCalendar_type = new entity(strings[2178], false, 1191, IFC4X1_IfcControl_type); + IFC4X1_IfcWorkControl_type = new entity(strings[2179], true, 1193, IFC4X1_IfcControl_type); + IFC4X1_IfcWorkPlan_type = new entity(strings[2180], false, 1194, IFC4X1_IfcWorkControl_type); + IFC4X1_IfcWorkSchedule_type = new entity(strings[2181], false, 1196, IFC4X1_IfcWorkControl_type); + IFC4X1_IfcZone_type = new entity(strings[2182], false, 1199, IFC4X1_IfcSystem_type); + IFC4X1_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2183], 252, { + IFC4X1_IfcCurveStyleFontAndScaling_type, + IFC4X1_IfcCurveStyleFontSelect_type + }); + IFC4X1_IfcCurveOnSurface_type = new select_type(strings[2184], 254, { + IFC4X1_IfcCompositeCurveOnSurface_type, + IFC4X1_IfcPcurve_type, + IFC4X1_IfcSurfaceCurve_type + }); + IFC4X1_IfcCurveOrEdgeCurve_type = new select_type(strings[2185], 255, { + IFC4X1_IfcBoundedCurve_type, + IFC4X1_IfcEdgeCurve_type + }); + IFC4X1_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2186], 978, { + IFC4X1_IfcElement_type, + IFC4X1_IfcStructuralItem_type + }); + IFC4X1_IfcActionRequest_type = new entity(strings[2187], false, 2, IFC4X1_IfcControl_type); + IFC4X1_IfcAirTerminalBoxType_type = new entity(strings[2188], false, 19, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcAirTerminalType_type = new entity(strings[2189], false, 21, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcAirToAirHeatRecoveryType_type = new entity(strings[2190], false, 24, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcAlignmentCurve_type = new entity(strings[2191], false, 38, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcAsset_type = new entity(strings[2192], false, 59, IFC4X1_IfcGroup_type); + IFC4X1_IfcAudioVisualApplianceType_type = new entity(strings[2193], false, 62, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcBSplineCurve_type = new entity(strings[2194], true, 96, IFC4X1_IfcBoundedCurve_type); + IFC4X1_IfcBSplineCurveWithKnots_type = new entity(strings[2195], false, 98, IFC4X1_IfcBSplineCurve_type); + IFC4X1_IfcBeamType_type = new entity(strings[2196], false, 70, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcBoilerType_type = new entity(strings[2197], false, 78, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcBoundaryCurve_type = new entity(strings[2198], false, 86, IFC4X1_IfcCompositeCurveOnSurface_type); + IFC4X1_IfcBuildingElement_type = new entity(strings[2199], true, 103, IFC4X1_IfcElement_type); + IFC4X1_IfcBuildingElementPart_type = new entity(strings[2200], false, 104, IFC4X1_IfcElementComponent_type); + IFC4X1_IfcBuildingElementPartType_type = new entity(strings[2201], false, 105, IFC4X1_IfcElementComponentType_type); + IFC4X1_IfcBuildingElementProxy_type = new entity(strings[2202], false, 107, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcBuildingElementProxyType_type = new entity(strings[2203], false, 108, IFC4X1_IfcBuildingElementType_type); + IFC4X1_IfcBuildingSystem_type = new entity(strings[2204], false, 112, IFC4X1_IfcSystem_type); + IFC4X1_IfcBurnerType_type = new entity(strings[2205], false, 115, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcCableCarrierFittingType_type = new entity(strings[2206], false, 118, IFC4X1_IfcFlowFittingType_type); + IFC4X1_IfcCableCarrierSegmentType_type = new entity(strings[2207], false, 121, IFC4X1_IfcFlowSegmentType_type); + IFC4X1_IfcCableFittingType_type = new entity(strings[2208], false, 124, IFC4X1_IfcFlowFittingType_type); + IFC4X1_IfcCableSegmentType_type = new entity(strings[2209], false, 127, IFC4X1_IfcFlowSegmentType_type); + IFC4X1_IfcChillerType_type = new entity(strings[2210], false, 142, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcChimney_type = new entity(strings[2211], false, 144, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcCircle_type = new entity(strings[2212], false, 147, IFC4X1_IfcConic_type); + IFC4X1_IfcCircularArcSegment2D_type = new entity(strings[2213], false, 150, IFC4X1_IfcCurveSegment2D_type); + IFC4X1_IfcCivilElement_type = new entity(strings[2214], false, 151, IFC4X1_IfcElement_type); + IFC4X1_IfcCoilType_type = new entity(strings[2215], false, 159, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcColumn_type = new entity(strings[2216], false, 166, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcColumnStandardCase_type = new entity(strings[2217], false, 167, IFC4X1_IfcColumn_type); + IFC4X1_IfcCommunicationsApplianceType_type = new entity(strings[2218], false, 171, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcCompressorType_type = new entity(strings[2219], false, 183, IFC4X1_IfcFlowMovingDeviceType_type); + IFC4X1_IfcCondenserType_type = new entity(strings[2220], false, 186, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcConstructionEquipmentResource_type = new entity(strings[2221], false, 199, IFC4X1_IfcConstructionResource_type); + IFC4X1_IfcConstructionMaterialResource_type = new entity(strings[2222], false, 202, IFC4X1_IfcConstructionResource_type); + IFC4X1_IfcConstructionProductResource_type = new entity(strings[2223], false, 205, IFC4X1_IfcConstructionResource_type); + IFC4X1_IfcCooledBeamType_type = new entity(strings[2224], false, 220, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcCoolingTowerType_type = new entity(strings[2225], false, 223, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcCovering_type = new entity(strings[2226], false, 234, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcCurtainWall_type = new entity(strings[2227], false, 245, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcDamperType_type = new entity(strings[2228], false, 264, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcDiscreteAccessory_type = new entity(strings[2229], false, 282, IFC4X1_IfcElementComponent_type); + IFC4X1_IfcDiscreteAccessoryType_type = new entity(strings[2230], false, 283, IFC4X1_IfcElementComponentType_type); + IFC4X1_IfcDistributionChamberElementType_type = new entity(strings[2231], false, 287, IFC4X1_IfcDistributionFlowElementType_type); + IFC4X1_IfcDistributionControlElementType_type = new entity(strings[2232], true, 291, IFC4X1_IfcDistributionElementType_type); + IFC4X1_IfcDistributionElement_type = new entity(strings[2233], false, 292, IFC4X1_IfcElement_type); + IFC4X1_IfcDistributionFlowElement_type = new entity(strings[2234], false, 294, IFC4X1_IfcDistributionElement_type); + IFC4X1_IfcDistributionPort_type = new entity(strings[2235], false, 296, IFC4X1_IfcPort_type); + IFC4X1_IfcDistributionSystem_type = new entity(strings[2236], false, 298, IFC4X1_IfcSystem_type); + IFC4X1_IfcDoor_type = new entity(strings[2237], false, 306, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcDoorStandardCase_type = new entity(strings[2238], false, 311, IFC4X1_IfcDoor_type); + IFC4X1_IfcDuctFittingType_type = new entity(strings[2239], false, 322, IFC4X1_IfcFlowFittingType_type); + IFC4X1_IfcDuctSegmentType_type = new entity(strings[2240], false, 325, IFC4X1_IfcFlowSegmentType_type); + IFC4X1_IfcDuctSilencerType_type = new entity(strings[2241], false, 328, IFC4X1_IfcFlowTreatmentDeviceType_type); + IFC4X1_IfcElectricApplianceType_type = new entity(strings[2242], false, 336, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcElectricDistributionBoardType_type = new entity(strings[2243], false, 343, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcElectricFlowStorageDeviceType_type = new entity(strings[2244], false, 346, IFC4X1_IfcFlowStorageDeviceType_type); + IFC4X1_IfcElectricGeneratorType_type = new entity(strings[2245], false, 349, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcElectricMotorType_type = new entity(strings[2246], false, 352, IFC4X1_IfcEnergyConversionDeviceType_type); + IFC4X1_IfcElectricTimeControlType_type = new entity(strings[2247], false, 356, IFC4X1_IfcFlowControllerType_type); + IFC4X1_IfcEnergyConversionDevice_type = new entity(strings[2248], false, 371, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcEngine_type = new entity(strings[2249], false, 374, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcEvaporativeCooler_type = new entity(strings[2250], false, 377, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcEvaporator_type = new entity(strings[2251], false, 380, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcExternalSpatialElement_type = new entity(strings[2252], false, 395, IFC4X1_IfcExternalSpatialStructureElement_type); + IFC4X1_IfcFanType_type = new entity(strings[2253], false, 409, IFC4X1_IfcFlowMovingDeviceType_type); + IFC4X1_IfcFilterType_type = new entity(strings[2254], false, 422, IFC4X1_IfcFlowTreatmentDeviceType_type); + IFC4X1_IfcFireSuppressionTerminalType_type = new entity(strings[2255], false, 425, IFC4X1_IfcFlowTerminalType_type); + IFC4X1_IfcFlowController_type = new entity(strings[2256], false, 428, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFlowFitting_type = new entity(strings[2257], false, 431, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFlowInstrumentType_type = new entity(strings[2258], false, 434, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcFlowMeter_type = new entity(strings[2259], false, 436, IFC4X1_IfcFlowController_type); + IFC4X1_IfcFlowMovingDevice_type = new entity(strings[2260], false, 439, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFlowSegment_type = new entity(strings[2261], false, 441, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFlowStorageDevice_type = new entity(strings[2262], false, 443, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFlowTerminal_type = new entity(strings[2263], false, 445, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFlowTreatmentDevice_type = new entity(strings[2264], false, 447, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcFooting_type = new entity(strings[2265], false, 452, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcGrid_type = new entity(strings[2266], false, 474, IFC4X1_IfcPositioningElement_type); + IFC4X1_IfcHeatExchanger_type = new entity(strings[2267], false, 482, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcHumidifier_type = new entity(strings[2268], false, 487, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcInterceptor_type = new entity(strings[2269], false, 502, IFC4X1_IfcFlowTreatmentDevice_type); + IFC4X1_IfcJunctionBox_type = new entity(strings[2270], false, 514, IFC4X1_IfcFlowFitting_type); + IFC4X1_IfcLamp_type = new entity(strings[2271], false, 524, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcLightFixture_type = new entity(strings[2272], false, 538, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcLinearPositioningElement_type = new entity(strings[2273], true, 552, IFC4X1_IfcPositioningElement_type); + IFC4X1_IfcMedicalDevice_type = new entity(strings[2274], false, 600, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcMember_type = new entity(strings[2275], false, 603, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcMemberStandardCase_type = new entity(strings[2276], false, 604, IFC4X1_IfcMember_type); + IFC4X1_IfcMotorConnection_type = new entity(strings[2277], false, 623, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcOuterBoundaryCurve_type = new entity(strings[2278], false, 652, IFC4X1_IfcBoundaryCurve_type); + IFC4X1_IfcOutlet_type = new entity(strings[2279], false, 653, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcPile_type = new entity(strings[2280], false, 674, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcPipeFitting_type = new entity(strings[2281], false, 678, IFC4X1_IfcFlowFitting_type); + IFC4X1_IfcPipeSegment_type = new entity(strings[2282], false, 681, IFC4X1_IfcFlowSegment_type); + IFC4X1_IfcPlate_type = new entity(strings[2283], false, 691, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcPlateStandardCase_type = new entity(strings[2284], false, 692, IFC4X1_IfcPlate_type); + IFC4X1_IfcProtectiveDevice_type = new entity(strings[2285], false, 766, IFC4X1_IfcFlowController_type); + IFC4X1_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2286], false, 768, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcPump_type = new entity(strings[2287], false, 773, IFC4X1_IfcFlowMovingDevice_type); + IFC4X1_IfcRailing_type = new entity(strings[2288], false, 784, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcRamp_type = new entity(strings[2289], false, 787, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcRampFlight_type = new entity(strings[2290], false, 788, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2291], false, 794, IFC4X1_IfcBSplineCurveWithKnots_type); + IFC4X1_IfcReinforcingBar_type = new entity(strings[2292], false, 810, IFC4X1_IfcReinforcingElement_type); + IFC4X1_IfcReinforcingBarType_type = new entity(strings[2293], false, 813, IFC4X1_IfcReinforcingElementType_type); + IFC4X1_IfcRoof_type = new entity(strings[2294], false, 885, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcSanitaryTerminal_type = new entity(strings[2295], false, 894, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcSensorType_type = new entity(strings[2296], false, 909, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcShadingDevice_type = new entity(strings[2297], false, 912, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcSlab_type = new entity(strings[2298], false, 930, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcSlabElementedCase_type = new entity(strings[2299], false, 931, IFC4X1_IfcSlab_type); + IFC4X1_IfcSlabStandardCase_type = new entity(strings[2300], false, 932, IFC4X1_IfcSlab_type); + IFC4X1_IfcSolarDevice_type = new entity(strings[2301], false, 936, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcSpaceHeater_type = new entity(strings[2302], false, 948, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcStackTerminal_type = new entity(strings[2303], false, 966, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcStair_type = new entity(strings[2304], false, 969, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcStairFlight_type = new entity(strings[2305], false, 970, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcStructuralAnalysisModel_type = new entity(strings[2306], false, 979, IFC4X1_IfcSystem_type); + IFC4X1_IfcStructuralLoadCase_type = new entity(strings[2307], false, 992, IFC4X1_IfcStructuralLoadGroup_type); + IFC4X1_IfcStructuralPlanarAction_type = new entity(strings[2308], false, 1005, IFC4X1_IfcStructuralSurfaceAction_type); + IFC4X1_IfcSwitchingDevice_type = new entity(strings[2309], false, 1048, IFC4X1_IfcFlowController_type); + IFC4X1_IfcTank_type = new entity(strings[2310], false, 1058, IFC4X1_IfcFlowStorageDevice_type); + IFC4X1_IfcTransformer_type = new entity(strings[2311], false, 1114, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcTubeBundle_type = new entity(strings[2312], false, 1131, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcUnitaryControlElementType_type = new entity(strings[2313], false, 1140, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcUnitaryEquipment_type = new entity(strings[2314], false, 1142, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcValve_type = new entity(strings[2315], false, 1150, IFC4X1_IfcFlowController_type); + IFC4X1_IfcWall_type = new entity(strings[2316], false, 1168, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcWallElementedCase_type = new entity(strings[2317], false, 1169, IFC4X1_IfcWall_type); + IFC4X1_IfcWallStandardCase_type = new entity(strings[2318], false, 1170, IFC4X1_IfcWall_type); + IFC4X1_IfcWasteTerminal_type = new entity(strings[2319], false, 1176, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcWindow_type = new entity(strings[2320], false, 1179, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcWindowStandardCase_type = new entity(strings[2321], false, 1184, IFC4X1_IfcWindow_type); + IFC4X1_IfcSpaceBoundarySelect_type = new select_type(strings[2322], 947, { + IFC4X1_IfcExternalSpatialElement_type, + IFC4X1_IfcSpace_type + }); + IFC4X1_IfcActuatorType_type = new entity(strings[2323], false, 10, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcAirTerminal_type = new entity(strings[2324], false, 17, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcAirTerminalBox_type = new entity(strings[2325], false, 18, IFC4X1_IfcFlowController_type); + IFC4X1_IfcAirToAirHeatRecovery_type = new entity(strings[2326], false, 23, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcAlarmType_type = new entity(strings[2327], false, 27, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcAlignment_type = new entity(strings[2328], false, 29, IFC4X1_IfcLinearPositioningElement_type); + IFC4X1_IfcAudioVisualAppliance_type = new entity(strings[2329], false, 61, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcBeam_type = new entity(strings[2330], false, 68, IFC4X1_IfcBuildingElement_type); + IFC4X1_IfcBeamStandardCase_type = new entity(strings[2331], false, 69, IFC4X1_IfcBeam_type); + IFC4X1_IfcBoiler_type = new entity(strings[2332], false, 77, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcBurner_type = new entity(strings[2333], false, 114, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcCableCarrierFitting_type = new entity(strings[2334], false, 117, IFC4X1_IfcFlowFitting_type); + IFC4X1_IfcCableCarrierSegment_type = new entity(strings[2335], false, 120, IFC4X1_IfcFlowSegment_type); + IFC4X1_IfcCableFitting_type = new entity(strings[2336], false, 123, IFC4X1_IfcFlowFitting_type); + IFC4X1_IfcCableSegment_type = new entity(strings[2337], false, 126, IFC4X1_IfcFlowSegment_type); + IFC4X1_IfcChiller_type = new entity(strings[2338], false, 141, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcCoil_type = new entity(strings[2339], false, 158, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcCommunicationsAppliance_type = new entity(strings[2340], false, 170, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcCompressor_type = new entity(strings[2341], false, 182, IFC4X1_IfcFlowMovingDevice_type); + IFC4X1_IfcCondenser_type = new entity(strings[2342], false, 185, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcControllerType_type = new entity(strings[2343], false, 215, IFC4X1_IfcDistributionControlElementType_type); + IFC4X1_IfcCooledBeam_type = new entity(strings[2344], false, 219, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcCoolingTower_type = new entity(strings[2345], false, 222, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcDamper_type = new entity(strings[2346], false, 263, IFC4X1_IfcFlowController_type); + IFC4X1_IfcDistributionChamberElement_type = new entity(strings[2347], false, 286, IFC4X1_IfcDistributionFlowElement_type); + IFC4X1_IfcDistributionCircuit_type = new entity(strings[2348], false, 289, IFC4X1_IfcDistributionSystem_type); + IFC4X1_IfcDistributionControlElement_type = new entity(strings[2349], false, 290, IFC4X1_IfcDistributionElement_type); + IFC4X1_IfcDuctFitting_type = new entity(strings[2350], false, 321, IFC4X1_IfcFlowFitting_type); + IFC4X1_IfcDuctSegment_type = new entity(strings[2351], false, 324, IFC4X1_IfcFlowSegment_type); + IFC4X1_IfcDuctSilencer_type = new entity(strings[2352], false, 327, IFC4X1_IfcFlowTreatmentDevice_type); + IFC4X1_IfcElectricAppliance_type = new entity(strings[2353], false, 335, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcElectricDistributionBoard_type = new entity(strings[2354], false, 342, IFC4X1_IfcFlowController_type); + IFC4X1_IfcElectricFlowStorageDevice_type = new entity(strings[2355], false, 345, IFC4X1_IfcFlowStorageDevice_type); + IFC4X1_IfcElectricGenerator_type = new entity(strings[2356], false, 348, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcElectricMotor_type = new entity(strings[2357], false, 351, IFC4X1_IfcEnergyConversionDevice_type); + IFC4X1_IfcElectricTimeControl_type = new entity(strings[2358], false, 355, IFC4X1_IfcFlowController_type); + IFC4X1_IfcFan_type = new entity(strings[2359], false, 408, IFC4X1_IfcFlowMovingDevice_type); + IFC4X1_IfcFilter_type = new entity(strings[2360], false, 421, IFC4X1_IfcFlowTreatmentDevice_type); + IFC4X1_IfcFireSuppressionTerminal_type = new entity(strings[2361], false, 424, IFC4X1_IfcFlowTerminal_type); + IFC4X1_IfcFlowInstrument_type = new entity(strings[2362], false, 433, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2363], false, 767, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcSensor_type = new entity(strings[2364], false, 908, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcUnitaryControlElement_type = new entity(strings[2365], false, 1139, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcActuator_type = new entity(strings[2366], false, 9, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcAlarm_type = new entity(strings[2367], false, 26, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcController_type = new entity(strings[2368], false, 214, IFC4X1_IfcDistributionControlElement_type); + IFC4X1_IfcActionRequest_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2370], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcActor_type->set_attributes({ + new attribute(strings[2372], new named_type(IFC4X1_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcActorRole_type->set_attributes({ + new attribute(strings[2373], new named_type(IFC4X1_IfcRoleEnum_type), false), + new attribute(strings[2374], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false + }); + IFC4X1_IfcActuator_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcActuatorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAddress_type->set_attributes({ + new attribute(strings[2376], new named_type(IFC4X1_IfcAddressTypeEnum_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2377], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2378], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X1_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAlarm_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAlarmType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAlignment_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAlignment2DHorizontal_type->set_attributes({ + new attribute(strings[2379], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2380], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAlignment2DHorizontalSegment_type)), false) + },{ + false, false + }); + IFC4X1_IfcAlignment2DHorizontalSegment_type->set_attributes({ + new attribute(strings[2381], new named_type(IFC4X1_IfcCurveSegment2D_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcAlignment2DSegment_type->set_attributes({ + new attribute(strings[2382], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[2383], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2384], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcAlignment2DVerSegCircularArc_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2386], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAlignment2DVerSegLine_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcAlignment2DVerSegParabolicArc_type->set_attributes({ + new attribute(strings[2387], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2386], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAlignment2DVertical_type->set_attributes({ + new attribute(strings[2380], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAlignment2DVerticalSegment_type)), false) + },{ + false + }); + IFC4X1_IfcAlignment2DVerticalSegment_type->set_attributes({ + new attribute(strings[2379], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2388], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2389], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2390], new named_type(IFC4X1_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcAlignmentCurve_type->set_attributes({ + new attribute(strings[2391], new named_type(IFC4X1_IfcAlignment2DHorizontal_type), false), + new attribute(strings[2392], new named_type(IFC4X1_IfcAlignment2DVertical_type), true), + new attribute(strings[2393], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcAnnotation_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2394], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2395], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X1_IfcApplication_type->set_attributes({ + new attribute(strings[2396], new named_type(IFC4X1_IfcOrganization_type), false), + new attribute(strings[2397], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2398], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2399], new named_type(IFC4X1_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2401], new named_type(IFC4X1_IfcAppliedValueSelect_type), true), + new attribute(strings[2402], new named_type(IFC4X1_IfcMeasureWithUnit_type), true), + new attribute(strings[2403], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2404], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2405], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2406], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2407], new named_type(IFC4X1_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2408], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcApproval_type->set_attributes({ + new attribute(strings[2409], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2410], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2370], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2411], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2412], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2413], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2414], new named_type(IFC4X1_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2415], new named_type(IFC4X1_IfcApproval_type), false), + new attribute(strings[2416], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2417], new named_type(IFC4X1_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X1_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2418], new named_type(IFC4X1_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X1_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2419], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcAsset_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2421], new named_type(IFC4X1_IfcCostValue_type), true), + new attribute(strings[2422], new named_type(IFC4X1_IfcCostValue_type), true), + new attribute(strings[2423], new named_type(IFC4X1_IfcCostValue_type), true), + new attribute(strings[2424], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2425], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2426], new named_type(IFC4X1_IfcPerson_type), true), + new attribute(strings[2427], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2428], new named_type(IFC4X1_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2429], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2430], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2431], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2432], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2433], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2434], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2435], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2436], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2437], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2438], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2439], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2440], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4X1_IfcDirection_type), true) + },{ + false, false + }); + IFC4X1_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2442], new named_type(IFC4X1_IfcDirection_type), true) + },{ + false, false + }); + IFC4X1_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4X1_IfcDirection_type), true), + new attribute(strings[2442], new named_type(IFC4X1_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X1_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2443], new named_type(IFC4X1_IfcInteger_type), false), + new attribute(strings[2444], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcCartesianPoint_type)), false), + new attribute(strings[2445], new named_type(IFC4X1_IfcBSplineCurveForm_type), false), + new attribute(strings[2446], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2447], new named_type(IFC4X1_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2448], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcInteger_type)), false), + new attribute(strings[2449], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcParameterValue_type)), false), + new attribute(strings[2450], new named_type(IFC4X1_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2451], new named_type(IFC4X1_IfcInteger_type), false), + new attribute(strings[2452], new named_type(IFC4X1_IfcInteger_type), false), + new attribute(strings[2444], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcCartesianPoint_type))), false), + new attribute(strings[2453], new named_type(IFC4X1_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2454], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2455], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2447], new named_type(IFC4X1_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2456], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcInteger_type)), false), + new attribute(strings[2457], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcInteger_type)), false), + new attribute(strings[2458], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcParameterValue_type)), false), + new attribute(strings[2459], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcParameterValue_type)), false), + new attribute(strings[2450], new named_type(IFC4X1_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBeam_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBeamType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2460], new named_type(IFC4X1_IfcIdentifier_type), false), + new attribute(strings[2461], new named_type(IFC4X1_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcBlock_type->set_attributes({ + new attribute(strings[2462], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2463], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2464], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcBoiler_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBoilerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2465], new named_type(IFC4X1_IfcBooleanOperator_type), false), + new attribute(strings[2466], new named_type(IFC4X1_IfcBooleanOperand_type), false), + new attribute(strings[2467], new named_type(IFC4X1_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X1_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false + }); + IFC4X1_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X1_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2468], new named_type(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2469], new named_type(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2470], new named_type(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2471], new named_type(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2472], new named_type(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2473], new named_type(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2474], new named_type(IFC4X1_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2475], new named_type(IFC4X1_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2476], new named_type(IFC4X1_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2477], new named_type(IFC4X1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2478], new named_type(IFC4X1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2479], new named_type(IFC4X1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2480], new named_type(IFC4X1_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2481], new named_type(IFC4X1_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2482], new named_type(IFC4X1_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2483], new named_type(IFC4X1_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X1_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X1_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2484], new named_type(IFC4X1_IfcCartesianPoint_type), false), + new attribute(strings[2485], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2486], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2487], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2488], new named_type(IFC4X1_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X1_IfcBuilding_type->set_attributes({ + new attribute(strings[2489], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2490], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2491], new named_type(IFC4X1_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2492], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcBurner_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcBurnerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2494], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2495], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2496], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2497], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2498], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableFitting_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableSegment_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2499], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X1_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X1_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2500], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcLengthMeasure_type))), false), + new attribute(strings[2501], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X1_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2500], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcLengthMeasure_type))), false), + new attribute(strings[2501], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X1_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2502], new named_type(IFC4X1_IfcDirection_type), true), + new attribute(strings[2503], new named_type(IFC4X1_IfcDirection_type), true), + new attribute(strings[2504], new named_type(IFC4X1_IfcCartesianPoint_type), false), + new attribute(strings[2505], new named_type(IFC4X1_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2506], new named_type(IFC4X1_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2507], new named_type(IFC4X1_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2506], new named_type(IFC4X1_IfcReal_type), true), + new attribute(strings[2508], new named_type(IFC4X1_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2509], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcChiller_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcChillerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcChimney_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcChimneyType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCircle_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2496], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcCircularArcSegment2D_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2510], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcClassification_type->set_attributes({ + new attribute(strings[2511], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2512], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2513], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2514], new named_type(IFC4X1_IfcURIReference_type), true), + new attribute(strings[2515], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcClassificationReference_type->set_attributes({ + new attribute(strings[2516], new named_type(IFC4X1_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2517], new named_type(IFC4X1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcCoil_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCoilType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcColourRgb_type->set_attributes({ + new attribute(strings[2518], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2519], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2520], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcColourRgbList_type->set_attributes({ + new attribute(strings[2521], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X1_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false + }); + IFC4X1_IfcColumn_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcColumnType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcComplexProperty_type->set_attributes({ + new attribute(strings[2522], new named_type(IFC4X1_IfcIdentifier_type), false), + new attribute(strings[2523], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[2522], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2524], new named_type(IFC4X1_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[2525], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[2380], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcCompositeCurveSegment_type)), false), + new attribute(strings[2447], new named_type(IFC4X1_IfcLogical_type), false) + },{ + false, false + }); + IFC4X1_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X1_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[2526], new named_type(IFC4X1_IfcTransitionCode_type), false), + new attribute(strings[2527], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[2528], new named_type(IFC4X1_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X1_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[2529], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X1_IfcProfileDef_type)), false), + new attribute(strings[2530], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcCompressor_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCompressorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCondenser_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCondenserType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConic_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X1_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[2532], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcFace_type)), false) + },{ + false + }); + IFC4X1_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[2533], new named_type(IFC4X1_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[2534], new named_type(IFC4X1_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X1_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X1_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[2535], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2536], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2537], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[2538], new named_type(IFC4X1_IfcPointOrVertexPoint_type), false), + new attribute(strings[2539], new named_type(IFC4X1_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X1_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[2540], new named_type(IFC4X1_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[2541], new named_type(IFC4X1_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X1_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[2542], new named_type(IFC4X1_IfcSolidOrShell_type), false), + new attribute(strings[2543], new named_type(IFC4X1_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X1_IfcConstraint_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2544], new named_type(IFC4X1_IfcConstraintEnum_type), false), + new attribute(strings[2545], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2546], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2547], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2548], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionResource_type->set_attributes({ + new attribute(strings[2549], new named_type(IFC4X1_IfcResourceTime_type), true), + new attribute(strings[2550], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAppliedValue_type)), true), + new attribute(strings[2551], new named_type(IFC4X1_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[2550], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAppliedValue_type)), true), + new attribute(strings[2551], new named_type(IFC4X1_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcContext_type->set_attributes({ + new attribute(strings[2552], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2553], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2554], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcRepresentationContext_type)), true), + new attribute(strings[2555], new named_type(IFC4X1_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X1_IfcControl_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcController_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcControllerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2556], new named_type(IFC4X1_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[2557], new named_type(IFC4X1_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[2558], new named_type(IFC4X1_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[2559], new named_type(IFC4X1_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X1_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2560], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2561], new named_type(IFC4X1_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcCostItem_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCostItemTypeEnum_type), true), + new attribute(strings[2562], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcCostValue_type)), true), + new attribute(strings[2563], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2370], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2564], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2565], new named_type(IFC4X1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCovering_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCoveringType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCrewResource_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X1_IfcCsgSolid_type->set_attributes({ + new attribute(strings[2566], new named_type(IFC4X1_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X1_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[2567], new named_type(IFC4X1_IfcMonetaryUnit_type), false), + new attribute(strings[2568], new named_type(IFC4X1_IfcMonetaryUnit_type), false), + new attribute(strings[2569], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), false), + new attribute(strings[2570], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2571], new named_type(IFC4X1_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X1_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[2572], new named_type(IFC4X1_IfcPlane_type), false), + new attribute(strings[2394], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2395], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X1_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X1_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[2572], new named_type(IFC4X1_IfcSurface_type), false), + new attribute(strings[2573], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcBoundaryCurve_type)), false), + new attribute(strings[2574], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X1_IfcCurveSegment2D_type->set_attributes({ + new attribute(strings[2575], new named_type(IFC4X1_IfcCartesianPoint_type), false), + new attribute(strings[2576], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2577], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcCurveStyle_type->set_attributes({ + new attribute(strings[2578], new named_type(IFC4X1_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[2579], new named_type(IFC4X1_IfcSizeSelect_type), true), + new attribute(strings[2580], new named_type(IFC4X1_IfcColour_type), true), + new attribute(strings[2581], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2582], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X1_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2578], new named_type(IFC4X1_IfcCurveStyleFontSelect_type), false), + new attribute(strings[2583], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[2584], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2585], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcDamper_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDamperType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[2586], new named_type(IFC4X1_IfcProfileDef_type), false), + new attribute(strings[2465], new named_type(IFC4X1_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[2530], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[2587], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDerivedUnitElement_type)), false), + new attribute(strings[2588], new named_type(IFC4X1_IfcDerivedUnitEnum_type), false), + new attribute(strings[2589], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[2590], new named_type(IFC4X1_IfcNamedUnit_type), false), + new attribute(strings[2591], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X1_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[2592], new simple_type(simple_type::integer_type), false), + new attribute(strings[2593], new simple_type(simple_type::integer_type), false), + new attribute(strings[2594], new simple_type(simple_type::integer_type), false), + new attribute(strings[2595], new simple_type(simple_type::integer_type), false), + new attribute(strings[2596], new simple_type(simple_type::integer_type), false), + new attribute(strings[2597], new simple_type(simple_type::integer_type), false), + new attribute(strings[2598], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcDirection_type->set_attributes({ + new attribute(strings[2599], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcReal_type)), false) + },{ + false + }); + IFC4X1_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistanceExpression_type->set_attributes({ + new attribute(strings[2600], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2601], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2602], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2603], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2604], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionPort_type->set_attributes({ + new attribute(strings[2605], new named_type(IFC4X1_IfcFlowDirectionEnum_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[2606], new named_type(IFC4X1_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), false), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2514], new named_type(IFC4X1_IfcURIReference_type), true), + new attribute(strings[2376], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2607], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2608], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2609], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2610], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2611], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcActorSelect_type)), true), + new attribute(strings[2547], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2612], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2613], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2614], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2615], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2616], new named_type(IFC4X1_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2370], new named_type(IFC4X1_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[2617], new named_type(IFC4X1_IfcDocumentInformation_type), false), + new attribute(strings[2618], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDocumentInformation_type)), false), + new attribute(strings[2619], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2620], new named_type(IFC4X1_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcDoor_type->set_attributes({ + new attribute(strings[2621], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2622], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcDoorTypeEnum_type), true), + new attribute(strings[2623], new named_type(IFC4X1_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[2624], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[2625], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2626], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2627], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2628], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2629], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2630], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2631], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2632], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2633], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2634], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2635], new named_type(IFC4X1_IfcShapeAspect_type), true), + new attribute(strings[2636], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2637], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[2638], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2639], new named_type(IFC4X1_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[2640], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2641], new named_type(IFC4X1_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[2635], new named_type(IFC4X1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDoorStyle_type->set_attributes({ + new attribute(strings[2623], new named_type(IFC4X1_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[2642], new named_type(IFC4X1_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[2643], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[2644], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDoorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDoorTypeEnum_type), false), + new attribute(strings[2623], new named_type(IFC4X1_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[2643], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[2624], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEdge_type->set_attributes({ + new attribute(strings[2645], new named_type(IFC4X1_IfcVertex_type), false), + new attribute(strings[2646], new named_type(IFC4X1_IfcVertex_type), false) + },{ + false, false + }); + IFC4X1_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[2647], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2527], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[2648], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X1_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElement_type->set_attributes({ + new attribute(strings[2393], new named_type(IFC4X1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElementAssembly_type->set_attributes({ + new attribute(strings[2649], new named_type(IFC4X1_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElementQuantity_type->set_attributes({ + new attribute(strings[2650], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2651], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcElementType_type->set_attributes({ + new attribute(strings[2652], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcElementarySurface_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X1_IfcEllipse_type->set_attributes({ + new attribute(strings[2653], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2654], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[2653], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2654], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEngine_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEngineType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEvaporator_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEvent_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEventTypeEnum_type), true), + new attribute(strings[2655], new named_type(IFC4X1_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[2656], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2657], new named_type(IFC4X1_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcEventTime_type->set_attributes({ + new attribute(strings[2658], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2659], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2660], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2661], new named_type(IFC4X1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcEventType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcEventTypeEnum_type), false), + new attribute(strings[2655], new named_type(IFC4X1_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[2656], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2662], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X1_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X1_IfcExternalReference_type->set_attributes({ + new attribute(strings[2514], new named_type(IFC4X1_IfcURIReference_type), true), + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[2663], new named_type(IFC4X1_IfcExternalReference_type), false), + new attribute(strings[2664], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[2665], new named_type(IFC4X1_IfcDirection_type), false), + new attribute(strings[2494], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[2666], new named_type(IFC4X1_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcFace_type->set_attributes({ + new attribute(strings[2667], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X1_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[2668], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X1_IfcFaceBound_type->set_attributes({ + new attribute(strings[2669], new named_type(IFC4X1_IfcLoop_type), false), + new attribute(strings[2670], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X1_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X1_IfcFaceSurface_type->set_attributes({ + new attribute(strings[2671], new named_type(IFC4X1_IfcSurface_type), false), + new attribute(strings[2527], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X1_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2378], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X1_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[2672], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[2673], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[2674], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[2675], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[2676], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[2677], new named_type(IFC4X1_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcFan_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFanType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFastener_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFastenerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[2678], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcFillStyleSelect_type)), false), + new attribute(strings[2679], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X1_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[2680], new named_type(IFC4X1_IfcCurveStyle_type), false), + new attribute(strings[2681], new named_type(IFC4X1_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[2682], new named_type(IFC4X1_IfcCartesianPoint_type), true), + new attribute(strings[2683], new named_type(IFC4X1_IfcCartesianPoint_type), true), + new attribute(strings[2684], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[2685], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcVector_type)), false), + new attribute(strings[2686], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStyledItem_type)), false), + new attribute(strings[2687], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcFilter_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFilterType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[2688], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2689], new named_type(IFC4X1_IfcParameterValue_type), true), + new attribute(strings[2690], new named_type(IFC4X1_IfcParameterValue_type), true), + new attribute(strings[2691], new named_type(IFC4X1_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFooting_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFootingType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFurniture_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcFurnitureType_type->set_attributes({ + new attribute(strings[2649], new named_type(IFC4X1_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2369], new named_type(IFC4X1_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[2692], new named_type(IFC4X1_IfcDimensionCount_type), false), + new attribute(strings[2693], new named_type(IFC4X1_IfcReal_type), true), + new attribute(strings[2694], new named_type(IFC4X1_IfcAxis2Placement_type), false), + new attribute(strings[2695], new named_type(IFC4X1_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X1_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[2696], new named_type(IFC4X1_IfcGeometricRepresentationContext_type), false), + new attribute(strings[2697], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2698], new named_type(IFC4X1_IfcGeometricProjectionEnum_type), false), + new attribute(strings[2699], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X1_IfcGeometricSet_type->set_attributes({ + new attribute(strings[2587], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X1_IfcGrid_type->set_attributes({ + new attribute(strings[2700], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcGridAxis_type)), false), + new attribute(strings[2701], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcGridAxis_type)), false), + new attribute(strings[2702], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcGridAxis_type)), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcGridAxis_type->set_attributes({ + new attribute(strings[2703], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2704], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2527], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X1_IfcGridPlacement_type->set_attributes({ + new attribute(strings[2705], new named_type(IFC4X1_IfcVirtualGridIntersection_type), false), + new attribute(strings[2706], new named_type(IFC4X1_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false + }); + IFC4X1_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X1_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[2707], new named_type(IFC4X1_IfcSurface_type), false), + new attribute(strings[2708], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X1_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcHumidifier_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[2622], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2430], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2431], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2709], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2710], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2711], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2712], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcImageTexture_type->set_attributes({ + new attribute(strings[2713], new named_type(IFC4X1_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[2714], new named_type(IFC4X1_IfcTessellatedFaceSet_type), false), + new attribute(strings[2715], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2716], new named_type(IFC4X1_IfcColourRgbList_type), false), + new attribute(strings[2717], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[2718], new named_type(IFC4X1_IfcCartesianPointList_type), false), + new attribute(strings[2380], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2447], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X1_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[2719], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X1_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[2720], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X1_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[2714], new named_type(IFC4X1_IfcTessellatedFaceSet_type), false), + new attribute(strings[2721], new named_type(IFC4X1_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X1_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[2722], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X1_IfcInterceptor_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcInventory_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcInventoryTypeEnum_type), true), + new attribute(strings[2723], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2724], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPerson_type)), true), + new attribute(strings[2725], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[2422], new named_type(IFC4X1_IfcCostValue_type), true), + new attribute(strings[2421], new named_type(IFC4X1_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[2726], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[2727], new named_type(IFC4X1_IfcDateTime_type), false), + new attribute(strings[2728], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), false) + },{ + false, false + }); + IFC4X1_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2494], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2495], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2509], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2710], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2729], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2730], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLaborResource_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLagTime_type->set_attributes({ + new attribute(strings[2731], new named_type(IFC4X1_IfcTimeOrRatioSelect_type), false), + new attribute(strings[2732], new named_type(IFC4X1_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcLamp_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLampType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2397], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2733], new named_type(IFC4X1_IfcActorSelect_type), true), + new attribute(strings[2734], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[2514], new named_type(IFC4X1_IfcURIReference_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2735], new named_type(IFC4X1_IfcLanguageId_type), true), + new attribute(strings[2736], new named_type(IFC4X1_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[2737], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2738], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[2739], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X1_IfcLightFixture_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[2740], new named_type(IFC4X1_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[2741], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X1_IfcLightSource_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2742], new named_type(IFC4X1_IfcColourRgb_type), false), + new attribute(strings[2743], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2744], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[2670], new named_type(IFC4X1_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement3D_type), false), + new attribute(strings[2745], new named_type(IFC4X1_IfcColourRgb_type), true), + new attribute(strings[2746], new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[2747], new named_type(IFC4X1_IfcLuminousFluxMeasure_type), false), + new attribute(strings[2748], new named_type(IFC4X1_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[2749], new named_type(IFC4X1_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcCartesianPoint_type), false), + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2750], new named_type(IFC4X1_IfcReal_type), false), + new attribute(strings[2751], new named_type(IFC4X1_IfcReal_type), false), + new attribute(strings[2752], new named_type(IFC4X1_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[2670], new named_type(IFC4X1_IfcDirection_type), false), + new attribute(strings[2753], new named_type(IFC4X1_IfcReal_type), true), + new attribute(strings[2754], new named_type(IFC4X1_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[2755], new named_type(IFC4X1_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLine_type->set_attributes({ + new attribute(strings[2756], new named_type(IFC4X1_IfcCartesianPoint_type), false), + new attribute(strings[2757], new named_type(IFC4X1_IfcVector_type), false) + },{ + false, false + }); + IFC4X1_IfcLineSegment2D_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[2758], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2759], new named_type(IFC4X1_IfcDistanceExpression_type), false), + new attribute(strings[2670], new named_type(IFC4X1_IfcOrientationExpression_type), true), + new attribute(strings[2760], new named_type(IFC4X1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcLinearPositioningElement_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4X1_IfcCurve_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[2758], new named_type(IFC4X1_IfcObjectPlacement_type), true), + new attribute(strings[2761], new named_type(IFC4X1_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X1_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X1_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[2762], new named_type(IFC4X1_IfcClosedShell_type), false) + },{ + false + }); + IFC4X1_IfcMapConversion_type->set_attributes({ + new attribute(strings[2763], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2764], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2765], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2766], new named_type(IFC4X1_IfcReal_type), true), + new attribute(strings[2767], new named_type(IFC4X1_IfcReal_type), true), + new attribute(strings[2505], new named_type(IFC4X1_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMappedItem_type->set_attributes({ + new attribute(strings[2768], new named_type(IFC4X1_IfcRepresentationMap_type), false), + new attribute(strings[2769], new named_type(IFC4X1_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X1_IfcMaterial_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2405], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[2770], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcClassificationSelect_type)), false), + new attribute(strings[2771], new named_type(IFC4X1_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X1_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2772], new named_type(IFC4X1_IfcMaterial_type), false), + new attribute(strings[2773], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2405], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2774], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X1_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X1_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[2775], new named_type(IFC4X1_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[2772], new named_type(IFC4X1_IfcMaterial_type), true), + new attribute(strings[2776], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2777], new named_type(IFC4X1_IfcLogical_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2405], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2778], new named_type(IFC4X1_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[2779], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcMaterialLayer_type)), false), + new attribute(strings[2780], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false + }); + IFC4X1_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[2781], new named_type(IFC4X1_IfcMaterialLayerSet_type), false), + new attribute(strings[2782], new named_type(IFC4X1_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2783], new named_type(IFC4X1_IfcDirectionSenseEnum_type), false), + new attribute(strings[2784], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2785], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[2786], new named_type(IFC4X1_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2787], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X1_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMaterialList_type->set_attributes({ + new attribute(strings[2788], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcMaterial_type)), false) + },{ + false + }); + IFC4X1_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2772], new named_type(IFC4X1_IfcMaterial_type), true), + new attribute(strings[2789], new named_type(IFC4X1_IfcProfileDef_type), false), + new attribute(strings[2778], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[2405], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2790], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcMaterialProfile_type)), false), + new attribute(strings[2791], new named_type(IFC4X1_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[2792], new named_type(IFC4X1_IfcMaterialProfileSet_type), false), + new attribute(strings[2793], new named_type(IFC4X1_IfcCardinalPointReference_type), true), + new attribute(strings[2785], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X1_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[2794], new named_type(IFC4X1_IfcMaterialProfileSet_type), false), + new attribute(strings[2795], new named_type(IFC4X1_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[2787], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X1_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[2772], new named_type(IFC4X1_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[2796], new named_type(IFC4X1_IfcMaterial_type), false), + new attribute(strings[2797], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcMaterial_type)), false), + new attribute(strings[2798], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X1_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[2799], new named_type(IFC4X1_IfcValue_type), false), + new attribute(strings[2800], new named_type(IFC4X1_IfcUnit_type), false) + },{ + false, false + }); + IFC4X1_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[2801], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2802], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[2801], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2802], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMember_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMemberType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMetric_type->set_attributes({ + new attribute(strings[2803], new named_type(IFC4X1_IfcBenchmarkEnum_type), false), + new attribute(strings[2804], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2805], new named_type(IFC4X1_IfcMetricValueSelect_type), true), + new attribute(strings[2806], new named_type(IFC4X1_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X1_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[2807], new named_type(IFC4X1_IfcLabel_type), false) + },{ + false + }); + IFC4X1_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcNamedUnit_type->set_attributes({ + new attribute(strings[2808], new named_type(IFC4X1_IfcDimensionalExponents_type), false), + new attribute(strings[2588], new named_type(IFC4X1_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X1_IfcObject_type->set_attributes({ + new attribute(strings[2552], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcObjectPlacement_type->set_attributes({ + },{ + + }); + IFC4X1_IfcObjective_type->set_attributes({ + new attribute(strings[2809], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcConstraint_type)), true), + new attribute(strings[2810], new named_type(IFC4X1_IfcLogicalOperatorEnum_type), true), + new attribute(strings[2811], new named_type(IFC4X1_IfcObjectiveEnum_type), false), + new attribute(strings[2812], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcOccupant_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[2813], new named_type(IFC4X1_IfcCurve_type), false) + },{ + false + }); + IFC4X1_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[2759], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2447], new named_type(IFC4X1_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X1_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[2759], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2447], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2442], new named_type(IFC4X1_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[2787], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcDistanceExpression_type)), false), + new attribute(strings[2393], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcOrganization_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2814], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcActorRole_type)), true), + new attribute(strings[2815], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[2816], new named_type(IFC4X1_IfcOrganization_type), false), + new attribute(strings[2817], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcOrientationExpression_type->set_attributes({ + new attribute(strings[2818], new named_type(IFC4X1_IfcDirection_type), false), + new attribute(strings[2819], new named_type(IFC4X1_IfcDirection_type), false) + },{ + false, false + }); + IFC4X1_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[2820], new named_type(IFC4X1_IfcEdge_type), false), + new attribute(strings[2670], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X1_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X1_IfcOutlet_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcOutletType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[2821], new named_type(IFC4X1_IfcPersonAndOrganization_type), false), + new attribute(strings[2822], new named_type(IFC4X1_IfcApplication_type), false), + new attribute(strings[2823], new named_type(IFC4X1_IfcStateEnum_type), true), + new attribute(strings[2824], new named_type(IFC4X1_IfcChangeActionEnum_type), true), + new attribute(strings[2825], new named_type(IFC4X1_IfcTimeStamp_type), true), + new attribute(strings[2826], new named_type(IFC4X1_IfcPersonAndOrganization_type), true), + new attribute(strings[2827], new named_type(IFC4X1_IfcApplication_type), true), + new attribute(strings[2828], new named_type(IFC4X1_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X1_IfcPath_type->set_attributes({ + new attribute(strings[2648], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X1_IfcPcurve_type->set_attributes({ + new attribute(strings[2572], new named_type(IFC4X1_IfcSurface_type), false), + new attribute(strings[2829], new named_type(IFC4X1_IfcCurve_type), false) + },{ + false, false + }); + IFC4X1_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[2830], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2369], new named_type(IFC4X1_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[2623], new named_type(IFC4X1_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[2641], new named_type(IFC4X1_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2831], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2832], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2635], new named_type(IFC4X1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPermit_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPermitTypeEnum_type), true), + new attribute(strings[2370], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPerson_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2833], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2834], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2835], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[2836], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[2837], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[2814], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcActorRole_type)), true), + new attribute(strings[2815], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[2838], new named_type(IFC4X1_IfcPerson_type), false), + new attribute(strings[2839], new named_type(IFC4X1_IfcOrganization_type), false), + new attribute(strings[2814], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X1_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[2840], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPhysicalQuantity_type)), false), + new attribute(strings[2841], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2842], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2549], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false + }); + IFC4X1_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[2590], new named_type(IFC4X1_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X1_IfcPile_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPileTypeEnum_type), true), + new attribute(strings[2642], new named_type(IFC4X1_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPileType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X1_IfcInteger_type), false), + new attribute(strings[2843], new named_type(IFC4X1_IfcInteger_type), false), + new attribute(strings[2844], new named_type(IFC4X1_IfcInteger_type), false), + new attribute(strings[2845], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPlacement_type->set_attributes({ + new attribute(strings[2514], new named_type(IFC4X1_IfcCartesianPoint_type), false) + },{ + false + }); + IFC4X1_IfcPlanarBox_type->set_attributes({ + new attribute(strings[2846], new named_type(IFC4X1_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X1_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[2847], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2848], new named_type(IFC4X1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcPlate_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPlateType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X1_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[2813], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2849], new named_type(IFC4X1_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X1_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[2572], new named_type(IFC4X1_IfcSurface_type), false), + new attribute(strings[2850], new named_type(IFC4X1_IfcParameterValue_type), false), + new attribute(strings[2851], new named_type(IFC4X1_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X1_IfcPolyLoop_type->set_attributes({ + new attribute(strings[2852], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X1_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement3D_type), false), + new attribute(strings[2853], new named_type(IFC4X1_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[2854], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[2855], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[2856], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X1_IfcPolyline_type->set_attributes({ + new attribute(strings[2718], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X1_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcPostalAddress_type->set_attributes({ + new attribute(strings[2857], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2858], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[2859], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2860], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2861], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2862], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2863], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false) + },{ + false + }); + IFC4X1_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X1_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X1_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2864], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcLayeredItem_type)), false), + new attribute(strings[2409], new named_type(IFC4X1_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2866], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2867], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[2868], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X1_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false + }); + IFC4X1_IfcPresentationStyleAssignment_type->set_attributes({ + new attribute(strings[2869], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPresentationStyleSelect_type)), false) + },{ + false + }); + IFC4X1_IfcProcedure_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProcedureType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProcess_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcProduct_type->set_attributes({ + new attribute(strings[2870], new named_type(IFC4X1_IfcObjectPlacement_type), true), + new attribute(strings[2871], new named_type(IFC4X1_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2872], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X1_IfcProfileDef_type->set_attributes({ + new attribute(strings[2873], new named_type(IFC4X1_IfcProfileTypeEnum_type), false), + new attribute(strings[2874], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X1_IfcProfileProperties_type->set_attributes({ + new attribute(strings[2875], new named_type(IFC4X1_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2370], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[2876], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2877], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2878], new named_type(IFC4X1_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProperty_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcIdentifier_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false + }); + IFC4X1_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X1_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[2879], new named_type(IFC4X1_IfcValue_type), true), + new attribute(strings[2880], new named_type(IFC4X1_IfcValue_type), true), + new attribute(strings[2590], new named_type(IFC4X1_IfcUnit_type), true), + new attribute(strings[2881], new named_type(IFC4X1_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[2882], new named_type(IFC4X1_IfcProperty_type), false), + new attribute(strings[2883], new named_type(IFC4X1_IfcProperty_type), false), + new attribute(strings[2798], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[2884], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true), + new attribute(strings[2885], new named_type(IFC4X1_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2884], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), false), + new attribute(strings[2590], new named_type(IFC4X1_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X1_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[2728], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true), + new attribute(strings[2590], new named_type(IFC4X1_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[2522], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2886], new named_type(IFC4X1_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcPropertySet_type->set_attributes({ + new attribute(strings[2523], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[2524], new named_type(IFC4X1_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[2887], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2525], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[2888], new named_type(IFC4X1_IfcValue_type), true), + new attribute(strings[2590], new named_type(IFC4X1_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[2889], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true), + new attribute(strings[2890], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true), + new attribute(strings[2798], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2891], new named_type(IFC4X1_IfcUnit_type), true), + new attribute(strings[2892], new named_type(IFC4X1_IfcUnit_type), true), + new attribute(strings[2893], new named_type(IFC4X1_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcProxy_type->set_attributes({ + new attribute(strings[2894], new named_type(IFC4X1_IfcObjectTypeEnum_type), false), + new attribute(strings[2393], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPump_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcPumpType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcQuantityArea_type->set_attributes({ + new attribute(strings[2895], new named_type(IFC4X1_IfcAreaMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcQuantityCount_type->set_attributes({ + new attribute(strings[2897], new named_type(IFC4X1_IfcCountMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcQuantityLength_type->set_attributes({ + new attribute(strings[2898], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcQuantityTime_type->set_attributes({ + new attribute(strings[2899], new named_type(IFC4X1_IfcTimeMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[2900], new named_type(IFC4X1_IfcVolumeMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[2901], new named_type(IFC4X1_IfcMassMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcRailing_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRailingType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRamp_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRampFlight_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRampType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2902], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2902], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2496], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2903], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2904], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2485], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2486], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2462], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2463], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2843], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[2572], new named_type(IFC4X1_IfcSurface_type), false), + new attribute(strings[2905], new named_type(IFC4X1_IfcParameterValue_type), false), + new attribute(strings[2906], new named_type(IFC4X1_IfcParameterValue_type), false), + new attribute(strings[2907], new named_type(IFC4X1_IfcParameterValue_type), false), + new attribute(strings[2908], new named_type(IFC4X1_IfcParameterValue_type), false), + new attribute(strings[2909], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[2910], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[2911], new named_type(IFC4X1_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[2912], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDayInMonthNumber_type)), true), + new attribute(strings[2913], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDayInWeekNumber_type)), true), + new attribute(strings[2914], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcMonthInYearNumber_type)), true), + new attribute(strings[2531], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[2915], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[2916], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[2917], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReference_type->set_attributes({ + new attribute(strings[2918], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2919], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2920], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2921], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcInteger_type)), true), + new attribute(strings[2922], new named_type(IFC4X1_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcReferent_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcReferentTypeEnum_type), true), + new attribute(strings[2923], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[2924], new named_type(IFC4X1_IfcTimeMeasure_type), false), + new attribute(strings[2726], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X1_IfcAreaMeasure_type), false), + new attribute(strings[2926], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2927], new named_type(IFC4X1_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[2928], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2929], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2930], new named_type(IFC4X1_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[2931], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2932], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[2801], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2933], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[2934], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[2927], new named_type(IFC4X1_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[2801], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2933], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[2934], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2927], new named_type(IFC4X1_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[2935], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2936], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[2926], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[2937], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2938], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2939], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2940], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2941], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[2942], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[2943], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2944], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[2937], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2938], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2939], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2940], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2941], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[2942], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[2943], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2944], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2935], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2936], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAggregates_type->set_attributes({ + new attribute(strings[2945], new named_type(IFC4X1_IfcObjectDefinition_type), false), + new attribute(strings[2946], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelAssigns_type->set_attributes({ + new attribute(strings[2946], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false), + new attribute(strings[2947], new named_type(IFC4X1_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[2948], new named_type(IFC4X1_IfcActor_type), false), + new attribute(strings[2949], new named_type(IFC4X1_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[2950], new named_type(IFC4X1_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[2951], new named_type(IFC4X1_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X1_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[2953], new named_type(IFC4X1_IfcProcessSelect_type), false), + new attribute(strings[2954], new named_type(IFC4X1_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[2955], new named_type(IFC4X1_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[2956], new named_type(IFC4X1_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssociates_type->set_attributes({ + new attribute(strings[2946], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2415], new named_type(IFC4X1_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[2957], new named_type(IFC4X1_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[2958], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2959], new named_type(IFC4X1_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[2617], new named_type(IFC4X1_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[2960], new named_type(IFC4X1_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[2796], new named_type(IFC4X1_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[2961], new named_type(IFC4X1_IfcConnectionGeometry_type), true), + new attribute(strings[2962], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[2963], new named_type(IFC4X1_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[2964], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X1_IfcInteger_type)), false), + new attribute(strings[2965], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X1_IfcInteger_type)), false), + new attribute(strings[2966], new named_type(IFC4X1_IfcConnectionTypeEnum_type), false), + new attribute(strings[2967], new named_type(IFC4X1_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[2968], new named_type(IFC4X1_IfcPort_type), false), + new attribute(strings[2963], new named_type(IFC4X1_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[2968], new named_type(IFC4X1_IfcPort_type), false), + new attribute(strings[2969], new named_type(IFC4X1_IfcPort_type), false), + new attribute(strings[2970], new named_type(IFC4X1_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[2962], new named_type(IFC4X1_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[2971], new named_type(IFC4X1_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[2972], new named_type(IFC4X1_IfcStructuralMember_type), false), + new attribute(strings[2973], new named_type(IFC4X1_IfcStructuralConnection_type), false), + new attribute(strings[2974], new named_type(IFC4X1_IfcBoundaryCondition_type), true), + new attribute(strings[2975], new named_type(IFC4X1_IfcStructuralConnectionCondition_type), true), + new attribute(strings[2976], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2977], new named_type(IFC4X1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[2978], new named_type(IFC4X1_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[2979], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcElement_type)), false), + new attribute(strings[2980], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[2981], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProduct_type)), false), + new attribute(strings[2982], new named_type(IFC4X1_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[2984], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[2985], new named_type(IFC4X1_IfcSpace_type), false), + new attribute(strings[2984], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelDeclares_type->set_attributes({ + new attribute(strings[2986], new named_type(IFC4X1_IfcContext_type), false), + new attribute(strings[2987], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[2946], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObject_type)), false), + new attribute(strings[2945], new named_type(IFC4X1_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[2946], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false), + new attribute(strings[2988], new named_type(IFC4X1_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[2989], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertySetDefinition_type)), false), + new attribute(strings[2990], new named_type(IFC4X1_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[2946], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcObject_type)), false), + new attribute(strings[2991], new named_type(IFC4X1_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[2992], new named_type(IFC4X1_IfcOpeningElement_type), false), + new attribute(strings[2993], new named_type(IFC4X1_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[2994], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcDistributionControlElement_type)), false), + new attribute(strings[2995], new named_type(IFC4X1_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[2962], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[2963], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[2996], new named_type(IFC4X1_IfcConnectionGeometry_type), true), + new attribute(strings[2997], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2998], new simple_type(simple_type::logical_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelNests_type->set_attributes({ + new attribute(strings[2945], new named_type(IFC4X1_IfcObjectDefinition_type), false), + new attribute(strings[2946], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[2962], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[2999], new named_type(IFC4X1_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[2981], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcProduct_type)), false), + new attribute(strings[2982], new named_type(IFC4X1_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelSequence_type->set_attributes({ + new attribute(strings[2953], new named_type(IFC4X1_IfcProcess_type), false), + new attribute(strings[3000], new named_type(IFC4X1_IfcProcess_type), false), + new attribute(strings[3001], new named_type(IFC4X1_IfcLagTime_type), true), + new attribute(strings[3002], new named_type(IFC4X1_IfcSequenceEnum_type), true), + new attribute(strings[3003], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3004], new named_type(IFC4X1_IfcSystem_type), false), + new attribute(strings[3005], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[2985], new named_type(IFC4X1_IfcSpaceBoundarySelect_type), false), + new attribute(strings[2993], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[2961], new named_type(IFC4X1_IfcConnectionGeometry_type), true), + new attribute(strings[3006], new named_type(IFC4X1_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3007], new named_type(IFC4X1_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3008], new named_type(IFC4X1_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3009], new named_type(IFC4X1_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X1_IfcElement_type), false), + new attribute(strings[3010], new named_type(IFC4X1_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3011], new named_type(IFC4X1_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcRepresentation_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X1_IfcRepresentationContext_type), false), + new attribute(strings[3013], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3014], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3015], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3016], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3017], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X1_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X1_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3018], new named_type(IFC4X1_IfcAxis2Placement_type), false), + new attribute(strings[3019], new named_type(IFC4X1_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X1_IfcResource_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[2664], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcResourceObjectSelect_type)), false), + new attribute(strings[2415], new named_type(IFC4X1_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[2959], new named_type(IFC4X1_IfcConstraint_type), false), + new attribute(strings[2664], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X1_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false + }); + IFC4X1_IfcResourceTime_type->set_attributes({ + new attribute(strings[3020], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3021], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3022], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3023], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3024], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3025], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3026], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[3027], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3028], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3029], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3030], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3031], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3032], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3033], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3034], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4X1_IfcAxis1Placement_type), false), + new attribute(strings[3035], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[2666], new named_type(IFC4X1_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3036], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcRoof_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRoofType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcRoot_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X1_IfcGloballyUniqueId_type), false), + new attribute(strings[3038], new named_type(IFC4X1_IfcOwnerHistory_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3039], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcSIUnit_type->set_attributes({ + new attribute(strings[3040], new named_type(IFC4X1_IfcSIPrefix_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X1_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3041], new named_type(IFC4X1_IfcDataOriginEnum_type), true), + new attribute(strings[3042], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X1_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3043], new named_type(IFC4X1_IfcSectionTypeEnum_type), false), + new attribute(strings[3044], new named_type(IFC4X1_IfcProfileDef_type), false), + new attribute(strings[3045], new named_type(IFC4X1_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X1_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3046], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[3047], new named_type(IFC4X1_IfcLengthMeasure_type), false), + new attribute(strings[3048], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3049], new named_type(IFC4X1_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3050], new named_type(IFC4X1_IfcSectionProperties_type), false), + new attribute(strings[3051], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[2688], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[3052], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X1_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3053], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcDistanceExpression_type)), false), + new attribute(strings[3054], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X1_IfcCompositeCurve_type), false), + new attribute(strings[3052], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcProfileDef_type)), false), + new attribute(strings[3053], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X1_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X1_IfcSensor_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSensorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3056], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcShapeModel_type)), false), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[3057], new named_type(IFC4X1_IfcLogical_type), false), + new attribute(strings[3058], new named_type(IFC4X1_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3059], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcShell_type)), false) + },{ + false + }); + IFC4X1_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X1_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[2524], new named_type(IFC4X1_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3060], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3061], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3062], new named_type(IFC4X1_IfcPropertyEnumeration_type), true), + new attribute(strings[3063], new named_type(IFC4X1_IfcUnit_type), true), + new attribute(strings[3064], new named_type(IFC4X1_IfcUnit_type), true), + new attribute(strings[2798], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3065], new named_type(IFC4X1_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSite_type->set_attributes({ + new attribute(strings[3066], new named_type(IFC4X1_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3067], new named_type(IFC4X1_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3068], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3069], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3070], new named_type(IFC4X1_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSlab_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSlabType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3071], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3072], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3073], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X1_IfcSpace_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSpaceTypeEnum_type), true), + new attribute(strings[3074], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpaceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSpaceTypeEnum_type), false), + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[2652], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3075], new named_type(IFC4X1_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSphere_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStair_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStairFlight_type->set_attributes({ + new attribute(strings[3076], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[3077], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[3078], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3079], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStairType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3081], new named_type(IFC4X1_IfcStructuralLoad_type), false), + new attribute(strings[3082], new named_type(IFC4X1_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3083], new named_type(IFC4X1_IfcAxis2Placement3D_type), true), + new attribute(strings[3084], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3085], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStructuralResultGroup_type)), true), + new attribute(strings[3086], new named_type(IFC4X1_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[2974], new named_type(IFC4X1_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false + }); + IFC4X1_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3087], new named_type(IFC4X1_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2441], new named_type(IFC4X1_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2441], new named_type(IFC4X1_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false + }); + IFC4X1_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3088], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[2726], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3089], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X1_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X1_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3090], new named_type(IFC4X1_IfcActionTypeEnum_type), false), + new attribute(strings[3091], new named_type(IFC4X1_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3092], new named_type(IFC4X1_IfcRatioMeasure_type), true), + new attribute(strings[2376], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3093], new named_type(IFC4X1_IfcLinearForceMeasure_type), true), + new attribute(strings[3094], new named_type(IFC4X1_IfcLinearForceMeasure_type), true), + new attribute(strings[3095], new named_type(IFC4X1_IfcLinearForceMeasure_type), true), + new attribute(strings[3096], new named_type(IFC4X1_IfcLinearMomentMeasure_type), true), + new attribute(strings[3097], new named_type(IFC4X1_IfcLinearMomentMeasure_type), true), + new attribute(strings[3098], new named_type(IFC4X1_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3099], new named_type(IFC4X1_IfcPlanarForceMeasure_type), true), + new attribute(strings[3100], new named_type(IFC4X1_IfcPlanarForceMeasure_type), true), + new attribute(strings[3101], new named_type(IFC4X1_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3102], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3103], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3104], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[3105], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3106], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3107], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3108], new named_type(IFC4X1_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3109], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[3110], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[3111], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[3112], new named_type(IFC4X1_IfcTorqueMeasure_type), true), + new attribute(strings[3113], new named_type(IFC4X1_IfcTorqueMeasure_type), true), + new attribute(strings[3114], new named_type(IFC4X1_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3115], new named_type(IFC4X1_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X1_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3116], new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3117], new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4X1_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[2977], new named_type(IFC4X1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3119], new named_type(IFC4X1_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3120], new named_type(IFC4X1_IfcStructuralLoadGroup_type), true), + new attribute(strings[3121], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3087], new named_type(IFC4X1_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[2509], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcStyledItem_type->set_attributes({ + new attribute(strings[3122], new named_type(IFC4X1_IfcRepresentationItem_type), true), + new attribute(strings[2869], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcStyleAssignmentSelect_type)), false), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X1_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSubedge_type->set_attributes({ + new attribute(strings[3123], new named_type(IFC4X1_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X1_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X1_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3124], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[3125], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X1_IfcPcurve_type)), false), + new attribute(strings[3126], new named_type(IFC4X1_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X1_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[2688], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2689], new named_type(IFC4X1_IfcParameterValue_type), true), + new attribute(strings[2690], new named_type(IFC4X1_IfcParameterValue_type), true), + new attribute(strings[3127], new named_type(IFC4X1_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[2665], new named_type(IFC4X1_IfcDirection_type), false), + new attribute(strings[2494], new named_type(IFC4X1_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4X1_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X1_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3129], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), true), + new attribute(strings[3130], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), true), + new attribute(strings[3131], new named_type(IFC4X1_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X1_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3132], new named_type(IFC4X1_IfcSurfaceSide_type), false), + new attribute(strings[2869], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X1_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X1_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3133], new named_type(IFC4X1_IfcColourRgb_type), false), + new attribute(strings[3134], new named_type(IFC4X1_IfcColourRgb_type), false), + new attribute(strings[3135], new named_type(IFC4X1_IfcColourRgb_type), false), + new attribute(strings[3136], new named_type(IFC4X1_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X1_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3137], new named_type(IFC4X1_IfcReal_type), true), + new attribute(strings[3138], new named_type(IFC4X1_IfcReal_type), true) + },{ + false, false + }); + IFC4X1_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X1_IfcColourOrFactor_type), true), + new attribute(strings[3135], new named_type(IFC4X1_IfcColourOrFactor_type), true), + new attribute(strings[3133], new named_type(IFC4X1_IfcColourOrFactor_type), true), + new attribute(strings[3140], new named_type(IFC4X1_IfcColourOrFactor_type), true), + new attribute(strings[3141], new named_type(IFC4X1_IfcColourOrFactor_type), true), + new attribute(strings[3142], new named_type(IFC4X1_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3143], new named_type(IFC4X1_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3144], new named_type(IFC4X1_IfcColourRgb_type), false), + new attribute(strings[3145], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X1_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3146], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X1_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3147], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[3148], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[3149], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[3150], new named_type(IFC4X1_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3151], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3152], new named_type(IFC4X1_IfcProfileDef_type), false), + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X1_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[2688], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[2385], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3153], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2689], new named_type(IFC4X1_IfcParameterValue_type), true), + new attribute(strings[2690], new named_type(IFC4X1_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[2710], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3154], new named_type(IFC4X1_IfcProfileDef_type), false), + new attribute(strings[2531], new named_type(IFC4X1_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X1_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X1_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2494], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3155], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2431], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2709], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2710], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2711], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3156], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3157], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2712], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTable_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3158], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTableRow_type)), true), + new attribute(strings[3159], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X1_IfcTableColumn_type->set_attributes({ + new attribute(strings[2409], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[2590], new named_type(IFC4X1_IfcUnit_type), true), + new attribute(strings[2806], new named_type(IFC4X1_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcTableRow_type->set_attributes({ + new attribute(strings[3160], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), true), + new attribute(strings[3161], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X1_IfcTank_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTankType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTask_type->set_attributes({ + new attribute(strings[2370], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3162], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3163], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[2778], new named_type(IFC4X1_IfcInteger_type), true), + new attribute(strings[3164], new named_type(IFC4X1_IfcTaskTime_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTaskTime_type->set_attributes({ + new attribute(strings[2732], new named_type(IFC4X1_IfcTaskDurationEnum_type), true), + new attribute(strings[3165], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3022], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3023], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3166], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3167], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3168], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3169], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3170], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3171], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3172], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[3027], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3173], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3030], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3031], new named_type(IFC4X1_IfcDateTime_type), true), + new attribute(strings[3174], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3034], new named_type(IFC4X1_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3175], new named_type(IFC4X1_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTaskType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTaskTypeEnum_type), false), + new attribute(strings[3162], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3176], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[3177], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[3178], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3179], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcLabel_type)), true), + new attribute(strings[3180], new named_type(IFC4X1_IfcURIReference_type), true), + new attribute(strings[3181], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTendon_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTendonTypeEnum_type), true), + new attribute(strings[2801], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2933], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[3182], new named_type(IFC4X1_IfcForceMeasure_type), true), + new attribute(strings[3183], new named_type(IFC4X1_IfcPressureMeasure_type), true), + new attribute(strings[3184], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3185], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3186], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTendonType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTendonTypeEnum_type), false), + new attribute(strings[2801], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2933], new named_type(IFC4X1_IfcAreaMeasure_type), true), + new attribute(strings[3187], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2499], new named_type(IFC4X1_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X1_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X1_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3188], new named_type(IFC4X1_IfcPresentableText_type), false), + new attribute(strings[2846], new named_type(IFC4X1_IfcAxis2Placement_type), false), + new attribute(strings[3189], new named_type(IFC4X1_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X1_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3190], new named_type(IFC4X1_IfcPlanarExtent_type), false), + new attribute(strings[3191], new named_type(IFC4X1_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcTextStyle_type->set_attributes({ + new attribute(strings[3192], new named_type(IFC4X1_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3193], new named_type(IFC4X1_IfcTextStyleTextModel_type), true), + new attribute(strings[3194], new named_type(IFC4X1_IfcTextFontSelect_type), false), + new attribute(strings[2581], new named_type(IFC4X1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3195], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcTextFontName_type)), false), + new attribute(strings[3196], new named_type(IFC4X1_IfcFontStyle_type), true), + new attribute(strings[3197], new named_type(IFC4X1_IfcFontVariant_type), true), + new attribute(strings[3198], new named_type(IFC4X1_IfcFontWeight_type), true), + new attribute(strings[3199], new named_type(IFC4X1_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3200], new named_type(IFC4X1_IfcColour_type), false), + new attribute(strings[3201], new named_type(IFC4X1_IfcColour_type), true) + },{ + false, false + }); + IFC4X1_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3202], new named_type(IFC4X1_IfcSizeSelect_type), true), + new attribute(strings[3203], new named_type(IFC4X1_IfcTextAlignment_type), true), + new attribute(strings[3204], new named_type(IFC4X1_IfcTextDecoration_type), true), + new attribute(strings[3205], new named_type(IFC4X1_IfcSizeSelect_type), true), + new attribute(strings[3206], new named_type(IFC4X1_IfcSizeSelect_type), true), + new attribute(strings[3207], new named_type(IFC4X1_IfcTextTransformation_type), true), + new attribute(strings[3208], new named_type(IFC4X1_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3209], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X1_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3149], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[3151], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X1_IfcTextureMap_type->set_attributes({ + new attribute(strings[3210], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X1_IfcTextureVertex_type)), false), + new attribute(strings[2714], new named_type(IFC4X1_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X1_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2499], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X1_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3211], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X1_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3212], new named_type(IFC4X1_IfcTime_type), false), + new attribute(strings[3213], new named_type(IFC4X1_IfcTime_type), false) + },{ + false, false + }); + IFC4X1_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2400], new named_type(IFC4X1_IfcLabel_type), false), + new attribute(strings[2375], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[3212], new named_type(IFC4X1_IfcDateTime_type), false), + new attribute(strings[3213], new named_type(IFC4X1_IfcDateTime_type), false), + new attribute(strings[3214], new named_type(IFC4X1_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3041], new named_type(IFC4X1_IfcDataOriginEnum_type), false), + new attribute(strings[3042], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[2590], new named_type(IFC4X1_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[2728], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcValue_type)), false) + },{ + false + }); + IFC4X1_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X1_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X1_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3215], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3216], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X1_IfcTransformer_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTransformerType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTransitionCurveSegment2D_type->set_attributes({ + new attribute(strings[3217], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3218], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3219], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[3220], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[3221], new named_type(IFC4X1_IfcTransitionCurveType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTransportElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTransportElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTransportElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3222], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3223], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2486], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3224], new named_type(IFC4X1_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X1_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3225], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcParameterValue_type))), true), + new attribute(strings[2854], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[2719], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X1_IfcPositiveInteger_type))), false), + new attribute(strings[2856], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X1_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3226], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[2813], new named_type(IFC4X1_IfcCurve_type), false), + new attribute(strings[3227], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X1_IfcTrimmingSelect_type)), false), + new attribute(strings[3228], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X1_IfcTrimmingSelect_type)), false), + new attribute(strings[3229], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[3126], new named_type(IFC4X1_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X1_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTypeObject_type->set_attributes({ + new attribute(strings[3230], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[3231], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[3232], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3233], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X1_IfcRepresentationMap_type)), true), + new attribute(strings[2393], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcTypeResource_type->set_attributes({ + new attribute(strings[2420], new named_type(IFC4X1_IfcIdentifier_type), true), + new attribute(strings[2371], new named_type(IFC4X1_IfcText_type), true), + new attribute(strings[3234], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2494], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3155], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2431], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2709], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2710], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2729], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2712], new named_type(IFC4X1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3235], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcUnit_type)), false) + },{ + false + }); + IFC4X1_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcValve_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcValveType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcVector_type->set_attributes({ + new attribute(strings[2670], new named_type(IFC4X1_IfcDirection_type), false), + new attribute(strings[3236], new named_type(IFC4X1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X1_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X1_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3237], new named_type(IFC4X1_IfcVertex_type), false) + },{ + false + }); + IFC4X1_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3238], new named_type(IFC4X1_IfcPoint_type), false) + },{ + false + }); + IFC4X1_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X1_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3239], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X1_IfcGridAxis_type)), false), + new attribute(strings[3240], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X1_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X1_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWall_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWallType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWindow_type->set_attributes({ + new attribute(strings[2621], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2622], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcWindowTypeEnum_type), true), + new attribute(strings[3241], new named_type(IFC4X1_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3242], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[2625], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2626], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2629], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3243], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3244], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3245], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3246], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3247], new named_type(IFC4X1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2635], new named_type(IFC4X1_IfcShapeAspect_type), true), + new attribute(strings[2631], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2636], new named_type(IFC4X1_IfcLengthMeasure_type), true), + new attribute(strings[2637], new named_type(IFC4X1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[2623], new named_type(IFC4X1_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[2641], new named_type(IFC4X1_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2831], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2832], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2635], new named_type(IFC4X1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWindowStyle_type->set_attributes({ + new attribute(strings[2642], new named_type(IFC4X1_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[2623], new named_type(IFC4X1_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[2643], new named_type(IFC4X1_IfcBoolean_type), false), + new attribute(strings[2644], new named_type(IFC4X1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWindowType_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWindowTypeEnum_type), false), + new attribute(strings[3241], new named_type(IFC4X1_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[2643], new named_type(IFC4X1_IfcBoolean_type), true), + new attribute(strings[3242], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3248], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcWorkTime_type)), true), + new attribute(strings[3249], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcWorkTime_type)), true), + new attribute(strings[2369], new named_type(IFC4X1_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWorkControl_type->set_attributes({ + new attribute(strings[2828], new named_type(IFC4X1_IfcDateTime_type), false), + new attribute(strings[3250], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X1_IfcPerson_type)), true), + new attribute(strings[2376], new named_type(IFC4X1_IfcLabel_type), true), + new attribute(strings[3251], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3171], new named_type(IFC4X1_IfcDuration_type), true), + new attribute(strings[3212], new named_type(IFC4X1_IfcDateTime_type), false), + new attribute(strings[3252], new named_type(IFC4X1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2369], new named_type(IFC4X1_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcWorkTime_type->set_attributes({ + new attribute(strings[3253], new named_type(IFC4X1_IfcRecurrencePattern_type), true), + new attribute(strings[3254], new named_type(IFC4X1_IfcDate_type), true), + new attribute(strings[3255], new named_type(IFC4X1_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2494], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3155], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2431], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2709], new named_type(IFC4X1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2710], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2729], new named_type(IFC4X1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X1_IfcZone_type->set_attributes({ + new attribute(strings[2493], new named_type(IFC4X1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X1_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3256], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToActor_type, IFC4X1_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X1_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3257], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3258], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPerson_type, IFC4X1_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3259], inverse_attribute::set_type, 0, -1, IFC4X1_IfcOrganization_type, IFC4X1_IfcOrganization_type->attributes()[4]) + }); + IFC4X1_IfcAlignment2DHorizontal_type->set_inverse_attributes({ + new inverse_attribute(strings[3260], inverse_attribute::set_type, 1, -1, IFC4X1_IfcAlignmentCurve_type, IFC4X1_IfcAlignmentCurve_type->attributes()[0]) + }); + IFC4X1_IfcAlignment2DHorizontalSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3261], inverse_attribute::set_type, 1, 1, IFC4X1_IfcAlignment2DHorizontal_type, IFC4X1_IfcAlignment2DHorizontal_type->attributes()[1]) + }); + IFC4X1_IfcAlignment2DVertical_type->set_inverse_attributes({ + new inverse_attribute(strings[3260], inverse_attribute::set_type, 1, 1, IFC4X1_IfcAlignmentCurve_type, IFC4X1_IfcAlignmentCurve_type->attributes()[1]) + }); + IFC4X1_IfcAlignment2DVerticalSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3262], inverse_attribute::set_type, 1, 1, IFC4X1_IfcAlignment2DVertical_type, IFC4X1_IfcAlignment2DVertical_type->attributes()[0]) + }); + IFC4X1_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3263], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X1_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3257], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3265], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesApproval_type, IFC4X1_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3266], inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceApprovalRelationship_type, IFC4X1_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3267], inverse_attribute::set_type, 0, -1, IFC4X1_IfcApprovalRelationship_type, IFC4X1_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3268], inverse_attribute::set_type, 0, -1, IFC4X1_IfcApprovalRelationship_type, IFC4X1_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X1_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3269], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesClassification_type, IFC4X1_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3270], inverse_attribute::set_type, 0, -1, IFC4X1_IfcClassificationReference_type, IFC4X1_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X1_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3271], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesClassification_type, IFC4X1_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3270], inverse_attribute::set_type, 0, -1, IFC4X1_IfcClassificationReference_type, IFC4X1_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X1_IfcCompositeCurveSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3272], inverse_attribute::set_type, 1, -1, IFC4X1_IfcCompositeCurve_type, IFC4X1_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X1_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3273], inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceConstraintRelationship_type, IFC4X1_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X1_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3274], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByProperties_type, IFC4X1_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3275], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDeclares_type, IFC4X1_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X1_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3257], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3276], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToControl_type, IFC4X1_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X1_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3257], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3277], inverse_attribute::set_type, 0, 1, IFC4X1_IfcCoordinateOperation_type, IFC4X1_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X1_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3278], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelCoversSpaces_type, IFC4X1_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3279], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelCoversBldgElements_type, IFC4X1_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X1_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3280], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelFlowControlElements_type, IFC4X1_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X1_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3281], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsPortToElement_type, IFC4X1_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X1_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3282], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelFlowControlElements_type, IFC4X1_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X1_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3283], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesDocument_type, IFC4X1_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3284], inverse_attribute::set_type, 0, -1, IFC4X1_IfcDocumentReference_type, IFC4X1_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3285], inverse_attribute::set_type, 0, -1, IFC4X1_IfcDocumentInformationRelationship_type, IFC4X1_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3286], inverse_attribute::set_type, 0, 1, IFC4X1_IfcDocumentInformationRelationship_type, IFC4X1_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X1_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3287], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesDocument_type, IFC4X1_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X1_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3288], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelFillsElement_type, IFC4X1_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3289], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsElements_type, IFC4X1_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3290], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelInterferesElements_type, IFC4X1_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3291], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelInterferesElements_type, IFC4X1_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3292], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelProjectsElement_type, IFC4X1_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3293], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelReferencedInSpatialStructure_type, IFC4X1_IfcRelReferencedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3294], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelVoidsElement_type, IFC4X1_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3295], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsWithRealizingElements_type, IFC4X1_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3296], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary_type, IFC4X1_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3297], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsElements_type, IFC4X1_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3263], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3298], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelCoversBldgElements_type, IFC4X1_IfcRelCoversBldgElements_type->attributes()[0]) + }); + IFC4X1_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3299], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X1_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3300], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary_type, IFC4X1_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X1_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3301], inverse_attribute::set_type, 0, -1, IFC4X1_IfcTextureMap_type, IFC4X1_IfcTextureMap_type->attributes()[1]) + }); + IFC4X1_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3302], inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcRelProjectsElement_type, IFC4X1_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X1_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3303], inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcRelVoidsElement_type, IFC4X1_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X1_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3304], inverse_attribute::set_type, 0, -1, IFC4X1_IfcGeometricRepresentationSubContext_type, IFC4X1_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3277], inverse_attribute::set_type, 0, 1, IFC4X1_IfcCoordinateOperation_type, IFC4X1_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X1_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3305], inverse_attribute::set_type, 0, 1, IFC4X1_IfcGrid_type, IFC4X1_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3306], inverse_attribute::set_type, 0, 1, IFC4X1_IfcGrid_type, IFC4X1_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3307], inverse_attribute::set_type, 0, 1, IFC4X1_IfcGrid_type, IFC4X1_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3308], inverse_attribute::set_type, 0, -1, IFC4X1_IfcVirtualGridIntersection_type, IFC4X1_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X1_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3309], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToGroup_type, IFC4X1_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4X1_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3310], inverse_attribute::set_type, 1, -1, IFC4X1_IfcPolygonalFaceSet_type, IFC4X1_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4X1_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3311], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesLibrary_type, IFC4X1_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3312], inverse_attribute::set_type, 0, -1, IFC4X1_IfcLibraryReference_type, IFC4X1_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X1_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3313], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesLibrary_type, IFC4X1_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X1_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3314], inverse_attribute::set_type, 0, 1, IFC4X1_IfcMaterialDefinitionRepresentation_type, IFC4X1_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3267], inverse_attribute::set_type, 0, -1, IFC4X1_IfcMaterialRelationship_type, IFC4X1_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3315], inverse_attribute::set_type, 0, 1, IFC4X1_IfcMaterialRelationship_type, IFC4X1_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X1_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3316], inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcMaterialConstituentSet_type, IFC4X1_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X1_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3317], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociatesMaterial_type, IFC4X1_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2523], inverse_attribute::set_type, 0, -1, IFC4X1_IfcMaterialProperties_type, IFC4X1_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X1_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3318], inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcMaterialLayerSet_type, IFC4X1_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X1_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3319], inverse_attribute::unspecified_type, -1, -1, IFC4X1_IfcMaterialProfileSet_type, IFC4X1_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X1_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3317], inverse_attribute::set_type, 1, -1, IFC4X1_IfcRelAssociatesMaterial_type, IFC4X1_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X1_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3320], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDefinesByObject_type, IFC4X1_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3275], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByObject_type, IFC4X1_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3321], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDefinesByType_type, IFC4X1_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3274], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByProperties_type, IFC4X1_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X1_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3322], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssigns_type, IFC4X1_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3323], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelNests_type, IFC4X1_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3324], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelNests_type, IFC4X1_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3325], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDeclares_type, IFC4X1_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3326], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAggregates_type, IFC4X1_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3327], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelAggregates_type, IFC4X1_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3328], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociates_type, IFC4X1_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X1_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3329], inverse_attribute::set_type, 0, -1, IFC4X1_IfcProduct_type, IFC4X1_IfcProduct_type->attributes()[0]), + new inverse_attribute(strings[3330], inverse_attribute::set_type, 0, -1, IFC4X1_IfcLocalPlacement_type, IFC4X1_IfcLocalPlacement_type->attributes()[0]) + }); + IFC4X1_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3331], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelFillsElement_type, IFC4X1_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X1_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3332], inverse_attribute::set_type, 0, -1, IFC4X1_IfcOrganizationRelationship_type, IFC4X1_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3268], inverse_attribute::set_type, 0, -1, IFC4X1_IfcOrganizationRelationship_type, IFC4X1_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3333], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPersonAndOrganization_type, IFC4X1_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X1_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3334], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPersonAndOrganization_type, IFC4X1_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X1_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3335], inverse_attribute::set_type, 0, 1, IFC4X1_IfcPhysicalComplexQuantity_type, IFC4X1_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X1_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3336], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsPortToElement_type, IFC4X1_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3297], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsPorts_type, IFC4X1_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3289], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsPorts_type, IFC4X1_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X1_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3263], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X1_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3337], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSequence_type, IFC4X1_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3338], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSequence_type, IFC4X1_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3339], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProcess_type, IFC4X1_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X1_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3340], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProduct_type, IFC4X1_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X1_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3341], inverse_attribute::set_type, 1, -1, IFC4X1_IfcProduct_type, IFC4X1_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3342], inverse_attribute::set_type, 0, -1, IFC4X1_IfcShapeAspect_type, IFC4X1_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X1_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3257], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2523], inverse_attribute::set_type, 0, -1, IFC4X1_IfcProfileProperties_type, IFC4X1_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X1_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3343], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertySet_type, IFC4X1_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3344], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertyDependencyRelationship_type, IFC4X1_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3345], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertyDependencyRelationship_type, IFC4X1_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3335], inverse_attribute::set_type, 0, -1, IFC4X1_IfcComplexProperty_type, IFC4X1_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3346], inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceConstraintRelationship_type, IFC4X1_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3347], inverse_attribute::set_type, 0, -1, IFC4X1_IfcResourceApprovalRelationship_type, IFC4X1_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X1_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3325], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDeclares_type, IFC4X1_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3328], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssociates_type, IFC4X1_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X1_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3348], inverse_attribute::set_type, 0, -1, IFC4X1_IfcTypeObject_type, IFC4X1_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3274], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByTemplate_type, IFC4X1_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3349], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByProperties_type, IFC4X1_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X1_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3350], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelDefinesByTemplate_type, IFC4X1_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X1_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3351], inverse_attribute::set_type, 0, -1, IFC4X1_IfcComplexPropertyTemplate_type, IFC4X1_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3352], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPropertySetTemplate_type, IFC4X1_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X1_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2395], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary1stLevel_type, IFC4X1_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X1_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3353], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelSpaceBoundary2ndLevel_type, IFC4X1_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X1_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3354], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRepresentationMap_type, IFC4X1_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3355], inverse_attribute::set_type, 0, -1, IFC4X1_IfcPresentationLayerAssignment_type, IFC4X1_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3356], inverse_attribute::set_type, 0, -1, IFC4X1_IfcProductRepresentation_type, IFC4X1_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X1_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3357], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRepresentation_type, IFC4X1_IfcRepresentation_type->attributes()[0]) + }); + IFC4X1_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3358], inverse_attribute::set_type, 0, 1, IFC4X1_IfcPresentationLayerAssignment_type, IFC4X1_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3359], inverse_attribute::set_type, 0, 1, IFC4X1_IfcStyledItem_type, IFC4X1_IfcStyledItem_type->attributes()[0]) + }); + IFC4X1_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3342], inverse_attribute::set_type, 0, -1, IFC4X1_IfcShapeAspect_type, IFC4X1_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3360], inverse_attribute::set_type, 0, -1, IFC4X1_IfcMappedItem_type, IFC4X1_IfcMappedItem_type->attributes()[0]) + }); + IFC4X1_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3361], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToResource_type, IFC4X1_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X1_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3264], inverse_attribute::set_type, 0, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, 1, IFC4X1_IfcShapeAspect_type, IFC4X1_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X1_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3298], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelCoversSpaces_type, IFC4X1_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3300], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelSpaceBoundary_type, IFC4X1_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X1_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3363], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelContainedInSpatialStructure_type, IFC4X1_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3364], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelServicesBuildings_type, IFC4X1_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3365], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelReferencedInSpatialStructure_type, IFC4X1_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4X1_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3366], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelConnectsStructuralActivity_type, IFC4X1_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X1_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3367], inverse_attribute::set_type, 1, -1, IFC4X1_IfcRelConnectsStructuralMember_type, IFC4X1_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X1_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3368], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsStructuralActivity_type, IFC4X1_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X1_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3369], inverse_attribute::set_type, 0, 1, IFC4X1_IfcStructuralResultGroup_type, IFC4X1_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3370], inverse_attribute::set_type, 0, -1, IFC4X1_IfcStructuralAnalysisModel_type, IFC4X1_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X1_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3371], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelConnectsStructuralMember_type, IFC4X1_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X1_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3372], inverse_attribute::set_type, 0, 1, IFC4X1_IfcStructuralAnalysisModel_type, IFC4X1_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X1_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3373], inverse_attribute::set_type, 0, -1, IFC4X1_IfcTextureCoordinate_type, IFC4X1_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3374], inverse_attribute::set_type, 0, -1, IFC4X1_IfcSurfaceStyleWithTextures_type, IFC4X1_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X1_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3375], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelServicesBuildings_type, IFC4X1_IfcRelServicesBuildings_type->attributes()[0]) + }); + IFC4X1_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3376], inverse_attribute::set_type, 0, 1, IFC4X1_IfcIndexedColourMap_type, IFC4X1_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3377], inverse_attribute::set_type, 0, -1, IFC4X1_IfcIndexedTextureMap_type, IFC4X1_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X1_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3257], inverse_attribute::set_type, 1, -1, IFC4X1_IfcExternalReferenceRelationship_type, IFC4X1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X1_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3378], inverse_attribute::set_type, 0, 1, IFC4X1_IfcRelDefinesByType_type, IFC4X1_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X1_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3339], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProcess_type, IFC4X1_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X1_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3340], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToProduct_type, IFC4X1_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X1_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3361], inverse_attribute::set_type, 0, -1, IFC4X1_IfcRelAssignsToResource_type, IFC4X1_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X1_IfcControl_type->set_subtypes({ + IFC4X1_IfcActionRequest_type,IFC4X1_IfcCostItem_type,IFC4X1_IfcCostSchedule_type,IFC4X1_IfcPerformanceHistory_type,IFC4X1_IfcPermit_type,IFC4X1_IfcProjectOrder_type,IFC4X1_IfcWorkCalendar_type,IFC4X1_IfcWorkControl_type + }); + IFC4X1_IfcObject_type->set_subtypes({ + IFC4X1_IfcActor_type,IFC4X1_IfcControl_type,IFC4X1_IfcGroup_type,IFC4X1_IfcProcess_type,IFC4X1_IfcProduct_type,IFC4X1_IfcResource_type + }); + IFC4X1_IfcDistributionControlElement_type->set_subtypes({ + IFC4X1_IfcActuator_type,IFC4X1_IfcAlarm_type,IFC4X1_IfcController_type,IFC4X1_IfcFlowInstrument_type,IFC4X1_IfcProtectiveDeviceTrippingUnit_type,IFC4X1_IfcSensor_type,IFC4X1_IfcUnitaryControlElement_type + }); + IFC4X1_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X1_IfcActuatorType_type,IFC4X1_IfcAlarmType_type,IFC4X1_IfcControllerType_type,IFC4X1_IfcFlowInstrumentType_type,IFC4X1_IfcProtectiveDeviceTrippingUnitType_type,IFC4X1_IfcSensorType_type,IFC4X1_IfcUnitaryControlElementType_type + }); + IFC4X1_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X1_IfcAdvancedBrep_type,IFC4X1_IfcFacetedBrep_type + }); + IFC4X1_IfcAdvancedBrep_type->set_subtypes({ + IFC4X1_IfcAdvancedBrepWithVoids_type + }); + IFC4X1_IfcFaceSurface_type->set_subtypes({ + IFC4X1_IfcAdvancedFace_type + }); + IFC4X1_IfcFlowTerminal_type->set_subtypes({ + IFC4X1_IfcAirTerminal_type,IFC4X1_IfcAudioVisualAppliance_type,IFC4X1_IfcCommunicationsAppliance_type,IFC4X1_IfcElectricAppliance_type,IFC4X1_IfcFireSuppressionTerminal_type,IFC4X1_IfcLamp_type,IFC4X1_IfcLightFixture_type,IFC4X1_IfcMedicalDevice_type,IFC4X1_IfcOutlet_type,IFC4X1_IfcSanitaryTerminal_type,IFC4X1_IfcSpaceHeater_type,IFC4X1_IfcStackTerminal_type,IFC4X1_IfcWasteTerminal_type + }); + IFC4X1_IfcFlowController_type->set_subtypes({ + IFC4X1_IfcAirTerminalBox_type,IFC4X1_IfcDamper_type,IFC4X1_IfcElectricDistributionBoard_type,IFC4X1_IfcElectricTimeControl_type,IFC4X1_IfcFlowMeter_type,IFC4X1_IfcProtectiveDevice_type,IFC4X1_IfcSwitchingDevice_type,IFC4X1_IfcValve_type + }); + IFC4X1_IfcFlowControllerType_type->set_subtypes({ + IFC4X1_IfcAirTerminalBoxType_type,IFC4X1_IfcDamperType_type,IFC4X1_IfcElectricDistributionBoardType_type,IFC4X1_IfcElectricTimeControlType_type,IFC4X1_IfcFlowMeterType_type,IFC4X1_IfcProtectiveDeviceType_type,IFC4X1_IfcSwitchingDeviceType_type,IFC4X1_IfcValveType_type + }); + IFC4X1_IfcFlowTerminalType_type->set_subtypes({ + IFC4X1_IfcAirTerminalType_type,IFC4X1_IfcAudioVisualApplianceType_type,IFC4X1_IfcCommunicationsApplianceType_type,IFC4X1_IfcElectricApplianceType_type,IFC4X1_IfcFireSuppressionTerminalType_type,IFC4X1_IfcLampType_type,IFC4X1_IfcLightFixtureType_type,IFC4X1_IfcMedicalDeviceType_type,IFC4X1_IfcOutletType_type,IFC4X1_IfcSanitaryTerminalType_type,IFC4X1_IfcSpaceHeaterType_type,IFC4X1_IfcStackTerminalType_type,IFC4X1_IfcWasteTerminalType_type + }); + IFC4X1_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X1_IfcAirToAirHeatRecovery_type,IFC4X1_IfcBoiler_type,IFC4X1_IfcBurner_type,IFC4X1_IfcChiller_type,IFC4X1_IfcCoil_type,IFC4X1_IfcCondenser_type,IFC4X1_IfcCooledBeam_type,IFC4X1_IfcCoolingTower_type,IFC4X1_IfcElectricGenerator_type,IFC4X1_IfcElectricMotor_type,IFC4X1_IfcEngine_type,IFC4X1_IfcEvaporativeCooler_type,IFC4X1_IfcEvaporator_type,IFC4X1_IfcHeatExchanger_type,IFC4X1_IfcHumidifier_type,IFC4X1_IfcMotorConnection_type,IFC4X1_IfcSolarDevice_type,IFC4X1_IfcTransformer_type,IFC4X1_IfcTubeBundle_type,IFC4X1_IfcUnitaryEquipment_type + }); + IFC4X1_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X1_IfcAirToAirHeatRecoveryType_type,IFC4X1_IfcBoilerType_type,IFC4X1_IfcBurnerType_type,IFC4X1_IfcChillerType_type,IFC4X1_IfcCoilType_type,IFC4X1_IfcCondenserType_type,IFC4X1_IfcCooledBeamType_type,IFC4X1_IfcCoolingTowerType_type,IFC4X1_IfcElectricGeneratorType_type,IFC4X1_IfcElectricMotorType_type,IFC4X1_IfcEngineType_type,IFC4X1_IfcEvaporativeCoolerType_type,IFC4X1_IfcEvaporatorType_type,IFC4X1_IfcHeatExchangerType_type,IFC4X1_IfcHumidifierType_type,IFC4X1_IfcMotorConnectionType_type,IFC4X1_IfcSolarDeviceType_type,IFC4X1_IfcTransformerType_type,IFC4X1_IfcTubeBundleType_type,IFC4X1_IfcUnitaryEquipmentType_type + }); + IFC4X1_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X1_IfcAlignment_type + }); + IFC4X1_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X1_IfcAlignment2DHorizontal_type,IFC4X1_IfcAlignment2DSegment_type,IFC4X1_IfcAlignment2DVertical_type,IFC4X1_IfcAnnotationFillArea_type,IFC4X1_IfcBooleanResult_type,IFC4X1_IfcBoundingBox_type,IFC4X1_IfcCartesianPointList_type,IFC4X1_IfcCartesianTransformationOperator_type,IFC4X1_IfcCompositeCurveSegment_type,IFC4X1_IfcCsgPrimitive3D_type,IFC4X1_IfcCurve_type,IFC4X1_IfcDirection_type,IFC4X1_IfcDistanceExpression_type,IFC4X1_IfcFaceBasedSurfaceModel_type,IFC4X1_IfcFillAreaStyleHatching_type,IFC4X1_IfcFillAreaStyleTiles_type,IFC4X1_IfcGeometricSet_type,IFC4X1_IfcHalfSpaceSolid_type,IFC4X1_IfcLightSource_type,IFC4X1_IfcOrientationExpression_type,IFC4X1_IfcPlacement_type,IFC4X1_IfcPlanarExtent_type,IFC4X1_IfcPoint_type,IFC4X1_IfcSectionedSpine_type,IFC4X1_IfcShellBasedSurfaceModel_type,IFC4X1_IfcSolidModel_type,IFC4X1_IfcSurface_type,IFC4X1_IfcTessellatedItem_type,IFC4X1_IfcTextLiteral_type,IFC4X1_IfcVector_type + }); + IFC4X1_IfcAlignment2DSegment_type->set_subtypes({ + IFC4X1_IfcAlignment2DHorizontalSegment_type,IFC4X1_IfcAlignment2DVerticalSegment_type + }); + IFC4X1_IfcAlignment2DVerticalSegment_type->set_subtypes({ + IFC4X1_IfcAlignment2DVerSegCircularArc_type,IFC4X1_IfcAlignment2DVerSegLine_type,IFC4X1_IfcAlignment2DVerSegParabolicArc_type + }); + IFC4X1_IfcBoundedCurve_type->set_subtypes({ + IFC4X1_IfcAlignmentCurve_type,IFC4X1_IfcBSplineCurve_type,IFC4X1_IfcCompositeCurve_type,IFC4X1_IfcCurveSegment2D_type,IFC4X1_IfcIndexedPolyCurve_type,IFC4X1_IfcPolyline_type,IFC4X1_IfcTrimmedCurve_type + }); + IFC4X1_IfcProduct_type->set_subtypes({ + IFC4X1_IfcAnnotation_type,IFC4X1_IfcElement_type,IFC4X1_IfcPort_type,IFC4X1_IfcPositioningElement_type,IFC4X1_IfcProxy_type,IFC4X1_IfcSpatialElement_type,IFC4X1_IfcStructuralActivity_type,IFC4X1_IfcStructuralItem_type + }); + IFC4X1_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X1_IfcApprovalRelationship_type,IFC4X1_IfcCurrencyRelationship_type,IFC4X1_IfcDocumentInformationRelationship_type,IFC4X1_IfcExternalReferenceRelationship_type,IFC4X1_IfcMaterialRelationship_type,IFC4X1_IfcOrganizationRelationship_type,IFC4X1_IfcPropertyDependencyRelationship_type,IFC4X1_IfcResourceApprovalRelationship_type,IFC4X1_IfcResourceConstraintRelationship_type + }); + IFC4X1_IfcProfileDef_type->set_subtypes({ + IFC4X1_IfcArbitraryClosedProfileDef_type,IFC4X1_IfcArbitraryOpenProfileDef_type,IFC4X1_IfcCompositeProfileDef_type,IFC4X1_IfcDerivedProfileDef_type,IFC4X1_IfcParameterizedProfileDef_type + }); + IFC4X1_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X1_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X1_IfcGroup_type->set_subtypes({ + IFC4X1_IfcAsset_type,IFC4X1_IfcInventory_type,IFC4X1_IfcStructuralLoadGroup_type,IFC4X1_IfcStructuralResultGroup_type,IFC4X1_IfcSystem_type + }); + IFC4X1_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X1_IfcAsymmetricIShapeProfileDef_type,IFC4X1_IfcCShapeProfileDef_type,IFC4X1_IfcCircleProfileDef_type,IFC4X1_IfcEllipseProfileDef_type,IFC4X1_IfcIShapeProfileDef_type,IFC4X1_IfcLShapeProfileDef_type,IFC4X1_IfcRectangleProfileDef_type,IFC4X1_IfcTShapeProfileDef_type,IFC4X1_IfcTrapeziumProfileDef_type,IFC4X1_IfcUShapeProfileDef_type,IFC4X1_IfcZShapeProfileDef_type + }); + IFC4X1_IfcPlacement_type->set_subtypes({ + IFC4X1_IfcAxis1Placement_type,IFC4X1_IfcAxis2Placement2D_type,IFC4X1_IfcAxis2Placement3D_type + }); + IFC4X1_IfcBSplineCurve_type->set_subtypes({ + IFC4X1_IfcBSplineCurveWithKnots_type + }); + IFC4X1_IfcBoundedSurface_type->set_subtypes({ + IFC4X1_IfcBSplineSurface_type,IFC4X1_IfcCurveBoundedPlane_type,IFC4X1_IfcCurveBoundedSurface_type,IFC4X1_IfcRectangularTrimmedSurface_type + }); + IFC4X1_IfcBSplineSurface_type->set_subtypes({ + IFC4X1_IfcBSplineSurfaceWithKnots_type + }); + IFC4X1_IfcBuildingElement_type->set_subtypes({ + IFC4X1_IfcBeam_type,IFC4X1_IfcBuildingElementProxy_type,IFC4X1_IfcChimney_type,IFC4X1_IfcColumn_type,IFC4X1_IfcCovering_type,IFC4X1_IfcCurtainWall_type,IFC4X1_IfcDoor_type,IFC4X1_IfcFooting_type,IFC4X1_IfcMember_type,IFC4X1_IfcPile_type,IFC4X1_IfcPlate_type,IFC4X1_IfcRailing_type,IFC4X1_IfcRamp_type,IFC4X1_IfcRampFlight_type,IFC4X1_IfcRoof_type,IFC4X1_IfcShadingDevice_type,IFC4X1_IfcSlab_type,IFC4X1_IfcStair_type,IFC4X1_IfcStairFlight_type,IFC4X1_IfcWall_type,IFC4X1_IfcWindow_type + }); + IFC4X1_IfcBeam_type->set_subtypes({ + IFC4X1_IfcBeamStandardCase_type + }); + IFC4X1_IfcBuildingElementType_type->set_subtypes({ + IFC4X1_IfcBeamType_type,IFC4X1_IfcBuildingElementProxyType_type,IFC4X1_IfcChimneyType_type,IFC4X1_IfcColumnType_type,IFC4X1_IfcCoveringType_type,IFC4X1_IfcCurtainWallType_type,IFC4X1_IfcDoorType_type,IFC4X1_IfcFootingType_type,IFC4X1_IfcMemberType_type,IFC4X1_IfcPileType_type,IFC4X1_IfcPlateType_type,IFC4X1_IfcRailingType_type,IFC4X1_IfcRampFlightType_type,IFC4X1_IfcRampType_type,IFC4X1_IfcRoofType_type,IFC4X1_IfcShadingDeviceType_type,IFC4X1_IfcSlabType_type,IFC4X1_IfcStairFlightType_type,IFC4X1_IfcStairType_type,IFC4X1_IfcWallType_type,IFC4X1_IfcWindowType_type + }); + IFC4X1_IfcSurfaceTexture_type->set_subtypes({ + IFC4X1_IfcBlobTexture_type,IFC4X1_IfcImageTexture_type,IFC4X1_IfcPixelTexture_type + }); + IFC4X1_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X1_IfcBlock_type,IFC4X1_IfcRectangularPyramid_type,IFC4X1_IfcRightCircularCone_type,IFC4X1_IfcRightCircularCylinder_type,IFC4X1_IfcSphere_type + }); + IFC4X1_IfcBooleanResult_type->set_subtypes({ + IFC4X1_IfcBooleanClippingResult_type + }); + IFC4X1_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X1_IfcBoundaryCurve_type + }); + IFC4X1_IfcBoundaryCondition_type->set_subtypes({ + IFC4X1_IfcBoundaryEdgeCondition_type,IFC4X1_IfcBoundaryFaceCondition_type,IFC4X1_IfcBoundaryNodeCondition_type + }); + IFC4X1_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X1_IfcBoundaryNodeConditionWarping_type + }); + IFC4X1_IfcCurve_type->set_subtypes({ + IFC4X1_IfcBoundedCurve_type,IFC4X1_IfcConic_type,IFC4X1_IfcLine_type,IFC4X1_IfcOffsetCurve_type,IFC4X1_IfcPcurve_type,IFC4X1_IfcSurfaceCurve_type + }); + IFC4X1_IfcSurface_type->set_subtypes({ + IFC4X1_IfcBoundedSurface_type,IFC4X1_IfcElementarySurface_type,IFC4X1_IfcSweptSurface_type + }); + IFC4X1_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X1_IfcBoxedHalfSpace_type,IFC4X1_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X1_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X1_IfcBuilding_type,IFC4X1_IfcBuildingStorey_type,IFC4X1_IfcSite_type,IFC4X1_IfcSpace_type + }); + IFC4X1_IfcElement_type->set_subtypes({ + IFC4X1_IfcBuildingElement_type,IFC4X1_IfcCivilElement_type,IFC4X1_IfcDistributionElement_type,IFC4X1_IfcElementAssembly_type,IFC4X1_IfcElementComponent_type,IFC4X1_IfcFeatureElement_type,IFC4X1_IfcFurnishingElement_type,IFC4X1_IfcGeographicElement_type,IFC4X1_IfcTransportElement_type,IFC4X1_IfcVirtualElement_type + }); + IFC4X1_IfcElementComponent_type->set_subtypes({ + IFC4X1_IfcBuildingElementPart_type,IFC4X1_IfcDiscreteAccessory_type,IFC4X1_IfcFastener_type,IFC4X1_IfcMechanicalFastener_type,IFC4X1_IfcReinforcingElement_type,IFC4X1_IfcVibrationIsolator_type + }); + IFC4X1_IfcElementComponentType_type->set_subtypes({ + IFC4X1_IfcBuildingElementPartType_type,IFC4X1_IfcDiscreteAccessoryType_type,IFC4X1_IfcFastenerType_type,IFC4X1_IfcMechanicalFastenerType_type,IFC4X1_IfcReinforcingElementType_type,IFC4X1_IfcVibrationIsolatorType_type + }); + IFC4X1_IfcElementType_type->set_subtypes({ + IFC4X1_IfcBuildingElementType_type,IFC4X1_IfcCivilElementType_type,IFC4X1_IfcDistributionElementType_type,IFC4X1_IfcElementAssemblyType_type,IFC4X1_IfcElementComponentType_type,IFC4X1_IfcFurnishingElementType_type,IFC4X1_IfcGeographicElementType_type,IFC4X1_IfcTransportElementType_type + }); + IFC4X1_IfcSystem_type->set_subtypes({ + IFC4X1_IfcBuildingSystem_type,IFC4X1_IfcDistributionSystem_type,IFC4X1_IfcStructuralAnalysisModel_type,IFC4X1_IfcZone_type + }); + IFC4X1_IfcFlowFitting_type->set_subtypes({ + IFC4X1_IfcCableCarrierFitting_type,IFC4X1_IfcCableFitting_type,IFC4X1_IfcDuctFitting_type,IFC4X1_IfcJunctionBox_type,IFC4X1_IfcPipeFitting_type + }); + IFC4X1_IfcFlowFittingType_type->set_subtypes({ + IFC4X1_IfcCableCarrierFittingType_type,IFC4X1_IfcCableFittingType_type,IFC4X1_IfcDuctFittingType_type,IFC4X1_IfcJunctionBoxType_type,IFC4X1_IfcPipeFittingType_type + }); + IFC4X1_IfcFlowSegment_type->set_subtypes({ + IFC4X1_IfcCableCarrierSegment_type,IFC4X1_IfcCableSegment_type,IFC4X1_IfcDuctSegment_type,IFC4X1_IfcPipeSegment_type + }); + IFC4X1_IfcFlowSegmentType_type->set_subtypes({ + IFC4X1_IfcCableCarrierSegmentType_type,IFC4X1_IfcCableSegmentType_type,IFC4X1_IfcDuctSegmentType_type,IFC4X1_IfcPipeSegmentType_type + }); + IFC4X1_IfcPoint_type->set_subtypes({ + IFC4X1_IfcCartesianPoint_type,IFC4X1_IfcPointOnCurve_type,IFC4X1_IfcPointOnSurface_type + }); + IFC4X1_IfcCartesianPointList_type->set_subtypes({ + IFC4X1_IfcCartesianPointList2D_type,IFC4X1_IfcCartesianPointList3D_type + }); + IFC4X1_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X1_IfcCartesianTransformationOperator2D_type,IFC4X1_IfcCartesianTransformationOperator3D_type + }); + IFC4X1_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X1_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X1_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X1_IfcCenterLineProfileDef_type + }); + IFC4X1_IfcConic_type->set_subtypes({ + IFC4X1_IfcCircle_type,IFC4X1_IfcEllipse_type + }); + IFC4X1_IfcCircleProfileDef_type->set_subtypes({ + IFC4X1_IfcCircleHollowProfileDef_type + }); + IFC4X1_IfcCurveSegment2D_type->set_subtypes({ + IFC4X1_IfcCircularArcSegment2D_type,IFC4X1_IfcLineSegment2D_type,IFC4X1_IfcTransitionCurveSegment2D_type + }); + IFC4X1_IfcExternalInformation_type->set_subtypes({ + IFC4X1_IfcClassification_type,IFC4X1_IfcDocumentInformation_type,IFC4X1_IfcLibraryInformation_type + }); + IFC4X1_IfcExternalReference_type->set_subtypes({ + IFC4X1_IfcClassificationReference_type,IFC4X1_IfcDocumentReference_type,IFC4X1_IfcExternallyDefinedHatchStyle_type,IFC4X1_IfcExternallyDefinedSurfaceStyle_type,IFC4X1_IfcExternallyDefinedTextFont_type,IFC4X1_IfcLibraryReference_type + }); + IFC4X1_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X1_IfcClosedShell_type,IFC4X1_IfcOpenShell_type + }); + IFC4X1_IfcColourSpecification_type->set_subtypes({ + IFC4X1_IfcColourRgb_type + }); + IFC4X1_IfcPresentationItem_type->set_subtypes({ + IFC4X1_IfcColourRgbList_type,IFC4X1_IfcColourSpecification_type,IFC4X1_IfcCurveStyleFont_type,IFC4X1_IfcCurveStyleFontAndScaling_type,IFC4X1_IfcCurveStyleFontPattern_type,IFC4X1_IfcIndexedColourMap_type,IFC4X1_IfcPreDefinedItem_type,IFC4X1_IfcSurfaceStyleLighting_type,IFC4X1_IfcSurfaceStyleRefraction_type,IFC4X1_IfcSurfaceStyleShading_type,IFC4X1_IfcSurfaceStyleWithTextures_type,IFC4X1_IfcSurfaceTexture_type,IFC4X1_IfcTextStyleForDefinedFont_type,IFC4X1_IfcTextStyleTextModel_type,IFC4X1_IfcTextureCoordinate_type,IFC4X1_IfcTextureVertex_type,IFC4X1_IfcTextureVertexList_type + }); + IFC4X1_IfcColumn_type->set_subtypes({ + IFC4X1_IfcColumnStandardCase_type + }); + IFC4X1_IfcProperty_type->set_subtypes({ + IFC4X1_IfcComplexProperty_type,IFC4X1_IfcSimpleProperty_type + }); + IFC4X1_IfcPropertyTemplate_type->set_subtypes({ + IFC4X1_IfcComplexPropertyTemplate_type,IFC4X1_IfcSimplePropertyTemplate_type + }); + IFC4X1_IfcCompositeCurve_type->set_subtypes({ + IFC4X1_IfcCompositeCurveOnSurface_type + }); + IFC4X1_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X1_IfcCompressor_type,IFC4X1_IfcFan_type,IFC4X1_IfcPump_type + }); + IFC4X1_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X1_IfcCompressorType_type,IFC4X1_IfcFanType_type,IFC4X1_IfcPumpType_type + }); + IFC4X1_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X1_IfcConnectedFaceSet_type,IFC4X1_IfcEdge_type,IFC4X1_IfcFace_type,IFC4X1_IfcFaceBound_type,IFC4X1_IfcLoop_type,IFC4X1_IfcPath_type,IFC4X1_IfcVertex_type + }); + IFC4X1_IfcConnectionGeometry_type->set_subtypes({ + IFC4X1_IfcConnectionCurveGeometry_type,IFC4X1_IfcConnectionPointGeometry_type,IFC4X1_IfcConnectionSurfaceGeometry_type,IFC4X1_IfcConnectionVolumeGeometry_type + }); + IFC4X1_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X1_IfcConnectionPointEccentricity_type + }); + IFC4X1_IfcConstructionResource_type->set_subtypes({ + IFC4X1_IfcConstructionEquipmentResource_type,IFC4X1_IfcConstructionMaterialResource_type,IFC4X1_IfcConstructionProductResource_type,IFC4X1_IfcCrewResource_type,IFC4X1_IfcLaborResource_type,IFC4X1_IfcSubContractResource_type + }); + IFC4X1_IfcConstructionResourceType_type->set_subtypes({ + IFC4X1_IfcConstructionEquipmentResourceType_type,IFC4X1_IfcConstructionMaterialResourceType_type,IFC4X1_IfcConstructionProductResourceType_type,IFC4X1_IfcCrewResourceType_type,IFC4X1_IfcLaborResourceType_type,IFC4X1_IfcSubContractResourceType_type + }); + IFC4X1_IfcResource_type->set_subtypes({ + IFC4X1_IfcConstructionResource_type + }); + IFC4X1_IfcTypeResource_type->set_subtypes({ + IFC4X1_IfcConstructionResourceType_type + }); + IFC4X1_IfcObjectDefinition_type->set_subtypes({ + IFC4X1_IfcContext_type,IFC4X1_IfcObject_type,IFC4X1_IfcTypeObject_type + }); + IFC4X1_IfcNamedUnit_type->set_subtypes({ + IFC4X1_IfcContextDependentUnit_type,IFC4X1_IfcConversionBasedUnit_type,IFC4X1_IfcSIUnit_type + }); + IFC4X1_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X1_IfcConversionBasedUnitWithOffset_type + }); + IFC4X1_IfcAppliedValue_type->set_subtypes({ + IFC4X1_IfcCostValue_type + }); + IFC4X1_IfcSolidModel_type->set_subtypes({ + IFC4X1_IfcCsgSolid_type,IFC4X1_IfcManifoldSolidBrep_type,IFC4X1_IfcSectionedSolid_type,IFC4X1_IfcSweptAreaSolid_type,IFC4X1_IfcSweptDiskSolid_type + }); + IFC4X1_IfcPresentationStyle_type->set_subtypes({ + IFC4X1_IfcCurveStyle_type,IFC4X1_IfcFillAreaStyle_type,IFC4X1_IfcSurfaceStyle_type,IFC4X1_IfcTextStyle_type + }); + IFC4X1_IfcElementarySurface_type->set_subtypes({ + IFC4X1_IfcCylindricalSurface_type,IFC4X1_IfcPlane_type,IFC4X1_IfcSphericalSurface_type,IFC4X1_IfcToroidalSurface_type + }); + IFC4X1_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X1_IfcDistributionChamberElement_type,IFC4X1_IfcEnergyConversionDevice_type,IFC4X1_IfcFlowController_type,IFC4X1_IfcFlowFitting_type,IFC4X1_IfcFlowMovingDevice_type,IFC4X1_IfcFlowSegment_type,IFC4X1_IfcFlowStorageDevice_type,IFC4X1_IfcFlowTerminal_type,IFC4X1_IfcFlowTreatmentDevice_type + }); + IFC4X1_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X1_IfcDistributionChamberElementType_type,IFC4X1_IfcEnergyConversionDeviceType_type,IFC4X1_IfcFlowControllerType_type,IFC4X1_IfcFlowFittingType_type,IFC4X1_IfcFlowMovingDeviceType_type,IFC4X1_IfcFlowSegmentType_type,IFC4X1_IfcFlowStorageDeviceType_type,IFC4X1_IfcFlowTerminalType_type,IFC4X1_IfcFlowTreatmentDeviceType_type + }); + IFC4X1_IfcDistributionSystem_type->set_subtypes({ + IFC4X1_IfcDistributionCircuit_type + }); + IFC4X1_IfcDistributionElement_type->set_subtypes({ + IFC4X1_IfcDistributionControlElement_type,IFC4X1_IfcDistributionFlowElement_type + }); + IFC4X1_IfcDistributionElementType_type->set_subtypes({ + IFC4X1_IfcDistributionControlElementType_type,IFC4X1_IfcDistributionFlowElementType_type + }); + IFC4X1_IfcPort_type->set_subtypes({ + IFC4X1_IfcDistributionPort_type + }); + IFC4X1_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X1_IfcDoorLiningProperties_type,IFC4X1_IfcDoorPanelProperties_type,IFC4X1_IfcPermeableCoveringProperties_type,IFC4X1_IfcReinforcementDefinitionProperties_type,IFC4X1_IfcWindowLiningProperties_type,IFC4X1_IfcWindowPanelProperties_type + }); + IFC4X1_IfcDoor_type->set_subtypes({ + IFC4X1_IfcDoorStandardCase_type + }); + IFC4X1_IfcTypeProduct_type->set_subtypes({ + IFC4X1_IfcDoorStyle_type,IFC4X1_IfcElementType_type,IFC4X1_IfcSpatialElementType_type,IFC4X1_IfcWindowStyle_type + }); + IFC4X1_IfcPreDefinedColour_type->set_subtypes({ + IFC4X1_IfcDraughtingPreDefinedColour_type + }); + IFC4X1_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X1_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X1_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X1_IfcDuctSilencer_type,IFC4X1_IfcFilter_type,IFC4X1_IfcInterceptor_type + }); + IFC4X1_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X1_IfcDuctSilencerType_type,IFC4X1_IfcFilterType_type,IFC4X1_IfcInterceptorType_type + }); + IFC4X1_IfcEdge_type->set_subtypes({ + IFC4X1_IfcEdgeCurve_type,IFC4X1_IfcOrientedEdge_type,IFC4X1_IfcSubedge_type + }); + IFC4X1_IfcLoop_type->set_subtypes({ + IFC4X1_IfcEdgeLoop_type,IFC4X1_IfcPolyLoop_type,IFC4X1_IfcVertexLoop_type + }); + IFC4X1_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X1_IfcElectricFlowStorageDevice_type,IFC4X1_IfcTank_type + }); + IFC4X1_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X1_IfcElectricFlowStorageDeviceType_type,IFC4X1_IfcTankType_type + }); + IFC4X1_IfcQuantitySet_type->set_subtypes({ + IFC4X1_IfcElementQuantity_type + }); + IFC4X1_IfcProcess_type->set_subtypes({ + IFC4X1_IfcEvent_type,IFC4X1_IfcProcedure_type,IFC4X1_IfcTask_type + }); + IFC4X1_IfcSchedulingTime_type->set_subtypes({ + IFC4X1_IfcEventTime_type,IFC4X1_IfcLagTime_type,IFC4X1_IfcResourceTime_type,IFC4X1_IfcTaskTime_type,IFC4X1_IfcWorkTime_type + }); + IFC4X1_IfcTypeProcess_type->set_subtypes({ + IFC4X1_IfcEventType_type,IFC4X1_IfcProcedureType_type,IFC4X1_IfcTaskType_type + }); + IFC4X1_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X1_IfcExtendedProperties_type,IFC4X1_IfcPreDefinedProperties_type,IFC4X1_IfcProperty_type,IFC4X1_IfcPropertyEnumeration_type + }); + IFC4X1_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X1_IfcExternalSpatialElement_type + }); + IFC4X1_IfcSpatialElement_type->set_subtypes({ + IFC4X1_IfcExternalSpatialStructureElement_type,IFC4X1_IfcSpatialStructureElement_type,IFC4X1_IfcSpatialZone_type + }); + IFC4X1_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X1_IfcExtrudedAreaSolid_type,IFC4X1_IfcFixedReferenceSweptAreaSolid_type,IFC4X1_IfcRevolvedAreaSolid_type,IFC4X1_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X1_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X1_IfcExtrudedAreaSolidTapered_type + }); + IFC4X1_IfcFaceBound_type->set_subtypes({ + IFC4X1_IfcFaceOuterBound_type + }); + IFC4X1_IfcFace_type->set_subtypes({ + IFC4X1_IfcFaceSurface_type + }); + IFC4X1_IfcFacetedBrep_type->set_subtypes({ + IFC4X1_IfcFacetedBrepWithVoids_type + }); + IFC4X1_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X1_IfcFailureConnectionCondition_type,IFC4X1_IfcSlippageConnectionCondition_type + }); + IFC4X1_IfcFeatureElement_type->set_subtypes({ + IFC4X1_IfcFeatureElementAddition_type,IFC4X1_IfcFeatureElementSubtraction_type,IFC4X1_IfcSurfaceFeature_type + }); + IFC4X1_IfcFurnishingElement_type->set_subtypes({ + IFC4X1_IfcFurniture_type,IFC4X1_IfcSystemFurnitureElement_type + }); + IFC4X1_IfcFurnishingElementType_type->set_subtypes({ + IFC4X1_IfcFurnitureType_type,IFC4X1_IfcSystemFurnitureElementType_type + }); + IFC4X1_IfcGeometricSet_type->set_subtypes({ + IFC4X1_IfcGeometricCurveSet_type + }); + IFC4X1_IfcRepresentationContext_type->set_subtypes({ + IFC4X1_IfcGeometricRepresentationContext_type + }); + IFC4X1_IfcRepresentationItem_type->set_subtypes({ + IFC4X1_IfcGeometricRepresentationItem_type,IFC4X1_IfcMappedItem_type,IFC4X1_IfcStyledItem_type,IFC4X1_IfcTopologicalRepresentationItem_type + }); + IFC4X1_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X1_IfcGeometricRepresentationSubContext_type + }); + IFC4X1_IfcPositioningElement_type->set_subtypes({ + IFC4X1_IfcGrid_type,IFC4X1_IfcLinearPositioningElement_type,IFC4X1_IfcReferent_type + }); + IFC4X1_IfcObjectPlacement_type->set_subtypes({ + IFC4X1_IfcGridPlacement_type,IFC4X1_IfcLinearPlacement_type,IFC4X1_IfcLocalPlacement_type + }); + IFC4X1_IfcTessellatedItem_type->set_subtypes({ + IFC4X1_IfcIndexedPolygonalFace_type,IFC4X1_IfcTessellatedFaceSet_type + }); + IFC4X1_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X1_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X1_IfcTextureCoordinate_type->set_subtypes({ + IFC4X1_IfcIndexedTextureMap_type,IFC4X1_IfcTextureCoordinateGenerator_type,IFC4X1_IfcTextureMap_type + }); + IFC4X1_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X1_IfcIndexedTriangleTextureMap_type + }); + IFC4X1_IfcSurfaceCurve_type->set_subtypes({ + IFC4X1_IfcIntersectionCurve_type,IFC4X1_IfcSeamCurve_type + }); + IFC4X1_IfcTimeSeries_type->set_subtypes({ + IFC4X1_IfcIrregularTimeSeries_type,IFC4X1_IfcRegularTimeSeries_type + }); + IFC4X1_IfcLightSource_type->set_subtypes({ + IFC4X1_IfcLightSourceAmbient_type,IFC4X1_IfcLightSourceDirectional_type,IFC4X1_IfcLightSourceGoniometric_type,IFC4X1_IfcLightSourcePositional_type + }); + IFC4X1_IfcLightSourcePositional_type->set_subtypes({ + IFC4X1_IfcLightSourceSpot_type + }); + IFC4X1_IfcCoordinateOperation_type->set_subtypes({ + IFC4X1_IfcMapConversion_type + }); + IFC4X1_IfcMaterialDefinition_type->set_subtypes({ + IFC4X1_IfcMaterial_type,IFC4X1_IfcMaterialConstituent_type,IFC4X1_IfcMaterialConstituentSet_type,IFC4X1_IfcMaterialLayer_type,IFC4X1_IfcMaterialLayerSet_type,IFC4X1_IfcMaterialProfile_type,IFC4X1_IfcMaterialProfileSet_type + }); + IFC4X1_IfcProductRepresentation_type->set_subtypes({ + IFC4X1_IfcMaterialDefinitionRepresentation_type,IFC4X1_IfcProductDefinitionShape_type + }); + IFC4X1_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X1_IfcMaterialLayerSetUsage_type,IFC4X1_IfcMaterialProfileSetUsage_type + }); + IFC4X1_IfcMaterialLayer_type->set_subtypes({ + IFC4X1_IfcMaterialLayerWithOffsets_type + }); + IFC4X1_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X1_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X1_IfcMaterialProfile_type->set_subtypes({ + IFC4X1_IfcMaterialProfileWithOffsets_type + }); + IFC4X1_IfcExtendedProperties_type->set_subtypes({ + IFC4X1_IfcMaterialProperties_type,IFC4X1_IfcProfileProperties_type + }); + IFC4X1_IfcMember_type->set_subtypes({ + IFC4X1_IfcMemberStandardCase_type + }); + IFC4X1_IfcConstraint_type->set_subtypes({ + IFC4X1_IfcMetric_type,IFC4X1_IfcObjective_type + }); + IFC4X1_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X1_IfcMirroredProfileDef_type + }); + IFC4X1_IfcRoot_type->set_subtypes({ + IFC4X1_IfcObjectDefinition_type,IFC4X1_IfcPropertyDefinition_type,IFC4X1_IfcRelationship_type + }); + IFC4X1_IfcActor_type->set_subtypes({ + IFC4X1_IfcOccupant_type + }); + IFC4X1_IfcOffsetCurve_type->set_subtypes({ + IFC4X1_IfcOffsetCurve2D_type,IFC4X1_IfcOffsetCurve3D_type,IFC4X1_IfcOffsetCurveByDistances_type + }); + IFC4X1_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X1_IfcOpeningElement_type,IFC4X1_IfcVoidingFeature_type + }); + IFC4X1_IfcOpeningElement_type->set_subtypes({ + IFC4X1_IfcOpeningStandardCase_type + }); + IFC4X1_IfcBoundaryCurve_type->set_subtypes({ + IFC4X1_IfcOuterBoundaryCurve_type + }); + IFC4X1_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X1_IfcPhysicalComplexQuantity_type,IFC4X1_IfcPhysicalSimpleQuantity_type + }); + IFC4X1_IfcPlanarExtent_type->set_subtypes({ + IFC4X1_IfcPlanarBox_type + }); + IFC4X1_IfcPlate_type->set_subtypes({ + IFC4X1_IfcPlateStandardCase_type + }); + IFC4X1_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X1_IfcPolygonalFaceSet_type,IFC4X1_IfcTriangulatedFaceSet_type + }); + IFC4X1_IfcAddress_type->set_subtypes({ + IFC4X1_IfcPostalAddress_type,IFC4X1_IfcTelecomAddress_type + }); + IFC4X1_IfcPreDefinedItem_type->set_subtypes({ + IFC4X1_IfcPreDefinedColour_type,IFC4X1_IfcPreDefinedCurveFont_type,IFC4X1_IfcPreDefinedTextFont_type + }); + IFC4X1_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X1_IfcPreDefinedPropertySet_type,IFC4X1_IfcPropertySet_type,IFC4X1_IfcQuantitySet_type + }); + IFC4X1_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X1_IfcPresentationLayerWithStyle_type + }); + IFC4X1_IfcContext_type->set_subtypes({ + IFC4X1_IfcProject_type,IFC4X1_IfcProjectLibrary_type + }); + IFC4X1_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X1_IfcProjectedCRS_type + }); + IFC4X1_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X1_IfcProjectionElement_type + }); + IFC4X1_IfcSimpleProperty_type->set_subtypes({ + IFC4X1_IfcPropertyBoundedValue_type,IFC4X1_IfcPropertyEnumeratedValue_type,IFC4X1_IfcPropertyListValue_type,IFC4X1_IfcPropertyReferenceValue_type,IFC4X1_IfcPropertySingleValue_type,IFC4X1_IfcPropertyTableValue_type + }); + IFC4X1_IfcPropertyDefinition_type->set_subtypes({ + IFC4X1_IfcPropertySetDefinition_type,IFC4X1_IfcPropertyTemplateDefinition_type + }); + IFC4X1_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X1_IfcPropertySetTemplate_type,IFC4X1_IfcPropertyTemplate_type + }); + IFC4X1_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X1_IfcQuantityArea_type,IFC4X1_IfcQuantityCount_type,IFC4X1_IfcQuantityLength_type,IFC4X1_IfcQuantityTime_type,IFC4X1_IfcQuantityVolume_type,IFC4X1_IfcQuantityWeight_type + }); + IFC4X1_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X1_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X1_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X1_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X1_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X1_IfcRectangleHollowProfileDef_type,IFC4X1_IfcRoundedRectangleProfileDef_type + }); + IFC4X1_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X1_IfcReinforcementBarProperties_type,IFC4X1_IfcSectionProperties_type,IFC4X1_IfcSectionReinforcementProperties_type + }); + IFC4X1_IfcReinforcingElement_type->set_subtypes({ + IFC4X1_IfcReinforcingBar_type,IFC4X1_IfcReinforcingMesh_type,IFC4X1_IfcTendon_type,IFC4X1_IfcTendonAnchor_type + }); + IFC4X1_IfcReinforcingElementType_type->set_subtypes({ + IFC4X1_IfcReinforcingBarType_type,IFC4X1_IfcReinforcingMeshType_type,IFC4X1_IfcTendonAnchorType_type,IFC4X1_IfcTendonType_type + }); + IFC4X1_IfcRelDecomposes_type->set_subtypes({ + IFC4X1_IfcRelAggregates_type,IFC4X1_IfcRelNests_type,IFC4X1_IfcRelProjectsElement_type,IFC4X1_IfcRelVoidsElement_type + }); + IFC4X1_IfcRelationship_type->set_subtypes({ + IFC4X1_IfcRelAssigns_type,IFC4X1_IfcRelAssociates_type,IFC4X1_IfcRelConnects_type,IFC4X1_IfcRelDeclares_type,IFC4X1_IfcRelDecomposes_type,IFC4X1_IfcRelDefines_type + }); + IFC4X1_IfcRelAssigns_type->set_subtypes({ + IFC4X1_IfcRelAssignsToActor_type,IFC4X1_IfcRelAssignsToControl_type,IFC4X1_IfcRelAssignsToGroup_type,IFC4X1_IfcRelAssignsToProcess_type,IFC4X1_IfcRelAssignsToProduct_type,IFC4X1_IfcRelAssignsToResource_type + }); + IFC4X1_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X1_IfcRelAssignsToGroupByFactor_type + }); + IFC4X1_IfcRelAssociates_type->set_subtypes({ + IFC4X1_IfcRelAssociatesApproval_type,IFC4X1_IfcRelAssociatesClassification_type,IFC4X1_IfcRelAssociatesConstraint_type,IFC4X1_IfcRelAssociatesDocument_type,IFC4X1_IfcRelAssociatesLibrary_type,IFC4X1_IfcRelAssociatesMaterial_type + }); + IFC4X1_IfcRelConnects_type->set_subtypes({ + IFC4X1_IfcRelConnectsElements_type,IFC4X1_IfcRelConnectsPortToElement_type,IFC4X1_IfcRelConnectsPorts_type,IFC4X1_IfcRelConnectsStructuralActivity_type,IFC4X1_IfcRelConnectsStructuralMember_type,IFC4X1_IfcRelContainedInSpatialStructure_type,IFC4X1_IfcRelCoversBldgElements_type,IFC4X1_IfcRelCoversSpaces_type,IFC4X1_IfcRelFillsElement_type,IFC4X1_IfcRelFlowControlElements_type,IFC4X1_IfcRelInterferesElements_type,IFC4X1_IfcRelReferencedInSpatialStructure_type,IFC4X1_IfcRelSequence_type,IFC4X1_IfcRelServicesBuildings_type,IFC4X1_IfcRelSpaceBoundary_type + }); + IFC4X1_IfcRelConnectsElements_type->set_subtypes({ + IFC4X1_IfcRelConnectsPathElements_type,IFC4X1_IfcRelConnectsWithRealizingElements_type + }); + IFC4X1_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X1_IfcRelConnectsWithEccentricity_type + }); + IFC4X1_IfcRelDefines_type->set_subtypes({ + IFC4X1_IfcRelDefinesByObject_type,IFC4X1_IfcRelDefinesByProperties_type,IFC4X1_IfcRelDefinesByTemplate_type,IFC4X1_IfcRelDefinesByType_type + }); + IFC4X1_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X1_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X1_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X1_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X1_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X1_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X1_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X1_IfcRevolvedAreaSolidTapered_type + }); + IFC4X1_IfcSectionedSolid_type->set_subtypes({ + IFC4X1_IfcSectionedSolidHorizontal_type + }); + IFC4X1_IfcRepresentation_type->set_subtypes({ + IFC4X1_IfcShapeModel_type,IFC4X1_IfcStyleModel_type + }); + IFC4X1_IfcShapeModel_type->set_subtypes({ + IFC4X1_IfcShapeRepresentation_type,IFC4X1_IfcTopologyRepresentation_type + }); + IFC4X1_IfcSlab_type->set_subtypes({ + IFC4X1_IfcSlabElementedCase_type,IFC4X1_IfcSlabStandardCase_type + }); + IFC4X1_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X1_IfcSpaceType_type + }); + IFC4X1_IfcSpatialElementType_type->set_subtypes({ + IFC4X1_IfcSpatialStructureElementType_type,IFC4X1_IfcSpatialZoneType_type + }); + IFC4X1_IfcStructuralActivity_type->set_subtypes({ + IFC4X1_IfcStructuralAction_type,IFC4X1_IfcStructuralReaction_type + }); + IFC4X1_IfcStructuralItem_type->set_subtypes({ + IFC4X1_IfcStructuralConnection_type,IFC4X1_IfcStructuralMember_type + }); + IFC4X1_IfcStructuralAction_type->set_subtypes({ + IFC4X1_IfcStructuralCurveAction_type,IFC4X1_IfcStructuralPointAction_type,IFC4X1_IfcStructuralSurfaceAction_type + }); + IFC4X1_IfcStructuralConnection_type->set_subtypes({ + IFC4X1_IfcStructuralCurveConnection_type,IFC4X1_IfcStructuralPointConnection_type,IFC4X1_IfcStructuralSurfaceConnection_type + }); + IFC4X1_IfcStructuralMember_type->set_subtypes({ + IFC4X1_IfcStructuralCurveMember_type,IFC4X1_IfcStructuralSurfaceMember_type + }); + IFC4X1_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X1_IfcStructuralCurveMemberVarying_type + }); + IFC4X1_IfcStructuralReaction_type->set_subtypes({ + IFC4X1_IfcStructuralCurveReaction_type,IFC4X1_IfcStructuralPointReaction_type,IFC4X1_IfcStructuralSurfaceReaction_type + }); + IFC4X1_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X1_IfcStructuralLinearAction_type + }); + IFC4X1_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X1_IfcStructuralLoadCase_type + }); + IFC4X1_IfcStructuralLoad_type->set_subtypes({ + IFC4X1_IfcStructuralLoadConfiguration_type,IFC4X1_IfcStructuralLoadOrResult_type + }); + IFC4X1_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X1_IfcStructuralLoadLinearForce_type,IFC4X1_IfcStructuralLoadPlanarForce_type,IFC4X1_IfcStructuralLoadSingleDisplacement_type,IFC4X1_IfcStructuralLoadSingleForce_type,IFC4X1_IfcStructuralLoadTemperature_type + }); + IFC4X1_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X1_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X1_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X1_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X1_IfcStructuralLoadStatic_type,IFC4X1_IfcSurfaceReinforcementArea_type + }); + IFC4X1_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X1_IfcStructuralPlanarAction_type + }); + IFC4X1_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X1_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X1_IfcStyleModel_type->set_subtypes({ + IFC4X1_IfcStyledRepresentation_type + }); + IFC4X1_IfcSweptSurface_type->set_subtypes({ + IFC4X1_IfcSurfaceOfLinearExtrusion_type,IFC4X1_IfcSurfaceOfRevolution_type + }); + IFC4X1_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X1_IfcSurfaceStyleRendering_type + }); + IFC4X1_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X1_IfcSweptDiskSolidPolygonal_type + }); + IFC4X1_IfcTaskTime_type->set_subtypes({ + IFC4X1_IfcTaskTimeRecurring_type + }); + IFC4X1_IfcTextLiteral_type->set_subtypes({ + IFC4X1_IfcTextLiteralWithExtent_type + }); + IFC4X1_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X1_IfcTextStyleFontModel_type + }); + IFC4X1_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X1_IfcTriangulatedIrregularNetwork_type + }); + IFC4X1_IfcTypeObject_type->set_subtypes({ + IFC4X1_IfcTypeProcess_type,IFC4X1_IfcTypeProduct_type,IFC4X1_IfcTypeResource_type + }); + IFC4X1_IfcVertex_type->set_subtypes({ + IFC4X1_IfcVertexPoint_type + }); + IFC4X1_IfcWall_type->set_subtypes({ + IFC4X1_IfcWallElementedCase_type,IFC4X1_IfcWallStandardCase_type + }); + IFC4X1_IfcWindow_type->set_subtypes({ + IFC4X1_IfcWindowStandardCase_type + }); + IFC4X1_IfcWorkControl_type->set_subtypes({ + IFC4X1_IfcWorkPlan_type,IFC4X1_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1201); - declarations.push_back(IFC4X1_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X1_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X1_IfcActionRequest_type); - declarations.push_back(IFC4X1_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X1_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcActionTypeEnum_type); - declarations.push_back(IFC4X1_IfcActor_type); - declarations.push_back(IFC4X1_IfcActorRole_type); - declarations.push_back(IFC4X1_IfcActorSelect_type); - declarations.push_back(IFC4X1_IfcActuator_type); - declarations.push_back(IFC4X1_IfcActuatorType_type); - declarations.push_back(IFC4X1_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X1_IfcAddress_type); - declarations.push_back(IFC4X1_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X1_IfcAdvancedBrep_type); - declarations.push_back(IFC4X1_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X1_IfcAdvancedFace_type); - declarations.push_back(IFC4X1_IfcAirTerminal_type); - declarations.push_back(IFC4X1_IfcAirTerminalBox_type); - declarations.push_back(IFC4X1_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X1_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X1_IfcAirTerminalType_type); - declarations.push_back(IFC4X1_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X1_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X1_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X1_IfcAlarm_type); - declarations.push_back(IFC4X1_IfcAlarmType_type); - declarations.push_back(IFC4X1_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X1_IfcAlignment_type); - declarations.push_back(IFC4X1_IfcAlignment2DHorizontal_type); - declarations.push_back(IFC4X1_IfcAlignment2DHorizontalSegment_type); - declarations.push_back(IFC4X1_IfcAlignment2DSegment_type); - declarations.push_back(IFC4X1_IfcAlignment2DVerSegCircularArc_type); - declarations.push_back(IFC4X1_IfcAlignment2DVerSegLine_type); - declarations.push_back(IFC4X1_IfcAlignment2DVerSegParabolicArc_type); - declarations.push_back(IFC4X1_IfcAlignment2DVertical_type); - declarations.push_back(IFC4X1_IfcAlignment2DVerticalSegment_type); - declarations.push_back(IFC4X1_IfcAlignmentCurve_type); - declarations.push_back(IFC4X1_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X1_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X1_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X1_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X1_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X1_IfcAnnotation_type); - declarations.push_back(IFC4X1_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X1_IfcApplication_type); - declarations.push_back(IFC4X1_IfcAppliedValue_type); - declarations.push_back(IFC4X1_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X1_IfcApproval_type); - declarations.push_back(IFC4X1_IfcApprovalRelationship_type); - declarations.push_back(IFC4X1_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X1_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X1_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X1_IfcArcIndex_type); - declarations.push_back(IFC4X1_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X1_IfcAreaMeasure_type); - declarations.push_back(IFC4X1_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X1_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X1_IfcAsset_type); - declarations.push_back(IFC4X1_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X1_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X1_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X1_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X1_IfcAxis1Placement_type); - declarations.push_back(IFC4X1_IfcAxis2Placement_type); - declarations.push_back(IFC4X1_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X1_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X1_IfcBeam_type); - declarations.push_back(IFC4X1_IfcBeamStandardCase_type); - declarations.push_back(IFC4X1_IfcBeamType_type); - declarations.push_back(IFC4X1_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X1_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X1_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X1_IfcBinary_type); - declarations.push_back(IFC4X1_IfcBlobTexture_type); - declarations.push_back(IFC4X1_IfcBlock_type); - declarations.push_back(IFC4X1_IfcBoiler_type); - declarations.push_back(IFC4X1_IfcBoilerType_type); - declarations.push_back(IFC4X1_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X1_IfcBoolean_type); - declarations.push_back(IFC4X1_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X1_IfcBooleanOperand_type); - declarations.push_back(IFC4X1_IfcBooleanOperator_type); - declarations.push_back(IFC4X1_IfcBooleanResult_type); - declarations.push_back(IFC4X1_IfcBoundaryCondition_type); - declarations.push_back(IFC4X1_IfcBoundaryCurve_type); - declarations.push_back(IFC4X1_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X1_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X1_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X1_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X1_IfcBoundedCurve_type); - declarations.push_back(IFC4X1_IfcBoundedSurface_type); - declarations.push_back(IFC4X1_IfcBoundingBox_type); - declarations.push_back(IFC4X1_IfcBoxAlignment_type); - declarations.push_back(IFC4X1_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X1_IfcBSplineCurve_type); - declarations.push_back(IFC4X1_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X1_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X1_IfcBSplineSurface_type); - declarations.push_back(IFC4X1_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X1_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X1_IfcBuilding_type); - declarations.push_back(IFC4X1_IfcBuildingElement_type); - declarations.push_back(IFC4X1_IfcBuildingElementPart_type); - declarations.push_back(IFC4X1_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X1_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X1_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X1_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X1_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X1_IfcBuildingElementType_type); - declarations.push_back(IFC4X1_IfcBuildingStorey_type); - declarations.push_back(IFC4X1_IfcBuildingSystem_type); - declarations.push_back(IFC4X1_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X1_IfcBurner_type); - declarations.push_back(IFC4X1_IfcBurnerType_type); - declarations.push_back(IFC4X1_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X1_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X1_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X1_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X1_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X1_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X1_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X1_IfcCableFitting_type); - declarations.push_back(IFC4X1_IfcCableFittingType_type); - declarations.push_back(IFC4X1_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X1_IfcCableSegment_type); - declarations.push_back(IFC4X1_IfcCableSegmentType_type); - declarations.push_back(IFC4X1_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X1_IfcCardinalPointReference_type); - declarations.push_back(IFC4X1_IfcCartesianPoint_type); - declarations.push_back(IFC4X1_IfcCartesianPointList_type); - declarations.push_back(IFC4X1_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X1_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X1_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X1_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X1_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X1_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X1_IfcChangeActionEnum_type); - declarations.push_back(IFC4X1_IfcChiller_type); - declarations.push_back(IFC4X1_IfcChillerType_type); - declarations.push_back(IFC4X1_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X1_IfcChimney_type); - declarations.push_back(IFC4X1_IfcChimneyType_type); - declarations.push_back(IFC4X1_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X1_IfcCircle_type); - declarations.push_back(IFC4X1_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X1_IfcCircleProfileDef_type); - declarations.push_back(IFC4X1_IfcCircularArcSegment2D_type); - declarations.push_back(IFC4X1_IfcCivilElement_type); - declarations.push_back(IFC4X1_IfcCivilElementType_type); - declarations.push_back(IFC4X1_IfcClassification_type); - declarations.push_back(IFC4X1_IfcClassificationReference_type); - declarations.push_back(IFC4X1_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X1_IfcClassificationSelect_type); - declarations.push_back(IFC4X1_IfcClosedShell_type); - declarations.push_back(IFC4X1_IfcCoil_type); - declarations.push_back(IFC4X1_IfcCoilType_type); - declarations.push_back(IFC4X1_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X1_IfcColour_type); - declarations.push_back(IFC4X1_IfcColourOrFactor_type); - declarations.push_back(IFC4X1_IfcColourRgb_type); - declarations.push_back(IFC4X1_IfcColourRgbList_type); - declarations.push_back(IFC4X1_IfcColourSpecification_type); - declarations.push_back(IFC4X1_IfcColumn_type); - declarations.push_back(IFC4X1_IfcColumnStandardCase_type); - declarations.push_back(IFC4X1_IfcColumnType_type); - declarations.push_back(IFC4X1_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X1_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X1_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X1_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X1_IfcComplexNumber_type); - declarations.push_back(IFC4X1_IfcComplexProperty_type); - declarations.push_back(IFC4X1_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X1_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X1_IfcCompositeCurve_type); - declarations.push_back(IFC4X1_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X1_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X1_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X1_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X1_IfcCompressor_type); - declarations.push_back(IFC4X1_IfcCompressorType_type); - declarations.push_back(IFC4X1_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X1_IfcCondenser_type); - declarations.push_back(IFC4X1_IfcCondenserType_type); - declarations.push_back(IFC4X1_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X1_IfcConic_type); - declarations.push_back(IFC4X1_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X1_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X1_IfcConnectionGeometry_type); - declarations.push_back(IFC4X1_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X1_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X1_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X1_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X1_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X1_IfcConstraint_type); - declarations.push_back(IFC4X1_IfcConstraintEnum_type); - declarations.push_back(IFC4X1_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X1_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X1_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X1_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcConstructionProductResource_type); - declarations.push_back(IFC4X1_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X1_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcConstructionResource_type); - declarations.push_back(IFC4X1_IfcConstructionResourceType_type); - declarations.push_back(IFC4X1_IfcContext_type); - declarations.push_back(IFC4X1_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X1_IfcContextDependentUnit_type); - declarations.push_back(IFC4X1_IfcControl_type); - declarations.push_back(IFC4X1_IfcController_type); - declarations.push_back(IFC4X1_IfcControllerType_type); - declarations.push_back(IFC4X1_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X1_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X1_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X1_IfcCooledBeam_type); - declarations.push_back(IFC4X1_IfcCooledBeamType_type); - declarations.push_back(IFC4X1_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X1_IfcCoolingTower_type); - declarations.push_back(IFC4X1_IfcCoolingTowerType_type); - declarations.push_back(IFC4X1_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X1_IfcCoordinateOperation_type); - declarations.push_back(IFC4X1_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X1_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X1_IfcCostItem_type); - declarations.push_back(IFC4X1_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X1_IfcCostSchedule_type); - declarations.push_back(IFC4X1_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X1_IfcCostValue_type); - declarations.push_back(IFC4X1_IfcCountMeasure_type); - declarations.push_back(IFC4X1_IfcCovering_type); - declarations.push_back(IFC4X1_IfcCoveringType_type); - declarations.push_back(IFC4X1_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X1_IfcCrewResource_type); - declarations.push_back(IFC4X1_IfcCrewResourceType_type); - declarations.push_back(IFC4X1_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X1_IfcCsgSelect_type); - declarations.push_back(IFC4X1_IfcCsgSolid_type); - declarations.push_back(IFC4X1_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X1_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X1_IfcCurtainWall_type); - declarations.push_back(IFC4X1_IfcCurtainWallType_type); - declarations.push_back(IFC4X1_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X1_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X1_IfcCurve_type); - declarations.push_back(IFC4X1_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X1_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X1_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X1_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X1_IfcCurveOnSurface_type); - declarations.push_back(IFC4X1_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X1_IfcCurveSegment2D_type); - declarations.push_back(IFC4X1_IfcCurveStyle_type); - declarations.push_back(IFC4X1_IfcCurveStyleFont_type); - declarations.push_back(IFC4X1_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X1_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X1_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X1_IfcCylindricalSurface_type); - declarations.push_back(IFC4X1_IfcDamper_type); - declarations.push_back(IFC4X1_IfcDamperType_type); - declarations.push_back(IFC4X1_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X1_IfcDataOriginEnum_type); - declarations.push_back(IFC4X1_IfcDate_type); - declarations.push_back(IFC4X1_IfcDateTime_type); - declarations.push_back(IFC4X1_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X1_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X1_IfcDefinitionSelect_type); - declarations.push_back(IFC4X1_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X1_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X1_IfcDerivedUnit_type); - declarations.push_back(IFC4X1_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X1_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X1_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X1_IfcDimensionalExponents_type); - declarations.push_back(IFC4X1_IfcDimensionCount_type); - declarations.push_back(IFC4X1_IfcDirection_type); - declarations.push_back(IFC4X1_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X1_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X1_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X1_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X1_IfcDistanceExpression_type); - declarations.push_back(IFC4X1_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X1_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X1_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcDistributionCircuit_type); - declarations.push_back(IFC4X1_IfcDistributionControlElement_type); - declarations.push_back(IFC4X1_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X1_IfcDistributionElement_type); - declarations.push_back(IFC4X1_IfcDistributionElementType_type); - declarations.push_back(IFC4X1_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X1_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X1_IfcDistributionPort_type); - declarations.push_back(IFC4X1_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X1_IfcDistributionSystem_type); - declarations.push_back(IFC4X1_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X1_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X1_IfcDocumentInformation_type); - declarations.push_back(IFC4X1_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X1_IfcDocumentReference_type); - declarations.push_back(IFC4X1_IfcDocumentSelect_type); - declarations.push_back(IFC4X1_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X1_IfcDoor_type); - declarations.push_back(IFC4X1_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X1_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X1_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X1_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X1_IfcDoorStandardCase_type); - declarations.push_back(IFC4X1_IfcDoorStyle_type); - declarations.push_back(IFC4X1_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4X1_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4X1_IfcDoorType_type); - declarations.push_back(IFC4X1_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X1_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X1_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X1_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X1_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X1_IfcDuctFitting_type); - declarations.push_back(IFC4X1_IfcDuctFittingType_type); - declarations.push_back(IFC4X1_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X1_IfcDuctSegment_type); - declarations.push_back(IFC4X1_IfcDuctSegmentType_type); - declarations.push_back(IFC4X1_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X1_IfcDuctSilencer_type); - declarations.push_back(IFC4X1_IfcDuctSilencerType_type); - declarations.push_back(IFC4X1_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X1_IfcDuration_type); - declarations.push_back(IFC4X1_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X1_IfcEdge_type); - declarations.push_back(IFC4X1_IfcEdgeCurve_type); - declarations.push_back(IFC4X1_IfcEdgeLoop_type); - declarations.push_back(IFC4X1_IfcElectricAppliance_type); - declarations.push_back(IFC4X1_IfcElectricApplianceType_type); - declarations.push_back(IFC4X1_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X1_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X1_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X1_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X1_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X1_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X1_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X1_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X1_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X1_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X1_IfcElectricGenerator_type); - declarations.push_back(IFC4X1_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X1_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X1_IfcElectricMotor_type); - declarations.push_back(IFC4X1_IfcElectricMotorType_type); - declarations.push_back(IFC4X1_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X1_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X1_IfcElectricTimeControl_type); - declarations.push_back(IFC4X1_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X1_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X1_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X1_IfcElement_type); - declarations.push_back(IFC4X1_IfcElementarySurface_type); - declarations.push_back(IFC4X1_IfcElementAssembly_type); - declarations.push_back(IFC4X1_IfcElementAssemblyType_type); - declarations.push_back(IFC4X1_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X1_IfcElementComponent_type); - declarations.push_back(IFC4X1_IfcElementComponentType_type); - declarations.push_back(IFC4X1_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X1_IfcElementQuantity_type); - declarations.push_back(IFC4X1_IfcElementType_type); - declarations.push_back(IFC4X1_IfcEllipse_type); - declarations.push_back(IFC4X1_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X1_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X1_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X1_IfcEnergyMeasure_type); - declarations.push_back(IFC4X1_IfcEngine_type); - declarations.push_back(IFC4X1_IfcEngineType_type); - declarations.push_back(IFC4X1_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X1_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X1_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X1_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X1_IfcEvaporator_type); - declarations.push_back(IFC4X1_IfcEvaporatorType_type); - declarations.push_back(IFC4X1_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X1_IfcEvent_type); - declarations.push_back(IFC4X1_IfcEventTime_type); - declarations.push_back(IFC4X1_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X1_IfcEventType_type); - declarations.push_back(IFC4X1_IfcEventTypeEnum_type); - declarations.push_back(IFC4X1_IfcExtendedProperties_type); - declarations.push_back(IFC4X1_IfcExternalInformation_type); - declarations.push_back(IFC4X1_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X1_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X1_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X1_IfcExternalReference_type); - declarations.push_back(IFC4X1_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X1_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X1_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X1_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X1_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X1_IfcFace_type); - declarations.push_back(IFC4X1_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X1_IfcFaceBound_type); - declarations.push_back(IFC4X1_IfcFaceOuterBound_type); - declarations.push_back(IFC4X1_IfcFaceSurface_type); - declarations.push_back(IFC4X1_IfcFacetedBrep_type); - declarations.push_back(IFC4X1_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X1_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X1_IfcFan_type); - declarations.push_back(IFC4X1_IfcFanType_type); - declarations.push_back(IFC4X1_IfcFanTypeEnum_type); - declarations.push_back(IFC4X1_IfcFastener_type); - declarations.push_back(IFC4X1_IfcFastenerType_type); - declarations.push_back(IFC4X1_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X1_IfcFeatureElement_type); - declarations.push_back(IFC4X1_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X1_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X1_IfcFillAreaStyle_type); - declarations.push_back(IFC4X1_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X1_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X1_IfcFillStyleSelect_type); - declarations.push_back(IFC4X1_IfcFilter_type); - declarations.push_back(IFC4X1_IfcFilterType_type); - declarations.push_back(IFC4X1_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X1_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X1_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X1_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X1_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X1_IfcFlowController_type); - declarations.push_back(IFC4X1_IfcFlowControllerType_type); - declarations.push_back(IFC4X1_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X1_IfcFlowFitting_type); - declarations.push_back(IFC4X1_IfcFlowFittingType_type); - declarations.push_back(IFC4X1_IfcFlowInstrument_type); - declarations.push_back(IFC4X1_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X1_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X1_IfcFlowMeter_type); - declarations.push_back(IFC4X1_IfcFlowMeterType_type); - declarations.push_back(IFC4X1_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X1_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X1_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X1_IfcFlowSegment_type); - declarations.push_back(IFC4X1_IfcFlowSegmentType_type); - declarations.push_back(IFC4X1_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X1_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X1_IfcFlowTerminal_type); - declarations.push_back(IFC4X1_IfcFlowTerminalType_type); - declarations.push_back(IFC4X1_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X1_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X1_IfcFontStyle_type); - declarations.push_back(IFC4X1_IfcFontVariant_type); - declarations.push_back(IFC4X1_IfcFontWeight_type); - declarations.push_back(IFC4X1_IfcFooting_type); - declarations.push_back(IFC4X1_IfcFootingType_type); - declarations.push_back(IFC4X1_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X1_IfcForceMeasure_type); - declarations.push_back(IFC4X1_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X1_IfcFurnishingElement_type); - declarations.push_back(IFC4X1_IfcFurnishingElementType_type); - declarations.push_back(IFC4X1_IfcFurniture_type); - declarations.push_back(IFC4X1_IfcFurnitureType_type); - declarations.push_back(IFC4X1_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X1_IfcGeographicElement_type); - declarations.push_back(IFC4X1_IfcGeographicElementType_type); - declarations.push_back(IFC4X1_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X1_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X1_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X1_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X1_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X1_IfcGeometricSet_type); - declarations.push_back(IFC4X1_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X1_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X1_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X1_IfcGrid_type); - declarations.push_back(IFC4X1_IfcGridAxis_type); - declarations.push_back(IFC4X1_IfcGridPlacement_type); - declarations.push_back(IFC4X1_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X1_IfcGridTypeEnum_type); - declarations.push_back(IFC4X1_IfcGroup_type); - declarations.push_back(IFC4X1_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X1_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X1_IfcHeatExchanger_type); - declarations.push_back(IFC4X1_IfcHeatExchangerType_type); - declarations.push_back(IFC4X1_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X1_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X1_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X1_IfcHumidifier_type); - declarations.push_back(IFC4X1_IfcHumidifierType_type); - declarations.push_back(IFC4X1_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X1_IfcIdentifier_type); - declarations.push_back(IFC4X1_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X1_IfcImageTexture_type); - declarations.push_back(IFC4X1_IfcIndexedColourMap_type); - declarations.push_back(IFC4X1_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X1_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X1_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X1_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X1_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X1_IfcInductanceMeasure_type); - declarations.push_back(IFC4X1_IfcInteger_type); - declarations.push_back(IFC4X1_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X1_IfcInterceptor_type); - declarations.push_back(IFC4X1_IfcInterceptorType_type); - declarations.push_back(IFC4X1_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X1_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X1_IfcIntersectionCurve_type); - declarations.push_back(IFC4X1_IfcInventory_type); - declarations.push_back(IFC4X1_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X1_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X1_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X1_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X1_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X1_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X1_IfcJunctionBox_type); - declarations.push_back(IFC4X1_IfcJunctionBoxType_type); - declarations.push_back(IFC4X1_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X1_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X1_IfcKnotType_type); - declarations.push_back(IFC4X1_IfcLabel_type); - declarations.push_back(IFC4X1_IfcLaborResource_type); - declarations.push_back(IFC4X1_IfcLaborResourceType_type); - declarations.push_back(IFC4X1_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcLagTime_type); - declarations.push_back(IFC4X1_IfcLamp_type); - declarations.push_back(IFC4X1_IfcLampType_type); - declarations.push_back(IFC4X1_IfcLampTypeEnum_type); - declarations.push_back(IFC4X1_IfcLanguageId_type); - declarations.push_back(IFC4X1_IfcLayeredItem_type); - declarations.push_back(IFC4X1_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X1_IfcLengthMeasure_type); - declarations.push_back(IFC4X1_IfcLibraryInformation_type); - declarations.push_back(IFC4X1_IfcLibraryReference_type); - declarations.push_back(IFC4X1_IfcLibrarySelect_type); - declarations.push_back(IFC4X1_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X1_IfcLightDistributionData_type); - declarations.push_back(IFC4X1_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X1_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X1_IfcLightFixture_type); - declarations.push_back(IFC4X1_IfcLightFixtureType_type); - declarations.push_back(IFC4X1_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X1_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X1_IfcLightSource_type); - declarations.push_back(IFC4X1_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X1_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X1_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X1_IfcLightSourcePositional_type); - declarations.push_back(IFC4X1_IfcLightSourceSpot_type); - declarations.push_back(IFC4X1_IfcLine_type); - declarations.push_back(IFC4X1_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X1_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X1_IfcLinearPlacement_type); - declarations.push_back(IFC4X1_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X1_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X1_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X1_IfcLineIndex_type); - declarations.push_back(IFC4X1_IfcLineSegment2D_type); - declarations.push_back(IFC4X1_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X1_IfcLocalPlacement_type); - declarations.push_back(IFC4X1_IfcLogical_type); - declarations.push_back(IFC4X1_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X1_IfcLoop_type); - declarations.push_back(IFC4X1_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X1_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X1_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X1_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X1_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X1_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X1_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X1_IfcMapConversion_type); - declarations.push_back(IFC4X1_IfcMappedItem_type); - declarations.push_back(IFC4X1_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X1_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X1_IfcMassMeasure_type); - declarations.push_back(IFC4X1_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X1_IfcMaterial_type); - declarations.push_back(IFC4X1_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X1_IfcMaterialConstituent_type); - declarations.push_back(IFC4X1_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X1_IfcMaterialDefinition_type); - declarations.push_back(IFC4X1_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X1_IfcMaterialLayer_type); - declarations.push_back(IFC4X1_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X1_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X1_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X1_IfcMaterialList_type); - declarations.push_back(IFC4X1_IfcMaterialProfile_type); - declarations.push_back(IFC4X1_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X1_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X1_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X1_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X1_IfcMaterialProperties_type); - declarations.push_back(IFC4X1_IfcMaterialRelationship_type); - declarations.push_back(IFC4X1_IfcMaterialSelect_type); - declarations.push_back(IFC4X1_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X1_IfcMeasureValue_type); - declarations.push_back(IFC4X1_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X1_IfcMechanicalFastener_type); - declarations.push_back(IFC4X1_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X1_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X1_IfcMedicalDevice_type); - declarations.push_back(IFC4X1_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X1_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X1_IfcMember_type); - declarations.push_back(IFC4X1_IfcMemberStandardCase_type); - declarations.push_back(IFC4X1_IfcMemberType_type); - declarations.push_back(IFC4X1_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X1_IfcMetric_type); - declarations.push_back(IFC4X1_IfcMetricValueSelect_type); - declarations.push_back(IFC4X1_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X1_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X1_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X1_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X1_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X1_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X1_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X1_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X1_IfcMonetaryUnit_type); - declarations.push_back(IFC4X1_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X1_IfcMotorConnection_type); - declarations.push_back(IFC4X1_IfcMotorConnectionType_type); - declarations.push_back(IFC4X1_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X1_IfcNamedUnit_type); - declarations.push_back(IFC4X1_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X1_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X1_IfcNullStyle_type); - declarations.push_back(IFC4X1_IfcNumericMeasure_type); - declarations.push_back(IFC4X1_IfcObject_type); - declarations.push_back(IFC4X1_IfcObjectDefinition_type); - declarations.push_back(IFC4X1_IfcObjective_type); - declarations.push_back(IFC4X1_IfcObjectiveEnum_type); - declarations.push_back(IFC4X1_IfcObjectPlacement_type); - declarations.push_back(IFC4X1_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X1_IfcObjectTypeEnum_type); - declarations.push_back(IFC4X1_IfcOccupant_type); - declarations.push_back(IFC4X1_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X1_IfcOffsetCurve_type); - declarations.push_back(IFC4X1_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X1_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X1_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X1_IfcOpeningElement_type); - declarations.push_back(IFC4X1_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcOpeningStandardCase_type); - declarations.push_back(IFC4X1_IfcOpenShell_type); - declarations.push_back(IFC4X1_IfcOrganization_type); - declarations.push_back(IFC4X1_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X1_IfcOrientationExpression_type); - declarations.push_back(IFC4X1_IfcOrientedEdge_type); - declarations.push_back(IFC4X1_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X1_IfcOutlet_type); - declarations.push_back(IFC4X1_IfcOutletType_type); - declarations.push_back(IFC4X1_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X1_IfcOwnerHistory_type); - declarations.push_back(IFC4X1_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X1_IfcParameterValue_type); - declarations.push_back(IFC4X1_IfcPath_type); - declarations.push_back(IFC4X1_IfcPcurve_type); - declarations.push_back(IFC4X1_IfcPerformanceHistory_type); - declarations.push_back(IFC4X1_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X1_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X1_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X1_IfcPermit_type); - declarations.push_back(IFC4X1_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X1_IfcPerson_type); - declarations.push_back(IFC4X1_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X1_IfcPHMeasure_type); - declarations.push_back(IFC4X1_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X1_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X1_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X1_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X1_IfcPile_type); - declarations.push_back(IFC4X1_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X1_IfcPileType_type); - declarations.push_back(IFC4X1_IfcPileTypeEnum_type); - declarations.push_back(IFC4X1_IfcPipeFitting_type); - declarations.push_back(IFC4X1_IfcPipeFittingType_type); - declarations.push_back(IFC4X1_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X1_IfcPipeSegment_type); - declarations.push_back(IFC4X1_IfcPipeSegmentType_type); - declarations.push_back(IFC4X1_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X1_IfcPixelTexture_type); - declarations.push_back(IFC4X1_IfcPlacement_type); - declarations.push_back(IFC4X1_IfcPlanarBox_type); - declarations.push_back(IFC4X1_IfcPlanarExtent_type); - declarations.push_back(IFC4X1_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X1_IfcPlane_type); - declarations.push_back(IFC4X1_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X1_IfcPlate_type); - declarations.push_back(IFC4X1_IfcPlateStandardCase_type); - declarations.push_back(IFC4X1_IfcPlateType_type); - declarations.push_back(IFC4X1_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X1_IfcPoint_type); - declarations.push_back(IFC4X1_IfcPointOnCurve_type); - declarations.push_back(IFC4X1_IfcPointOnSurface_type); - declarations.push_back(IFC4X1_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X1_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X1_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X1_IfcPolyline_type); - declarations.push_back(IFC4X1_IfcPolyLoop_type); - declarations.push_back(IFC4X1_IfcPort_type); - declarations.push_back(IFC4X1_IfcPositioningElement_type); - declarations.push_back(IFC4X1_IfcPositiveInteger_type); - declarations.push_back(IFC4X1_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X1_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X1_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X1_IfcPostalAddress_type); - declarations.push_back(IFC4X1_IfcPowerMeasure_type); - declarations.push_back(IFC4X1_IfcPreDefinedColour_type); - declarations.push_back(IFC4X1_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X1_IfcPreDefinedItem_type); - declarations.push_back(IFC4X1_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X1_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X1_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X1_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X1_IfcPresentableText_type); - declarations.push_back(IFC4X1_IfcPresentationItem_type); - declarations.push_back(IFC4X1_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X1_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X1_IfcPresentationStyle_type); - declarations.push_back(IFC4X1_IfcPresentationStyleAssignment_type); - declarations.push_back(IFC4X1_IfcPresentationStyleSelect_type); - declarations.push_back(IFC4X1_IfcPressureMeasure_type); - declarations.push_back(IFC4X1_IfcProcedure_type); - declarations.push_back(IFC4X1_IfcProcedureType_type); - declarations.push_back(IFC4X1_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X1_IfcProcess_type); - declarations.push_back(IFC4X1_IfcProcessSelect_type); - declarations.push_back(IFC4X1_IfcProduct_type); - declarations.push_back(IFC4X1_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X1_IfcProductRepresentation_type); - declarations.push_back(IFC4X1_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X1_IfcProductSelect_type); - declarations.push_back(IFC4X1_IfcProfileDef_type); - declarations.push_back(IFC4X1_IfcProfileProperties_type); - declarations.push_back(IFC4X1_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X1_IfcProject_type); - declarations.push_back(IFC4X1_IfcProjectedCRS_type); - declarations.push_back(IFC4X1_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X1_IfcProjectionElement_type); - declarations.push_back(IFC4X1_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcProjectLibrary_type); - declarations.push_back(IFC4X1_IfcProjectOrder_type); - declarations.push_back(IFC4X1_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X1_IfcProperty_type); - declarations.push_back(IFC4X1_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X1_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X1_IfcPropertyDefinition_type); - declarations.push_back(IFC4X1_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X1_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X1_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X1_IfcPropertyListValue_type); - declarations.push_back(IFC4X1_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X1_IfcPropertySet_type); - declarations.push_back(IFC4X1_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X1_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X1_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X1_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X1_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X1_IfcPropertySingleValue_type); - declarations.push_back(IFC4X1_IfcPropertyTableValue_type); - declarations.push_back(IFC4X1_IfcPropertyTemplate_type); - declarations.push_back(IFC4X1_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X1_IfcProtectiveDevice_type); - declarations.push_back(IFC4X1_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X1_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X1_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X1_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X1_IfcProxy_type); - declarations.push_back(IFC4X1_IfcPump_type); - declarations.push_back(IFC4X1_IfcPumpType_type); - declarations.push_back(IFC4X1_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X1_IfcQuantityArea_type); - declarations.push_back(IFC4X1_IfcQuantityCount_type); - declarations.push_back(IFC4X1_IfcQuantityLength_type); - declarations.push_back(IFC4X1_IfcQuantitySet_type); - declarations.push_back(IFC4X1_IfcQuantityTime_type); - declarations.push_back(IFC4X1_IfcQuantityVolume_type); - declarations.push_back(IFC4X1_IfcQuantityWeight_type); - declarations.push_back(IFC4X1_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X1_IfcRailing_type); - declarations.push_back(IFC4X1_IfcRailingType_type); - declarations.push_back(IFC4X1_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X1_IfcRamp_type); - declarations.push_back(IFC4X1_IfcRampFlight_type); - declarations.push_back(IFC4X1_IfcRampFlightType_type); - declarations.push_back(IFC4X1_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X1_IfcRampType_type); - declarations.push_back(IFC4X1_IfcRampTypeEnum_type); - declarations.push_back(IFC4X1_IfcRatioMeasure_type); - declarations.push_back(IFC4X1_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X1_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X1_IfcReal_type); - declarations.push_back(IFC4X1_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X1_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X1_IfcRectangularPyramid_type); - declarations.push_back(IFC4X1_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X1_IfcRecurrencePattern_type); - declarations.push_back(IFC4X1_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X1_IfcReference_type); - declarations.push_back(IFC4X1_IfcReferent_type); - declarations.push_back(IFC4X1_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X1_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X1_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X1_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X1_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X1_IfcReinforcingBar_type); - declarations.push_back(IFC4X1_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X1_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X1_IfcReinforcingBarType_type); - declarations.push_back(IFC4X1_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X1_IfcReinforcingElement_type); - declarations.push_back(IFC4X1_IfcReinforcingElementType_type); - declarations.push_back(IFC4X1_IfcReinforcingMesh_type); - declarations.push_back(IFC4X1_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X1_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X1_IfcRelAggregates_type); - declarations.push_back(IFC4X1_IfcRelAssigns_type); - declarations.push_back(IFC4X1_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X1_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X1_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X1_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X1_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X1_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X1_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X1_IfcRelAssociates_type); - declarations.push_back(IFC4X1_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X1_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X1_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X1_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X1_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X1_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X1_IfcRelationship_type); - declarations.push_back(IFC4X1_IfcRelConnects_type); - declarations.push_back(IFC4X1_IfcRelConnectsElements_type); - declarations.push_back(IFC4X1_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X1_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X1_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X1_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X1_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X1_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X1_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X1_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X1_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X1_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X1_IfcRelDeclares_type); - declarations.push_back(IFC4X1_IfcRelDecomposes_type); - declarations.push_back(IFC4X1_IfcRelDefines_type); - declarations.push_back(IFC4X1_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X1_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X1_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X1_IfcRelDefinesByType_type); - declarations.push_back(IFC4X1_IfcRelFillsElement_type); - declarations.push_back(IFC4X1_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X1_IfcRelInterferesElements_type); - declarations.push_back(IFC4X1_IfcRelNests_type); - declarations.push_back(IFC4X1_IfcRelProjectsElement_type); - declarations.push_back(IFC4X1_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X1_IfcRelSequence_type); - declarations.push_back(IFC4X1_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X1_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X1_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X1_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X1_IfcRelVoidsElement_type); - declarations.push_back(IFC4X1_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X1_IfcRepresentation_type); - declarations.push_back(IFC4X1_IfcRepresentationContext_type); - declarations.push_back(IFC4X1_IfcRepresentationItem_type); - declarations.push_back(IFC4X1_IfcRepresentationMap_type); - declarations.push_back(IFC4X1_IfcResource_type); - declarations.push_back(IFC4X1_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X1_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X1_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X1_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X1_IfcResourceSelect_type); - declarations.push_back(IFC4X1_IfcResourceTime_type); - declarations.push_back(IFC4X1_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X1_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X1_IfcRightCircularCone_type); - declarations.push_back(IFC4X1_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X1_IfcRoleEnum_type); - declarations.push_back(IFC4X1_IfcRoof_type); - declarations.push_back(IFC4X1_IfcRoofType_type); - declarations.push_back(IFC4X1_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X1_IfcRoot_type); - declarations.push_back(IFC4X1_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X1_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X1_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X1_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X1_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X1_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X1_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X1_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X1_IfcSchedulingTime_type); - declarations.push_back(IFC4X1_IfcSeamCurve_type); - declarations.push_back(IFC4X1_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X1_IfcSectionedSolid_type); - declarations.push_back(IFC4X1_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X1_IfcSectionedSpine_type); - declarations.push_back(IFC4X1_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X1_IfcSectionProperties_type); - declarations.push_back(IFC4X1_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X1_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X1_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X1_IfcSensor_type); - declarations.push_back(IFC4X1_IfcSensorType_type); - declarations.push_back(IFC4X1_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X1_IfcSequenceEnum_type); - declarations.push_back(IFC4X1_IfcShadingDevice_type); - declarations.push_back(IFC4X1_IfcShadingDeviceType_type); - declarations.push_back(IFC4X1_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X1_IfcShapeAspect_type); - declarations.push_back(IFC4X1_IfcShapeModel_type); - declarations.push_back(IFC4X1_IfcShapeRepresentation_type); - declarations.push_back(IFC4X1_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X1_IfcShell_type); - declarations.push_back(IFC4X1_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X1_IfcSimpleProperty_type); - declarations.push_back(IFC4X1_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X1_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X1_IfcSimpleValue_type); - declarations.push_back(IFC4X1_IfcSIPrefix_type); - declarations.push_back(IFC4X1_IfcSite_type); - declarations.push_back(IFC4X1_IfcSIUnit_type); - declarations.push_back(IFC4X1_IfcSIUnitName_type); - declarations.push_back(IFC4X1_IfcSizeSelect_type); - declarations.push_back(IFC4X1_IfcSlab_type); - declarations.push_back(IFC4X1_IfcSlabElementedCase_type); - declarations.push_back(IFC4X1_IfcSlabStandardCase_type); - declarations.push_back(IFC4X1_IfcSlabType_type); - declarations.push_back(IFC4X1_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X1_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X1_IfcSolarDevice_type); - declarations.push_back(IFC4X1_IfcSolarDeviceType_type); - declarations.push_back(IFC4X1_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X1_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X1_IfcSolidModel_type); - declarations.push_back(IFC4X1_IfcSolidOrShell_type); - declarations.push_back(IFC4X1_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X1_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X1_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X1_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X1_IfcSpace_type); - declarations.push_back(IFC4X1_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X1_IfcSpaceHeater_type); - declarations.push_back(IFC4X1_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X1_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X1_IfcSpaceType_type); - declarations.push_back(IFC4X1_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X1_IfcSpatialElement_type); - declarations.push_back(IFC4X1_IfcSpatialElementType_type); - declarations.push_back(IFC4X1_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X1_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X1_IfcSpatialZone_type); - declarations.push_back(IFC4X1_IfcSpatialZoneType_type); - declarations.push_back(IFC4X1_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X1_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X1_IfcSpecularExponent_type); - declarations.push_back(IFC4X1_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X1_IfcSpecularRoughness_type); - declarations.push_back(IFC4X1_IfcSphere_type); - declarations.push_back(IFC4X1_IfcSphericalSurface_type); - declarations.push_back(IFC4X1_IfcStackTerminal_type); - declarations.push_back(IFC4X1_IfcStackTerminalType_type); - declarations.push_back(IFC4X1_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X1_IfcStair_type); - declarations.push_back(IFC4X1_IfcStairFlight_type); - declarations.push_back(IFC4X1_IfcStairFlightType_type); - declarations.push_back(IFC4X1_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X1_IfcStairType_type); - declarations.push_back(IFC4X1_IfcStairTypeEnum_type); - declarations.push_back(IFC4X1_IfcStateEnum_type); - declarations.push_back(IFC4X1_IfcStructuralAction_type); - declarations.push_back(IFC4X1_IfcStructuralActivity_type); - declarations.push_back(IFC4X1_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X1_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X1_IfcStructuralConnection_type); - declarations.push_back(IFC4X1_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X1_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X1_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X1_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X1_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X1_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X1_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X1_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X1_IfcStructuralItem_type); - declarations.push_back(IFC4X1_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X1_IfcStructuralLoad_type); - declarations.push_back(IFC4X1_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X1_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X1_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X1_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X1_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X1_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X1_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X1_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X1_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X1_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X1_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X1_IfcStructuralMember_type); - declarations.push_back(IFC4X1_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X1_IfcStructuralPointAction_type); - declarations.push_back(IFC4X1_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X1_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X1_IfcStructuralReaction_type); - declarations.push_back(IFC4X1_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X1_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X1_IfcStyleAssignmentSelect_type); - declarations.push_back(IFC4X1_IfcStyledItem_type); - declarations.push_back(IFC4X1_IfcStyledRepresentation_type); - declarations.push_back(IFC4X1_IfcStyleModel_type); - declarations.push_back(IFC4X1_IfcSubContractResource_type); - declarations.push_back(IFC4X1_IfcSubContractResourceType_type); - declarations.push_back(IFC4X1_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X1_IfcSubedge_type); - declarations.push_back(IFC4X1_IfcSurface_type); - declarations.push_back(IFC4X1_IfcSurfaceCurve_type); - declarations.push_back(IFC4X1_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X1_IfcSurfaceFeature_type); - declarations.push_back(IFC4X1_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X1_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X1_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X1_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X1_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X1_IfcSurfaceSide_type); - declarations.push_back(IFC4X1_IfcSurfaceStyle_type); - declarations.push_back(IFC4X1_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X1_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X1_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X1_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X1_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X1_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X1_IfcSurfaceTexture_type); - declarations.push_back(IFC4X1_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X1_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X1_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X1_IfcSweptSurface_type); - declarations.push_back(IFC4X1_IfcSwitchingDevice_type); - declarations.push_back(IFC4X1_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X1_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X1_IfcSystem_type); - declarations.push_back(IFC4X1_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X1_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X1_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcTable_type); - declarations.push_back(IFC4X1_IfcTableColumn_type); - declarations.push_back(IFC4X1_IfcTableRow_type); - declarations.push_back(IFC4X1_IfcTank_type); - declarations.push_back(IFC4X1_IfcTankType_type); - declarations.push_back(IFC4X1_IfcTankTypeEnum_type); - declarations.push_back(IFC4X1_IfcTask_type); - declarations.push_back(IFC4X1_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X1_IfcTaskTime_type); - declarations.push_back(IFC4X1_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X1_IfcTaskType_type); - declarations.push_back(IFC4X1_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X1_IfcTelecomAddress_type); - declarations.push_back(IFC4X1_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X1_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X1_IfcTendon_type); - declarations.push_back(IFC4X1_IfcTendonAnchor_type); - declarations.push_back(IFC4X1_IfcTendonAnchorType_type); - declarations.push_back(IFC4X1_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X1_IfcTendonType_type); - declarations.push_back(IFC4X1_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X1_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X1_IfcTessellatedItem_type); - declarations.push_back(IFC4X1_IfcText_type); - declarations.push_back(IFC4X1_IfcTextAlignment_type); - declarations.push_back(IFC4X1_IfcTextDecoration_type); - declarations.push_back(IFC4X1_IfcTextFontName_type); - declarations.push_back(IFC4X1_IfcTextFontSelect_type); - declarations.push_back(IFC4X1_IfcTextLiteral_type); - declarations.push_back(IFC4X1_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X1_IfcTextPath_type); - declarations.push_back(IFC4X1_IfcTextStyle_type); - declarations.push_back(IFC4X1_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X1_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X1_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X1_IfcTextTransformation_type); - declarations.push_back(IFC4X1_IfcTextureCoordinate_type); - declarations.push_back(IFC4X1_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X1_IfcTextureMap_type); - declarations.push_back(IFC4X1_IfcTextureVertex_type); - declarations.push_back(IFC4X1_IfcTextureVertexList_type); - declarations.push_back(IFC4X1_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X1_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X1_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X1_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X1_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X1_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X1_IfcTime_type); - declarations.push_back(IFC4X1_IfcTimeMeasure_type); - declarations.push_back(IFC4X1_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X1_IfcTimePeriod_type); - declarations.push_back(IFC4X1_IfcTimeSeries_type); - declarations.push_back(IFC4X1_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X1_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X1_IfcTimeStamp_type); - declarations.push_back(IFC4X1_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X1_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X1_IfcToroidalSurface_type); - declarations.push_back(IFC4X1_IfcTorqueMeasure_type); - declarations.push_back(IFC4X1_IfcTransformer_type); - declarations.push_back(IFC4X1_IfcTransformerType_type); - declarations.push_back(IFC4X1_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X1_IfcTransitionCode_type); - declarations.push_back(IFC4X1_IfcTransitionCurveSegment2D_type); - declarations.push_back(IFC4X1_IfcTransitionCurveType_type); - declarations.push_back(IFC4X1_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X1_IfcTransportElement_type); - declarations.push_back(IFC4X1_IfcTransportElementType_type); - declarations.push_back(IFC4X1_IfcTransportElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X1_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X1_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X1_IfcTrimmedCurve_type); - declarations.push_back(IFC4X1_IfcTrimmingPreference_type); - declarations.push_back(IFC4X1_IfcTrimmingSelect_type); - declarations.push_back(IFC4X1_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X1_IfcTubeBundle_type); - declarations.push_back(IFC4X1_IfcTubeBundleType_type); - declarations.push_back(IFC4X1_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X1_IfcTypeObject_type); - declarations.push_back(IFC4X1_IfcTypeProcess_type); - declarations.push_back(IFC4X1_IfcTypeProduct_type); - declarations.push_back(IFC4X1_IfcTypeResource_type); - declarations.push_back(IFC4X1_IfcUnit_type); - declarations.push_back(IFC4X1_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X1_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X1_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X1_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X1_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X1_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X1_IfcUnitAssignment_type); - declarations.push_back(IFC4X1_IfcUnitEnum_type); - declarations.push_back(IFC4X1_IfcURIReference_type); - declarations.push_back(IFC4X1_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X1_IfcValue_type); - declarations.push_back(IFC4X1_IfcValve_type); - declarations.push_back(IFC4X1_IfcValveType_type); - declarations.push_back(IFC4X1_IfcValveTypeEnum_type); - declarations.push_back(IFC4X1_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X1_IfcVector_type); - declarations.push_back(IFC4X1_IfcVectorOrDirection_type); - declarations.push_back(IFC4X1_IfcVertex_type); - declarations.push_back(IFC4X1_IfcVertexLoop_type); - declarations.push_back(IFC4X1_IfcVertexPoint_type); - declarations.push_back(IFC4X1_IfcVibrationIsolator_type); - declarations.push_back(IFC4X1_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X1_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X1_IfcVirtualElement_type); - declarations.push_back(IFC4X1_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X1_IfcVoidingFeature_type); - declarations.push_back(IFC4X1_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X1_IfcVolumeMeasure_type); - declarations.push_back(IFC4X1_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X1_IfcWall_type); - declarations.push_back(IFC4X1_IfcWallElementedCase_type); - declarations.push_back(IFC4X1_IfcWallStandardCase_type); - declarations.push_back(IFC4X1_IfcWallType_type); - declarations.push_back(IFC4X1_IfcWallTypeEnum_type); - declarations.push_back(IFC4X1_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X1_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X1_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X1_IfcWasteTerminal_type); - declarations.push_back(IFC4X1_IfcWasteTerminalType_type); - declarations.push_back(IFC4X1_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X1_IfcWindow_type); - declarations.push_back(IFC4X1_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X1_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X1_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X1_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X1_IfcWindowStandardCase_type); - declarations.push_back(IFC4X1_IfcWindowStyle_type); - declarations.push_back(IFC4X1_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4X1_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4X1_IfcWindowType_type); - declarations.push_back(IFC4X1_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X1_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X1_IfcWorkCalendar_type); - declarations.push_back(IFC4X1_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X1_IfcWorkControl_type); - declarations.push_back(IFC4X1_IfcWorkPlan_type); - declarations.push_back(IFC4X1_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X1_IfcWorkSchedule_type); - declarations.push_back(IFC4X1_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X1_IfcWorkTime_type); - declarations.push_back(IFC4X1_IfcZone_type); - declarations.push_back(IFC4X1_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X1", declarations, new IFC4X1_instance_factory()); + std::vector declarations= { + IFC4X1_IfcAbsorbedDoseMeasure_type, + IFC4X1_IfcAccelerationMeasure_type, + IFC4X1_IfcActionRequest_type, + IFC4X1_IfcActionRequestTypeEnum_type, + IFC4X1_IfcActionSourceTypeEnum_type, + IFC4X1_IfcActionTypeEnum_type, + IFC4X1_IfcActor_type, + IFC4X1_IfcActorRole_type, + IFC4X1_IfcActorSelect_type, + IFC4X1_IfcActuator_type, + IFC4X1_IfcActuatorType_type, + IFC4X1_IfcActuatorTypeEnum_type, + IFC4X1_IfcAddress_type, + IFC4X1_IfcAddressTypeEnum_type, + IFC4X1_IfcAdvancedBrep_type, + IFC4X1_IfcAdvancedBrepWithVoids_type, + IFC4X1_IfcAdvancedFace_type, + IFC4X1_IfcAirTerminal_type, + IFC4X1_IfcAirTerminalBox_type, + IFC4X1_IfcAirTerminalBoxType_type, + IFC4X1_IfcAirTerminalBoxTypeEnum_type, + IFC4X1_IfcAirTerminalType_type, + IFC4X1_IfcAirTerminalTypeEnum_type, + IFC4X1_IfcAirToAirHeatRecovery_type, + IFC4X1_IfcAirToAirHeatRecoveryType_type, + IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X1_IfcAlarm_type, + IFC4X1_IfcAlarmType_type, + IFC4X1_IfcAlarmTypeEnum_type, + IFC4X1_IfcAlignment_type, + IFC4X1_IfcAlignment2DHorizontal_type, + IFC4X1_IfcAlignment2DHorizontalSegment_type, + IFC4X1_IfcAlignment2DSegment_type, + IFC4X1_IfcAlignment2DVerSegCircularArc_type, + IFC4X1_IfcAlignment2DVerSegLine_type, + IFC4X1_IfcAlignment2DVerSegParabolicArc_type, + IFC4X1_IfcAlignment2DVertical_type, + IFC4X1_IfcAlignment2DVerticalSegment_type, + IFC4X1_IfcAlignmentCurve_type, + IFC4X1_IfcAlignmentTypeEnum_type, + IFC4X1_IfcAmountOfSubstanceMeasure_type, + IFC4X1_IfcAnalysisModelTypeEnum_type, + IFC4X1_IfcAnalysisTheoryTypeEnum_type, + IFC4X1_IfcAngularVelocityMeasure_type, + IFC4X1_IfcAnnotation_type, + IFC4X1_IfcAnnotationFillArea_type, + IFC4X1_IfcApplication_type, + IFC4X1_IfcAppliedValue_type, + IFC4X1_IfcAppliedValueSelect_type, + IFC4X1_IfcApproval_type, + IFC4X1_IfcApprovalRelationship_type, + IFC4X1_IfcArbitraryClosedProfileDef_type, + IFC4X1_IfcArbitraryOpenProfileDef_type, + IFC4X1_IfcArbitraryProfileDefWithVoids_type, + IFC4X1_IfcArcIndex_type, + IFC4X1_IfcAreaDensityMeasure_type, + IFC4X1_IfcAreaMeasure_type, + IFC4X1_IfcArithmeticOperatorEnum_type, + IFC4X1_IfcAssemblyPlaceEnum_type, + IFC4X1_IfcAsset_type, + IFC4X1_IfcAsymmetricIShapeProfileDef_type, + IFC4X1_IfcAudioVisualAppliance_type, + IFC4X1_IfcAudioVisualApplianceType_type, + IFC4X1_IfcAudioVisualApplianceTypeEnum_type, + IFC4X1_IfcAxis1Placement_type, + IFC4X1_IfcAxis2Placement_type, + IFC4X1_IfcAxis2Placement2D_type, + IFC4X1_IfcAxis2Placement3D_type, + IFC4X1_IfcBeam_type, + IFC4X1_IfcBeamStandardCase_type, + IFC4X1_IfcBeamType_type, + IFC4X1_IfcBeamTypeEnum_type, + IFC4X1_IfcBenchmarkEnum_type, + IFC4X1_IfcBendingParameterSelect_type, + IFC4X1_IfcBinary_type, + IFC4X1_IfcBlobTexture_type, + IFC4X1_IfcBlock_type, + IFC4X1_IfcBoiler_type, + IFC4X1_IfcBoilerType_type, + IFC4X1_IfcBoilerTypeEnum_type, + IFC4X1_IfcBoolean_type, + IFC4X1_IfcBooleanClippingResult_type, + IFC4X1_IfcBooleanOperand_type, + IFC4X1_IfcBooleanOperator_type, + IFC4X1_IfcBooleanResult_type, + IFC4X1_IfcBoundaryCondition_type, + IFC4X1_IfcBoundaryCurve_type, + IFC4X1_IfcBoundaryEdgeCondition_type, + IFC4X1_IfcBoundaryFaceCondition_type, + IFC4X1_IfcBoundaryNodeCondition_type, + IFC4X1_IfcBoundaryNodeConditionWarping_type, + IFC4X1_IfcBoundedCurve_type, + IFC4X1_IfcBoundedSurface_type, + IFC4X1_IfcBoundingBox_type, + IFC4X1_IfcBoxAlignment_type, + IFC4X1_IfcBoxedHalfSpace_type, + IFC4X1_IfcBSplineCurve_type, + IFC4X1_IfcBSplineCurveForm_type, + IFC4X1_IfcBSplineCurveWithKnots_type, + IFC4X1_IfcBSplineSurface_type, + IFC4X1_IfcBSplineSurfaceForm_type, + IFC4X1_IfcBSplineSurfaceWithKnots_type, + IFC4X1_IfcBuilding_type, + IFC4X1_IfcBuildingElement_type, + IFC4X1_IfcBuildingElementPart_type, + IFC4X1_IfcBuildingElementPartType_type, + IFC4X1_IfcBuildingElementPartTypeEnum_type, + IFC4X1_IfcBuildingElementProxy_type, + IFC4X1_IfcBuildingElementProxyType_type, + IFC4X1_IfcBuildingElementProxyTypeEnum_type, + IFC4X1_IfcBuildingElementType_type, + IFC4X1_IfcBuildingStorey_type, + IFC4X1_IfcBuildingSystem_type, + IFC4X1_IfcBuildingSystemTypeEnum_type, + IFC4X1_IfcBurner_type, + IFC4X1_IfcBurnerType_type, + IFC4X1_IfcBurnerTypeEnum_type, + IFC4X1_IfcCableCarrierFitting_type, + IFC4X1_IfcCableCarrierFittingType_type, + IFC4X1_IfcCableCarrierFittingTypeEnum_type, + IFC4X1_IfcCableCarrierSegment_type, + IFC4X1_IfcCableCarrierSegmentType_type, + IFC4X1_IfcCableCarrierSegmentTypeEnum_type, + IFC4X1_IfcCableFitting_type, + IFC4X1_IfcCableFittingType_type, + IFC4X1_IfcCableFittingTypeEnum_type, + IFC4X1_IfcCableSegment_type, + IFC4X1_IfcCableSegmentType_type, + IFC4X1_IfcCableSegmentTypeEnum_type, + IFC4X1_IfcCardinalPointReference_type, + IFC4X1_IfcCartesianPoint_type, + IFC4X1_IfcCartesianPointList_type, + IFC4X1_IfcCartesianPointList2D_type, + IFC4X1_IfcCartesianPointList3D_type, + IFC4X1_IfcCartesianTransformationOperator_type, + IFC4X1_IfcCartesianTransformationOperator2D_type, + IFC4X1_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X1_IfcCartesianTransformationOperator3D_type, + IFC4X1_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X1_IfcCenterLineProfileDef_type, + IFC4X1_IfcChangeActionEnum_type, + IFC4X1_IfcChiller_type, + IFC4X1_IfcChillerType_type, + IFC4X1_IfcChillerTypeEnum_type, + IFC4X1_IfcChimney_type, + IFC4X1_IfcChimneyType_type, + IFC4X1_IfcChimneyTypeEnum_type, + IFC4X1_IfcCircle_type, + IFC4X1_IfcCircleHollowProfileDef_type, + IFC4X1_IfcCircleProfileDef_type, + IFC4X1_IfcCircularArcSegment2D_type, + IFC4X1_IfcCivilElement_type, + IFC4X1_IfcCivilElementType_type, + IFC4X1_IfcClassification_type, + IFC4X1_IfcClassificationReference_type, + IFC4X1_IfcClassificationReferenceSelect_type, + IFC4X1_IfcClassificationSelect_type, + IFC4X1_IfcClosedShell_type, + IFC4X1_IfcCoil_type, + IFC4X1_IfcCoilType_type, + IFC4X1_IfcCoilTypeEnum_type, + IFC4X1_IfcColour_type, + IFC4X1_IfcColourOrFactor_type, + IFC4X1_IfcColourRgb_type, + IFC4X1_IfcColourRgbList_type, + IFC4X1_IfcColourSpecification_type, + IFC4X1_IfcColumn_type, + IFC4X1_IfcColumnStandardCase_type, + IFC4X1_IfcColumnType_type, + IFC4X1_IfcColumnTypeEnum_type, + IFC4X1_IfcCommunicationsAppliance_type, + IFC4X1_IfcCommunicationsApplianceType_type, + IFC4X1_IfcCommunicationsApplianceTypeEnum_type, + IFC4X1_IfcComplexNumber_type, + IFC4X1_IfcComplexProperty_type, + IFC4X1_IfcComplexPropertyTemplate_type, + IFC4X1_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X1_IfcCompositeCurve_type, + IFC4X1_IfcCompositeCurveOnSurface_type, + IFC4X1_IfcCompositeCurveSegment_type, + IFC4X1_IfcCompositeProfileDef_type, + IFC4X1_IfcCompoundPlaneAngleMeasure_type, + IFC4X1_IfcCompressor_type, + IFC4X1_IfcCompressorType_type, + IFC4X1_IfcCompressorTypeEnum_type, + IFC4X1_IfcCondenser_type, + IFC4X1_IfcCondenserType_type, + IFC4X1_IfcCondenserTypeEnum_type, + IFC4X1_IfcConic_type, + IFC4X1_IfcConnectedFaceSet_type, + IFC4X1_IfcConnectionCurveGeometry_type, + IFC4X1_IfcConnectionGeometry_type, + IFC4X1_IfcConnectionPointEccentricity_type, + IFC4X1_IfcConnectionPointGeometry_type, + IFC4X1_IfcConnectionSurfaceGeometry_type, + IFC4X1_IfcConnectionTypeEnum_type, + IFC4X1_IfcConnectionVolumeGeometry_type, + IFC4X1_IfcConstraint_type, + IFC4X1_IfcConstraintEnum_type, + IFC4X1_IfcConstructionEquipmentResource_type, + IFC4X1_IfcConstructionEquipmentResourceType_type, + IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X1_IfcConstructionMaterialResource_type, + IFC4X1_IfcConstructionMaterialResourceType_type, + IFC4X1_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X1_IfcConstructionProductResource_type, + IFC4X1_IfcConstructionProductResourceType_type, + IFC4X1_IfcConstructionProductResourceTypeEnum_type, + IFC4X1_IfcConstructionResource_type, + IFC4X1_IfcConstructionResourceType_type, + IFC4X1_IfcContext_type, + IFC4X1_IfcContextDependentMeasure_type, + IFC4X1_IfcContextDependentUnit_type, + IFC4X1_IfcControl_type, + IFC4X1_IfcController_type, + IFC4X1_IfcControllerType_type, + IFC4X1_IfcControllerTypeEnum_type, + IFC4X1_IfcConversionBasedUnit_type, + IFC4X1_IfcConversionBasedUnitWithOffset_type, + IFC4X1_IfcCooledBeam_type, + IFC4X1_IfcCooledBeamType_type, + IFC4X1_IfcCooledBeamTypeEnum_type, + IFC4X1_IfcCoolingTower_type, + IFC4X1_IfcCoolingTowerType_type, + IFC4X1_IfcCoolingTowerTypeEnum_type, + IFC4X1_IfcCoordinateOperation_type, + IFC4X1_IfcCoordinateReferenceSystem_type, + IFC4X1_IfcCoordinateReferenceSystemSelect_type, + IFC4X1_IfcCostItem_type, + IFC4X1_IfcCostItemTypeEnum_type, + IFC4X1_IfcCostSchedule_type, + IFC4X1_IfcCostScheduleTypeEnum_type, + IFC4X1_IfcCostValue_type, + IFC4X1_IfcCountMeasure_type, + IFC4X1_IfcCovering_type, + IFC4X1_IfcCoveringType_type, + IFC4X1_IfcCoveringTypeEnum_type, + IFC4X1_IfcCrewResource_type, + IFC4X1_IfcCrewResourceType_type, + IFC4X1_IfcCrewResourceTypeEnum_type, + IFC4X1_IfcCsgPrimitive3D_type, + IFC4X1_IfcCsgSelect_type, + IFC4X1_IfcCsgSolid_type, + IFC4X1_IfcCShapeProfileDef_type, + IFC4X1_IfcCurrencyRelationship_type, + IFC4X1_IfcCurtainWall_type, + IFC4X1_IfcCurtainWallType_type, + IFC4X1_IfcCurtainWallTypeEnum_type, + IFC4X1_IfcCurvatureMeasure_type, + IFC4X1_IfcCurve_type, + IFC4X1_IfcCurveBoundedPlane_type, + IFC4X1_IfcCurveBoundedSurface_type, + IFC4X1_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X1_IfcCurveInterpolationEnum_type, + IFC4X1_IfcCurveOnSurface_type, + IFC4X1_IfcCurveOrEdgeCurve_type, + IFC4X1_IfcCurveSegment2D_type, + IFC4X1_IfcCurveStyle_type, + IFC4X1_IfcCurveStyleFont_type, + IFC4X1_IfcCurveStyleFontAndScaling_type, + IFC4X1_IfcCurveStyleFontPattern_type, + IFC4X1_IfcCurveStyleFontSelect_type, + IFC4X1_IfcCylindricalSurface_type, + IFC4X1_IfcDamper_type, + IFC4X1_IfcDamperType_type, + IFC4X1_IfcDamperTypeEnum_type, + IFC4X1_IfcDataOriginEnum_type, + IFC4X1_IfcDate_type, + IFC4X1_IfcDateTime_type, + IFC4X1_IfcDayInMonthNumber_type, + IFC4X1_IfcDayInWeekNumber_type, + IFC4X1_IfcDefinitionSelect_type, + IFC4X1_IfcDerivedMeasureValue_type, + IFC4X1_IfcDerivedProfileDef_type, + IFC4X1_IfcDerivedUnit_type, + IFC4X1_IfcDerivedUnitElement_type, + IFC4X1_IfcDerivedUnitEnum_type, + IFC4X1_IfcDescriptiveMeasure_type, + IFC4X1_IfcDimensionalExponents_type, + IFC4X1_IfcDimensionCount_type, + IFC4X1_IfcDirection_type, + IFC4X1_IfcDirectionSenseEnum_type, + IFC4X1_IfcDiscreteAccessory_type, + IFC4X1_IfcDiscreteAccessoryType_type, + IFC4X1_IfcDiscreteAccessoryTypeEnum_type, + IFC4X1_IfcDistanceExpression_type, + IFC4X1_IfcDistributionChamberElement_type, + IFC4X1_IfcDistributionChamberElementType_type, + IFC4X1_IfcDistributionChamberElementTypeEnum_type, + IFC4X1_IfcDistributionCircuit_type, + IFC4X1_IfcDistributionControlElement_type, + IFC4X1_IfcDistributionControlElementType_type, + IFC4X1_IfcDistributionElement_type, + IFC4X1_IfcDistributionElementType_type, + IFC4X1_IfcDistributionFlowElement_type, + IFC4X1_IfcDistributionFlowElementType_type, + IFC4X1_IfcDistributionPort_type, + IFC4X1_IfcDistributionPortTypeEnum_type, + IFC4X1_IfcDistributionSystem_type, + IFC4X1_IfcDistributionSystemEnum_type, + IFC4X1_IfcDocumentConfidentialityEnum_type, + IFC4X1_IfcDocumentInformation_type, + IFC4X1_IfcDocumentInformationRelationship_type, + IFC4X1_IfcDocumentReference_type, + IFC4X1_IfcDocumentSelect_type, + IFC4X1_IfcDocumentStatusEnum_type, + IFC4X1_IfcDoor_type, + IFC4X1_IfcDoorLiningProperties_type, + IFC4X1_IfcDoorPanelOperationEnum_type, + IFC4X1_IfcDoorPanelPositionEnum_type, + IFC4X1_IfcDoorPanelProperties_type, + IFC4X1_IfcDoorStandardCase_type, + IFC4X1_IfcDoorStyle_type, + IFC4X1_IfcDoorStyleConstructionEnum_type, + IFC4X1_IfcDoorStyleOperationEnum_type, + IFC4X1_IfcDoorType_type, + IFC4X1_IfcDoorTypeEnum_type, + IFC4X1_IfcDoorTypeOperationEnum_type, + IFC4X1_IfcDoseEquivalentMeasure_type, + IFC4X1_IfcDraughtingPreDefinedColour_type, + IFC4X1_IfcDraughtingPreDefinedCurveFont_type, + IFC4X1_IfcDuctFitting_type, + IFC4X1_IfcDuctFittingType_type, + IFC4X1_IfcDuctFittingTypeEnum_type, + IFC4X1_IfcDuctSegment_type, + IFC4X1_IfcDuctSegmentType_type, + IFC4X1_IfcDuctSegmentTypeEnum_type, + IFC4X1_IfcDuctSilencer_type, + IFC4X1_IfcDuctSilencerType_type, + IFC4X1_IfcDuctSilencerTypeEnum_type, + IFC4X1_IfcDuration_type, + IFC4X1_IfcDynamicViscosityMeasure_type, + IFC4X1_IfcEdge_type, + IFC4X1_IfcEdgeCurve_type, + IFC4X1_IfcEdgeLoop_type, + IFC4X1_IfcElectricAppliance_type, + IFC4X1_IfcElectricApplianceType_type, + IFC4X1_IfcElectricApplianceTypeEnum_type, + IFC4X1_IfcElectricCapacitanceMeasure_type, + IFC4X1_IfcElectricChargeMeasure_type, + IFC4X1_IfcElectricConductanceMeasure_type, + IFC4X1_IfcElectricCurrentMeasure_type, + IFC4X1_IfcElectricDistributionBoard_type, + IFC4X1_IfcElectricDistributionBoardType_type, + IFC4X1_IfcElectricDistributionBoardTypeEnum_type, + IFC4X1_IfcElectricFlowStorageDevice_type, + IFC4X1_IfcElectricFlowStorageDeviceType_type, + IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X1_IfcElectricGenerator_type, + IFC4X1_IfcElectricGeneratorType_type, + IFC4X1_IfcElectricGeneratorTypeEnum_type, + IFC4X1_IfcElectricMotor_type, + IFC4X1_IfcElectricMotorType_type, + IFC4X1_IfcElectricMotorTypeEnum_type, + IFC4X1_IfcElectricResistanceMeasure_type, + IFC4X1_IfcElectricTimeControl_type, + IFC4X1_IfcElectricTimeControlType_type, + IFC4X1_IfcElectricTimeControlTypeEnum_type, + IFC4X1_IfcElectricVoltageMeasure_type, + IFC4X1_IfcElement_type, + IFC4X1_IfcElementarySurface_type, + IFC4X1_IfcElementAssembly_type, + IFC4X1_IfcElementAssemblyType_type, + IFC4X1_IfcElementAssemblyTypeEnum_type, + IFC4X1_IfcElementComponent_type, + IFC4X1_IfcElementComponentType_type, + IFC4X1_IfcElementCompositionEnum_type, + IFC4X1_IfcElementQuantity_type, + IFC4X1_IfcElementType_type, + IFC4X1_IfcEllipse_type, + IFC4X1_IfcEllipseProfileDef_type, + IFC4X1_IfcEnergyConversionDevice_type, + IFC4X1_IfcEnergyConversionDeviceType_type, + IFC4X1_IfcEnergyMeasure_type, + IFC4X1_IfcEngine_type, + IFC4X1_IfcEngineType_type, + IFC4X1_IfcEngineTypeEnum_type, + IFC4X1_IfcEvaporativeCooler_type, + IFC4X1_IfcEvaporativeCoolerType_type, + IFC4X1_IfcEvaporativeCoolerTypeEnum_type, + IFC4X1_IfcEvaporator_type, + IFC4X1_IfcEvaporatorType_type, + IFC4X1_IfcEvaporatorTypeEnum_type, + IFC4X1_IfcEvent_type, + IFC4X1_IfcEventTime_type, + IFC4X1_IfcEventTriggerTypeEnum_type, + IFC4X1_IfcEventType_type, + IFC4X1_IfcEventTypeEnum_type, + IFC4X1_IfcExtendedProperties_type, + IFC4X1_IfcExternalInformation_type, + IFC4X1_IfcExternallyDefinedHatchStyle_type, + IFC4X1_IfcExternallyDefinedSurfaceStyle_type, + IFC4X1_IfcExternallyDefinedTextFont_type, + IFC4X1_IfcExternalReference_type, + IFC4X1_IfcExternalReferenceRelationship_type, + IFC4X1_IfcExternalSpatialElement_type, + IFC4X1_IfcExternalSpatialElementTypeEnum_type, + IFC4X1_IfcExternalSpatialStructureElement_type, + IFC4X1_IfcExtrudedAreaSolid_type, + IFC4X1_IfcExtrudedAreaSolidTapered_type, + IFC4X1_IfcFace_type, + IFC4X1_IfcFaceBasedSurfaceModel_type, + IFC4X1_IfcFaceBound_type, + IFC4X1_IfcFaceOuterBound_type, + IFC4X1_IfcFaceSurface_type, + IFC4X1_IfcFacetedBrep_type, + IFC4X1_IfcFacetedBrepWithVoids_type, + IFC4X1_IfcFailureConnectionCondition_type, + IFC4X1_IfcFan_type, + IFC4X1_IfcFanType_type, + IFC4X1_IfcFanTypeEnum_type, + IFC4X1_IfcFastener_type, + IFC4X1_IfcFastenerType_type, + IFC4X1_IfcFastenerTypeEnum_type, + IFC4X1_IfcFeatureElement_type, + IFC4X1_IfcFeatureElementAddition_type, + IFC4X1_IfcFeatureElementSubtraction_type, + IFC4X1_IfcFillAreaStyle_type, + IFC4X1_IfcFillAreaStyleHatching_type, + IFC4X1_IfcFillAreaStyleTiles_type, + IFC4X1_IfcFillStyleSelect_type, + IFC4X1_IfcFilter_type, + IFC4X1_IfcFilterType_type, + IFC4X1_IfcFilterTypeEnum_type, + IFC4X1_IfcFireSuppressionTerminal_type, + IFC4X1_IfcFireSuppressionTerminalType_type, + IFC4X1_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X1_IfcFixedReferenceSweptAreaSolid_type, + IFC4X1_IfcFlowController_type, + IFC4X1_IfcFlowControllerType_type, + IFC4X1_IfcFlowDirectionEnum_type, + IFC4X1_IfcFlowFitting_type, + IFC4X1_IfcFlowFittingType_type, + IFC4X1_IfcFlowInstrument_type, + IFC4X1_IfcFlowInstrumentType_type, + IFC4X1_IfcFlowInstrumentTypeEnum_type, + IFC4X1_IfcFlowMeter_type, + IFC4X1_IfcFlowMeterType_type, + IFC4X1_IfcFlowMeterTypeEnum_type, + IFC4X1_IfcFlowMovingDevice_type, + IFC4X1_IfcFlowMovingDeviceType_type, + IFC4X1_IfcFlowSegment_type, + IFC4X1_IfcFlowSegmentType_type, + IFC4X1_IfcFlowStorageDevice_type, + IFC4X1_IfcFlowStorageDeviceType_type, + IFC4X1_IfcFlowTerminal_type, + IFC4X1_IfcFlowTerminalType_type, + IFC4X1_IfcFlowTreatmentDevice_type, + IFC4X1_IfcFlowTreatmentDeviceType_type, + IFC4X1_IfcFontStyle_type, + IFC4X1_IfcFontVariant_type, + IFC4X1_IfcFontWeight_type, + IFC4X1_IfcFooting_type, + IFC4X1_IfcFootingType_type, + IFC4X1_IfcFootingTypeEnum_type, + IFC4X1_IfcForceMeasure_type, + IFC4X1_IfcFrequencyMeasure_type, + IFC4X1_IfcFurnishingElement_type, + IFC4X1_IfcFurnishingElementType_type, + IFC4X1_IfcFurniture_type, + IFC4X1_IfcFurnitureType_type, + IFC4X1_IfcFurnitureTypeEnum_type, + IFC4X1_IfcGeographicElement_type, + IFC4X1_IfcGeographicElementType_type, + IFC4X1_IfcGeographicElementTypeEnum_type, + IFC4X1_IfcGeometricCurveSet_type, + IFC4X1_IfcGeometricProjectionEnum_type, + IFC4X1_IfcGeometricRepresentationContext_type, + IFC4X1_IfcGeometricRepresentationItem_type, + IFC4X1_IfcGeometricRepresentationSubContext_type, + IFC4X1_IfcGeometricSet_type, + IFC4X1_IfcGeometricSetSelect_type, + IFC4X1_IfcGloballyUniqueId_type, + IFC4X1_IfcGlobalOrLocalEnum_type, + IFC4X1_IfcGrid_type, + IFC4X1_IfcGridAxis_type, + IFC4X1_IfcGridPlacement_type, + IFC4X1_IfcGridPlacementDirectionSelect_type, + IFC4X1_IfcGridTypeEnum_type, + IFC4X1_IfcGroup_type, + IFC4X1_IfcHalfSpaceSolid_type, + IFC4X1_IfcHatchLineDistanceSelect_type, + IFC4X1_IfcHeatExchanger_type, + IFC4X1_IfcHeatExchangerType_type, + IFC4X1_IfcHeatExchangerTypeEnum_type, + IFC4X1_IfcHeatFluxDensityMeasure_type, + IFC4X1_IfcHeatingValueMeasure_type, + IFC4X1_IfcHumidifier_type, + IFC4X1_IfcHumidifierType_type, + IFC4X1_IfcHumidifierTypeEnum_type, + IFC4X1_IfcIdentifier_type, + IFC4X1_IfcIlluminanceMeasure_type, + IFC4X1_IfcImageTexture_type, + IFC4X1_IfcIndexedColourMap_type, + IFC4X1_IfcIndexedPolyCurve_type, + IFC4X1_IfcIndexedPolygonalFace_type, + IFC4X1_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X1_IfcIndexedTextureMap_type, + IFC4X1_IfcIndexedTriangleTextureMap_type, + IFC4X1_IfcInductanceMeasure_type, + IFC4X1_IfcInteger_type, + IFC4X1_IfcIntegerCountRateMeasure_type, + IFC4X1_IfcInterceptor_type, + IFC4X1_IfcInterceptorType_type, + IFC4X1_IfcInterceptorTypeEnum_type, + IFC4X1_IfcInternalOrExternalEnum_type, + IFC4X1_IfcIntersectionCurve_type, + IFC4X1_IfcInventory_type, + IFC4X1_IfcInventoryTypeEnum_type, + IFC4X1_IfcIonConcentrationMeasure_type, + IFC4X1_IfcIrregularTimeSeries_type, + IFC4X1_IfcIrregularTimeSeriesValue_type, + IFC4X1_IfcIShapeProfileDef_type, + IFC4X1_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X1_IfcJunctionBox_type, + IFC4X1_IfcJunctionBoxType_type, + IFC4X1_IfcJunctionBoxTypeEnum_type, + IFC4X1_IfcKinematicViscosityMeasure_type, + IFC4X1_IfcKnotType_type, + IFC4X1_IfcLabel_type, + IFC4X1_IfcLaborResource_type, + IFC4X1_IfcLaborResourceType_type, + IFC4X1_IfcLaborResourceTypeEnum_type, + IFC4X1_IfcLagTime_type, + IFC4X1_IfcLamp_type, + IFC4X1_IfcLampType_type, + IFC4X1_IfcLampTypeEnum_type, + IFC4X1_IfcLanguageId_type, + IFC4X1_IfcLayeredItem_type, + IFC4X1_IfcLayerSetDirectionEnum_type, + IFC4X1_IfcLengthMeasure_type, + IFC4X1_IfcLibraryInformation_type, + IFC4X1_IfcLibraryReference_type, + IFC4X1_IfcLibrarySelect_type, + IFC4X1_IfcLightDistributionCurveEnum_type, + IFC4X1_IfcLightDistributionData_type, + IFC4X1_IfcLightDistributionDataSourceSelect_type, + IFC4X1_IfcLightEmissionSourceEnum_type, + IFC4X1_IfcLightFixture_type, + IFC4X1_IfcLightFixtureType_type, + IFC4X1_IfcLightFixtureTypeEnum_type, + IFC4X1_IfcLightIntensityDistribution_type, + IFC4X1_IfcLightSource_type, + IFC4X1_IfcLightSourceAmbient_type, + IFC4X1_IfcLightSourceDirectional_type, + IFC4X1_IfcLightSourceGoniometric_type, + IFC4X1_IfcLightSourcePositional_type, + IFC4X1_IfcLightSourceSpot_type, + IFC4X1_IfcLine_type, + IFC4X1_IfcLinearForceMeasure_type, + IFC4X1_IfcLinearMomentMeasure_type, + IFC4X1_IfcLinearPlacement_type, + IFC4X1_IfcLinearPositioningElement_type, + IFC4X1_IfcLinearStiffnessMeasure_type, + IFC4X1_IfcLinearVelocityMeasure_type, + IFC4X1_IfcLineIndex_type, + IFC4X1_IfcLineSegment2D_type, + IFC4X1_IfcLoadGroupTypeEnum_type, + IFC4X1_IfcLocalPlacement_type, + IFC4X1_IfcLogical_type, + IFC4X1_IfcLogicalOperatorEnum_type, + IFC4X1_IfcLoop_type, + IFC4X1_IfcLShapeProfileDef_type, + IFC4X1_IfcLuminousFluxMeasure_type, + IFC4X1_IfcLuminousIntensityDistributionMeasure_type, + IFC4X1_IfcLuminousIntensityMeasure_type, + IFC4X1_IfcMagneticFluxDensityMeasure_type, + IFC4X1_IfcMagneticFluxMeasure_type, + IFC4X1_IfcManifoldSolidBrep_type, + IFC4X1_IfcMapConversion_type, + IFC4X1_IfcMappedItem_type, + IFC4X1_IfcMassDensityMeasure_type, + IFC4X1_IfcMassFlowRateMeasure_type, + IFC4X1_IfcMassMeasure_type, + IFC4X1_IfcMassPerLengthMeasure_type, + IFC4X1_IfcMaterial_type, + IFC4X1_IfcMaterialClassificationRelationship_type, + IFC4X1_IfcMaterialConstituent_type, + IFC4X1_IfcMaterialConstituentSet_type, + IFC4X1_IfcMaterialDefinition_type, + IFC4X1_IfcMaterialDefinitionRepresentation_type, + IFC4X1_IfcMaterialLayer_type, + IFC4X1_IfcMaterialLayerSet_type, + IFC4X1_IfcMaterialLayerSetUsage_type, + IFC4X1_IfcMaterialLayerWithOffsets_type, + IFC4X1_IfcMaterialList_type, + IFC4X1_IfcMaterialProfile_type, + IFC4X1_IfcMaterialProfileSet_type, + IFC4X1_IfcMaterialProfileSetUsage_type, + IFC4X1_IfcMaterialProfileSetUsageTapering_type, + IFC4X1_IfcMaterialProfileWithOffsets_type, + IFC4X1_IfcMaterialProperties_type, + IFC4X1_IfcMaterialRelationship_type, + IFC4X1_IfcMaterialSelect_type, + IFC4X1_IfcMaterialUsageDefinition_type, + IFC4X1_IfcMeasureValue_type, + IFC4X1_IfcMeasureWithUnit_type, + IFC4X1_IfcMechanicalFastener_type, + IFC4X1_IfcMechanicalFastenerType_type, + IFC4X1_IfcMechanicalFastenerTypeEnum_type, + IFC4X1_IfcMedicalDevice_type, + IFC4X1_IfcMedicalDeviceType_type, + IFC4X1_IfcMedicalDeviceTypeEnum_type, + IFC4X1_IfcMember_type, + IFC4X1_IfcMemberStandardCase_type, + IFC4X1_IfcMemberType_type, + IFC4X1_IfcMemberTypeEnum_type, + IFC4X1_IfcMetric_type, + IFC4X1_IfcMetricValueSelect_type, + IFC4X1_IfcMirroredProfileDef_type, + IFC4X1_IfcModulusOfElasticityMeasure_type, + IFC4X1_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X1_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X1_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X1_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X1_IfcModulusOfSubgradeReactionSelect_type, + IFC4X1_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X1_IfcMoistureDiffusivityMeasure_type, + IFC4X1_IfcMolecularWeightMeasure_type, + IFC4X1_IfcMomentOfInertiaMeasure_type, + IFC4X1_IfcMonetaryMeasure_type, + IFC4X1_IfcMonetaryUnit_type, + IFC4X1_IfcMonthInYearNumber_type, + IFC4X1_IfcMotorConnection_type, + IFC4X1_IfcMotorConnectionType_type, + IFC4X1_IfcMotorConnectionTypeEnum_type, + IFC4X1_IfcNamedUnit_type, + IFC4X1_IfcNonNegativeLengthMeasure_type, + IFC4X1_IfcNormalisedRatioMeasure_type, + IFC4X1_IfcNullStyle_type, + IFC4X1_IfcNumericMeasure_type, + IFC4X1_IfcObject_type, + IFC4X1_IfcObjectDefinition_type, + IFC4X1_IfcObjective_type, + IFC4X1_IfcObjectiveEnum_type, + IFC4X1_IfcObjectPlacement_type, + IFC4X1_IfcObjectReferenceSelect_type, + IFC4X1_IfcObjectTypeEnum_type, + IFC4X1_IfcOccupant_type, + IFC4X1_IfcOccupantTypeEnum_type, + IFC4X1_IfcOffsetCurve_type, + IFC4X1_IfcOffsetCurve2D_type, + IFC4X1_IfcOffsetCurve3D_type, + IFC4X1_IfcOffsetCurveByDistances_type, + IFC4X1_IfcOpeningElement_type, + IFC4X1_IfcOpeningElementTypeEnum_type, + IFC4X1_IfcOpeningStandardCase_type, + IFC4X1_IfcOpenShell_type, + IFC4X1_IfcOrganization_type, + IFC4X1_IfcOrganizationRelationship_type, + IFC4X1_IfcOrientationExpression_type, + IFC4X1_IfcOrientedEdge_type, + IFC4X1_IfcOuterBoundaryCurve_type, + IFC4X1_IfcOutlet_type, + IFC4X1_IfcOutletType_type, + IFC4X1_IfcOutletTypeEnum_type, + IFC4X1_IfcOwnerHistory_type, + IFC4X1_IfcParameterizedProfileDef_type, + IFC4X1_IfcParameterValue_type, + IFC4X1_IfcPath_type, + IFC4X1_IfcPcurve_type, + IFC4X1_IfcPerformanceHistory_type, + IFC4X1_IfcPerformanceHistoryTypeEnum_type, + IFC4X1_IfcPermeableCoveringOperationEnum_type, + IFC4X1_IfcPermeableCoveringProperties_type, + IFC4X1_IfcPermit_type, + IFC4X1_IfcPermitTypeEnum_type, + IFC4X1_IfcPerson_type, + IFC4X1_IfcPersonAndOrganization_type, + IFC4X1_IfcPHMeasure_type, + IFC4X1_IfcPhysicalComplexQuantity_type, + IFC4X1_IfcPhysicalOrVirtualEnum_type, + IFC4X1_IfcPhysicalQuantity_type, + IFC4X1_IfcPhysicalSimpleQuantity_type, + IFC4X1_IfcPile_type, + IFC4X1_IfcPileConstructionEnum_type, + IFC4X1_IfcPileType_type, + IFC4X1_IfcPileTypeEnum_type, + IFC4X1_IfcPipeFitting_type, + IFC4X1_IfcPipeFittingType_type, + IFC4X1_IfcPipeFittingTypeEnum_type, + IFC4X1_IfcPipeSegment_type, + IFC4X1_IfcPipeSegmentType_type, + IFC4X1_IfcPipeSegmentTypeEnum_type, + IFC4X1_IfcPixelTexture_type, + IFC4X1_IfcPlacement_type, + IFC4X1_IfcPlanarBox_type, + IFC4X1_IfcPlanarExtent_type, + IFC4X1_IfcPlanarForceMeasure_type, + IFC4X1_IfcPlane_type, + IFC4X1_IfcPlaneAngleMeasure_type, + IFC4X1_IfcPlate_type, + IFC4X1_IfcPlateStandardCase_type, + IFC4X1_IfcPlateType_type, + IFC4X1_IfcPlateTypeEnum_type, + IFC4X1_IfcPoint_type, + IFC4X1_IfcPointOnCurve_type, + IFC4X1_IfcPointOnSurface_type, + IFC4X1_IfcPointOrVertexPoint_type, + IFC4X1_IfcPolygonalBoundedHalfSpace_type, + IFC4X1_IfcPolygonalFaceSet_type, + IFC4X1_IfcPolyline_type, + IFC4X1_IfcPolyLoop_type, + IFC4X1_IfcPort_type, + IFC4X1_IfcPositioningElement_type, + IFC4X1_IfcPositiveInteger_type, + IFC4X1_IfcPositiveLengthMeasure_type, + IFC4X1_IfcPositivePlaneAngleMeasure_type, + IFC4X1_IfcPositiveRatioMeasure_type, + IFC4X1_IfcPostalAddress_type, + IFC4X1_IfcPowerMeasure_type, + IFC4X1_IfcPreDefinedColour_type, + IFC4X1_IfcPreDefinedCurveFont_type, + IFC4X1_IfcPreDefinedItem_type, + IFC4X1_IfcPreDefinedProperties_type, + IFC4X1_IfcPreDefinedPropertySet_type, + IFC4X1_IfcPreDefinedTextFont_type, + IFC4X1_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X1_IfcPresentableText_type, + IFC4X1_IfcPresentationItem_type, + IFC4X1_IfcPresentationLayerAssignment_type, + IFC4X1_IfcPresentationLayerWithStyle_type, + IFC4X1_IfcPresentationStyle_type, + IFC4X1_IfcPresentationStyleAssignment_type, + IFC4X1_IfcPresentationStyleSelect_type, + IFC4X1_IfcPressureMeasure_type, + IFC4X1_IfcProcedure_type, + IFC4X1_IfcProcedureType_type, + IFC4X1_IfcProcedureTypeEnum_type, + IFC4X1_IfcProcess_type, + IFC4X1_IfcProcessSelect_type, + IFC4X1_IfcProduct_type, + IFC4X1_IfcProductDefinitionShape_type, + IFC4X1_IfcProductRepresentation_type, + IFC4X1_IfcProductRepresentationSelect_type, + IFC4X1_IfcProductSelect_type, + IFC4X1_IfcProfileDef_type, + IFC4X1_IfcProfileProperties_type, + IFC4X1_IfcProfileTypeEnum_type, + IFC4X1_IfcProject_type, + IFC4X1_IfcProjectedCRS_type, + IFC4X1_IfcProjectedOrTrueLengthEnum_type, + IFC4X1_IfcProjectionElement_type, + IFC4X1_IfcProjectionElementTypeEnum_type, + IFC4X1_IfcProjectLibrary_type, + IFC4X1_IfcProjectOrder_type, + IFC4X1_IfcProjectOrderTypeEnum_type, + IFC4X1_IfcProperty_type, + IFC4X1_IfcPropertyAbstraction_type, + IFC4X1_IfcPropertyBoundedValue_type, + IFC4X1_IfcPropertyDefinition_type, + IFC4X1_IfcPropertyDependencyRelationship_type, + IFC4X1_IfcPropertyEnumeratedValue_type, + IFC4X1_IfcPropertyEnumeration_type, + IFC4X1_IfcPropertyListValue_type, + IFC4X1_IfcPropertyReferenceValue_type, + IFC4X1_IfcPropertySet_type, + IFC4X1_IfcPropertySetDefinition_type, + IFC4X1_IfcPropertySetDefinitionSelect_type, + IFC4X1_IfcPropertySetDefinitionSet_type, + IFC4X1_IfcPropertySetTemplate_type, + IFC4X1_IfcPropertySetTemplateTypeEnum_type, + IFC4X1_IfcPropertySingleValue_type, + IFC4X1_IfcPropertyTableValue_type, + IFC4X1_IfcPropertyTemplate_type, + IFC4X1_IfcPropertyTemplateDefinition_type, + IFC4X1_IfcProtectiveDevice_type, + IFC4X1_IfcProtectiveDeviceTrippingUnit_type, + IFC4X1_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X1_IfcProtectiveDeviceType_type, + IFC4X1_IfcProtectiveDeviceTypeEnum_type, + IFC4X1_IfcProxy_type, + IFC4X1_IfcPump_type, + IFC4X1_IfcPumpType_type, + IFC4X1_IfcPumpTypeEnum_type, + IFC4X1_IfcQuantityArea_type, + IFC4X1_IfcQuantityCount_type, + IFC4X1_IfcQuantityLength_type, + IFC4X1_IfcQuantitySet_type, + IFC4X1_IfcQuantityTime_type, + IFC4X1_IfcQuantityVolume_type, + IFC4X1_IfcQuantityWeight_type, + IFC4X1_IfcRadioActivityMeasure_type, + IFC4X1_IfcRailing_type, + IFC4X1_IfcRailingType_type, + IFC4X1_IfcRailingTypeEnum_type, + IFC4X1_IfcRamp_type, + IFC4X1_IfcRampFlight_type, + IFC4X1_IfcRampFlightType_type, + IFC4X1_IfcRampFlightTypeEnum_type, + IFC4X1_IfcRampType_type, + IFC4X1_IfcRampTypeEnum_type, + IFC4X1_IfcRatioMeasure_type, + IFC4X1_IfcRationalBSplineCurveWithKnots_type, + IFC4X1_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X1_IfcReal_type, + IFC4X1_IfcRectangleHollowProfileDef_type, + IFC4X1_IfcRectangleProfileDef_type, + IFC4X1_IfcRectangularPyramid_type, + IFC4X1_IfcRectangularTrimmedSurface_type, + IFC4X1_IfcRecurrencePattern_type, + IFC4X1_IfcRecurrenceTypeEnum_type, + IFC4X1_IfcReference_type, + IFC4X1_IfcReferent_type, + IFC4X1_IfcReferentTypeEnum_type, + IFC4X1_IfcReflectanceMethodEnum_type, + IFC4X1_IfcRegularTimeSeries_type, + IFC4X1_IfcReinforcementBarProperties_type, + IFC4X1_IfcReinforcementDefinitionProperties_type, + IFC4X1_IfcReinforcingBar_type, + IFC4X1_IfcReinforcingBarRoleEnum_type, + IFC4X1_IfcReinforcingBarSurfaceEnum_type, + IFC4X1_IfcReinforcingBarType_type, + IFC4X1_IfcReinforcingBarTypeEnum_type, + IFC4X1_IfcReinforcingElement_type, + IFC4X1_IfcReinforcingElementType_type, + IFC4X1_IfcReinforcingMesh_type, + IFC4X1_IfcReinforcingMeshType_type, + IFC4X1_IfcReinforcingMeshTypeEnum_type, + IFC4X1_IfcRelAggregates_type, + IFC4X1_IfcRelAssigns_type, + IFC4X1_IfcRelAssignsToActor_type, + IFC4X1_IfcRelAssignsToControl_type, + IFC4X1_IfcRelAssignsToGroup_type, + IFC4X1_IfcRelAssignsToGroupByFactor_type, + IFC4X1_IfcRelAssignsToProcess_type, + IFC4X1_IfcRelAssignsToProduct_type, + IFC4X1_IfcRelAssignsToResource_type, + IFC4X1_IfcRelAssociates_type, + IFC4X1_IfcRelAssociatesApproval_type, + IFC4X1_IfcRelAssociatesClassification_type, + IFC4X1_IfcRelAssociatesConstraint_type, + IFC4X1_IfcRelAssociatesDocument_type, + IFC4X1_IfcRelAssociatesLibrary_type, + IFC4X1_IfcRelAssociatesMaterial_type, + IFC4X1_IfcRelationship_type, + IFC4X1_IfcRelConnects_type, + IFC4X1_IfcRelConnectsElements_type, + IFC4X1_IfcRelConnectsPathElements_type, + IFC4X1_IfcRelConnectsPorts_type, + IFC4X1_IfcRelConnectsPortToElement_type, + IFC4X1_IfcRelConnectsStructuralActivity_type, + IFC4X1_IfcRelConnectsStructuralMember_type, + IFC4X1_IfcRelConnectsWithEccentricity_type, + IFC4X1_IfcRelConnectsWithRealizingElements_type, + IFC4X1_IfcRelContainedInSpatialStructure_type, + IFC4X1_IfcRelCoversBldgElements_type, + IFC4X1_IfcRelCoversSpaces_type, + IFC4X1_IfcRelDeclares_type, + IFC4X1_IfcRelDecomposes_type, + IFC4X1_IfcRelDefines_type, + IFC4X1_IfcRelDefinesByObject_type, + IFC4X1_IfcRelDefinesByProperties_type, + IFC4X1_IfcRelDefinesByTemplate_type, + IFC4X1_IfcRelDefinesByType_type, + IFC4X1_IfcRelFillsElement_type, + IFC4X1_IfcRelFlowControlElements_type, + IFC4X1_IfcRelInterferesElements_type, + IFC4X1_IfcRelNests_type, + IFC4X1_IfcRelProjectsElement_type, + IFC4X1_IfcRelReferencedInSpatialStructure_type, + IFC4X1_IfcRelSequence_type, + IFC4X1_IfcRelServicesBuildings_type, + IFC4X1_IfcRelSpaceBoundary_type, + IFC4X1_IfcRelSpaceBoundary1stLevel_type, + IFC4X1_IfcRelSpaceBoundary2ndLevel_type, + IFC4X1_IfcRelVoidsElement_type, + IFC4X1_IfcReparametrisedCompositeCurveSegment_type, + IFC4X1_IfcRepresentation_type, + IFC4X1_IfcRepresentationContext_type, + IFC4X1_IfcRepresentationItem_type, + IFC4X1_IfcRepresentationMap_type, + IFC4X1_IfcResource_type, + IFC4X1_IfcResourceApprovalRelationship_type, + IFC4X1_IfcResourceConstraintRelationship_type, + IFC4X1_IfcResourceLevelRelationship_type, + IFC4X1_IfcResourceObjectSelect_type, + IFC4X1_IfcResourceSelect_type, + IFC4X1_IfcResourceTime_type, + IFC4X1_IfcRevolvedAreaSolid_type, + IFC4X1_IfcRevolvedAreaSolidTapered_type, + IFC4X1_IfcRightCircularCone_type, + IFC4X1_IfcRightCircularCylinder_type, + IFC4X1_IfcRoleEnum_type, + IFC4X1_IfcRoof_type, + IFC4X1_IfcRoofType_type, + IFC4X1_IfcRoofTypeEnum_type, + IFC4X1_IfcRoot_type, + IFC4X1_IfcRotationalFrequencyMeasure_type, + IFC4X1_IfcRotationalMassMeasure_type, + IFC4X1_IfcRotationalStiffnessMeasure_type, + IFC4X1_IfcRotationalStiffnessSelect_type, + IFC4X1_IfcRoundedRectangleProfileDef_type, + IFC4X1_IfcSanitaryTerminal_type, + IFC4X1_IfcSanitaryTerminalType_type, + IFC4X1_IfcSanitaryTerminalTypeEnum_type, + IFC4X1_IfcSchedulingTime_type, + IFC4X1_IfcSeamCurve_type, + IFC4X1_IfcSectionalAreaIntegralMeasure_type, + IFC4X1_IfcSectionedSolid_type, + IFC4X1_IfcSectionedSolidHorizontal_type, + IFC4X1_IfcSectionedSpine_type, + IFC4X1_IfcSectionModulusMeasure_type, + IFC4X1_IfcSectionProperties_type, + IFC4X1_IfcSectionReinforcementProperties_type, + IFC4X1_IfcSectionTypeEnum_type, + IFC4X1_IfcSegmentIndexSelect_type, + IFC4X1_IfcSensor_type, + IFC4X1_IfcSensorType_type, + IFC4X1_IfcSensorTypeEnum_type, + IFC4X1_IfcSequenceEnum_type, + IFC4X1_IfcShadingDevice_type, + IFC4X1_IfcShadingDeviceType_type, + IFC4X1_IfcShadingDeviceTypeEnum_type, + IFC4X1_IfcShapeAspect_type, + IFC4X1_IfcShapeModel_type, + IFC4X1_IfcShapeRepresentation_type, + IFC4X1_IfcShearModulusMeasure_type, + IFC4X1_IfcShell_type, + IFC4X1_IfcShellBasedSurfaceModel_type, + IFC4X1_IfcSimpleProperty_type, + IFC4X1_IfcSimplePropertyTemplate_type, + IFC4X1_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X1_IfcSimpleValue_type, + IFC4X1_IfcSIPrefix_type, + IFC4X1_IfcSite_type, + IFC4X1_IfcSIUnit_type, + IFC4X1_IfcSIUnitName_type, + IFC4X1_IfcSizeSelect_type, + IFC4X1_IfcSlab_type, + IFC4X1_IfcSlabElementedCase_type, + IFC4X1_IfcSlabStandardCase_type, + IFC4X1_IfcSlabType_type, + IFC4X1_IfcSlabTypeEnum_type, + IFC4X1_IfcSlippageConnectionCondition_type, + IFC4X1_IfcSolarDevice_type, + IFC4X1_IfcSolarDeviceType_type, + IFC4X1_IfcSolarDeviceTypeEnum_type, + IFC4X1_IfcSolidAngleMeasure_type, + IFC4X1_IfcSolidModel_type, + IFC4X1_IfcSolidOrShell_type, + IFC4X1_IfcSoundPowerLevelMeasure_type, + IFC4X1_IfcSoundPowerMeasure_type, + IFC4X1_IfcSoundPressureLevelMeasure_type, + IFC4X1_IfcSoundPressureMeasure_type, + IFC4X1_IfcSpace_type, + IFC4X1_IfcSpaceBoundarySelect_type, + IFC4X1_IfcSpaceHeater_type, + IFC4X1_IfcSpaceHeaterType_type, + IFC4X1_IfcSpaceHeaterTypeEnum_type, + IFC4X1_IfcSpaceType_type, + IFC4X1_IfcSpaceTypeEnum_type, + IFC4X1_IfcSpatialElement_type, + IFC4X1_IfcSpatialElementType_type, + IFC4X1_IfcSpatialStructureElement_type, + IFC4X1_IfcSpatialStructureElementType_type, + IFC4X1_IfcSpatialZone_type, + IFC4X1_IfcSpatialZoneType_type, + IFC4X1_IfcSpatialZoneTypeEnum_type, + IFC4X1_IfcSpecificHeatCapacityMeasure_type, + IFC4X1_IfcSpecularExponent_type, + IFC4X1_IfcSpecularHighlightSelect_type, + IFC4X1_IfcSpecularRoughness_type, + IFC4X1_IfcSphere_type, + IFC4X1_IfcSphericalSurface_type, + IFC4X1_IfcStackTerminal_type, + IFC4X1_IfcStackTerminalType_type, + IFC4X1_IfcStackTerminalTypeEnum_type, + IFC4X1_IfcStair_type, + IFC4X1_IfcStairFlight_type, + IFC4X1_IfcStairFlightType_type, + IFC4X1_IfcStairFlightTypeEnum_type, + IFC4X1_IfcStairType_type, + IFC4X1_IfcStairTypeEnum_type, + IFC4X1_IfcStateEnum_type, + IFC4X1_IfcStructuralAction_type, + IFC4X1_IfcStructuralActivity_type, + IFC4X1_IfcStructuralActivityAssignmentSelect_type, + IFC4X1_IfcStructuralAnalysisModel_type, + IFC4X1_IfcStructuralConnection_type, + IFC4X1_IfcStructuralConnectionCondition_type, + IFC4X1_IfcStructuralCurveAction_type, + IFC4X1_IfcStructuralCurveActivityTypeEnum_type, + IFC4X1_IfcStructuralCurveConnection_type, + IFC4X1_IfcStructuralCurveMember_type, + IFC4X1_IfcStructuralCurveMemberTypeEnum_type, + IFC4X1_IfcStructuralCurveMemberVarying_type, + IFC4X1_IfcStructuralCurveReaction_type, + IFC4X1_IfcStructuralItem_type, + IFC4X1_IfcStructuralLinearAction_type, + IFC4X1_IfcStructuralLoad_type, + IFC4X1_IfcStructuralLoadCase_type, + IFC4X1_IfcStructuralLoadConfiguration_type, + IFC4X1_IfcStructuralLoadGroup_type, + IFC4X1_IfcStructuralLoadLinearForce_type, + IFC4X1_IfcStructuralLoadOrResult_type, + IFC4X1_IfcStructuralLoadPlanarForce_type, + IFC4X1_IfcStructuralLoadSingleDisplacement_type, + IFC4X1_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X1_IfcStructuralLoadSingleForce_type, + IFC4X1_IfcStructuralLoadSingleForceWarping_type, + IFC4X1_IfcStructuralLoadStatic_type, + IFC4X1_IfcStructuralLoadTemperature_type, + IFC4X1_IfcStructuralMember_type, + IFC4X1_IfcStructuralPlanarAction_type, + IFC4X1_IfcStructuralPointAction_type, + IFC4X1_IfcStructuralPointConnection_type, + IFC4X1_IfcStructuralPointReaction_type, + IFC4X1_IfcStructuralReaction_type, + IFC4X1_IfcStructuralResultGroup_type, + IFC4X1_IfcStructuralSurfaceAction_type, + IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X1_IfcStructuralSurfaceConnection_type, + IFC4X1_IfcStructuralSurfaceMember_type, + IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X1_IfcStructuralSurfaceMemberVarying_type, + IFC4X1_IfcStructuralSurfaceReaction_type, + IFC4X1_IfcStyleAssignmentSelect_type, + IFC4X1_IfcStyledItem_type, + IFC4X1_IfcStyledRepresentation_type, + IFC4X1_IfcStyleModel_type, + IFC4X1_IfcSubContractResource_type, + IFC4X1_IfcSubContractResourceType_type, + IFC4X1_IfcSubContractResourceTypeEnum_type, + IFC4X1_IfcSubedge_type, + IFC4X1_IfcSurface_type, + IFC4X1_IfcSurfaceCurve_type, + IFC4X1_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X1_IfcSurfaceFeature_type, + IFC4X1_IfcSurfaceFeatureTypeEnum_type, + IFC4X1_IfcSurfaceOfLinearExtrusion_type, + IFC4X1_IfcSurfaceOfRevolution_type, + IFC4X1_IfcSurfaceOrFaceSurface_type, + IFC4X1_IfcSurfaceReinforcementArea_type, + IFC4X1_IfcSurfaceSide_type, + IFC4X1_IfcSurfaceStyle_type, + IFC4X1_IfcSurfaceStyleElementSelect_type, + IFC4X1_IfcSurfaceStyleLighting_type, + IFC4X1_IfcSurfaceStyleRefraction_type, + IFC4X1_IfcSurfaceStyleRendering_type, + IFC4X1_IfcSurfaceStyleShading_type, + IFC4X1_IfcSurfaceStyleWithTextures_type, + IFC4X1_IfcSurfaceTexture_type, + IFC4X1_IfcSweptAreaSolid_type, + IFC4X1_IfcSweptDiskSolid_type, + IFC4X1_IfcSweptDiskSolidPolygonal_type, + IFC4X1_IfcSweptSurface_type, + IFC4X1_IfcSwitchingDevice_type, + IFC4X1_IfcSwitchingDeviceType_type, + IFC4X1_IfcSwitchingDeviceTypeEnum_type, + IFC4X1_IfcSystem_type, + IFC4X1_IfcSystemFurnitureElement_type, + IFC4X1_IfcSystemFurnitureElementType_type, + IFC4X1_IfcSystemFurnitureElementTypeEnum_type, + IFC4X1_IfcTable_type, + IFC4X1_IfcTableColumn_type, + IFC4X1_IfcTableRow_type, + IFC4X1_IfcTank_type, + IFC4X1_IfcTankType_type, + IFC4X1_IfcTankTypeEnum_type, + IFC4X1_IfcTask_type, + IFC4X1_IfcTaskDurationEnum_type, + IFC4X1_IfcTaskTime_type, + IFC4X1_IfcTaskTimeRecurring_type, + IFC4X1_IfcTaskType_type, + IFC4X1_IfcTaskTypeEnum_type, + IFC4X1_IfcTelecomAddress_type, + IFC4X1_IfcTemperatureGradientMeasure_type, + IFC4X1_IfcTemperatureRateOfChangeMeasure_type, + IFC4X1_IfcTendon_type, + IFC4X1_IfcTendonAnchor_type, + IFC4X1_IfcTendonAnchorType_type, + IFC4X1_IfcTendonAnchorTypeEnum_type, + IFC4X1_IfcTendonType_type, + IFC4X1_IfcTendonTypeEnum_type, + IFC4X1_IfcTessellatedFaceSet_type, + IFC4X1_IfcTessellatedItem_type, + IFC4X1_IfcText_type, + IFC4X1_IfcTextAlignment_type, + IFC4X1_IfcTextDecoration_type, + IFC4X1_IfcTextFontName_type, + IFC4X1_IfcTextFontSelect_type, + IFC4X1_IfcTextLiteral_type, + IFC4X1_IfcTextLiteralWithExtent_type, + IFC4X1_IfcTextPath_type, + IFC4X1_IfcTextStyle_type, + IFC4X1_IfcTextStyleFontModel_type, + IFC4X1_IfcTextStyleForDefinedFont_type, + IFC4X1_IfcTextStyleTextModel_type, + IFC4X1_IfcTextTransformation_type, + IFC4X1_IfcTextureCoordinate_type, + IFC4X1_IfcTextureCoordinateGenerator_type, + IFC4X1_IfcTextureMap_type, + IFC4X1_IfcTextureVertex_type, + IFC4X1_IfcTextureVertexList_type, + IFC4X1_IfcThermalAdmittanceMeasure_type, + IFC4X1_IfcThermalConductivityMeasure_type, + IFC4X1_IfcThermalExpansionCoefficientMeasure_type, + IFC4X1_IfcThermalResistanceMeasure_type, + IFC4X1_IfcThermalTransmittanceMeasure_type, + IFC4X1_IfcThermodynamicTemperatureMeasure_type, + IFC4X1_IfcTime_type, + IFC4X1_IfcTimeMeasure_type, + IFC4X1_IfcTimeOrRatioSelect_type, + IFC4X1_IfcTimePeriod_type, + IFC4X1_IfcTimeSeries_type, + IFC4X1_IfcTimeSeriesDataTypeEnum_type, + IFC4X1_IfcTimeSeriesValue_type, + IFC4X1_IfcTimeStamp_type, + IFC4X1_IfcTopologicalRepresentationItem_type, + IFC4X1_IfcTopologyRepresentation_type, + IFC4X1_IfcToroidalSurface_type, + IFC4X1_IfcTorqueMeasure_type, + IFC4X1_IfcTransformer_type, + IFC4X1_IfcTransformerType_type, + IFC4X1_IfcTransformerTypeEnum_type, + IFC4X1_IfcTransitionCode_type, + IFC4X1_IfcTransitionCurveSegment2D_type, + IFC4X1_IfcTransitionCurveType_type, + IFC4X1_IfcTranslationalStiffnessSelect_type, + IFC4X1_IfcTransportElement_type, + IFC4X1_IfcTransportElementType_type, + IFC4X1_IfcTransportElementTypeEnum_type, + IFC4X1_IfcTrapeziumProfileDef_type, + IFC4X1_IfcTriangulatedFaceSet_type, + IFC4X1_IfcTriangulatedIrregularNetwork_type, + IFC4X1_IfcTrimmedCurve_type, + IFC4X1_IfcTrimmingPreference_type, + IFC4X1_IfcTrimmingSelect_type, + IFC4X1_IfcTShapeProfileDef_type, + IFC4X1_IfcTubeBundle_type, + IFC4X1_IfcTubeBundleType_type, + IFC4X1_IfcTubeBundleTypeEnum_type, + IFC4X1_IfcTypeObject_type, + IFC4X1_IfcTypeProcess_type, + IFC4X1_IfcTypeProduct_type, + IFC4X1_IfcTypeResource_type, + IFC4X1_IfcUnit_type, + IFC4X1_IfcUnitaryControlElement_type, + IFC4X1_IfcUnitaryControlElementType_type, + IFC4X1_IfcUnitaryControlElementTypeEnum_type, + IFC4X1_IfcUnitaryEquipment_type, + IFC4X1_IfcUnitaryEquipmentType_type, + IFC4X1_IfcUnitaryEquipmentTypeEnum_type, + IFC4X1_IfcUnitAssignment_type, + IFC4X1_IfcUnitEnum_type, + IFC4X1_IfcURIReference_type, + IFC4X1_IfcUShapeProfileDef_type, + IFC4X1_IfcValue_type, + IFC4X1_IfcValve_type, + IFC4X1_IfcValveType_type, + IFC4X1_IfcValveTypeEnum_type, + IFC4X1_IfcVaporPermeabilityMeasure_type, + IFC4X1_IfcVector_type, + IFC4X1_IfcVectorOrDirection_type, + IFC4X1_IfcVertex_type, + IFC4X1_IfcVertexLoop_type, + IFC4X1_IfcVertexPoint_type, + IFC4X1_IfcVibrationIsolator_type, + IFC4X1_IfcVibrationIsolatorType_type, + IFC4X1_IfcVibrationIsolatorTypeEnum_type, + IFC4X1_IfcVirtualElement_type, + IFC4X1_IfcVirtualGridIntersection_type, + IFC4X1_IfcVoidingFeature_type, + IFC4X1_IfcVoidingFeatureTypeEnum_type, + IFC4X1_IfcVolumeMeasure_type, + IFC4X1_IfcVolumetricFlowRateMeasure_type, + IFC4X1_IfcWall_type, + IFC4X1_IfcWallElementedCase_type, + IFC4X1_IfcWallStandardCase_type, + IFC4X1_IfcWallType_type, + IFC4X1_IfcWallTypeEnum_type, + IFC4X1_IfcWarpingConstantMeasure_type, + IFC4X1_IfcWarpingMomentMeasure_type, + IFC4X1_IfcWarpingStiffnessSelect_type, + IFC4X1_IfcWasteTerminal_type, + IFC4X1_IfcWasteTerminalType_type, + IFC4X1_IfcWasteTerminalTypeEnum_type, + IFC4X1_IfcWindow_type, + IFC4X1_IfcWindowLiningProperties_type, + IFC4X1_IfcWindowPanelOperationEnum_type, + IFC4X1_IfcWindowPanelPositionEnum_type, + IFC4X1_IfcWindowPanelProperties_type, + IFC4X1_IfcWindowStandardCase_type, + IFC4X1_IfcWindowStyle_type, + IFC4X1_IfcWindowStyleConstructionEnum_type, + IFC4X1_IfcWindowStyleOperationEnum_type, + IFC4X1_IfcWindowType_type, + IFC4X1_IfcWindowTypeEnum_type, + IFC4X1_IfcWindowTypePartitioningEnum_type, + IFC4X1_IfcWorkCalendar_type, + IFC4X1_IfcWorkCalendarTypeEnum_type, + IFC4X1_IfcWorkControl_type, + IFC4X1_IfcWorkPlan_type, + IFC4X1_IfcWorkPlanTypeEnum_type, + IFC4X1_IfcWorkSchedule_type, + IFC4X1_IfcWorkScheduleTypeEnum_type, + IFC4X1_IfcWorkTime_type, + IFC4X1_IfcZone_type, + IFC4X1_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3379], declarations, new IFC4X1_instance_factory()); } diff --git a/src/ifcparse/Ifc4x1.cpp b/src/ifcparse/Ifc4x1.cpp index 6799e2678f..38aa024b6b 100644 --- a/src/ifcparse/Ifc4x1.cpp +++ b/src/ifcparse/Ifc4x1.cpp @@ -1262,20 +1262,11 @@ Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string& v) } const char* Ifc4x1::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcActionRequestTypeEnum::Value Ifc4x1::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcActionRequestTypeEnum::Value) IFC4X1_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcActionRequestTypeEnum::operator Ifc4x1::IfcActionRequestTypeEnum::Value() const { @@ -1304,40 +1295,11 @@ Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcActionSourceTypeEnum::Value Ifc4x1::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcActionSourceTypeEnum::Value) IFC4X1_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcActionSourceTypeEnum::operator Ifc4x1::IfcActionSourceTypeEnum::Value() const { @@ -1366,18 +1328,11 @@ Ifc4x1::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcActionTypeEnum::Value Ifc4x1::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4x1::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x1::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4x1::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4x1::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcActionTypeEnum::Value) IFC4X1_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcActionTypeEnum::operator Ifc4x1::IfcActionTypeEnum::Value() const { @@ -1406,20 +1361,11 @@ Ifc4x1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcActuatorTypeEnum::Value Ifc4x1::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcActuatorTypeEnum::Value) IFC4X1_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcActuatorTypeEnum::operator Ifc4x1::IfcActuatorTypeEnum::Value() const { @@ -1448,18 +1394,11 @@ Ifc4x1::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4X1_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAddressTypeEnum::Value Ifc4x1::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x1::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x1::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4x1::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x1::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAddressTypeEnum::Value) IFC4X1_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAddressTypeEnum::operator Ifc4x1::IfcAddressTypeEnum::Value() const { @@ -1488,18 +1427,11 @@ Ifc4x1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::string& } const char* Ifc4x1::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAirTerminalBoxTypeEnum::Value Ifc4x1::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAirTerminalBoxTypeEnum::Value) IFC4X1_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAirTerminalBoxTypeEnum::operator Ifc4x1::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1528,19 +1460,11 @@ Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAirTerminalTypeEnum::Value Ifc4x1::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAirTerminalTypeEnum::Value) IFC4X1_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAirTerminalTypeEnum::operator Ifc4x1::IfcAirTerminalTypeEnum::Value() const { @@ -1569,24 +1493,11 @@ Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const s } const char* Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X1_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x1::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1615,21 +1526,11 @@ Ifc4x1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAlarmTypeEnum::Value Ifc4x1::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAlarmTypeEnum::Value) IFC4X1_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAlarmTypeEnum::operator Ifc4x1::IfcAlarmTypeEnum::Value() const { @@ -1658,15 +1559,11 @@ Ifc4x1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAlignmentTypeEnum::Value Ifc4x1::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAlignmentTypeEnum::Value) IFC4X1_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAlignmentTypeEnum::operator Ifc4x1::IfcAlignmentTypeEnum::Value() const { @@ -1695,18 +1592,11 @@ Ifc4x1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string& v) } const char* Ifc4x1::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAnalysisModelTypeEnum::Value Ifc4x1::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAnalysisModelTypeEnum::Value) IFC4X1_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAnalysisModelTypeEnum::operator Ifc4x1::IfcAnalysisModelTypeEnum::Value() const { @@ -1735,19 +1625,11 @@ Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::string& } const char* Ifc4x1::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAnalysisTheoryTypeEnum::Value Ifc4x1::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAnalysisTheoryTypeEnum::Value) IFC4X1_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAnalysisTheoryTypeEnum::operator Ifc4x1::IfcAnalysisTheoryTypeEnum::Value() const { @@ -1776,17 +1658,11 @@ Ifc4x1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::string& } const char* Ifc4x1::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X1_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcArithmeticOperatorEnum::Value Ifc4x1::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcArithmeticOperatorEnum::Value) IFC4X1_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcArithmeticOperatorEnum::operator Ifc4x1::IfcArithmeticOperatorEnum::Value() const { @@ -1815,16 +1691,11 @@ Ifc4x1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x1::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAssemblyPlaceEnum::Value Ifc4x1::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4x1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4x1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAssemblyPlaceEnum::Value) IFC4X1_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAssemblyPlaceEnum::operator Ifc4x1::IfcAssemblyPlaceEnum::Value() const { @@ -1853,26 +1724,11 @@ Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(const s } const char* Ifc4x1::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcAudioVisualApplianceTypeEnum::Value Ifc4x1::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcAudioVisualApplianceTypeEnum::Value) IFC4X1_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcAudioVisualApplianceTypeEnum::operator Ifc4x1::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -1901,19 +1757,11 @@ Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x1::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4X1_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBSplineCurveForm::Value Ifc4x1::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4x1::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBSplineCurveForm::Value) IFC4X1_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x1::IfcBSplineCurveForm::operator Ifc4x1::IfcBSplineCurveForm::Value() const { @@ -1942,24 +1790,11 @@ Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4x1::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4X1_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBSplineSurfaceForm::Value Ifc4x1::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4x1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBSplineSurfaceForm::Value) IFC4X1_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x1::IfcBSplineSurfaceForm::operator Ifc4x1::IfcBSplineSurfaceForm::Value() const { @@ -1988,21 +1823,11 @@ Ifc4x1::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBeamTypeEnum::Value Ifc4x1::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "USERDEFINED") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBeamTypeEnum::Value) IFC4X1_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBeamTypeEnum::operator Ifc4x1::IfcBeamTypeEnum::Value() const { @@ -2031,23 +1856,11 @@ Ifc4x1::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x1::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4X1_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBenchmarkEnum::Value Ifc4x1::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4x1::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBenchmarkEnum::Value) IFC4X1_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBenchmarkEnum::operator Ifc4x1::IfcBenchmarkEnum::Value() const { @@ -2076,17 +1889,11 @@ Ifc4x1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBoilerTypeEnum::Value Ifc4x1::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4x1::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4x1::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4x1::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBoilerTypeEnum::Value) IFC4X1_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBoilerTypeEnum::operator Ifc4x1::IfcBoilerTypeEnum::Value() const { @@ -2115,16 +1922,11 @@ Ifc4x1::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x1::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4X1_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBooleanOperator::Value Ifc4x1::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4x1::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4x1::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4x1::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBooleanOperator::Value) IFC4X1_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x1::IfcBooleanOperator::operator Ifc4x1::IfcBooleanOperator::Value() const { @@ -2153,17 +1955,11 @@ Ifc4x1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const std } const char* Ifc4x1::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBuildingElementPartTypeEnum::Value Ifc4x1::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4x1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBuildingElementPartTypeEnum::Value) IFC4X1_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBuildingElementPartTypeEnum::operator Ifc4x1::IfcBuildingElementPartTypeEnum::Value() const { @@ -2192,20 +1988,11 @@ Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const s } const char* Ifc4x1::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBuildingElementProxyTypeEnum::Value Ifc4x1::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBuildingElementProxyTypeEnum::Value) IFC4X1_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBuildingElementProxyTypeEnum::operator Ifc4x1::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2234,21 +2021,11 @@ Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::string& } const char* Ifc4x1::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBuildingSystemTypeEnum::Value Ifc4x1::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBuildingSystemTypeEnum::Value) IFC4X1_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBuildingSystemTypeEnum::operator Ifc4x1::IfcBuildingSystemTypeEnum::Value() const { @@ -2277,15 +2054,11 @@ Ifc4x1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcBurnerTypeEnum::Value Ifc4x1::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcBurnerTypeEnum::Value) IFC4X1_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcBurnerTypeEnum::operator Ifc4x1::IfcBurnerTypeEnum::Value() const { @@ -2314,19 +2087,11 @@ Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std } const char* Ifc4x1::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCableCarrierFittingTypeEnum::Value Ifc4x1::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCableCarrierFittingTypeEnum::Value) IFC4X1_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCableCarrierFittingTypeEnum::operator Ifc4x1::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2355,19 +2120,11 @@ Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std } const char* Ifc4x1::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCableCarrierSegmentTypeEnum::Value Ifc4x1::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCableCarrierSegmentTypeEnum::Value) IFC4X1_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCableCarrierSegmentTypeEnum::operator Ifc4x1::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2396,20 +2153,11 @@ Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCableFittingTypeEnum::Value Ifc4x1::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCableFittingTypeEnum::Value) IFC4X1_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCableFittingTypeEnum::operator Ifc4x1::IfcCableFittingTypeEnum::Value() const { @@ -2438,19 +2186,11 @@ Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCableSegmentTypeEnum::Value Ifc4x1::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCableSegmentTypeEnum::Value) IFC4X1_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCableSegmentTypeEnum::operator Ifc4x1::IfcCableSegmentTypeEnum::Value() const { @@ -2479,18 +2219,11 @@ Ifc4x1::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x1::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcChangeActionEnum::Value Ifc4x1::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4x1::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4x1::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4x1::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x1::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcChangeActionEnum::Value) IFC4X1_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcChangeActionEnum::operator Ifc4x1::IfcChangeActionEnum::Value() const { @@ -2519,18 +2252,11 @@ Ifc4x1::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcChillerTypeEnum::Value Ifc4x1::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x1::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4x1::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x1::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4x1::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcChillerTypeEnum::Value) IFC4X1_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcChillerTypeEnum::operator Ifc4x1::IfcChillerTypeEnum::Value() const { @@ -2559,15 +2285,11 @@ Ifc4x1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcChimneyTypeEnum::Value Ifc4x1::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcChimneyTypeEnum::Value) IFC4X1_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcChimneyTypeEnum::operator Ifc4x1::IfcChimneyTypeEnum::Value() const { @@ -2596,22 +2318,11 @@ Ifc4x1::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCoilTypeEnum::Value Ifc4x1::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCoilTypeEnum::Value) IFC4X1_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCoilTypeEnum::operator Ifc4x1::IfcCoilTypeEnum::Value() const { @@ -2640,17 +2351,11 @@ Ifc4x1::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcColumnTypeEnum::Value Ifc4x1::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x1::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4x1::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcColumnTypeEnum::Value) IFC4X1_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcColumnTypeEnum::operator Ifc4x1::IfcColumnTypeEnum::Value() const { @@ -2679,27 +2384,11 @@ Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(c } const char* Ifc4x1::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCommunicationsApplianceTypeEnum::Value Ifc4x1::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCommunicationsApplianceTypeEnum::Value) IFC4X1_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCommunicationsApplianceTypeEnum::operator Ifc4x1::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -2728,15 +2417,11 @@ Ifc4x1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(c } const char* Ifc4x1::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X1_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x1::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X1_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x1::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -2765,30 +2450,11 @@ Ifc4x1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCompressorTypeEnum::Value Ifc4x1::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCompressorTypeEnum::Value) IFC4X1_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCompressorTypeEnum::operator Ifc4x1::IfcCompressorTypeEnum::Value() const { @@ -2817,22 +2483,11 @@ Ifc4x1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCondenserTypeEnum::Value Ifc4x1::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCondenserTypeEnum::Value) IFC4X1_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCondenserTypeEnum::operator Ifc4x1::IfcCondenserTypeEnum::Value() const { @@ -2861,17 +2516,11 @@ Ifc4x1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcConnectionTypeEnum::Value Ifc4x1::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4x1::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x1::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4x1::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcConnectionTypeEnum::Value) IFC4X1_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcConnectionTypeEnum::operator Ifc4x1::IfcConnectionTypeEnum::Value() const { @@ -2900,18 +2549,11 @@ Ifc4x1::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x1::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcConstraintEnum::Value Ifc4x1::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4x1::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x1::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4x1::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4x1::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcConstraintEnum::Value) IFC4X1_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcConstraintEnum::operator Ifc4x1::IfcConstraintEnum::Value() const { @@ -2940,23 +2582,11 @@ Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResour } const char* Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X1_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x1::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -2985,24 +2615,11 @@ Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResource } const char* Ifc4x1::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4X1_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x1::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4x1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X1_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x1::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3031,17 +2648,11 @@ Ifc4x1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTy } const char* Ifc4x1::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcConstructionProductResourceTypeEnum::Value Ifc4x1::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcConstructionProductResourceTypeEnum::Value) IFC4X1_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcConstructionProductResourceTypeEnum::operator Ifc4x1::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3070,20 +2681,11 @@ Ifc4x1::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcControllerTypeEnum::Value Ifc4x1::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcControllerTypeEnum::Value) IFC4X1_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcControllerTypeEnum::operator Ifc4x1::IfcControllerTypeEnum::Value() const { @@ -3112,17 +2714,11 @@ Ifc4x1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCooledBeamTypeEnum::Value Ifc4x1::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x1::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x1::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCooledBeamTypeEnum::Value) IFC4X1_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCooledBeamTypeEnum::operator Ifc4x1::IfcCooledBeamTypeEnum::Value() const { @@ -3151,18 +2747,11 @@ Ifc4x1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCoolingTowerTypeEnum::Value Ifc4x1::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4x1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCoolingTowerTypeEnum::Value) IFC4X1_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCoolingTowerTypeEnum::operator Ifc4x1::IfcCoolingTowerTypeEnum::Value() const { @@ -3191,15 +2780,11 @@ Ifc4x1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCostItemTypeEnum::Value Ifc4x1::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCostItemTypeEnum::Value) IFC4X1_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCostItemTypeEnum::operator Ifc4x1::IfcCostItemTypeEnum::Value() const { @@ -3228,22 +2813,11 @@ Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCostScheduleTypeEnum::Value Ifc4x1::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCostScheduleTypeEnum::Value) IFC4X1_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCostScheduleTypeEnum::operator Ifc4x1::IfcCostScheduleTypeEnum::Value() const { @@ -3272,25 +2846,11 @@ Ifc4x1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCoveringTypeEnum::Value Ifc4x1::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCoveringTypeEnum::Value) IFC4X1_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCoveringTypeEnum::operator Ifc4x1::IfcCoveringTypeEnum::Value() const { @@ -3319,17 +2879,11 @@ Ifc4x1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCrewResourceTypeEnum::Value Ifc4x1::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x1::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x1::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCrewResourceTypeEnum::Value) IFC4X1_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCrewResourceTypeEnum::operator Ifc4x1::IfcCrewResourceTypeEnum::Value() const { @@ -3358,15 +2912,11 @@ Ifc4x1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCurtainWallTypeEnum::Value Ifc4x1::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCurtainWallTypeEnum::Value) IFC4X1_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCurtainWallTypeEnum::operator Ifc4x1::IfcCurtainWallTypeEnum::Value() const { @@ -3395,17 +2945,11 @@ Ifc4x1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::string& } const char* Ifc4x1::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcCurveInterpolationEnum::Value Ifc4x1::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcCurveInterpolationEnum::Value) IFC4X1_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcCurveInterpolationEnum::operator Ifc4x1::IfcCurveInterpolationEnum::Value() const { @@ -3434,26 +2978,11 @@ Ifc4x1::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDamperTypeEnum::Value Ifc4x1::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDamperTypeEnum::Value) IFC4X1_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDamperTypeEnum::operator Ifc4x1::IfcDamperTypeEnum::Value() const { @@ -3482,18 +3011,11 @@ Ifc4x1::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x1::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDataOriginEnum::Value Ifc4x1::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x1::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x1::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x1::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDataOriginEnum::Value) IFC4X1_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDataOriginEnum::operator Ifc4x1::IfcDataOriginEnum::Value() const { @@ -3522,66 +3044,11 @@ Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x1::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X1_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDerivedUnitEnum::Value Ifc4x1::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDerivedUnitEnum::Value) IFC4X1_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDerivedUnitEnum::operator Ifc4x1::IfcDerivedUnitEnum::Value() const { @@ -3610,15 +3077,11 @@ Ifc4x1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4x1::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4X1_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDirectionSenseEnum::Value Ifc4x1::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x1::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x1::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDirectionSenseEnum::Value) IFC4X1_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDirectionSenseEnum::operator Ifc4x1::IfcDirectionSenseEnum::Value() const { @@ -3647,18 +3110,11 @@ Ifc4x1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std::st } const char* Ifc4x1::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDiscreteAccessoryTypeEnum::Value Ifc4x1::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4x1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4x1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDiscreteAccessoryTypeEnum::Value) IFC4X1_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDiscreteAccessoryTypeEnum::operator Ifc4x1::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -3687,23 +3143,11 @@ Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType } const char* Ifc4x1::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDistributionChamberElementTypeEnum::Value Ifc4x1::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDistributionChamberElementTypeEnum::Value) IFC4X1_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDistributionChamberElementTypeEnum::operator Ifc4x1::IfcDistributionChamberElementTypeEnum::Value() const { @@ -3732,19 +3176,11 @@ Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std::stri } const char* Ifc4x1::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDistributionPortTypeEnum::Value Ifc4x1::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDistributionPortTypeEnum::Value) IFC4X1_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDistributionPortTypeEnum::operator Ifc4x1::IfcDistributionPortTypeEnum::Value() const { @@ -3773,57 +3209,11 @@ Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::string& } const char* Ifc4x1::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 44 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDistributionSystemEnum::Value Ifc4x1::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDistributionSystemEnum::Value) IFC4X1_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDistributionSystemEnum::operator Ifc4x1::IfcDistributionSystemEnum::Value() const { @@ -3852,19 +3242,11 @@ Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std } const char* Ifc4x1::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDocumentConfidentialityEnum::Value Ifc4x1::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDocumentConfidentialityEnum::Value) IFC4X1_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDocumentConfidentialityEnum::operator Ifc4x1::IfcDocumentConfidentialityEnum::Value() const { @@ -3893,18 +3275,11 @@ Ifc4x1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4x1::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDocumentStatusEnum::Value Ifc4x1::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x1::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4x1::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4x1::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4x1::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDocumentStatusEnum::Value) IFC4X1_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDocumentStatusEnum::operator Ifc4x1::IfcDocumentStatusEnum::Value() const { @@ -3933,22 +3308,11 @@ Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::string& } const char* Ifc4x1::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDoorPanelOperationEnum::Value Ifc4x1::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDoorPanelOperationEnum::Value) IFC4X1_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDoorPanelOperationEnum::operator Ifc4x1::IfcDoorPanelOperationEnum::Value() const { @@ -3977,17 +3341,11 @@ Ifc4x1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string& v) } const char* Ifc4x1::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDoorPanelPositionEnum::Value Ifc4x1::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDoorPanelPositionEnum::Value) IFC4X1_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDoorPanelPositionEnum::operator Ifc4x1::IfcDoorPanelPositionEnum::Value() const { @@ -4016,22 +3374,11 @@ Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std::st } const char* Ifc4x1::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDoorStyleConstructionEnum::Value Ifc4x1::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDoorStyleConstructionEnum::Value) IFC4X1_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDoorStyleConstructionEnum::operator Ifc4x1::IfcDoorStyleConstructionEnum::Value() const { @@ -4060,31 +3407,11 @@ Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::string& } const char* Ifc4x1::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDoorStyleOperationEnum::Value Ifc4x1::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDoorStyleOperationEnum::Value) IFC4X1_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDoorStyleOperationEnum::operator Ifc4x1::IfcDoorStyleOperationEnum::Value() const { @@ -4113,18 +3440,11 @@ Ifc4x1::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDoorTypeEnum::Value Ifc4x1::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4x1::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x1::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x1::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDoorTypeEnum::Value) IFC4X1_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDoorTypeEnum::operator Ifc4x1::IfcDoorTypeEnum::Value() const { @@ -4153,33 +3473,11 @@ Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string& v) } const char* Ifc4x1::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 20 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDoorTypeOperationEnum::Value Ifc4x1::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDoorTypeOperationEnum::Value) IFC4X1_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDoorTypeOperationEnum::operator Ifc4x1::IfcDoorTypeOperationEnum::Value() const { @@ -4208,22 +3506,11 @@ Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDuctFittingTypeEnum::Value Ifc4x1::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDuctFittingTypeEnum::Value) IFC4X1_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDuctFittingTypeEnum::operator Ifc4x1::IfcDuctFittingTypeEnum::Value() const { @@ -4252,17 +3539,11 @@ Ifc4x1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDuctSegmentTypeEnum::Value Ifc4x1::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4x1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDuctSegmentTypeEnum::Value) IFC4X1_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDuctSegmentTypeEnum::operator Ifc4x1::IfcDuctSegmentTypeEnum::Value() const { @@ -4291,18 +3572,11 @@ Ifc4x1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcDuctSilencerTypeEnum::Value Ifc4x1::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcDuctSilencerTypeEnum::Value) IFC4X1_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcDuctSilencerTypeEnum::operator Ifc4x1::IfcDuctSilencerTypeEnum::Value() const { @@ -4331,31 +3605,11 @@ Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::st } const char* Ifc4x1::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElectricApplianceTypeEnum::Value Ifc4x1::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElectricApplianceTypeEnum::Value) IFC4X1_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElectricApplianceTypeEnum::operator Ifc4x1::IfcElectricApplianceTypeEnum::Value() const { @@ -4384,19 +3638,11 @@ Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEn } const char* Ifc4x1::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElectricDistributionBoardTypeEnum::Value Ifc4x1::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElectricDistributionBoardTypeEnum::Value) IFC4X1_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElectricDistributionBoardTypeEnum::operator Ifc4x1::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -4425,20 +3671,11 @@ Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEn } const char* Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X1_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x1::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -4467,18 +3704,11 @@ Ifc4x1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::st } const char* Ifc4x1::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElectricGeneratorTypeEnum::Value Ifc4x1::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElectricGeneratorTypeEnum::Value) IFC4X1_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElectricGeneratorTypeEnum::operator Ifc4x1::IfcElectricGeneratorTypeEnum::Value() const { @@ -4507,20 +3737,11 @@ Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string& v) } const char* Ifc4x1::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElectricMotorTypeEnum::Value Ifc4x1::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElectricMotorTypeEnum::Value) IFC4X1_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElectricMotorTypeEnum::operator Ifc4x1::IfcElectricMotorTypeEnum::Value() const { @@ -4549,18 +3770,11 @@ Ifc4x1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std } const char* Ifc4x1::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElectricTimeControlTypeEnum::Value Ifc4x1::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4x1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4x1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElectricTimeControlTypeEnum::Value) IFC4X1_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElectricTimeControlTypeEnum::operator Ifc4x1::IfcElectricTimeControlTypeEnum::Value() const { @@ -4589,24 +3803,11 @@ Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::string } const char* Ifc4x1::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElementAssemblyTypeEnum::Value Ifc4x1::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElementAssemblyTypeEnum::Value) IFC4X1_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElementAssemblyTypeEnum::operator Ifc4x1::IfcElementAssemblyTypeEnum::Value() const { @@ -4635,16 +3836,11 @@ Ifc4x1::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::string& } const char* Ifc4x1::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X1_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcElementCompositionEnum::Value Ifc4x1::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x1::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x1::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x1::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcElementCompositionEnum::Value) IFC4X1_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcElementCompositionEnum::operator Ifc4x1::IfcElementCompositionEnum::Value() const { @@ -4673,17 +3869,11 @@ Ifc4x1::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcEngineTypeEnum::Value Ifc4x1::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x1::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x1::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcEngineTypeEnum::Value) IFC4X1_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcEngineTypeEnum::operator Ifc4x1::IfcEngineTypeEnum::Value() const { @@ -4712,24 +3902,11 @@ Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::st } const char* Ifc4x1::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcEvaporativeCoolerTypeEnum::Value Ifc4x1::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcEvaporativeCoolerTypeEnum::Value) IFC4X1_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcEvaporativeCoolerTypeEnum::operator Ifc4x1::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -4758,21 +3935,11 @@ Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcEvaporatorTypeEnum::Value Ifc4x1::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcEvaporatorTypeEnum::Value) IFC4X1_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcEvaporatorTypeEnum::operator Ifc4x1::IfcEvaporatorTypeEnum::Value() const { @@ -4801,19 +3968,11 @@ Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcEventTriggerTypeEnum::Value Ifc4x1::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcEventTriggerTypeEnum::Value) IFC4X1_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcEventTriggerTypeEnum::operator Ifc4x1::IfcEventTriggerTypeEnum::Value() const { @@ -4842,18 +4001,11 @@ Ifc4x1::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcEventTypeEnum::Value Ifc4x1::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4x1::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4x1::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x1::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcEventTypeEnum::Value) IFC4X1_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcEventTypeEnum::operator Ifc4x1::IfcEventTypeEnum::Value() const { @@ -4882,19 +4034,11 @@ Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(con } const char* Ifc4x1::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcExternalSpatialElementTypeEnum::Value Ifc4x1::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcExternalSpatialElementTypeEnum::Value) IFC4X1_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcExternalSpatialElementTypeEnum::operator Ifc4x1::IfcExternalSpatialElementTypeEnum::Value() const { @@ -4923,22 +4067,11 @@ Ifc4x1::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFanTypeEnum::Value Ifc4x1::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFanTypeEnum::Value) IFC4X1_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFanTypeEnum::operator Ifc4x1::IfcFanTypeEnum::Value() const { @@ -4967,18 +4100,11 @@ Ifc4x1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFastenerTypeEnum::Value Ifc4x1::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x1::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x1::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x1::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFastenerTypeEnum::Value) IFC4X1_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFastenerTypeEnum::operator Ifc4x1::IfcFastenerTypeEnum::Value() const { @@ -5007,21 +4133,11 @@ Ifc4x1::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFilterTypeEnum::Value Ifc4x1::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFilterTypeEnum::Value) IFC4X1_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFilterTypeEnum::operator Ifc4x1::IfcFilterTypeEnum::Value() const { @@ -5050,20 +4166,11 @@ Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(c } const char* Ifc4x1::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x1::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X1_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x1::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -5092,17 +4199,11 @@ Ifc4x1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x1::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFlowDirectionEnum::Value Ifc4x1::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4x1::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4x1::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4x1::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFlowDirectionEnum::Value) IFC4X1_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFlowDirectionEnum::operator Ifc4x1::IfcFlowDirectionEnum::Value() const { @@ -5131,23 +4232,11 @@ Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::string& } const char* Ifc4x1::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFlowInstrumentTypeEnum::Value Ifc4x1::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFlowInstrumentTypeEnum::Value) IFC4X1_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFlowInstrumentTypeEnum::operator Ifc4x1::IfcFlowInstrumentTypeEnum::Value() const { @@ -5176,19 +4265,11 @@ Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFlowMeterTypeEnum::Value Ifc4x1::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFlowMeterTypeEnum::Value) IFC4X1_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFlowMeterTypeEnum::operator Ifc4x1::IfcFlowMeterTypeEnum::Value() const { @@ -5217,20 +4298,11 @@ Ifc4x1::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFootingTypeEnum::Value Ifc4x1::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFootingTypeEnum::Value) IFC4X1_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFootingTypeEnum::operator Ifc4x1::IfcFootingTypeEnum::Value() const { @@ -5259,22 +4331,11 @@ Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcFurnitureTypeEnum::Value Ifc4x1::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "USERDEFINED") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcFurnitureTypeEnum::Value) IFC4X1_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcFurnitureTypeEnum::operator Ifc4x1::IfcFurnitureTypeEnum::Value() const { @@ -5303,16 +4364,11 @@ Ifc4x1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std::st } const char* Ifc4x1::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcGeographicElementTypeEnum::Value Ifc4x1::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4x1::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "USERDEFINED") return ::Ifc4x1::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcGeographicElementTypeEnum::Value) IFC4X1_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcGeographicElementTypeEnum::operator Ifc4x1::IfcGeographicElementTypeEnum::Value() const { @@ -5341,22 +4397,11 @@ Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::string } const char* Ifc4x1::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcGeometricProjectionEnum::Value Ifc4x1::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcGeometricProjectionEnum::Value) IFC4X1_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcGeometricProjectionEnum::operator Ifc4x1::IfcGeometricProjectionEnum::Value() const { @@ -5385,15 +4430,11 @@ Ifc4x1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x1::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X1_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcGlobalOrLocalEnum::Value Ifc4x1::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x1::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x1::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcGlobalOrLocalEnum::Value) IFC4X1_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcGlobalOrLocalEnum::operator Ifc4x1::IfcGlobalOrLocalEnum::Value() const { @@ -5422,19 +4463,11 @@ Ifc4x1::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcGridTypeEnum::Value Ifc4x1::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4x1::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4x1::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4x1::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4x1::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcGridTypeEnum::Value) IFC4X1_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcGridTypeEnum::operator Ifc4x1::IfcGridTypeEnum::Value() const { @@ -5463,17 +4496,11 @@ Ifc4x1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string& v) } const char* Ifc4x1::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcHeatExchangerTypeEnum::Value Ifc4x1::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcHeatExchangerTypeEnum::Value) IFC4X1_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcHeatExchangerTypeEnum::operator Ifc4x1::IfcHeatExchangerTypeEnum::Value() const { @@ -5502,28 +4529,11 @@ Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcHumidifierTypeEnum::Value Ifc4x1::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcHumidifierTypeEnum::Value) IFC4X1_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcHumidifierTypeEnum::operator Ifc4x1::IfcHumidifierTypeEnum::Value() const { @@ -5552,19 +4562,11 @@ Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcInterceptorTypeEnum::Value Ifc4x1::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcInterceptorTypeEnum::Value) IFC4X1_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcInterceptorTypeEnum::operator Ifc4x1::IfcInterceptorTypeEnum::Value() const { @@ -5593,19 +4595,11 @@ Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::string& } const char* Ifc4x1::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcInternalOrExternalEnum::Value Ifc4x1::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcInternalOrExternalEnum::Value) IFC4X1_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcInternalOrExternalEnum::operator Ifc4x1::IfcInternalOrExternalEnum::Value() const { @@ -5634,18 +4628,11 @@ Ifc4x1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcInventoryTypeEnum::Value Ifc4x1::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x1::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x1::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x1::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x1::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcInventoryTypeEnum::Value) IFC4X1_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcInventoryTypeEnum::operator Ifc4x1::IfcInventoryTypeEnum::Value() const { @@ -5674,17 +4661,11 @@ Ifc4x1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcJunctionBoxTypeEnum::Value Ifc4x1::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcJunctionBoxTypeEnum::Value) IFC4X1_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcJunctionBoxTypeEnum::operator Ifc4x1::IfcJunctionBoxTypeEnum::Value() const { @@ -5713,17 +4694,11 @@ Ifc4x1::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x1::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X1_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcKnotType::Value Ifc4x1::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4x1::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x1::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x1::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x1::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcKnotType::Value) IFC4X1_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x1::IfcKnotType::operator Ifc4x1::IfcKnotType::Value() const { @@ -5752,34 +4727,11 @@ Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string& v) } const char* Ifc4x1::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLaborResourceTypeEnum::Value Ifc4x1::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLaborResourceTypeEnum::Value) IFC4X1_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLaborResourceTypeEnum::operator Ifc4x1::IfcLaborResourceTypeEnum::Value() const { @@ -5808,24 +4760,11 @@ Ifc4x1::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLampTypeEnum::Value Ifc4x1::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLampTypeEnum::Value) IFC4X1_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLampTypeEnum::operator Ifc4x1::IfcLampTypeEnum::Value() const { @@ -5854,16 +4793,11 @@ Ifc4x1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string& v) } const char* Ifc4x1::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X1_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLayerSetDirectionEnum::Value Ifc4x1::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLayerSetDirectionEnum::Value) IFC4X1_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLayerSetDirectionEnum::operator Ifc4x1::IfcLayerSetDirectionEnum::Value() const { @@ -5892,17 +4826,11 @@ Ifc4x1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std:: } const char* Ifc4x1::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLightDistributionCurveEnum::Value Ifc4x1::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLightDistributionCurveEnum::Value) IFC4X1_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLightDistributionCurveEnum::operator Ifc4x1::IfcLightDistributionCurveEnum::Value() const { @@ -5931,24 +4859,11 @@ Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::string } const char* Ifc4x1::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLightEmissionSourceEnum::Value Ifc4x1::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLightEmissionSourceEnum::Value) IFC4X1_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLightEmissionSourceEnum::operator Ifc4x1::IfcLightEmissionSourceEnum::Value() const { @@ -5977,18 +4892,11 @@ Ifc4x1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLightFixtureTypeEnum::Value Ifc4x1::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4x1::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4x1::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x1::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLightFixtureTypeEnum::Value) IFC4X1_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLightFixtureTypeEnum::operator Ifc4x1::IfcLightFixtureTypeEnum::Value() const { @@ -6017,18 +4925,11 @@ Ifc4x1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLoadGroupTypeEnum::Value Ifc4x1::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4x1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4x1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLoadGroupTypeEnum::Value) IFC4X1_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLoadGroupTypeEnum::operator Ifc4x1::IfcLoadGroupTypeEnum::Value() const { @@ -6057,18 +4958,11 @@ Ifc4x1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) { } const char* Ifc4x1::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4X1_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcLogicalOperatorEnum::Value Ifc4x1::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4x1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4x1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcLogicalOperatorEnum::Value) IFC4X1_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcLogicalOperatorEnum::operator Ifc4x1::IfcLogicalOperatorEnum::Value() const { @@ -6097,25 +4991,11 @@ Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const std:: } const char* Ifc4x1::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcMechanicalFastenerTypeEnum::Value Ifc4x1::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcMechanicalFastenerTypeEnum::Value) IFC4X1_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcMechanicalFastenerTypeEnum::operator Ifc4x1::IfcMechanicalFastenerTypeEnum::Value() const { @@ -6144,20 +5024,11 @@ Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string& v) } const char* Ifc4x1::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcMedicalDeviceTypeEnum::Value Ifc4x1::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcMedicalDeviceTypeEnum::Value) IFC4X1_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcMedicalDeviceTypeEnum::operator Ifc4x1::IfcMedicalDeviceTypeEnum::Value() const { @@ -6186,27 +5057,11 @@ Ifc4x1::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcMemberTypeEnum::Value Ifc4x1::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "USERDEFINED") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcMemberTypeEnum::Value) IFC4X1_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcMemberTypeEnum::operator Ifc4x1::IfcMemberTypeEnum::Value() const { @@ -6235,18 +5090,11 @@ Ifc4x1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::string } const char* Ifc4x1::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcMotorConnectionTypeEnum::Value Ifc4x1::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcMotorConnectionTypeEnum::Value) IFC4X1_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcMotorConnectionTypeEnum::operator Ifc4x1::IfcMotorConnectionTypeEnum::Value() const { @@ -6275,14 +5123,11 @@ Ifc4x1::IfcNullStyle::IfcNullStyle(const std::string& v) { } const char* Ifc4x1::IfcNullStyle::ToString(Value v) { - if ( v < 0 || v >= 1 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NULL" }; - return names[v]; + return IFC4X1_IfcNullStyle_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcNullStyle::Value Ifc4x1::IfcNullStyle::FromString(const std::string& s) { - if (s == "NULL") return ::Ifc4x1::IfcNullStyle::IfcNullStyle_NULL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcNullStyle::Value) IFC4X1_IfcNullStyle_type->lookup_enum_offset(s); } Ifc4x1::IfcNullStyle::operator Ifc4x1::IfcNullStyle::Value() const { @@ -6311,21 +5156,11 @@ Ifc4x1::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcObjectTypeEnum::Value Ifc4x1::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcObjectTypeEnum::Value) IFC4X1_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcObjectTypeEnum::operator Ifc4x1::IfcObjectTypeEnum::Value() const { @@ -6354,26 +5189,11 @@ Ifc4x1::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x1::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcObjectiveEnum::Value Ifc4x1::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcObjectiveEnum::Value) IFC4X1_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcObjectiveEnum::operator Ifc4x1::IfcObjectiveEnum::Value() const { @@ -6402,22 +5222,11 @@ Ifc4x1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcOccupantTypeEnum::Value Ifc4x1::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcOccupantTypeEnum::Value) IFC4X1_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcOccupantTypeEnum::operator Ifc4x1::IfcOccupantTypeEnum::Value() const { @@ -6446,17 +5255,11 @@ Ifc4x1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::string& } const char* Ifc4x1::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcOpeningElementTypeEnum::Value Ifc4x1::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x1::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x1::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x1::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcOpeningElementTypeEnum::Value) IFC4X1_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcOpeningElementTypeEnum::operator Ifc4x1::IfcOpeningElementTypeEnum::Value() const { @@ -6485,20 +5288,11 @@ Ifc4x1::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcOutletTypeEnum::Value Ifc4x1::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcOutletTypeEnum::Value) IFC4X1_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcOutletTypeEnum::operator Ifc4x1::IfcOutletTypeEnum::Value() const { @@ -6527,15 +5321,11 @@ Ifc4x1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const std:: } const char* Ifc4x1::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPerformanceHistoryTypeEnum::Value Ifc4x1::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPerformanceHistoryTypeEnum::Value) IFC4X1_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPerformanceHistoryTypeEnum::operator Ifc4x1::IfcPerformanceHistoryTypeEnum::Value() const { @@ -6564,18 +5354,11 @@ Ifc4x1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(con } const char* Ifc4x1::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPermeableCoveringOperationEnum::Value Ifc4x1::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPermeableCoveringOperationEnum::Value) IFC4X1_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPermeableCoveringOperationEnum::operator Ifc4x1::IfcPermeableCoveringOperationEnum::Value() const { @@ -6604,18 +5387,11 @@ Ifc4x1::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPermitTypeEnum::Value Ifc4x1::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x1::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x1::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x1::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPermitTypeEnum::Value) IFC4X1_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPermitTypeEnum::operator Ifc4x1::IfcPermitTypeEnum::Value() const { @@ -6644,16 +5420,11 @@ Ifc4x1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string& v) } const char* Ifc4x1::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPhysicalOrVirtualEnum::Value Ifc4x1::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPhysicalOrVirtualEnum::Value) IFC4X1_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPhysicalOrVirtualEnum::operator Ifc4x1::IfcPhysicalOrVirtualEnum::Value() const { @@ -6682,19 +5453,11 @@ Ifc4x1::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& v) { } const char* Ifc4x1::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPileConstructionEnum::Value Ifc4x1::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x1::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x1::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x1::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x1::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPileConstructionEnum::Value) IFC4X1_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPileConstructionEnum::operator Ifc4x1::IfcPileConstructionEnum::Value() const { @@ -6723,21 +5486,11 @@ Ifc4x1::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPileTypeEnum::Value Ifc4x1::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPileTypeEnum::Value) IFC4X1_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPileTypeEnum::operator Ifc4x1::IfcPileTypeEnum::Value() const { @@ -6766,22 +5519,11 @@ Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPipeFittingTypeEnum::Value Ifc4x1::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPipeFittingTypeEnum::Value) IFC4X1_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPipeFittingTypeEnum::operator Ifc4x1::IfcPipeFittingTypeEnum::Value() const { @@ -6810,20 +5552,11 @@ Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPipeSegmentTypeEnum::Value Ifc4x1::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPipeSegmentTypeEnum::Value) IFC4X1_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPipeSegmentTypeEnum::operator Ifc4x1::IfcPipeSegmentTypeEnum::Value() const { @@ -6852,17 +5585,11 @@ Ifc4x1::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPlateTypeEnum::Value Ifc4x1::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4x1::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4x1::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPlateTypeEnum::Value) IFC4X1_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPlateTypeEnum::operator Ifc4x1::IfcPlateTypeEnum::Value() const { @@ -6891,16 +5618,11 @@ Ifc4x1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresen } const char* Ifc4x1::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X1_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x1::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X1_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x1::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x1::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -6929,22 +5651,11 @@ Ifc4x1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProcedureTypeEnum::Value Ifc4x1::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProcedureTypeEnum::Value) IFC4X1_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProcedureTypeEnum::operator Ifc4x1::IfcProcedureTypeEnum::Value() const { @@ -6973,15 +5684,11 @@ Ifc4x1::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4X1_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProfileTypeEnum::Value Ifc4x1::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4x1::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4x1::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProfileTypeEnum::Value) IFC4X1_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProfileTypeEnum::operator Ifc4x1::IfcProfileTypeEnum::Value() const { @@ -7010,20 +5717,11 @@ Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProjectOrderTypeEnum::Value Ifc4x1::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProjectOrderTypeEnum::Value) IFC4X1_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProjectOrderTypeEnum::operator Ifc4x1::IfcProjectOrderTypeEnum::Value() const { @@ -7052,15 +5750,11 @@ Ifc4x1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::st } const char* Ifc4x1::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X1_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProjectedOrTrueLengthEnum::Value Ifc4x1::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProjectedOrTrueLengthEnum::Value) IFC4X1_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProjectedOrTrueLengthEnum::operator Ifc4x1::IfcProjectedOrTrueLengthEnum::Value() const { @@ -7089,15 +5783,11 @@ Ifc4x1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std::st } const char* Ifc4x1::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProjectionElementTypeEnum::Value Ifc4x1::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProjectionElementTypeEnum::Value) IFC4X1_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProjectionElementTypeEnum::operator Ifc4x1::IfcProjectionElementTypeEnum::Value() const { @@ -7126,21 +5816,11 @@ Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const std } const char* Ifc4x1::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPropertySetTemplateTypeEnum::Value Ifc4x1::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPropertySetTemplateTypeEnum::Value) IFC4X1_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPropertySetTemplateTypeEnum::operator Ifc4x1::IfcPropertySetTemplateTypeEnum::Value() const { @@ -7169,19 +5849,11 @@ Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnit } const char* Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X1_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -7210,22 +5882,11 @@ Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::stri } const char* Ifc4x1::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcProtectiveDeviceTypeEnum::Value Ifc4x1::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcProtectiveDeviceTypeEnum::Value) IFC4X1_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcProtectiveDeviceTypeEnum::operator Ifc4x1::IfcProtectiveDeviceTypeEnum::Value() const { @@ -7254,22 +5915,11 @@ Ifc4x1::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcPumpTypeEnum::Value Ifc4x1::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcPumpTypeEnum::Value) IFC4X1_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcPumpTypeEnum::operator Ifc4x1::IfcPumpTypeEnum::Value() const { @@ -7298,18 +5948,11 @@ Ifc4x1::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcRailingTypeEnum::Value Ifc4x1::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4x1::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4x1::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4x1::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcRailingTypeEnum::Value) IFC4X1_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcRailingTypeEnum::operator Ifc4x1::IfcRailingTypeEnum::Value() const { @@ -7338,17 +5981,11 @@ Ifc4x1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcRampFlightTypeEnum::Value Ifc4x1::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x1::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4x1::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcRampFlightTypeEnum::Value) IFC4X1_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcRampFlightTypeEnum::operator Ifc4x1::IfcRampFlightTypeEnum::Value() const { @@ -7377,21 +6014,11 @@ Ifc4x1::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcRampTypeEnum::Value Ifc4x1::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcRampTypeEnum::Value) IFC4X1_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcRampTypeEnum::operator Ifc4x1::IfcRampTypeEnum::Value() const { @@ -7420,21 +6047,11 @@ Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X1_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcRecurrenceTypeEnum::Value Ifc4x1::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x1::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcRecurrenceTypeEnum::Value) IFC4X1_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcRecurrenceTypeEnum::operator Ifc4x1::IfcRecurrenceTypeEnum::Value() const { @@ -7463,18 +6080,11 @@ Ifc4x1::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "KILOPOINT", "MILEPOINT", "STATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcReferentTypeEnum::Value Ifc4x1::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "KILOPOINT") return ::Ifc4x1::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "MILEPOINT") return ::Ifc4x1::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "STATION") return ::Ifc4x1::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcReferentTypeEnum::Value) IFC4X1_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcReferentTypeEnum::operator Ifc4x1::IfcReferentTypeEnum::Value() const { @@ -7503,23 +6113,11 @@ Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string& v) } const char* Ifc4x1::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcReflectanceMethodEnum::Value Ifc4x1::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcReflectanceMethodEnum::Value) IFC4X1_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcReflectanceMethodEnum::operator Ifc4x1::IfcReflectanceMethodEnum::Value() const { @@ -7548,23 +6146,11 @@ Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::string& } const char* Ifc4x1::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcReinforcingBarRoleEnum::Value Ifc4x1::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcReinforcingBarRoleEnum::Value) IFC4X1_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcReinforcingBarRoleEnum::operator Ifc4x1::IfcReinforcingBarRoleEnum::Value() const { @@ -7593,15 +6179,11 @@ Ifc4x1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::st } const char* Ifc4x1::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X1_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcReinforcingBarSurfaceEnum::Value Ifc4x1::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcReinforcingBarSurfaceEnum::Value) IFC4X1_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcReinforcingBarSurfaceEnum::operator Ifc4x1::IfcReinforcingBarSurfaceEnum::Value() const { @@ -7630,23 +6212,11 @@ Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::string& } const char* Ifc4x1::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcReinforcingBarTypeEnum::Value Ifc4x1::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "USERDEFINED") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcReinforcingBarTypeEnum::Value) IFC4X1_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcReinforcingBarTypeEnum::operator Ifc4x1::IfcReinforcingBarTypeEnum::Value() const { @@ -7675,15 +6245,11 @@ Ifc4x1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::string } const char* Ifc4x1::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcReinforcingMeshTypeEnum::Value Ifc4x1::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcReinforcingMeshTypeEnum::Value) IFC4X1_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcReinforcingMeshTypeEnum::operator Ifc4x1::IfcReinforcingMeshTypeEnum::Value() const { @@ -7712,36 +6278,11 @@ Ifc4x1::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x1::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4X1_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcRoleEnum::Value Ifc4x1::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4x1::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4x1::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4x1::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4x1::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4x1::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4x1::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4x1::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4x1::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4x1::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4x1::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4x1::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4x1::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4x1::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x1::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x1::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4x1::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcRoleEnum::Value) IFC4X1_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcRoleEnum::operator Ifc4x1::IfcRoleEnum::Value() const { @@ -7770,28 +6311,11 @@ Ifc4x1::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcRoofTypeEnum::Value Ifc4x1::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcRoofTypeEnum::Value) IFC4X1_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcRoofTypeEnum::operator Ifc4x1::IfcRoofTypeEnum::Value() const { @@ -7820,29 +6344,11 @@ Ifc4x1::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x1::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4X1_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSIPrefix::Value Ifc4x1::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4x1::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSIPrefix::Value) IFC4X1_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x1::IfcSIPrefix::operator Ifc4x1::IfcSIPrefix::Value() const { @@ -7871,43 +6377,11 @@ Ifc4x1::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x1::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X1_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSIUnitName::Value Ifc4x1::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x1::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSIUnitName::Value) IFC4X1_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x1::IfcSIUnitName::operator Ifc4x1::IfcSIUnitName::Value() const { @@ -7936,25 +6410,11 @@ Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::stri } const char* Ifc4x1::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSanitaryTerminalTypeEnum::Value Ifc4x1::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSanitaryTerminalTypeEnum::Value) IFC4X1_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSanitaryTerminalTypeEnum::operator Ifc4x1::IfcSanitaryTerminalTypeEnum::Value() const { @@ -7983,15 +6443,11 @@ Ifc4x1::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4X1_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSectionTypeEnum::Value Ifc4x1::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4x1::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4x1::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSectionTypeEnum::Value) IFC4X1_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSectionTypeEnum::operator Ifc4x1::IfcSectionTypeEnum::Value() const { @@ -8020,39 +6476,11 @@ Ifc4x1::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSensorTypeEnum::Value Ifc4x1::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSensorTypeEnum::Value) IFC4X1_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSensorTypeEnum::operator Ifc4x1::IfcSensorTypeEnum::Value() const { @@ -8081,19 +6509,11 @@ Ifc4x1::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x1::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSequenceEnum::Value Ifc4x1::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4x1::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4x1::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4x1::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4x1::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSequenceEnum::Value) IFC4X1_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSequenceEnum::operator Ifc4x1::IfcSequenceEnum::Value() const { @@ -8122,18 +6542,11 @@ Ifc4x1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string& v) } const char* Ifc4x1::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcShadingDeviceTypeEnum::Value Ifc4x1::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4x1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4x1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcShadingDeviceTypeEnum::Value) IFC4X1_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcShadingDeviceTypeEnum::operator Ifc4x1::IfcShadingDeviceTypeEnum::Value() const { @@ -8162,25 +6575,11 @@ Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(con } const char* Ifc4x1::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4X1_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x1::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4x1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X1_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x1::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -8209,19 +6608,11 @@ Ifc4x1::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSlabTypeEnum::Value Ifc4x1::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4x1::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4x1::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4x1::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4x1::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSlabTypeEnum::Value) IFC4X1_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSlabTypeEnum::operator Ifc4x1::IfcSlabTypeEnum::Value() const { @@ -8250,17 +6641,11 @@ Ifc4x1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSolarDeviceTypeEnum::Value Ifc4x1::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSolarDeviceTypeEnum::Value) IFC4X1_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSolarDeviceTypeEnum::operator Ifc4x1::IfcSolarDeviceTypeEnum::Value() const { @@ -8289,17 +6674,11 @@ Ifc4x1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSpaceHeaterTypeEnum::Value Ifc4x1::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSpaceHeaterTypeEnum::Value) IFC4X1_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSpaceHeaterTypeEnum::operator Ifc4x1::IfcSpaceHeaterTypeEnum::Value() const { @@ -8328,20 +6707,11 @@ Ifc4x1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSpaceTypeEnum::Value Ifc4x1::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSpaceTypeEnum::Value) IFC4X1_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSpaceTypeEnum::operator Ifc4x1::IfcSpaceTypeEnum::Value() const { @@ -8370,23 +6740,11 @@ Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSpatialZoneTypeEnum::Value Ifc4x1::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSpatialZoneTypeEnum::Value) IFC4X1_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSpatialZoneTypeEnum::operator Ifc4x1::IfcSpatialZoneTypeEnum::Value() const { @@ -8415,18 +6773,11 @@ Ifc4x1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string& v) } const char* Ifc4x1::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStackTerminalTypeEnum::Value Ifc4x1::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x1::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x1::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x1::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStackTerminalTypeEnum::Value) IFC4X1_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStackTerminalTypeEnum::operator Ifc4x1::IfcStackTerminalTypeEnum::Value() const { @@ -8455,20 +6806,11 @@ Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStairFlightTypeEnum::Value Ifc4x1::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStairFlightTypeEnum::Value) IFC4X1_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStairFlightTypeEnum::operator Ifc4x1::IfcStairFlightTypeEnum::Value() const { @@ -8497,29 +6839,11 @@ Ifc4x1::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStairTypeEnum::Value Ifc4x1::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStairTypeEnum::Value) IFC4X1_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStairTypeEnum::operator Ifc4x1::IfcStairTypeEnum::Value() const { @@ -8548,18 +6872,11 @@ Ifc4x1::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x1::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4X1_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStateEnum::Value Ifc4x1::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4x1::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4x1::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4x1::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4x1::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4x1::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStateEnum::Value) IFC4X1_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStateEnum::operator Ifc4x1::IfcStateEnum::Value() const { @@ -8588,22 +6905,11 @@ Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(c } const char* Ifc4x1::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStructuralCurveActivityTypeEnum::Value Ifc4x1::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStructuralCurveActivityTypeEnum::Value) IFC4X1_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStructuralCurveActivityTypeEnum::operator Ifc4x1::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -8632,20 +6938,11 @@ Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(const } const char* Ifc4x1::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStructuralCurveMemberTypeEnum::Value Ifc4x1::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStructuralCurveMemberTypeEnum::Value) IFC4X1_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStructuralCurveMemberTypeEnum::operator Ifc4x1::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -8674,19 +6971,11 @@ Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEn } const char* Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X1_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x1::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -8715,18 +7004,11 @@ Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(c } const char* Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X1_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x1::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -8755,17 +7037,11 @@ Ifc4x1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const std } const char* Ifc4x1::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSubContractResourceTypeEnum::Value Ifc4x1::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSubContractResourceTypeEnum::Value) IFC4X1_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSubContractResourceTypeEnum::operator Ifc4x1::IfcSubContractResourceTypeEnum::Value() const { @@ -8794,18 +7070,11 @@ Ifc4x1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::string& } const char* Ifc4x1::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSurfaceFeatureTypeEnum::Value Ifc4x1::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4x1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4x1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4x1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSurfaceFeatureTypeEnum::Value) IFC4X1_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSurfaceFeatureTypeEnum::operator Ifc4x1::IfcSurfaceFeatureTypeEnum::Value() const { @@ -8834,16 +7103,11 @@ Ifc4x1::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x1::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4X1_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSurfaceSide::Value Ifc4x1::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x1::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x1::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4x1::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSurfaceSide::Value) IFC4X1_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x1::IfcSurfaceSide::operator Ifc4x1::IfcSurfaceSide::Value() const { @@ -8872,24 +7136,11 @@ Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::string } const char* Ifc4x1::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSwitchingDeviceTypeEnum::Value Ifc4x1::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSwitchingDeviceTypeEnum::Value) IFC4X1_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSwitchingDeviceTypeEnum::operator Ifc4x1::IfcSwitchingDeviceTypeEnum::Value() const { @@ -8918,17 +7169,11 @@ Ifc4x1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(con } const char* Ifc4x1::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcSystemFurnitureElementTypeEnum::Value Ifc4x1::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4x1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcSystemFurnitureElementTypeEnum::Value) IFC4X1_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcSystemFurnitureElementTypeEnum::operator Ifc4x1::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -8957,22 +7202,11 @@ Ifc4x1::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTankTypeEnum::Value Ifc4x1::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTankTypeEnum::Value) IFC4X1_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTankTypeEnum::operator Ifc4x1::IfcTankTypeEnum::Value() const { @@ -9001,16 +7235,11 @@ Ifc4x1::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x1::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTaskDurationEnum::Value Ifc4x1::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x1::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x1::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTaskDurationEnum::Value) IFC4X1_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTaskDurationEnum::operator Ifc4x1::IfcTaskDurationEnum::Value() const { @@ -9039,27 +7268,11 @@ Ifc4x1::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTaskTypeEnum::Value Ifc4x1::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTaskTypeEnum::Value) IFC4X1_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTaskTypeEnum::operator Ifc4x1::IfcTaskTypeEnum::Value() const { @@ -9088,18 +7301,11 @@ Ifc4x1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTendonAnchorTypeEnum::Value Ifc4x1::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTendonAnchorTypeEnum::Value) IFC4X1_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTendonAnchorTypeEnum::operator Ifc4x1::IfcTendonAnchorTypeEnum::Value() const { @@ -9128,19 +7334,11 @@ Ifc4x1::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTendonTypeEnum::Value Ifc4x1::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x1::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x1::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x1::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x1::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTendonTypeEnum::Value) IFC4X1_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTendonTypeEnum::operator Ifc4x1::IfcTendonTypeEnum::Value() const { @@ -9169,17 +7367,11 @@ Ifc4x1::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x1::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4X1_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTextPath::Value Ifc4x1::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x1::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x1::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x1::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4x1::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTextPath::Value) IFC4X1_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x1::IfcTextPath::operator Ifc4x1::IfcTextPath::Value() const { @@ -9208,20 +7400,11 @@ Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::string& } const char* Ifc4x1::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTimeSeriesDataTypeEnum::Value Ifc4x1::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTimeSeriesDataTypeEnum::Value) IFC4X1_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTimeSeriesDataTypeEnum::operator Ifc4x1::IfcTimeSeriesDataTypeEnum::Value() const { @@ -9250,20 +7433,11 @@ Ifc4x1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTransformerTypeEnum::Value Ifc4x1::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTransformerTypeEnum::Value) IFC4X1_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTransformerTypeEnum::operator Ifc4x1::IfcTransformerTypeEnum::Value() const { @@ -9292,17 +7466,11 @@ Ifc4x1::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x1::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4X1_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTransitionCode::Value Ifc4x1::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4x1::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4x1::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x1::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x1::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTransitionCode::Value) IFC4X1_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x1::IfcTransitionCode::operator Ifc4x1::IfcTransitionCode::Value() const { @@ -9331,19 +7499,11 @@ Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType(const std::string& v) { } const char* Ifc4x1::IfcTransitionCurveType::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIQUADRATICPARABOLA", "BLOSSCURVE", "CLOTHOIDCURVE", "COSINECURVE", "CUBICPARABOLA", "SINECURVE" }; - return names[v]; + return IFC4X1_IfcTransitionCurveType_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTransitionCurveType::Value Ifc4x1::IfcTransitionCurveType::FromString(const std::string& s) { - if (s == "BIQUADRATICPARABOLA") return ::Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType_BIQUADRATICPARABOLA; - if (s == "BLOSSCURVE") return ::Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType_BLOSSCURVE; - if (s == "CLOTHOIDCURVE") return ::Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType_CLOTHOIDCURVE; - if (s == "COSINECURVE") return ::Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType_COSINECURVE; - if (s == "CUBICPARABOLA") return ::Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType_CUBICPARABOLA; - if (s == "SINECURVE") return ::Ifc4x1::IfcTransitionCurveType::IfcTransitionCurveType_SINECURVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTransitionCurveType::Value) IFC4X1_IfcTransitionCurveType_type->lookup_enum_offset(s); } Ifc4x1::IfcTransitionCurveType::operator Ifc4x1::IfcTransitionCurveType::Value() const { @@ -9372,20 +7532,11 @@ Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::stri } const char* Ifc4x1::IfcTransportElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTransportElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTransportElementTypeEnum::Value Ifc4x1::IfcTransportElementTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_LIFTINGGEAR; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTransportElementTypeEnum::IfcTransportElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTransportElementTypeEnum::Value) IFC4X1_IfcTransportElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTransportElementTypeEnum::operator Ifc4x1::IfcTransportElementTypeEnum::Value() const { @@ -9414,16 +7565,11 @@ Ifc4x1::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4x1::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X1_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTrimmingPreference::Value Ifc4x1::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x1::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x1::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x1::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTrimmingPreference::Value) IFC4X1_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x1::IfcTrimmingPreference::operator Ifc4x1::IfcTrimmingPreference::Value() const { @@ -9452,16 +7598,11 @@ Ifc4x1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcTubeBundleTypeEnum::Value Ifc4x1::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x1::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x1::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcTubeBundleTypeEnum::Value) IFC4X1_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcTubeBundleTypeEnum::operator Ifc4x1::IfcTubeBundleTypeEnum::Value() const { @@ -9490,43 +7631,11 @@ Ifc4x1::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x1::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X1_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcUnitEnum::Value Ifc4x1::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x1::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcUnitEnum::Value) IFC4X1_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcUnitEnum::operator Ifc4x1::IfcUnitEnum::Value() const { @@ -9555,23 +7664,11 @@ Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(const } const char* Ifc4x1::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcUnitaryControlElementTypeEnum::Value Ifc4x1::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "USERDEFINED") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcUnitaryControlElementTypeEnum::Value) IFC4X1_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcUnitaryControlElementTypeEnum::operator Ifc4x1::IfcUnitaryControlElementTypeEnum::Value() const { @@ -9600,20 +7697,11 @@ Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::stri } const char* Ifc4x1::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcUnitaryEquipmentTypeEnum::Value Ifc4x1::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcUnitaryEquipmentTypeEnum::Value) IFC4X1_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcUnitaryEquipmentTypeEnum::operator Ifc4x1::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -9642,36 +7730,11 @@ Ifc4x1::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcValveTypeEnum::Value Ifc4x1::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcValveTypeEnum::Value) IFC4X1_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcValveTypeEnum::operator Ifc4x1::IfcValveTypeEnum::Value() const { @@ -9700,17 +7763,11 @@ Ifc4x1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::st } const char* Ifc4x1::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcVibrationIsolatorTypeEnum::Value Ifc4x1::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4x1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "USERDEFINED") return ::Ifc4x1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcVibrationIsolatorTypeEnum::Value) IFC4X1_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcVibrationIsolatorTypeEnum::operator Ifc4x1::IfcVibrationIsolatorTypeEnum::Value() const { @@ -9739,21 +7796,11 @@ Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::string& } const char* Ifc4x1::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcVoidingFeatureTypeEnum::Value Ifc4x1::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcVoidingFeatureTypeEnum::Value) IFC4X1_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcVoidingFeatureTypeEnum::operator Ifc4x1::IfcVoidingFeatureTypeEnum::Value() const { @@ -9782,24 +7829,11 @@ Ifc4x1::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWallTypeEnum::Value Ifc4x1::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWallTypeEnum::Value) IFC4X1_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWallTypeEnum::operator Ifc4x1::IfcWallTypeEnum::Value() const { @@ -9828,22 +7862,11 @@ Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string& v) } const char* Ifc4x1::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWasteTerminalTypeEnum::Value Ifc4x1::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWasteTerminalTypeEnum::Value) IFC4X1_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWasteTerminalTypeEnum::operator Ifc4x1::IfcWasteTerminalTypeEnum::Value() const { @@ -9872,27 +7895,11 @@ Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::stri } const char* Ifc4x1::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWindowPanelOperationEnum::Value Ifc4x1::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWindowPanelOperationEnum::Value) IFC4X1_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWindowPanelOperationEnum::operator Ifc4x1::IfcWindowPanelOperationEnum::Value() const { @@ -9921,19 +7928,11 @@ Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::string } const char* Ifc4x1::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWindowPanelPositionEnum::Value Ifc4x1::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWindowPanelPositionEnum::Value) IFC4X1_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWindowPanelPositionEnum::operator Ifc4x1::IfcWindowPanelPositionEnum::Value() const { @@ -9962,21 +7961,11 @@ Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const std } const char* Ifc4x1::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWindowStyleConstructionEnum::Value Ifc4x1::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWindowStyleConstructionEnum::Value) IFC4X1_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWindowStyleConstructionEnum::operator Ifc4x1::IfcWindowStyleConstructionEnum::Value() const { @@ -10005,24 +7994,11 @@ Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std::stri } const char* Ifc4x1::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWindowStyleOperationEnum::Value Ifc4x1::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWindowStyleOperationEnum::Value) IFC4X1_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWindowStyleOperationEnum::operator Ifc4x1::IfcWindowStyleOperationEnum::Value() const { @@ -10051,18 +8027,11 @@ Ifc4x1::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWindowTypeEnum::Value Ifc4x1::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4x1::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4x1::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4x1::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWindowTypeEnum::Value) IFC4X1_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWindowTypeEnum::operator Ifc4x1::IfcWindowTypeEnum::Value() const { @@ -10091,24 +8060,11 @@ Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const std:: } const char* Ifc4x1::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWindowTypePartitioningEnum::Value Ifc4x1::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWindowTypePartitioningEnum::Value) IFC4X1_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWindowTypePartitioningEnum::operator Ifc4x1::IfcWindowTypePartitioningEnum::Value() const { @@ -10137,18 +8093,11 @@ Ifc4x1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWorkCalendarTypeEnum::Value Ifc4x1::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWorkCalendarTypeEnum::Value) IFC4X1_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWorkCalendarTypeEnum::operator Ifc4x1::IfcWorkCalendarTypeEnum::Value() const { @@ -10177,18 +8126,11 @@ Ifc4x1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWorkPlanTypeEnum::Value Ifc4x1::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x1::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x1::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x1::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWorkPlanTypeEnum::Value) IFC4X1_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWorkPlanTypeEnum::operator Ifc4x1::IfcWorkPlanTypeEnum::Value() const { @@ -10217,18 +8159,11 @@ Ifc4x1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& v) { } const char* Ifc4x1::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X1_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x1::IfcWorkScheduleTypeEnum::Value Ifc4x1::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x1::IfcWorkScheduleTypeEnum::Value) IFC4X1_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x1::IfcWorkScheduleTypeEnum::operator Ifc4x1::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x2-schema.cpp b/src/ifcparse/Ifc4x2-schema.cpp index 0a9f35563f..8c79e89275 100644 --- a/src/ifcparse/Ifc4x2-schema.cpp +++ b/src/ifcparse/Ifc4x2-schema.cpp @@ -2425,6 +2425,3487 @@ class IFC4X2_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"IfcAlignmentTypeEnum"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"GIRDER_SEGMENT"s, +"DIAPHRAGM"s, +"PIERCAP"s, +"HATSTONE"s, +"CORNICE"s, +"EDGEBEAM"s, +"IfcBearingTypeDisplacementEnum"s, +"FIXED_MOVEMENT"s, +"GUIDED_LONGITUDINAL"s, +"GUIDED_TRANSVERSAL"s, +"FREE_MOVEMENT"s, +"IfcBearingTypeEnum"s, +"CYLINDRICAL"s, +"SPHERICAL"s, +"ELASTOMERIC"s, +"POT"s, +"GUIDE"s, +"ROCKER"s, +"ROLLER"s, +"DISK"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBridgePartTypeEnum"s, +"ABUTMENT"s, +"DECK"s, +"DECK_SEGMENT"s, +"FOUNDATION"s, +"PIER"s, +"PIER_SEGMENT"s, +"PYLON"s, +"SUBSTRUCTURE"s, +"SUPERSTRUCTURE"s, +"SURFACESTRUCTURE"s, +"IfcBridgeTypeEnum"s, +"ARCHED"s, +"CABLE_STAYED"s, +"CANTILEVER"s, +"CULVERT"s, +"FRAMEWORK"s, +"GIRDER"s, +"SUSPENSION"s, +"TRUSS"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"APRON"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"REINFORCING"s, +"PRESTRESSING"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"IfcCaissonFoundationTypeEnum"s, +"WELL"s, +"CAISSON"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"PIERSTEM"s, +"PIERSTEM_SEGMENT"s, +"STANDCOLUMN"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"COPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"EXPANSION_JOINT_DEVICE"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"IfcDoorTypeOperationEnum"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"CONSUMERUNIT"s, +"DISTRIBUTIONBOARD"s, +"MOTORCONTROLCENTRE"s, +"SWITCHBOARD"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"CROSS_BRACING"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"SOIL_BORING_POINT"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"COUPLER"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"STIFFENING_RIB"s, +"ARCH_SEGMENT"s, +"SUSPENSION_CABLE"s, +"SUSPENDER"s, +"STAY_CABLE"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNullStyle"s, +"NULL"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"FLANGE_PLATE"s, +"WEB_PLATE"s, +"STIFFENER_PLATE"s, +"GUSSET_PLATE"s, +"COVER_PLATE"s, +"SPLICE_PLATE"s, +"BASE_PLATE"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"BLISTER"s, +"DEVIATOR"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"GUARDRAIL"s, +"BALUSTRADE"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"KILOPOINT"s, +"MILEPOINT"s, +"STATION"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"SPACEBAR"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"APPROACH_SLAB"s, +"WEARING"s, +"SIDEWALK"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"DEFECT"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"STORAGE"s, +"VESSEL"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonConduitTypeEnum"s, +"GROUTING_DUCT"s, +"TRUMPET"s, +"DIABOLO"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTransitionCurveType"s, +"BIQUADRATICPARABOLA"s, +"BLOSSCURVE"s, +"CLOTHOIDCURVE"s, +"COSINECURVE"s, +"CUBICPARABOLA"s, +"SINECURVE"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationDamperTypeEnum"s, +"BENDING_YIELD"s, +"SHEAR_YIELD"s, +"AXIAL_YIELD"s, +"VISCOUS"s, +"RUBBER"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"BASE"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"RETAININGWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcPresentationStyleAssignment"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcDerivedMeasureValue"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcStyleAssignmentSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientationExpression"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcPresentationStyleSelect"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAlignment2DHorizontal"s, +"IfcAlignment2DSegment"s, +"IfcAlignment2DVertical"s, +"IfcAlignment2DVerticalSegment"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcDirection"s, +"IfcDistanceExpression"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelPositions"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAlignment2DHorizontalSegment"s, +"IfcAlignment2DVerSegCircularArc"s, +"IfcAlignment2DVerSegLine"s, +"IfcAlignment2DVerSegParabolicArc"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuildingElementType"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCurveSegment2D"s, +"IfcCylindricalSurface"s, +"IfcDeepFoundationType"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFacility"s, +"IfcFacilityPart"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLineSegment2D"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMotorConnectionType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailingType"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAggregates"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcShadingDeviceType"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonConduit"s, +"IfcTendonConduitType"s, +"IfcTendonType"s, +"IfcTransformerType"s, +"IfcTransitionCurveSegment2D"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationDamper"s, +"IfcVibrationDamperType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignmentCurve"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBearingType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBridge"s, +"IfcBridgePart"s, +"IfcBuilding"s, +"IfcBuildingElement"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxy"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingStorey"s, +"IfcBuildingSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcCaissonFoundationType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCircularArcSegment2D"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDeepFoundation"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMotorConnection"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBearing"s, +"IfcBoiler"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcCaissonFoundation"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"StartDistAlong"s, +"Segments"s, +"CurveGeometry"s, +"TangentialContinuity"s, +"StartTag"s, +"EndTag"s, +"Radius"s, +"IsConvex"s, +"ParabolaConstant"s, +"HorizontalLength"s, +"StartHeight"s, +"StartGradient"s, +"Horizontal"s, +"Vertical"s, +"Tag"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"IsCCW"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Transition"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"StartPoint"s, +"StartDirection"s, +"SegmentLength"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"AlongHorizontal"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"ModelorDraughting"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"PlacementMeasuredAlong"s, +"Distance"s, +"CartesianPosition"s, +"RelativePlacement"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"PlacementRelTo"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"LateralAxisDirection"s, +"VerticalAxisDirection"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"Placement"s, +"SizeInX"s, +"SizeInY"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"Styles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"RestartDistance"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatingPositioningElement"s, +"RelatedProducts"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"FixedAxisVertical"s, +"SpineCurve"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"StartRadius"s, +"EndRadius"s, +"IsStartRadiusCCW"s, +"IsEndRadiusCCW"s, +"TransitionCurveType"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ToAlignmentCurve"s, +"ToHorizontal"s, +"ToVertical"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"PositioningElement"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"UsingCurves"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"ReferencedInStructures"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"Positions"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"PositionedRelativeTo"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4X2"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2436,13368 +5917,10565 @@ __attribute__((optnone)) #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 items; items.reserve(5); - items.push_back(IFC4X2_IfcBooleanResult_type); - items.push_back(IFC4X2_IfcCsgPrimitive3D_type); - items.push_back(IFC4X2_IfcHalfSpaceSolid_type); - items.push_back(IFC4X2_IfcSolidModel_type); - items.push_back(IFC4X2_IfcTessellatedFaceSet_type); - IFC4X2_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 86, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcColourSpecification_type); - items.push_back(IFC4X2_IfcPreDefinedColour_type); - IFC4X2_IfcColour_type = new select_type("IfcColour", 172, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcColourRgb_type); - items.push_back(IFC4X2_IfcNormalisedRatioMeasure_type); - IFC4X2_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 173, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcBooleanResult_type); - items.push_back(IFC4X2_IfcCsgPrimitive3D_type); - IFC4X2_IfcCsgSelect_type = new select_type("IfcCsgSelect", 252, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcCurveStyleFont_type); - items.push_back(IFC4X2_IfcPreDefinedCurveFont_type); - IFC4X2_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 272, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X2_IfcColour_type); - items.push_back(IFC4X2_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X2_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X2_IfcFillAreaStyleTiles_type); - IFC4X2_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 435, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X2_IfcCurve_type); - items.push_back(IFC4X2_IfcPoint_type); - items.push_back(IFC4X2_IfcSurface_type); - IFC4X2_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 486, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcDirection_type); - items.push_back(IFC4X2_IfcVirtualGridIntersection_type); - IFC4X2_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 492, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X2_IfcAppliedValue_type); - items.push_back(IFC4X2_IfcMeasureWithUnit_type); - items.push_back(IFC4X2_IfcReference_type); - items.push_back(IFC4X2_IfcTable_type); - items.push_back(IFC4X2_IfcTimeSeries_type); - items.push_back(IFC4X2_IfcValue_type); - IFC4X2_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 623, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcProcess_type); - items.push_back(IFC4X2_IfcTypeProcess_type); - IFC4X2_IfcProcessSelect_type = new select_type("IfcProcessSelect", 745, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcProduct_type); - items.push_back(IFC4X2_IfcTypeProduct_type); - IFC4X2_IfcProductSelect_type = new select_type("IfcProductSelect", 750, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcPropertySetDefinition_type); - items.push_back(IFC4X2_IfcPropertySetDefinitionSet_type); - IFC4X2_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 773, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcResource_type); - items.push_back(IFC4X2_IfcTypeResource_type); - IFC4X2_IfcResourceSelect_type = new select_type("IfcResourceSelect", 894, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcClosedShell_type); - items.push_back(IFC4X2_IfcOpenShell_type); - IFC4X2_IfcShell_type = new select_type("IfcShell", 935, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcClosedShell_type); - items.push_back(IFC4X2_IfcSolidModel_type); - IFC4X2_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 957, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X2_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X2_IfcFaceSurface_type); - items.push_back(IFC4X2_IfcSurface_type); - IFC4X2_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1049, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcCartesianPoint_type); - items.push_back(IFC4X2_IfcParameterValue_type); - IFC4X2_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1148, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcDirection_type); - items.push_back(IFC4X2_IfcVector_type); - IFC4X2_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1174, items); - } - IFC4X2_IfcActor_type = new entity("IfcActor", false, 6, IFC4X2_IfcObject_type); - IFC4X2_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X2_IfcManifoldSolidBrep_type); - IFC4X2_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X2_IfcAdvancedBrep_type); - IFC4X2_IfcAlignment2DHorizontalSegment_type = new entity("IfcAlignment2DHorizontalSegment", false, 31, IFC4X2_IfcAlignment2DSegment_type); - IFC4X2_IfcAlignment2DVerSegCircularArc_type = new entity("IfcAlignment2DVerSegCircularArc", false, 33, IFC4X2_IfcAlignment2DVerticalSegment_type); - IFC4X2_IfcAlignment2DVerSegLine_type = new entity("IfcAlignment2DVerSegLine", false, 34, IFC4X2_IfcAlignment2DVerticalSegment_type); - IFC4X2_IfcAlignment2DVerSegParabolicArc_type = new entity("IfcAlignment2DVerSegParabolicArc", false, 35, IFC4X2_IfcAlignment2DVerticalSegment_type); - IFC4X2_IfcAnnotation_type = new entity("IfcAnnotation", false, 44, IFC4X2_IfcProduct_type); - IFC4X2_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 107, IFC4X2_IfcBoundedSurface_type); - IFC4X2_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 109, IFC4X2_IfcBSplineSurface_type); - IFC4X2_IfcBlock_type = new entity("IfcBlock", false, 80, IFC4X2_IfcCsgPrimitive3D_type); - IFC4X2_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 85, IFC4X2_IfcBooleanResult_type); - IFC4X2_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 95, IFC4X2_IfcCurve_type); - IFC4X2_IfcBuildingElementType_type = new entity("IfcBuildingElementType", true, 118, IFC4X2_IfcElementType_type); - IFC4X2_IfcChimneyType_type = new entity("IfcChimneyType", false, 156, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 159, IFC4X2_IfcCircleProfileDef_type); - IFC4X2_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 163, IFC4X2_IfcElementType_type); - IFC4X2_IfcColumnType_type = new entity("IfcColumnType", false, 179, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 186, IFC4X2_IfcPropertyTemplate_type); - IFC4X2_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 188, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 189, IFC4X2_IfcCompositeCurve_type); - IFC4X2_IfcConic_type = new entity("IfcConic", true, 199, IFC4X2_IfcCurve_type); - IFC4X2_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 211, IFC4X2_IfcConstructionResourceType_type); - IFC4X2_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 214, IFC4X2_IfcConstructionResourceType_type); - IFC4X2_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 217, IFC4X2_IfcConstructionResourceType_type); - IFC4X2_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 219, IFC4X2_IfcResource_type); - IFC4X2_IfcControl_type = new entity("IfcControl", true, 224, IFC4X2_IfcObject_type); - IFC4X2_IfcCostItem_type = new entity("IfcCostItem", false, 239, IFC4X2_IfcControl_type); - IFC4X2_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 241, IFC4X2_IfcControl_type); - IFC4X2_IfcCoveringType_type = new entity("IfcCoveringType", false, 246, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcCrewResource_type = new entity("IfcCrewResource", false, 248, IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 257, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcCurveSegment2D_type = new entity("IfcCurveSegment2D", true, 267, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 273, IFC4X2_IfcElementarySurface_type); - IFC4X2_IfcDeepFoundationType_type = new entity("IfcDeepFoundationType", false, 283, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 306, IFC4X2_IfcElementType_type); - IFC4X2_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 308, IFC4X2_IfcDistributionElementType_type); - IFC4X2_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 320, IFC4X2_IfcPreDefinedPropertySet_type); - IFC4X2_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 323, IFC4X2_IfcPreDefinedPropertySet_type); - IFC4X2_IfcDoorType_type = new entity("IfcDoorType", false, 328, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 332, IFC4X2_IfcPreDefinedColour_type); - IFC4X2_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 333, IFC4X2_IfcPreDefinedCurveFont_type); - IFC4X2_IfcElement_type = new entity("IfcElement", true, 372, IFC4X2_IfcProduct_type); - IFC4X2_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 374, IFC4X2_IfcElement_type); - IFC4X2_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 375, IFC4X2_IfcElementType_type); - IFC4X2_IfcElementComponent_type = new entity("IfcElementComponent", true, 377, IFC4X2_IfcElement_type); - IFC4X2_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 378, IFC4X2_IfcElementType_type); - IFC4X2_IfcEllipse_type = new entity("IfcEllipse", false, 382, IFC4X2_IfcConic_type); - IFC4X2_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 385, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcEngineType_type = new entity("IfcEngineType", false, 388, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 391, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 394, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcEvent_type = new entity("IfcEvent", false, 396, IFC4X2_IfcProcess_type); - IFC4X2_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 410, IFC4X2_IfcSpatialElement_type); - IFC4X2_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 418, IFC4X2_IfcManifoldSolidBrep_type); - IFC4X2_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 419, IFC4X2_IfcFacetedBrep_type); - IFC4X2_IfcFacility_type = new entity("IfcFacility", false, 420, IFC4X2_IfcSpatialStructureElement_type); - IFC4X2_IfcFacilityPart_type = new entity("IfcFacilityPart", false, 421, IFC4X2_IfcSpatialStructureElement_type); - IFC4X2_IfcFastener_type = new entity("IfcFastener", false, 426, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcFastenerType_type = new entity("IfcFastenerType", false, 427, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 429, IFC4X2_IfcElement_type); - IFC4X2_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 430, IFC4X2_IfcFeatureElement_type); - IFC4X2_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 431, IFC4X2_IfcFeatureElement_type); - IFC4X2_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 444, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 447, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 452, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 455, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 457, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 459, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 461, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 463, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcFootingType_type = new entity("IfcFootingType", false, 468, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 472, IFC4X2_IfcElement_type); - IFC4X2_IfcFurniture_type = new entity("IfcFurniture", false, 474, IFC4X2_IfcFurnishingElement_type); - IFC4X2_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 477, IFC4X2_IfcElement_type); - IFC4X2_IfcGroup_type = new entity("IfcGroup", false, 494, IFC4X2_IfcObject_type); - IFC4X2_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 498, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 503, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 509, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 518, IFC4X2_IfcFlowTreatmentDeviceType_type); - IFC4X2_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 521, IFC4X2_IfcSurfaceCurve_type); - IFC4X2_IfcInventory_type = new entity("IfcInventory", false, 522, IFC4X2_IfcGroup_type); - IFC4X2_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 530, IFC4X2_IfcFlowFittingType_type); - IFC4X2_IfcLaborResource_type = new entity("IfcLaborResource", false, 535, IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcLampType_type = new entity("IfcLampType", false, 540, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 554, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcLineSegment2D_type = new entity("IfcLineSegment2D", false, 571, IFC4X2_IfcCurveSegment2D_type); - IFC4X2_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 612, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 613, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 616, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcMemberType_type = new entity("IfcMemberType", false, 620, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 639, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcOccupant_type = new entity("IfcOccupant", false, 653, IFC4X2_IfcActor_type); - IFC4X2_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 659, IFC4X2_IfcFeatureElementSubtraction_type); - IFC4X2_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 661, IFC4X2_IfcOpeningElement_type); - IFC4X2_IfcOutletType_type = new entity("IfcOutletType", false, 669, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 676, IFC4X2_IfcControl_type); - IFC4X2_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 679, IFC4X2_IfcPreDefinedPropertySet_type); - IFC4X2_IfcPermit_type = new entity("IfcPermit", false, 680, IFC4X2_IfcControl_type); - IFC4X2_IfcPileType_type = new entity("IfcPileType", false, 691, IFC4X2_IfcDeepFoundationType_type); - IFC4X2_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 694, IFC4X2_IfcFlowFittingType_type); - IFC4X2_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 697, IFC4X2_IfcFlowSegmentType_type); - IFC4X2_IfcPlateType_type = new entity("IfcPlateType", false, 708, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 715, IFC4X2_IfcTessellatedFaceSet_type); - IFC4X2_IfcPolyline_type = new entity("IfcPolyline", false, 716, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcPort_type = new entity("IfcPort", true, 718, IFC4X2_IfcProduct_type); - IFC4X2_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 719, IFC4X2_IfcProduct_type); - IFC4X2_IfcProcedure_type = new entity("IfcProcedure", false, 741, IFC4X2_IfcProcess_type); - IFC4X2_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 760, IFC4X2_IfcControl_type); - IFC4X2_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 757, IFC4X2_IfcFeatureElementAddition_type); - IFC4X2_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 785, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcPumpType_type = new entity("IfcPumpType", false, 789, IFC4X2_IfcFlowMovingDeviceType_type); - IFC4X2_IfcRailingType_type = new entity("IfcRailingType", false, 800, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 804, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcRampType_type = new entity("IfcRampType", false, 806, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 810, IFC4X2_IfcBSplineSurfaceWithKnots_type); - IFC4X2_IfcReferent_type = new entity("IfcReferent", false, 819, IFC4X2_IfcPositioningElement_type); - IFC4X2_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 830, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 831, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 832, IFC4X2_IfcReinforcingElement_type); - IFC4X2_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 833, IFC4X2_IfcReinforcingElementType_type); - IFC4X2_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 835, IFC4X2_IfcRelDecomposes_type); - IFC4X2_IfcRoofType_type = new entity("IfcRoofType", false, 902, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 911, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 914, IFC4X2_IfcSurfaceCurve_type); - IFC4X2_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 929, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcSite_type = new entity("IfcSite", false, 942, IFC4X2_IfcSpatialStructureElement_type); - IFC4X2_IfcSlabType_type = new entity("IfcSlabType", false, 949, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 953, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcSpace_type = new entity("IfcSpace", false, 962, IFC4X2_IfcSpatialStructureElement_type); - IFC4X2_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 965, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcSpaceType_type = new entity("IfcSpaceType", false, 967, IFC4X2_IfcSpatialStructureElementType_type); - IFC4X2_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 983, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 987, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcStairType_type = new entity("IfcStairType", false, 989, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 992, IFC4X2_IfcStructuralActivity_type); - IFC4X2_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 996, IFC4X2_IfcStructuralItem_type); - IFC4X2_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 998, IFC4X2_IfcStructuralAction_type); - IFC4X2_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 1000, IFC4X2_IfcStructuralConnection_type); - IFC4X2_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 1001, IFC4X2_IfcStructuralMember_type); - IFC4X2_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 1003, IFC4X2_IfcStructuralCurveMember_type); - IFC4X2_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 1004, IFC4X2_IfcStructuralReaction_type); - IFC4X2_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 1006, IFC4X2_IfcStructuralCurveAction_type); - IFC4X2_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 1010, IFC4X2_IfcGroup_type); - IFC4X2_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1022, IFC4X2_IfcStructuralAction_type); - IFC4X2_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1023, IFC4X2_IfcStructuralConnection_type); - IFC4X2_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1024, IFC4X2_IfcStructuralReaction_type); - IFC4X2_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1026, IFC4X2_IfcGroup_type); - IFC4X2_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1027, IFC4X2_IfcStructuralAction_type); - IFC4X2_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1029, IFC4X2_IfcStructuralConnection_type); - IFC4X2_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1038, IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1045, IFC4X2_IfcFeatureElement_type); - IFC4X2_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1065, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcSystem_type = new entity("IfcSystem", false, 1067, IFC4X2_IfcGroup_type); - IFC4X2_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1068, IFC4X2_IfcFurnishingElement_type); - IFC4X2_IfcTankType_type = new entity("IfcTankType", false, 1075, IFC4X2_IfcFlowStorageDeviceType_type); - IFC4X2_IfcTendon_type = new entity("IfcTendon", false, 1086, IFC4X2_IfcReinforcingElement_type); - IFC4X2_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1087, IFC4X2_IfcReinforcingElement_type); - IFC4X2_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1088, IFC4X2_IfcReinforcingElementType_type); - IFC4X2_IfcTendonConduit_type = new entity("IfcTendonConduit", false, 1090, IFC4X2_IfcReinforcingElement_type); - IFC4X2_IfcTendonConduitType_type = new entity("IfcTendonConduitType", false, 1091, IFC4X2_IfcReinforcingElementType_type); - IFC4X2_IfcTendonType_type = new entity("IfcTendonType", false, 1093, IFC4X2_IfcReinforcingElementType_type); - IFC4X2_IfcTransformerType_type = new entity("IfcTransformerType", false, 1134, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcTransitionCurveSegment2D_type = new entity("IfcTransitionCurveSegment2D", false, 1137, IFC4X2_IfcCurveSegment2D_type); - IFC4X2_IfcTransportElement_type = new entity("IfcTransportElement", false, 1140, IFC4X2_IfcElement_type); - IFC4X2_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1146, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1151, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1162, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcValveType_type = new entity("IfcValveType", false, 1170, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcVibrationDamper_type = new entity("IfcVibrationDamper", false, 1178, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcVibrationDamperType_type = new entity("IfcVibrationDamperType", false, 1179, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1181, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1182, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1184, IFC4X2_IfcElement_type); - IFC4X2_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1186, IFC4X2_IfcFeatureElementSubtraction_type); - IFC4X2_IfcWallType_type = new entity("IfcWallType", false, 1193, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1199, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcWindowType_type = new entity("IfcWindowType", false, 1210, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1213, IFC4X2_IfcControl_type); - IFC4X2_IfcWorkControl_type = new entity("IfcWorkControl", true, 1215, IFC4X2_IfcControl_type); - IFC4X2_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1216, IFC4X2_IfcWorkControl_type); - IFC4X2_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1218, IFC4X2_IfcWorkControl_type); - IFC4X2_IfcZone_type = new entity("IfcZone", false, 1221, IFC4X2_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X2_IfcCurveStyleFontSelect_type); - IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 263, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X2_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X2_IfcPcurve_type); - items.push_back(IFC4X2_IfcSurfaceCurve_type); - IFC4X2_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 265, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcBoundedCurve_type); - items.push_back(IFC4X2_IfcEdgeCurve_type); - IFC4X2_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 266, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcElement_type); - items.push_back(IFC4X2_IfcStructuralItem_type); - IFC4X2_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 994, items); - } - IFC4X2_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X2_IfcControl_type); - IFC4X2_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcAlignmentCurve_type = new entity("IfcAlignmentCurve", false, 38, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcAsset_type = new entity("IfcAsset", false, 59, IFC4X2_IfcGroup_type); - IFC4X2_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 62, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 104, IFC4X2_IfcBoundedCurve_type); - IFC4X2_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 106, IFC4X2_IfcBSplineCurve_type); - IFC4X2_IfcBeamType_type = new entity("IfcBeamType", false, 70, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcBearingType_type = new entity("IfcBearingType", false, 73, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcBoilerType_type = new entity("IfcBoilerType", false, 82, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 90, IFC4X2_IfcCompositeCurveOnSurface_type); - IFC4X2_IfcBridge_type = new entity("IfcBridge", false, 100, IFC4X2_IfcFacility_type); - IFC4X2_IfcBridgePart_type = new entity("IfcBridgePart", false, 101, IFC4X2_IfcFacilityPart_type); - IFC4X2_IfcBuilding_type = new entity("IfcBuilding", false, 110, IFC4X2_IfcFacility_type); - IFC4X2_IfcBuildingElement_type = new entity("IfcBuildingElement", true, 111, IFC4X2_IfcElement_type); - IFC4X2_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 112, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 113, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 115, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 116, IFC4X2_IfcBuildingElementType_type); - IFC4X2_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 119, IFC4X2_IfcFacilityPart_type); - IFC4X2_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 120, IFC4X2_IfcSystem_type); - IFC4X2_IfcBurnerType_type = new entity("IfcBurnerType", false, 123, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 126, IFC4X2_IfcFlowFittingType_type); - IFC4X2_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 129, IFC4X2_IfcFlowSegmentType_type); - IFC4X2_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 132, IFC4X2_IfcFlowFittingType_type); - IFC4X2_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 135, IFC4X2_IfcFlowSegmentType_type); - IFC4X2_IfcCaissonFoundationType_type = new entity("IfcCaissonFoundationType", false, 138, IFC4X2_IfcDeepFoundationType_type); - IFC4X2_IfcChillerType_type = new entity("IfcChillerType", false, 153, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcChimney_type = new entity("IfcChimney", false, 155, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcCircle_type = new entity("IfcCircle", false, 158, IFC4X2_IfcConic_type); - IFC4X2_IfcCircularArcSegment2D_type = new entity("IfcCircularArcSegment2D", false, 161, IFC4X2_IfcCurveSegment2D_type); - IFC4X2_IfcCivilElement_type = new entity("IfcCivilElement", false, 162, IFC4X2_IfcElement_type); - IFC4X2_IfcCoilType_type = new entity("IfcCoilType", false, 170, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcColumn_type = new entity("IfcColumn", false, 177, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 178, IFC4X2_IfcColumn_type); - IFC4X2_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 182, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcCompressorType_type = new entity("IfcCompressorType", false, 194, IFC4X2_IfcFlowMovingDeviceType_type); - IFC4X2_IfcCondenserType_type = new entity("IfcCondenserType", false, 197, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 210, IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 213, IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 216, IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 231, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 234, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcCovering_type = new entity("IfcCovering", false, 245, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 256, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcDamperType_type = new entity("IfcDamperType", false, 275, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcDeepFoundation_type = new entity("IfcDeepFoundation", false, 282, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 295, IFC4X2_IfcElementComponent_type); - IFC4X2_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 296, IFC4X2_IfcElementComponentType_type); - IFC4X2_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 300, IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 304, IFC4X2_IfcDistributionElementType_type); - IFC4X2_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 305, IFC4X2_IfcElement_type); - IFC4X2_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 307, IFC4X2_IfcDistributionElement_type); - IFC4X2_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 309, IFC4X2_IfcPort_type); - IFC4X2_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 311, IFC4X2_IfcSystem_type); - IFC4X2_IfcDoor_type = new entity("IfcDoor", false, 319, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 324, IFC4X2_IfcDoor_type); - IFC4X2_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 335, IFC4X2_IfcFlowFittingType_type); - IFC4X2_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 338, IFC4X2_IfcFlowSegmentType_type); - IFC4X2_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 341, IFC4X2_IfcFlowTreatmentDeviceType_type); - IFC4X2_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 349, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 356, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 359, IFC4X2_IfcFlowStorageDeviceType_type); - IFC4X2_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 362, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 365, IFC4X2_IfcEnergyConversionDeviceType_type); - IFC4X2_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 369, IFC4X2_IfcFlowControllerType_type); - IFC4X2_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 384, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcEngine_type = new entity("IfcEngine", false, 387, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 390, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcEvaporator_type = new entity("IfcEvaporator", false, 393, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 408, IFC4X2_IfcExternalSpatialStructureElement_type); - IFC4X2_IfcFanType_type = new entity("IfcFanType", false, 424, IFC4X2_IfcFlowMovingDeviceType_type); - IFC4X2_IfcFilterType_type = new entity("IfcFilterType", false, 437, IFC4X2_IfcFlowTreatmentDeviceType_type); - IFC4X2_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 440, IFC4X2_IfcFlowTerminalType_type); - IFC4X2_IfcFlowController_type = new entity("IfcFlowController", false, 443, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 446, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 449, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 451, IFC4X2_IfcFlowController_type); - IFC4X2_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 454, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 456, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 458, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 460, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 462, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcFooting_type = new entity("IfcFooting", false, 467, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcGrid_type = new entity("IfcGrid", false, 489, IFC4X2_IfcPositioningElement_type); - IFC4X2_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 497, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcHumidifier_type = new entity("IfcHumidifier", false, 502, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcInterceptor_type = new entity("IfcInterceptor", false, 517, IFC4X2_IfcFlowTreatmentDevice_type); - IFC4X2_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 529, IFC4X2_IfcFlowFitting_type); - IFC4X2_IfcLamp_type = new entity("IfcLamp", false, 539, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcLightFixture_type = new entity("IfcLightFixture", false, 553, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", false, 567, IFC4X2_IfcPositioningElement_type); - IFC4X2_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 615, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcMember_type = new entity("IfcMember", false, 618, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 619, IFC4X2_IfcMember_type); - IFC4X2_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 638, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 667, IFC4X2_IfcBoundaryCurve_type); - IFC4X2_IfcOutlet_type = new entity("IfcOutlet", false, 668, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcPile_type = new entity("IfcPile", false, 689, IFC4X2_IfcDeepFoundation_type); - IFC4X2_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 693, IFC4X2_IfcFlowFitting_type); - IFC4X2_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 696, IFC4X2_IfcFlowSegment_type); - IFC4X2_IfcPlate_type = new entity("IfcPlate", false, 706, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 707, IFC4X2_IfcPlate_type); - IFC4X2_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 781, IFC4X2_IfcFlowController_type); - IFC4X2_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 783, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcPump_type = new entity("IfcPump", false, 788, IFC4X2_IfcFlowMovingDevice_type); - IFC4X2_IfcRailing_type = new entity("IfcRailing", false, 799, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcRamp_type = new entity("IfcRamp", false, 802, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcRampFlight_type = new entity("IfcRampFlight", false, 803, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 809, IFC4X2_IfcBSplineCurveWithKnots_type); - IFC4X2_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 825, IFC4X2_IfcReinforcingElement_type); - IFC4X2_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 828, IFC4X2_IfcReinforcingElementType_type); - IFC4X2_IfcRoof_type = new entity("IfcRoof", false, 901, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 910, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcSensorType_type = new entity("IfcSensorType", false, 925, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 928, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcSlab_type = new entity("IfcSlab", false, 946, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 947, IFC4X2_IfcSlab_type); - IFC4X2_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 948, IFC4X2_IfcSlab_type); - IFC4X2_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 952, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 964, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 982, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcStair_type = new entity("IfcStair", false, 985, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcStairFlight_type = new entity("IfcStairFlight", false, 986, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 995, IFC4X2_IfcSystem_type); - IFC4X2_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 1008, IFC4X2_IfcStructuralLoadGroup_type); - IFC4X2_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1021, IFC4X2_IfcStructuralSurfaceAction_type); - IFC4X2_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1064, IFC4X2_IfcFlowController_type); - IFC4X2_IfcTank_type = new entity("IfcTank", false, 1074, IFC4X2_IfcFlowStorageDevice_type); - IFC4X2_IfcTransformer_type = new entity("IfcTransformer", false, 1133, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1150, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1159, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1161, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcValve_type = new entity("IfcValve", false, 1169, IFC4X2_IfcFlowController_type); - IFC4X2_IfcWall_type = new entity("IfcWall", false, 1190, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1191, IFC4X2_IfcWall_type); - IFC4X2_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1192, IFC4X2_IfcWall_type); - IFC4X2_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1198, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcWindow_type = new entity("IfcWindow", false, 1201, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1206, IFC4X2_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X2_IfcExternalSpatialElement_type); - items.push_back(IFC4X2_IfcSpace_type); - IFC4X2_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 963, items); - } - IFC4X2_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X2_IfcFlowController_type); - IFC4X2_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X2_IfcLinearPositioningElement_type); - IFC4X2_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 61, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcBeam_type = new entity("IfcBeam", false, 68, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 69, IFC4X2_IfcBeam_type); - IFC4X2_IfcBearing_type = new entity("IfcBearing", false, 72, IFC4X2_IfcBuildingElement_type); - IFC4X2_IfcBoiler_type = new entity("IfcBoiler", false, 81, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcBurner_type = new entity("IfcBurner", false, 122, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 125, IFC4X2_IfcFlowFitting_type); - IFC4X2_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 128, IFC4X2_IfcFlowSegment_type); - IFC4X2_IfcCableFitting_type = new entity("IfcCableFitting", false, 131, IFC4X2_IfcFlowFitting_type); - IFC4X2_IfcCableSegment_type = new entity("IfcCableSegment", false, 134, IFC4X2_IfcFlowSegment_type); - IFC4X2_IfcCaissonFoundation_type = new entity("IfcCaissonFoundation", false, 137, IFC4X2_IfcDeepFoundation_type); - IFC4X2_IfcChiller_type = new entity("IfcChiller", false, 152, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcCoil_type = new entity("IfcCoil", false, 169, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 181, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcCompressor_type = new entity("IfcCompressor", false, 193, IFC4X2_IfcFlowMovingDevice_type); - IFC4X2_IfcCondenser_type = new entity("IfcCondenser", false, 196, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcControllerType_type = new entity("IfcControllerType", false, 226, IFC4X2_IfcDistributionControlElementType_type); - IFC4X2_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 230, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 233, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcDamper_type = new entity("IfcDamper", false, 274, IFC4X2_IfcFlowController_type); - IFC4X2_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 299, IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 302, IFC4X2_IfcDistributionSystem_type); - IFC4X2_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 303, IFC4X2_IfcDistributionElement_type); - IFC4X2_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 334, IFC4X2_IfcFlowFitting_type); - IFC4X2_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 337, IFC4X2_IfcFlowSegment_type); - IFC4X2_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 340, IFC4X2_IfcFlowTreatmentDevice_type); - IFC4X2_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 348, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 355, IFC4X2_IfcFlowController_type); - IFC4X2_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 358, IFC4X2_IfcFlowStorageDevice_type); - IFC4X2_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 361, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 364, IFC4X2_IfcEnergyConversionDevice_type); - IFC4X2_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 368, IFC4X2_IfcFlowController_type); - IFC4X2_IfcFan_type = new entity("IfcFan", false, 423, IFC4X2_IfcFlowMovingDevice_type); - IFC4X2_IfcFilter_type = new entity("IfcFilter", false, 436, IFC4X2_IfcFlowTreatmentDevice_type); - IFC4X2_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 439, IFC4X2_IfcFlowTerminal_type); - IFC4X2_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 448, IFC4X2_IfcDistributionControlElement_type); - IFC4X2_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 782, IFC4X2_IfcDistributionControlElement_type); - IFC4X2_IfcSensor_type = new entity("IfcSensor", false, 924, IFC4X2_IfcDistributionControlElement_type); - IFC4X2_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1158, IFC4X2_IfcDistributionControlElement_type); - IFC4X2_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X2_IfcDistributionControlElement_type); - IFC4X2_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X2_IfcDistributionControlElement_type); - IFC4X2_IfcController_type = new entity("IfcController", false, 225, IFC4X2_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X2_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X2_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X2_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAlignment2DHorizontalSegment_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CurveGeometry", new named_type(IFC4X2_IfcCurveSegment2D_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TangentialContinuity", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DVerSegCircularArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DVerSegLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ParabolaConstant", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DVerSegParabolicArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAlignment2DVerticalSegment_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcAlignment2DVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X2_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignment2DVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Horizontal", new named_type(IFC4X2_IfcAlignment2DHorizontal_type), false)); - attributes.push_back(new attribute("Vertical", new named_type(IFC4X2_IfcAlignment2DVertical_type), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAlignmentCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X2_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X2_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X2_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X2_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X2_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X2_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X2_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X2_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X2_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X2_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X2_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X2_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X2_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X2_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X2_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X2_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X2_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X2_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X2_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X2_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X2_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X2_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X2_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X2_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X2_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X2_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X2_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBearingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBearing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBearingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBearingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X2_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X2_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X2_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X2_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X2_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X2_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X2_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X2_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X2_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X2_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X2_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X2_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X2_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X2_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X2_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBridgeTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBridge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBridgePartTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBridgePart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X2_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCaissonFoundationTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCaissonFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCaissonFoundationTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCaissonFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X2_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X2_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X2_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X2_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X2_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X2_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X2_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsCCW", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCircularArcSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X2_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X2_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X2_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcCompositeCurveSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X2_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Transition", new named_type(IFC4X2_IfcTransitionCode_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X2_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X2_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X2_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X2_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X2_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X2_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X2_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X2_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X2_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X2_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X2_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X2_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X2_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X2_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X2_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X2_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X2_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X2_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X2_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X2_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X2_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X2_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X2_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X2_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X2_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X2_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X2_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X2_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X2_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDeepFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDeepFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X2_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X2_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("AlongHorizontal", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X2_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X2_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X2_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X2_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X2_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X2_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X2_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X2_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X2_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X2_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X2_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X2_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X2_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X2_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X2_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X2_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X2_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X2_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X2_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X2_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X2_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X2_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X2_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X2_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X2_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X2_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFacilityPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X2_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelorDraughting", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X2_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X2_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X2_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X2_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X2_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X2_IfcParameterValue_type), true)); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X2_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X2_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X2_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X2_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X2_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X2_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X2_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X2_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X2_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X2_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X2_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X2_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X2_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X2_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X2_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X2_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X2_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X2_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X2_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X2_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X2_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X2_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X2_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X2_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X2_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X2_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X2_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X2_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X2_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X2_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X2_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X2_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X2_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X2_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X2_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X2_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X2_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X2_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLineSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PlacementMeasuredAlong", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC4X2_IfcDistanceExpression_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X2_IfcOrientationExpression_type), true)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X2_IfcCurve_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X2_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X2_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X2_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X2_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X2_IfcReal_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X2_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X2_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X2_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X2_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X2_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X2_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X2_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X2_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X2_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X2_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X2_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X2_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X2_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X2_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X2_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X2_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X2_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X2_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X2_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X2_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X2_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X2_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X2_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X2_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X2_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X2_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X2_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X2_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X2_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X2_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X2_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X2_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X2_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X2_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X2_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X2_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LateralAxisDirection", new named_type(IFC4X2_IfcDirection_type), false)); - attributes.push_back(new attribute("VerticalAxisDirection", new named_type(IFC4X2_IfcDirection_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOrientationExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X2_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X2_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X2_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X2_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X2_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X2_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X2_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X2_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X2_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X2_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X2_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X2_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X2_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X2_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X2_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X2_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X2_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X2_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X2_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X2_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X2_IfcCartesianPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X2_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X2_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X2_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X2_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X2_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X2_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcPresentationStyleAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X2_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X2_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X2_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X2_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X2_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X2_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X2_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X2_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X2_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X2_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X2_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X2_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X2_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X2_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X2_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X2_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4X2_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X2_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X2_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X2_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X2_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X2_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X2_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X2_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X2_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcReferentTypeEnum_type), true)); - attributes.push_back(new attribute("RestartDistance", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X2_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X2_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X2_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X2_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X2_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X2_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X2_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X2_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X2_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X2_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X2_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X2_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X2_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X2_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X2_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X2_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X2_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X2_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X2_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X2_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X2_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X2_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X2_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X2_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X2_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X2_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X2_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X2_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X2_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X2_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X2_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X2_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X2_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X2_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X2_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X2_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X2_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X2_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X2_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X2_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X2_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X2_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X2_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X2_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X2_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X2_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X2_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X2_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X2_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X2_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X2_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new simple_type(simple_type::logical_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X2_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPositioningElement", new named_type(IFC4X2_IfcPositioningElement_type), false)); - attributes.push_back(new attribute("RelatedProducts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProduct_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelPositions_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X2_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X2_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X2_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X2_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X2_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X2_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X2_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X2_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X2_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X2_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X2_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X2_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X2_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X2_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X2_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X2_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X2_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X2_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X2_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X2_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X2_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X2_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X2_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X2_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X2_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X2_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X2_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X2_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X2_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X2_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X2_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X2_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X2_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X2_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X2_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X2_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X2_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X2_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X2_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X2_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X2_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X2_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X2_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X2_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X2_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X2_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X2_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X2_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X2_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X2_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X2_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X2_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X2_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X2_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X2_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X2_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X2_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X2_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X2_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X2_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X2_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X2_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X2_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X2_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X2_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X2_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X2_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X2_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X2_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X2_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStyleAssignmentSelect_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X2_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X2_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X2_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X2_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X2_IfcParameterValue_type), true)); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X2_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X2_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X2_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X2_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X2_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X2_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X2_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X2_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X2_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X2_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X2_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X2_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X2_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X2_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X2_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X2_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X2_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X2_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X2_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X2_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X2_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X2_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTendonConduit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTendonConduitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X2_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X2_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X2_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X2_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X2_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X2_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X2_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X2_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X2_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X2_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X2_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X2_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X2_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X2_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X2_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X2_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X2_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X2_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X2_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X2_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X2_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X2_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X2_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X2_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X2_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X2_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("StartRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EndRadius", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("IsStartRadiusCCW", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("IsEndRadiusCCW", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("TransitionCurveType", new named_type(IFC4X2_IfcTransitionCurveType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTransitionCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTransportElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTransportElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X2_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X2_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X2_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X2_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X2_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X2_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X2_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X2_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X2_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X2_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVibrationDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVibrationDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X2_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X2_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X2_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X2_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X2_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X2_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X2_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X2_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X2_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X2_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X2_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X2_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X2_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X2_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X2_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X2_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4X2_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4X2_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X2_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X2_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToActor_type, IFC4X2_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X2_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPerson_type, IFC4X2_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X2_IfcOrganization_type, IFC4X2_IfcOrganization_type->attributes()[4])); - IFC4X2_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToAlignmentCurve", inverse_attribute::set_type, 1, -1, IFC4X2_IfcAlignmentCurve_type, IFC4X2_IfcAlignmentCurve_type->attributes()[0])); - IFC4X2_IfcAlignment2DHorizontal_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToHorizontal", inverse_attribute::set_type, 1, 1, IFC4X2_IfcAlignment2DHorizontal_type, IFC4X2_IfcAlignment2DHorizontal_type->attributes()[1])); - IFC4X2_IfcAlignment2DHorizontalSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToAlignmentCurve", inverse_attribute::set_type, 1, 1, IFC4X2_IfcAlignmentCurve_type, IFC4X2_IfcAlignmentCurve_type->attributes()[1])); - IFC4X2_IfcAlignment2DVertical_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToVertical", inverse_attribute::set_type, 1, 1, IFC4X2_IfcAlignment2DVertical_type, IFC4X2_IfcAlignment2DVertical_type->attributes()[0])); - IFC4X2_IfcAlignment2DVerticalSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X2_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesApproval_type, IFC4X2_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceApprovalRelationship_type, IFC4X2_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X2_IfcApprovalRelationship_type, IFC4X2_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X2_IfcApprovalRelationship_type, IFC4X2_IfcApprovalRelationship_type->attributes()[0])); - IFC4X2_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PositioningElement", inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcLinearPositioningElement_type, IFC4X2_IfcLinearPositioningElement_type->attributes()[0])); - IFC4X2_IfcBoundedCurve_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesClassification_type, IFC4X2_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcClassificationReference_type, IFC4X2_IfcClassificationReference_type->attributes()[0])); - IFC4X2_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesClassification_type, IFC4X2_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcClassificationReference_type, IFC4X2_IfcClassificationReference_type->attributes()[0])); - IFC4X2_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X2_IfcCompositeCurve_type, IFC4X2_IfcCompositeCurve_type->attributes()[0])); - IFC4X2_IfcCompositeCurveSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceConstraintRelationship_type, IFC4X2_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X2_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByProperties_type, IFC4X2_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDeclares_type, IFC4X2_IfcRelDeclares_type->attributes()[0])); - IFC4X2_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToControl_type, IFC4X2_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X2_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X2_IfcCoordinateOperation_type, IFC4X2_IfcCoordinateOperation_type->attributes()[0])); - IFC4X2_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelCoversSpaces_type, IFC4X2_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelCoversBldgElements_type, IFC4X2_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X2_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelFlowControlElements_type, IFC4X2_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X2_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsPortToElement_type, IFC4X2_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X2_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelFlowControlElements_type, IFC4X2_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X2_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesDocument_type, IFC4X2_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcDocumentReference_type, IFC4X2_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X2_IfcDocumentInformationRelationship_type, IFC4X2_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X2_IfcDocumentInformationRelationship_type, IFC4X2_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X2_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesDocument_type, IFC4X2_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X2_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelFillsElement_type, IFC4X2_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsElements_type, IFC4X2_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelInterferesElements_type, IFC4X2_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelInterferesElements_type, IFC4X2_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelProjectsElement_type, IFC4X2_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelReferencedInSpatialStructure_type, IFC4X2_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelVoidsElement_type, IFC4X2_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsWithRealizingElements_type, IFC4X2_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary_type, IFC4X2_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsElements_type, IFC4X2_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelCoversBldgElements_type, IFC4X2_IfcRelCoversBldgElements_type->attributes()[0])); - IFC4X2_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X2_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary_type, IFC4X2_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X2_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X2_IfcTextureMap_type, IFC4X2_IfcTextureMap_type->attributes()[1])); - IFC4X2_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcRelProjectsElement_type, IFC4X2_IfcRelProjectsElement_type->attributes()[1])); - IFC4X2_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcRelVoidsElement_type, IFC4X2_IfcRelVoidsElement_type->attributes()[1])); - IFC4X2_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X2_IfcGeometricRepresentationSubContext_type, IFC4X2_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X2_IfcCoordinateOperation_type, IFC4X2_IfcCoordinateOperation_type->attributes()[0])); - IFC4X2_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X2_IfcGrid_type, IFC4X2_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X2_IfcGrid_type, IFC4X2_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X2_IfcGrid_type, IFC4X2_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X2_IfcVirtualGridIntersection_type, IFC4X2_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X2_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToGroup_type, IFC4X2_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4X2_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X2_IfcPolygonalFaceSet_type, IFC4X2_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4X2_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesLibrary_type, IFC4X2_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcLibraryReference_type, IFC4X2_IfcLibraryReference_type->attributes()[2])); - IFC4X2_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesLibrary_type, IFC4X2_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X2_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X2_IfcMaterialDefinitionRepresentation_type, IFC4X2_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X2_IfcMaterialRelationship_type, IFC4X2_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X2_IfcMaterialRelationship_type, IFC4X2_IfcMaterialRelationship_type->attributes()[0])); - IFC4X2_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcMaterialConstituentSet_type, IFC4X2_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X2_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesMaterial_type, IFC4X2_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X2_IfcMaterialProperties_type, IFC4X2_IfcMaterialProperties_type->attributes()[0])); - IFC4X2_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcMaterialLayerSet_type, IFC4X2_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X2_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcMaterialProfileSet_type, IFC4X2_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X2_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X2_IfcRelAssociatesMaterial_type, IFC4X2_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X2_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDefinesByObject_type, IFC4X2_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByObject_type, IFC4X2_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDefinesByType_type, IFC4X2_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByProperties_type, IFC4X2_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X2_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssigns_type, IFC4X2_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelNests_type, IFC4X2_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelNests_type, IFC4X2_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDeclares_type, IFC4X2_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAggregates_type, IFC4X2_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelAggregates_type, IFC4X2_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociates_type, IFC4X2_IfcRelAssociates_type->attributes()[0])); - IFC4X2_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X2_IfcProduct_type, IFC4X2_IfcProduct_type->attributes()[0])); - IFC4X2_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelFillsElement_type, IFC4X2_IfcRelFillsElement_type->attributes()[0])); - IFC4X2_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcOrganizationRelationship_type, IFC4X2_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X2_IfcOrganizationRelationship_type, IFC4X2_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPersonAndOrganization_type, IFC4X2_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X2_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPersonAndOrganization_type, IFC4X2_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X2_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X2_IfcPhysicalComplexQuantity_type, IFC4X2_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X2_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsPortToElement_type, IFC4X2_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsPorts_type, IFC4X2_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsPorts_type, IFC4X2_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X2_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Positions", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelPositions_type, IFC4X2_IfcRelPositions_type->attributes()[0])); - IFC4X2_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSequence_type, IFC4X2_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSequence_type, IFC4X2_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProcess_type, IFC4X2_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X2_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProduct_type, IFC4X2_IfcRelAssignsToProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PositionedRelativeTo", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelPositions_type, IFC4X2_IfcRelPositions_type->attributes()[1])); - IFC4X2_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X2_IfcProduct_type, IFC4X2_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcShapeAspect_type, IFC4X2_IfcShapeAspect_type->attributes()[4])); - IFC4X2_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X2_IfcProfileProperties_type, IFC4X2_IfcProfileProperties_type->attributes()[0])); - IFC4X2_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertySet_type, IFC4X2_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertyDependencyRelationship_type, IFC4X2_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertyDependencyRelationship_type, IFC4X2_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X2_IfcComplexProperty_type, IFC4X2_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceConstraintRelationship_type, IFC4X2_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceApprovalRelationship_type, IFC4X2_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X2_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDeclares_type, IFC4X2_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociates_type, IFC4X2_IfcRelAssociates_type->attributes()[0])); - IFC4X2_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X2_IfcTypeObject_type, IFC4X2_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByTemplate_type, IFC4X2_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByProperties_type, IFC4X2_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X2_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByTemplate_type, IFC4X2_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X2_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X2_IfcComplexPropertyTemplate_type, IFC4X2_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertySetTemplate_type, IFC4X2_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X2_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary1stLevel_type, IFC4X2_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X2_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelSpaceBoundary2ndLevel_type, IFC4X2_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X2_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRepresentationMap_type, IFC4X2_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X2_IfcPresentationLayerAssignment_type, IFC4X2_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X2_IfcProductRepresentation_type, IFC4X2_IfcProductRepresentation_type->attributes()[2])); - IFC4X2_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRepresentation_type, IFC4X2_IfcRepresentation_type->attributes()[0])); - IFC4X2_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X2_IfcPresentationLayerAssignment_type, IFC4X2_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X2_IfcStyledItem_type, IFC4X2_IfcStyledItem_type->attributes()[0])); - IFC4X2_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X2_IfcShapeAspect_type, IFC4X2_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X2_IfcMappedItem_type, IFC4X2_IfcMappedItem_type->attributes()[0])); - IFC4X2_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToResource_type, IFC4X2_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X2_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X2_IfcShapeAspect_type, IFC4X2_IfcShapeAspect_type->attributes()[0])); - IFC4X2_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelCoversSpaces_type, IFC4X2_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary_type, IFC4X2_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X2_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelServicesBuildings_type, IFC4X2_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelReferencedInSpatialStructure_type, IFC4X2_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4X2_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsStructuralActivity_type, IFC4X2_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X2_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X2_IfcRelConnectsStructuralMember_type, IFC4X2_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X2_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsStructuralActivity_type, IFC4X2_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X2_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X2_IfcStructuralResultGroup_type, IFC4X2_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X2_IfcStructuralAnalysisModel_type, IFC4X2_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X2_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsStructuralMember_type, IFC4X2_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X2_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X2_IfcStructuralAnalysisModel_type, IFC4X2_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X2_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcTextureCoordinate_type, IFC4X2_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X2_IfcSurfaceStyleWithTextures_type, IFC4X2_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X2_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelServicesBuildings_type, IFC4X2_IfcRelServicesBuildings_type->attributes()[0])); - IFC4X2_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X2_IfcIndexedColourMap_type, IFC4X2_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X2_IfcIndexedTextureMap_type, IFC4X2_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X2_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X2_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDefinesByType_type, IFC4X2_IfcRelDefinesByType_type->attributes()[1])); - IFC4X2_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProcess_type, IFC4X2_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X2_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProduct_type, IFC4X2_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X2_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToResource_type, IFC4X2_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X2_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X2_IfcActionRequest_type);defs.push_back(IFC4X2_IfcCostItem_type);defs.push_back(IFC4X2_IfcCostSchedule_type);defs.push_back(IFC4X2_IfcPerformanceHistory_type);defs.push_back(IFC4X2_IfcPermit_type);defs.push_back(IFC4X2_IfcProjectOrder_type);defs.push_back(IFC4X2_IfcWorkCalendar_type);defs.push_back(IFC4X2_IfcWorkControl_type); - IFC4X2_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcActor_type);defs.push_back(IFC4X2_IfcControl_type);defs.push_back(IFC4X2_IfcGroup_type);defs.push_back(IFC4X2_IfcProcess_type);defs.push_back(IFC4X2_IfcProduct_type);defs.push_back(IFC4X2_IfcResource_type); - IFC4X2_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcActuator_type);defs.push_back(IFC4X2_IfcAlarm_type);defs.push_back(IFC4X2_IfcController_type);defs.push_back(IFC4X2_IfcFlowInstrument_type);defs.push_back(IFC4X2_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X2_IfcSensor_type);defs.push_back(IFC4X2_IfcUnitaryControlElement_type); - IFC4X2_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcActuatorType_type);defs.push_back(IFC4X2_IfcAlarmType_type);defs.push_back(IFC4X2_IfcControllerType_type);defs.push_back(IFC4X2_IfcFlowInstrumentType_type);defs.push_back(IFC4X2_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X2_IfcSensorType_type);defs.push_back(IFC4X2_IfcUnitaryControlElementType_type); - IFC4X2_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcAdvancedBrep_type);defs.push_back(IFC4X2_IfcFacetedBrep_type); - IFC4X2_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcAdvancedBrepWithVoids_type); - IFC4X2_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcAdvancedFace_type); - IFC4X2_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(13); - defs.push_back(IFC4X2_IfcAirTerminal_type);defs.push_back(IFC4X2_IfcAudioVisualAppliance_type);defs.push_back(IFC4X2_IfcCommunicationsAppliance_type);defs.push_back(IFC4X2_IfcElectricAppliance_type);defs.push_back(IFC4X2_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X2_IfcLamp_type);defs.push_back(IFC4X2_IfcLightFixture_type);defs.push_back(IFC4X2_IfcMedicalDevice_type);defs.push_back(IFC4X2_IfcOutlet_type);defs.push_back(IFC4X2_IfcSanitaryTerminal_type);defs.push_back(IFC4X2_IfcSpaceHeater_type);defs.push_back(IFC4X2_IfcStackTerminal_type);defs.push_back(IFC4X2_IfcWasteTerminal_type); - IFC4X2_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X2_IfcAirTerminalBox_type);defs.push_back(IFC4X2_IfcDamper_type);defs.push_back(IFC4X2_IfcElectricDistributionBoard_type);defs.push_back(IFC4X2_IfcElectricTimeControl_type);defs.push_back(IFC4X2_IfcFlowMeter_type);defs.push_back(IFC4X2_IfcProtectiveDevice_type);defs.push_back(IFC4X2_IfcSwitchingDevice_type);defs.push_back(IFC4X2_IfcValve_type); - IFC4X2_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X2_IfcAirTerminalBoxType_type);defs.push_back(IFC4X2_IfcDamperType_type);defs.push_back(IFC4X2_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X2_IfcElectricTimeControlType_type);defs.push_back(IFC4X2_IfcFlowMeterType_type);defs.push_back(IFC4X2_IfcProtectiveDeviceType_type);defs.push_back(IFC4X2_IfcSwitchingDeviceType_type);defs.push_back(IFC4X2_IfcValveType_type); - IFC4X2_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(13); - defs.push_back(IFC4X2_IfcAirTerminalType_type);defs.push_back(IFC4X2_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X2_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X2_IfcElectricApplianceType_type);defs.push_back(IFC4X2_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X2_IfcLampType_type);defs.push_back(IFC4X2_IfcLightFixtureType_type);defs.push_back(IFC4X2_IfcMedicalDeviceType_type);defs.push_back(IFC4X2_IfcOutletType_type);defs.push_back(IFC4X2_IfcSanitaryTerminalType_type);defs.push_back(IFC4X2_IfcSpaceHeaterType_type);defs.push_back(IFC4X2_IfcStackTerminalType_type);defs.push_back(IFC4X2_IfcWasteTerminalType_type); - IFC4X2_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X2_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X2_IfcBoiler_type);defs.push_back(IFC4X2_IfcBurner_type);defs.push_back(IFC4X2_IfcChiller_type);defs.push_back(IFC4X2_IfcCoil_type);defs.push_back(IFC4X2_IfcCondenser_type);defs.push_back(IFC4X2_IfcCooledBeam_type);defs.push_back(IFC4X2_IfcCoolingTower_type);defs.push_back(IFC4X2_IfcElectricGenerator_type);defs.push_back(IFC4X2_IfcElectricMotor_type);defs.push_back(IFC4X2_IfcEngine_type);defs.push_back(IFC4X2_IfcEvaporativeCooler_type);defs.push_back(IFC4X2_IfcEvaporator_type);defs.push_back(IFC4X2_IfcHeatExchanger_type);defs.push_back(IFC4X2_IfcHumidifier_type);defs.push_back(IFC4X2_IfcMotorConnection_type);defs.push_back(IFC4X2_IfcSolarDevice_type);defs.push_back(IFC4X2_IfcTransformer_type);defs.push_back(IFC4X2_IfcTubeBundle_type);defs.push_back(IFC4X2_IfcUnitaryEquipment_type); - IFC4X2_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X2_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X2_IfcBoilerType_type);defs.push_back(IFC4X2_IfcBurnerType_type);defs.push_back(IFC4X2_IfcChillerType_type);defs.push_back(IFC4X2_IfcCoilType_type);defs.push_back(IFC4X2_IfcCondenserType_type);defs.push_back(IFC4X2_IfcCooledBeamType_type);defs.push_back(IFC4X2_IfcCoolingTowerType_type);defs.push_back(IFC4X2_IfcElectricGeneratorType_type);defs.push_back(IFC4X2_IfcElectricMotorType_type);defs.push_back(IFC4X2_IfcEngineType_type);defs.push_back(IFC4X2_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X2_IfcEvaporatorType_type);defs.push_back(IFC4X2_IfcHeatExchangerType_type);defs.push_back(IFC4X2_IfcHumidifierType_type);defs.push_back(IFC4X2_IfcMotorConnectionType_type);defs.push_back(IFC4X2_IfcSolarDeviceType_type);defs.push_back(IFC4X2_IfcTransformerType_type);defs.push_back(IFC4X2_IfcTubeBundleType_type);defs.push_back(IFC4X2_IfcUnitaryEquipmentType_type); - IFC4X2_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcAlignment_type); - IFC4X2_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X2_IfcAlignment2DHorizontal_type);defs.push_back(IFC4X2_IfcAlignment2DSegment_type);defs.push_back(IFC4X2_IfcAlignment2DVertical_type);defs.push_back(IFC4X2_IfcAnnotationFillArea_type);defs.push_back(IFC4X2_IfcBooleanResult_type);defs.push_back(IFC4X2_IfcBoundingBox_type);defs.push_back(IFC4X2_IfcCartesianPointList_type);defs.push_back(IFC4X2_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X2_IfcCompositeCurveSegment_type);defs.push_back(IFC4X2_IfcCsgPrimitive3D_type);defs.push_back(IFC4X2_IfcCurve_type);defs.push_back(IFC4X2_IfcDirection_type);defs.push_back(IFC4X2_IfcDistanceExpression_type);defs.push_back(IFC4X2_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X2_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X2_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X2_IfcGeometricSet_type);defs.push_back(IFC4X2_IfcHalfSpaceSolid_type);defs.push_back(IFC4X2_IfcLightSource_type);defs.push_back(IFC4X2_IfcOrientationExpression_type);defs.push_back(IFC4X2_IfcPlacement_type);defs.push_back(IFC4X2_IfcPlanarExtent_type);defs.push_back(IFC4X2_IfcPoint_type);defs.push_back(IFC4X2_IfcSectionedSpine_type);defs.push_back(IFC4X2_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X2_IfcSolidModel_type);defs.push_back(IFC4X2_IfcSurface_type);defs.push_back(IFC4X2_IfcTessellatedItem_type);defs.push_back(IFC4X2_IfcTextLiteral_type);defs.push_back(IFC4X2_IfcVector_type); - IFC4X2_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcAlignment2DHorizontalSegment_type);defs.push_back(IFC4X2_IfcAlignment2DVerticalSegment_type); - IFC4X2_IfcAlignment2DSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcAlignment2DVerSegCircularArc_type);defs.push_back(IFC4X2_IfcAlignment2DVerSegLine_type);defs.push_back(IFC4X2_IfcAlignment2DVerSegParabolicArc_type); - IFC4X2_IfcAlignment2DVerticalSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcAlignmentCurve_type);defs.push_back(IFC4X2_IfcBSplineCurve_type);defs.push_back(IFC4X2_IfcCompositeCurve_type);defs.push_back(IFC4X2_IfcCurveSegment2D_type);defs.push_back(IFC4X2_IfcIndexedPolyCurve_type);defs.push_back(IFC4X2_IfcPolyline_type);defs.push_back(IFC4X2_IfcTrimmedCurve_type); - IFC4X2_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X2_IfcAnnotation_type);defs.push_back(IFC4X2_IfcElement_type);defs.push_back(IFC4X2_IfcPort_type);defs.push_back(IFC4X2_IfcPositioningElement_type);defs.push_back(IFC4X2_IfcProxy_type);defs.push_back(IFC4X2_IfcSpatialElement_type);defs.push_back(IFC4X2_IfcStructuralActivity_type);defs.push_back(IFC4X2_IfcStructuralItem_type); - IFC4X2_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X2_IfcApprovalRelationship_type);defs.push_back(IFC4X2_IfcCurrencyRelationship_type);defs.push_back(IFC4X2_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X2_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X2_IfcMaterialRelationship_type);defs.push_back(IFC4X2_IfcOrganizationRelationship_type);defs.push_back(IFC4X2_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X2_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X2_IfcResourceConstraintRelationship_type); - IFC4X2_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X2_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X2_IfcCompositeProfileDef_type);defs.push_back(IFC4X2_IfcDerivedProfileDef_type);defs.push_back(IFC4X2_IfcParameterizedProfileDef_type); - IFC4X2_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcArbitraryProfileDefWithVoids_type); - IFC4X2_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcAsset_type);defs.push_back(IFC4X2_IfcInventory_type);defs.push_back(IFC4X2_IfcStructuralLoadGroup_type);defs.push_back(IFC4X2_IfcStructuralResultGroup_type);defs.push_back(IFC4X2_IfcSystem_type); - IFC4X2_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X2_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X2_IfcCShapeProfileDef_type);defs.push_back(IFC4X2_IfcCircleProfileDef_type);defs.push_back(IFC4X2_IfcEllipseProfileDef_type);defs.push_back(IFC4X2_IfcIShapeProfileDef_type);defs.push_back(IFC4X2_IfcLShapeProfileDef_type);defs.push_back(IFC4X2_IfcRectangleProfileDef_type);defs.push_back(IFC4X2_IfcTShapeProfileDef_type);defs.push_back(IFC4X2_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X2_IfcUShapeProfileDef_type);defs.push_back(IFC4X2_IfcZShapeProfileDef_type); - IFC4X2_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcAxis1Placement_type);defs.push_back(IFC4X2_IfcAxis2Placement2D_type);defs.push_back(IFC4X2_IfcAxis2Placement3D_type); - IFC4X2_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcBSplineCurveWithKnots_type); - IFC4X2_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcBSplineSurface_type);defs.push_back(IFC4X2_IfcCurveBoundedPlane_type);defs.push_back(IFC4X2_IfcCurveBoundedSurface_type);defs.push_back(IFC4X2_IfcRectangularTrimmedSurface_type); - IFC4X2_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcBSplineSurfaceWithKnots_type); - IFC4X2_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(22); - defs.push_back(IFC4X2_IfcBeam_type);defs.push_back(IFC4X2_IfcBearing_type);defs.push_back(IFC4X2_IfcBuildingElementProxy_type);defs.push_back(IFC4X2_IfcChimney_type);defs.push_back(IFC4X2_IfcColumn_type);defs.push_back(IFC4X2_IfcCovering_type);defs.push_back(IFC4X2_IfcCurtainWall_type);defs.push_back(IFC4X2_IfcDeepFoundation_type);defs.push_back(IFC4X2_IfcDoor_type);defs.push_back(IFC4X2_IfcFooting_type);defs.push_back(IFC4X2_IfcMember_type);defs.push_back(IFC4X2_IfcPlate_type);defs.push_back(IFC4X2_IfcRailing_type);defs.push_back(IFC4X2_IfcRamp_type);defs.push_back(IFC4X2_IfcRampFlight_type);defs.push_back(IFC4X2_IfcRoof_type);defs.push_back(IFC4X2_IfcShadingDevice_type);defs.push_back(IFC4X2_IfcSlab_type);defs.push_back(IFC4X2_IfcStair_type);defs.push_back(IFC4X2_IfcStairFlight_type);defs.push_back(IFC4X2_IfcWall_type);defs.push_back(IFC4X2_IfcWindow_type); - IFC4X2_IfcBuildingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcBeamStandardCase_type); - IFC4X2_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(22); - defs.push_back(IFC4X2_IfcBeamType_type);defs.push_back(IFC4X2_IfcBearingType_type);defs.push_back(IFC4X2_IfcBuildingElementProxyType_type);defs.push_back(IFC4X2_IfcChimneyType_type);defs.push_back(IFC4X2_IfcColumnType_type);defs.push_back(IFC4X2_IfcCoveringType_type);defs.push_back(IFC4X2_IfcCurtainWallType_type);defs.push_back(IFC4X2_IfcDeepFoundationType_type);defs.push_back(IFC4X2_IfcDoorType_type);defs.push_back(IFC4X2_IfcFootingType_type);defs.push_back(IFC4X2_IfcMemberType_type);defs.push_back(IFC4X2_IfcPlateType_type);defs.push_back(IFC4X2_IfcRailingType_type);defs.push_back(IFC4X2_IfcRampFlightType_type);defs.push_back(IFC4X2_IfcRampType_type);defs.push_back(IFC4X2_IfcRoofType_type);defs.push_back(IFC4X2_IfcShadingDeviceType_type);defs.push_back(IFC4X2_IfcSlabType_type);defs.push_back(IFC4X2_IfcStairFlightType_type);defs.push_back(IFC4X2_IfcStairType_type);defs.push_back(IFC4X2_IfcWallType_type);defs.push_back(IFC4X2_IfcWindowType_type); - IFC4X2_IfcBuildingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcBlobTexture_type);defs.push_back(IFC4X2_IfcImageTexture_type);defs.push_back(IFC4X2_IfcPixelTexture_type); - IFC4X2_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcBlock_type);defs.push_back(IFC4X2_IfcRectangularPyramid_type);defs.push_back(IFC4X2_IfcRightCircularCone_type);defs.push_back(IFC4X2_IfcRightCircularCylinder_type);defs.push_back(IFC4X2_IfcSphere_type); - IFC4X2_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcBooleanClippingResult_type); - IFC4X2_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcBoundaryCurve_type); - IFC4X2_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X2_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X2_IfcBoundaryNodeCondition_type); - IFC4X2_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcBoundaryNodeConditionWarping_type); - IFC4X2_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcBoundedCurve_type);defs.push_back(IFC4X2_IfcConic_type);defs.push_back(IFC4X2_IfcLine_type);defs.push_back(IFC4X2_IfcOffsetCurve_type);defs.push_back(IFC4X2_IfcPcurve_type);defs.push_back(IFC4X2_IfcSurfaceCurve_type); - IFC4X2_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcBoundedSurface_type);defs.push_back(IFC4X2_IfcElementarySurface_type);defs.push_back(IFC4X2_IfcSweptSurface_type); - IFC4X2_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcBoxedHalfSpace_type);defs.push_back(IFC4X2_IfcPolygonalBoundedHalfSpace_type); - IFC4X2_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcBridge_type);defs.push_back(IFC4X2_IfcBuilding_type); - IFC4X2_IfcFacility_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcBridgePart_type);defs.push_back(IFC4X2_IfcBuildingStorey_type); - IFC4X2_IfcFacilityPart_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(10); - defs.push_back(IFC4X2_IfcBuildingElement_type);defs.push_back(IFC4X2_IfcCivilElement_type);defs.push_back(IFC4X2_IfcDistributionElement_type);defs.push_back(IFC4X2_IfcElementAssembly_type);defs.push_back(IFC4X2_IfcElementComponent_type);defs.push_back(IFC4X2_IfcFeatureElement_type);defs.push_back(IFC4X2_IfcFurnishingElement_type);defs.push_back(IFC4X2_IfcGeographicElement_type);defs.push_back(IFC4X2_IfcTransportElement_type);defs.push_back(IFC4X2_IfcVirtualElement_type); - IFC4X2_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcBuildingElementPart_type);defs.push_back(IFC4X2_IfcDiscreteAccessory_type);defs.push_back(IFC4X2_IfcFastener_type);defs.push_back(IFC4X2_IfcMechanicalFastener_type);defs.push_back(IFC4X2_IfcReinforcingElement_type);defs.push_back(IFC4X2_IfcVibrationDamper_type);defs.push_back(IFC4X2_IfcVibrationIsolator_type); - IFC4X2_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcBuildingElementPartType_type);defs.push_back(IFC4X2_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X2_IfcFastenerType_type);defs.push_back(IFC4X2_IfcMechanicalFastenerType_type);defs.push_back(IFC4X2_IfcReinforcingElementType_type);defs.push_back(IFC4X2_IfcVibrationDamperType_type);defs.push_back(IFC4X2_IfcVibrationIsolatorType_type); - IFC4X2_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X2_IfcBuildingElementType_type);defs.push_back(IFC4X2_IfcCivilElementType_type);defs.push_back(IFC4X2_IfcDistributionElementType_type);defs.push_back(IFC4X2_IfcElementAssemblyType_type);defs.push_back(IFC4X2_IfcElementComponentType_type);defs.push_back(IFC4X2_IfcFurnishingElementType_type);defs.push_back(IFC4X2_IfcGeographicElementType_type);defs.push_back(IFC4X2_IfcTransportElementType_type); - IFC4X2_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcBuildingSystem_type);defs.push_back(IFC4X2_IfcDistributionSystem_type);defs.push_back(IFC4X2_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X2_IfcZone_type); - IFC4X2_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcCableCarrierFitting_type);defs.push_back(IFC4X2_IfcCableFitting_type);defs.push_back(IFC4X2_IfcDuctFitting_type);defs.push_back(IFC4X2_IfcJunctionBox_type);defs.push_back(IFC4X2_IfcPipeFitting_type); - IFC4X2_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcCableCarrierFittingType_type);defs.push_back(IFC4X2_IfcCableFittingType_type);defs.push_back(IFC4X2_IfcDuctFittingType_type);defs.push_back(IFC4X2_IfcJunctionBoxType_type);defs.push_back(IFC4X2_IfcPipeFittingType_type); - IFC4X2_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcCableCarrierSegment_type);defs.push_back(IFC4X2_IfcCableSegment_type);defs.push_back(IFC4X2_IfcDuctSegment_type);defs.push_back(IFC4X2_IfcPipeSegment_type); - IFC4X2_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X2_IfcCableSegmentType_type);defs.push_back(IFC4X2_IfcDuctSegmentType_type);defs.push_back(IFC4X2_IfcPipeSegmentType_type); - IFC4X2_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcCaissonFoundation_type);defs.push_back(IFC4X2_IfcPile_type); - IFC4X2_IfcDeepFoundation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcCaissonFoundationType_type);defs.push_back(IFC4X2_IfcPileType_type); - IFC4X2_IfcDeepFoundationType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcCartesianPoint_type);defs.push_back(IFC4X2_IfcPointOnCurve_type);defs.push_back(IFC4X2_IfcPointOnSurface_type); - IFC4X2_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcCartesianPointList2D_type);defs.push_back(IFC4X2_IfcCartesianPointList3D_type); - IFC4X2_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X2_IfcCartesianTransformationOperator3D_type); - IFC4X2_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X2_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X2_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcCenterLineProfileDef_type); - IFC4X2_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcCircle_type);defs.push_back(IFC4X2_IfcEllipse_type); - IFC4X2_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcCircleHollowProfileDef_type); - IFC4X2_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcCircularArcSegment2D_type);defs.push_back(IFC4X2_IfcLineSegment2D_type);defs.push_back(IFC4X2_IfcTransitionCurveSegment2D_type); - IFC4X2_IfcCurveSegment2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcClassification_type);defs.push_back(IFC4X2_IfcDocumentInformation_type);defs.push_back(IFC4X2_IfcLibraryInformation_type); - IFC4X2_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcClassificationReference_type);defs.push_back(IFC4X2_IfcDocumentReference_type);defs.push_back(IFC4X2_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X2_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X2_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X2_IfcLibraryReference_type); - IFC4X2_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcClosedShell_type);defs.push_back(IFC4X2_IfcOpenShell_type); - IFC4X2_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcColourRgb_type); - IFC4X2_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X2_IfcColourRgbList_type);defs.push_back(IFC4X2_IfcColourSpecification_type);defs.push_back(IFC4X2_IfcCurveStyleFont_type);defs.push_back(IFC4X2_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X2_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X2_IfcIndexedColourMap_type);defs.push_back(IFC4X2_IfcPreDefinedItem_type);defs.push_back(IFC4X2_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X2_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X2_IfcSurfaceStyleShading_type);defs.push_back(IFC4X2_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X2_IfcSurfaceTexture_type);defs.push_back(IFC4X2_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X2_IfcTextStyleTextModel_type);defs.push_back(IFC4X2_IfcTextureCoordinate_type);defs.push_back(IFC4X2_IfcTextureVertex_type);defs.push_back(IFC4X2_IfcTextureVertexList_type); - IFC4X2_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcColumnStandardCase_type); - IFC4X2_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcComplexProperty_type);defs.push_back(IFC4X2_IfcSimpleProperty_type); - IFC4X2_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X2_IfcSimplePropertyTemplate_type); - IFC4X2_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcCompositeCurveOnSurface_type); - IFC4X2_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcCompressor_type);defs.push_back(IFC4X2_IfcFan_type);defs.push_back(IFC4X2_IfcPump_type); - IFC4X2_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcCompressorType_type);defs.push_back(IFC4X2_IfcFanType_type);defs.push_back(IFC4X2_IfcPumpType_type); - IFC4X2_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcConnectedFaceSet_type);defs.push_back(IFC4X2_IfcEdge_type);defs.push_back(IFC4X2_IfcFace_type);defs.push_back(IFC4X2_IfcFaceBound_type);defs.push_back(IFC4X2_IfcLoop_type);defs.push_back(IFC4X2_IfcPath_type);defs.push_back(IFC4X2_IfcVertex_type); - IFC4X2_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X2_IfcConnectionPointGeometry_type);defs.push_back(IFC4X2_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X2_IfcConnectionVolumeGeometry_type); - IFC4X2_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcConnectionPointEccentricity_type); - IFC4X2_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X2_IfcConstructionMaterialResource_type);defs.push_back(IFC4X2_IfcConstructionProductResource_type);defs.push_back(IFC4X2_IfcCrewResource_type);defs.push_back(IFC4X2_IfcLaborResource_type);defs.push_back(IFC4X2_IfcSubContractResource_type); - IFC4X2_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X2_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X2_IfcConstructionProductResourceType_type);defs.push_back(IFC4X2_IfcCrewResourceType_type);defs.push_back(IFC4X2_IfcLaborResourceType_type);defs.push_back(IFC4X2_IfcSubContractResourceType_type); - IFC4X2_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcConstructionResource_type); - IFC4X2_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcConstructionResourceType_type); - IFC4X2_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcContext_type);defs.push_back(IFC4X2_IfcObject_type);defs.push_back(IFC4X2_IfcTypeObject_type); - IFC4X2_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcContextDependentUnit_type);defs.push_back(IFC4X2_IfcConversionBasedUnit_type);defs.push_back(IFC4X2_IfcSIUnit_type); - IFC4X2_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcConversionBasedUnitWithOffset_type); - IFC4X2_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcCostValue_type); - IFC4X2_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcCsgSolid_type);defs.push_back(IFC4X2_IfcManifoldSolidBrep_type);defs.push_back(IFC4X2_IfcSectionedSolid_type);defs.push_back(IFC4X2_IfcSweptAreaSolid_type);defs.push_back(IFC4X2_IfcSweptDiskSolid_type); - IFC4X2_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcCurveStyle_type);defs.push_back(IFC4X2_IfcFillAreaStyle_type);defs.push_back(IFC4X2_IfcSurfaceStyle_type);defs.push_back(IFC4X2_IfcTextStyle_type); - IFC4X2_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcCylindricalSurface_type);defs.push_back(IFC4X2_IfcPlane_type);defs.push_back(IFC4X2_IfcSphericalSurface_type);defs.push_back(IFC4X2_IfcToroidalSurface_type); - IFC4X2_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X2_IfcDistributionChamberElement_type);defs.push_back(IFC4X2_IfcEnergyConversionDevice_type);defs.push_back(IFC4X2_IfcFlowController_type);defs.push_back(IFC4X2_IfcFlowFitting_type);defs.push_back(IFC4X2_IfcFlowMovingDevice_type);defs.push_back(IFC4X2_IfcFlowSegment_type);defs.push_back(IFC4X2_IfcFlowStorageDevice_type);defs.push_back(IFC4X2_IfcFlowTerminal_type);defs.push_back(IFC4X2_IfcFlowTreatmentDevice_type); - IFC4X2_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X2_IfcDistributionChamberElementType_type);defs.push_back(IFC4X2_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X2_IfcFlowControllerType_type);defs.push_back(IFC4X2_IfcFlowFittingType_type);defs.push_back(IFC4X2_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X2_IfcFlowSegmentType_type);defs.push_back(IFC4X2_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X2_IfcFlowTerminalType_type);defs.push_back(IFC4X2_IfcFlowTreatmentDeviceType_type); - IFC4X2_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcDistributionCircuit_type); - IFC4X2_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcDistributionControlElement_type);defs.push_back(IFC4X2_IfcDistributionFlowElement_type); - IFC4X2_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcDistributionControlElementType_type);defs.push_back(IFC4X2_IfcDistributionFlowElementType_type); - IFC4X2_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcDistributionPort_type); - IFC4X2_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcDoorLiningProperties_type);defs.push_back(IFC4X2_IfcDoorPanelProperties_type);defs.push_back(IFC4X2_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X2_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X2_IfcWindowLiningProperties_type);defs.push_back(IFC4X2_IfcWindowPanelProperties_type); - IFC4X2_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcDoorStandardCase_type); - IFC4X2_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcDoorStyle_type);defs.push_back(IFC4X2_IfcElementType_type);defs.push_back(IFC4X2_IfcSpatialElementType_type);defs.push_back(IFC4X2_IfcWindowStyle_type); - IFC4X2_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcDraughtingPreDefinedColour_type); - IFC4X2_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcDraughtingPreDefinedCurveFont_type); - IFC4X2_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcDuctSilencer_type);defs.push_back(IFC4X2_IfcFilter_type);defs.push_back(IFC4X2_IfcInterceptor_type); - IFC4X2_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcDuctSilencerType_type);defs.push_back(IFC4X2_IfcFilterType_type);defs.push_back(IFC4X2_IfcInterceptorType_type); - IFC4X2_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcEdgeCurve_type);defs.push_back(IFC4X2_IfcOrientedEdge_type);defs.push_back(IFC4X2_IfcSubedge_type); - IFC4X2_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcEdgeLoop_type);defs.push_back(IFC4X2_IfcPolyLoop_type);defs.push_back(IFC4X2_IfcVertexLoop_type); - IFC4X2_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X2_IfcTank_type); - IFC4X2_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X2_IfcTankType_type); - IFC4X2_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcElementQuantity_type); - IFC4X2_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcEvent_type);defs.push_back(IFC4X2_IfcProcedure_type);defs.push_back(IFC4X2_IfcTask_type); - IFC4X2_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcEventTime_type);defs.push_back(IFC4X2_IfcLagTime_type);defs.push_back(IFC4X2_IfcResourceTime_type);defs.push_back(IFC4X2_IfcTaskTime_type);defs.push_back(IFC4X2_IfcWorkTime_type); - IFC4X2_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcEventType_type);defs.push_back(IFC4X2_IfcProcedureType_type);defs.push_back(IFC4X2_IfcTaskType_type); - IFC4X2_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcExtendedProperties_type);defs.push_back(IFC4X2_IfcPreDefinedProperties_type);defs.push_back(IFC4X2_IfcProperty_type);defs.push_back(IFC4X2_IfcPropertyEnumeration_type); - IFC4X2_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcExternalSpatialElement_type); - IFC4X2_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X2_IfcSpatialStructureElement_type);defs.push_back(IFC4X2_IfcSpatialZone_type); - IFC4X2_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X2_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X2_IfcRevolvedAreaSolid_type);defs.push_back(IFC4X2_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X2_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcExtrudedAreaSolidTapered_type); - IFC4X2_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcFaceOuterBound_type); - IFC4X2_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcFaceSurface_type); - IFC4X2_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcFacetedBrepWithVoids_type); - IFC4X2_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcFacility_type);defs.push_back(IFC4X2_IfcFacilityPart_type);defs.push_back(IFC4X2_IfcSite_type);defs.push_back(IFC4X2_IfcSpace_type); - IFC4X2_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcFailureConnectionCondition_type);defs.push_back(IFC4X2_IfcSlippageConnectionCondition_type); - IFC4X2_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcFeatureElementAddition_type);defs.push_back(IFC4X2_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X2_IfcSurfaceFeature_type); - IFC4X2_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcFurniture_type);defs.push_back(IFC4X2_IfcSystemFurnitureElement_type); - IFC4X2_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcFurnitureType_type);defs.push_back(IFC4X2_IfcSystemFurnitureElementType_type); - IFC4X2_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcGeometricCurveSet_type); - IFC4X2_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcGeometricRepresentationContext_type); - IFC4X2_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X2_IfcMappedItem_type);defs.push_back(IFC4X2_IfcStyledItem_type);defs.push_back(IFC4X2_IfcTopologicalRepresentationItem_type); - IFC4X2_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcGeometricRepresentationSubContext_type); - IFC4X2_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcGrid_type);defs.push_back(IFC4X2_IfcLinearPositioningElement_type);defs.push_back(IFC4X2_IfcReferent_type); - IFC4X2_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcGridPlacement_type);defs.push_back(IFC4X2_IfcLinearPlacement_type);defs.push_back(IFC4X2_IfcLocalPlacement_type); - IFC4X2_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X2_IfcTessellatedFaceSet_type); - IFC4X2_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X2_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcIndexedTextureMap_type);defs.push_back(IFC4X2_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X2_IfcTextureMap_type); - IFC4X2_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcIndexedTriangleTextureMap_type); - IFC4X2_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcIntersectionCurve_type);defs.push_back(IFC4X2_IfcSeamCurve_type); - IFC4X2_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcIrregularTimeSeries_type);defs.push_back(IFC4X2_IfcRegularTimeSeries_type); - IFC4X2_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcLightSourceAmbient_type);defs.push_back(IFC4X2_IfcLightSourceDirectional_type);defs.push_back(IFC4X2_IfcLightSourceGoniometric_type);defs.push_back(IFC4X2_IfcLightSourcePositional_type); - IFC4X2_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcLightSourceSpot_type); - IFC4X2_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcMapConversion_type); - IFC4X2_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X2_IfcMaterial_type);defs.push_back(IFC4X2_IfcMaterialConstituent_type);defs.push_back(IFC4X2_IfcMaterialConstituentSet_type);defs.push_back(IFC4X2_IfcMaterialLayer_type);defs.push_back(IFC4X2_IfcMaterialLayerSet_type);defs.push_back(IFC4X2_IfcMaterialProfile_type);defs.push_back(IFC4X2_IfcMaterialProfileSet_type); - IFC4X2_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X2_IfcProductDefinitionShape_type); - IFC4X2_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X2_IfcMaterialProfileSetUsage_type); - IFC4X2_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcMaterialLayerWithOffsets_type); - IFC4X2_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcMaterialProfileSetUsageTapering_type); - IFC4X2_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcMaterialProfileWithOffsets_type); - IFC4X2_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcMaterialProperties_type);defs.push_back(IFC4X2_IfcProfileProperties_type); - IFC4X2_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcMemberStandardCase_type); - IFC4X2_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcMetric_type);defs.push_back(IFC4X2_IfcObjective_type); - IFC4X2_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcMirroredProfileDef_type); - IFC4X2_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcObjectDefinition_type);defs.push_back(IFC4X2_IfcPropertyDefinition_type);defs.push_back(IFC4X2_IfcRelationship_type); - IFC4X2_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcOccupant_type); - IFC4X2_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcOffsetCurve2D_type);defs.push_back(IFC4X2_IfcOffsetCurve3D_type);defs.push_back(IFC4X2_IfcOffsetCurveByDistances_type); - IFC4X2_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcOpeningElement_type);defs.push_back(IFC4X2_IfcVoidingFeature_type); - IFC4X2_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcOpeningStandardCase_type); - IFC4X2_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcOuterBoundaryCurve_type); - IFC4X2_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X2_IfcPhysicalSimpleQuantity_type); - IFC4X2_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcPlanarBox_type); - IFC4X2_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcPlateStandardCase_type); - IFC4X2_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcPolygonalFaceSet_type);defs.push_back(IFC4X2_IfcTriangulatedFaceSet_type); - IFC4X2_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcPostalAddress_type);defs.push_back(IFC4X2_IfcTelecomAddress_type); - IFC4X2_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcPreDefinedColour_type);defs.push_back(IFC4X2_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X2_IfcPreDefinedTextFont_type); - IFC4X2_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X2_IfcPropertySet_type);defs.push_back(IFC4X2_IfcQuantitySet_type); - IFC4X2_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcPresentationLayerWithStyle_type); - IFC4X2_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcProject_type);defs.push_back(IFC4X2_IfcProjectLibrary_type); - IFC4X2_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcProjectedCRS_type); - IFC4X2_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcProjectionElement_type); - IFC4X2_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcPropertyBoundedValue_type);defs.push_back(IFC4X2_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X2_IfcPropertyListValue_type);defs.push_back(IFC4X2_IfcPropertyReferenceValue_type);defs.push_back(IFC4X2_IfcPropertySingleValue_type);defs.push_back(IFC4X2_IfcPropertyTableValue_type); - IFC4X2_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcPropertySetDefinition_type);defs.push_back(IFC4X2_IfcPropertyTemplateDefinition_type); - IFC4X2_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcPropertySetTemplate_type);defs.push_back(IFC4X2_IfcPropertyTemplate_type); - IFC4X2_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcQuantityArea_type);defs.push_back(IFC4X2_IfcQuantityCount_type);defs.push_back(IFC4X2_IfcQuantityLength_type);defs.push_back(IFC4X2_IfcQuantityTime_type);defs.push_back(IFC4X2_IfcQuantityVolume_type);defs.push_back(IFC4X2_IfcQuantityWeight_type); - IFC4X2_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRationalBSplineCurveWithKnots_type); - IFC4X2_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X2_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X2_IfcRoundedRectangleProfileDef_type); - IFC4X2_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcReinforcementBarProperties_type);defs.push_back(IFC4X2_IfcSectionProperties_type);defs.push_back(IFC4X2_IfcSectionReinforcementProperties_type); - IFC4X2_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcReinforcingBar_type);defs.push_back(IFC4X2_IfcReinforcingMesh_type);defs.push_back(IFC4X2_IfcTendon_type);defs.push_back(IFC4X2_IfcTendonAnchor_type);defs.push_back(IFC4X2_IfcTendonConduit_type); - IFC4X2_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcReinforcingBarType_type);defs.push_back(IFC4X2_IfcReinforcingMeshType_type);defs.push_back(IFC4X2_IfcTendonAnchorType_type);defs.push_back(IFC4X2_IfcTendonConduitType_type);defs.push_back(IFC4X2_IfcTendonType_type); - IFC4X2_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcRelAggregates_type);defs.push_back(IFC4X2_IfcRelNests_type);defs.push_back(IFC4X2_IfcRelProjectsElement_type);defs.push_back(IFC4X2_IfcRelVoidsElement_type); - IFC4X2_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcRelAssigns_type);defs.push_back(IFC4X2_IfcRelAssociates_type);defs.push_back(IFC4X2_IfcRelConnects_type);defs.push_back(IFC4X2_IfcRelDeclares_type);defs.push_back(IFC4X2_IfcRelDecomposes_type);defs.push_back(IFC4X2_IfcRelDefines_type); - IFC4X2_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcRelAssignsToActor_type);defs.push_back(IFC4X2_IfcRelAssignsToControl_type);defs.push_back(IFC4X2_IfcRelAssignsToGroup_type);defs.push_back(IFC4X2_IfcRelAssignsToProcess_type);defs.push_back(IFC4X2_IfcRelAssignsToProduct_type);defs.push_back(IFC4X2_IfcRelAssignsToResource_type); - IFC4X2_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRelAssignsToGroupByFactor_type); - IFC4X2_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X2_IfcRelAssociatesApproval_type);defs.push_back(IFC4X2_IfcRelAssociatesClassification_type);defs.push_back(IFC4X2_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X2_IfcRelAssociatesDocument_type);defs.push_back(IFC4X2_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X2_IfcRelAssociatesMaterial_type); - IFC4X2_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X2_IfcRelConnectsElements_type);defs.push_back(IFC4X2_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X2_IfcRelConnectsPorts_type);defs.push_back(IFC4X2_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X2_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X2_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X2_IfcRelCoversBldgElements_type);defs.push_back(IFC4X2_IfcRelCoversSpaces_type);defs.push_back(IFC4X2_IfcRelFillsElement_type);defs.push_back(IFC4X2_IfcRelFlowControlElements_type);defs.push_back(IFC4X2_IfcRelInterferesElements_type);defs.push_back(IFC4X2_IfcRelPositions_type);defs.push_back(IFC4X2_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X2_IfcRelSequence_type);defs.push_back(IFC4X2_IfcRelServicesBuildings_type);defs.push_back(IFC4X2_IfcRelSpaceBoundary_type); - IFC4X2_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcRelConnectsPathElements_type);defs.push_back(IFC4X2_IfcRelConnectsWithRealizingElements_type); - IFC4X2_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRelConnectsWithEccentricity_type); - IFC4X2_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X2_IfcRelDefinesByObject_type);defs.push_back(IFC4X2_IfcRelDefinesByProperties_type);defs.push_back(IFC4X2_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X2_IfcRelDefinesByType_type); - IFC4X2_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRelSpaceBoundary1stLevel_type); - IFC4X2_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRelSpaceBoundary2ndLevel_type); - IFC4X2_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcReparametrisedCompositeCurveSegment_type); - IFC4X2_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcRevolvedAreaSolidTapered_type); - IFC4X2_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcSectionedSolidHorizontal_type); - IFC4X2_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcShapeModel_type);defs.push_back(IFC4X2_IfcStyleModel_type); - IFC4X2_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcShapeRepresentation_type);defs.push_back(IFC4X2_IfcTopologyRepresentation_type); - IFC4X2_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcSlabElementedCase_type);defs.push_back(IFC4X2_IfcSlabStandardCase_type); - IFC4X2_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcSpaceType_type); - IFC4X2_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcSpatialStructureElementType_type);defs.push_back(IFC4X2_IfcSpatialZoneType_type); - IFC4X2_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcStructuralAction_type);defs.push_back(IFC4X2_IfcStructuralReaction_type); - IFC4X2_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcStructuralConnection_type);defs.push_back(IFC4X2_IfcStructuralMember_type); - IFC4X2_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcStructuralCurveAction_type);defs.push_back(IFC4X2_IfcStructuralPointAction_type);defs.push_back(IFC4X2_IfcStructuralSurfaceAction_type); - IFC4X2_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcStructuralCurveConnection_type);defs.push_back(IFC4X2_IfcStructuralPointConnection_type);defs.push_back(IFC4X2_IfcStructuralSurfaceConnection_type); - IFC4X2_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcStructuralCurveMember_type);defs.push_back(IFC4X2_IfcStructuralSurfaceMember_type); - IFC4X2_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralCurveMemberVarying_type); - IFC4X2_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcStructuralCurveReaction_type);defs.push_back(IFC4X2_IfcStructuralPointReaction_type);defs.push_back(IFC4X2_IfcStructuralSurfaceReaction_type); - IFC4X2_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralLinearAction_type); - IFC4X2_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralLoadCase_type); - IFC4X2_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X2_IfcStructuralLoadOrResult_type); - IFC4X2_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X2_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X2_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X2_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X2_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X2_IfcStructuralLoadTemperature_type); - IFC4X2_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X2_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralLoadSingleForceWarping_type); - IFC4X2_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcStructuralLoadStatic_type);defs.push_back(IFC4X2_IfcSurfaceReinforcementArea_type); - IFC4X2_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralPlanarAction_type); - IFC4X2_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStructuralSurfaceMemberVarying_type); - IFC4X2_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcStyledRepresentation_type); - IFC4X2_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X2_IfcSurfaceOfRevolution_type); - IFC4X2_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcSurfaceStyleRendering_type); - IFC4X2_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcSweptDiskSolidPolygonal_type); - IFC4X2_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcTaskTimeRecurring_type); - IFC4X2_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcTextLiteralWithExtent_type); - IFC4X2_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcTextStyleFontModel_type); - IFC4X2_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcTriangulatedIrregularNetwork_type); - IFC4X2_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X2_IfcTypeProcess_type);defs.push_back(IFC4X2_IfcTypeProduct_type);defs.push_back(IFC4X2_IfcTypeResource_type); - IFC4X2_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcVertexPoint_type); - IFC4X2_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcWallElementedCase_type);defs.push_back(IFC4X2_IfcWallStandardCase_type); - IFC4X2_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X2_IfcWindowStandardCase_type); - IFC4X2_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X2_IfcWorkPlan_type);defs.push_back(IFC4X2_IfcWorkSchedule_type); - IFC4X2_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X2_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X2_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X2_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X2_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X2_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X2_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X2_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X2_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X2_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X2_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[8], + strings[9] + }); + IFC4X2_IfcAlignmentTypeEnum_type = new enumeration_type(strings[77], 39, { + strings[8], + strings[9] + }); + IFC4X2_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[78], 40, new simple_type(simple_type::real_type)); + IFC4X2_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[79], 41, { + strings[80], + strings[81], + strings[82], + strings[8], + strings[9] + }); + IFC4X2_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[83], 42, { + strings[84], + strings[85], + strings[86], + strings[87], + strings[8], + strings[9] + }); + IFC4X2_IfcAngularVelocityMeasure_type = new type_declaration(strings[88], 43, new simple_type(simple_type::real_type)); + IFC4X2_IfcAreaDensityMeasure_type = new type_declaration(strings[89], 55, new simple_type(simple_type::real_type)); + IFC4X2_IfcAreaMeasure_type = new type_declaration(strings[90], 56, new simple_type(simple_type::real_type)); + IFC4X2_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[91], 57, { + strings[92], + strings[93], + strings[94], + strings[95] + }); + IFC4X2_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[96], 58, { + strings[48], + strings[97], + strings[9] + }); + IFC4X2_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[98], 63, { + strings[99], + strings[100], + strings[101], + strings[102], + strings[103], + strings[104], + strings[105], + strings[106], + strings[107], + strings[108], + strings[109], + strings[8], + strings[9] + }); + IFC4X2_IfcBSplineCurveForm_type = new enumeration_type(strings[110], 105, { + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116] + }); + IFC4X2_IfcBSplineSurfaceForm_type = new enumeration_type(strings[117], 108, { + strings[118], + strings[119], + strings[120], + strings[121], + strings[122], + strings[123], + strings[124], + strings[125], + strings[126], + strings[127], + strings[116] + }); + IFC4X2_IfcBeamTypeEnum_type = new enumeration_type(strings[128], 71, { + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[134], + strings[135], + strings[136], + strings[137], + strings[138], + strings[139], + strings[140], + strings[8], + strings[9] + }); + IFC4X2_IfcBearingTypeDisplacementEnum_type = new enumeration_type(strings[141], 74, { + strings[142], + strings[143], + strings[144], + strings[145], + strings[9] + }); + IFC4X2_IfcBearingTypeEnum_type = new enumeration_type(strings[146], 75, { + strings[147], + strings[148], + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[154], + strings[8], + strings[9] + }); + IFC4X2_IfcBenchmarkEnum_type = new enumeration_type(strings[155], 76, { + strings[156], + strings[157], + strings[158], + strings[159], + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165] + }); + IFC4X2_IfcBinary_type = new type_declaration(strings[166], 78, new simple_type(simple_type::binary_type)); + IFC4X2_IfcBoilerTypeEnum_type = new enumeration_type(strings[167], 83, { + strings[168], + strings[169], + strings[8], + strings[9] + }); + IFC4X2_IfcBoolean_type = new type_declaration(strings[170], 84, new simple_type(simple_type::boolean_type)); + IFC4X2_IfcBooleanOperator_type = new enumeration_type(strings[171], 87, { + strings[172], + strings[173], + strings[174] + }); + IFC4X2_IfcBridgePartTypeEnum_type = new enumeration_type(strings[175], 102, { + strings[176], + strings[177], + strings[178], + strings[179], + strings[180], + strings[181], + strings[182], + strings[183], + strings[184], + strings[185], + strings[8], + strings[9] + }); + IFC4X2_IfcBridgeTypeEnum_type = new enumeration_type(strings[186], 103, { + strings[187], + strings[188], + strings[189], + strings[190], + strings[191], + strings[192], + strings[193], + strings[194], + strings[8], + strings[9] + }); + IFC4X2_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[195], 114, { + strings[196], + strings[197], + strings[198], + strings[8], + strings[9] + }); + IFC4X2_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[199], 117, { + strings[200], + strings[201], + strings[202], + strings[203], + strings[204], + strings[8], + strings[9] + }); + IFC4X2_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[205], 121, { + strings[206], + strings[179], + strings[207], + strings[208], + strings[209], + strings[23], + strings[210], + strings[211], + strings[8], + strings[9] + }); + IFC4X2_IfcBurnerTypeEnum_type = new enumeration_type(strings[212], 124, { + strings[8], + strings[9] + }); + IFC4X2_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[213], 127, { + strings[214], + strings[215], + strings[216], + strings[217], + strings[8], + strings[9] + }); + IFC4X2_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[218], 130, { + strings[219], + strings[220], + strings[221], + strings[222], + strings[8], + strings[9] + }); + IFC4X2_IfcCableFittingTypeEnum_type = new enumeration_type(strings[223], 133, { + strings[224], + strings[225], + strings[226], + strings[227], + strings[228], + strings[8], + strings[9] + }); + IFC4X2_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[229], 136, { + strings[230], + strings[231], + strings[232], + strings[233], + strings[8], + strings[9] + }); + IFC4X2_IfcCaissonFoundationTypeEnum_type = new enumeration_type(strings[234], 139, { + strings[235], + strings[236], + strings[8], + strings[9] + }); + IFC4X2_IfcCardinalPointReference_type = new type_declaration(strings[237], 140, new simple_type(simple_type::integer_type)); + IFC4X2_IfcChangeActionEnum_type = new enumeration_type(strings[238], 151, { + strings[239], + strings[240], + strings[241], + strings[242], + strings[9] + }); + IFC4X2_IfcChillerTypeEnum_type = new enumeration_type(strings[243], 154, { + strings[244], + strings[245], + strings[246], + strings[8], + strings[9] + }); + IFC4X2_IfcChimneyTypeEnum_type = new enumeration_type(strings[247], 157, { + strings[8], + strings[9] + }); + IFC4X2_IfcCoilTypeEnum_type = new enumeration_type(strings[248], 171, { + strings[249], + strings[250], + strings[251], + strings[252], + strings[253], + strings[254], + strings[255], + strings[8], + strings[9] + }); + IFC4X2_IfcColumnTypeEnum_type = new enumeration_type(strings[256], 180, { + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[8], + strings[9] + }); + IFC4X2_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[262], 183, { + strings[263], + strings[264], + strings[4], + strings[265], + strings[266], + strings[267], + strings[268], + strings[269], + strings[270], + strings[271], + strings[272], + strings[273], + strings[8], + strings[9] + }); + IFC4X2_IfcComplexNumber_type = new type_declaration(strings[274], 184, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X2_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[275], 187, { + strings[276], + strings[277] + }); + IFC4X2_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[278], 192, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X2_IfcCompressorTypeEnum_type = new enumeration_type(strings[279], 195, { + strings[280], + strings[281], + strings[282], + strings[283], + strings[284], + strings[285], + strings[286], + strings[287], + strings[288], + strings[289], + strings[290], + strings[291], + strings[292], + strings[293], + strings[294], + strings[8], + strings[9] + }); + IFC4X2_IfcCondenserTypeEnum_type = new enumeration_type(strings[295], 198, { + strings[244], + strings[296], + strings[245], + strings[297], + strings[298], + strings[299], + strings[300], + strings[8], + strings[9] + }); + IFC4X2_IfcConnectionTypeEnum_type = new enumeration_type(strings[301], 206, { + strings[302], + strings[303], + strings[304], + strings[9] + }); + IFC4X2_IfcConstraintEnum_type = new enumeration_type(strings[305], 209, { + strings[306], + strings[307], + strings[308], + strings[8], + strings[9] + }); + IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[309], 212, { + strings[310], + strings[311], + strings[312], + strings[313], + strings[314], + strings[315], + strings[316], + strings[317], + strings[8], + strings[9] + }); + IFC4X2_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[318], 215, { + strings[319], + strings[320], + strings[321], + strings[322], + strings[323], + strings[324], + strings[325], + strings[326], + strings[327], + strings[9], + strings[8] + }); + IFC4X2_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[328], 218, { + strings[329], + strings[330], + strings[8], + strings[9] + }); + IFC4X2_IfcContextDependentMeasure_type = new type_declaration(strings[331], 222, new simple_type(simple_type::real_type)); + IFC4X2_IfcControllerTypeEnum_type = new enumeration_type(strings[332], 227, { + strings[333], + strings[334], + strings[335], + strings[336], + strings[337], + strings[8], + strings[9] + }); + IFC4X2_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[338], 232, { + strings[339], + strings[340], + strings[8], + strings[9] + }); + IFC4X2_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[341], 235, { + strings[342], + strings[343], + strings[344], + strings[8], + strings[9] + }); + IFC4X2_IfcCostItemTypeEnum_type = new enumeration_type(strings[345], 240, { + strings[8], + strings[9] + }); + IFC4X2_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[346], 242, { + strings[347], + strings[348], + strings[349], + strings[350], + strings[351], + strings[352], + strings[353], + strings[8], + strings[9] + }); + IFC4X2_IfcCountMeasure_type = new type_declaration(strings[354], 244, new simple_type(simple_type::number_type)); + IFC4X2_IfcCoveringTypeEnum_type = new enumeration_type(strings[355], 247, { + strings[356], + strings[357], + strings[358], + strings[359], + strings[360], + strings[361], + strings[196], + strings[362], + strings[363], + strings[364], + strings[365], + strings[8], + strings[9] + }); + IFC4X2_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[366], 250, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4X2_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[367], 258, { + strings[8], + strings[9] + }); + IFC4X2_IfcCurvatureMeasure_type = new type_declaration(strings[368], 259, new simple_type(simple_type::real_type)); + IFC4X2_IfcCurveInterpolationEnum_type = new enumeration_type(strings[369], 264, { + strings[370], + strings[371], + strings[372], + strings[9] + }); + IFC4X2_IfcDamperTypeEnum_type = new enumeration_type(strings[373], 276, { + strings[374], + strings[375], + strings[376], + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[383], + strings[384], + strings[8], + strings[9] + }); + IFC4X2_IfcDataOriginEnum_type = new enumeration_type(strings[385], 277, { + strings[386], + strings[387], + strings[388], + strings[8], + strings[9] + }); + IFC4X2_IfcDate_type = new type_declaration(strings[389], 278, new simple_type(simple_type::string_type)); + IFC4X2_IfcDateTime_type = new type_declaration(strings[390], 279, new simple_type(simple_type::string_type)); + IFC4X2_IfcDayInMonthNumber_type = new type_declaration(strings[391], 280, new simple_type(simple_type::integer_type)); + IFC4X2_IfcDayInWeekNumber_type = new type_declaration(strings[392], 281, new simple_type(simple_type::integer_type)); + IFC4X2_IfcDerivedUnitEnum_type = new enumeration_type(strings[393], 289, { + strings[394], + strings[395], + strings[396], + strings[397], + strings[398], + strings[399], + strings[400], + strings[401], + strings[402], + strings[403], + strings[404], + strings[405], + strings[406], + strings[407], + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[413], + strings[414], + strings[415], + strings[416], + strings[417], + strings[418], + strings[419], + strings[420], + strings[421], + strings[422], + strings[423], + strings[424], + strings[425], + strings[426], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[432], + strings[433], + strings[434], + strings[435], + strings[436], + strings[437], + strings[438], + strings[439], + strings[440], + strings[441], + strings[442], + strings[443], + strings[444], + strings[445], + strings[8] + }); + IFC4X2_IfcDescriptiveMeasure_type = new type_declaration(strings[446], 290, new simple_type(simple_type::string_type)); + IFC4X2_IfcDimensionCount_type = new type_declaration(strings[447], 292, new simple_type(simple_type::integer_type)); + IFC4X2_IfcDirectionSenseEnum_type = new enumeration_type(strings[448], 294, { + strings[449], + strings[450] + }); + IFC4X2_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[451], 297, { + strings[452], + strings[453], + strings[454], + strings[455], + strings[8], + strings[9] + }); + IFC4X2_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[456], 301, { + strings[457], + strings[458], + strings[459], + strings[460], + strings[461], + strings[462], + strings[463], + strings[464], + strings[8], + strings[9] + }); + IFC4X2_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[465], 310, { + strings[466], + strings[467], + strings[468], + strings[469], + strings[8], + strings[9] + }); + IFC4X2_IfcDistributionSystemEnum_type = new enumeration_type(strings[470], 312, { + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[477], + strings[478], + strings[479], + strings[480], + strings[481], + strings[482], + strings[483], + strings[484], + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[322], + strings[490], + strings[491], + strings[313], + strings[314], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[502], + strings[108], + strings[503], + strings[504], + strings[505], + strings[506], + strings[507], + strings[508], + strings[8], + strings[9] + }); + IFC4X2_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[509], 313, { + strings[510], + strings[511], + strings[512], + strings[513], + strings[8], + strings[9] + }); + IFC4X2_IfcDocumentStatusEnum_type = new enumeration_type(strings[514], 318, { + strings[515], + strings[516], + strings[517], + strings[518], + strings[9] + }); + IFC4X2_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[519], 321, { + strings[520], + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[8], + strings[9] + }); + IFC4X2_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[527], 322, { + strings[528], + strings[529], + strings[530], + strings[9] + }); + IFC4X2_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[531], 326, { + strings[532], + strings[533], + strings[534], + strings[327], + strings[535], + strings[536], + strings[326], + strings[8], + strings[9] + }); + IFC4X2_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[537], 327, { + strings[538], + strings[539], + strings[540], + strings[541], + strings[542], + strings[543], + strings[544], + strings[545], + strings[546], + strings[547], + strings[548], + strings[549], + strings[550], + strings[551], + strings[524], + strings[525], + strings[8], + strings[9] + }); + IFC4X2_IfcDoorTypeEnum_type = new enumeration_type(strings[552], 329, { + strings[553], + strings[554], + strings[555], + strings[8], + strings[9] + }); + IFC4X2_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[556], 330, { + strings[538], + strings[539], + strings[540], + strings[541], + strings[542], + strings[543], + strings[544], + strings[545], + strings[546], + strings[547], + strings[548], + strings[549], + strings[550], + strings[551], + strings[524], + strings[525], + strings[557], + strings[558], + strings[8], + strings[9] + }); + IFC4X2_IfcDoseEquivalentMeasure_type = new type_declaration(strings[559], 331, new simple_type(simple_type::real_type)); + IFC4X2_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[560], 336, { + strings[214], + strings[224], + strings[225], + strings[226], + strings[227], + strings[561], + strings[228], + strings[8], + strings[9] + }); + IFC4X2_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[562], 339, { + strings[563], + strings[564], + strings[8], + strings[9] + }); + IFC4X2_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[565], 342, { + strings[566], + strings[567], + strings[568], + strings[8], + strings[9] + }); + IFC4X2_IfcDuration_type = new type_declaration(strings[569], 343, new simple_type(simple_type::string_type)); + IFC4X2_IfcDynamicViscosityMeasure_type = new type_declaration(strings[570], 344, new simple_type(simple_type::real_type)); + IFC4X2_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[571], 350, { + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[577], + strings[578], + strings[579], + strings[580], + strings[581], + strings[582], + strings[583], + strings[584], + strings[585], + strings[586], + strings[587], + strings[8], + strings[9] + }); + IFC4X2_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[588], 351, new simple_type(simple_type::real_type)); + IFC4X2_IfcElectricChargeMeasure_type = new type_declaration(strings[589], 352, new simple_type(simple_type::real_type)); + IFC4X2_IfcElectricConductanceMeasure_type = new type_declaration(strings[590], 353, new simple_type(simple_type::real_type)); + IFC4X2_IfcElectricCurrentMeasure_type = new type_declaration(strings[591], 354, new simple_type(simple_type::real_type)); + IFC4X2_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[592], 357, { + strings[593], + strings[594], + strings[595], + strings[596], + strings[8], + strings[9] + }); + IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[597], 360, { + strings[598], + strings[599], + strings[600], + strings[601], + strings[602], + strings[8], + strings[9] + }); + IFC4X2_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[603], 363, { + strings[604], + strings[605], + strings[606], + strings[8], + strings[9] + }); + IFC4X2_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[607], 366, { + strings[608], + strings[609], + strings[610], + strings[611], + strings[612], + strings[8], + strings[9] + }); + IFC4X2_IfcElectricResistanceMeasure_type = new type_declaration(strings[613], 367, new simple_type(simple_type::real_type)); + IFC4X2_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[614], 370, { + strings[615], + strings[616], + strings[617], + strings[8], + strings[9] + }); + IFC4X2_IfcElectricVoltageMeasure_type = new type_declaration(strings[618], 371, new simple_type(simple_type::real_type)); + IFC4X2_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[619], 376, { + strings[620], + strings[621], + strings[622], + strings[623], + strings[192], + strings[624], + strings[625], + strings[626], + strings[194], + strings[176], + strings[180], + strings[182], + strings[627], + strings[177], + strings[8], + strings[9] + }); + IFC4X2_IfcElementCompositionEnum_type = new enumeration_type(strings[628], 379, { + strings[200], + strings[201], + strings[202] + }); + IFC4X2_IfcEnergyMeasure_type = new type_declaration(strings[629], 386, new simple_type(simple_type::real_type)); + IFC4X2_IfcEngineTypeEnum_type = new enumeration_type(strings[630], 389, { + strings[631], + strings[632], + strings[8], + strings[9] + }); + IFC4X2_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[633], 392, { + strings[634], + strings[635], + strings[636], + strings[637], + strings[638], + strings[639], + strings[640], + strings[641], + strings[642], + strings[8], + strings[9] + }); + IFC4X2_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[643], 395, { + strings[644], + strings[645], + strings[646], + strings[647], + strings[648], + strings[649], + strings[8], + strings[9] + }); + IFC4X2_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[650], 398, { + strings[651], + strings[652], + strings[653], + strings[654], + strings[8], + strings[9] + }); + IFC4X2_IfcEventTypeEnum_type = new enumeration_type(strings[655], 400, { + strings[656], + strings[657], + strings[658], + strings[8], + strings[9] + }); + IFC4X2_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[659], 409, { + strings[660], + strings[661], + strings[662], + strings[663], + strings[8], + strings[9] + }); + IFC4X2_IfcFanTypeEnum_type = new enumeration_type(strings[664], 425, { + strings[665], + strings[666], + strings[667], + strings[668], + strings[669], + strings[670], + strings[671], + strings[8], + strings[9] + }); + IFC4X2_IfcFastenerTypeEnum_type = new enumeration_type(strings[672], 428, { + strings[673], + strings[674], + strings[675], + strings[8], + strings[9] + }); + IFC4X2_IfcFilterTypeEnum_type = new enumeration_type(strings[676], 438, { + strings[677], + strings[678], + strings[679], + strings[680], + strings[681], + strings[682], + strings[8], + strings[9] + }); + IFC4X2_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[683], 441, { + strings[684], + strings[685], + strings[686], + strings[687], + strings[688], + strings[8], + strings[9] + }); + IFC4X2_IfcFlowDirectionEnum_type = new enumeration_type(strings[689], 445, { + strings[690], + strings[691], + strings[692], + strings[9] + }); + IFC4X2_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[693], 450, { + strings[694], + strings[695], + strings[696], + strings[697], + strings[698], + strings[699], + strings[700], + strings[701], + strings[8], + strings[9] + }); + IFC4X2_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[702], 453, { + strings[703], + strings[704], + strings[705], + strings[706], + strings[8], + strings[9] + }); + IFC4X2_IfcFontStyle_type = new type_declaration(strings[707], 464, new simple_type(simple_type::string_type)); + IFC4X2_IfcFontVariant_type = new type_declaration(strings[708], 465, new simple_type(simple_type::string_type)); + IFC4X2_IfcFontWeight_type = new type_declaration(strings[709], 466, new simple_type(simple_type::string_type)); + IFC4X2_IfcFootingTypeEnum_type = new enumeration_type(strings[710], 469, { + strings[711], + strings[712], + strings[713], + strings[714], + strings[715], + strings[8], + strings[9] + }); + IFC4X2_IfcForceMeasure_type = new type_declaration(strings[716], 470, new simple_type(simple_type::real_type)); + IFC4X2_IfcFrequencyMeasure_type = new type_declaration(strings[717], 471, new simple_type(simple_type::real_type)); + IFC4X2_IfcFurnitureTypeEnum_type = new enumeration_type(strings[718], 476, { + strings[719], + strings[720], + strings[721], + strings[722], + strings[723], + strings[724], + strings[725], + strings[8], + strings[9] + }); + IFC4X2_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[726], 479, { + strings[727], + strings[728], + strings[8], + strings[9] + }); + IFC4X2_IfcGeometricProjectionEnum_type = new enumeration_type(strings[729], 481, { + strings[730], + strings[731], + strings[732], + strings[733], + strings[734], + strings[735], + strings[736], + strings[8], + strings[9] + }); + IFC4X2_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[737], 488, { + strings[738], + strings[739] + }); + IFC4X2_IfcGloballyUniqueId_type = new type_declaration(strings[740], 487, new simple_type(simple_type::string_type)); + IFC4X2_IfcGridTypeEnum_type = new enumeration_type(strings[741], 493, { + strings[567], + strings[742], + strings[743], + strings[744], + strings[8], + strings[9] + }); + IFC4X2_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[745], 499, { + strings[746], + strings[747], + strings[8], + strings[9] + }); + IFC4X2_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[748], 500, new simple_type(simple_type::real_type)); + IFC4X2_IfcHeatingValueMeasure_type = new type_declaration(strings[749], 501, new simple_type(simple_type::real_type)); + IFC4X2_IfcHumidifierTypeEnum_type = new enumeration_type(strings[750], 504, { + strings[751], + strings[752], + strings[753], + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[759], + strings[760], + strings[761], + strings[762], + strings[763], + strings[8], + strings[9] + }); + IFC4X2_IfcIdentifier_type = new type_declaration(strings[764], 505, new simple_type(simple_type::string_type)); + IFC4X2_IfcIlluminanceMeasure_type = new type_declaration(strings[765], 506, new simple_type(simple_type::real_type)); + IFC4X2_IfcInductanceMeasure_type = new type_declaration(strings[766], 514, new simple_type(simple_type::real_type)); + IFC4X2_IfcInteger_type = new type_declaration(strings[767], 515, new simple_type(simple_type::integer_type)); + IFC4X2_IfcIntegerCountRateMeasure_type = new type_declaration(strings[768], 516, new simple_type(simple_type::integer_type)); + IFC4X2_IfcInterceptorTypeEnum_type = new enumeration_type(strings[769], 519, { + strings[770], + strings[771], + strings[494], + strings[772], + strings[8], + strings[9] + }); + IFC4X2_IfcInternalOrExternalEnum_type = new enumeration_type(strings[773], 520, { + strings[774], + strings[660], + strings[661], + strings[662], + strings[663], + strings[9] + }); + IFC4X2_IfcInventoryTypeEnum_type = new enumeration_type(strings[775], 523, { + strings[776], + strings[777], + strings[778], + strings[8], + strings[9] + }); + IFC4X2_IfcIonConcentrationMeasure_type = new type_declaration(strings[779], 524, new simple_type(simple_type::real_type)); + IFC4X2_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[780], 528, new simple_type(simple_type::real_type)); + IFC4X2_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[781], 531, { + strings[480], + strings[782], + strings[8], + strings[9] + }); + IFC4X2_IfcKinematicViscosityMeasure_type = new type_declaration(strings[783], 532, new simple_type(simple_type::real_type)); + IFC4X2_IfcKnotType_type = new enumeration_type(strings[784], 533, { + strings[785], + strings[786], + strings[787], + strings[116] + }); + IFC4X2_IfcLabel_type = new type_declaration(strings[788], 534, new simple_type(simple_type::string_type)); + IFC4X2_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[789], 537, { + strings[790], + strings[791], + strings[792], + strings[320], + strings[321], + strings[793], + strings[794], + strings[357], + strings[795], + strings[796], + strings[797], + strings[324], + strings[798], + strings[315], + strings[799], + strings[359], + strings[800], + strings[801], + strings[802], + strings[8], + strings[9] + }); + IFC4X2_IfcLampTypeEnum_type = new enumeration_type(strings[803], 541, { + strings[804], + strings[805], + strings[806], + strings[807], + strings[808], + strings[809], + strings[810], + strings[811], + strings[812], + strings[8], + strings[9] + }); + IFC4X2_IfcLanguageId_type = new type_declaration(strings[813], 542, new named_type(IFC4X2_IfcIdentifier_type)); + IFC4X2_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[814], 544, { + strings[815], + strings[816], + strings[817] + }); + IFC4X2_IfcLengthMeasure_type = new type_declaration(strings[818], 545, new simple_type(simple_type::real_type)); + IFC4X2_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[819], 549, { + strings[820], + strings[821], + strings[822], + strings[9] + }); + IFC4X2_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[823], 552, { + strings[804], + strings[805], + strings[807], + strings[808], + strings[824], + strings[825], + strings[826], + strings[827], + strings[810], + strings[812], + strings[9] + }); + IFC4X2_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[828], 555, { + strings[829], + strings[830], + strings[831], + strings[8], + strings[9] + }); + IFC4X2_IfcLinearForceMeasure_type = new type_declaration(strings[832], 564, new simple_type(simple_type::real_type)); + IFC4X2_IfcLinearMomentMeasure_type = new type_declaration(strings[833], 565, new simple_type(simple_type::real_type)); + IFC4X2_IfcLinearStiffnessMeasure_type = new type_declaration(strings[834], 568, new simple_type(simple_type::real_type)); + IFC4X2_IfcLinearVelocityMeasure_type = new type_declaration(strings[835], 569, new simple_type(simple_type::real_type)); + IFC4X2_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[836], 572, { + strings[837], + strings[838], + strings[839], + strings[8], + strings[9] + }); + IFC4X2_IfcLogical_type = new type_declaration(strings[840], 574, new simple_type(simple_type::logical_type)); + IFC4X2_IfcLogicalOperatorEnum_type = new enumeration_type(strings[841], 575, { + strings[842], + strings[843], + strings[844], + strings[845], + strings[846] + }); + IFC4X2_IfcLuminousFluxMeasure_type = new type_declaration(strings[847], 578, new simple_type(simple_type::real_type)); + IFC4X2_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[848], 579, new simple_type(simple_type::real_type)); + IFC4X2_IfcLuminousIntensityMeasure_type = new type_declaration(strings[849], 580, new simple_type(simple_type::real_type)); + IFC4X2_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[850], 581, new simple_type(simple_type::real_type)); + IFC4X2_IfcMagneticFluxMeasure_type = new type_declaration(strings[851], 582, new simple_type(simple_type::real_type)); + IFC4X2_IfcMassDensityMeasure_type = new type_declaration(strings[852], 586, new simple_type(simple_type::real_type)); + IFC4X2_IfcMassFlowRateMeasure_type = new type_declaration(strings[853], 587, new simple_type(simple_type::real_type)); + IFC4X2_IfcMassMeasure_type = new type_declaration(strings[854], 588, new simple_type(simple_type::real_type)); + IFC4X2_IfcMassPerLengthMeasure_type = new type_declaration(strings[855], 589, new simple_type(simple_type::real_type)); + IFC4X2_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[856], 614, { + strings[857], + strings[858], + strings[859], + strings[860], + strings[861], + strings[862], + strings[863], + strings[864], + strings[865], + strings[866], + strings[867], + strings[8], + strings[9] + }); + IFC4X2_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[868], 617, { + strings[869], + strings[870], + strings[871], + strings[872], + strings[873], + strings[8], + strings[9] + }); + IFC4X2_IfcMemberTypeEnum_type = new enumeration_type(strings[874], 621, { + strings[875], + strings[876], + strings[877], + strings[878], + strings[879], + strings[746], + strings[6], + strings[880], + strings[881], + strings[882], + strings[883], + strings[884], + strings[885], + strings[886], + strings[887], + strings[888], + strings[889], + strings[8], + strings[9] + }); + IFC4X2_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[890], 625, new simple_type(simple_type::real_type)); + IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[891], 626, new simple_type(simple_type::real_type)); + IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[892], 627, new simple_type(simple_type::real_type)); + IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[893], 628, { + IFC4X2_IfcBoolean_type, + IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X2_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[894], 629, new simple_type(simple_type::real_type)); + IFC4X2_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[895], 630, { + IFC4X2_IfcBoolean_type, + IFC4X2_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[896], 631, { + IFC4X2_IfcBoolean_type, + IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X2_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[897], 632, new simple_type(simple_type::real_type)); + IFC4X2_IfcMolecularWeightMeasure_type = new type_declaration(strings[898], 633, new simple_type(simple_type::real_type)); + IFC4X2_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[899], 634, new simple_type(simple_type::real_type)); + IFC4X2_IfcMonetaryMeasure_type = new type_declaration(strings[900], 635, new simple_type(simple_type::real_type)); + IFC4X2_IfcMonthInYearNumber_type = new type_declaration(strings[901], 637, new simple_type(simple_type::integer_type)); + IFC4X2_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[902], 640, { + strings[903], + strings[904], + strings[905], + strings[8], + strings[9] + }); + IFC4X2_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[906], 642, new named_type(IFC4X2_IfcLengthMeasure_type)); + IFC4X2_IfcNullStyle_type = new enumeration_type(strings[907], 644, { + strings[908] + }); + IFC4X2_IfcNumericMeasure_type = new type_declaration(strings[909], 645, new simple_type(simple_type::number_type)); + IFC4X2_IfcObjectTypeEnum_type = new enumeration_type(strings[910], 652, { + strings[911], + strings[912], + strings[478], + strings[913], + strings[914], + strings[915], + strings[916], + strings[9] + }); + IFC4X2_IfcObjectiveEnum_type = new enumeration_type(strings[917], 649, { + strings[918], + strings[919], + strings[920], + strings[660], + strings[921], + strings[922], + strings[923], + strings[924], + strings[925], + strings[926], + strings[927], + strings[8], + strings[9] + }); + IFC4X2_IfcOccupantTypeEnum_type = new enumeration_type(strings[928], 654, { + strings[929], + strings[930], + strings[931], + strings[932], + strings[933], + strings[934], + strings[935], + strings[8], + strings[9] + }); + IFC4X2_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[936], 660, { + strings[937], + strings[938], + strings[8], + strings[9] + }); + IFC4X2_IfcOutletTypeEnum_type = new enumeration_type(strings[939], 670, { + strings[940], + strings[941], + strings[942], + strings[943], + strings[944], + strings[8], + strings[9] + }); + IFC4X2_IfcPHMeasure_type = new type_declaration(strings[945], 684, new simple_type(simple_type::real_type)); + IFC4X2_IfcParameterValue_type = new type_declaration(strings[946], 673, new simple_type(simple_type::real_type)); + IFC4X2_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[947], 677, { + strings[8], + strings[9] + }); + IFC4X2_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[948], 678, { + strings[949], + strings[950], + strings[951], + strings[8], + strings[9] + }); + IFC4X2_IfcPermitTypeEnum_type = new enumeration_type(strings[952], 681, { + strings[953], + strings[954], + strings[955], + strings[8], + strings[9] + }); + IFC4X2_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[956], 686, { + strings[957], + strings[958], + strings[9] + }); + IFC4X2_IfcPileConstructionEnum_type = new enumeration_type(strings[959], 690, { + strings[960], + strings[961], + strings[962], + strings[963], + strings[8], + strings[9] + }); + IFC4X2_IfcPileTypeEnum_type = new enumeration_type(strings[964], 692, { + strings[965], + strings[966], + strings[967], + strings[968], + strings[969], + strings[970], + strings[8], + strings[9] + }); + IFC4X2_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[971], 695, { + strings[214], + strings[224], + strings[225], + strings[226], + strings[227], + strings[561], + strings[228], + strings[8], + strings[9] + }); + IFC4X2_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[972], 698, { + strings[190], + strings[564], + strings[563], + strings[973], + strings[974], + strings[8], + strings[9] + }); + IFC4X2_IfcPlanarForceMeasure_type = new type_declaration(strings[975], 703, new simple_type(simple_type::real_type)); + IFC4X2_IfcPlaneAngleMeasure_type = new type_declaration(strings[976], 705, new simple_type(simple_type::real_type)); + IFC4X2_IfcPlateTypeEnum_type = new enumeration_type(strings[977], 709, { + strings[978], + strings[979], + strings[980], + strings[981], + strings[982], + strings[983], + strings[984], + strings[985], + strings[986], + strings[8], + strings[9] + }); + IFC4X2_IfcPositiveInteger_type = new type_declaration(strings[987], 720, new named_type(IFC4X2_IfcInteger_type)); + IFC4X2_IfcPositiveLengthMeasure_type = new type_declaration(strings[988], 721, new named_type(IFC4X2_IfcLengthMeasure_type)); + IFC4X2_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[989], 722, new named_type(IFC4X2_IfcPlaneAngleMeasure_type)); + IFC4X2_IfcPowerMeasure_type = new type_declaration(strings[990], 725, new simple_type(simple_type::real_type)); + IFC4X2_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[991], 732, { + strings[992], + strings[993], + strings[994] + }); + IFC4X2_IfcPresentableText_type = new type_declaration(strings[995], 733, new simple_type(simple_type::string_type)); + IFC4X2_IfcPressureMeasure_type = new type_declaration(strings[996], 740, new simple_type(simple_type::real_type)); + IFC4X2_IfcProcedureTypeEnum_type = new enumeration_type(strings[997], 743, { + strings[998], + strings[999], + strings[1000], + strings[1001], + strings[1002], + strings[1003], + strings[1004], + strings[8], + strings[9] + }); + IFC4X2_IfcProfileTypeEnum_type = new enumeration_type(strings[1005], 753, { + strings[1006], + strings[1007] + }); + IFC4X2_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[1008], 761, { + strings[1009], + strings[1010], + strings[1011], + strings[1012], + strings[1013], + strings[8], + strings[9] + }); + IFC4X2_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[1014], 756, { + strings[1015], + strings[1016] + }); + IFC4X2_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[1017], 758, { + strings[1018], + strings[1019], + strings[8], + strings[9] + }); + IFC4X2_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[1020], 776, { + strings[1021], + strings[1022], + strings[1023], + strings[1024], + strings[1025], + strings[1026], + strings[1027], + strings[9] + }); + IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[1028], 784, { + strings[1029], + strings[1030], + strings[1031], + strings[1032], + strings[8], + strings[9] + }); + IFC4X2_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[1033], 786, { + strings[1034], + strings[1035], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[8], + strings[9] + }); + IFC4X2_IfcPumpTypeEnum_type = new enumeration_type(strings[1041], 790, { + strings[1042], + strings[1043], + strings[1044], + strings[1045], + strings[1046], + strings[1047], + strings[1048], + strings[8], + strings[9] + }); + IFC4X2_IfcRadioActivityMeasure_type = new type_declaration(strings[1049], 798, new simple_type(simple_type::real_type)); + IFC4X2_IfcRailingTypeEnum_type = new enumeration_type(strings[1050], 801, { + strings[1051], + strings[1052], + strings[1053], + strings[8], + strings[9] + }); + IFC4X2_IfcRampFlightTypeEnum_type = new enumeration_type(strings[1054], 805, { + strings[1055], + strings[1056], + strings[8], + strings[9] + }); + IFC4X2_IfcRampTypeEnum_type = new enumeration_type(strings[1057], 807, { + strings[1058], + strings[1059], + strings[1060], + strings[1061], + strings[1062], + strings[1063], + strings[8], + strings[9] + }); + IFC4X2_IfcRatioMeasure_type = new type_declaration(strings[1064], 808, new simple_type(simple_type::real_type)); + IFC4X2_IfcReal_type = new type_declaration(strings[1065], 811, new simple_type(simple_type::real_type)); + IFC4X2_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1066], 817, { + strings[1067], + strings[1068], + strings[1069], + strings[1070], + strings[1071], + strings[1072], + strings[1073], + strings[1074] + }); + IFC4X2_IfcReferentTypeEnum_type = new enumeration_type(strings[1075], 820, { + strings[1076], + strings[1077], + strings[1078], + strings[8], + strings[9] + }); + IFC4X2_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1079], 821, { + strings[1080], + strings[1081], + strings[1082], + strings[1083], + strings[325], + strings[1084], + strings[1085], + strings[326], + strings[1086], + strings[9] + }); + IFC4X2_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1087], 826, { + strings[1088], + strings[1089], + strings[1090], + strings[884], + strings[1091], + strings[1092], + strings[1093], + strings[1094], + strings[8], + strings[9] + }); + IFC4X2_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1095], 827, { + strings[1096], + strings[1097] + }); + IFC4X2_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1098], 829, { + strings[1094], + strings[1092], + strings[1090], + strings[1088], + strings[1091], + strings[1093], + strings[1089], + strings[884], + strings[1099], + strings[8], + strings[9] + }); + IFC4X2_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1100], 834, { + strings[8], + strings[9] + }); + IFC4X2_IfcRoleEnum_type = new enumeration_type(strings[1101], 900, { + strings[1102], + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[1107], + strings[1108], + strings[1109], + strings[1110], + strings[1111], + strings[1112], + strings[1113], + strings[1114], + strings[1115], + strings[1116], + strings[1117], + strings[1118], + strings[934], + strings[1119], + strings[1120], + strings[1121], + strings[1122], + strings[8] + }); + IFC4X2_IfcRoofTypeEnum_type = new enumeration_type(strings[1123], 903, { + strings[1124], + strings[1125], + strings[1126], + strings[1127], + strings[1128], + strings[1129], + strings[1130], + strings[1131], + strings[1132], + strings[1133], + strings[1134], + strings[1135], + strings[1136], + strings[8], + strings[9] + }); + IFC4X2_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1137], 905, new simple_type(simple_type::real_type)); + IFC4X2_IfcRotationalMassMeasure_type = new type_declaration(strings[1138], 906, new simple_type(simple_type::real_type)); + IFC4X2_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1139], 907, new simple_type(simple_type::real_type)); + IFC4X2_IfcRotationalStiffnessSelect_type = new select_type(strings[1140], 908, { + IFC4X2_IfcBoolean_type, + IFC4X2_IfcRotationalStiffnessMeasure_type + }); + IFC4X2_IfcSIPrefix_type = new enumeration_type(strings[1141], 941, { + strings[1142], + strings[1143], + strings[1144], + strings[1145], + strings[1146], + strings[1147], + strings[1148], + strings[1149], + strings[1150], + strings[1151], + strings[1152], + strings[1153], + strings[1154], + strings[1155], + strings[1156], + strings[1157] + }); + IFC4X2_IfcSIUnitName_type = new enumeration_type(strings[1158], 944, { + strings[1159], + strings[1160], + strings[1161], + strings[1162], + strings[1163], + strings[1164], + strings[1165], + strings[1166], + strings[1167], + strings[1168], + strings[1169], + strings[1170], + strings[1171], + strings[1172], + strings[1173], + strings[1174], + strings[1175], + strings[1176], + strings[1177], + strings[1178], + strings[1179], + strings[1180], + strings[1181], + strings[1182], + strings[1183], + strings[1184], + strings[1185], + strings[1186], + strings[1187], + strings[1188] + }); + IFC4X2_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1189], 912, { + strings[1190], + strings[1191], + strings[1192], + strings[1193], + strings[691], + strings[1194], + strings[1195], + strings[1196], + strings[1197], + strings[1198], + strings[8], + strings[9] + }); + IFC4X2_IfcSectionModulusMeasure_type = new type_declaration(strings[1199], 919, new simple_type(simple_type::real_type)); + IFC4X2_IfcSectionTypeEnum_type = new enumeration_type(strings[1200], 922, { + strings[1201], + strings[1202] + }); + IFC4X2_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1203], 915, new simple_type(simple_type::real_type)); + IFC4X2_IfcSensorTypeEnum_type = new enumeration_type(strings[1204], 926, { + strings[1205], + strings[1206], + strings[1207], + strings[1208], + strings[1209], + strings[1210], + strings[1211], + strings[1212], + strings[1213], + strings[1214], + strings[1215], + strings[1216], + strings[1217], + strings[1218], + strings[1219], + strings[1220], + strings[1221], + strings[1222], + strings[1223], + strings[1224], + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[8], + strings[9] + }); + IFC4X2_IfcSequenceEnum_type = new enumeration_type(strings[1229], 927, { + strings[1230], + strings[1231], + strings[1232], + strings[1233], + strings[8], + strings[9] + }); + IFC4X2_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1234], 930, { + strings[1235], + strings[1236], + strings[1237], + strings[8], + strings[9] + }); + IFC4X2_IfcShearModulusMeasure_type = new type_declaration(strings[1238], 934, new simple_type(simple_type::real_type)); + IFC4X2_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1239], 939, { + strings[1240], + strings[1241], + strings[1242], + strings[1243], + strings[1244], + strings[1245], + strings[1246], + strings[1247], + strings[1248], + strings[1249], + strings[1250], + strings[1251] + }); + IFC4X2_IfcSlabTypeEnum_type = new enumeration_type(strings[1252], 950, { + strings[1253], + strings[1254], + strings[1255], + strings[1256], + strings[1257], + strings[315], + strings[1258], + strings[1259], + strings[8], + strings[9] + }); + IFC4X2_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1260], 954, { + strings[1261], + strings[1262], + strings[8], + strings[9] + }); + IFC4X2_IfcSolidAngleMeasure_type = new type_declaration(strings[1263], 955, new simple_type(simple_type::real_type)); + IFC4X2_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1264], 958, new simple_type(simple_type::real_type)); + IFC4X2_IfcSoundPowerMeasure_type = new type_declaration(strings[1265], 959, new simple_type(simple_type::real_type)); + IFC4X2_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1266], 960, new simple_type(simple_type::real_type)); + IFC4X2_IfcSoundPressureMeasure_type = new type_declaration(strings[1267], 961, new simple_type(simple_type::real_type)); + IFC4X2_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1268], 966, { + strings[1269], + strings[1270], + strings[8], + strings[9] + }); + IFC4X2_IfcSpaceTypeEnum_type = new enumeration_type(strings[1271], 968, { + strings[1272], + strings[1273], + strings[1274], + strings[774], + strings[660], + strings[8], + strings[9] + }); + IFC4X2_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1275], 975, { + strings[1276], + strings[1277], + strings[314], + strings[1278], + strings[499], + strings[1032], + strings[23], + strings[506], + strings[8], + strings[9] + }); + IFC4X2_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1279], 976, new simple_type(simple_type::real_type)); + IFC4X2_IfcSpecularExponent_type = new type_declaration(strings[1280], 977, new simple_type(simple_type::real_type)); + IFC4X2_IfcSpecularRoughness_type = new type_declaration(strings[1281], 979, new simple_type(simple_type::real_type)); + IFC4X2_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1282], 984, { + strings[1283], + strings[1284], + strings[1285], + strings[8], + strings[9] + }); + IFC4X2_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1286], 988, { + strings[1055], + strings[1287], + strings[1056], + strings[1288], + strings[1136], + strings[8], + strings[9] + }); + IFC4X2_IfcStairTypeEnum_type = new enumeration_type(strings[1289], 990, { + strings[1290], + strings[1291], + strings[1292], + strings[1293], + strings[1294], + strings[1295], + strings[1296], + strings[1297], + strings[1298], + strings[1299], + strings[1300], + strings[1301], + strings[1302], + strings[1303], + strings[8], + strings[9] + }); + IFC4X2_IfcStateEnum_type = new enumeration_type(strings[1304], 991, { + strings[1305], + strings[1306], + strings[1307], + strings[1308], + strings[1309] + }); + IFC4X2_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1310], 999, { + strings[1311], + strings[370], + strings[1312], + strings[1313], + strings[1314], + strings[1315], + strings[1316], + strings[8], + strings[9] + }); + IFC4X2_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1317], 1002, { + strings[1318], + strings[1319], + strings[466], + strings[1320], + strings[1321], + strings[8], + strings[9] + }); + IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1322], 1028, { + strings[1311], + strings[1323], + strings[1316], + strings[1324], + strings[8], + strings[9] + }); + IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1325], 1031, { + strings[1326], + strings[1327], + strings[1328], + strings[8], + strings[9] + }); + IFC4X2_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1329], 1040, { + strings[1330], + strings[955], + strings[8], + strings[9] + }); + IFC4X2_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1331], 1046, { + strings[1332], + strings[1333], + strings[1334], + strings[1335], + strings[8], + strings[9] + }); + IFC4X2_IfcSurfaceSide_type = new enumeration_type(strings[1336], 1051, { + strings[449], + strings[450], + strings[1337] + }); + IFC4X2_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1338], 1066, { + strings[1339], + strings[1340], + strings[1341], + strings[1342], + strings[1343], + strings[1344], + strings[1345], + strings[1346], + strings[1347], + strings[8], + strings[9] + }); + IFC4X2_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1348], 1070, { + strings[1349], + strings[1350], + strings[8], + strings[9] + }); + IFC4X2_IfcTankTypeEnum_type = new enumeration_type(strings[1351], 1076, { + strings[1352], + strings[1353], + strings[1354], + strings[1355], + strings[1356], + strings[1357], + strings[1358], + strings[8], + strings[9] + }); + IFC4X2_IfcTaskDurationEnum_type = new enumeration_type(strings[1359], 1078, { + strings[1360], + strings[1361], + strings[9] + }); + IFC4X2_IfcTaskTypeEnum_type = new enumeration_type(strings[1362], 1082, { + strings[1363], + strings[1276], + strings[1364], + strings[1365], + strings[481], + strings[1366], + strings[1367], + strings[1368], + strings[1369], + strings[1370], + strings[1371], + strings[1372], + strings[8], + strings[9] + }); + IFC4X2_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1373], 1084, new simple_type(simple_type::real_type)); + IFC4X2_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1374], 1085, new simple_type(simple_type::real_type)); + IFC4X2_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1375], 1089, { + strings[867], + strings[1376], + strings[1377], + strings[8], + strings[9] + }); + IFC4X2_IfcTendonConduitTypeEnum_type = new enumeration_type(strings[1378], 1092, { + strings[468], + strings[867], + strings[1379], + strings[1380], + strings[1381], + strings[8], + strings[9] + }); + IFC4X2_IfcTendonTypeEnum_type = new enumeration_type(strings[1382], 1094, { + strings[1383], + strings[1384], + strings[1385], + strings[1386], + strings[8], + strings[9] + }); + IFC4X2_IfcText_type = new type_declaration(strings[1387], 1097, new simple_type(simple_type::string_type)); + IFC4X2_IfcTextAlignment_type = new type_declaration(strings[1388], 1098, new simple_type(simple_type::string_type)); + IFC4X2_IfcTextDecoration_type = new type_declaration(strings[1389], 1099, new simple_type(simple_type::string_type)); + IFC4X2_IfcTextFontName_type = new type_declaration(strings[1390], 1100, new simple_type(simple_type::string_type)); + IFC4X2_IfcTextPath_type = new enumeration_type(strings[1391], 1104, { + strings[528], + strings[530], + strings[1392], + strings[1393] + }); + IFC4X2_IfcTextTransformation_type = new type_declaration(strings[1394], 1109, new simple_type(simple_type::string_type)); + IFC4X2_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1395], 1115, new simple_type(simple_type::real_type)); + IFC4X2_IfcThermalConductivityMeasure_type = new type_declaration(strings[1396], 1116, new simple_type(simple_type::real_type)); + IFC4X2_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1397], 1117, new simple_type(simple_type::real_type)); + IFC4X2_IfcThermalResistanceMeasure_type = new type_declaration(strings[1398], 1118, new simple_type(simple_type::real_type)); + IFC4X2_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1399], 1119, new simple_type(simple_type::real_type)); + IFC4X2_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1400], 1120, new simple_type(simple_type::real_type)); + IFC4X2_IfcTime_type = new type_declaration(strings[1401], 1121, new simple_type(simple_type::string_type)); + IFC4X2_IfcTimeMeasure_type = new type_declaration(strings[1402], 1122, new simple_type(simple_type::real_type)); + IFC4X2_IfcTimeOrRatioSelect_type = new select_type(strings[1403], 1123, { + IFC4X2_IfcDuration_type, + IFC4X2_IfcRatioMeasure_type + }); + IFC4X2_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1404], 1126, { + strings[1405], + strings[1316], + strings[1406], + strings[1407], + strings[1408], + strings[1409], + strings[9] + }); + IFC4X2_IfcTimeStamp_type = new type_declaration(strings[1410], 1128, new simple_type(simple_type::integer_type)); + IFC4X2_IfcTorqueMeasure_type = new type_declaration(strings[1411], 1132, new simple_type(simple_type::real_type)); + IFC4X2_IfcTransformerTypeEnum_type = new enumeration_type(strings[1412], 1135, { + strings[32], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[8], + strings[9] + }); + IFC4X2_IfcTransitionCode_type = new enumeration_type(strings[1417], 1136, { + strings[1418], + strings[1405], + strings[1419], + strings[1420] + }); + IFC4X2_IfcTransitionCurveType_type = new enumeration_type(strings[1421], 1138, { + strings[1422], + strings[1423], + strings[1424], + strings[1425], + strings[1426], + strings[1427] + }); + IFC4X2_IfcTranslationalStiffnessSelect_type = new select_type(strings[1428], 1139, { + IFC4X2_IfcBoolean_type, + IFC4X2_IfcLinearStiffnessMeasure_type + }); + IFC4X2_IfcTransportElementTypeEnum_type = new enumeration_type(strings[1429], 1142, { + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434], + strings[8], + strings[9] + }); + IFC4X2_IfcTrimmingPreference_type = new enumeration_type(strings[1435], 1147, { + strings[1436], + strings[924], + strings[116] + }); + IFC4X2_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1437], 1152, { + strings[1438], + strings[8], + strings[9] + }); + IFC4X2_IfcURIReference_type = new type_declaration(strings[1439], 1166, new simple_type(simple_type::string_type)); + IFC4X2_IfcUnitEnum_type = new enumeration_type(strings[1440], 1165, { + strings[1441], + strings[1442], + strings[1443], + strings[1444], + strings[1445], + strings[1446], + strings[1447], + strings[1448], + strings[1449], + strings[1450], + strings[1451], + strings[1452], + strings[1453], + strings[1454], + strings[1455], + strings[1456], + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[1466], + strings[1467], + strings[1468], + strings[1469], + strings[8] + }); + IFC4X2_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1470], 1160, { + strings[1471], + strings[1472], + strings[1473], + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[8], + strings[9] + }); + IFC4X2_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1479], 1163, { + strings[1480], + strings[1481], + strings[1482], + strings[1483], + strings[1484], + strings[8], + strings[9] + }); + IFC4X2_IfcValveTypeEnum_type = new enumeration_type(strings[1485], 1171, { + strings[1486], + strings[1487], + strings[1488], + strings[1489], + strings[1490], + strings[1491], + strings[1492], + strings[1493], + strings[1494], + strings[1495], + strings[1496], + strings[1497], + strings[1498], + strings[1499], + strings[1500], + strings[1501], + strings[1502], + strings[1503], + strings[1504], + strings[1505], + strings[1506], + strings[8], + strings[9] + }); + IFC4X2_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1507], 1172, new simple_type(simple_type::real_type)); + IFC4X2_IfcVibrationDamperTypeEnum_type = new enumeration_type(strings[1508], 1180, { + strings[1509], + strings[1510], + strings[1511], + strings[969], + strings[1512], + strings[1513], + strings[8], + strings[9] + }); + IFC4X2_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1514], 1183, { + strings[1515], + strings[1516], + strings[1517], + strings[8], + strings[9] + }); + IFC4X2_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1518], 1187, { + strings[1519], + strings[1520], + strings[1521], + strings[1522], + strings[1523], + strings[1092], + strings[8], + strings[9] + }); + IFC4X2_IfcVolumeMeasure_type = new type_declaration(strings[1524], 1188, new simple_type(simple_type::real_type)); + IFC4X2_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1525], 1189, new simple_type(simple_type::real_type)); + IFC4X2_IfcWallTypeEnum_type = new enumeration_type(strings[1526], 1194, { + strings[1527], + strings[1528], + strings[1529], + strings[1530], + strings[1089], + strings[1531], + strings[1532], + strings[1312], + strings[1533], + strings[1534], + strings[8], + strings[9] + }); + IFC4X2_IfcWarpingConstantMeasure_type = new type_declaration(strings[1535], 1195, new simple_type(simple_type::real_type)); + IFC4X2_IfcWarpingMomentMeasure_type = new type_declaration(strings[1536], 1196, new simple_type(simple_type::real_type)); + IFC4X2_IfcWarpingStiffnessSelect_type = new select_type(strings[1537], 1197, { + IFC4X2_IfcBoolean_type, + IFC4X2_IfcWarpingMomentMeasure_type + }); + IFC4X2_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1538], 1200, { + strings[1539], + strings[1540], + strings[1541], + strings[1542], + strings[1543], + strings[1544], + strings[1545], + strings[8], + strings[9] + }); + IFC4X2_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1546], 1203, { + strings[1547], + strings[1548], + strings[1549], + strings[1550], + strings[1551], + strings[1552], + strings[1553], + strings[1554], + strings[1555], + strings[1556], + strings[1557], + strings[1558], + strings[1559], + strings[9] + }); + IFC4X2_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1560], 1204, { + strings[528], + strings[529], + strings[530], + strings[1561], + strings[1562], + strings[9] + }); + IFC4X2_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1563], 1208, { + strings[532], + strings[533], + strings[534], + strings[327], + strings[535], + strings[326], + strings[1564], + strings[9] + }); + IFC4X2_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1565], 1209, { + strings[1566], + strings[1567], + strings[1568], + strings[1569], + strings[1570], + strings[1571], + strings[1572], + strings[1573], + strings[1574], + strings[8], + strings[9] + }); + IFC4X2_IfcWindowTypeEnum_type = new enumeration_type(strings[1575], 1211, { + strings[1576], + strings[1577], + strings[1578], + strings[8], + strings[9] + }); + IFC4X2_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1579], 1212, { + strings[1566], + strings[1567], + strings[1568], + strings[1569], + strings[1570], + strings[1571], + strings[1572], + strings[1573], + strings[1574], + strings[8], + strings[9] + }); + IFC4X2_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1580], 1214, { + strings[1581], + strings[1582], + strings[1583], + strings[8], + strings[9] + }); + IFC4X2_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1584], 1217, { + strings[1585], + strings[1586], + strings[1587], + strings[8], + strings[9] + }); + IFC4X2_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1588], 1219, { + strings[1585], + strings[1586], + strings[1587], + strings[8], + strings[9] + }); + IFC4X2_IfcActorRole_type = new entity(strings[1589], false, 7, 0); + IFC4X2_IfcAddress_type = new entity(strings[1590], true, 12, 0); + IFC4X2_IfcApplication_type = new entity(strings[1591], false, 46, 0); + IFC4X2_IfcAppliedValue_type = new entity(strings[1592], false, 47, 0); + IFC4X2_IfcApproval_type = new entity(strings[1593], false, 49, 0); + IFC4X2_IfcBoundaryCondition_type = new entity(strings[1594], true, 89, 0); + IFC4X2_IfcBoundaryEdgeCondition_type = new entity(strings[1595], false, 91, IFC4X2_IfcBoundaryCondition_type); + IFC4X2_IfcBoundaryFaceCondition_type = new entity(strings[1596], false, 92, IFC4X2_IfcBoundaryCondition_type); + IFC4X2_IfcBoundaryNodeCondition_type = new entity(strings[1597], false, 93, IFC4X2_IfcBoundaryCondition_type); + IFC4X2_IfcBoundaryNodeConditionWarping_type = new entity(strings[1598], false, 94, IFC4X2_IfcBoundaryNodeCondition_type); + IFC4X2_IfcConnectionGeometry_type = new entity(strings[1599], true, 202, 0); + IFC4X2_IfcConnectionPointGeometry_type = new entity(strings[1600], false, 204, IFC4X2_IfcConnectionGeometry_type); + IFC4X2_IfcConnectionSurfaceGeometry_type = new entity(strings[1601], false, 205, IFC4X2_IfcConnectionGeometry_type); + IFC4X2_IfcConnectionVolumeGeometry_type = new entity(strings[1602], false, 207, IFC4X2_IfcConnectionGeometry_type); + IFC4X2_IfcConstraint_type = new entity(strings[1603], true, 208, 0); + IFC4X2_IfcCoordinateOperation_type = new entity(strings[1604], true, 236, 0); + IFC4X2_IfcCoordinateReferenceSystem_type = new entity(strings[1605], true, 237, 0); + IFC4X2_IfcCostValue_type = new entity(strings[1606], false, 243, IFC4X2_IfcAppliedValue_type); + IFC4X2_IfcDerivedUnit_type = new entity(strings[1607], false, 287, 0); + IFC4X2_IfcDerivedUnitElement_type = new entity(strings[1608], false, 288, 0); + IFC4X2_IfcDimensionalExponents_type = new entity(strings[1609], false, 291, 0); + IFC4X2_IfcExternalInformation_type = new entity(strings[1610], true, 402, 0); + IFC4X2_IfcExternalReference_type = new entity(strings[1611], true, 406, 0); + IFC4X2_IfcExternallyDefinedHatchStyle_type = new entity(strings[1612], false, 403, IFC4X2_IfcExternalReference_type); + IFC4X2_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1613], false, 404, IFC4X2_IfcExternalReference_type); + IFC4X2_IfcExternallyDefinedTextFont_type = new entity(strings[1614], false, 405, IFC4X2_IfcExternalReference_type); + IFC4X2_IfcGridAxis_type = new entity(strings[1615], false, 490, 0); + IFC4X2_IfcIrregularTimeSeriesValue_type = new entity(strings[1616], false, 526, 0); + IFC4X2_IfcLibraryInformation_type = new entity(strings[1617], false, 546, IFC4X2_IfcExternalInformation_type); + IFC4X2_IfcLibraryReference_type = new entity(strings[1618], false, 547, IFC4X2_IfcExternalReference_type); + IFC4X2_IfcLightDistributionData_type = new entity(strings[1619], false, 550, 0); + IFC4X2_IfcLightIntensityDistribution_type = new entity(strings[1620], false, 556, 0); + IFC4X2_IfcMapConversion_type = new entity(strings[1621], false, 584, IFC4X2_IfcCoordinateOperation_type); + IFC4X2_IfcMaterialClassificationRelationship_type = new entity(strings[1622], false, 591, 0); + IFC4X2_IfcMaterialDefinition_type = new entity(strings[1623], true, 594, 0); + IFC4X2_IfcMaterialLayer_type = new entity(strings[1624], false, 596, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialLayerSet_type = new entity(strings[1625], false, 597, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialLayerWithOffsets_type = new entity(strings[1626], false, 599, IFC4X2_IfcMaterialLayer_type); + IFC4X2_IfcMaterialList_type = new entity(strings[1627], false, 600, 0); + IFC4X2_IfcMaterialProfile_type = new entity(strings[1628], false, 601, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialProfileSet_type = new entity(strings[1629], false, 602, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialProfileWithOffsets_type = new entity(strings[1630], false, 605, IFC4X2_IfcMaterialProfile_type); + IFC4X2_IfcMaterialUsageDefinition_type = new entity(strings[1631], true, 609, 0); + IFC4X2_IfcMeasureWithUnit_type = new entity(strings[1632], false, 611, 0); + IFC4X2_IfcMetric_type = new entity(strings[1633], false, 622, IFC4X2_IfcConstraint_type); + IFC4X2_IfcMonetaryUnit_type = new entity(strings[1634], false, 636, 0); + IFC4X2_IfcNamedUnit_type = new entity(strings[1635], true, 641, 0); + IFC4X2_IfcObjectPlacement_type = new entity(strings[1636], true, 650, 0); + IFC4X2_IfcObjective_type = new entity(strings[1637], false, 648, IFC4X2_IfcConstraint_type); + IFC4X2_IfcOrganization_type = new entity(strings[1638], false, 663, 0); + IFC4X2_IfcOwnerHistory_type = new entity(strings[1639], false, 671, 0); + IFC4X2_IfcPerson_type = new entity(strings[1640], false, 682, 0); + IFC4X2_IfcPersonAndOrganization_type = new entity(strings[1641], false, 683, 0); + IFC4X2_IfcPhysicalQuantity_type = new entity(strings[1642], true, 687, 0); + IFC4X2_IfcPhysicalSimpleQuantity_type = new entity(strings[1643], true, 688, IFC4X2_IfcPhysicalQuantity_type); + IFC4X2_IfcPostalAddress_type = new entity(strings[1644], false, 724, IFC4X2_IfcAddress_type); + IFC4X2_IfcPresentationItem_type = new entity(strings[1645], true, 734, 0); + IFC4X2_IfcPresentationLayerAssignment_type = new entity(strings[1646], false, 735, 0); + IFC4X2_IfcPresentationLayerWithStyle_type = new entity(strings[1647], false, 736, IFC4X2_IfcPresentationLayerAssignment_type); + IFC4X2_IfcPresentationStyle_type = new entity(strings[1648], true, 737, 0); + IFC4X2_IfcPresentationStyleAssignment_type = new entity(strings[1649], false, 738, 0); + IFC4X2_IfcProductRepresentation_type = new entity(strings[1650], true, 748, 0); + IFC4X2_IfcProfileDef_type = new entity(strings[1651], false, 751, 0); + IFC4X2_IfcProjectedCRS_type = new entity(strings[1652], false, 755, IFC4X2_IfcCoordinateReferenceSystem_type); + IFC4X2_IfcPropertyAbstraction_type = new entity(strings[1653], true, 763, 0); + IFC4X2_IfcPropertyEnumeration_type = new entity(strings[1654], false, 768, IFC4X2_IfcPropertyAbstraction_type); + IFC4X2_IfcQuantityArea_type = new entity(strings[1655], false, 791, IFC4X2_IfcPhysicalSimpleQuantity_type); + IFC4X2_IfcQuantityCount_type = new entity(strings[1656], false, 792, IFC4X2_IfcPhysicalSimpleQuantity_type); + IFC4X2_IfcQuantityLength_type = new entity(strings[1657], false, 793, IFC4X2_IfcPhysicalSimpleQuantity_type); + IFC4X2_IfcQuantityTime_type = new entity(strings[1658], false, 795, IFC4X2_IfcPhysicalSimpleQuantity_type); + IFC4X2_IfcQuantityVolume_type = new entity(strings[1659], false, 796, IFC4X2_IfcPhysicalSimpleQuantity_type); + IFC4X2_IfcQuantityWeight_type = new entity(strings[1660], false, 797, IFC4X2_IfcPhysicalSimpleQuantity_type); + IFC4X2_IfcRecurrencePattern_type = new entity(strings[1661], false, 816, 0); + IFC4X2_IfcReference_type = new entity(strings[1662], false, 818, 0); + IFC4X2_IfcRepresentation_type = new entity(strings[1663], true, 885, 0); + IFC4X2_IfcRepresentationContext_type = new entity(strings[1664], true, 886, 0); + IFC4X2_IfcRepresentationItem_type = new entity(strings[1665], true, 887, 0); + IFC4X2_IfcRepresentationMap_type = new entity(strings[1666], false, 888, 0); + IFC4X2_IfcResourceLevelRelationship_type = new entity(strings[1667], true, 892, 0); + IFC4X2_IfcRoot_type = new entity(strings[1668], true, 904, 0); + IFC4X2_IfcSIUnit_type = new entity(strings[1669], false, 943, IFC4X2_IfcNamedUnit_type); + IFC4X2_IfcSchedulingTime_type = new entity(strings[1670], true, 913, 0); + IFC4X2_IfcShapeAspect_type = new entity(strings[1671], false, 931, 0); + IFC4X2_IfcShapeModel_type = new entity(strings[1672], true, 932, IFC4X2_IfcRepresentation_type); + IFC4X2_IfcShapeRepresentation_type = new entity(strings[1673], false, 933, IFC4X2_IfcShapeModel_type); + IFC4X2_IfcStructuralConnectionCondition_type = new entity(strings[1674], true, 997, 0); + IFC4X2_IfcStructuralLoad_type = new entity(strings[1675], true, 1007, 0); + IFC4X2_IfcStructuralLoadConfiguration_type = new entity(strings[1676], false, 1009, IFC4X2_IfcStructuralLoad_type); + IFC4X2_IfcStructuralLoadOrResult_type = new entity(strings[1677], true, 1012, IFC4X2_IfcStructuralLoad_type); + IFC4X2_IfcStructuralLoadStatic_type = new entity(strings[1678], true, 1018, IFC4X2_IfcStructuralLoadOrResult_type); + IFC4X2_IfcStructuralLoadTemperature_type = new entity(strings[1679], false, 1019, IFC4X2_IfcStructuralLoadStatic_type); + IFC4X2_IfcStyleModel_type = new entity(strings[1680], true, 1037, IFC4X2_IfcRepresentation_type); + IFC4X2_IfcStyledItem_type = new entity(strings[1681], false, 1035, IFC4X2_IfcRepresentationItem_type); + IFC4X2_IfcStyledRepresentation_type = new entity(strings[1682], false, 1036, IFC4X2_IfcStyleModel_type); + IFC4X2_IfcSurfaceReinforcementArea_type = new entity(strings[1683], false, 1050, IFC4X2_IfcStructuralLoadOrResult_type); + IFC4X2_IfcSurfaceStyle_type = new entity(strings[1684], false, 1052, IFC4X2_IfcPresentationStyle_type); + IFC4X2_IfcSurfaceStyleLighting_type = new entity(strings[1685], false, 1054, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcSurfaceStyleRefraction_type = new entity(strings[1686], false, 1055, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcSurfaceStyleShading_type = new entity(strings[1687], false, 1057, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcSurfaceStyleWithTextures_type = new entity(strings[1688], false, 1058, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcSurfaceTexture_type = new entity(strings[1689], true, 1059, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcTable_type = new entity(strings[1690], false, 1071, 0); + IFC4X2_IfcTableColumn_type = new entity(strings[1691], false, 1072, 0); + IFC4X2_IfcTableRow_type = new entity(strings[1692], false, 1073, 0); + IFC4X2_IfcTaskTime_type = new entity(strings[1693], false, 1079, IFC4X2_IfcSchedulingTime_type); + IFC4X2_IfcTaskTimeRecurring_type = new entity(strings[1694], false, 1080, IFC4X2_IfcTaskTime_type); + IFC4X2_IfcTelecomAddress_type = new entity(strings[1695], false, 1083, IFC4X2_IfcAddress_type); + IFC4X2_IfcTextStyle_type = new entity(strings[1696], false, 1105, IFC4X2_IfcPresentationStyle_type); + IFC4X2_IfcTextStyleForDefinedFont_type = new entity(strings[1697], false, 1107, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcTextStyleTextModel_type = new entity(strings[1698], false, 1108, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcTextureCoordinate_type = new entity(strings[1699], true, 1110, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcTextureCoordinateGenerator_type = new entity(strings[1700], false, 1111, IFC4X2_IfcTextureCoordinate_type); + IFC4X2_IfcTextureMap_type = new entity(strings[1701], false, 1112, IFC4X2_IfcTextureCoordinate_type); + IFC4X2_IfcTextureVertex_type = new entity(strings[1702], false, 1113, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcTextureVertexList_type = new entity(strings[1703], false, 1114, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcTimePeriod_type = new entity(strings[1704], false, 1124, 0); + IFC4X2_IfcTimeSeries_type = new entity(strings[1705], true, 1125, 0); + IFC4X2_IfcTimeSeriesValue_type = new entity(strings[1706], false, 1127, 0); + IFC4X2_IfcTopologicalRepresentationItem_type = new entity(strings[1707], true, 1129, IFC4X2_IfcRepresentationItem_type); + IFC4X2_IfcTopologyRepresentation_type = new entity(strings[1708], false, 1130, IFC4X2_IfcShapeModel_type); + IFC4X2_IfcUnitAssignment_type = new entity(strings[1709], false, 1164, 0); + IFC4X2_IfcVertex_type = new entity(strings[1710], false, 1175, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcVertexPoint_type = new entity(strings[1711], false, 1177, IFC4X2_IfcVertex_type); + IFC4X2_IfcVirtualGridIntersection_type = new entity(strings[1712], false, 1185, 0); + IFC4X2_IfcWorkTime_type = new entity(strings[1713], false, 1220, IFC4X2_IfcSchedulingTime_type); + IFC4X2_IfcActorSelect_type = new select_type(strings[1714], 8, { + IFC4X2_IfcOrganization_type, + IFC4X2_IfcPerson_type, + IFC4X2_IfcPersonAndOrganization_type + }); + IFC4X2_IfcArcIndex_type = new type_declaration(strings[1715], 54, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcPositiveInteger_type))); + IFC4X2_IfcBendingParameterSelect_type = new select_type(strings[1716], 77, { + IFC4X2_IfcLengthMeasure_type, + IFC4X2_IfcPlaneAngleMeasure_type + }); + IFC4X2_IfcBoxAlignment_type = new type_declaration(strings[1717], 98, new named_type(IFC4X2_IfcLabel_type)); + IFC4X2_IfcDerivedMeasureValue_type = new select_type(strings[1718], 285, { + IFC4X2_IfcAbsorbedDoseMeasure_type, + IFC4X2_IfcAccelerationMeasure_type, + IFC4X2_IfcAngularVelocityMeasure_type, + IFC4X2_IfcAreaDensityMeasure_type, + IFC4X2_IfcCompoundPlaneAngleMeasure_type, + IFC4X2_IfcCurvatureMeasure_type, + IFC4X2_IfcDoseEquivalentMeasure_type, + IFC4X2_IfcDynamicViscosityMeasure_type, + IFC4X2_IfcElectricCapacitanceMeasure_type, + IFC4X2_IfcElectricChargeMeasure_type, + IFC4X2_IfcElectricConductanceMeasure_type, + IFC4X2_IfcElectricResistanceMeasure_type, + IFC4X2_IfcElectricVoltageMeasure_type, + IFC4X2_IfcEnergyMeasure_type, + IFC4X2_IfcForceMeasure_type, + IFC4X2_IfcFrequencyMeasure_type, + IFC4X2_IfcHeatFluxDensityMeasure_type, + IFC4X2_IfcHeatingValueMeasure_type, + IFC4X2_IfcIlluminanceMeasure_type, + IFC4X2_IfcInductanceMeasure_type, + IFC4X2_IfcIntegerCountRateMeasure_type, + IFC4X2_IfcIonConcentrationMeasure_type, + IFC4X2_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X2_IfcKinematicViscosityMeasure_type, + IFC4X2_IfcLinearForceMeasure_type, + IFC4X2_IfcLinearMomentMeasure_type, + IFC4X2_IfcLinearStiffnessMeasure_type, + IFC4X2_IfcLinearVelocityMeasure_type, + IFC4X2_IfcLuminousFluxMeasure_type, + IFC4X2_IfcLuminousIntensityDistributionMeasure_type, + IFC4X2_IfcMagneticFluxDensityMeasure_type, + IFC4X2_IfcMagneticFluxMeasure_type, + IFC4X2_IfcMassDensityMeasure_type, + IFC4X2_IfcMassFlowRateMeasure_type, + IFC4X2_IfcMassPerLengthMeasure_type, + IFC4X2_IfcModulusOfElasticityMeasure_type, + IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X2_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X2_IfcMoistureDiffusivityMeasure_type, + IFC4X2_IfcMolecularWeightMeasure_type, + IFC4X2_IfcMomentOfInertiaMeasure_type, + IFC4X2_IfcMonetaryMeasure_type, + IFC4X2_IfcPHMeasure_type, + IFC4X2_IfcPlanarForceMeasure_type, + IFC4X2_IfcPowerMeasure_type, + IFC4X2_IfcPressureMeasure_type, + IFC4X2_IfcRadioActivityMeasure_type, + IFC4X2_IfcRotationalFrequencyMeasure_type, + IFC4X2_IfcRotationalMassMeasure_type, + IFC4X2_IfcRotationalStiffnessMeasure_type, + IFC4X2_IfcSectionModulusMeasure_type, + IFC4X2_IfcSectionalAreaIntegralMeasure_type, + IFC4X2_IfcShearModulusMeasure_type, + IFC4X2_IfcSoundPowerLevelMeasure_type, + IFC4X2_IfcSoundPowerMeasure_type, + IFC4X2_IfcSoundPressureLevelMeasure_type, + IFC4X2_IfcSoundPressureMeasure_type, + IFC4X2_IfcSpecificHeatCapacityMeasure_type, + IFC4X2_IfcTemperatureGradientMeasure_type, + IFC4X2_IfcTemperatureRateOfChangeMeasure_type, + IFC4X2_IfcThermalAdmittanceMeasure_type, + IFC4X2_IfcThermalConductivityMeasure_type, + IFC4X2_IfcThermalExpansionCoefficientMeasure_type, + IFC4X2_IfcThermalResistanceMeasure_type, + IFC4X2_IfcThermalTransmittanceMeasure_type, + IFC4X2_IfcTorqueMeasure_type, + IFC4X2_IfcVaporPermeabilityMeasure_type, + IFC4X2_IfcVolumetricFlowRateMeasure_type, + IFC4X2_IfcWarpingConstantMeasure_type, + IFC4X2_IfcWarpingMomentMeasure_type + }); + IFC4X2_IfcLayeredItem_type = new select_type(strings[1719], 543, { + IFC4X2_IfcRepresentation_type, + IFC4X2_IfcRepresentationItem_type + }); + IFC4X2_IfcLibrarySelect_type = new select_type(strings[1720], 548, { + IFC4X2_IfcLibraryInformation_type, + IFC4X2_IfcLibraryReference_type + }); + IFC4X2_IfcLightDistributionDataSourceSelect_type = new select_type(strings[1721], 551, { + IFC4X2_IfcExternalReference_type, + IFC4X2_IfcLightIntensityDistribution_type + }); + IFC4X2_IfcLineIndex_type = new type_declaration(strings[1722], 570, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcPositiveInteger_type))); + IFC4X2_IfcMaterialSelect_type = new select_type(strings[1723], 608, { + IFC4X2_IfcMaterialDefinition_type, + IFC4X2_IfcMaterialList_type, + IFC4X2_IfcMaterialUsageDefinition_type + }); + IFC4X2_IfcNormalisedRatioMeasure_type = new type_declaration(strings[1724], 643, new named_type(IFC4X2_IfcRatioMeasure_type)); + IFC4X2_IfcObjectReferenceSelect_type = new select_type(strings[1725], 651, { + IFC4X2_IfcAddress_type, + IFC4X2_IfcAppliedValue_type, + IFC4X2_IfcExternalReference_type, + IFC4X2_IfcMaterialDefinition_type, + IFC4X2_IfcOrganization_type, + IFC4X2_IfcPerson_type, + IFC4X2_IfcPersonAndOrganization_type, + IFC4X2_IfcTable_type, + IFC4X2_IfcTimeSeries_type + }); + IFC4X2_IfcPositiveRatioMeasure_type = new type_declaration(strings[1726], 723, new named_type(IFC4X2_IfcRatioMeasure_type)); + IFC4X2_IfcSegmentIndexSelect_type = new select_type(strings[1727], 923, { + IFC4X2_IfcArcIndex_type, + IFC4X2_IfcLineIndex_type + }); + IFC4X2_IfcSimpleValue_type = new select_type(strings[1728], 940, { + IFC4X2_IfcBinary_type, + IFC4X2_IfcBoolean_type, + IFC4X2_IfcDate_type, + IFC4X2_IfcDateTime_type, + IFC4X2_IfcDuration_type, + IFC4X2_IfcIdentifier_type, + IFC4X2_IfcInteger_type, + IFC4X2_IfcLabel_type, + IFC4X2_IfcLogical_type, + IFC4X2_IfcPositiveInteger_type, + IFC4X2_IfcReal_type, + IFC4X2_IfcText_type, + IFC4X2_IfcTime_type, + IFC4X2_IfcTimeStamp_type + }); + IFC4X2_IfcSizeSelect_type = new select_type(strings[1729], 945, { + IFC4X2_IfcDescriptiveMeasure_type, + IFC4X2_IfcLengthMeasure_type, + IFC4X2_IfcNormalisedRatioMeasure_type, + IFC4X2_IfcPositiveLengthMeasure_type, + IFC4X2_IfcPositiveRatioMeasure_type, + IFC4X2_IfcRatioMeasure_type + }); + IFC4X2_IfcSpecularHighlightSelect_type = new select_type(strings[1730], 978, { + IFC4X2_IfcSpecularExponent_type, + IFC4X2_IfcSpecularRoughness_type + }); + IFC4X2_IfcStyleAssignmentSelect_type = new select_type(strings[1731], 1034, { + IFC4X2_IfcPresentationStyle_type, + IFC4X2_IfcPresentationStyleAssignment_type + }); + IFC4X2_IfcSurfaceStyleElementSelect_type = new select_type(strings[1732], 1053, { + IFC4X2_IfcExternallyDefinedSurfaceStyle_type, + IFC4X2_IfcSurfaceStyleLighting_type, + IFC4X2_IfcSurfaceStyleRefraction_type, + IFC4X2_IfcSurfaceStyleShading_type, + IFC4X2_IfcSurfaceStyleWithTextures_type + }); + IFC4X2_IfcUnit_type = new select_type(strings[1733], 1157, { + IFC4X2_IfcDerivedUnit_type, + IFC4X2_IfcMonetaryUnit_type, + IFC4X2_IfcNamedUnit_type + }); + IFC4X2_IfcApprovalRelationship_type = new entity(strings[1734], false, 50, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcArbitraryClosedProfileDef_type = new entity(strings[1735], false, 51, IFC4X2_IfcProfileDef_type); + IFC4X2_IfcArbitraryOpenProfileDef_type = new entity(strings[1736], false, 52, IFC4X2_IfcProfileDef_type); + IFC4X2_IfcArbitraryProfileDefWithVoids_type = new entity(strings[1737], false, 53, IFC4X2_IfcArbitraryClosedProfileDef_type); + IFC4X2_IfcBlobTexture_type = new entity(strings[1738], false, 79, IFC4X2_IfcSurfaceTexture_type); + IFC4X2_IfcCenterLineProfileDef_type = new entity(strings[1739], false, 150, IFC4X2_IfcArbitraryOpenProfileDef_type); + IFC4X2_IfcClassification_type = new entity(strings[1740], false, 164, IFC4X2_IfcExternalInformation_type); + IFC4X2_IfcClassificationReference_type = new entity(strings[1741], false, 165, IFC4X2_IfcExternalReference_type); + IFC4X2_IfcColourRgbList_type = new entity(strings[1742], false, 175, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcColourSpecification_type = new entity(strings[1743], true, 176, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcCompositeProfileDef_type = new entity(strings[1744], false, 191, IFC4X2_IfcProfileDef_type); + IFC4X2_IfcConnectedFaceSet_type = new entity(strings[1745], false, 200, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcConnectionCurveGeometry_type = new entity(strings[1746], false, 201, IFC4X2_IfcConnectionGeometry_type); + IFC4X2_IfcConnectionPointEccentricity_type = new entity(strings[1747], false, 203, IFC4X2_IfcConnectionPointGeometry_type); + IFC4X2_IfcContextDependentUnit_type = new entity(strings[1748], false, 223, IFC4X2_IfcNamedUnit_type); + IFC4X2_IfcConversionBasedUnit_type = new entity(strings[1749], false, 228, IFC4X2_IfcNamedUnit_type); + IFC4X2_IfcConversionBasedUnitWithOffset_type = new entity(strings[1750], false, 229, IFC4X2_IfcConversionBasedUnit_type); + IFC4X2_IfcCurrencyRelationship_type = new entity(strings[1751], false, 255, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcCurveStyle_type = new entity(strings[1752], false, 268, IFC4X2_IfcPresentationStyle_type); + IFC4X2_IfcCurveStyleFont_type = new entity(strings[1753], false, 269, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcCurveStyleFontAndScaling_type = new entity(strings[1754], false, 270, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcCurveStyleFontPattern_type = new entity(strings[1755], false, 271, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcDerivedProfileDef_type = new entity(strings[1756], false, 286, IFC4X2_IfcProfileDef_type); + IFC4X2_IfcDocumentInformation_type = new entity(strings[1757], false, 314, IFC4X2_IfcExternalInformation_type); + IFC4X2_IfcDocumentInformationRelationship_type = new entity(strings[1758], false, 315, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcDocumentReference_type = new entity(strings[1759], false, 316, IFC4X2_IfcExternalReference_type); + IFC4X2_IfcEdge_type = new entity(strings[1760], false, 345, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcEdgeCurve_type = new entity(strings[1761], false, 346, IFC4X2_IfcEdge_type); + IFC4X2_IfcEventTime_type = new entity(strings[1762], false, 397, IFC4X2_IfcSchedulingTime_type); + IFC4X2_IfcExtendedProperties_type = new entity(strings[1763], true, 401, IFC4X2_IfcPropertyAbstraction_type); + IFC4X2_IfcExternalReferenceRelationship_type = new entity(strings[1764], false, 407, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcFace_type = new entity(strings[1765], false, 413, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcFaceBound_type = new entity(strings[1766], false, 415, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcFaceOuterBound_type = new entity(strings[1767], false, 416, IFC4X2_IfcFaceBound_type); + IFC4X2_IfcFaceSurface_type = new entity(strings[1768], false, 417, IFC4X2_IfcFace_type); + IFC4X2_IfcFailureConnectionCondition_type = new entity(strings[1769], false, 422, IFC4X2_IfcStructuralConnectionCondition_type); + IFC4X2_IfcFillAreaStyle_type = new entity(strings[1770], false, 432, IFC4X2_IfcPresentationStyle_type); + IFC4X2_IfcGeometricRepresentationContext_type = new entity(strings[1771], false, 482, IFC4X2_IfcRepresentationContext_type); + IFC4X2_IfcGeometricRepresentationItem_type = new entity(strings[1772], true, 483, IFC4X2_IfcRepresentationItem_type); + IFC4X2_IfcGeometricRepresentationSubContext_type = new entity(strings[1773], false, 484, IFC4X2_IfcGeometricRepresentationContext_type); + IFC4X2_IfcGeometricSet_type = new entity(strings[1774], false, 485, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcGridPlacement_type = new entity(strings[1775], false, 491, IFC4X2_IfcObjectPlacement_type); + IFC4X2_IfcHalfSpaceSolid_type = new entity(strings[1776], false, 495, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcImageTexture_type = new entity(strings[1777], false, 507, IFC4X2_IfcSurfaceTexture_type); + IFC4X2_IfcIndexedColourMap_type = new entity(strings[1778], false, 508, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcIndexedTextureMap_type = new entity(strings[1779], true, 512, IFC4X2_IfcTextureCoordinate_type); + IFC4X2_IfcIndexedTriangleTextureMap_type = new entity(strings[1780], false, 513, IFC4X2_IfcIndexedTextureMap_type); + IFC4X2_IfcIrregularTimeSeries_type = new entity(strings[1781], false, 525, IFC4X2_IfcTimeSeries_type); + IFC4X2_IfcLagTime_type = new entity(strings[1782], false, 538, IFC4X2_IfcSchedulingTime_type); + IFC4X2_IfcLightSource_type = new entity(strings[1783], true, 557, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcLightSourceAmbient_type = new entity(strings[1784], false, 558, IFC4X2_IfcLightSource_type); + IFC4X2_IfcLightSourceDirectional_type = new entity(strings[1785], false, 559, IFC4X2_IfcLightSource_type); + IFC4X2_IfcLightSourceGoniometric_type = new entity(strings[1786], false, 560, IFC4X2_IfcLightSource_type); + IFC4X2_IfcLightSourcePositional_type = new entity(strings[1787], false, 561, IFC4X2_IfcLightSource_type); + IFC4X2_IfcLightSourceSpot_type = new entity(strings[1788], false, 562, IFC4X2_IfcLightSourcePositional_type); + IFC4X2_IfcLinearPlacement_type = new entity(strings[1789], false, 566, IFC4X2_IfcObjectPlacement_type); + IFC4X2_IfcLocalPlacement_type = new entity(strings[1790], false, 573, IFC4X2_IfcObjectPlacement_type); + IFC4X2_IfcLoop_type = new entity(strings[1791], false, 576, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcMappedItem_type = new entity(strings[1792], false, 585, IFC4X2_IfcRepresentationItem_type); + IFC4X2_IfcMaterial_type = new entity(strings[1793], false, 590, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialConstituent_type = new entity(strings[1794], false, 592, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialConstituentSet_type = new entity(strings[1795], false, 593, IFC4X2_IfcMaterialDefinition_type); + IFC4X2_IfcMaterialDefinitionRepresentation_type = new entity(strings[1796], false, 595, IFC4X2_IfcProductRepresentation_type); + IFC4X2_IfcMaterialLayerSetUsage_type = new entity(strings[1797], false, 598, IFC4X2_IfcMaterialUsageDefinition_type); + IFC4X2_IfcMaterialProfileSetUsage_type = new entity(strings[1798], false, 603, IFC4X2_IfcMaterialUsageDefinition_type); + IFC4X2_IfcMaterialProfileSetUsageTapering_type = new entity(strings[1799], false, 604, IFC4X2_IfcMaterialProfileSetUsage_type); + IFC4X2_IfcMaterialProperties_type = new entity(strings[1800], false, 606, IFC4X2_IfcExtendedProperties_type); + IFC4X2_IfcMaterialRelationship_type = new entity(strings[1801], false, 607, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcMirroredProfileDef_type = new entity(strings[1802], false, 624, IFC4X2_IfcDerivedProfileDef_type); + IFC4X2_IfcObjectDefinition_type = new entity(strings[1803], true, 647, IFC4X2_IfcRoot_type); + IFC4X2_IfcOpenShell_type = new entity(strings[1804], false, 662, IFC4X2_IfcConnectedFaceSet_type); + IFC4X2_IfcOrganizationRelationship_type = new entity(strings[1805], false, 664, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcOrientationExpression_type = new entity(strings[1806], false, 665, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcOrientedEdge_type = new entity(strings[1807], false, 666, IFC4X2_IfcEdge_type); + IFC4X2_IfcParameterizedProfileDef_type = new entity(strings[1808], true, 672, IFC4X2_IfcProfileDef_type); + IFC4X2_IfcPath_type = new entity(strings[1809], false, 674, IFC4X2_IfcTopologicalRepresentationItem_type); + IFC4X2_IfcPhysicalComplexQuantity_type = new entity(strings[1810], false, 685, IFC4X2_IfcPhysicalQuantity_type); + IFC4X2_IfcPixelTexture_type = new entity(strings[1811], false, 699, IFC4X2_IfcSurfaceTexture_type); + IFC4X2_IfcPlacement_type = new entity(strings[1812], true, 700, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcPlanarExtent_type = new entity(strings[1813], false, 702, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcPoint_type = new entity(strings[1814], true, 710, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcPointOnCurve_type = new entity(strings[1815], false, 711, IFC4X2_IfcPoint_type); + IFC4X2_IfcPointOnSurface_type = new entity(strings[1816], false, 712, IFC4X2_IfcPoint_type); + IFC4X2_IfcPolyLoop_type = new entity(strings[1817], false, 717, IFC4X2_IfcLoop_type); + IFC4X2_IfcPolygonalBoundedHalfSpace_type = new entity(strings[1818], false, 714, IFC4X2_IfcHalfSpaceSolid_type); + IFC4X2_IfcPreDefinedItem_type = new entity(strings[1819], true, 728, IFC4X2_IfcPresentationItem_type); + IFC4X2_IfcPreDefinedProperties_type = new entity(strings[1820], true, 729, IFC4X2_IfcPropertyAbstraction_type); + IFC4X2_IfcPreDefinedTextFont_type = new entity(strings[1821], true, 731, IFC4X2_IfcPreDefinedItem_type); + IFC4X2_IfcProductDefinitionShape_type = new entity(strings[1822], false, 747, IFC4X2_IfcProductRepresentation_type); + IFC4X2_IfcProfileProperties_type = new entity(strings[1823], false, 752, IFC4X2_IfcExtendedProperties_type); + IFC4X2_IfcProperty_type = new entity(strings[1824], true, 762, IFC4X2_IfcPropertyAbstraction_type); + IFC4X2_IfcPropertyDefinition_type = new entity(strings[1825], true, 765, IFC4X2_IfcRoot_type); + IFC4X2_IfcPropertyDependencyRelationship_type = new entity(strings[1826], false, 766, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcPropertySetDefinition_type = new entity(strings[1827], true, 772, IFC4X2_IfcPropertyDefinition_type); + IFC4X2_IfcPropertyTemplateDefinition_type = new entity(strings[1828], true, 780, IFC4X2_IfcPropertyDefinition_type); + IFC4X2_IfcQuantitySet_type = new entity(strings[1829], true, 794, IFC4X2_IfcPropertySetDefinition_type); + IFC4X2_IfcRectangleProfileDef_type = new entity(strings[1830], false, 813, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcRegularTimeSeries_type = new entity(strings[1831], false, 822, IFC4X2_IfcTimeSeries_type); + IFC4X2_IfcReinforcementBarProperties_type = new entity(strings[1832], false, 823, IFC4X2_IfcPreDefinedProperties_type); + IFC4X2_IfcRelationship_type = new entity(strings[1833], true, 851, IFC4X2_IfcRoot_type); + IFC4X2_IfcResourceApprovalRelationship_type = new entity(strings[1834], false, 890, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcResourceConstraintRelationship_type = new entity(strings[1835], false, 891, IFC4X2_IfcResourceLevelRelationship_type); + IFC4X2_IfcResourceTime_type = new entity(strings[1836], false, 895, IFC4X2_IfcSchedulingTime_type); + IFC4X2_IfcRoundedRectangleProfileDef_type = new entity(strings[1837], false, 909, IFC4X2_IfcRectangleProfileDef_type); + IFC4X2_IfcSectionProperties_type = new entity(strings[1838], false, 920, IFC4X2_IfcPreDefinedProperties_type); + IFC4X2_IfcSectionReinforcementProperties_type = new entity(strings[1839], false, 921, IFC4X2_IfcPreDefinedProperties_type); + IFC4X2_IfcSectionedSpine_type = new entity(strings[1840], false, 918, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcShellBasedSurfaceModel_type = new entity(strings[1841], false, 936, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcSimpleProperty_type = new entity(strings[1842], true, 937, IFC4X2_IfcProperty_type); + IFC4X2_IfcSlippageConnectionCondition_type = new entity(strings[1843], false, 951, IFC4X2_IfcStructuralConnectionCondition_type); + IFC4X2_IfcSolidModel_type = new entity(strings[1844], true, 956, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcStructuralLoadLinearForce_type = new entity(strings[1845], false, 1011, IFC4X2_IfcStructuralLoadStatic_type); + IFC4X2_IfcStructuralLoadPlanarForce_type = new entity(strings[1846], false, 1013, IFC4X2_IfcStructuralLoadStatic_type); + IFC4X2_IfcStructuralLoadSingleDisplacement_type = new entity(strings[1847], false, 1014, IFC4X2_IfcStructuralLoadStatic_type); + IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[1848], false, 1015, IFC4X2_IfcStructuralLoadSingleDisplacement_type); + IFC4X2_IfcStructuralLoadSingleForce_type = new entity(strings[1849], false, 1016, IFC4X2_IfcStructuralLoadStatic_type); + IFC4X2_IfcStructuralLoadSingleForceWarping_type = new entity(strings[1850], false, 1017, IFC4X2_IfcStructuralLoadSingleForce_type); + IFC4X2_IfcSubedge_type = new entity(strings[1851], false, 1041, IFC4X2_IfcEdge_type); + IFC4X2_IfcSurface_type = new entity(strings[1852], true, 1042, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcSurfaceStyleRendering_type = new entity(strings[1853], false, 1056, IFC4X2_IfcSurfaceStyleShading_type); + IFC4X2_IfcSweptAreaSolid_type = new entity(strings[1854], true, 1060, IFC4X2_IfcSolidModel_type); + IFC4X2_IfcSweptDiskSolid_type = new entity(strings[1855], false, 1061, IFC4X2_IfcSolidModel_type); + IFC4X2_IfcSweptDiskSolidPolygonal_type = new entity(strings[1856], false, 1062, IFC4X2_IfcSweptDiskSolid_type); + IFC4X2_IfcSweptSurface_type = new entity(strings[1857], true, 1063, IFC4X2_IfcSurface_type); + IFC4X2_IfcTShapeProfileDef_type = new entity(strings[1858], false, 1149, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcTessellatedItem_type = new entity(strings[1859], true, 1096, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcTextLiteral_type = new entity(strings[1860], false, 1102, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcTextLiteralWithExtent_type = new entity(strings[1861], false, 1103, IFC4X2_IfcTextLiteral_type); + IFC4X2_IfcTextStyleFontModel_type = new entity(strings[1862], false, 1106, IFC4X2_IfcPreDefinedTextFont_type); + IFC4X2_IfcTrapeziumProfileDef_type = new entity(strings[1863], false, 1143, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcTypeObject_type = new entity(strings[1864], false, 1153, IFC4X2_IfcObjectDefinition_type); + IFC4X2_IfcTypeProcess_type = new entity(strings[1865], true, 1154, IFC4X2_IfcTypeObject_type); + IFC4X2_IfcTypeProduct_type = new entity(strings[1866], false, 1155, IFC4X2_IfcTypeObject_type); + IFC4X2_IfcTypeResource_type = new entity(strings[1867], true, 1156, IFC4X2_IfcTypeObject_type); + IFC4X2_IfcUShapeProfileDef_type = new entity(strings[1868], false, 1167, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcVector_type = new entity(strings[1869], false, 1173, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcVertexLoop_type = new entity(strings[1870], false, 1176, IFC4X2_IfcLoop_type); + IFC4X2_IfcWindowStyle_type = new entity(strings[1871], false, 1207, IFC4X2_IfcTypeProduct_type); + IFC4X2_IfcZShapeProfileDef_type = new entity(strings[1872], false, 1222, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcClassificationReferenceSelect_type = new select_type(strings[1873], 166, { + IFC4X2_IfcClassification_type, + IFC4X2_IfcClassificationReference_type + }); + IFC4X2_IfcClassificationSelect_type = new select_type(strings[1874], 167, { + IFC4X2_IfcClassification_type, + IFC4X2_IfcClassificationReference_type + }); + IFC4X2_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[1875], 238, { + IFC4X2_IfcCoordinateReferenceSystem_type, + IFC4X2_IfcGeometricRepresentationContext_type + }); + IFC4X2_IfcDefinitionSelect_type = new select_type(strings[1876], 284, { + IFC4X2_IfcObjectDefinition_type, + IFC4X2_IfcPropertyDefinition_type + }); + IFC4X2_IfcDocumentSelect_type = new select_type(strings[1877], 317, { + IFC4X2_IfcDocumentInformation_type, + IFC4X2_IfcDocumentReference_type + }); + IFC4X2_IfcHatchLineDistanceSelect_type = new select_type(strings[1878], 496, { + IFC4X2_IfcPositiveLengthMeasure_type, + IFC4X2_IfcVector_type + }); + IFC4X2_IfcMeasureValue_type = new select_type(strings[1879], 610, { + IFC4X2_IfcAmountOfSubstanceMeasure_type, + IFC4X2_IfcAreaMeasure_type, + IFC4X2_IfcComplexNumber_type, + IFC4X2_IfcContextDependentMeasure_type, + IFC4X2_IfcCountMeasure_type, + IFC4X2_IfcDescriptiveMeasure_type, + IFC4X2_IfcElectricCurrentMeasure_type, + IFC4X2_IfcLengthMeasure_type, + IFC4X2_IfcLuminousIntensityMeasure_type, + IFC4X2_IfcMassMeasure_type, + IFC4X2_IfcNonNegativeLengthMeasure_type, + IFC4X2_IfcNormalisedRatioMeasure_type, + IFC4X2_IfcNumericMeasure_type, + IFC4X2_IfcParameterValue_type, + IFC4X2_IfcPlaneAngleMeasure_type, + IFC4X2_IfcPositiveLengthMeasure_type, + IFC4X2_IfcPositivePlaneAngleMeasure_type, + IFC4X2_IfcPositiveRatioMeasure_type, + IFC4X2_IfcRatioMeasure_type, + IFC4X2_IfcSolidAngleMeasure_type, + IFC4X2_IfcThermodynamicTemperatureMeasure_type, + IFC4X2_IfcTimeMeasure_type, + IFC4X2_IfcVolumeMeasure_type + }); + IFC4X2_IfcPointOrVertexPoint_type = new select_type(strings[1880], 713, { + IFC4X2_IfcPoint_type, + IFC4X2_IfcVertexPoint_type + }); + IFC4X2_IfcPresentationStyleSelect_type = new select_type(strings[1881], 739, { + IFC4X2_IfcCurveStyle_type, + IFC4X2_IfcFillAreaStyle_type, + IFC4X2_IfcNullStyle_type, + IFC4X2_IfcSurfaceStyle_type, + IFC4X2_IfcTextStyle_type + }); + IFC4X2_IfcProductRepresentationSelect_type = new select_type(strings[1882], 749, { + IFC4X2_IfcProductDefinitionShape_type, + IFC4X2_IfcRepresentationMap_type + }); + IFC4X2_IfcPropertySetDefinitionSet_type = new type_declaration(strings[1883], 774, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertySetDefinition_type))); + IFC4X2_IfcResourceObjectSelect_type = new select_type(strings[1884], 893, { + IFC4X2_IfcActorRole_type, + IFC4X2_IfcAppliedValue_type, + IFC4X2_IfcApproval_type, + IFC4X2_IfcConstraint_type, + IFC4X2_IfcContextDependentUnit_type, + IFC4X2_IfcConversionBasedUnit_type, + IFC4X2_IfcExternalInformation_type, + IFC4X2_IfcExternalReference_type, + IFC4X2_IfcMaterialDefinition_type, + IFC4X2_IfcOrganization_type, + IFC4X2_IfcPerson_type, + IFC4X2_IfcPersonAndOrganization_type, + IFC4X2_IfcPhysicalQuantity_type, + IFC4X2_IfcProfileDef_type, + IFC4X2_IfcPropertyAbstraction_type, + IFC4X2_IfcShapeAspect_type, + IFC4X2_IfcTimeSeries_type + }); + IFC4X2_IfcTextFontSelect_type = new select_type(strings[1885], 1101, { + IFC4X2_IfcExternallyDefinedTextFont_type, + IFC4X2_IfcPreDefinedTextFont_type + }); + IFC4X2_IfcValue_type = new select_type(strings[1886], 1168, { + IFC4X2_IfcDerivedMeasureValue_type, + IFC4X2_IfcMeasureValue_type, + IFC4X2_IfcSimpleValue_type + }); + IFC4X2_IfcAdvancedFace_type = new entity(strings[1887], false, 16, IFC4X2_IfcFaceSurface_type); + IFC4X2_IfcAlignment2DHorizontal_type = new entity(strings[1888], false, 30, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcAlignment2DSegment_type = new entity(strings[1889], true, 32, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcAlignment2DVertical_type = new entity(strings[1890], false, 36, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcAlignment2DVerticalSegment_type = new entity(strings[1891], true, 37, IFC4X2_IfcAlignment2DSegment_type); + IFC4X2_IfcAnnotationFillArea_type = new entity(strings[1892], false, 45, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcAsymmetricIShapeProfileDef_type = new entity(strings[1893], false, 60, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcAxis1Placement_type = new entity(strings[1894], false, 64, IFC4X2_IfcPlacement_type); + IFC4X2_IfcAxis2Placement2D_type = new entity(strings[1895], false, 66, IFC4X2_IfcPlacement_type); + IFC4X2_IfcAxis2Placement3D_type = new entity(strings[1896], false, 67, IFC4X2_IfcPlacement_type); + IFC4X2_IfcBooleanResult_type = new entity(strings[1897], false, 88, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcBoundedSurface_type = new entity(strings[1898], true, 96, IFC4X2_IfcSurface_type); + IFC4X2_IfcBoundingBox_type = new entity(strings[1899], false, 97, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcBoxedHalfSpace_type = new entity(strings[1900], false, 99, IFC4X2_IfcHalfSpaceSolid_type); + IFC4X2_IfcCShapeProfileDef_type = new entity(strings[1901], false, 254, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcCartesianPoint_type = new entity(strings[1902], false, 141, IFC4X2_IfcPoint_type); + IFC4X2_IfcCartesianPointList_type = new entity(strings[1903], true, 142, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcCartesianPointList2D_type = new entity(strings[1904], false, 143, IFC4X2_IfcCartesianPointList_type); + IFC4X2_IfcCartesianPointList3D_type = new entity(strings[1905], false, 144, IFC4X2_IfcCartesianPointList_type); + IFC4X2_IfcCartesianTransformationOperator_type = new entity(strings[1906], true, 145, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcCartesianTransformationOperator2D_type = new entity(strings[1907], false, 146, IFC4X2_IfcCartesianTransformationOperator_type); + IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[1908], false, 147, IFC4X2_IfcCartesianTransformationOperator2D_type); + IFC4X2_IfcCartesianTransformationOperator3D_type = new entity(strings[1909], false, 148, IFC4X2_IfcCartesianTransformationOperator_type); + IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[1910], false, 149, IFC4X2_IfcCartesianTransformationOperator3D_type); + IFC4X2_IfcCircleProfileDef_type = new entity(strings[1911], false, 160, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcClosedShell_type = new entity(strings[1912], false, 168, IFC4X2_IfcConnectedFaceSet_type); + IFC4X2_IfcColourRgb_type = new entity(strings[1913], false, 174, IFC4X2_IfcColourSpecification_type); + IFC4X2_IfcComplexProperty_type = new entity(strings[1914], false, 185, IFC4X2_IfcProperty_type); + IFC4X2_IfcCompositeCurveSegment_type = new entity(strings[1915], false, 190, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcConstructionResourceType_type = new entity(strings[1916], true, 220, IFC4X2_IfcTypeResource_type); + IFC4X2_IfcContext_type = new entity(strings[1917], true, 221, IFC4X2_IfcObjectDefinition_type); + IFC4X2_IfcCrewResourceType_type = new entity(strings[1918], false, 249, IFC4X2_IfcConstructionResourceType_type); + IFC4X2_IfcCsgPrimitive3D_type = new entity(strings[1919], true, 251, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcCsgSolid_type = new entity(strings[1920], false, 253, IFC4X2_IfcSolidModel_type); + IFC4X2_IfcCurve_type = new entity(strings[1921], true, 260, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcCurveBoundedPlane_type = new entity(strings[1922], false, 261, IFC4X2_IfcBoundedSurface_type); + IFC4X2_IfcCurveBoundedSurface_type = new entity(strings[1923], false, 262, IFC4X2_IfcBoundedSurface_type); + IFC4X2_IfcDirection_type = new entity(strings[1924], false, 293, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcDistanceExpression_type = new entity(strings[1925], false, 298, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcDoorStyle_type = new entity(strings[1926], false, 325, IFC4X2_IfcTypeProduct_type); + IFC4X2_IfcEdgeLoop_type = new entity(strings[1927], false, 347, IFC4X2_IfcLoop_type); + IFC4X2_IfcElementQuantity_type = new entity(strings[1928], false, 380, IFC4X2_IfcQuantitySet_type); + IFC4X2_IfcElementType_type = new entity(strings[1929], true, 381, IFC4X2_IfcTypeProduct_type); + IFC4X2_IfcElementarySurface_type = new entity(strings[1930], true, 373, IFC4X2_IfcSurface_type); + IFC4X2_IfcEllipseProfileDef_type = new entity(strings[1931], false, 383, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcEventType_type = new entity(strings[1932], false, 399, IFC4X2_IfcTypeProcess_type); + IFC4X2_IfcExtrudedAreaSolid_type = new entity(strings[1933], false, 411, IFC4X2_IfcSweptAreaSolid_type); + IFC4X2_IfcExtrudedAreaSolidTapered_type = new entity(strings[1934], false, 412, IFC4X2_IfcExtrudedAreaSolid_type); + IFC4X2_IfcFaceBasedSurfaceModel_type = new entity(strings[1935], false, 414, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcFillAreaStyleHatching_type = new entity(strings[1936], false, 433, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcFillAreaStyleTiles_type = new entity(strings[1937], false, 434, IFC4X2_IfcGeometricRepresentationItem_type); + IFC4X2_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[1938], false, 442, IFC4X2_IfcSweptAreaSolid_type); + IFC4X2_IfcFurnishingElementType_type = new entity(strings[1939], false, 473, IFC4X2_IfcElementType_type); + IFC4X2_IfcFurnitureType_type = new entity(strings[1940], false, 475, IFC4X2_IfcFurnishingElementType_type); + IFC4X2_IfcGeographicElementType_type = new entity(strings[1941], false, 478, IFC4X2_IfcElementType_type); + IFC4X2_IfcGeometricCurveSet_type = new entity(strings[1942], false, 480, IFC4X2_IfcGeometricSet_type); + IFC4X2_IfcIShapeProfileDef_type = new entity(strings[1943], false, 527, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcIndexedPolygonalFace_type = new entity(strings[1944], false, 510, IFC4X2_IfcTessellatedItem_type); + IFC4X2_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[1945], false, 511, IFC4X2_IfcIndexedPolygonalFace_type); + IFC4X2_IfcLShapeProfileDef_type = new entity(strings[1946], false, 577, IFC4X2_IfcParameterizedProfileDef_type); + IFC4X2_IfcLaborResourceType_type = new entity(strings[1947], false, 536, IFC4X2_IfcConstructionResourceType_type); + IFC4X2_IfcLine_type = new entity(strings[1948], false, 563, IFC4X2_IfcCurve_type); + IFC4X2_IfcManifoldSolidBrep_type = new entity(strings[1949], true, 583, IFC4X2_IfcSolidModel_type); + IFC4X2_IfcObject_type = new entity(strings[1950], true, 646, IFC4X2_IfcObjectDefinition_type); + IFC4X2_IfcOffsetCurve_type = new entity(strings[1951], true, 655, IFC4X2_IfcCurve_type); + IFC4X2_IfcOffsetCurve2D_type = new entity(strings[1952], false, 656, IFC4X2_IfcOffsetCurve_type); + IFC4X2_IfcOffsetCurve3D_type = new entity(strings[1953], false, 657, IFC4X2_IfcOffsetCurve_type); + IFC4X2_IfcOffsetCurveByDistances_type = new entity(strings[1954], false, 658, IFC4X2_IfcOffsetCurve_type); + IFC4X2_IfcPcurve_type = new entity(strings[1955], false, 675, IFC4X2_IfcCurve_type); + IFC4X2_IfcPlanarBox_type = new entity(strings[1956], false, 701, IFC4X2_IfcPlanarExtent_type); + IFC4X2_IfcPlane_type = new entity(strings[1957], false, 704, IFC4X2_IfcElementarySurface_type); + IFC4X2_IfcPreDefinedColour_type = new entity(strings[1958], true, 726, IFC4X2_IfcPreDefinedItem_type); + IFC4X2_IfcPreDefinedCurveFont_type = new entity(strings[1959], true, 727, IFC4X2_IfcPreDefinedItem_type); + IFC4X2_IfcPreDefinedPropertySet_type = new entity(strings[1960], true, 730, IFC4X2_IfcPropertySetDefinition_type); + IFC4X2_IfcProcedureType_type = new entity(strings[1961], false, 742, IFC4X2_IfcTypeProcess_type); + IFC4X2_IfcProcess_type = new entity(strings[1962], true, 744, IFC4X2_IfcObject_type); + IFC4X2_IfcProduct_type = new entity(strings[1963], true, 746, IFC4X2_IfcObject_type); + IFC4X2_IfcProject_type = new entity(strings[1964], false, 754, IFC4X2_IfcContext_type); + IFC4X2_IfcProjectLibrary_type = new entity(strings[1965], false, 759, IFC4X2_IfcContext_type); + IFC4X2_IfcPropertyBoundedValue_type = new entity(strings[1966], false, 764, IFC4X2_IfcSimpleProperty_type); + IFC4X2_IfcPropertyEnumeratedValue_type = new entity(strings[1967], false, 767, IFC4X2_IfcSimpleProperty_type); + IFC4X2_IfcPropertyListValue_type = new entity(strings[1968], false, 769, IFC4X2_IfcSimpleProperty_type); + IFC4X2_IfcPropertyReferenceValue_type = new entity(strings[1969], false, 770, IFC4X2_IfcSimpleProperty_type); + IFC4X2_IfcPropertySet_type = new entity(strings[1970], false, 771, IFC4X2_IfcPropertySetDefinition_type); + IFC4X2_IfcPropertySetTemplate_type = new entity(strings[1971], false, 775, IFC4X2_IfcPropertyTemplateDefinition_type); + IFC4X2_IfcPropertySingleValue_type = new entity(strings[1972], false, 777, IFC4X2_IfcSimpleProperty_type); + IFC4X2_IfcPropertyTableValue_type = new entity(strings[1973], false, 778, IFC4X2_IfcSimpleProperty_type); + IFC4X2_IfcPropertyTemplate_type = new entity(strings[1974], true, 779, IFC4X2_IfcPropertyTemplateDefinition_type); + IFC4X2_IfcProxy_type = new entity(strings[1975], false, 787, IFC4X2_IfcProduct_type); + IFC4X2_IfcRectangleHollowProfileDef_type = new entity(strings[1976], false, 812, IFC4X2_IfcRectangleProfileDef_type); + IFC4X2_IfcRectangularPyramid_type = new entity(strings[1977], false, 814, IFC4X2_IfcCsgPrimitive3D_type); + IFC4X2_IfcRectangularTrimmedSurface_type = new entity(strings[1978], false, 815, IFC4X2_IfcBoundedSurface_type); + IFC4X2_IfcReinforcementDefinitionProperties_type = new entity(strings[1979], false, 824, IFC4X2_IfcPreDefinedPropertySet_type); + IFC4X2_IfcRelAssigns_type = new entity(strings[1980], true, 836, IFC4X2_IfcRelationship_type); + IFC4X2_IfcRelAssignsToActor_type = new entity(strings[1981], false, 837, IFC4X2_IfcRelAssigns_type); + IFC4X2_IfcRelAssignsToControl_type = new entity(strings[1982], false, 838, IFC4X2_IfcRelAssigns_type); + IFC4X2_IfcRelAssignsToGroup_type = new entity(strings[1983], false, 839, IFC4X2_IfcRelAssigns_type); + IFC4X2_IfcRelAssignsToGroupByFactor_type = new entity(strings[1984], false, 840, IFC4X2_IfcRelAssignsToGroup_type); + IFC4X2_IfcRelAssignsToProcess_type = new entity(strings[1985], false, 841, IFC4X2_IfcRelAssigns_type); + IFC4X2_IfcRelAssignsToProduct_type = new entity(strings[1986], false, 842, IFC4X2_IfcRelAssigns_type); + IFC4X2_IfcRelAssignsToResource_type = new entity(strings[1987], false, 843, IFC4X2_IfcRelAssigns_type); + IFC4X2_IfcRelAssociates_type = new entity(strings[1988], true, 844, IFC4X2_IfcRelationship_type); + IFC4X2_IfcRelAssociatesApproval_type = new entity(strings[1989], false, 845, IFC4X2_IfcRelAssociates_type); + IFC4X2_IfcRelAssociatesClassification_type = new entity(strings[1990], false, 846, IFC4X2_IfcRelAssociates_type); + IFC4X2_IfcRelAssociatesConstraint_type = new entity(strings[1991], false, 847, IFC4X2_IfcRelAssociates_type); + IFC4X2_IfcRelAssociatesDocument_type = new entity(strings[1992], false, 848, IFC4X2_IfcRelAssociates_type); + IFC4X2_IfcRelAssociatesLibrary_type = new entity(strings[1993], false, 849, IFC4X2_IfcRelAssociates_type); + IFC4X2_IfcRelAssociatesMaterial_type = new entity(strings[1994], false, 850, IFC4X2_IfcRelAssociates_type); + IFC4X2_IfcRelConnects_type = new entity(strings[1995], true, 852, IFC4X2_IfcRelationship_type); + IFC4X2_IfcRelConnectsElements_type = new entity(strings[1996], false, 853, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelConnectsPathElements_type = new entity(strings[1997], false, 854, IFC4X2_IfcRelConnectsElements_type); + IFC4X2_IfcRelConnectsPortToElement_type = new entity(strings[1998], false, 856, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelConnectsPorts_type = new entity(strings[1999], false, 855, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelConnectsStructuralActivity_type = new entity(strings[2000], false, 857, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelConnectsStructuralMember_type = new entity(strings[2001], false, 858, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelConnectsWithEccentricity_type = new entity(strings[2002], false, 859, IFC4X2_IfcRelConnectsStructuralMember_type); + IFC4X2_IfcRelConnectsWithRealizingElements_type = new entity(strings[2003], false, 860, IFC4X2_IfcRelConnectsElements_type); + IFC4X2_IfcRelContainedInSpatialStructure_type = new entity(strings[2004], false, 861, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelCoversBldgElements_type = new entity(strings[2005], false, 862, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelCoversSpaces_type = new entity(strings[2006], false, 863, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelDeclares_type = new entity(strings[2007], false, 864, IFC4X2_IfcRelationship_type); + IFC4X2_IfcRelDecomposes_type = new entity(strings[2008], true, 865, IFC4X2_IfcRelationship_type); + IFC4X2_IfcRelDefines_type = new entity(strings[2009], true, 866, IFC4X2_IfcRelationship_type); + IFC4X2_IfcRelDefinesByObject_type = new entity(strings[2010], false, 867, IFC4X2_IfcRelDefines_type); + IFC4X2_IfcRelDefinesByProperties_type = new entity(strings[2011], false, 868, IFC4X2_IfcRelDefines_type); + IFC4X2_IfcRelDefinesByTemplate_type = new entity(strings[2012], false, 869, IFC4X2_IfcRelDefines_type); + IFC4X2_IfcRelDefinesByType_type = new entity(strings[2013], false, 870, IFC4X2_IfcRelDefines_type); + IFC4X2_IfcRelFillsElement_type = new entity(strings[2014], false, 871, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelFlowControlElements_type = new entity(strings[2015], false, 872, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelInterferesElements_type = new entity(strings[2016], false, 873, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelNests_type = new entity(strings[2017], false, 874, IFC4X2_IfcRelDecomposes_type); + IFC4X2_IfcRelPositions_type = new entity(strings[2018], false, 875, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelProjectsElement_type = new entity(strings[2019], false, 876, IFC4X2_IfcRelDecomposes_type); + IFC4X2_IfcRelReferencedInSpatialStructure_type = new entity(strings[2020], false, 877, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelSequence_type = new entity(strings[2021], false, 878, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelServicesBuildings_type = new entity(strings[2022], false, 879, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelSpaceBoundary_type = new entity(strings[2023], false, 880, IFC4X2_IfcRelConnects_type); + IFC4X2_IfcRelSpaceBoundary1stLevel_type = new entity(strings[2024], false, 881, IFC4X2_IfcRelSpaceBoundary_type); + IFC4X2_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[2025], false, 882, IFC4X2_IfcRelSpaceBoundary1stLevel_type); + IFC4X2_IfcRelVoidsElement_type = new entity(strings[2026], false, 883, IFC4X2_IfcRelDecomposes_type); + IFC4X2_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[2027], false, 884, IFC4X2_IfcCompositeCurveSegment_type); + IFC4X2_IfcResource_type = new entity(strings[2028], true, 889, IFC4X2_IfcObject_type); + IFC4X2_IfcRevolvedAreaSolid_type = new entity(strings[2029], false, 896, IFC4X2_IfcSweptAreaSolid_type); + IFC4X2_IfcRevolvedAreaSolidTapered_type = new entity(strings[2030], false, 897, IFC4X2_IfcRevolvedAreaSolid_type); + IFC4X2_IfcRightCircularCone_type = new entity(strings[2031], false, 898, IFC4X2_IfcCsgPrimitive3D_type); + IFC4X2_IfcRightCircularCylinder_type = new entity(strings[2032], false, 899, IFC4X2_IfcCsgPrimitive3D_type); + IFC4X2_IfcSectionedSolid_type = new entity(strings[2033], true, 916, IFC4X2_IfcSolidModel_type); + IFC4X2_IfcSectionedSolidHorizontal_type = new entity(strings[2034], false, 917, IFC4X2_IfcSectionedSolid_type); + IFC4X2_IfcSimplePropertyTemplate_type = new entity(strings[2035], false, 938, IFC4X2_IfcPropertyTemplate_type); + IFC4X2_IfcSpatialElement_type = new entity(strings[2036], true, 969, IFC4X2_IfcProduct_type); + IFC4X2_IfcSpatialElementType_type = new entity(strings[2037], true, 970, IFC4X2_IfcTypeProduct_type); + IFC4X2_IfcSpatialStructureElement_type = new entity(strings[2038], true, 971, IFC4X2_IfcSpatialElement_type); + IFC4X2_IfcSpatialStructureElementType_type = new entity(strings[2039], true, 972, IFC4X2_IfcSpatialElementType_type); + IFC4X2_IfcSpatialZone_type = new entity(strings[2040], false, 973, IFC4X2_IfcSpatialElement_type); + IFC4X2_IfcSpatialZoneType_type = new entity(strings[2041], false, 974, IFC4X2_IfcSpatialElementType_type); + IFC4X2_IfcSphere_type = new entity(strings[2042], false, 980, IFC4X2_IfcCsgPrimitive3D_type); + IFC4X2_IfcSphericalSurface_type = new entity(strings[2043], false, 981, IFC4X2_IfcElementarySurface_type); + IFC4X2_IfcStructuralActivity_type = new entity(strings[2044], true, 993, IFC4X2_IfcProduct_type); + IFC4X2_IfcStructuralItem_type = new entity(strings[2045], true, 1005, IFC4X2_IfcProduct_type); + IFC4X2_IfcStructuralMember_type = new entity(strings[2046], true, 1020, IFC4X2_IfcStructuralItem_type); + IFC4X2_IfcStructuralReaction_type = new entity(strings[2047], true, 1025, IFC4X2_IfcStructuralActivity_type); + IFC4X2_IfcStructuralSurfaceMember_type = new entity(strings[2048], false, 1030, IFC4X2_IfcStructuralMember_type); + IFC4X2_IfcStructuralSurfaceMemberVarying_type = new entity(strings[2049], false, 1032, IFC4X2_IfcStructuralSurfaceMember_type); + IFC4X2_IfcStructuralSurfaceReaction_type = new entity(strings[2050], false, 1033, IFC4X2_IfcStructuralReaction_type); + IFC4X2_IfcSubContractResourceType_type = new entity(strings[2051], false, 1039, IFC4X2_IfcConstructionResourceType_type); + IFC4X2_IfcSurfaceCurve_type = new entity(strings[2052], false, 1043, IFC4X2_IfcCurve_type); + IFC4X2_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[2053], false, 1044, IFC4X2_IfcSweptAreaSolid_type); + IFC4X2_IfcSurfaceOfLinearExtrusion_type = new entity(strings[2054], false, 1047, IFC4X2_IfcSweptSurface_type); + IFC4X2_IfcSurfaceOfRevolution_type = new entity(strings[2055], false, 1048, IFC4X2_IfcSweptSurface_type); + IFC4X2_IfcSystemFurnitureElementType_type = new entity(strings[2056], false, 1069, IFC4X2_IfcFurnishingElementType_type); + IFC4X2_IfcTask_type = new entity(strings[2057], false, 1077, IFC4X2_IfcProcess_type); + IFC4X2_IfcTaskType_type = new entity(strings[2058], false, 1081, IFC4X2_IfcTypeProcess_type); + IFC4X2_IfcTessellatedFaceSet_type = new entity(strings[2059], true, 1095, IFC4X2_IfcTessellatedItem_type); + IFC4X2_IfcToroidalSurface_type = new entity(strings[2060], false, 1131, IFC4X2_IfcElementarySurface_type); + IFC4X2_IfcTransportElementType_type = new entity(strings[2061], false, 1141, IFC4X2_IfcElementType_type); + IFC4X2_IfcTriangulatedFaceSet_type = new entity(strings[2062], false, 1144, IFC4X2_IfcTessellatedFaceSet_type); + IFC4X2_IfcTriangulatedIrregularNetwork_type = new entity(strings[2063], false, 1145, IFC4X2_IfcTriangulatedFaceSet_type); + IFC4X2_IfcWindowLiningProperties_type = new entity(strings[2064], false, 1202, IFC4X2_IfcPreDefinedPropertySet_type); + IFC4X2_IfcWindowPanelProperties_type = new entity(strings[2065], false, 1205, IFC4X2_IfcPreDefinedPropertySet_type); + IFC4X2_IfcAppliedValueSelect_type = new select_type(strings[2066], 48, { + IFC4X2_IfcMeasureWithUnit_type, + IFC4X2_IfcReference_type, + IFC4X2_IfcValue_type + }); + IFC4X2_IfcAxis2Placement_type = new select_type(strings[2067], 65, { + IFC4X2_IfcAxis2Placement2D_type, + IFC4X2_IfcAxis2Placement3D_type + }); + IFC4X2_IfcBooleanOperand_type = new select_type(strings[2068], 86, { + IFC4X2_IfcBooleanResult_type, + IFC4X2_IfcCsgPrimitive3D_type, + IFC4X2_IfcHalfSpaceSolid_type, + IFC4X2_IfcSolidModel_type, + IFC4X2_IfcTessellatedFaceSet_type + }); + IFC4X2_IfcColour_type = new select_type(strings[2069], 172, { + IFC4X2_IfcColourSpecification_type, + IFC4X2_IfcPreDefinedColour_type + }); + IFC4X2_IfcColourOrFactor_type = new select_type(strings[2070], 173, { + IFC4X2_IfcColourRgb_type, + IFC4X2_IfcNormalisedRatioMeasure_type + }); + IFC4X2_IfcCsgSelect_type = new select_type(strings[2071], 252, { + IFC4X2_IfcBooleanResult_type, + IFC4X2_IfcCsgPrimitive3D_type + }); + IFC4X2_IfcCurveStyleFontSelect_type = new select_type(strings[2072], 272, { + IFC4X2_IfcCurveStyleFont_type, + IFC4X2_IfcPreDefinedCurveFont_type + }); + IFC4X2_IfcFillStyleSelect_type = new select_type(strings[2073], 435, { + IFC4X2_IfcColour_type, + IFC4X2_IfcExternallyDefinedHatchStyle_type, + IFC4X2_IfcFillAreaStyleHatching_type, + IFC4X2_IfcFillAreaStyleTiles_type + }); + IFC4X2_IfcGeometricSetSelect_type = new select_type(strings[2074], 486, { + IFC4X2_IfcCurve_type, + IFC4X2_IfcPoint_type, + IFC4X2_IfcSurface_type + }); + IFC4X2_IfcGridPlacementDirectionSelect_type = new select_type(strings[2075], 492, { + IFC4X2_IfcDirection_type, + IFC4X2_IfcVirtualGridIntersection_type + }); + IFC4X2_IfcMetricValueSelect_type = new select_type(strings[2076], 623, { + IFC4X2_IfcAppliedValue_type, + IFC4X2_IfcMeasureWithUnit_type, + IFC4X2_IfcReference_type, + IFC4X2_IfcTable_type, + IFC4X2_IfcTimeSeries_type, + IFC4X2_IfcValue_type + }); + IFC4X2_IfcProcessSelect_type = new select_type(strings[2077], 745, { + IFC4X2_IfcProcess_type, + IFC4X2_IfcTypeProcess_type + }); + IFC4X2_IfcProductSelect_type = new select_type(strings[2078], 750, { + IFC4X2_IfcProduct_type, + IFC4X2_IfcTypeProduct_type + }); + IFC4X2_IfcPropertySetDefinitionSelect_type = new select_type(strings[2079], 773, { + IFC4X2_IfcPropertySetDefinition_type, + IFC4X2_IfcPropertySetDefinitionSet_type + }); + IFC4X2_IfcResourceSelect_type = new select_type(strings[2080], 894, { + IFC4X2_IfcResource_type, + IFC4X2_IfcTypeResource_type + }); + IFC4X2_IfcShell_type = new select_type(strings[2081], 935, { + IFC4X2_IfcClosedShell_type, + IFC4X2_IfcOpenShell_type + }); + IFC4X2_IfcSolidOrShell_type = new select_type(strings[2082], 957, { + IFC4X2_IfcClosedShell_type, + IFC4X2_IfcSolidModel_type + }); + IFC4X2_IfcSurfaceOrFaceSurface_type = new select_type(strings[2083], 1049, { + IFC4X2_IfcFaceBasedSurfaceModel_type, + IFC4X2_IfcFaceSurface_type, + IFC4X2_IfcSurface_type + }); + IFC4X2_IfcTrimmingSelect_type = new select_type(strings[2084], 1148, { + IFC4X2_IfcCartesianPoint_type, + IFC4X2_IfcParameterValue_type + }); + IFC4X2_IfcVectorOrDirection_type = new select_type(strings[2085], 1174, { + IFC4X2_IfcDirection_type, + IFC4X2_IfcVector_type + }); + IFC4X2_IfcActor_type = new entity(strings[2086], false, 6, IFC4X2_IfcObject_type); + IFC4X2_IfcAdvancedBrep_type = new entity(strings[2087], false, 14, IFC4X2_IfcManifoldSolidBrep_type); + IFC4X2_IfcAdvancedBrepWithVoids_type = new entity(strings[2088], false, 15, IFC4X2_IfcAdvancedBrep_type); + IFC4X2_IfcAlignment2DHorizontalSegment_type = new entity(strings[2089], false, 31, IFC4X2_IfcAlignment2DSegment_type); + IFC4X2_IfcAlignment2DVerSegCircularArc_type = new entity(strings[2090], false, 33, IFC4X2_IfcAlignment2DVerticalSegment_type); + IFC4X2_IfcAlignment2DVerSegLine_type = new entity(strings[2091], false, 34, IFC4X2_IfcAlignment2DVerticalSegment_type); + IFC4X2_IfcAlignment2DVerSegParabolicArc_type = new entity(strings[2092], false, 35, IFC4X2_IfcAlignment2DVerticalSegment_type); + IFC4X2_IfcAnnotation_type = new entity(strings[2093], false, 44, IFC4X2_IfcProduct_type); + IFC4X2_IfcBSplineSurface_type = new entity(strings[2094], true, 107, IFC4X2_IfcBoundedSurface_type); + IFC4X2_IfcBSplineSurfaceWithKnots_type = new entity(strings[2095], false, 109, IFC4X2_IfcBSplineSurface_type); + IFC4X2_IfcBlock_type = new entity(strings[2096], false, 80, IFC4X2_IfcCsgPrimitive3D_type); + IFC4X2_IfcBooleanClippingResult_type = new entity(strings[2097], false, 85, IFC4X2_IfcBooleanResult_type); + IFC4X2_IfcBoundedCurve_type = new entity(strings[2098], true, 95, IFC4X2_IfcCurve_type); + IFC4X2_IfcBuildingElementType_type = new entity(strings[2099], true, 118, IFC4X2_IfcElementType_type); + IFC4X2_IfcChimneyType_type = new entity(strings[2100], false, 156, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcCircleHollowProfileDef_type = new entity(strings[2101], false, 159, IFC4X2_IfcCircleProfileDef_type); + IFC4X2_IfcCivilElementType_type = new entity(strings[2102], false, 163, IFC4X2_IfcElementType_type); + IFC4X2_IfcColumnType_type = new entity(strings[2103], false, 179, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcComplexPropertyTemplate_type = new entity(strings[2104], false, 186, IFC4X2_IfcPropertyTemplate_type); + IFC4X2_IfcCompositeCurve_type = new entity(strings[2105], false, 188, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcCompositeCurveOnSurface_type = new entity(strings[2106], false, 189, IFC4X2_IfcCompositeCurve_type); + IFC4X2_IfcConic_type = new entity(strings[2107], true, 199, IFC4X2_IfcCurve_type); + IFC4X2_IfcConstructionEquipmentResourceType_type = new entity(strings[2108], false, 211, IFC4X2_IfcConstructionResourceType_type); + IFC4X2_IfcConstructionMaterialResourceType_type = new entity(strings[2109], false, 214, IFC4X2_IfcConstructionResourceType_type); + IFC4X2_IfcConstructionProductResourceType_type = new entity(strings[2110], false, 217, IFC4X2_IfcConstructionResourceType_type); + IFC4X2_IfcConstructionResource_type = new entity(strings[2111], true, 219, IFC4X2_IfcResource_type); + IFC4X2_IfcControl_type = new entity(strings[2112], true, 224, IFC4X2_IfcObject_type); + IFC4X2_IfcCostItem_type = new entity(strings[2113], false, 239, IFC4X2_IfcControl_type); + IFC4X2_IfcCostSchedule_type = new entity(strings[2114], false, 241, IFC4X2_IfcControl_type); + IFC4X2_IfcCoveringType_type = new entity(strings[2115], false, 246, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcCrewResource_type = new entity(strings[2116], false, 248, IFC4X2_IfcConstructionResource_type); + IFC4X2_IfcCurtainWallType_type = new entity(strings[2117], false, 257, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcCurveSegment2D_type = new entity(strings[2118], true, 267, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcCylindricalSurface_type = new entity(strings[2119], false, 273, IFC4X2_IfcElementarySurface_type); + IFC4X2_IfcDeepFoundationType_type = new entity(strings[2120], false, 283, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcDistributionElementType_type = new entity(strings[2121], false, 306, IFC4X2_IfcElementType_type); + IFC4X2_IfcDistributionFlowElementType_type = new entity(strings[2122], true, 308, IFC4X2_IfcDistributionElementType_type); + IFC4X2_IfcDoorLiningProperties_type = new entity(strings[2123], false, 320, IFC4X2_IfcPreDefinedPropertySet_type); + IFC4X2_IfcDoorPanelProperties_type = new entity(strings[2124], false, 323, IFC4X2_IfcPreDefinedPropertySet_type); + IFC4X2_IfcDoorType_type = new entity(strings[2125], false, 328, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcDraughtingPreDefinedColour_type = new entity(strings[2126], false, 332, IFC4X2_IfcPreDefinedColour_type); + IFC4X2_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2127], false, 333, IFC4X2_IfcPreDefinedCurveFont_type); + IFC4X2_IfcElement_type = new entity(strings[2128], true, 372, IFC4X2_IfcProduct_type); + IFC4X2_IfcElementAssembly_type = new entity(strings[2129], false, 374, IFC4X2_IfcElement_type); + IFC4X2_IfcElementAssemblyType_type = new entity(strings[2130], false, 375, IFC4X2_IfcElementType_type); + IFC4X2_IfcElementComponent_type = new entity(strings[2131], true, 377, IFC4X2_IfcElement_type); + IFC4X2_IfcElementComponentType_type = new entity(strings[2132], true, 378, IFC4X2_IfcElementType_type); + IFC4X2_IfcEllipse_type = new entity(strings[2133], false, 382, IFC4X2_IfcConic_type); + IFC4X2_IfcEnergyConversionDeviceType_type = new entity(strings[2134], true, 385, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcEngineType_type = new entity(strings[2135], false, 388, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcEvaporativeCoolerType_type = new entity(strings[2136], false, 391, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcEvaporatorType_type = new entity(strings[2137], false, 394, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcEvent_type = new entity(strings[2138], false, 396, IFC4X2_IfcProcess_type); + IFC4X2_IfcExternalSpatialStructureElement_type = new entity(strings[2139], true, 410, IFC4X2_IfcSpatialElement_type); + IFC4X2_IfcFacetedBrep_type = new entity(strings[2140], false, 418, IFC4X2_IfcManifoldSolidBrep_type); + IFC4X2_IfcFacetedBrepWithVoids_type = new entity(strings[2141], false, 419, IFC4X2_IfcFacetedBrep_type); + IFC4X2_IfcFacility_type = new entity(strings[2142], false, 420, IFC4X2_IfcSpatialStructureElement_type); + IFC4X2_IfcFacilityPart_type = new entity(strings[2143], false, 421, IFC4X2_IfcSpatialStructureElement_type); + IFC4X2_IfcFastener_type = new entity(strings[2144], false, 426, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcFastenerType_type = new entity(strings[2145], false, 427, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcFeatureElement_type = new entity(strings[2146], true, 429, IFC4X2_IfcElement_type); + IFC4X2_IfcFeatureElementAddition_type = new entity(strings[2147], true, 430, IFC4X2_IfcFeatureElement_type); + IFC4X2_IfcFeatureElementSubtraction_type = new entity(strings[2148], true, 431, IFC4X2_IfcFeatureElement_type); + IFC4X2_IfcFlowControllerType_type = new entity(strings[2149], true, 444, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFlowFittingType_type = new entity(strings[2150], true, 447, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFlowMeterType_type = new entity(strings[2151], false, 452, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcFlowMovingDeviceType_type = new entity(strings[2152], true, 455, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFlowSegmentType_type = new entity(strings[2153], true, 457, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFlowStorageDeviceType_type = new entity(strings[2154], true, 459, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFlowTerminalType_type = new entity(strings[2155], true, 461, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFlowTreatmentDeviceType_type = new entity(strings[2156], true, 463, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcFootingType_type = new entity(strings[2157], false, 468, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcFurnishingElement_type = new entity(strings[2158], false, 472, IFC4X2_IfcElement_type); + IFC4X2_IfcFurniture_type = new entity(strings[2159], false, 474, IFC4X2_IfcFurnishingElement_type); + IFC4X2_IfcGeographicElement_type = new entity(strings[2160], false, 477, IFC4X2_IfcElement_type); + IFC4X2_IfcGroup_type = new entity(strings[2161], false, 494, IFC4X2_IfcObject_type); + IFC4X2_IfcHeatExchangerType_type = new entity(strings[2162], false, 498, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcHumidifierType_type = new entity(strings[2163], false, 503, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcIndexedPolyCurve_type = new entity(strings[2164], false, 509, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcInterceptorType_type = new entity(strings[2165], false, 518, IFC4X2_IfcFlowTreatmentDeviceType_type); + IFC4X2_IfcIntersectionCurve_type = new entity(strings[2166], false, 521, IFC4X2_IfcSurfaceCurve_type); + IFC4X2_IfcInventory_type = new entity(strings[2167], false, 522, IFC4X2_IfcGroup_type); + IFC4X2_IfcJunctionBoxType_type = new entity(strings[2168], false, 530, IFC4X2_IfcFlowFittingType_type); + IFC4X2_IfcLaborResource_type = new entity(strings[2169], false, 535, IFC4X2_IfcConstructionResource_type); + IFC4X2_IfcLampType_type = new entity(strings[2170], false, 540, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcLightFixtureType_type = new entity(strings[2171], false, 554, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcLineSegment2D_type = new entity(strings[2172], false, 571, IFC4X2_IfcCurveSegment2D_type); + IFC4X2_IfcMechanicalFastener_type = new entity(strings[2173], false, 612, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcMechanicalFastenerType_type = new entity(strings[2174], false, 613, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcMedicalDeviceType_type = new entity(strings[2175], false, 616, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcMemberType_type = new entity(strings[2176], false, 620, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcMotorConnectionType_type = new entity(strings[2177], false, 639, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcOccupant_type = new entity(strings[2178], false, 653, IFC4X2_IfcActor_type); + IFC4X2_IfcOpeningElement_type = new entity(strings[2179], false, 659, IFC4X2_IfcFeatureElementSubtraction_type); + IFC4X2_IfcOpeningStandardCase_type = new entity(strings[2180], false, 661, IFC4X2_IfcOpeningElement_type); + IFC4X2_IfcOutletType_type = new entity(strings[2181], false, 669, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcPerformanceHistory_type = new entity(strings[2182], false, 676, IFC4X2_IfcControl_type); + IFC4X2_IfcPermeableCoveringProperties_type = new entity(strings[2183], false, 679, IFC4X2_IfcPreDefinedPropertySet_type); + IFC4X2_IfcPermit_type = new entity(strings[2184], false, 680, IFC4X2_IfcControl_type); + IFC4X2_IfcPileType_type = new entity(strings[2185], false, 691, IFC4X2_IfcDeepFoundationType_type); + IFC4X2_IfcPipeFittingType_type = new entity(strings[2186], false, 694, IFC4X2_IfcFlowFittingType_type); + IFC4X2_IfcPipeSegmentType_type = new entity(strings[2187], false, 697, IFC4X2_IfcFlowSegmentType_type); + IFC4X2_IfcPlateType_type = new entity(strings[2188], false, 708, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcPolygonalFaceSet_type = new entity(strings[2189], false, 715, IFC4X2_IfcTessellatedFaceSet_type); + IFC4X2_IfcPolyline_type = new entity(strings[2190], false, 716, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcPort_type = new entity(strings[2191], true, 718, IFC4X2_IfcProduct_type); + IFC4X2_IfcPositioningElement_type = new entity(strings[2192], true, 719, IFC4X2_IfcProduct_type); + IFC4X2_IfcProcedure_type = new entity(strings[2193], false, 741, IFC4X2_IfcProcess_type); + IFC4X2_IfcProjectOrder_type = new entity(strings[2194], false, 760, IFC4X2_IfcControl_type); + IFC4X2_IfcProjectionElement_type = new entity(strings[2195], false, 757, IFC4X2_IfcFeatureElementAddition_type); + IFC4X2_IfcProtectiveDeviceType_type = new entity(strings[2196], false, 785, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcPumpType_type = new entity(strings[2197], false, 789, IFC4X2_IfcFlowMovingDeviceType_type); + IFC4X2_IfcRailingType_type = new entity(strings[2198], false, 800, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcRampFlightType_type = new entity(strings[2199], false, 804, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcRampType_type = new entity(strings[2200], false, 806, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2201], false, 810, IFC4X2_IfcBSplineSurfaceWithKnots_type); + IFC4X2_IfcReferent_type = new entity(strings[2202], false, 819, IFC4X2_IfcPositioningElement_type); + IFC4X2_IfcReinforcingElement_type = new entity(strings[2203], true, 830, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcReinforcingElementType_type = new entity(strings[2204], true, 831, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcReinforcingMesh_type = new entity(strings[2205], false, 832, IFC4X2_IfcReinforcingElement_type); + IFC4X2_IfcReinforcingMeshType_type = new entity(strings[2206], false, 833, IFC4X2_IfcReinforcingElementType_type); + IFC4X2_IfcRelAggregates_type = new entity(strings[2207], false, 835, IFC4X2_IfcRelDecomposes_type); + IFC4X2_IfcRoofType_type = new entity(strings[2208], false, 902, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcSanitaryTerminalType_type = new entity(strings[2209], false, 911, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcSeamCurve_type = new entity(strings[2210], false, 914, IFC4X2_IfcSurfaceCurve_type); + IFC4X2_IfcShadingDeviceType_type = new entity(strings[2211], false, 929, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcSite_type = new entity(strings[2212], false, 942, IFC4X2_IfcSpatialStructureElement_type); + IFC4X2_IfcSlabType_type = new entity(strings[2213], false, 949, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcSolarDeviceType_type = new entity(strings[2214], false, 953, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcSpace_type = new entity(strings[2215], false, 962, IFC4X2_IfcSpatialStructureElement_type); + IFC4X2_IfcSpaceHeaterType_type = new entity(strings[2216], false, 965, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcSpaceType_type = new entity(strings[2217], false, 967, IFC4X2_IfcSpatialStructureElementType_type); + IFC4X2_IfcStackTerminalType_type = new entity(strings[2218], false, 983, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcStairFlightType_type = new entity(strings[2219], false, 987, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcStairType_type = new entity(strings[2220], false, 989, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcStructuralAction_type = new entity(strings[2221], true, 992, IFC4X2_IfcStructuralActivity_type); + IFC4X2_IfcStructuralConnection_type = new entity(strings[2222], true, 996, IFC4X2_IfcStructuralItem_type); + IFC4X2_IfcStructuralCurveAction_type = new entity(strings[2223], false, 998, IFC4X2_IfcStructuralAction_type); + IFC4X2_IfcStructuralCurveConnection_type = new entity(strings[2224], false, 1000, IFC4X2_IfcStructuralConnection_type); + IFC4X2_IfcStructuralCurveMember_type = new entity(strings[2225], false, 1001, IFC4X2_IfcStructuralMember_type); + IFC4X2_IfcStructuralCurveMemberVarying_type = new entity(strings[2226], false, 1003, IFC4X2_IfcStructuralCurveMember_type); + IFC4X2_IfcStructuralCurveReaction_type = new entity(strings[2227], false, 1004, IFC4X2_IfcStructuralReaction_type); + IFC4X2_IfcStructuralLinearAction_type = new entity(strings[2228], false, 1006, IFC4X2_IfcStructuralCurveAction_type); + IFC4X2_IfcStructuralLoadGroup_type = new entity(strings[2229], false, 1010, IFC4X2_IfcGroup_type); + IFC4X2_IfcStructuralPointAction_type = new entity(strings[2230], false, 1022, IFC4X2_IfcStructuralAction_type); + IFC4X2_IfcStructuralPointConnection_type = new entity(strings[2231], false, 1023, IFC4X2_IfcStructuralConnection_type); + IFC4X2_IfcStructuralPointReaction_type = new entity(strings[2232], false, 1024, IFC4X2_IfcStructuralReaction_type); + IFC4X2_IfcStructuralResultGroup_type = new entity(strings[2233], false, 1026, IFC4X2_IfcGroup_type); + IFC4X2_IfcStructuralSurfaceAction_type = new entity(strings[2234], false, 1027, IFC4X2_IfcStructuralAction_type); + IFC4X2_IfcStructuralSurfaceConnection_type = new entity(strings[2235], false, 1029, IFC4X2_IfcStructuralConnection_type); + IFC4X2_IfcSubContractResource_type = new entity(strings[2236], false, 1038, IFC4X2_IfcConstructionResource_type); + IFC4X2_IfcSurfaceFeature_type = new entity(strings[2237], false, 1045, IFC4X2_IfcFeatureElement_type); + IFC4X2_IfcSwitchingDeviceType_type = new entity(strings[2238], false, 1065, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcSystem_type = new entity(strings[2239], false, 1067, IFC4X2_IfcGroup_type); + IFC4X2_IfcSystemFurnitureElement_type = new entity(strings[2240], false, 1068, IFC4X2_IfcFurnishingElement_type); + IFC4X2_IfcTankType_type = new entity(strings[2241], false, 1075, IFC4X2_IfcFlowStorageDeviceType_type); + IFC4X2_IfcTendon_type = new entity(strings[2242], false, 1086, IFC4X2_IfcReinforcingElement_type); + IFC4X2_IfcTendonAnchor_type = new entity(strings[2243], false, 1087, IFC4X2_IfcReinforcingElement_type); + IFC4X2_IfcTendonAnchorType_type = new entity(strings[2244], false, 1088, IFC4X2_IfcReinforcingElementType_type); + IFC4X2_IfcTendonConduit_type = new entity(strings[2245], false, 1090, IFC4X2_IfcReinforcingElement_type); + IFC4X2_IfcTendonConduitType_type = new entity(strings[2246], false, 1091, IFC4X2_IfcReinforcingElementType_type); + IFC4X2_IfcTendonType_type = new entity(strings[2247], false, 1093, IFC4X2_IfcReinforcingElementType_type); + IFC4X2_IfcTransformerType_type = new entity(strings[2248], false, 1134, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcTransitionCurveSegment2D_type = new entity(strings[2249], false, 1137, IFC4X2_IfcCurveSegment2D_type); + IFC4X2_IfcTransportElement_type = new entity(strings[2250], false, 1140, IFC4X2_IfcElement_type); + IFC4X2_IfcTrimmedCurve_type = new entity(strings[2251], false, 1146, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcTubeBundleType_type = new entity(strings[2252], false, 1151, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcUnitaryEquipmentType_type = new entity(strings[2253], false, 1162, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcValveType_type = new entity(strings[2254], false, 1170, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcVibrationDamper_type = new entity(strings[2255], false, 1178, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcVibrationDamperType_type = new entity(strings[2256], false, 1179, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcVibrationIsolator_type = new entity(strings[2257], false, 1181, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcVibrationIsolatorType_type = new entity(strings[2258], false, 1182, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcVirtualElement_type = new entity(strings[2259], false, 1184, IFC4X2_IfcElement_type); + IFC4X2_IfcVoidingFeature_type = new entity(strings[2260], false, 1186, IFC4X2_IfcFeatureElementSubtraction_type); + IFC4X2_IfcWallType_type = new entity(strings[2261], false, 1193, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcWasteTerminalType_type = new entity(strings[2262], false, 1199, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcWindowType_type = new entity(strings[2263], false, 1210, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcWorkCalendar_type = new entity(strings[2264], false, 1213, IFC4X2_IfcControl_type); + IFC4X2_IfcWorkControl_type = new entity(strings[2265], true, 1215, IFC4X2_IfcControl_type); + IFC4X2_IfcWorkPlan_type = new entity(strings[2266], false, 1216, IFC4X2_IfcWorkControl_type); + IFC4X2_IfcWorkSchedule_type = new entity(strings[2267], false, 1218, IFC4X2_IfcWorkControl_type); + IFC4X2_IfcZone_type = new entity(strings[2268], false, 1221, IFC4X2_IfcSystem_type); + IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2269], 263, { + IFC4X2_IfcCurveStyleFontAndScaling_type, + IFC4X2_IfcCurveStyleFontSelect_type + }); + IFC4X2_IfcCurveOnSurface_type = new select_type(strings[2270], 265, { + IFC4X2_IfcCompositeCurveOnSurface_type, + IFC4X2_IfcPcurve_type, + IFC4X2_IfcSurfaceCurve_type + }); + IFC4X2_IfcCurveOrEdgeCurve_type = new select_type(strings[2271], 266, { + IFC4X2_IfcBoundedCurve_type, + IFC4X2_IfcEdgeCurve_type + }); + IFC4X2_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2272], 994, { + IFC4X2_IfcElement_type, + IFC4X2_IfcStructuralItem_type + }); + IFC4X2_IfcActionRequest_type = new entity(strings[2273], false, 2, IFC4X2_IfcControl_type); + IFC4X2_IfcAirTerminalBoxType_type = new entity(strings[2274], false, 19, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcAirTerminalType_type = new entity(strings[2275], false, 21, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcAirToAirHeatRecoveryType_type = new entity(strings[2276], false, 24, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcAlignmentCurve_type = new entity(strings[2277], false, 38, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcAsset_type = new entity(strings[2278], false, 59, IFC4X2_IfcGroup_type); + IFC4X2_IfcAudioVisualApplianceType_type = new entity(strings[2279], false, 62, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcBSplineCurve_type = new entity(strings[2280], true, 104, IFC4X2_IfcBoundedCurve_type); + IFC4X2_IfcBSplineCurveWithKnots_type = new entity(strings[2281], false, 106, IFC4X2_IfcBSplineCurve_type); + IFC4X2_IfcBeamType_type = new entity(strings[2282], false, 70, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcBearingType_type = new entity(strings[2283], false, 73, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcBoilerType_type = new entity(strings[2284], false, 82, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcBoundaryCurve_type = new entity(strings[2285], false, 90, IFC4X2_IfcCompositeCurveOnSurface_type); + IFC4X2_IfcBridge_type = new entity(strings[2286], false, 100, IFC4X2_IfcFacility_type); + IFC4X2_IfcBridgePart_type = new entity(strings[2287], false, 101, IFC4X2_IfcFacilityPart_type); + IFC4X2_IfcBuilding_type = new entity(strings[2288], false, 110, IFC4X2_IfcFacility_type); + IFC4X2_IfcBuildingElement_type = new entity(strings[2289], true, 111, IFC4X2_IfcElement_type); + IFC4X2_IfcBuildingElementPart_type = new entity(strings[2290], false, 112, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcBuildingElementPartType_type = new entity(strings[2291], false, 113, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcBuildingElementProxy_type = new entity(strings[2292], false, 115, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcBuildingElementProxyType_type = new entity(strings[2293], false, 116, IFC4X2_IfcBuildingElementType_type); + IFC4X2_IfcBuildingStorey_type = new entity(strings[2294], false, 119, IFC4X2_IfcFacilityPart_type); + IFC4X2_IfcBuildingSystem_type = new entity(strings[2295], false, 120, IFC4X2_IfcSystem_type); + IFC4X2_IfcBurnerType_type = new entity(strings[2296], false, 123, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcCableCarrierFittingType_type = new entity(strings[2297], false, 126, IFC4X2_IfcFlowFittingType_type); + IFC4X2_IfcCableCarrierSegmentType_type = new entity(strings[2298], false, 129, IFC4X2_IfcFlowSegmentType_type); + IFC4X2_IfcCableFittingType_type = new entity(strings[2299], false, 132, IFC4X2_IfcFlowFittingType_type); + IFC4X2_IfcCableSegmentType_type = new entity(strings[2300], false, 135, IFC4X2_IfcFlowSegmentType_type); + IFC4X2_IfcCaissonFoundationType_type = new entity(strings[2301], false, 138, IFC4X2_IfcDeepFoundationType_type); + IFC4X2_IfcChillerType_type = new entity(strings[2302], false, 153, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcChimney_type = new entity(strings[2303], false, 155, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcCircle_type = new entity(strings[2304], false, 158, IFC4X2_IfcConic_type); + IFC4X2_IfcCircularArcSegment2D_type = new entity(strings[2305], false, 161, IFC4X2_IfcCurveSegment2D_type); + IFC4X2_IfcCivilElement_type = new entity(strings[2306], false, 162, IFC4X2_IfcElement_type); + IFC4X2_IfcCoilType_type = new entity(strings[2307], false, 170, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcColumn_type = new entity(strings[2308], false, 177, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcColumnStandardCase_type = new entity(strings[2309], false, 178, IFC4X2_IfcColumn_type); + IFC4X2_IfcCommunicationsApplianceType_type = new entity(strings[2310], false, 182, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcCompressorType_type = new entity(strings[2311], false, 194, IFC4X2_IfcFlowMovingDeviceType_type); + IFC4X2_IfcCondenserType_type = new entity(strings[2312], false, 197, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcConstructionEquipmentResource_type = new entity(strings[2313], false, 210, IFC4X2_IfcConstructionResource_type); + IFC4X2_IfcConstructionMaterialResource_type = new entity(strings[2314], false, 213, IFC4X2_IfcConstructionResource_type); + IFC4X2_IfcConstructionProductResource_type = new entity(strings[2315], false, 216, IFC4X2_IfcConstructionResource_type); + IFC4X2_IfcCooledBeamType_type = new entity(strings[2316], false, 231, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcCoolingTowerType_type = new entity(strings[2317], false, 234, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcCovering_type = new entity(strings[2318], false, 245, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcCurtainWall_type = new entity(strings[2319], false, 256, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcDamperType_type = new entity(strings[2320], false, 275, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcDeepFoundation_type = new entity(strings[2321], false, 282, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcDiscreteAccessory_type = new entity(strings[2322], false, 295, IFC4X2_IfcElementComponent_type); + IFC4X2_IfcDiscreteAccessoryType_type = new entity(strings[2323], false, 296, IFC4X2_IfcElementComponentType_type); + IFC4X2_IfcDistributionChamberElementType_type = new entity(strings[2324], false, 300, IFC4X2_IfcDistributionFlowElementType_type); + IFC4X2_IfcDistributionControlElementType_type = new entity(strings[2325], true, 304, IFC4X2_IfcDistributionElementType_type); + IFC4X2_IfcDistributionElement_type = new entity(strings[2326], false, 305, IFC4X2_IfcElement_type); + IFC4X2_IfcDistributionFlowElement_type = new entity(strings[2327], false, 307, IFC4X2_IfcDistributionElement_type); + IFC4X2_IfcDistributionPort_type = new entity(strings[2328], false, 309, IFC4X2_IfcPort_type); + IFC4X2_IfcDistributionSystem_type = new entity(strings[2329], false, 311, IFC4X2_IfcSystem_type); + IFC4X2_IfcDoor_type = new entity(strings[2330], false, 319, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcDoorStandardCase_type = new entity(strings[2331], false, 324, IFC4X2_IfcDoor_type); + IFC4X2_IfcDuctFittingType_type = new entity(strings[2332], false, 335, IFC4X2_IfcFlowFittingType_type); + IFC4X2_IfcDuctSegmentType_type = new entity(strings[2333], false, 338, IFC4X2_IfcFlowSegmentType_type); + IFC4X2_IfcDuctSilencerType_type = new entity(strings[2334], false, 341, IFC4X2_IfcFlowTreatmentDeviceType_type); + IFC4X2_IfcElectricApplianceType_type = new entity(strings[2335], false, 349, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcElectricDistributionBoardType_type = new entity(strings[2336], false, 356, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcElectricFlowStorageDeviceType_type = new entity(strings[2337], false, 359, IFC4X2_IfcFlowStorageDeviceType_type); + IFC4X2_IfcElectricGeneratorType_type = new entity(strings[2338], false, 362, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcElectricMotorType_type = new entity(strings[2339], false, 365, IFC4X2_IfcEnergyConversionDeviceType_type); + IFC4X2_IfcElectricTimeControlType_type = new entity(strings[2340], false, 369, IFC4X2_IfcFlowControllerType_type); + IFC4X2_IfcEnergyConversionDevice_type = new entity(strings[2341], false, 384, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcEngine_type = new entity(strings[2342], false, 387, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcEvaporativeCooler_type = new entity(strings[2343], false, 390, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcEvaporator_type = new entity(strings[2344], false, 393, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcExternalSpatialElement_type = new entity(strings[2345], false, 408, IFC4X2_IfcExternalSpatialStructureElement_type); + IFC4X2_IfcFanType_type = new entity(strings[2346], false, 424, IFC4X2_IfcFlowMovingDeviceType_type); + IFC4X2_IfcFilterType_type = new entity(strings[2347], false, 437, IFC4X2_IfcFlowTreatmentDeviceType_type); + IFC4X2_IfcFireSuppressionTerminalType_type = new entity(strings[2348], false, 440, IFC4X2_IfcFlowTerminalType_type); + IFC4X2_IfcFlowController_type = new entity(strings[2349], false, 443, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFlowFitting_type = new entity(strings[2350], false, 446, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFlowInstrumentType_type = new entity(strings[2351], false, 449, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcFlowMeter_type = new entity(strings[2352], false, 451, IFC4X2_IfcFlowController_type); + IFC4X2_IfcFlowMovingDevice_type = new entity(strings[2353], false, 454, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFlowSegment_type = new entity(strings[2354], false, 456, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFlowStorageDevice_type = new entity(strings[2355], false, 458, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFlowTerminal_type = new entity(strings[2356], false, 460, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFlowTreatmentDevice_type = new entity(strings[2357], false, 462, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcFooting_type = new entity(strings[2358], false, 467, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcGrid_type = new entity(strings[2359], false, 489, IFC4X2_IfcPositioningElement_type); + IFC4X2_IfcHeatExchanger_type = new entity(strings[2360], false, 497, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcHumidifier_type = new entity(strings[2361], false, 502, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcInterceptor_type = new entity(strings[2362], false, 517, IFC4X2_IfcFlowTreatmentDevice_type); + IFC4X2_IfcJunctionBox_type = new entity(strings[2363], false, 529, IFC4X2_IfcFlowFitting_type); + IFC4X2_IfcLamp_type = new entity(strings[2364], false, 539, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcLightFixture_type = new entity(strings[2365], false, 553, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcLinearPositioningElement_type = new entity(strings[2366], false, 567, IFC4X2_IfcPositioningElement_type); + IFC4X2_IfcMedicalDevice_type = new entity(strings[2367], false, 615, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcMember_type = new entity(strings[2368], false, 618, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcMemberStandardCase_type = new entity(strings[2369], false, 619, IFC4X2_IfcMember_type); + IFC4X2_IfcMotorConnection_type = new entity(strings[2370], false, 638, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcOuterBoundaryCurve_type = new entity(strings[2371], false, 667, IFC4X2_IfcBoundaryCurve_type); + IFC4X2_IfcOutlet_type = new entity(strings[2372], false, 668, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcPile_type = new entity(strings[2373], false, 689, IFC4X2_IfcDeepFoundation_type); + IFC4X2_IfcPipeFitting_type = new entity(strings[2374], false, 693, IFC4X2_IfcFlowFitting_type); + IFC4X2_IfcPipeSegment_type = new entity(strings[2375], false, 696, IFC4X2_IfcFlowSegment_type); + IFC4X2_IfcPlate_type = new entity(strings[2376], false, 706, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcPlateStandardCase_type = new entity(strings[2377], false, 707, IFC4X2_IfcPlate_type); + IFC4X2_IfcProtectiveDevice_type = new entity(strings[2378], false, 781, IFC4X2_IfcFlowController_type); + IFC4X2_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2379], false, 783, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcPump_type = new entity(strings[2380], false, 788, IFC4X2_IfcFlowMovingDevice_type); + IFC4X2_IfcRailing_type = new entity(strings[2381], false, 799, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcRamp_type = new entity(strings[2382], false, 802, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcRampFlight_type = new entity(strings[2383], false, 803, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2384], false, 809, IFC4X2_IfcBSplineCurveWithKnots_type); + IFC4X2_IfcReinforcingBar_type = new entity(strings[2385], false, 825, IFC4X2_IfcReinforcingElement_type); + IFC4X2_IfcReinforcingBarType_type = new entity(strings[2386], false, 828, IFC4X2_IfcReinforcingElementType_type); + IFC4X2_IfcRoof_type = new entity(strings[2387], false, 901, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcSanitaryTerminal_type = new entity(strings[2388], false, 910, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcSensorType_type = new entity(strings[2389], false, 925, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcShadingDevice_type = new entity(strings[2390], false, 928, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcSlab_type = new entity(strings[2391], false, 946, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcSlabElementedCase_type = new entity(strings[2392], false, 947, IFC4X2_IfcSlab_type); + IFC4X2_IfcSlabStandardCase_type = new entity(strings[2393], false, 948, IFC4X2_IfcSlab_type); + IFC4X2_IfcSolarDevice_type = new entity(strings[2394], false, 952, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcSpaceHeater_type = new entity(strings[2395], false, 964, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcStackTerminal_type = new entity(strings[2396], false, 982, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcStair_type = new entity(strings[2397], false, 985, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcStairFlight_type = new entity(strings[2398], false, 986, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcStructuralAnalysisModel_type = new entity(strings[2399], false, 995, IFC4X2_IfcSystem_type); + IFC4X2_IfcStructuralLoadCase_type = new entity(strings[2400], false, 1008, IFC4X2_IfcStructuralLoadGroup_type); + IFC4X2_IfcStructuralPlanarAction_type = new entity(strings[2401], false, 1021, IFC4X2_IfcStructuralSurfaceAction_type); + IFC4X2_IfcSwitchingDevice_type = new entity(strings[2402], false, 1064, IFC4X2_IfcFlowController_type); + IFC4X2_IfcTank_type = new entity(strings[2403], false, 1074, IFC4X2_IfcFlowStorageDevice_type); + IFC4X2_IfcTransformer_type = new entity(strings[2404], false, 1133, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcTubeBundle_type = new entity(strings[2405], false, 1150, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcUnitaryControlElementType_type = new entity(strings[2406], false, 1159, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcUnitaryEquipment_type = new entity(strings[2407], false, 1161, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcValve_type = new entity(strings[2408], false, 1169, IFC4X2_IfcFlowController_type); + IFC4X2_IfcWall_type = new entity(strings[2409], false, 1190, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcWallElementedCase_type = new entity(strings[2410], false, 1191, IFC4X2_IfcWall_type); + IFC4X2_IfcWallStandardCase_type = new entity(strings[2411], false, 1192, IFC4X2_IfcWall_type); + IFC4X2_IfcWasteTerminal_type = new entity(strings[2412], false, 1198, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcWindow_type = new entity(strings[2413], false, 1201, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcWindowStandardCase_type = new entity(strings[2414], false, 1206, IFC4X2_IfcWindow_type); + IFC4X2_IfcSpaceBoundarySelect_type = new select_type(strings[2415], 963, { + IFC4X2_IfcExternalSpatialElement_type, + IFC4X2_IfcSpace_type + }); + IFC4X2_IfcActuatorType_type = new entity(strings[2416], false, 10, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcAirTerminal_type = new entity(strings[2417], false, 17, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcAirTerminalBox_type = new entity(strings[2418], false, 18, IFC4X2_IfcFlowController_type); + IFC4X2_IfcAirToAirHeatRecovery_type = new entity(strings[2419], false, 23, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcAlarmType_type = new entity(strings[2420], false, 27, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcAlignment_type = new entity(strings[2421], false, 29, IFC4X2_IfcLinearPositioningElement_type); + IFC4X2_IfcAudioVisualAppliance_type = new entity(strings[2422], false, 61, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcBeam_type = new entity(strings[2423], false, 68, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcBeamStandardCase_type = new entity(strings[2424], false, 69, IFC4X2_IfcBeam_type); + IFC4X2_IfcBearing_type = new entity(strings[2425], false, 72, IFC4X2_IfcBuildingElement_type); + IFC4X2_IfcBoiler_type = new entity(strings[2426], false, 81, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcBurner_type = new entity(strings[2427], false, 122, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcCableCarrierFitting_type = new entity(strings[2428], false, 125, IFC4X2_IfcFlowFitting_type); + IFC4X2_IfcCableCarrierSegment_type = new entity(strings[2429], false, 128, IFC4X2_IfcFlowSegment_type); + IFC4X2_IfcCableFitting_type = new entity(strings[2430], false, 131, IFC4X2_IfcFlowFitting_type); + IFC4X2_IfcCableSegment_type = new entity(strings[2431], false, 134, IFC4X2_IfcFlowSegment_type); + IFC4X2_IfcCaissonFoundation_type = new entity(strings[2432], false, 137, IFC4X2_IfcDeepFoundation_type); + IFC4X2_IfcChiller_type = new entity(strings[2433], false, 152, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcCoil_type = new entity(strings[2434], false, 169, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcCommunicationsAppliance_type = new entity(strings[2435], false, 181, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcCompressor_type = new entity(strings[2436], false, 193, IFC4X2_IfcFlowMovingDevice_type); + IFC4X2_IfcCondenser_type = new entity(strings[2437], false, 196, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcControllerType_type = new entity(strings[2438], false, 226, IFC4X2_IfcDistributionControlElementType_type); + IFC4X2_IfcCooledBeam_type = new entity(strings[2439], false, 230, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcCoolingTower_type = new entity(strings[2440], false, 233, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcDamper_type = new entity(strings[2441], false, 274, IFC4X2_IfcFlowController_type); + IFC4X2_IfcDistributionChamberElement_type = new entity(strings[2442], false, 299, IFC4X2_IfcDistributionFlowElement_type); + IFC4X2_IfcDistributionCircuit_type = new entity(strings[2443], false, 302, IFC4X2_IfcDistributionSystem_type); + IFC4X2_IfcDistributionControlElement_type = new entity(strings[2444], false, 303, IFC4X2_IfcDistributionElement_type); + IFC4X2_IfcDuctFitting_type = new entity(strings[2445], false, 334, IFC4X2_IfcFlowFitting_type); + IFC4X2_IfcDuctSegment_type = new entity(strings[2446], false, 337, IFC4X2_IfcFlowSegment_type); + IFC4X2_IfcDuctSilencer_type = new entity(strings[2447], false, 340, IFC4X2_IfcFlowTreatmentDevice_type); + IFC4X2_IfcElectricAppliance_type = new entity(strings[2448], false, 348, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcElectricDistributionBoard_type = new entity(strings[2449], false, 355, IFC4X2_IfcFlowController_type); + IFC4X2_IfcElectricFlowStorageDevice_type = new entity(strings[2450], false, 358, IFC4X2_IfcFlowStorageDevice_type); + IFC4X2_IfcElectricGenerator_type = new entity(strings[2451], false, 361, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcElectricMotor_type = new entity(strings[2452], false, 364, IFC4X2_IfcEnergyConversionDevice_type); + IFC4X2_IfcElectricTimeControl_type = new entity(strings[2453], false, 368, IFC4X2_IfcFlowController_type); + IFC4X2_IfcFan_type = new entity(strings[2454], false, 423, IFC4X2_IfcFlowMovingDevice_type); + IFC4X2_IfcFilter_type = new entity(strings[2455], false, 436, IFC4X2_IfcFlowTreatmentDevice_type); + IFC4X2_IfcFireSuppressionTerminal_type = new entity(strings[2456], false, 439, IFC4X2_IfcFlowTerminal_type); + IFC4X2_IfcFlowInstrument_type = new entity(strings[2457], false, 448, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2458], false, 782, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcSensor_type = new entity(strings[2459], false, 924, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcUnitaryControlElement_type = new entity(strings[2460], false, 1158, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcActuator_type = new entity(strings[2461], false, 9, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcAlarm_type = new entity(strings[2462], false, 26, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcController_type = new entity(strings[2463], false, 225, IFC4X2_IfcDistributionControlElement_type); + IFC4X2_IfcActionRequest_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2465], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcActor_type->set_attributes({ + new attribute(strings[2467], new named_type(IFC4X2_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcActorRole_type->set_attributes({ + new attribute(strings[2468], new named_type(IFC4X2_IfcRoleEnum_type), false), + new attribute(strings[2469], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false + }); + IFC4X2_IfcActuator_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcActuatorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAddress_type->set_attributes({ + new attribute(strings[2471], new named_type(IFC4X2_IfcAddressTypeEnum_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2472], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2473], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X2_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAlarm_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAlarmType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAlignment_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAlignment2DHorizontal_type->set_attributes({ + new attribute(strings[2474], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2475], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAlignment2DHorizontalSegment_type)), false) + },{ + false, false + }); + IFC4X2_IfcAlignment2DHorizontalSegment_type->set_attributes({ + new attribute(strings[2476], new named_type(IFC4X2_IfcCurveSegment2D_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcAlignment2DSegment_type->set_attributes({ + new attribute(strings[2477], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[2478], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2479], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcAlignment2DVerSegCircularArc_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2481], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAlignment2DVerSegLine_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcAlignment2DVerSegParabolicArc_type->set_attributes({ + new attribute(strings[2482], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2481], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAlignment2DVertical_type->set_attributes({ + new attribute(strings[2475], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAlignment2DVerticalSegment_type)), false) + },{ + false + }); + IFC4X2_IfcAlignment2DVerticalSegment_type->set_attributes({ + new attribute(strings[2474], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2483], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2484], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2485], new named_type(IFC4X2_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcAlignmentCurve_type->set_attributes({ + new attribute(strings[2486], new named_type(IFC4X2_IfcAlignment2DHorizontal_type), false), + new attribute(strings[2487], new named_type(IFC4X2_IfcAlignment2DVertical_type), true), + new attribute(strings[2488], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcAnnotation_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2489], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2490], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X2_IfcApplication_type->set_attributes({ + new attribute(strings[2491], new named_type(IFC4X2_IfcOrganization_type), false), + new attribute(strings[2492], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2493], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2494], new named_type(IFC4X2_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2496], new named_type(IFC4X2_IfcAppliedValueSelect_type), true), + new attribute(strings[2497], new named_type(IFC4X2_IfcMeasureWithUnit_type), true), + new attribute(strings[2498], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2499], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2500], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2501], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2502], new named_type(IFC4X2_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2503], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcApproval_type->set_attributes({ + new attribute(strings[2504], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2505], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2465], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2506], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2507], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2508], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2509], new named_type(IFC4X2_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2510], new named_type(IFC4X2_IfcApproval_type), false), + new attribute(strings[2511], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2512], new named_type(IFC4X2_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X2_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2513], new named_type(IFC4X2_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X2_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2514], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcAsset_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2516], new named_type(IFC4X2_IfcCostValue_type), true), + new attribute(strings[2517], new named_type(IFC4X2_IfcCostValue_type), true), + new attribute(strings[2518], new named_type(IFC4X2_IfcCostValue_type), true), + new attribute(strings[2519], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2520], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2521], new named_type(IFC4X2_IfcPerson_type), true), + new attribute(strings[2522], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2523], new named_type(IFC4X2_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2524], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2525], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2526], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2527], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2528], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2529], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2530], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2531], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2532], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2533], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2534], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2535], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2536], new named_type(IFC4X2_IfcDirection_type), true) + },{ + false, false + }); + IFC4X2_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2537], new named_type(IFC4X2_IfcDirection_type), true) + },{ + false, false + }); + IFC4X2_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2536], new named_type(IFC4X2_IfcDirection_type), true), + new attribute(strings[2537], new named_type(IFC4X2_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X2_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2538], new named_type(IFC4X2_IfcInteger_type), false), + new attribute(strings[2539], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcCartesianPoint_type)), false), + new attribute(strings[2540], new named_type(IFC4X2_IfcBSplineCurveForm_type), false), + new attribute(strings[2541], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2542], new named_type(IFC4X2_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2543], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcInteger_type)), false), + new attribute(strings[2544], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcParameterValue_type)), false), + new attribute(strings[2545], new named_type(IFC4X2_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2546], new named_type(IFC4X2_IfcInteger_type), false), + new attribute(strings[2547], new named_type(IFC4X2_IfcInteger_type), false), + new attribute(strings[2539], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcCartesianPoint_type))), false), + new attribute(strings[2548], new named_type(IFC4X2_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2549], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2550], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2542], new named_type(IFC4X2_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2551], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcInteger_type)), false), + new attribute(strings[2552], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcInteger_type)), false), + new attribute(strings[2553], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcParameterValue_type)), false), + new attribute(strings[2554], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcParameterValue_type)), false), + new attribute(strings[2545], new named_type(IFC4X2_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBeam_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBeamType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBearing_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBearingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBearingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBearingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2555], new named_type(IFC4X2_IfcIdentifier_type), false), + new attribute(strings[2556], new named_type(IFC4X2_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcBlock_type->set_attributes({ + new attribute(strings[2557], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2558], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2559], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcBoiler_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBoilerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2560], new named_type(IFC4X2_IfcBooleanOperator_type), false), + new attribute(strings[2561], new named_type(IFC4X2_IfcBooleanOperand_type), false), + new attribute(strings[2562], new named_type(IFC4X2_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X2_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false + }); + IFC4X2_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X2_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2563], new named_type(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2564], new named_type(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2565], new named_type(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2566], new named_type(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2567], new named_type(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2568], new named_type(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2569], new named_type(IFC4X2_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2570], new named_type(IFC4X2_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2571], new named_type(IFC4X2_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2572], new named_type(IFC4X2_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2573], new named_type(IFC4X2_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2574], new named_type(IFC4X2_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2575], new named_type(IFC4X2_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2576], new named_type(IFC4X2_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2577], new named_type(IFC4X2_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2578], new named_type(IFC4X2_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X2_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X2_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2579], new named_type(IFC4X2_IfcCartesianPoint_type), false), + new attribute(strings[2580], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2581], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2582], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2583], new named_type(IFC4X2_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X2_IfcBridge_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBridgeTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBridgePart_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBridgePartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuilding_type->set_attributes({ + new attribute(strings[2584], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2585], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2586], new named_type(IFC4X2_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2587], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcBurner_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcBurnerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2589], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2590], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2591], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2592], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2593], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableFitting_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableSegment_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCaissonFoundation_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCaissonFoundationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCaissonFoundationType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCaissonFoundationTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2594], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X2_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X2_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2595], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcLengthMeasure_type))), false), + new attribute(strings[2596], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X2_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2595], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcLengthMeasure_type))), false), + new attribute(strings[2596], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X2_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2597], new named_type(IFC4X2_IfcDirection_type), true), + new attribute(strings[2598], new named_type(IFC4X2_IfcDirection_type), true), + new attribute(strings[2599], new named_type(IFC4X2_IfcCartesianPoint_type), false), + new attribute(strings[2600], new named_type(IFC4X2_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2601], new named_type(IFC4X2_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2602], new named_type(IFC4X2_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2601], new named_type(IFC4X2_IfcReal_type), true), + new attribute(strings[2603], new named_type(IFC4X2_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2604], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcChiller_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcChillerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcChimney_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcChimneyType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCircle_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2591], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcCircularArcSegment2D_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2605], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcClassification_type->set_attributes({ + new attribute(strings[2606], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2607], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2608], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2609], new named_type(IFC4X2_IfcURIReference_type), true), + new attribute(strings[2610], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcClassificationReference_type->set_attributes({ + new attribute(strings[2611], new named_type(IFC4X2_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2612], new named_type(IFC4X2_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcCoil_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCoilType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcColourRgb_type->set_attributes({ + new attribute(strings[2613], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2614], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2615], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcColourRgbList_type->set_attributes({ + new attribute(strings[2616], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X2_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false + }); + IFC4X2_IfcColumn_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcColumnType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcComplexProperty_type->set_attributes({ + new attribute(strings[2617], new named_type(IFC4X2_IfcIdentifier_type), false), + new attribute(strings[2618], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[2617], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2619], new named_type(IFC4X2_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[2620], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[2475], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcCompositeCurveSegment_type)), false), + new attribute(strings[2542], new named_type(IFC4X2_IfcLogical_type), false) + },{ + false, false + }); + IFC4X2_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X2_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[2621], new named_type(IFC4X2_IfcTransitionCode_type), false), + new attribute(strings[2622], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[2623], new named_type(IFC4X2_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X2_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[2624], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X2_IfcProfileDef_type)), false), + new attribute(strings[2625], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcCompressor_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCompressorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCondenser_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCondenserType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConic_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X2_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[2627], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcFace_type)), false) + },{ + false + }); + IFC4X2_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[2628], new named_type(IFC4X2_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[2629], new named_type(IFC4X2_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X2_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X2_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[2630], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2631], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2632], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[2633], new named_type(IFC4X2_IfcPointOrVertexPoint_type), false), + new attribute(strings[2634], new named_type(IFC4X2_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X2_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[2635], new named_type(IFC4X2_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[2636], new named_type(IFC4X2_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X2_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[2637], new named_type(IFC4X2_IfcSolidOrShell_type), false), + new attribute(strings[2638], new named_type(IFC4X2_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X2_IfcConstraint_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2639], new named_type(IFC4X2_IfcConstraintEnum_type), false), + new attribute(strings[2640], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2641], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2642], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2643], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionResource_type->set_attributes({ + new attribute(strings[2644], new named_type(IFC4X2_IfcResourceTime_type), true), + new attribute(strings[2645], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAppliedValue_type)), true), + new attribute(strings[2646], new named_type(IFC4X2_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[2645], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAppliedValue_type)), true), + new attribute(strings[2646], new named_type(IFC4X2_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcContext_type->set_attributes({ + new attribute(strings[2647], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2648], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2649], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcRepresentationContext_type)), true), + new attribute(strings[2650], new named_type(IFC4X2_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X2_IfcControl_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcController_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcControllerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2651], new named_type(IFC4X2_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[2652], new named_type(IFC4X2_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[2653], new named_type(IFC4X2_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[2654], new named_type(IFC4X2_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X2_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2655], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2656], new named_type(IFC4X2_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcCostItem_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCostItemTypeEnum_type), true), + new attribute(strings[2657], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcCostValue_type)), true), + new attribute(strings[2658], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2465], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2659], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2660], new named_type(IFC4X2_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCovering_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCoveringType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCrewResource_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X2_IfcCsgSolid_type->set_attributes({ + new attribute(strings[2661], new named_type(IFC4X2_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X2_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[2662], new named_type(IFC4X2_IfcMonetaryUnit_type), false), + new attribute(strings[2663], new named_type(IFC4X2_IfcMonetaryUnit_type), false), + new attribute(strings[2664], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), false), + new attribute(strings[2665], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2666], new named_type(IFC4X2_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X2_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[2667], new named_type(IFC4X2_IfcPlane_type), false), + new attribute(strings[2489], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2490], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X2_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X2_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[2667], new named_type(IFC4X2_IfcSurface_type), false), + new attribute(strings[2668], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcBoundaryCurve_type)), false), + new attribute(strings[2669], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X2_IfcCurveSegment2D_type->set_attributes({ + new attribute(strings[2670], new named_type(IFC4X2_IfcCartesianPoint_type), false), + new attribute(strings[2671], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2672], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcCurveStyle_type->set_attributes({ + new attribute(strings[2673], new named_type(IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[2674], new named_type(IFC4X2_IfcSizeSelect_type), true), + new attribute(strings[2675], new named_type(IFC4X2_IfcColour_type), true), + new attribute(strings[2676], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2677], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X2_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2673], new named_type(IFC4X2_IfcCurveStyleFontSelect_type), false), + new attribute(strings[2678], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[2679], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2680], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcDamper_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDamperType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDeepFoundation_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDeepFoundationType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[2681], new named_type(IFC4X2_IfcProfileDef_type), false), + new attribute(strings[2560], new named_type(IFC4X2_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[2625], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[2682], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDerivedUnitElement_type)), false), + new attribute(strings[2683], new named_type(IFC4X2_IfcDerivedUnitEnum_type), false), + new attribute(strings[2684], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[2685], new named_type(IFC4X2_IfcNamedUnit_type), false), + new attribute(strings[2686], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X2_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[2687], new simple_type(simple_type::integer_type), false), + new attribute(strings[2688], new simple_type(simple_type::integer_type), false), + new attribute(strings[2689], new simple_type(simple_type::integer_type), false), + new attribute(strings[2690], new simple_type(simple_type::integer_type), false), + new attribute(strings[2691], new simple_type(simple_type::integer_type), false), + new attribute(strings[2692], new simple_type(simple_type::integer_type), false), + new attribute(strings[2693], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcDirection_type->set_attributes({ + new attribute(strings[2694], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcReal_type)), false) + },{ + false + }); + IFC4X2_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistanceExpression_type->set_attributes({ + new attribute(strings[2695], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2696], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2697], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2698], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2699], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionPort_type->set_attributes({ + new attribute(strings[2700], new named_type(IFC4X2_IfcFlowDirectionEnum_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[2701], new named_type(IFC4X2_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), false), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2609], new named_type(IFC4X2_IfcURIReference_type), true), + new attribute(strings[2471], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2702], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2703], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2704], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2705], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2706], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcActorSelect_type)), true), + new attribute(strings[2642], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2707], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2708], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2709], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2710], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2711], new named_type(IFC4X2_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2465], new named_type(IFC4X2_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[2712], new named_type(IFC4X2_IfcDocumentInformation_type), false), + new attribute(strings[2713], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDocumentInformation_type)), false), + new attribute(strings[2714], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2715], new named_type(IFC4X2_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcDoor_type->set_attributes({ + new attribute(strings[2716], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2717], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcDoorTypeEnum_type), true), + new attribute(strings[2718], new named_type(IFC4X2_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[2719], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[2720], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2721], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2722], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2723], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2724], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2725], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2726], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2727], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2728], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2729], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2730], new named_type(IFC4X2_IfcShapeAspect_type), true), + new attribute(strings[2731], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2732], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[2733], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2734], new named_type(IFC4X2_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[2735], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2736], new named_type(IFC4X2_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[2730], new named_type(IFC4X2_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDoorStyle_type->set_attributes({ + new attribute(strings[2718], new named_type(IFC4X2_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[2737], new named_type(IFC4X2_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[2738], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[2739], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDoorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDoorTypeEnum_type), false), + new attribute(strings[2718], new named_type(IFC4X2_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[2738], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[2719], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEdge_type->set_attributes({ + new attribute(strings[2740], new named_type(IFC4X2_IfcVertex_type), false), + new attribute(strings[2741], new named_type(IFC4X2_IfcVertex_type), false) + },{ + false, false + }); + IFC4X2_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[2742], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2622], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[2743], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X2_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElement_type->set_attributes({ + new attribute(strings[2488], new named_type(IFC4X2_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElementAssembly_type->set_attributes({ + new attribute(strings[2744], new named_type(IFC4X2_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElementQuantity_type->set_attributes({ + new attribute(strings[2745], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2746], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcElementType_type->set_attributes({ + new attribute(strings[2747], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcElementarySurface_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X2_IfcEllipse_type->set_attributes({ + new attribute(strings[2748], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2749], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[2748], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2749], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEngine_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEngineType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEvaporator_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEvent_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEventTypeEnum_type), true), + new attribute(strings[2750], new named_type(IFC4X2_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[2751], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2752], new named_type(IFC4X2_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcEventTime_type->set_attributes({ + new attribute(strings[2753], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2754], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2755], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2756], new named_type(IFC4X2_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcEventType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcEventTypeEnum_type), false), + new attribute(strings[2750], new named_type(IFC4X2_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[2751], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2757], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X2_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X2_IfcExternalReference_type->set_attributes({ + new attribute(strings[2609], new named_type(IFC4X2_IfcURIReference_type), true), + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[2758], new named_type(IFC4X2_IfcExternalReference_type), false), + new attribute(strings[2759], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[2760], new named_type(IFC4X2_IfcDirection_type), false), + new attribute(strings[2589], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[2761], new named_type(IFC4X2_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcFace_type->set_attributes({ + new attribute(strings[2762], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X2_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[2763], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X2_IfcFaceBound_type->set_attributes({ + new attribute(strings[2764], new named_type(IFC4X2_IfcLoop_type), false), + new attribute(strings[2765], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X2_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X2_IfcFaceSurface_type->set_attributes({ + new attribute(strings[2766], new named_type(IFC4X2_IfcSurface_type), false), + new attribute(strings[2622], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X2_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2473], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X2_IfcFacility_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFacilityPart_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[2767], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[2768], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[2769], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[2770], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[2771], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[2772], new named_type(IFC4X2_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcFan_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFanType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFastener_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFastenerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[2773], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcFillStyleSelect_type)), false), + new attribute(strings[2774], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X2_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[2775], new named_type(IFC4X2_IfcCurveStyle_type), false), + new attribute(strings[2776], new named_type(IFC4X2_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[2777], new named_type(IFC4X2_IfcCartesianPoint_type), true), + new attribute(strings[2778], new named_type(IFC4X2_IfcCartesianPoint_type), true), + new attribute(strings[2779], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[2780], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcVector_type)), false), + new attribute(strings[2781], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStyledItem_type)), false), + new attribute(strings[2782], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcFilter_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFilterType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[2783], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2784], new named_type(IFC4X2_IfcParameterValue_type), true), + new attribute(strings[2785], new named_type(IFC4X2_IfcParameterValue_type), true), + new attribute(strings[2786], new named_type(IFC4X2_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFooting_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFootingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFurniture_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcFurnitureType_type->set_attributes({ + new attribute(strings[2744], new named_type(IFC4X2_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2464], new named_type(IFC4X2_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[2787], new named_type(IFC4X2_IfcDimensionCount_type), false), + new attribute(strings[2788], new named_type(IFC4X2_IfcReal_type), true), + new attribute(strings[2789], new named_type(IFC4X2_IfcAxis2Placement_type), false), + new attribute(strings[2790], new named_type(IFC4X2_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X2_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[2791], new named_type(IFC4X2_IfcGeometricRepresentationContext_type), false), + new attribute(strings[2792], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[2793], new named_type(IFC4X2_IfcGeometricProjectionEnum_type), false), + new attribute(strings[2794], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X2_IfcGeometricSet_type->set_attributes({ + new attribute(strings[2682], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X2_IfcGrid_type->set_attributes({ + new attribute(strings[2795], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcGridAxis_type)), false), + new attribute(strings[2796], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcGridAxis_type)), false), + new attribute(strings[2797], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcGridAxis_type)), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcGridAxis_type->set_attributes({ + new attribute(strings[2798], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2799], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2622], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X2_IfcGridPlacement_type->set_attributes({ + new attribute(strings[2800], new named_type(IFC4X2_IfcVirtualGridIntersection_type), false), + new attribute(strings[2801], new named_type(IFC4X2_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false, false + }); + IFC4X2_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X2_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[2802], new named_type(IFC4X2_IfcSurface_type), false), + new attribute(strings[2803], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X2_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcHumidifier_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[2717], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2525], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2526], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2804], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2805], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2806], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2807], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcImageTexture_type->set_attributes({ + new attribute(strings[2808], new named_type(IFC4X2_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[2809], new named_type(IFC4X2_IfcTessellatedFaceSet_type), false), + new attribute(strings[2810], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2811], new named_type(IFC4X2_IfcColourRgbList_type), false), + new attribute(strings[2812], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[2813], new named_type(IFC4X2_IfcCartesianPointList_type), false), + new attribute(strings[2475], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2542], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X2_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[2814], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X2_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[2815], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X2_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[2809], new named_type(IFC4X2_IfcTessellatedFaceSet_type), false), + new attribute(strings[2816], new named_type(IFC4X2_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X2_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[2817], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X2_IfcInterceptor_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcInventory_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcInventoryTypeEnum_type), true), + new attribute(strings[2818], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2819], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPerson_type)), true), + new attribute(strings[2820], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[2517], new named_type(IFC4X2_IfcCostValue_type), true), + new attribute(strings[2516], new named_type(IFC4X2_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[2821], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[2822], new named_type(IFC4X2_IfcDateTime_type), false), + new attribute(strings[2823], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), false) + },{ + false, false + }); + IFC4X2_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2589], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2590], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2604], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2805], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2825], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLaborResource_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLagTime_type->set_attributes({ + new attribute(strings[2826], new named_type(IFC4X2_IfcTimeOrRatioSelect_type), false), + new attribute(strings[2827], new named_type(IFC4X2_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcLamp_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLampType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2492], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2828], new named_type(IFC4X2_IfcActorSelect_type), true), + new attribute(strings[2829], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[2609], new named_type(IFC4X2_IfcURIReference_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2830], new named_type(IFC4X2_IfcLanguageId_type), true), + new attribute(strings[2831], new named_type(IFC4X2_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[2832], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2833], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[2834], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X2_IfcLightFixture_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[2835], new named_type(IFC4X2_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[2836], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X2_IfcLightSource_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2837], new named_type(IFC4X2_IfcColourRgb_type), false), + new attribute(strings[2838], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2839], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[2765], new named_type(IFC4X2_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement3D_type), false), + new attribute(strings[2840], new named_type(IFC4X2_IfcColourRgb_type), true), + new attribute(strings[2841], new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[2842], new named_type(IFC4X2_IfcLuminousFluxMeasure_type), false), + new attribute(strings[2843], new named_type(IFC4X2_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[2844], new named_type(IFC4X2_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcCartesianPoint_type), false), + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2845], new named_type(IFC4X2_IfcReal_type), false), + new attribute(strings[2846], new named_type(IFC4X2_IfcReal_type), false), + new attribute(strings[2847], new named_type(IFC4X2_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[2765], new named_type(IFC4X2_IfcDirection_type), false), + new attribute(strings[2848], new named_type(IFC4X2_IfcReal_type), true), + new attribute(strings[2849], new named_type(IFC4X2_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[2850], new named_type(IFC4X2_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLine_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X2_IfcCartesianPoint_type), false), + new attribute(strings[2852], new named_type(IFC4X2_IfcVector_type), false) + },{ + false, false + }); + IFC4X2_IfcLineSegment2D_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2854], new named_type(IFC4X2_IfcDistanceExpression_type), false), + new attribute(strings[2765], new named_type(IFC4X2_IfcOrientationExpression_type), true), + new attribute(strings[2855], new named_type(IFC4X2_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcLinearPositioningElement_type->set_attributes({ + new attribute(strings[2536], new named_type(IFC4X2_IfcCurve_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[2856], new named_type(IFC4X2_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X2_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X2_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[2857], new named_type(IFC4X2_IfcClosedShell_type), false) + },{ + false + }); + IFC4X2_IfcMapConversion_type->set_attributes({ + new attribute(strings[2858], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2859], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2860], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2861], new named_type(IFC4X2_IfcReal_type), true), + new attribute(strings[2862], new named_type(IFC4X2_IfcReal_type), true), + new attribute(strings[2600], new named_type(IFC4X2_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMappedItem_type->set_attributes({ + new attribute(strings[2863], new named_type(IFC4X2_IfcRepresentationMap_type), false), + new attribute(strings[2864], new named_type(IFC4X2_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X2_IfcMaterial_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2500], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[2865], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcClassificationSelect_type)), false), + new attribute(strings[2866], new named_type(IFC4X2_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X2_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2867], new named_type(IFC4X2_IfcMaterial_type), false), + new attribute(strings[2868], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2500], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2869], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X2_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X2_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[2870], new named_type(IFC4X2_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[2867], new named_type(IFC4X2_IfcMaterial_type), true), + new attribute(strings[2871], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X2_IfcLogical_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2500], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2873], new named_type(IFC4X2_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[2874], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcMaterialLayer_type)), false), + new attribute(strings[2875], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false + }); + IFC4X2_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[2876], new named_type(IFC4X2_IfcMaterialLayerSet_type), false), + new attribute(strings[2877], new named_type(IFC4X2_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2878], new named_type(IFC4X2_IfcDirectionSenseEnum_type), false), + new attribute(strings[2879], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2880], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[2881], new named_type(IFC4X2_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[2882], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X2_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMaterialList_type->set_attributes({ + new attribute(strings[2883], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcMaterial_type)), false) + },{ + false + }); + IFC4X2_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2867], new named_type(IFC4X2_IfcMaterial_type), true), + new attribute(strings[2884], new named_type(IFC4X2_IfcProfileDef_type), false), + new attribute(strings[2873], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[2500], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2885], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcMaterialProfile_type)), false), + new attribute(strings[2886], new named_type(IFC4X2_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X2_IfcMaterialProfileSet_type), false), + new attribute(strings[2888], new named_type(IFC4X2_IfcCardinalPointReference_type), true), + new attribute(strings[2880], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X2_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[2889], new named_type(IFC4X2_IfcMaterialProfileSet_type), false), + new attribute(strings[2890], new named_type(IFC4X2_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[2882], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X2_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[2867], new named_type(IFC4X2_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[2891], new named_type(IFC4X2_IfcMaterial_type), false), + new attribute(strings[2892], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcMaterial_type)), false), + new attribute(strings[2893], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X2_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[2894], new named_type(IFC4X2_IfcValue_type), false), + new attribute(strings[2895], new named_type(IFC4X2_IfcUnit_type), false) + },{ + false, false + }); + IFC4X2_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2897], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[2896], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2897], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMember_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMemberType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMetric_type->set_attributes({ + new attribute(strings[2898], new named_type(IFC4X2_IfcBenchmarkEnum_type), false), + new attribute(strings[2899], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2900], new named_type(IFC4X2_IfcMetricValueSelect_type), true), + new attribute(strings[2901], new named_type(IFC4X2_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X2_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[2902], new named_type(IFC4X2_IfcLabel_type), false) + },{ + false + }); + IFC4X2_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcNamedUnit_type->set_attributes({ + new attribute(strings[2903], new named_type(IFC4X2_IfcDimensionalExponents_type), false), + new attribute(strings[2683], new named_type(IFC4X2_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X2_IfcObject_type->set_attributes({ + new attribute(strings[2647], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcObjectPlacement_type->set_attributes({ + new attribute(strings[2904], new named_type(IFC4X2_IfcObjectPlacement_type), true) + },{ + false + }); + IFC4X2_IfcObjective_type->set_attributes({ + new attribute(strings[2905], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcConstraint_type)), true), + new attribute(strings[2906], new named_type(IFC4X2_IfcLogicalOperatorEnum_type), true), + new attribute(strings[2907], new named_type(IFC4X2_IfcObjectiveEnum_type), false), + new attribute(strings[2908], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcOccupant_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[2909], new named_type(IFC4X2_IfcCurve_type), false) + },{ + false + }); + IFC4X2_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[2854], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2542], new named_type(IFC4X2_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X2_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[2854], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2542], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2537], new named_type(IFC4X2_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[2882], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcDistanceExpression_type)), false), + new attribute(strings[2488], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcOrganization_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2910], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcActorRole_type)), true), + new attribute(strings[2911], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[2912], new named_type(IFC4X2_IfcOrganization_type), false), + new attribute(strings[2913], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcOrientationExpression_type->set_attributes({ + new attribute(strings[2914], new named_type(IFC4X2_IfcDirection_type), false), + new attribute(strings[2915], new named_type(IFC4X2_IfcDirection_type), false) + },{ + false, false + }); + IFC4X2_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X2_IfcEdge_type), false), + new attribute(strings[2765], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X2_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X2_IfcOutlet_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcOutletType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[2917], new named_type(IFC4X2_IfcPersonAndOrganization_type), false), + new attribute(strings[2918], new named_type(IFC4X2_IfcApplication_type), false), + new attribute(strings[2919], new named_type(IFC4X2_IfcStateEnum_type), true), + new attribute(strings[2920], new named_type(IFC4X2_IfcChangeActionEnum_type), true), + new attribute(strings[2921], new named_type(IFC4X2_IfcTimeStamp_type), true), + new attribute(strings[2922], new named_type(IFC4X2_IfcPersonAndOrganization_type), true), + new attribute(strings[2923], new named_type(IFC4X2_IfcApplication_type), true), + new attribute(strings[2924], new named_type(IFC4X2_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X2_IfcPath_type->set_attributes({ + new attribute(strings[2743], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X2_IfcPcurve_type->set_attributes({ + new attribute(strings[2667], new named_type(IFC4X2_IfcSurface_type), false), + new attribute(strings[2925], new named_type(IFC4X2_IfcCurve_type), false) + },{ + false, false + }); + IFC4X2_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[2926], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2464], new named_type(IFC4X2_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[2718], new named_type(IFC4X2_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[2736], new named_type(IFC4X2_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2927], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2928], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2730], new named_type(IFC4X2_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPermit_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPermitTypeEnum_type), true), + new attribute(strings[2465], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPerson_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2929], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2930], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2931], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[2932], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[2933], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[2910], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcActorRole_type)), true), + new attribute(strings[2911], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[2934], new named_type(IFC4X2_IfcPerson_type), false), + new attribute(strings[2935], new named_type(IFC4X2_IfcOrganization_type), false), + new attribute(strings[2910], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X2_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[2936], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPhysicalQuantity_type)), false), + new attribute(strings[2937], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2938], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2644], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false + }); + IFC4X2_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[2685], new named_type(IFC4X2_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X2_IfcPile_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPileTypeEnum_type), true), + new attribute(strings[2737], new named_type(IFC4X2_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPileType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2590], new named_type(IFC4X2_IfcInteger_type), false), + new attribute(strings[2939], new named_type(IFC4X2_IfcInteger_type), false), + new attribute(strings[2940], new named_type(IFC4X2_IfcInteger_type), false), + new attribute(strings[2941], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPlacement_type->set_attributes({ + new attribute(strings[2609], new named_type(IFC4X2_IfcCartesianPoint_type), false) + },{ + false + }); + IFC4X2_IfcPlanarBox_type->set_attributes({ + new attribute(strings[2942], new named_type(IFC4X2_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X2_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[2943], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2944], new named_type(IFC4X2_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcPlate_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPlateType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X2_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[2909], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2945], new named_type(IFC4X2_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X2_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[2667], new named_type(IFC4X2_IfcSurface_type), false), + new attribute(strings[2946], new named_type(IFC4X2_IfcParameterValue_type), false), + new attribute(strings[2947], new named_type(IFC4X2_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X2_IfcPolyLoop_type->set_attributes({ + new attribute(strings[2948], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X2_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement3D_type), false), + new attribute(strings[2949], new named_type(IFC4X2_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[2950], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[2951], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[2952], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X2_IfcPolyline_type->set_attributes({ + new attribute(strings[2813], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X2_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcPostalAddress_type->set_attributes({ + new attribute(strings[2953], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2954], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[2955], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2956], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2957], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2958], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2959], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false) + },{ + false + }); + IFC4X2_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X2_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X2_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2960], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcLayeredItem_type)), false), + new attribute(strings[2504], new named_type(IFC4X2_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[2961], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2962], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2963], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[2964], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X2_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false + }); + IFC4X2_IfcPresentationStyleAssignment_type->set_attributes({ + new attribute(strings[2965], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPresentationStyleSelect_type)), false) + },{ + false + }); + IFC4X2_IfcProcedure_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProcedureType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProcess_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcProduct_type->set_attributes({ + new attribute(strings[2966], new named_type(IFC4X2_IfcObjectPlacement_type), true), + new attribute(strings[2967], new named_type(IFC4X2_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2968], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X2_IfcProfileDef_type->set_attributes({ + new attribute(strings[2969], new named_type(IFC4X2_IfcProfileTypeEnum_type), false), + new attribute(strings[2970], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false + }); + IFC4X2_IfcProfileProperties_type->set_attributes({ + new attribute(strings[2971], new named_type(IFC4X2_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2465], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[2972], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2973], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2974], new named_type(IFC4X2_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProperty_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcIdentifier_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false + }); + IFC4X2_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X2_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[2975], new named_type(IFC4X2_IfcValue_type), true), + new attribute(strings[2976], new named_type(IFC4X2_IfcValue_type), true), + new attribute(strings[2685], new named_type(IFC4X2_IfcUnit_type), true), + new attribute(strings[2977], new named_type(IFC4X2_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[2978], new named_type(IFC4X2_IfcProperty_type), false), + new attribute(strings[2979], new named_type(IFC4X2_IfcProperty_type), false), + new attribute(strings[2893], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[2980], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true), + new attribute(strings[2981], new named_type(IFC4X2_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2980], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), false), + new attribute(strings[2685], new named_type(IFC4X2_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X2_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[2823], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true), + new attribute(strings[2685], new named_type(IFC4X2_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[2617], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2982], new named_type(IFC4X2_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcPropertySet_type->set_attributes({ + new attribute(strings[2618], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[2619], new named_type(IFC4X2_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[2983], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2620], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[2984], new named_type(IFC4X2_IfcValue_type), true), + new attribute(strings[2685], new named_type(IFC4X2_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[2985], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true), + new attribute(strings[2986], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true), + new attribute(strings[2893], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2987], new named_type(IFC4X2_IfcUnit_type), true), + new attribute(strings[2988], new named_type(IFC4X2_IfcUnit_type), true), + new attribute(strings[2989], new named_type(IFC4X2_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcProxy_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X2_IfcObjectTypeEnum_type), false), + new attribute(strings[2488], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPump_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcPumpType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcQuantityArea_type->set_attributes({ + new attribute(strings[2991], new named_type(IFC4X2_IfcAreaMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcQuantityCount_type->set_attributes({ + new attribute(strings[2993], new named_type(IFC4X2_IfcCountMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcQuantityLength_type->set_attributes({ + new attribute(strings[2994], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcQuantityTime_type->set_attributes({ + new attribute(strings[2995], new named_type(IFC4X2_IfcTimeMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X2_IfcVolumeMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X2_IfcMassMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcRailing_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRailingType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRamp_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRampFlight_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRampType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2998], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2998], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2591], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2999], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3000], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2580], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2581], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2557], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2558], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2939], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[2667], new named_type(IFC4X2_IfcSurface_type), false), + new attribute(strings[3001], new named_type(IFC4X2_IfcParameterValue_type), false), + new attribute(strings[3002], new named_type(IFC4X2_IfcParameterValue_type), false), + new attribute(strings[3003], new named_type(IFC4X2_IfcParameterValue_type), false), + new attribute(strings[3004], new named_type(IFC4X2_IfcParameterValue_type), false), + new attribute(strings[3005], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[3006], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[3007], new named_type(IFC4X2_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[3008], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDayInMonthNumber_type)), true), + new attribute(strings[3009], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDayInWeekNumber_type)), true), + new attribute(strings[3010], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcMonthInYearNumber_type)), true), + new attribute(strings[2626], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[3011], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[3012], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[3013], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReference_type->set_attributes({ + new attribute(strings[3014], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[3015], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[3016], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3017], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcInteger_type)), true), + new attribute(strings[3018], new named_type(IFC4X2_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcReferent_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcReferentTypeEnum_type), true), + new attribute(strings[3019], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[3020], new named_type(IFC4X2_IfcTimeMeasure_type), false), + new attribute(strings[2821], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[3021], new named_type(IFC4X2_IfcAreaMeasure_type), false), + new attribute(strings[3022], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[3023], new named_type(IFC4X2_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3024], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3025], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3026], new named_type(IFC4X2_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[3027], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3028], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3029], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3030], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[3023], new named_type(IFC4X2_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[2896], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3029], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3030], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3023], new named_type(IFC4X2_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3031], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3032], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[3022], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[3033], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3034], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3035], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3036], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3037], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3038], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3039], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3040], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[3033], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3034], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3035], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3036], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3037], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3038], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3039], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3040], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3031], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3032], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAggregates_type->set_attributes({ + new attribute(strings[3041], new named_type(IFC4X2_IfcObjectDefinition_type), false), + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelAssigns_type->set_attributes({ + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false), + new attribute(strings[3043], new named_type(IFC4X2_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[3044], new named_type(IFC4X2_IfcActor_type), false), + new attribute(strings[3045], new named_type(IFC4X2_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[3046], new named_type(IFC4X2_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[3047], new named_type(IFC4X2_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[3048], new named_type(IFC4X2_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[3049], new named_type(IFC4X2_IfcProcessSelect_type), false), + new attribute(strings[3050], new named_type(IFC4X2_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[3051], new named_type(IFC4X2_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[3052], new named_type(IFC4X2_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssociates_type->set_attributes({ + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2510], new named_type(IFC4X2_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[3053], new named_type(IFC4X2_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[3054], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3055], new named_type(IFC4X2_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[2712], new named_type(IFC4X2_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[3056], new named_type(IFC4X2_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[2891], new named_type(IFC4X2_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[3057], new named_type(IFC4X2_IfcConnectionGeometry_type), true), + new attribute(strings[3058], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3059], new named_type(IFC4X2_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[3060], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X2_IfcInteger_type)), false), + new attribute(strings[3061], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X2_IfcInteger_type)), false), + new attribute(strings[3062], new named_type(IFC4X2_IfcConnectionTypeEnum_type), false), + new attribute(strings[3063], new named_type(IFC4X2_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[3064], new named_type(IFC4X2_IfcPort_type), false), + new attribute(strings[3059], new named_type(IFC4X2_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[3064], new named_type(IFC4X2_IfcPort_type), false), + new attribute(strings[3065], new named_type(IFC4X2_IfcPort_type), false), + new attribute(strings[3066], new named_type(IFC4X2_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[3058], new named_type(IFC4X2_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[3067], new named_type(IFC4X2_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[3068], new named_type(IFC4X2_IfcStructuralMember_type), false), + new attribute(strings[3069], new named_type(IFC4X2_IfcStructuralConnection_type), false), + new attribute(strings[3070], new named_type(IFC4X2_IfcBoundaryCondition_type), true), + new attribute(strings[3071], new named_type(IFC4X2_IfcStructuralConnectionCondition_type), true), + new attribute(strings[3072], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3073], new named_type(IFC4X2_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[3074], new named_type(IFC4X2_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[3075], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcElement_type)), false), + new attribute(strings[3076], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[3077], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProduct_type)), false), + new attribute(strings[3078], new named_type(IFC4X2_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[3079], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3080], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[3081], new named_type(IFC4X2_IfcSpace_type), false), + new attribute(strings[3080], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelDeclares_type->set_attributes({ + new attribute(strings[3082], new named_type(IFC4X2_IfcContext_type), false), + new attribute(strings[3083], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObject_type)), false), + new attribute(strings[3041], new named_type(IFC4X2_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false), + new attribute(strings[3084], new named_type(IFC4X2_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[3085], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertySetDefinition_type)), false), + new attribute(strings[3086], new named_type(IFC4X2_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcObject_type)), false), + new attribute(strings[3087], new named_type(IFC4X2_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[3088], new named_type(IFC4X2_IfcOpeningElement_type), false), + new attribute(strings[3089], new named_type(IFC4X2_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[3090], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcDistributionControlElement_type)), false), + new attribute(strings[3091], new named_type(IFC4X2_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[3058], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3059], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3092], new named_type(IFC4X2_IfcConnectionGeometry_type), true), + new attribute(strings[3093], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[3094], new simple_type(simple_type::logical_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelNests_type->set_attributes({ + new attribute(strings[3041], new named_type(IFC4X2_IfcObjectDefinition_type), false), + new attribute(strings[3042], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelPositions_type->set_attributes({ + new attribute(strings[3095], new named_type(IFC4X2_IfcPositioningElement_type), false), + new attribute(strings[3096], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProduct_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[3058], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3097], new named_type(IFC4X2_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[3077], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcProduct_type)), false), + new attribute(strings[3078], new named_type(IFC4X2_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelSequence_type->set_attributes({ + new attribute(strings[3049], new named_type(IFC4X2_IfcProcess_type), false), + new attribute(strings[3098], new named_type(IFC4X2_IfcProcess_type), false), + new attribute(strings[3099], new named_type(IFC4X2_IfcLagTime_type), true), + new attribute(strings[3100], new named_type(IFC4X2_IfcSequenceEnum_type), true), + new attribute(strings[3101], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3102], new named_type(IFC4X2_IfcSystem_type), false), + new attribute(strings[3103], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[3081], new named_type(IFC4X2_IfcSpaceBoundarySelect_type), false), + new attribute(strings[3089], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3057], new named_type(IFC4X2_IfcConnectionGeometry_type), true), + new attribute(strings[3104], new named_type(IFC4X2_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3105], new named_type(IFC4X2_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3106], new named_type(IFC4X2_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X2_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[3079], new named_type(IFC4X2_IfcElement_type), false), + new attribute(strings[3108], new named_type(IFC4X2_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3109], new named_type(IFC4X2_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcRepresentation_type->set_attributes({ + new attribute(strings[3110], new named_type(IFC4X2_IfcRepresentationContext_type), false), + new attribute(strings[3111], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3112], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3113], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3114], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3115], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false + }); + IFC4X2_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X2_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3116], new named_type(IFC4X2_IfcAxis2Placement_type), false), + new attribute(strings[3117], new named_type(IFC4X2_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X2_IfcResource_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[2759], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcResourceObjectSelect_type)), false), + new attribute(strings[2510], new named_type(IFC4X2_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X2_IfcConstraint_type), false), + new attribute(strings[2759], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X2_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false + }); + IFC4X2_IfcResourceTime_type->set_attributes({ + new attribute(strings[3118], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3119], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3120], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3121], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3122], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3123], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3124], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[3125], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3126], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3127], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3128], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3129], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3130], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3131], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3132], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2536], new named_type(IFC4X2_IfcAxis1Placement_type), false), + new attribute(strings[3133], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[2761], new named_type(IFC4X2_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[2939], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3134], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[2939], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcRoof_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRoofType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcRoot_type->set_attributes({ + new attribute(strings[3135], new named_type(IFC4X2_IfcGloballyUniqueId_type), false), + new attribute(strings[3136], new named_type(IFC4X2_IfcOwnerHistory_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3137], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcSIUnit_type->set_attributes({ + new attribute(strings[3138], new named_type(IFC4X2_IfcSIPrefix_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X2_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3139], new named_type(IFC4X2_IfcDataOriginEnum_type), true), + new attribute(strings[3140], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X2_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3141], new named_type(IFC4X2_IfcSectionTypeEnum_type), false), + new attribute(strings[3142], new named_type(IFC4X2_IfcProfileDef_type), false), + new attribute(strings[3143], new named_type(IFC4X2_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X2_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3144], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[3145], new named_type(IFC4X2_IfcLengthMeasure_type), false), + new attribute(strings[3146], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3147], new named_type(IFC4X2_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3148], new named_type(IFC4X2_IfcSectionProperties_type), false), + new attribute(strings[3149], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[2783], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[3150], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X2_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3151], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcDistanceExpression_type)), false), + new attribute(strings[3152], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3153], new named_type(IFC4X2_IfcCompositeCurve_type), false), + new attribute(strings[3150], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcProfileDef_type)), false), + new attribute(strings[3151], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X2_IfcSensor_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSensorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3154], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcShapeModel_type)), false), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[3155], new named_type(IFC4X2_IfcLogical_type), false), + new attribute(strings[3156], new named_type(IFC4X2_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3157], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcShell_type)), false) + },{ + false + }); + IFC4X2_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X2_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[2619], new named_type(IFC4X2_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3158], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3159], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3160], new named_type(IFC4X2_IfcPropertyEnumeration_type), true), + new attribute(strings[3161], new named_type(IFC4X2_IfcUnit_type), true), + new attribute(strings[3162], new named_type(IFC4X2_IfcUnit_type), true), + new attribute(strings[2893], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3163], new named_type(IFC4X2_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSite_type->set_attributes({ + new attribute(strings[3164], new named_type(IFC4X2_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3165], new named_type(IFC4X2_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3166], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3167], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3168], new named_type(IFC4X2_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSlab_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSlabType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3169], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3170], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3171], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X2_IfcSpace_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSpaceTypeEnum_type), true), + new attribute(strings[3172], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpaceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSpaceTypeEnum_type), false), + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[2747], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3173], new named_type(IFC4X2_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSphere_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStair_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStairFlight_type->set_attributes({ + new attribute(strings[3174], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[3175], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[3176], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3177], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStairType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3178], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3179], new named_type(IFC4X2_IfcStructuralLoad_type), false), + new attribute(strings[3180], new named_type(IFC4X2_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3181], new named_type(IFC4X2_IfcAxis2Placement3D_type), true), + new attribute(strings[3182], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3183], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStructuralResultGroup_type)), true), + new attribute(strings[3184], new named_type(IFC4X2_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[3070], new named_type(IFC4X2_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false + }); + IFC4X2_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3185], new named_type(IFC4X2_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2536], new named_type(IFC4X2_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2536], new named_type(IFC4X2_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false + }); + IFC4X2_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3186], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[2821], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3187], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X2_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X2_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3188], new named_type(IFC4X2_IfcActionTypeEnum_type), false), + new attribute(strings[3189], new named_type(IFC4X2_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3190], new named_type(IFC4X2_IfcRatioMeasure_type), true), + new attribute(strings[2471], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3191], new named_type(IFC4X2_IfcLinearForceMeasure_type), true), + new attribute(strings[3192], new named_type(IFC4X2_IfcLinearForceMeasure_type), true), + new attribute(strings[3193], new named_type(IFC4X2_IfcLinearForceMeasure_type), true), + new attribute(strings[3194], new named_type(IFC4X2_IfcLinearMomentMeasure_type), true), + new attribute(strings[3195], new named_type(IFC4X2_IfcLinearMomentMeasure_type), true), + new attribute(strings[3196], new named_type(IFC4X2_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3197], new named_type(IFC4X2_IfcPlanarForceMeasure_type), true), + new attribute(strings[3198], new named_type(IFC4X2_IfcPlanarForceMeasure_type), true), + new attribute(strings[3199], new named_type(IFC4X2_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3200], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3201], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3202], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[3203], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3204], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3205], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3206], new named_type(IFC4X2_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3207], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[3208], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[3209], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[3210], new named_type(IFC4X2_IfcTorqueMeasure_type), true), + new attribute(strings[3211], new named_type(IFC4X2_IfcTorqueMeasure_type), true), + new attribute(strings[3212], new named_type(IFC4X2_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3213], new named_type(IFC4X2_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X2_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3214], new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3215], new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3216], new named_type(IFC4X2_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[3073], new named_type(IFC4X2_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3217], new named_type(IFC4X2_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3218], new named_type(IFC4X2_IfcStructuralLoadGroup_type), true), + new attribute(strings[3219], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3185], new named_type(IFC4X2_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[2604], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcStyledItem_type->set_attributes({ + new attribute(strings[3220], new named_type(IFC4X2_IfcRepresentationItem_type), true), + new attribute(strings[2965], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcStyleAssignmentSelect_type)), false), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X2_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSubedge_type->set_attributes({ + new attribute(strings[3221], new named_type(IFC4X2_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X2_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X2_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3222], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[3223], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X2_IfcPcurve_type)), false), + new attribute(strings[3224], new named_type(IFC4X2_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X2_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[2783], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2784], new named_type(IFC4X2_IfcParameterValue_type), true), + new attribute(strings[2785], new named_type(IFC4X2_IfcParameterValue_type), true), + new attribute(strings[3225], new named_type(IFC4X2_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[2760], new named_type(IFC4X2_IfcDirection_type), false), + new attribute(strings[2589], new named_type(IFC4X2_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3226], new named_type(IFC4X2_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X2_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3227], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), true), + new attribute(strings[3228], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), true), + new attribute(strings[3229], new named_type(IFC4X2_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X2_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3230], new named_type(IFC4X2_IfcSurfaceSide_type), false), + new attribute(strings[2965], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X2_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X2_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3231], new named_type(IFC4X2_IfcColourRgb_type), false), + new attribute(strings[3232], new named_type(IFC4X2_IfcColourRgb_type), false), + new attribute(strings[3233], new named_type(IFC4X2_IfcColourRgb_type), false), + new attribute(strings[3234], new named_type(IFC4X2_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X2_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3235], new named_type(IFC4X2_IfcReal_type), true), + new attribute(strings[3236], new named_type(IFC4X2_IfcReal_type), true) + },{ + false, false + }); + IFC4X2_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3237], new named_type(IFC4X2_IfcColourOrFactor_type), true), + new attribute(strings[3233], new named_type(IFC4X2_IfcColourOrFactor_type), true), + new attribute(strings[3231], new named_type(IFC4X2_IfcColourOrFactor_type), true), + new attribute(strings[3238], new named_type(IFC4X2_IfcColourOrFactor_type), true), + new attribute(strings[3239], new named_type(IFC4X2_IfcColourOrFactor_type), true), + new attribute(strings[3240], new named_type(IFC4X2_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3241], new named_type(IFC4X2_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3242], new named_type(IFC4X2_IfcColourRgb_type), false), + new attribute(strings[3243], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X2_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3244], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X2_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3245], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[3246], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[3247], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[3248], new named_type(IFC4X2_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3249], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3250], new named_type(IFC4X2_IfcProfileDef_type), false), + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X2_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[2783], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[2480], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3251], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2784], new named_type(IFC4X2_IfcParameterValue_type), true), + new attribute(strings[2785], new named_type(IFC4X2_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[2805], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3252], new named_type(IFC4X2_IfcProfileDef_type), false), + new attribute(strings[2626], new named_type(IFC4X2_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X2_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X2_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2589], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3253], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2526], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2804], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2805], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2806], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3254], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3255], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2807], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTable_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3256], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTableRow_type)), true), + new attribute(strings[3257], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X2_IfcTableColumn_type->set_attributes({ + new attribute(strings[2504], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[2685], new named_type(IFC4X2_IfcUnit_type), true), + new attribute(strings[2901], new named_type(IFC4X2_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcTableRow_type->set_attributes({ + new attribute(strings[3258], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), true), + new attribute(strings[3259], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X2_IfcTank_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTankType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTask_type->set_attributes({ + new attribute(strings[2465], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3260], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3261], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[2873], new named_type(IFC4X2_IfcInteger_type), true), + new attribute(strings[3262], new named_type(IFC4X2_IfcTaskTime_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTaskTime_type->set_attributes({ + new attribute(strings[2827], new named_type(IFC4X2_IfcTaskDurationEnum_type), true), + new attribute(strings[3263], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3120], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3121], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3264], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3265], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3266], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3267], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3268], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3269], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3270], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[3125], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3271], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3128], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3129], new named_type(IFC4X2_IfcDateTime_type), true), + new attribute(strings[3272], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3132], new named_type(IFC4X2_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3273], new named_type(IFC4X2_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTaskType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTaskTypeEnum_type), false), + new attribute(strings[3260], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3274], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[3275], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[3276], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3277], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcLabel_type)), true), + new attribute(strings[3278], new named_type(IFC4X2_IfcURIReference_type), true), + new attribute(strings[3279], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTendon_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTendonTypeEnum_type), true), + new attribute(strings[2896], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3029], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3280], new named_type(IFC4X2_IfcForceMeasure_type), true), + new attribute(strings[3281], new named_type(IFC4X2_IfcPressureMeasure_type), true), + new attribute(strings[3282], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3283], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3284], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTendonConduit_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTendonConduitType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTendonType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTendonTypeEnum_type), false), + new attribute(strings[2896], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3029], new named_type(IFC4X2_IfcAreaMeasure_type), true), + new attribute(strings[3285], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2594], new named_type(IFC4X2_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X2_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X2_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3286], new named_type(IFC4X2_IfcPresentableText_type), false), + new attribute(strings[2942], new named_type(IFC4X2_IfcAxis2Placement_type), false), + new attribute(strings[3287], new named_type(IFC4X2_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X2_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3288], new named_type(IFC4X2_IfcPlanarExtent_type), false), + new attribute(strings[3289], new named_type(IFC4X2_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcTextStyle_type->set_attributes({ + new attribute(strings[3290], new named_type(IFC4X2_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3291], new named_type(IFC4X2_IfcTextStyleTextModel_type), true), + new attribute(strings[3292], new named_type(IFC4X2_IfcTextFontSelect_type), false), + new attribute(strings[2676], new named_type(IFC4X2_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3293], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcTextFontName_type)), false), + new attribute(strings[3294], new named_type(IFC4X2_IfcFontStyle_type), true), + new attribute(strings[3295], new named_type(IFC4X2_IfcFontVariant_type), true), + new attribute(strings[3296], new named_type(IFC4X2_IfcFontWeight_type), true), + new attribute(strings[3297], new named_type(IFC4X2_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3298], new named_type(IFC4X2_IfcColour_type), false), + new attribute(strings[3299], new named_type(IFC4X2_IfcColour_type), true) + },{ + false, false + }); + IFC4X2_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3300], new named_type(IFC4X2_IfcSizeSelect_type), true), + new attribute(strings[3301], new named_type(IFC4X2_IfcTextAlignment_type), true), + new attribute(strings[3302], new named_type(IFC4X2_IfcTextDecoration_type), true), + new attribute(strings[3303], new named_type(IFC4X2_IfcSizeSelect_type), true), + new attribute(strings[3304], new named_type(IFC4X2_IfcSizeSelect_type), true), + new attribute(strings[3305], new named_type(IFC4X2_IfcTextTransformation_type), true), + new attribute(strings[3306], new named_type(IFC4X2_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3307], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X2_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3247], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[3249], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X2_IfcTextureMap_type->set_attributes({ + new attribute(strings[3308], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X2_IfcTextureVertex_type)), false), + new attribute(strings[2809], new named_type(IFC4X2_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X2_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2594], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X2_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3309], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X2_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3310], new named_type(IFC4X2_IfcTime_type), false), + new attribute(strings[3311], new named_type(IFC4X2_IfcTime_type), false) + },{ + false, false + }); + IFC4X2_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2495], new named_type(IFC4X2_IfcLabel_type), false), + new attribute(strings[2470], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[3310], new named_type(IFC4X2_IfcDateTime_type), false), + new attribute(strings[3311], new named_type(IFC4X2_IfcDateTime_type), false), + new attribute(strings[3312], new named_type(IFC4X2_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3139], new named_type(IFC4X2_IfcDataOriginEnum_type), false), + new attribute(strings[3140], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[2685], new named_type(IFC4X2_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[2823], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcValue_type)), false) + },{ + false + }); + IFC4X2_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X2_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X2_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3313], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3314], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X2_IfcTransformer_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTransformerType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTransitionCurveSegment2D_type->set_attributes({ + new attribute(strings[3315], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3316], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3317], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[3318], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[3319], new named_type(IFC4X2_IfcTransitionCurveType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTransportElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTransportElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTransportElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3320], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3321], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2581], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3322], new named_type(IFC4X2_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X2_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3323], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcParameterValue_type))), true), + new attribute(strings[2950], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[2814], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcPositiveInteger_type))), false), + new attribute(strings[2952], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X2_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3324], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[2909], new named_type(IFC4X2_IfcCurve_type), false), + new attribute(strings[3325], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X2_IfcTrimmingSelect_type)), false), + new attribute(strings[3326], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X2_IfcTrimmingSelect_type)), false), + new attribute(strings[3327], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[3224], new named_type(IFC4X2_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X2_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTypeObject_type->set_attributes({ + new attribute(strings[3328], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[3329], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[3330], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3331], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X2_IfcRepresentationMap_type)), true), + new attribute(strings[2488], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcTypeResource_type->set_attributes({ + new attribute(strings[2515], new named_type(IFC4X2_IfcIdentifier_type), true), + new attribute(strings[2466], new named_type(IFC4X2_IfcText_type), true), + new attribute(strings[3332], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2589], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3253], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2526], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2804], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2805], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2807], new named_type(IFC4X2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3333], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcUnit_type)), false) + },{ + false + }); + IFC4X2_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcValve_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcValveType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcVector_type->set_attributes({ + new attribute(strings[2765], new named_type(IFC4X2_IfcDirection_type), false), + new attribute(strings[3334], new named_type(IFC4X2_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X2_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X2_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3335], new named_type(IFC4X2_IfcVertex_type), false) + },{ + false + }); + IFC4X2_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3336], new named_type(IFC4X2_IfcPoint_type), false) + },{ + false + }); + IFC4X2_IfcVibrationDamper_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcVibrationDamperType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X2_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3337], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X2_IfcGridAxis_type)), false), + new attribute(strings[3338], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X2_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X2_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWall_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWallType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWindow_type->set_attributes({ + new attribute(strings[2716], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2717], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcWindowTypeEnum_type), true), + new attribute(strings[3339], new named_type(IFC4X2_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3340], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[2720], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2721], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2724], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3341], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3342], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3343], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3344], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3345], new named_type(IFC4X2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2730], new named_type(IFC4X2_IfcShapeAspect_type), true), + new attribute(strings[2726], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2731], new named_type(IFC4X2_IfcLengthMeasure_type), true), + new attribute(strings[2732], new named_type(IFC4X2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[2718], new named_type(IFC4X2_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[2736], new named_type(IFC4X2_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[2927], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2928], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2730], new named_type(IFC4X2_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWindowStyle_type->set_attributes({ + new attribute(strings[2737], new named_type(IFC4X2_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[2718], new named_type(IFC4X2_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[2738], new named_type(IFC4X2_IfcBoolean_type), false), + new attribute(strings[2739], new named_type(IFC4X2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWindowType_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWindowTypeEnum_type), false), + new attribute(strings[3339], new named_type(IFC4X2_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[2738], new named_type(IFC4X2_IfcBoolean_type), true), + new attribute(strings[3340], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3346], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcWorkTime_type)), true), + new attribute(strings[3347], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcWorkTime_type)), true), + new attribute(strings[2464], new named_type(IFC4X2_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWorkControl_type->set_attributes({ + new attribute(strings[2924], new named_type(IFC4X2_IfcDateTime_type), false), + new attribute(strings[3348], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPerson_type)), true), + new attribute(strings[2471], new named_type(IFC4X2_IfcLabel_type), true), + new attribute(strings[3349], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3269], new named_type(IFC4X2_IfcDuration_type), true), + new attribute(strings[3310], new named_type(IFC4X2_IfcDateTime_type), false), + new attribute(strings[3350], new named_type(IFC4X2_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2464], new named_type(IFC4X2_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcWorkTime_type->set_attributes({ + new attribute(strings[3351], new named_type(IFC4X2_IfcRecurrencePattern_type), true), + new attribute(strings[3352], new named_type(IFC4X2_IfcDate_type), true), + new attribute(strings[3353], new named_type(IFC4X2_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2589], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3253], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2526], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2804], new named_type(IFC4X2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2805], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X2_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X2_IfcZone_type->set_attributes({ + new attribute(strings[2588], new named_type(IFC4X2_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X2_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3354], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToActor_type, IFC4X2_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X2_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3355], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3356], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPerson_type, IFC4X2_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3357], inverse_attribute::set_type, 0, -1, IFC4X2_IfcOrganization_type, IFC4X2_IfcOrganization_type->attributes()[4]) + }); + IFC4X2_IfcAlignment2DHorizontal_type->set_inverse_attributes({ + new inverse_attribute(strings[3358], inverse_attribute::set_type, 1, -1, IFC4X2_IfcAlignmentCurve_type, IFC4X2_IfcAlignmentCurve_type->attributes()[0]) + }); + IFC4X2_IfcAlignment2DHorizontalSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3359], inverse_attribute::set_type, 1, 1, IFC4X2_IfcAlignment2DHorizontal_type, IFC4X2_IfcAlignment2DHorizontal_type->attributes()[1]) + }); + IFC4X2_IfcAlignment2DVertical_type->set_inverse_attributes({ + new inverse_attribute(strings[3358], inverse_attribute::set_type, 1, 1, IFC4X2_IfcAlignmentCurve_type, IFC4X2_IfcAlignmentCurve_type->attributes()[1]) + }); + IFC4X2_IfcAlignment2DVerticalSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3360], inverse_attribute::set_type, 1, 1, IFC4X2_IfcAlignment2DVertical_type, IFC4X2_IfcAlignment2DVertical_type->attributes()[0]) + }); + IFC4X2_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3361], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X2_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3355], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3363], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesApproval_type, IFC4X2_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3364], inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceApprovalRelationship_type, IFC4X2_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3365], inverse_attribute::set_type, 0, -1, IFC4X2_IfcApprovalRelationship_type, IFC4X2_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3366], inverse_attribute::set_type, 0, -1, IFC4X2_IfcApprovalRelationship_type, IFC4X2_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X2_IfcBoundedCurve_type->set_inverse_attributes({ + new inverse_attribute(strings[3367], inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcLinearPositioningElement_type, IFC4X2_IfcLinearPositioningElement_type->attributes()[0]) + }); + IFC4X2_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3368], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesClassification_type, IFC4X2_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3369], inverse_attribute::set_type, 0, -1, IFC4X2_IfcClassificationReference_type, IFC4X2_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X2_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3370], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesClassification_type, IFC4X2_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3369], inverse_attribute::set_type, 0, -1, IFC4X2_IfcClassificationReference_type, IFC4X2_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X2_IfcCompositeCurveSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3371], inverse_attribute::set_type, 1, -1, IFC4X2_IfcCompositeCurve_type, IFC4X2_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X2_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3372], inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceConstraintRelationship_type, IFC4X2_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X2_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3373], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByProperties_type, IFC4X2_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3374], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDeclares_type, IFC4X2_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X2_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3355], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3375], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToControl_type, IFC4X2_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X2_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3355], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3376], inverse_attribute::set_type, 0, 1, IFC4X2_IfcCoordinateOperation_type, IFC4X2_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X2_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3377], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelCoversSpaces_type, IFC4X2_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3378], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelCoversBldgElements_type, IFC4X2_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X2_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3379], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelFlowControlElements_type, IFC4X2_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X2_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3380], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsPortToElement_type, IFC4X2_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X2_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3381], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelFlowControlElements_type, IFC4X2_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X2_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3382], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesDocument_type, IFC4X2_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3383], inverse_attribute::set_type, 0, -1, IFC4X2_IfcDocumentReference_type, IFC4X2_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3384], inverse_attribute::set_type, 0, -1, IFC4X2_IfcDocumentInformationRelationship_type, IFC4X2_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3385], inverse_attribute::set_type, 0, 1, IFC4X2_IfcDocumentInformationRelationship_type, IFC4X2_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X2_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3386], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesDocument_type, IFC4X2_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X2_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3387], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelFillsElement_type, IFC4X2_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3388], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsElements_type, IFC4X2_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3389], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelInterferesElements_type, IFC4X2_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3390], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelInterferesElements_type, IFC4X2_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3391], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelProjectsElement_type, IFC4X2_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3392], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelReferencedInSpatialStructure_type, IFC4X2_IfcRelReferencedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3393], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelVoidsElement_type, IFC4X2_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3394], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsWithRealizingElements_type, IFC4X2_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3395], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary_type, IFC4X2_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3396], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsElements_type, IFC4X2_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3361], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3397], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelCoversBldgElements_type, IFC4X2_IfcRelCoversBldgElements_type->attributes()[0]) + }); + IFC4X2_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3398], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X2_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3399], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary_type, IFC4X2_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X2_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3400], inverse_attribute::set_type, 0, -1, IFC4X2_IfcTextureMap_type, IFC4X2_IfcTextureMap_type->attributes()[1]) + }); + IFC4X2_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3401], inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcRelProjectsElement_type, IFC4X2_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X2_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3402], inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcRelVoidsElement_type, IFC4X2_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X2_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3403], inverse_attribute::set_type, 0, -1, IFC4X2_IfcGeometricRepresentationSubContext_type, IFC4X2_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3376], inverse_attribute::set_type, 0, 1, IFC4X2_IfcCoordinateOperation_type, IFC4X2_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X2_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3404], inverse_attribute::set_type, 0, 1, IFC4X2_IfcGrid_type, IFC4X2_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3405], inverse_attribute::set_type, 0, 1, IFC4X2_IfcGrid_type, IFC4X2_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3406], inverse_attribute::set_type, 0, 1, IFC4X2_IfcGrid_type, IFC4X2_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3407], inverse_attribute::set_type, 0, -1, IFC4X2_IfcVirtualGridIntersection_type, IFC4X2_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X2_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3408], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToGroup_type, IFC4X2_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4X2_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3409], inverse_attribute::set_type, 1, -1, IFC4X2_IfcPolygonalFaceSet_type, IFC4X2_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4X2_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3410], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesLibrary_type, IFC4X2_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3411], inverse_attribute::set_type, 0, -1, IFC4X2_IfcLibraryReference_type, IFC4X2_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X2_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3412], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesLibrary_type, IFC4X2_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X2_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3413], inverse_attribute::set_type, 0, 1, IFC4X2_IfcMaterialDefinitionRepresentation_type, IFC4X2_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3365], inverse_attribute::set_type, 0, -1, IFC4X2_IfcMaterialRelationship_type, IFC4X2_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3414], inverse_attribute::set_type, 0, 1, IFC4X2_IfcMaterialRelationship_type, IFC4X2_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X2_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3415], inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcMaterialConstituentSet_type, IFC4X2_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X2_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3416], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociatesMaterial_type, IFC4X2_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2618], inverse_attribute::set_type, 0, -1, IFC4X2_IfcMaterialProperties_type, IFC4X2_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X2_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3417], inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcMaterialLayerSet_type, IFC4X2_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X2_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3418], inverse_attribute::unspecified_type, -1, -1, IFC4X2_IfcMaterialProfileSet_type, IFC4X2_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X2_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3416], inverse_attribute::set_type, 1, -1, IFC4X2_IfcRelAssociatesMaterial_type, IFC4X2_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X2_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3419], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDefinesByObject_type, IFC4X2_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3374], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByObject_type, IFC4X2_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3420], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDefinesByType_type, IFC4X2_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3373], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByProperties_type, IFC4X2_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X2_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3421], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssigns_type, IFC4X2_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3422], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelNests_type, IFC4X2_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3423], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelNests_type, IFC4X2_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3424], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDeclares_type, IFC4X2_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3425], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAggregates_type, IFC4X2_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3426], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelAggregates_type, IFC4X2_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3427], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociates_type, IFC4X2_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X2_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3428], inverse_attribute::set_type, 0, -1, IFC4X2_IfcProduct_type, IFC4X2_IfcProduct_type->attributes()[0]) + }); + IFC4X2_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3429], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelFillsElement_type, IFC4X2_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X2_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3430], inverse_attribute::set_type, 0, -1, IFC4X2_IfcOrganizationRelationship_type, IFC4X2_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3366], inverse_attribute::set_type, 0, -1, IFC4X2_IfcOrganizationRelationship_type, IFC4X2_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3431], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPersonAndOrganization_type, IFC4X2_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X2_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3432], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPersonAndOrganization_type, IFC4X2_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X2_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3433], inverse_attribute::set_type, 0, 1, IFC4X2_IfcPhysicalComplexQuantity_type, IFC4X2_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X2_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3434], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsPortToElement_type, IFC4X2_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3396], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsPorts_type, IFC4X2_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3388], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsPorts_type, IFC4X2_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X2_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3361], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3435], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelPositions_type, IFC4X2_IfcRelPositions_type->attributes()[0]) + }); + IFC4X2_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3436], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSequence_type, IFC4X2_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3437], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSequence_type, IFC4X2_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3438], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProcess_type, IFC4X2_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X2_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3439], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProduct_type, IFC4X2_IfcRelAssignsToProduct_type->attributes()[0]), + new inverse_attribute(strings[3440], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelPositions_type, IFC4X2_IfcRelPositions_type->attributes()[1]) + }); + IFC4X2_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3441], inverse_attribute::set_type, 1, -1, IFC4X2_IfcProduct_type, IFC4X2_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3442], inverse_attribute::set_type, 0, -1, IFC4X2_IfcShapeAspect_type, IFC4X2_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X2_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3355], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2618], inverse_attribute::set_type, 0, -1, IFC4X2_IfcProfileProperties_type, IFC4X2_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X2_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3443], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertySet_type, IFC4X2_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3444], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertyDependencyRelationship_type, IFC4X2_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3445], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertyDependencyRelationship_type, IFC4X2_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3433], inverse_attribute::set_type, 0, -1, IFC4X2_IfcComplexProperty_type, IFC4X2_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3446], inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceConstraintRelationship_type, IFC4X2_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3447], inverse_attribute::set_type, 0, -1, IFC4X2_IfcResourceApprovalRelationship_type, IFC4X2_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X2_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3424], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDeclares_type, IFC4X2_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3427], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssociates_type, IFC4X2_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X2_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3448], inverse_attribute::set_type, 0, -1, IFC4X2_IfcTypeObject_type, IFC4X2_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3373], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByTemplate_type, IFC4X2_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3449], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByProperties_type, IFC4X2_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X2_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3450], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelDefinesByTemplate_type, IFC4X2_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X2_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3451], inverse_attribute::set_type, 0, -1, IFC4X2_IfcComplexPropertyTemplate_type, IFC4X2_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3452], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPropertySetTemplate_type, IFC4X2_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X2_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2490], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary1stLevel_type, IFC4X2_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X2_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3453], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelSpaceBoundary2ndLevel_type, IFC4X2_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X2_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3454], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRepresentationMap_type, IFC4X2_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3455], inverse_attribute::set_type, 0, -1, IFC4X2_IfcPresentationLayerAssignment_type, IFC4X2_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3456], inverse_attribute::set_type, 0, -1, IFC4X2_IfcProductRepresentation_type, IFC4X2_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X2_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3457], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRepresentation_type, IFC4X2_IfcRepresentation_type->attributes()[0]) + }); + IFC4X2_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3458], inverse_attribute::set_type, 0, 1, IFC4X2_IfcPresentationLayerAssignment_type, IFC4X2_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3459], inverse_attribute::set_type, 0, 1, IFC4X2_IfcStyledItem_type, IFC4X2_IfcStyledItem_type->attributes()[0]) + }); + IFC4X2_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3442], inverse_attribute::set_type, 0, -1, IFC4X2_IfcShapeAspect_type, IFC4X2_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3460], inverse_attribute::set_type, 0, -1, IFC4X2_IfcMappedItem_type, IFC4X2_IfcMappedItem_type->attributes()[0]) + }); + IFC4X2_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3461], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToResource_type, IFC4X2_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X2_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3362], inverse_attribute::set_type, 0, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3462], inverse_attribute::set_type, 0, 1, IFC4X2_IfcShapeAspect_type, IFC4X2_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X2_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3397], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelCoversSpaces_type, IFC4X2_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3399], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelSpaceBoundary_type, IFC4X2_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X2_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3463], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelContainedInSpatialStructure_type, IFC4X2_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3464], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelServicesBuildings_type, IFC4X2_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3465], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelReferencedInSpatialStructure_type, IFC4X2_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4X2_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3466], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelConnectsStructuralActivity_type, IFC4X2_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X2_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3467], inverse_attribute::set_type, 1, -1, IFC4X2_IfcRelConnectsStructuralMember_type, IFC4X2_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X2_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3468], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsStructuralActivity_type, IFC4X2_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X2_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3469], inverse_attribute::set_type, 0, 1, IFC4X2_IfcStructuralResultGroup_type, IFC4X2_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3470], inverse_attribute::set_type, 0, -1, IFC4X2_IfcStructuralAnalysisModel_type, IFC4X2_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X2_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3471], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelConnectsStructuralMember_type, IFC4X2_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X2_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3472], inverse_attribute::set_type, 0, 1, IFC4X2_IfcStructuralAnalysisModel_type, IFC4X2_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X2_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3473], inverse_attribute::set_type, 0, -1, IFC4X2_IfcTextureCoordinate_type, IFC4X2_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3474], inverse_attribute::set_type, 0, -1, IFC4X2_IfcSurfaceStyleWithTextures_type, IFC4X2_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X2_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3475], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelServicesBuildings_type, IFC4X2_IfcRelServicesBuildings_type->attributes()[0]) + }); + IFC4X2_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3476], inverse_attribute::set_type, 0, 1, IFC4X2_IfcIndexedColourMap_type, IFC4X2_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3477], inverse_attribute::set_type, 0, -1, IFC4X2_IfcIndexedTextureMap_type, IFC4X2_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X2_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3355], inverse_attribute::set_type, 1, -1, IFC4X2_IfcExternalReferenceRelationship_type, IFC4X2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X2_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3478], inverse_attribute::set_type, 0, 1, IFC4X2_IfcRelDefinesByType_type, IFC4X2_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X2_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3438], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProcess_type, IFC4X2_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X2_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3439], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToProduct_type, IFC4X2_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X2_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3461], inverse_attribute::set_type, 0, -1, IFC4X2_IfcRelAssignsToResource_type, IFC4X2_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X2_IfcControl_type->set_subtypes({ + IFC4X2_IfcActionRequest_type,IFC4X2_IfcCostItem_type,IFC4X2_IfcCostSchedule_type,IFC4X2_IfcPerformanceHistory_type,IFC4X2_IfcPermit_type,IFC4X2_IfcProjectOrder_type,IFC4X2_IfcWorkCalendar_type,IFC4X2_IfcWorkControl_type + }); + IFC4X2_IfcObject_type->set_subtypes({ + IFC4X2_IfcActor_type,IFC4X2_IfcControl_type,IFC4X2_IfcGroup_type,IFC4X2_IfcProcess_type,IFC4X2_IfcProduct_type,IFC4X2_IfcResource_type + }); + IFC4X2_IfcDistributionControlElement_type->set_subtypes({ + IFC4X2_IfcActuator_type,IFC4X2_IfcAlarm_type,IFC4X2_IfcController_type,IFC4X2_IfcFlowInstrument_type,IFC4X2_IfcProtectiveDeviceTrippingUnit_type,IFC4X2_IfcSensor_type,IFC4X2_IfcUnitaryControlElement_type + }); + IFC4X2_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X2_IfcActuatorType_type,IFC4X2_IfcAlarmType_type,IFC4X2_IfcControllerType_type,IFC4X2_IfcFlowInstrumentType_type,IFC4X2_IfcProtectiveDeviceTrippingUnitType_type,IFC4X2_IfcSensorType_type,IFC4X2_IfcUnitaryControlElementType_type + }); + IFC4X2_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X2_IfcAdvancedBrep_type,IFC4X2_IfcFacetedBrep_type + }); + IFC4X2_IfcAdvancedBrep_type->set_subtypes({ + IFC4X2_IfcAdvancedBrepWithVoids_type + }); + IFC4X2_IfcFaceSurface_type->set_subtypes({ + IFC4X2_IfcAdvancedFace_type + }); + IFC4X2_IfcFlowTerminal_type->set_subtypes({ + IFC4X2_IfcAirTerminal_type,IFC4X2_IfcAudioVisualAppliance_type,IFC4X2_IfcCommunicationsAppliance_type,IFC4X2_IfcElectricAppliance_type,IFC4X2_IfcFireSuppressionTerminal_type,IFC4X2_IfcLamp_type,IFC4X2_IfcLightFixture_type,IFC4X2_IfcMedicalDevice_type,IFC4X2_IfcOutlet_type,IFC4X2_IfcSanitaryTerminal_type,IFC4X2_IfcSpaceHeater_type,IFC4X2_IfcStackTerminal_type,IFC4X2_IfcWasteTerminal_type + }); + IFC4X2_IfcFlowController_type->set_subtypes({ + IFC4X2_IfcAirTerminalBox_type,IFC4X2_IfcDamper_type,IFC4X2_IfcElectricDistributionBoard_type,IFC4X2_IfcElectricTimeControl_type,IFC4X2_IfcFlowMeter_type,IFC4X2_IfcProtectiveDevice_type,IFC4X2_IfcSwitchingDevice_type,IFC4X2_IfcValve_type + }); + IFC4X2_IfcFlowControllerType_type->set_subtypes({ + IFC4X2_IfcAirTerminalBoxType_type,IFC4X2_IfcDamperType_type,IFC4X2_IfcElectricDistributionBoardType_type,IFC4X2_IfcElectricTimeControlType_type,IFC4X2_IfcFlowMeterType_type,IFC4X2_IfcProtectiveDeviceType_type,IFC4X2_IfcSwitchingDeviceType_type,IFC4X2_IfcValveType_type + }); + IFC4X2_IfcFlowTerminalType_type->set_subtypes({ + IFC4X2_IfcAirTerminalType_type,IFC4X2_IfcAudioVisualApplianceType_type,IFC4X2_IfcCommunicationsApplianceType_type,IFC4X2_IfcElectricApplianceType_type,IFC4X2_IfcFireSuppressionTerminalType_type,IFC4X2_IfcLampType_type,IFC4X2_IfcLightFixtureType_type,IFC4X2_IfcMedicalDeviceType_type,IFC4X2_IfcOutletType_type,IFC4X2_IfcSanitaryTerminalType_type,IFC4X2_IfcSpaceHeaterType_type,IFC4X2_IfcStackTerminalType_type,IFC4X2_IfcWasteTerminalType_type + }); + IFC4X2_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X2_IfcAirToAirHeatRecovery_type,IFC4X2_IfcBoiler_type,IFC4X2_IfcBurner_type,IFC4X2_IfcChiller_type,IFC4X2_IfcCoil_type,IFC4X2_IfcCondenser_type,IFC4X2_IfcCooledBeam_type,IFC4X2_IfcCoolingTower_type,IFC4X2_IfcElectricGenerator_type,IFC4X2_IfcElectricMotor_type,IFC4X2_IfcEngine_type,IFC4X2_IfcEvaporativeCooler_type,IFC4X2_IfcEvaporator_type,IFC4X2_IfcHeatExchanger_type,IFC4X2_IfcHumidifier_type,IFC4X2_IfcMotorConnection_type,IFC4X2_IfcSolarDevice_type,IFC4X2_IfcTransformer_type,IFC4X2_IfcTubeBundle_type,IFC4X2_IfcUnitaryEquipment_type + }); + IFC4X2_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X2_IfcAirToAirHeatRecoveryType_type,IFC4X2_IfcBoilerType_type,IFC4X2_IfcBurnerType_type,IFC4X2_IfcChillerType_type,IFC4X2_IfcCoilType_type,IFC4X2_IfcCondenserType_type,IFC4X2_IfcCooledBeamType_type,IFC4X2_IfcCoolingTowerType_type,IFC4X2_IfcElectricGeneratorType_type,IFC4X2_IfcElectricMotorType_type,IFC4X2_IfcEngineType_type,IFC4X2_IfcEvaporativeCoolerType_type,IFC4X2_IfcEvaporatorType_type,IFC4X2_IfcHeatExchangerType_type,IFC4X2_IfcHumidifierType_type,IFC4X2_IfcMotorConnectionType_type,IFC4X2_IfcSolarDeviceType_type,IFC4X2_IfcTransformerType_type,IFC4X2_IfcTubeBundleType_type,IFC4X2_IfcUnitaryEquipmentType_type + }); + IFC4X2_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X2_IfcAlignment_type + }); + IFC4X2_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X2_IfcAlignment2DHorizontal_type,IFC4X2_IfcAlignment2DSegment_type,IFC4X2_IfcAlignment2DVertical_type,IFC4X2_IfcAnnotationFillArea_type,IFC4X2_IfcBooleanResult_type,IFC4X2_IfcBoundingBox_type,IFC4X2_IfcCartesianPointList_type,IFC4X2_IfcCartesianTransformationOperator_type,IFC4X2_IfcCompositeCurveSegment_type,IFC4X2_IfcCsgPrimitive3D_type,IFC4X2_IfcCurve_type,IFC4X2_IfcDirection_type,IFC4X2_IfcDistanceExpression_type,IFC4X2_IfcFaceBasedSurfaceModel_type,IFC4X2_IfcFillAreaStyleHatching_type,IFC4X2_IfcFillAreaStyleTiles_type,IFC4X2_IfcGeometricSet_type,IFC4X2_IfcHalfSpaceSolid_type,IFC4X2_IfcLightSource_type,IFC4X2_IfcOrientationExpression_type,IFC4X2_IfcPlacement_type,IFC4X2_IfcPlanarExtent_type,IFC4X2_IfcPoint_type,IFC4X2_IfcSectionedSpine_type,IFC4X2_IfcShellBasedSurfaceModel_type,IFC4X2_IfcSolidModel_type,IFC4X2_IfcSurface_type,IFC4X2_IfcTessellatedItem_type,IFC4X2_IfcTextLiteral_type,IFC4X2_IfcVector_type + }); + IFC4X2_IfcAlignment2DSegment_type->set_subtypes({ + IFC4X2_IfcAlignment2DHorizontalSegment_type,IFC4X2_IfcAlignment2DVerticalSegment_type + }); + IFC4X2_IfcAlignment2DVerticalSegment_type->set_subtypes({ + IFC4X2_IfcAlignment2DVerSegCircularArc_type,IFC4X2_IfcAlignment2DVerSegLine_type,IFC4X2_IfcAlignment2DVerSegParabolicArc_type + }); + IFC4X2_IfcBoundedCurve_type->set_subtypes({ + IFC4X2_IfcAlignmentCurve_type,IFC4X2_IfcBSplineCurve_type,IFC4X2_IfcCompositeCurve_type,IFC4X2_IfcCurveSegment2D_type,IFC4X2_IfcIndexedPolyCurve_type,IFC4X2_IfcPolyline_type,IFC4X2_IfcTrimmedCurve_type + }); + IFC4X2_IfcProduct_type->set_subtypes({ + IFC4X2_IfcAnnotation_type,IFC4X2_IfcElement_type,IFC4X2_IfcPort_type,IFC4X2_IfcPositioningElement_type,IFC4X2_IfcProxy_type,IFC4X2_IfcSpatialElement_type,IFC4X2_IfcStructuralActivity_type,IFC4X2_IfcStructuralItem_type + }); + IFC4X2_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X2_IfcApprovalRelationship_type,IFC4X2_IfcCurrencyRelationship_type,IFC4X2_IfcDocumentInformationRelationship_type,IFC4X2_IfcExternalReferenceRelationship_type,IFC4X2_IfcMaterialRelationship_type,IFC4X2_IfcOrganizationRelationship_type,IFC4X2_IfcPropertyDependencyRelationship_type,IFC4X2_IfcResourceApprovalRelationship_type,IFC4X2_IfcResourceConstraintRelationship_type + }); + IFC4X2_IfcProfileDef_type->set_subtypes({ + IFC4X2_IfcArbitraryClosedProfileDef_type,IFC4X2_IfcArbitraryOpenProfileDef_type,IFC4X2_IfcCompositeProfileDef_type,IFC4X2_IfcDerivedProfileDef_type,IFC4X2_IfcParameterizedProfileDef_type + }); + IFC4X2_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X2_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X2_IfcGroup_type->set_subtypes({ + IFC4X2_IfcAsset_type,IFC4X2_IfcInventory_type,IFC4X2_IfcStructuralLoadGroup_type,IFC4X2_IfcStructuralResultGroup_type,IFC4X2_IfcSystem_type + }); + IFC4X2_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X2_IfcAsymmetricIShapeProfileDef_type,IFC4X2_IfcCShapeProfileDef_type,IFC4X2_IfcCircleProfileDef_type,IFC4X2_IfcEllipseProfileDef_type,IFC4X2_IfcIShapeProfileDef_type,IFC4X2_IfcLShapeProfileDef_type,IFC4X2_IfcRectangleProfileDef_type,IFC4X2_IfcTShapeProfileDef_type,IFC4X2_IfcTrapeziumProfileDef_type,IFC4X2_IfcUShapeProfileDef_type,IFC4X2_IfcZShapeProfileDef_type + }); + IFC4X2_IfcPlacement_type->set_subtypes({ + IFC4X2_IfcAxis1Placement_type,IFC4X2_IfcAxis2Placement2D_type,IFC4X2_IfcAxis2Placement3D_type + }); + IFC4X2_IfcBSplineCurve_type->set_subtypes({ + IFC4X2_IfcBSplineCurveWithKnots_type + }); + IFC4X2_IfcBoundedSurface_type->set_subtypes({ + IFC4X2_IfcBSplineSurface_type,IFC4X2_IfcCurveBoundedPlane_type,IFC4X2_IfcCurveBoundedSurface_type,IFC4X2_IfcRectangularTrimmedSurface_type + }); + IFC4X2_IfcBSplineSurface_type->set_subtypes({ + IFC4X2_IfcBSplineSurfaceWithKnots_type + }); + IFC4X2_IfcBuildingElement_type->set_subtypes({ + IFC4X2_IfcBeam_type,IFC4X2_IfcBearing_type,IFC4X2_IfcBuildingElementProxy_type,IFC4X2_IfcChimney_type,IFC4X2_IfcColumn_type,IFC4X2_IfcCovering_type,IFC4X2_IfcCurtainWall_type,IFC4X2_IfcDeepFoundation_type,IFC4X2_IfcDoor_type,IFC4X2_IfcFooting_type,IFC4X2_IfcMember_type,IFC4X2_IfcPlate_type,IFC4X2_IfcRailing_type,IFC4X2_IfcRamp_type,IFC4X2_IfcRampFlight_type,IFC4X2_IfcRoof_type,IFC4X2_IfcShadingDevice_type,IFC4X2_IfcSlab_type,IFC4X2_IfcStair_type,IFC4X2_IfcStairFlight_type,IFC4X2_IfcWall_type,IFC4X2_IfcWindow_type + }); + IFC4X2_IfcBeam_type->set_subtypes({ + IFC4X2_IfcBeamStandardCase_type + }); + IFC4X2_IfcBuildingElementType_type->set_subtypes({ + IFC4X2_IfcBeamType_type,IFC4X2_IfcBearingType_type,IFC4X2_IfcBuildingElementProxyType_type,IFC4X2_IfcChimneyType_type,IFC4X2_IfcColumnType_type,IFC4X2_IfcCoveringType_type,IFC4X2_IfcCurtainWallType_type,IFC4X2_IfcDeepFoundationType_type,IFC4X2_IfcDoorType_type,IFC4X2_IfcFootingType_type,IFC4X2_IfcMemberType_type,IFC4X2_IfcPlateType_type,IFC4X2_IfcRailingType_type,IFC4X2_IfcRampFlightType_type,IFC4X2_IfcRampType_type,IFC4X2_IfcRoofType_type,IFC4X2_IfcShadingDeviceType_type,IFC4X2_IfcSlabType_type,IFC4X2_IfcStairFlightType_type,IFC4X2_IfcStairType_type,IFC4X2_IfcWallType_type,IFC4X2_IfcWindowType_type + }); + IFC4X2_IfcSurfaceTexture_type->set_subtypes({ + IFC4X2_IfcBlobTexture_type,IFC4X2_IfcImageTexture_type,IFC4X2_IfcPixelTexture_type + }); + IFC4X2_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X2_IfcBlock_type,IFC4X2_IfcRectangularPyramid_type,IFC4X2_IfcRightCircularCone_type,IFC4X2_IfcRightCircularCylinder_type,IFC4X2_IfcSphere_type + }); + IFC4X2_IfcBooleanResult_type->set_subtypes({ + IFC4X2_IfcBooleanClippingResult_type + }); + IFC4X2_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X2_IfcBoundaryCurve_type + }); + IFC4X2_IfcBoundaryCondition_type->set_subtypes({ + IFC4X2_IfcBoundaryEdgeCondition_type,IFC4X2_IfcBoundaryFaceCondition_type,IFC4X2_IfcBoundaryNodeCondition_type + }); + IFC4X2_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X2_IfcBoundaryNodeConditionWarping_type + }); + IFC4X2_IfcCurve_type->set_subtypes({ + IFC4X2_IfcBoundedCurve_type,IFC4X2_IfcConic_type,IFC4X2_IfcLine_type,IFC4X2_IfcOffsetCurve_type,IFC4X2_IfcPcurve_type,IFC4X2_IfcSurfaceCurve_type + }); + IFC4X2_IfcSurface_type->set_subtypes({ + IFC4X2_IfcBoundedSurface_type,IFC4X2_IfcElementarySurface_type,IFC4X2_IfcSweptSurface_type + }); + IFC4X2_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X2_IfcBoxedHalfSpace_type,IFC4X2_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X2_IfcFacility_type->set_subtypes({ + IFC4X2_IfcBridge_type,IFC4X2_IfcBuilding_type + }); + IFC4X2_IfcFacilityPart_type->set_subtypes({ + IFC4X2_IfcBridgePart_type,IFC4X2_IfcBuildingStorey_type + }); + IFC4X2_IfcElement_type->set_subtypes({ + IFC4X2_IfcBuildingElement_type,IFC4X2_IfcCivilElement_type,IFC4X2_IfcDistributionElement_type,IFC4X2_IfcElementAssembly_type,IFC4X2_IfcElementComponent_type,IFC4X2_IfcFeatureElement_type,IFC4X2_IfcFurnishingElement_type,IFC4X2_IfcGeographicElement_type,IFC4X2_IfcTransportElement_type,IFC4X2_IfcVirtualElement_type + }); + IFC4X2_IfcElementComponent_type->set_subtypes({ + IFC4X2_IfcBuildingElementPart_type,IFC4X2_IfcDiscreteAccessory_type,IFC4X2_IfcFastener_type,IFC4X2_IfcMechanicalFastener_type,IFC4X2_IfcReinforcingElement_type,IFC4X2_IfcVibrationDamper_type,IFC4X2_IfcVibrationIsolator_type + }); + IFC4X2_IfcElementComponentType_type->set_subtypes({ + IFC4X2_IfcBuildingElementPartType_type,IFC4X2_IfcDiscreteAccessoryType_type,IFC4X2_IfcFastenerType_type,IFC4X2_IfcMechanicalFastenerType_type,IFC4X2_IfcReinforcingElementType_type,IFC4X2_IfcVibrationDamperType_type,IFC4X2_IfcVibrationIsolatorType_type + }); + IFC4X2_IfcElementType_type->set_subtypes({ + IFC4X2_IfcBuildingElementType_type,IFC4X2_IfcCivilElementType_type,IFC4X2_IfcDistributionElementType_type,IFC4X2_IfcElementAssemblyType_type,IFC4X2_IfcElementComponentType_type,IFC4X2_IfcFurnishingElementType_type,IFC4X2_IfcGeographicElementType_type,IFC4X2_IfcTransportElementType_type + }); + IFC4X2_IfcSystem_type->set_subtypes({ + IFC4X2_IfcBuildingSystem_type,IFC4X2_IfcDistributionSystem_type,IFC4X2_IfcStructuralAnalysisModel_type,IFC4X2_IfcZone_type + }); + IFC4X2_IfcFlowFitting_type->set_subtypes({ + IFC4X2_IfcCableCarrierFitting_type,IFC4X2_IfcCableFitting_type,IFC4X2_IfcDuctFitting_type,IFC4X2_IfcJunctionBox_type,IFC4X2_IfcPipeFitting_type + }); + IFC4X2_IfcFlowFittingType_type->set_subtypes({ + IFC4X2_IfcCableCarrierFittingType_type,IFC4X2_IfcCableFittingType_type,IFC4X2_IfcDuctFittingType_type,IFC4X2_IfcJunctionBoxType_type,IFC4X2_IfcPipeFittingType_type + }); + IFC4X2_IfcFlowSegment_type->set_subtypes({ + IFC4X2_IfcCableCarrierSegment_type,IFC4X2_IfcCableSegment_type,IFC4X2_IfcDuctSegment_type,IFC4X2_IfcPipeSegment_type + }); + IFC4X2_IfcFlowSegmentType_type->set_subtypes({ + IFC4X2_IfcCableCarrierSegmentType_type,IFC4X2_IfcCableSegmentType_type,IFC4X2_IfcDuctSegmentType_type,IFC4X2_IfcPipeSegmentType_type + }); + IFC4X2_IfcDeepFoundation_type->set_subtypes({ + IFC4X2_IfcCaissonFoundation_type,IFC4X2_IfcPile_type + }); + IFC4X2_IfcDeepFoundationType_type->set_subtypes({ + IFC4X2_IfcCaissonFoundationType_type,IFC4X2_IfcPileType_type + }); + IFC4X2_IfcPoint_type->set_subtypes({ + IFC4X2_IfcCartesianPoint_type,IFC4X2_IfcPointOnCurve_type,IFC4X2_IfcPointOnSurface_type + }); + IFC4X2_IfcCartesianPointList_type->set_subtypes({ + IFC4X2_IfcCartesianPointList2D_type,IFC4X2_IfcCartesianPointList3D_type + }); + IFC4X2_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X2_IfcCartesianTransformationOperator2D_type,IFC4X2_IfcCartesianTransformationOperator3D_type + }); + IFC4X2_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X2_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X2_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X2_IfcCenterLineProfileDef_type + }); + IFC4X2_IfcConic_type->set_subtypes({ + IFC4X2_IfcCircle_type,IFC4X2_IfcEllipse_type + }); + IFC4X2_IfcCircleProfileDef_type->set_subtypes({ + IFC4X2_IfcCircleHollowProfileDef_type + }); + IFC4X2_IfcCurveSegment2D_type->set_subtypes({ + IFC4X2_IfcCircularArcSegment2D_type,IFC4X2_IfcLineSegment2D_type,IFC4X2_IfcTransitionCurveSegment2D_type + }); + IFC4X2_IfcExternalInformation_type->set_subtypes({ + IFC4X2_IfcClassification_type,IFC4X2_IfcDocumentInformation_type,IFC4X2_IfcLibraryInformation_type + }); + IFC4X2_IfcExternalReference_type->set_subtypes({ + IFC4X2_IfcClassificationReference_type,IFC4X2_IfcDocumentReference_type,IFC4X2_IfcExternallyDefinedHatchStyle_type,IFC4X2_IfcExternallyDefinedSurfaceStyle_type,IFC4X2_IfcExternallyDefinedTextFont_type,IFC4X2_IfcLibraryReference_type + }); + IFC4X2_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X2_IfcClosedShell_type,IFC4X2_IfcOpenShell_type + }); + IFC4X2_IfcColourSpecification_type->set_subtypes({ + IFC4X2_IfcColourRgb_type + }); + IFC4X2_IfcPresentationItem_type->set_subtypes({ + IFC4X2_IfcColourRgbList_type,IFC4X2_IfcColourSpecification_type,IFC4X2_IfcCurveStyleFont_type,IFC4X2_IfcCurveStyleFontAndScaling_type,IFC4X2_IfcCurveStyleFontPattern_type,IFC4X2_IfcIndexedColourMap_type,IFC4X2_IfcPreDefinedItem_type,IFC4X2_IfcSurfaceStyleLighting_type,IFC4X2_IfcSurfaceStyleRefraction_type,IFC4X2_IfcSurfaceStyleShading_type,IFC4X2_IfcSurfaceStyleWithTextures_type,IFC4X2_IfcSurfaceTexture_type,IFC4X2_IfcTextStyleForDefinedFont_type,IFC4X2_IfcTextStyleTextModel_type,IFC4X2_IfcTextureCoordinate_type,IFC4X2_IfcTextureVertex_type,IFC4X2_IfcTextureVertexList_type + }); + IFC4X2_IfcColumn_type->set_subtypes({ + IFC4X2_IfcColumnStandardCase_type + }); + IFC4X2_IfcProperty_type->set_subtypes({ + IFC4X2_IfcComplexProperty_type,IFC4X2_IfcSimpleProperty_type + }); + IFC4X2_IfcPropertyTemplate_type->set_subtypes({ + IFC4X2_IfcComplexPropertyTemplate_type,IFC4X2_IfcSimplePropertyTemplate_type + }); + IFC4X2_IfcCompositeCurve_type->set_subtypes({ + IFC4X2_IfcCompositeCurveOnSurface_type + }); + IFC4X2_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X2_IfcCompressor_type,IFC4X2_IfcFan_type,IFC4X2_IfcPump_type + }); + IFC4X2_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X2_IfcCompressorType_type,IFC4X2_IfcFanType_type,IFC4X2_IfcPumpType_type + }); + IFC4X2_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X2_IfcConnectedFaceSet_type,IFC4X2_IfcEdge_type,IFC4X2_IfcFace_type,IFC4X2_IfcFaceBound_type,IFC4X2_IfcLoop_type,IFC4X2_IfcPath_type,IFC4X2_IfcVertex_type + }); + IFC4X2_IfcConnectionGeometry_type->set_subtypes({ + IFC4X2_IfcConnectionCurveGeometry_type,IFC4X2_IfcConnectionPointGeometry_type,IFC4X2_IfcConnectionSurfaceGeometry_type,IFC4X2_IfcConnectionVolumeGeometry_type + }); + IFC4X2_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X2_IfcConnectionPointEccentricity_type + }); + IFC4X2_IfcConstructionResource_type->set_subtypes({ + IFC4X2_IfcConstructionEquipmentResource_type,IFC4X2_IfcConstructionMaterialResource_type,IFC4X2_IfcConstructionProductResource_type,IFC4X2_IfcCrewResource_type,IFC4X2_IfcLaborResource_type,IFC4X2_IfcSubContractResource_type + }); + IFC4X2_IfcConstructionResourceType_type->set_subtypes({ + IFC4X2_IfcConstructionEquipmentResourceType_type,IFC4X2_IfcConstructionMaterialResourceType_type,IFC4X2_IfcConstructionProductResourceType_type,IFC4X2_IfcCrewResourceType_type,IFC4X2_IfcLaborResourceType_type,IFC4X2_IfcSubContractResourceType_type + }); + IFC4X2_IfcResource_type->set_subtypes({ + IFC4X2_IfcConstructionResource_type + }); + IFC4X2_IfcTypeResource_type->set_subtypes({ + IFC4X2_IfcConstructionResourceType_type + }); + IFC4X2_IfcObjectDefinition_type->set_subtypes({ + IFC4X2_IfcContext_type,IFC4X2_IfcObject_type,IFC4X2_IfcTypeObject_type + }); + IFC4X2_IfcNamedUnit_type->set_subtypes({ + IFC4X2_IfcContextDependentUnit_type,IFC4X2_IfcConversionBasedUnit_type,IFC4X2_IfcSIUnit_type + }); + IFC4X2_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X2_IfcConversionBasedUnitWithOffset_type + }); + IFC4X2_IfcAppliedValue_type->set_subtypes({ + IFC4X2_IfcCostValue_type + }); + IFC4X2_IfcSolidModel_type->set_subtypes({ + IFC4X2_IfcCsgSolid_type,IFC4X2_IfcManifoldSolidBrep_type,IFC4X2_IfcSectionedSolid_type,IFC4X2_IfcSweptAreaSolid_type,IFC4X2_IfcSweptDiskSolid_type + }); + IFC4X2_IfcPresentationStyle_type->set_subtypes({ + IFC4X2_IfcCurveStyle_type,IFC4X2_IfcFillAreaStyle_type,IFC4X2_IfcSurfaceStyle_type,IFC4X2_IfcTextStyle_type + }); + IFC4X2_IfcElementarySurface_type->set_subtypes({ + IFC4X2_IfcCylindricalSurface_type,IFC4X2_IfcPlane_type,IFC4X2_IfcSphericalSurface_type,IFC4X2_IfcToroidalSurface_type + }); + IFC4X2_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X2_IfcDistributionChamberElement_type,IFC4X2_IfcEnergyConversionDevice_type,IFC4X2_IfcFlowController_type,IFC4X2_IfcFlowFitting_type,IFC4X2_IfcFlowMovingDevice_type,IFC4X2_IfcFlowSegment_type,IFC4X2_IfcFlowStorageDevice_type,IFC4X2_IfcFlowTerminal_type,IFC4X2_IfcFlowTreatmentDevice_type + }); + IFC4X2_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X2_IfcDistributionChamberElementType_type,IFC4X2_IfcEnergyConversionDeviceType_type,IFC4X2_IfcFlowControllerType_type,IFC4X2_IfcFlowFittingType_type,IFC4X2_IfcFlowMovingDeviceType_type,IFC4X2_IfcFlowSegmentType_type,IFC4X2_IfcFlowStorageDeviceType_type,IFC4X2_IfcFlowTerminalType_type,IFC4X2_IfcFlowTreatmentDeviceType_type + }); + IFC4X2_IfcDistributionSystem_type->set_subtypes({ + IFC4X2_IfcDistributionCircuit_type + }); + IFC4X2_IfcDistributionElement_type->set_subtypes({ + IFC4X2_IfcDistributionControlElement_type,IFC4X2_IfcDistributionFlowElement_type + }); + IFC4X2_IfcDistributionElementType_type->set_subtypes({ + IFC4X2_IfcDistributionControlElementType_type,IFC4X2_IfcDistributionFlowElementType_type + }); + IFC4X2_IfcPort_type->set_subtypes({ + IFC4X2_IfcDistributionPort_type + }); + IFC4X2_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X2_IfcDoorLiningProperties_type,IFC4X2_IfcDoorPanelProperties_type,IFC4X2_IfcPermeableCoveringProperties_type,IFC4X2_IfcReinforcementDefinitionProperties_type,IFC4X2_IfcWindowLiningProperties_type,IFC4X2_IfcWindowPanelProperties_type + }); + IFC4X2_IfcDoor_type->set_subtypes({ + IFC4X2_IfcDoorStandardCase_type + }); + IFC4X2_IfcTypeProduct_type->set_subtypes({ + IFC4X2_IfcDoorStyle_type,IFC4X2_IfcElementType_type,IFC4X2_IfcSpatialElementType_type,IFC4X2_IfcWindowStyle_type + }); + IFC4X2_IfcPreDefinedColour_type->set_subtypes({ + IFC4X2_IfcDraughtingPreDefinedColour_type + }); + IFC4X2_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X2_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X2_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X2_IfcDuctSilencer_type,IFC4X2_IfcFilter_type,IFC4X2_IfcInterceptor_type + }); + IFC4X2_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X2_IfcDuctSilencerType_type,IFC4X2_IfcFilterType_type,IFC4X2_IfcInterceptorType_type + }); + IFC4X2_IfcEdge_type->set_subtypes({ + IFC4X2_IfcEdgeCurve_type,IFC4X2_IfcOrientedEdge_type,IFC4X2_IfcSubedge_type + }); + IFC4X2_IfcLoop_type->set_subtypes({ + IFC4X2_IfcEdgeLoop_type,IFC4X2_IfcPolyLoop_type,IFC4X2_IfcVertexLoop_type + }); + IFC4X2_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X2_IfcElectricFlowStorageDevice_type,IFC4X2_IfcTank_type + }); + IFC4X2_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X2_IfcElectricFlowStorageDeviceType_type,IFC4X2_IfcTankType_type + }); + IFC4X2_IfcQuantitySet_type->set_subtypes({ + IFC4X2_IfcElementQuantity_type + }); + IFC4X2_IfcProcess_type->set_subtypes({ + IFC4X2_IfcEvent_type,IFC4X2_IfcProcedure_type,IFC4X2_IfcTask_type + }); + IFC4X2_IfcSchedulingTime_type->set_subtypes({ + IFC4X2_IfcEventTime_type,IFC4X2_IfcLagTime_type,IFC4X2_IfcResourceTime_type,IFC4X2_IfcTaskTime_type,IFC4X2_IfcWorkTime_type + }); + IFC4X2_IfcTypeProcess_type->set_subtypes({ + IFC4X2_IfcEventType_type,IFC4X2_IfcProcedureType_type,IFC4X2_IfcTaskType_type + }); + IFC4X2_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X2_IfcExtendedProperties_type,IFC4X2_IfcPreDefinedProperties_type,IFC4X2_IfcProperty_type,IFC4X2_IfcPropertyEnumeration_type + }); + IFC4X2_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X2_IfcExternalSpatialElement_type + }); + IFC4X2_IfcSpatialElement_type->set_subtypes({ + IFC4X2_IfcExternalSpatialStructureElement_type,IFC4X2_IfcSpatialStructureElement_type,IFC4X2_IfcSpatialZone_type + }); + IFC4X2_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X2_IfcExtrudedAreaSolid_type,IFC4X2_IfcFixedReferenceSweptAreaSolid_type,IFC4X2_IfcRevolvedAreaSolid_type,IFC4X2_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X2_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X2_IfcExtrudedAreaSolidTapered_type + }); + IFC4X2_IfcFaceBound_type->set_subtypes({ + IFC4X2_IfcFaceOuterBound_type + }); + IFC4X2_IfcFace_type->set_subtypes({ + IFC4X2_IfcFaceSurface_type + }); + IFC4X2_IfcFacetedBrep_type->set_subtypes({ + IFC4X2_IfcFacetedBrepWithVoids_type + }); + IFC4X2_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X2_IfcFacility_type,IFC4X2_IfcFacilityPart_type,IFC4X2_IfcSite_type,IFC4X2_IfcSpace_type + }); + IFC4X2_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X2_IfcFailureConnectionCondition_type,IFC4X2_IfcSlippageConnectionCondition_type + }); + IFC4X2_IfcFeatureElement_type->set_subtypes({ + IFC4X2_IfcFeatureElementAddition_type,IFC4X2_IfcFeatureElementSubtraction_type,IFC4X2_IfcSurfaceFeature_type + }); + IFC4X2_IfcFurnishingElement_type->set_subtypes({ + IFC4X2_IfcFurniture_type,IFC4X2_IfcSystemFurnitureElement_type + }); + IFC4X2_IfcFurnishingElementType_type->set_subtypes({ + IFC4X2_IfcFurnitureType_type,IFC4X2_IfcSystemFurnitureElementType_type + }); + IFC4X2_IfcGeometricSet_type->set_subtypes({ + IFC4X2_IfcGeometricCurveSet_type + }); + IFC4X2_IfcRepresentationContext_type->set_subtypes({ + IFC4X2_IfcGeometricRepresentationContext_type + }); + IFC4X2_IfcRepresentationItem_type->set_subtypes({ + IFC4X2_IfcGeometricRepresentationItem_type,IFC4X2_IfcMappedItem_type,IFC4X2_IfcStyledItem_type,IFC4X2_IfcTopologicalRepresentationItem_type + }); + IFC4X2_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X2_IfcGeometricRepresentationSubContext_type + }); + IFC4X2_IfcPositioningElement_type->set_subtypes({ + IFC4X2_IfcGrid_type,IFC4X2_IfcLinearPositioningElement_type,IFC4X2_IfcReferent_type + }); + IFC4X2_IfcObjectPlacement_type->set_subtypes({ + IFC4X2_IfcGridPlacement_type,IFC4X2_IfcLinearPlacement_type,IFC4X2_IfcLocalPlacement_type + }); + IFC4X2_IfcTessellatedItem_type->set_subtypes({ + IFC4X2_IfcIndexedPolygonalFace_type,IFC4X2_IfcTessellatedFaceSet_type + }); + IFC4X2_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X2_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X2_IfcTextureCoordinate_type->set_subtypes({ + IFC4X2_IfcIndexedTextureMap_type,IFC4X2_IfcTextureCoordinateGenerator_type,IFC4X2_IfcTextureMap_type + }); + IFC4X2_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X2_IfcIndexedTriangleTextureMap_type + }); + IFC4X2_IfcSurfaceCurve_type->set_subtypes({ + IFC4X2_IfcIntersectionCurve_type,IFC4X2_IfcSeamCurve_type + }); + IFC4X2_IfcTimeSeries_type->set_subtypes({ + IFC4X2_IfcIrregularTimeSeries_type,IFC4X2_IfcRegularTimeSeries_type + }); + IFC4X2_IfcLightSource_type->set_subtypes({ + IFC4X2_IfcLightSourceAmbient_type,IFC4X2_IfcLightSourceDirectional_type,IFC4X2_IfcLightSourceGoniometric_type,IFC4X2_IfcLightSourcePositional_type + }); + IFC4X2_IfcLightSourcePositional_type->set_subtypes({ + IFC4X2_IfcLightSourceSpot_type + }); + IFC4X2_IfcCoordinateOperation_type->set_subtypes({ + IFC4X2_IfcMapConversion_type + }); + IFC4X2_IfcMaterialDefinition_type->set_subtypes({ + IFC4X2_IfcMaterial_type,IFC4X2_IfcMaterialConstituent_type,IFC4X2_IfcMaterialConstituentSet_type,IFC4X2_IfcMaterialLayer_type,IFC4X2_IfcMaterialLayerSet_type,IFC4X2_IfcMaterialProfile_type,IFC4X2_IfcMaterialProfileSet_type + }); + IFC4X2_IfcProductRepresentation_type->set_subtypes({ + IFC4X2_IfcMaterialDefinitionRepresentation_type,IFC4X2_IfcProductDefinitionShape_type + }); + IFC4X2_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X2_IfcMaterialLayerSetUsage_type,IFC4X2_IfcMaterialProfileSetUsage_type + }); + IFC4X2_IfcMaterialLayer_type->set_subtypes({ + IFC4X2_IfcMaterialLayerWithOffsets_type + }); + IFC4X2_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X2_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X2_IfcMaterialProfile_type->set_subtypes({ + IFC4X2_IfcMaterialProfileWithOffsets_type + }); + IFC4X2_IfcExtendedProperties_type->set_subtypes({ + IFC4X2_IfcMaterialProperties_type,IFC4X2_IfcProfileProperties_type + }); + IFC4X2_IfcMember_type->set_subtypes({ + IFC4X2_IfcMemberStandardCase_type + }); + IFC4X2_IfcConstraint_type->set_subtypes({ + IFC4X2_IfcMetric_type,IFC4X2_IfcObjective_type + }); + IFC4X2_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X2_IfcMirroredProfileDef_type + }); + IFC4X2_IfcRoot_type->set_subtypes({ + IFC4X2_IfcObjectDefinition_type,IFC4X2_IfcPropertyDefinition_type,IFC4X2_IfcRelationship_type + }); + IFC4X2_IfcActor_type->set_subtypes({ + IFC4X2_IfcOccupant_type + }); + IFC4X2_IfcOffsetCurve_type->set_subtypes({ + IFC4X2_IfcOffsetCurve2D_type,IFC4X2_IfcOffsetCurve3D_type,IFC4X2_IfcOffsetCurveByDistances_type + }); + IFC4X2_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X2_IfcOpeningElement_type,IFC4X2_IfcVoidingFeature_type + }); + IFC4X2_IfcOpeningElement_type->set_subtypes({ + IFC4X2_IfcOpeningStandardCase_type + }); + IFC4X2_IfcBoundaryCurve_type->set_subtypes({ + IFC4X2_IfcOuterBoundaryCurve_type + }); + IFC4X2_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X2_IfcPhysicalComplexQuantity_type,IFC4X2_IfcPhysicalSimpleQuantity_type + }); + IFC4X2_IfcPlanarExtent_type->set_subtypes({ + IFC4X2_IfcPlanarBox_type + }); + IFC4X2_IfcPlate_type->set_subtypes({ + IFC4X2_IfcPlateStandardCase_type + }); + IFC4X2_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X2_IfcPolygonalFaceSet_type,IFC4X2_IfcTriangulatedFaceSet_type + }); + IFC4X2_IfcAddress_type->set_subtypes({ + IFC4X2_IfcPostalAddress_type,IFC4X2_IfcTelecomAddress_type + }); + IFC4X2_IfcPreDefinedItem_type->set_subtypes({ + IFC4X2_IfcPreDefinedColour_type,IFC4X2_IfcPreDefinedCurveFont_type,IFC4X2_IfcPreDefinedTextFont_type + }); + IFC4X2_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X2_IfcPreDefinedPropertySet_type,IFC4X2_IfcPropertySet_type,IFC4X2_IfcQuantitySet_type + }); + IFC4X2_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X2_IfcPresentationLayerWithStyle_type + }); + IFC4X2_IfcContext_type->set_subtypes({ + IFC4X2_IfcProject_type,IFC4X2_IfcProjectLibrary_type + }); + IFC4X2_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X2_IfcProjectedCRS_type + }); + IFC4X2_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X2_IfcProjectionElement_type + }); + IFC4X2_IfcSimpleProperty_type->set_subtypes({ + IFC4X2_IfcPropertyBoundedValue_type,IFC4X2_IfcPropertyEnumeratedValue_type,IFC4X2_IfcPropertyListValue_type,IFC4X2_IfcPropertyReferenceValue_type,IFC4X2_IfcPropertySingleValue_type,IFC4X2_IfcPropertyTableValue_type + }); + IFC4X2_IfcPropertyDefinition_type->set_subtypes({ + IFC4X2_IfcPropertySetDefinition_type,IFC4X2_IfcPropertyTemplateDefinition_type + }); + IFC4X2_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X2_IfcPropertySetTemplate_type,IFC4X2_IfcPropertyTemplate_type + }); + IFC4X2_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X2_IfcQuantityArea_type,IFC4X2_IfcQuantityCount_type,IFC4X2_IfcQuantityLength_type,IFC4X2_IfcQuantityTime_type,IFC4X2_IfcQuantityVolume_type,IFC4X2_IfcQuantityWeight_type + }); + IFC4X2_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X2_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X2_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X2_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X2_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X2_IfcRectangleHollowProfileDef_type,IFC4X2_IfcRoundedRectangleProfileDef_type + }); + IFC4X2_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X2_IfcReinforcementBarProperties_type,IFC4X2_IfcSectionProperties_type,IFC4X2_IfcSectionReinforcementProperties_type + }); + IFC4X2_IfcReinforcingElement_type->set_subtypes({ + IFC4X2_IfcReinforcingBar_type,IFC4X2_IfcReinforcingMesh_type,IFC4X2_IfcTendon_type,IFC4X2_IfcTendonAnchor_type,IFC4X2_IfcTendonConduit_type + }); + IFC4X2_IfcReinforcingElementType_type->set_subtypes({ + IFC4X2_IfcReinforcingBarType_type,IFC4X2_IfcReinforcingMeshType_type,IFC4X2_IfcTendonAnchorType_type,IFC4X2_IfcTendonConduitType_type,IFC4X2_IfcTendonType_type + }); + IFC4X2_IfcRelDecomposes_type->set_subtypes({ + IFC4X2_IfcRelAggregates_type,IFC4X2_IfcRelNests_type,IFC4X2_IfcRelProjectsElement_type,IFC4X2_IfcRelVoidsElement_type + }); + IFC4X2_IfcRelationship_type->set_subtypes({ + IFC4X2_IfcRelAssigns_type,IFC4X2_IfcRelAssociates_type,IFC4X2_IfcRelConnects_type,IFC4X2_IfcRelDeclares_type,IFC4X2_IfcRelDecomposes_type,IFC4X2_IfcRelDefines_type + }); + IFC4X2_IfcRelAssigns_type->set_subtypes({ + IFC4X2_IfcRelAssignsToActor_type,IFC4X2_IfcRelAssignsToControl_type,IFC4X2_IfcRelAssignsToGroup_type,IFC4X2_IfcRelAssignsToProcess_type,IFC4X2_IfcRelAssignsToProduct_type,IFC4X2_IfcRelAssignsToResource_type + }); + IFC4X2_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X2_IfcRelAssignsToGroupByFactor_type + }); + IFC4X2_IfcRelAssociates_type->set_subtypes({ + IFC4X2_IfcRelAssociatesApproval_type,IFC4X2_IfcRelAssociatesClassification_type,IFC4X2_IfcRelAssociatesConstraint_type,IFC4X2_IfcRelAssociatesDocument_type,IFC4X2_IfcRelAssociatesLibrary_type,IFC4X2_IfcRelAssociatesMaterial_type + }); + IFC4X2_IfcRelConnects_type->set_subtypes({ + IFC4X2_IfcRelConnectsElements_type,IFC4X2_IfcRelConnectsPortToElement_type,IFC4X2_IfcRelConnectsPorts_type,IFC4X2_IfcRelConnectsStructuralActivity_type,IFC4X2_IfcRelConnectsStructuralMember_type,IFC4X2_IfcRelContainedInSpatialStructure_type,IFC4X2_IfcRelCoversBldgElements_type,IFC4X2_IfcRelCoversSpaces_type,IFC4X2_IfcRelFillsElement_type,IFC4X2_IfcRelFlowControlElements_type,IFC4X2_IfcRelInterferesElements_type,IFC4X2_IfcRelPositions_type,IFC4X2_IfcRelReferencedInSpatialStructure_type,IFC4X2_IfcRelSequence_type,IFC4X2_IfcRelServicesBuildings_type,IFC4X2_IfcRelSpaceBoundary_type + }); + IFC4X2_IfcRelConnectsElements_type->set_subtypes({ + IFC4X2_IfcRelConnectsPathElements_type,IFC4X2_IfcRelConnectsWithRealizingElements_type + }); + IFC4X2_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X2_IfcRelConnectsWithEccentricity_type + }); + IFC4X2_IfcRelDefines_type->set_subtypes({ + IFC4X2_IfcRelDefinesByObject_type,IFC4X2_IfcRelDefinesByProperties_type,IFC4X2_IfcRelDefinesByTemplate_type,IFC4X2_IfcRelDefinesByType_type + }); + IFC4X2_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X2_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X2_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X2_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X2_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X2_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X2_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X2_IfcRevolvedAreaSolidTapered_type + }); + IFC4X2_IfcSectionedSolid_type->set_subtypes({ + IFC4X2_IfcSectionedSolidHorizontal_type + }); + IFC4X2_IfcRepresentation_type->set_subtypes({ + IFC4X2_IfcShapeModel_type,IFC4X2_IfcStyleModel_type + }); + IFC4X2_IfcShapeModel_type->set_subtypes({ + IFC4X2_IfcShapeRepresentation_type,IFC4X2_IfcTopologyRepresentation_type + }); + IFC4X2_IfcSlab_type->set_subtypes({ + IFC4X2_IfcSlabElementedCase_type,IFC4X2_IfcSlabStandardCase_type + }); + IFC4X2_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X2_IfcSpaceType_type + }); + IFC4X2_IfcSpatialElementType_type->set_subtypes({ + IFC4X2_IfcSpatialStructureElementType_type,IFC4X2_IfcSpatialZoneType_type + }); + IFC4X2_IfcStructuralActivity_type->set_subtypes({ + IFC4X2_IfcStructuralAction_type,IFC4X2_IfcStructuralReaction_type + }); + IFC4X2_IfcStructuralItem_type->set_subtypes({ + IFC4X2_IfcStructuralConnection_type,IFC4X2_IfcStructuralMember_type + }); + IFC4X2_IfcStructuralAction_type->set_subtypes({ + IFC4X2_IfcStructuralCurveAction_type,IFC4X2_IfcStructuralPointAction_type,IFC4X2_IfcStructuralSurfaceAction_type + }); + IFC4X2_IfcStructuralConnection_type->set_subtypes({ + IFC4X2_IfcStructuralCurveConnection_type,IFC4X2_IfcStructuralPointConnection_type,IFC4X2_IfcStructuralSurfaceConnection_type + }); + IFC4X2_IfcStructuralMember_type->set_subtypes({ + IFC4X2_IfcStructuralCurveMember_type,IFC4X2_IfcStructuralSurfaceMember_type + }); + IFC4X2_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X2_IfcStructuralCurveMemberVarying_type + }); + IFC4X2_IfcStructuralReaction_type->set_subtypes({ + IFC4X2_IfcStructuralCurveReaction_type,IFC4X2_IfcStructuralPointReaction_type,IFC4X2_IfcStructuralSurfaceReaction_type + }); + IFC4X2_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X2_IfcStructuralLinearAction_type + }); + IFC4X2_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X2_IfcStructuralLoadCase_type + }); + IFC4X2_IfcStructuralLoad_type->set_subtypes({ + IFC4X2_IfcStructuralLoadConfiguration_type,IFC4X2_IfcStructuralLoadOrResult_type + }); + IFC4X2_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X2_IfcStructuralLoadLinearForce_type,IFC4X2_IfcStructuralLoadPlanarForce_type,IFC4X2_IfcStructuralLoadSingleDisplacement_type,IFC4X2_IfcStructuralLoadSingleForce_type,IFC4X2_IfcStructuralLoadTemperature_type + }); + IFC4X2_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X2_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X2_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X2_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X2_IfcStructuralLoadStatic_type,IFC4X2_IfcSurfaceReinforcementArea_type + }); + IFC4X2_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X2_IfcStructuralPlanarAction_type + }); + IFC4X2_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X2_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X2_IfcStyleModel_type->set_subtypes({ + IFC4X2_IfcStyledRepresentation_type + }); + IFC4X2_IfcSweptSurface_type->set_subtypes({ + IFC4X2_IfcSurfaceOfLinearExtrusion_type,IFC4X2_IfcSurfaceOfRevolution_type + }); + IFC4X2_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X2_IfcSurfaceStyleRendering_type + }); + IFC4X2_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X2_IfcSweptDiskSolidPolygonal_type + }); + IFC4X2_IfcTaskTime_type->set_subtypes({ + IFC4X2_IfcTaskTimeRecurring_type + }); + IFC4X2_IfcTextLiteral_type->set_subtypes({ + IFC4X2_IfcTextLiteralWithExtent_type + }); + IFC4X2_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X2_IfcTextStyleFontModel_type + }); + IFC4X2_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X2_IfcTriangulatedIrregularNetwork_type + }); + IFC4X2_IfcTypeObject_type->set_subtypes({ + IFC4X2_IfcTypeProcess_type,IFC4X2_IfcTypeProduct_type,IFC4X2_IfcTypeResource_type + }); + IFC4X2_IfcVertex_type->set_subtypes({ + IFC4X2_IfcVertexPoint_type + }); + IFC4X2_IfcWall_type->set_subtypes({ + IFC4X2_IfcWallElementedCase_type,IFC4X2_IfcWallStandardCase_type + }); + IFC4X2_IfcWindow_type->set_subtypes({ + IFC4X2_IfcWindowStandardCase_type + }); + IFC4X2_IfcWorkControl_type->set_subtypes({ + IFC4X2_IfcWorkPlan_type,IFC4X2_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1223); - declarations.push_back(IFC4X2_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X2_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X2_IfcActionRequest_type); - declarations.push_back(IFC4X2_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X2_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcActionTypeEnum_type); - declarations.push_back(IFC4X2_IfcActor_type); - declarations.push_back(IFC4X2_IfcActorRole_type); - declarations.push_back(IFC4X2_IfcActorSelect_type); - declarations.push_back(IFC4X2_IfcActuator_type); - declarations.push_back(IFC4X2_IfcActuatorType_type); - declarations.push_back(IFC4X2_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X2_IfcAddress_type); - declarations.push_back(IFC4X2_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X2_IfcAdvancedBrep_type); - declarations.push_back(IFC4X2_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X2_IfcAdvancedFace_type); - declarations.push_back(IFC4X2_IfcAirTerminal_type); - declarations.push_back(IFC4X2_IfcAirTerminalBox_type); - declarations.push_back(IFC4X2_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X2_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X2_IfcAirTerminalType_type); - declarations.push_back(IFC4X2_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X2_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X2_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X2_IfcAlarm_type); - declarations.push_back(IFC4X2_IfcAlarmType_type); - declarations.push_back(IFC4X2_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X2_IfcAlignment_type); - declarations.push_back(IFC4X2_IfcAlignment2DHorizontal_type); - declarations.push_back(IFC4X2_IfcAlignment2DHorizontalSegment_type); - declarations.push_back(IFC4X2_IfcAlignment2DSegment_type); - declarations.push_back(IFC4X2_IfcAlignment2DVerSegCircularArc_type); - declarations.push_back(IFC4X2_IfcAlignment2DVerSegLine_type); - declarations.push_back(IFC4X2_IfcAlignment2DVerSegParabolicArc_type); - declarations.push_back(IFC4X2_IfcAlignment2DVertical_type); - declarations.push_back(IFC4X2_IfcAlignment2DVerticalSegment_type); - declarations.push_back(IFC4X2_IfcAlignmentCurve_type); - declarations.push_back(IFC4X2_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X2_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X2_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X2_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X2_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X2_IfcAnnotation_type); - declarations.push_back(IFC4X2_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X2_IfcApplication_type); - declarations.push_back(IFC4X2_IfcAppliedValue_type); - declarations.push_back(IFC4X2_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X2_IfcApproval_type); - declarations.push_back(IFC4X2_IfcApprovalRelationship_type); - declarations.push_back(IFC4X2_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X2_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X2_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X2_IfcArcIndex_type); - declarations.push_back(IFC4X2_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X2_IfcAreaMeasure_type); - declarations.push_back(IFC4X2_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X2_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X2_IfcAsset_type); - declarations.push_back(IFC4X2_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X2_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X2_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X2_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X2_IfcAxis1Placement_type); - declarations.push_back(IFC4X2_IfcAxis2Placement_type); - declarations.push_back(IFC4X2_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X2_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X2_IfcBeam_type); - declarations.push_back(IFC4X2_IfcBeamStandardCase_type); - declarations.push_back(IFC4X2_IfcBeamType_type); - declarations.push_back(IFC4X2_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X2_IfcBearing_type); - declarations.push_back(IFC4X2_IfcBearingType_type); - declarations.push_back(IFC4X2_IfcBearingTypeDisplacementEnum_type); - declarations.push_back(IFC4X2_IfcBearingTypeEnum_type); - declarations.push_back(IFC4X2_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X2_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X2_IfcBinary_type); - declarations.push_back(IFC4X2_IfcBlobTexture_type); - declarations.push_back(IFC4X2_IfcBlock_type); - declarations.push_back(IFC4X2_IfcBoiler_type); - declarations.push_back(IFC4X2_IfcBoilerType_type); - declarations.push_back(IFC4X2_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X2_IfcBoolean_type); - declarations.push_back(IFC4X2_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X2_IfcBooleanOperand_type); - declarations.push_back(IFC4X2_IfcBooleanOperator_type); - declarations.push_back(IFC4X2_IfcBooleanResult_type); - declarations.push_back(IFC4X2_IfcBoundaryCondition_type); - declarations.push_back(IFC4X2_IfcBoundaryCurve_type); - declarations.push_back(IFC4X2_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X2_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X2_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X2_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X2_IfcBoundedCurve_type); - declarations.push_back(IFC4X2_IfcBoundedSurface_type); - declarations.push_back(IFC4X2_IfcBoundingBox_type); - declarations.push_back(IFC4X2_IfcBoxAlignment_type); - declarations.push_back(IFC4X2_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X2_IfcBridge_type); - declarations.push_back(IFC4X2_IfcBridgePart_type); - declarations.push_back(IFC4X2_IfcBridgePartTypeEnum_type); - declarations.push_back(IFC4X2_IfcBridgeTypeEnum_type); - declarations.push_back(IFC4X2_IfcBSplineCurve_type); - declarations.push_back(IFC4X2_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X2_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X2_IfcBSplineSurface_type); - declarations.push_back(IFC4X2_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X2_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X2_IfcBuilding_type); - declarations.push_back(IFC4X2_IfcBuildingElement_type); - declarations.push_back(IFC4X2_IfcBuildingElementPart_type); - declarations.push_back(IFC4X2_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X2_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X2_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X2_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X2_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X2_IfcBuildingElementType_type); - declarations.push_back(IFC4X2_IfcBuildingStorey_type); - declarations.push_back(IFC4X2_IfcBuildingSystem_type); - declarations.push_back(IFC4X2_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X2_IfcBurner_type); - declarations.push_back(IFC4X2_IfcBurnerType_type); - declarations.push_back(IFC4X2_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X2_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X2_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X2_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X2_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X2_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X2_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X2_IfcCableFitting_type); - declarations.push_back(IFC4X2_IfcCableFittingType_type); - declarations.push_back(IFC4X2_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X2_IfcCableSegment_type); - declarations.push_back(IFC4X2_IfcCableSegmentType_type); - declarations.push_back(IFC4X2_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X2_IfcCaissonFoundation_type); - declarations.push_back(IFC4X2_IfcCaissonFoundationType_type); - declarations.push_back(IFC4X2_IfcCaissonFoundationTypeEnum_type); - declarations.push_back(IFC4X2_IfcCardinalPointReference_type); - declarations.push_back(IFC4X2_IfcCartesianPoint_type); - declarations.push_back(IFC4X2_IfcCartesianPointList_type); - declarations.push_back(IFC4X2_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X2_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X2_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X2_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X2_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X2_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X2_IfcChangeActionEnum_type); - declarations.push_back(IFC4X2_IfcChiller_type); - declarations.push_back(IFC4X2_IfcChillerType_type); - declarations.push_back(IFC4X2_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X2_IfcChimney_type); - declarations.push_back(IFC4X2_IfcChimneyType_type); - declarations.push_back(IFC4X2_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X2_IfcCircle_type); - declarations.push_back(IFC4X2_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X2_IfcCircleProfileDef_type); - declarations.push_back(IFC4X2_IfcCircularArcSegment2D_type); - declarations.push_back(IFC4X2_IfcCivilElement_type); - declarations.push_back(IFC4X2_IfcCivilElementType_type); - declarations.push_back(IFC4X2_IfcClassification_type); - declarations.push_back(IFC4X2_IfcClassificationReference_type); - declarations.push_back(IFC4X2_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X2_IfcClassificationSelect_type); - declarations.push_back(IFC4X2_IfcClosedShell_type); - declarations.push_back(IFC4X2_IfcCoil_type); - declarations.push_back(IFC4X2_IfcCoilType_type); - declarations.push_back(IFC4X2_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X2_IfcColour_type); - declarations.push_back(IFC4X2_IfcColourOrFactor_type); - declarations.push_back(IFC4X2_IfcColourRgb_type); - declarations.push_back(IFC4X2_IfcColourRgbList_type); - declarations.push_back(IFC4X2_IfcColourSpecification_type); - declarations.push_back(IFC4X2_IfcColumn_type); - declarations.push_back(IFC4X2_IfcColumnStandardCase_type); - declarations.push_back(IFC4X2_IfcColumnType_type); - declarations.push_back(IFC4X2_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X2_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X2_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X2_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X2_IfcComplexNumber_type); - declarations.push_back(IFC4X2_IfcComplexProperty_type); - declarations.push_back(IFC4X2_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X2_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X2_IfcCompositeCurve_type); - declarations.push_back(IFC4X2_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X2_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X2_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X2_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X2_IfcCompressor_type); - declarations.push_back(IFC4X2_IfcCompressorType_type); - declarations.push_back(IFC4X2_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X2_IfcCondenser_type); - declarations.push_back(IFC4X2_IfcCondenserType_type); - declarations.push_back(IFC4X2_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X2_IfcConic_type); - declarations.push_back(IFC4X2_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X2_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X2_IfcConnectionGeometry_type); - declarations.push_back(IFC4X2_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X2_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X2_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X2_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X2_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X2_IfcConstraint_type); - declarations.push_back(IFC4X2_IfcConstraintEnum_type); - declarations.push_back(IFC4X2_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X2_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X2_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X2_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcConstructionProductResource_type); - declarations.push_back(IFC4X2_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X2_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcConstructionResource_type); - declarations.push_back(IFC4X2_IfcConstructionResourceType_type); - declarations.push_back(IFC4X2_IfcContext_type); - declarations.push_back(IFC4X2_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X2_IfcContextDependentUnit_type); - declarations.push_back(IFC4X2_IfcControl_type); - declarations.push_back(IFC4X2_IfcController_type); - declarations.push_back(IFC4X2_IfcControllerType_type); - declarations.push_back(IFC4X2_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X2_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X2_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X2_IfcCooledBeam_type); - declarations.push_back(IFC4X2_IfcCooledBeamType_type); - declarations.push_back(IFC4X2_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X2_IfcCoolingTower_type); - declarations.push_back(IFC4X2_IfcCoolingTowerType_type); - declarations.push_back(IFC4X2_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X2_IfcCoordinateOperation_type); - declarations.push_back(IFC4X2_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X2_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X2_IfcCostItem_type); - declarations.push_back(IFC4X2_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X2_IfcCostSchedule_type); - declarations.push_back(IFC4X2_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X2_IfcCostValue_type); - declarations.push_back(IFC4X2_IfcCountMeasure_type); - declarations.push_back(IFC4X2_IfcCovering_type); - declarations.push_back(IFC4X2_IfcCoveringType_type); - declarations.push_back(IFC4X2_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X2_IfcCrewResource_type); - declarations.push_back(IFC4X2_IfcCrewResourceType_type); - declarations.push_back(IFC4X2_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X2_IfcCsgSelect_type); - declarations.push_back(IFC4X2_IfcCsgSolid_type); - declarations.push_back(IFC4X2_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X2_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X2_IfcCurtainWall_type); - declarations.push_back(IFC4X2_IfcCurtainWallType_type); - declarations.push_back(IFC4X2_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X2_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X2_IfcCurve_type); - declarations.push_back(IFC4X2_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X2_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X2_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X2_IfcCurveOnSurface_type); - declarations.push_back(IFC4X2_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X2_IfcCurveSegment2D_type); - declarations.push_back(IFC4X2_IfcCurveStyle_type); - declarations.push_back(IFC4X2_IfcCurveStyleFont_type); - declarations.push_back(IFC4X2_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X2_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X2_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X2_IfcCylindricalSurface_type); - declarations.push_back(IFC4X2_IfcDamper_type); - declarations.push_back(IFC4X2_IfcDamperType_type); - declarations.push_back(IFC4X2_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X2_IfcDataOriginEnum_type); - declarations.push_back(IFC4X2_IfcDate_type); - declarations.push_back(IFC4X2_IfcDateTime_type); - declarations.push_back(IFC4X2_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X2_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X2_IfcDeepFoundation_type); - declarations.push_back(IFC4X2_IfcDeepFoundationType_type); - declarations.push_back(IFC4X2_IfcDefinitionSelect_type); - declarations.push_back(IFC4X2_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X2_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X2_IfcDerivedUnit_type); - declarations.push_back(IFC4X2_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X2_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X2_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X2_IfcDimensionalExponents_type); - declarations.push_back(IFC4X2_IfcDimensionCount_type); - declarations.push_back(IFC4X2_IfcDirection_type); - declarations.push_back(IFC4X2_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X2_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X2_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X2_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X2_IfcDistanceExpression_type); - declarations.push_back(IFC4X2_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X2_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X2_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcDistributionCircuit_type); - declarations.push_back(IFC4X2_IfcDistributionControlElement_type); - declarations.push_back(IFC4X2_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X2_IfcDistributionElement_type); - declarations.push_back(IFC4X2_IfcDistributionElementType_type); - declarations.push_back(IFC4X2_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X2_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X2_IfcDistributionPort_type); - declarations.push_back(IFC4X2_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X2_IfcDistributionSystem_type); - declarations.push_back(IFC4X2_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X2_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X2_IfcDocumentInformation_type); - declarations.push_back(IFC4X2_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X2_IfcDocumentReference_type); - declarations.push_back(IFC4X2_IfcDocumentSelect_type); - declarations.push_back(IFC4X2_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X2_IfcDoor_type); - declarations.push_back(IFC4X2_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X2_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X2_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X2_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X2_IfcDoorStandardCase_type); - declarations.push_back(IFC4X2_IfcDoorStyle_type); - declarations.push_back(IFC4X2_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4X2_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4X2_IfcDoorType_type); - declarations.push_back(IFC4X2_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X2_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X2_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X2_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X2_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X2_IfcDuctFitting_type); - declarations.push_back(IFC4X2_IfcDuctFittingType_type); - declarations.push_back(IFC4X2_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X2_IfcDuctSegment_type); - declarations.push_back(IFC4X2_IfcDuctSegmentType_type); - declarations.push_back(IFC4X2_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X2_IfcDuctSilencer_type); - declarations.push_back(IFC4X2_IfcDuctSilencerType_type); - declarations.push_back(IFC4X2_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X2_IfcDuration_type); - declarations.push_back(IFC4X2_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X2_IfcEdge_type); - declarations.push_back(IFC4X2_IfcEdgeCurve_type); - declarations.push_back(IFC4X2_IfcEdgeLoop_type); - declarations.push_back(IFC4X2_IfcElectricAppliance_type); - declarations.push_back(IFC4X2_IfcElectricApplianceType_type); - declarations.push_back(IFC4X2_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X2_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X2_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X2_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X2_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X2_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X2_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X2_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X2_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X2_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X2_IfcElectricGenerator_type); - declarations.push_back(IFC4X2_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X2_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X2_IfcElectricMotor_type); - declarations.push_back(IFC4X2_IfcElectricMotorType_type); - declarations.push_back(IFC4X2_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X2_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X2_IfcElectricTimeControl_type); - declarations.push_back(IFC4X2_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X2_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X2_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X2_IfcElement_type); - declarations.push_back(IFC4X2_IfcElementarySurface_type); - declarations.push_back(IFC4X2_IfcElementAssembly_type); - declarations.push_back(IFC4X2_IfcElementAssemblyType_type); - declarations.push_back(IFC4X2_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X2_IfcElementComponent_type); - declarations.push_back(IFC4X2_IfcElementComponentType_type); - declarations.push_back(IFC4X2_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X2_IfcElementQuantity_type); - declarations.push_back(IFC4X2_IfcElementType_type); - declarations.push_back(IFC4X2_IfcEllipse_type); - declarations.push_back(IFC4X2_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X2_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X2_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X2_IfcEnergyMeasure_type); - declarations.push_back(IFC4X2_IfcEngine_type); - declarations.push_back(IFC4X2_IfcEngineType_type); - declarations.push_back(IFC4X2_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X2_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X2_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X2_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X2_IfcEvaporator_type); - declarations.push_back(IFC4X2_IfcEvaporatorType_type); - declarations.push_back(IFC4X2_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X2_IfcEvent_type); - declarations.push_back(IFC4X2_IfcEventTime_type); - declarations.push_back(IFC4X2_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X2_IfcEventType_type); - declarations.push_back(IFC4X2_IfcEventTypeEnum_type); - declarations.push_back(IFC4X2_IfcExtendedProperties_type); - declarations.push_back(IFC4X2_IfcExternalInformation_type); - declarations.push_back(IFC4X2_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X2_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X2_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X2_IfcExternalReference_type); - declarations.push_back(IFC4X2_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X2_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X2_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X2_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X2_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X2_IfcFace_type); - declarations.push_back(IFC4X2_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X2_IfcFaceBound_type); - declarations.push_back(IFC4X2_IfcFaceOuterBound_type); - declarations.push_back(IFC4X2_IfcFaceSurface_type); - declarations.push_back(IFC4X2_IfcFacetedBrep_type); - declarations.push_back(IFC4X2_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X2_IfcFacility_type); - declarations.push_back(IFC4X2_IfcFacilityPart_type); - declarations.push_back(IFC4X2_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X2_IfcFan_type); - declarations.push_back(IFC4X2_IfcFanType_type); - declarations.push_back(IFC4X2_IfcFanTypeEnum_type); - declarations.push_back(IFC4X2_IfcFastener_type); - declarations.push_back(IFC4X2_IfcFastenerType_type); - declarations.push_back(IFC4X2_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X2_IfcFeatureElement_type); - declarations.push_back(IFC4X2_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X2_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X2_IfcFillAreaStyle_type); - declarations.push_back(IFC4X2_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X2_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X2_IfcFillStyleSelect_type); - declarations.push_back(IFC4X2_IfcFilter_type); - declarations.push_back(IFC4X2_IfcFilterType_type); - declarations.push_back(IFC4X2_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X2_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X2_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X2_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X2_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X2_IfcFlowController_type); - declarations.push_back(IFC4X2_IfcFlowControllerType_type); - declarations.push_back(IFC4X2_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X2_IfcFlowFitting_type); - declarations.push_back(IFC4X2_IfcFlowFittingType_type); - declarations.push_back(IFC4X2_IfcFlowInstrument_type); - declarations.push_back(IFC4X2_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X2_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X2_IfcFlowMeter_type); - declarations.push_back(IFC4X2_IfcFlowMeterType_type); - declarations.push_back(IFC4X2_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X2_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X2_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X2_IfcFlowSegment_type); - declarations.push_back(IFC4X2_IfcFlowSegmentType_type); - declarations.push_back(IFC4X2_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X2_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X2_IfcFlowTerminal_type); - declarations.push_back(IFC4X2_IfcFlowTerminalType_type); - declarations.push_back(IFC4X2_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X2_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X2_IfcFontStyle_type); - declarations.push_back(IFC4X2_IfcFontVariant_type); - declarations.push_back(IFC4X2_IfcFontWeight_type); - declarations.push_back(IFC4X2_IfcFooting_type); - declarations.push_back(IFC4X2_IfcFootingType_type); - declarations.push_back(IFC4X2_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X2_IfcForceMeasure_type); - declarations.push_back(IFC4X2_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X2_IfcFurnishingElement_type); - declarations.push_back(IFC4X2_IfcFurnishingElementType_type); - declarations.push_back(IFC4X2_IfcFurniture_type); - declarations.push_back(IFC4X2_IfcFurnitureType_type); - declarations.push_back(IFC4X2_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X2_IfcGeographicElement_type); - declarations.push_back(IFC4X2_IfcGeographicElementType_type); - declarations.push_back(IFC4X2_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X2_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X2_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X2_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X2_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X2_IfcGeometricSet_type); - declarations.push_back(IFC4X2_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X2_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X2_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X2_IfcGrid_type); - declarations.push_back(IFC4X2_IfcGridAxis_type); - declarations.push_back(IFC4X2_IfcGridPlacement_type); - declarations.push_back(IFC4X2_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X2_IfcGridTypeEnum_type); - declarations.push_back(IFC4X2_IfcGroup_type); - declarations.push_back(IFC4X2_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X2_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X2_IfcHeatExchanger_type); - declarations.push_back(IFC4X2_IfcHeatExchangerType_type); - declarations.push_back(IFC4X2_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X2_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X2_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X2_IfcHumidifier_type); - declarations.push_back(IFC4X2_IfcHumidifierType_type); - declarations.push_back(IFC4X2_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X2_IfcIdentifier_type); - declarations.push_back(IFC4X2_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X2_IfcImageTexture_type); - declarations.push_back(IFC4X2_IfcIndexedColourMap_type); - declarations.push_back(IFC4X2_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X2_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X2_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X2_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X2_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X2_IfcInductanceMeasure_type); - declarations.push_back(IFC4X2_IfcInteger_type); - declarations.push_back(IFC4X2_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X2_IfcInterceptor_type); - declarations.push_back(IFC4X2_IfcInterceptorType_type); - declarations.push_back(IFC4X2_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X2_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X2_IfcIntersectionCurve_type); - declarations.push_back(IFC4X2_IfcInventory_type); - declarations.push_back(IFC4X2_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X2_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X2_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X2_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X2_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X2_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X2_IfcJunctionBox_type); - declarations.push_back(IFC4X2_IfcJunctionBoxType_type); - declarations.push_back(IFC4X2_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X2_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X2_IfcKnotType_type); - declarations.push_back(IFC4X2_IfcLabel_type); - declarations.push_back(IFC4X2_IfcLaborResource_type); - declarations.push_back(IFC4X2_IfcLaborResourceType_type); - declarations.push_back(IFC4X2_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcLagTime_type); - declarations.push_back(IFC4X2_IfcLamp_type); - declarations.push_back(IFC4X2_IfcLampType_type); - declarations.push_back(IFC4X2_IfcLampTypeEnum_type); - declarations.push_back(IFC4X2_IfcLanguageId_type); - declarations.push_back(IFC4X2_IfcLayeredItem_type); - declarations.push_back(IFC4X2_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X2_IfcLengthMeasure_type); - declarations.push_back(IFC4X2_IfcLibraryInformation_type); - declarations.push_back(IFC4X2_IfcLibraryReference_type); - declarations.push_back(IFC4X2_IfcLibrarySelect_type); - declarations.push_back(IFC4X2_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X2_IfcLightDistributionData_type); - declarations.push_back(IFC4X2_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X2_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X2_IfcLightFixture_type); - declarations.push_back(IFC4X2_IfcLightFixtureType_type); - declarations.push_back(IFC4X2_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X2_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X2_IfcLightSource_type); - declarations.push_back(IFC4X2_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X2_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X2_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X2_IfcLightSourcePositional_type); - declarations.push_back(IFC4X2_IfcLightSourceSpot_type); - declarations.push_back(IFC4X2_IfcLine_type); - declarations.push_back(IFC4X2_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X2_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X2_IfcLinearPlacement_type); - declarations.push_back(IFC4X2_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X2_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X2_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X2_IfcLineIndex_type); - declarations.push_back(IFC4X2_IfcLineSegment2D_type); - declarations.push_back(IFC4X2_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X2_IfcLocalPlacement_type); - declarations.push_back(IFC4X2_IfcLogical_type); - declarations.push_back(IFC4X2_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X2_IfcLoop_type); - declarations.push_back(IFC4X2_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X2_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X2_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X2_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X2_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X2_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X2_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X2_IfcMapConversion_type); - declarations.push_back(IFC4X2_IfcMappedItem_type); - declarations.push_back(IFC4X2_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X2_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X2_IfcMassMeasure_type); - declarations.push_back(IFC4X2_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X2_IfcMaterial_type); - declarations.push_back(IFC4X2_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X2_IfcMaterialConstituent_type); - declarations.push_back(IFC4X2_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X2_IfcMaterialDefinition_type); - declarations.push_back(IFC4X2_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X2_IfcMaterialLayer_type); - declarations.push_back(IFC4X2_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X2_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X2_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X2_IfcMaterialList_type); - declarations.push_back(IFC4X2_IfcMaterialProfile_type); - declarations.push_back(IFC4X2_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X2_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X2_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X2_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X2_IfcMaterialProperties_type); - declarations.push_back(IFC4X2_IfcMaterialRelationship_type); - declarations.push_back(IFC4X2_IfcMaterialSelect_type); - declarations.push_back(IFC4X2_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X2_IfcMeasureValue_type); - declarations.push_back(IFC4X2_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X2_IfcMechanicalFastener_type); - declarations.push_back(IFC4X2_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X2_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X2_IfcMedicalDevice_type); - declarations.push_back(IFC4X2_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X2_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X2_IfcMember_type); - declarations.push_back(IFC4X2_IfcMemberStandardCase_type); - declarations.push_back(IFC4X2_IfcMemberType_type); - declarations.push_back(IFC4X2_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X2_IfcMetric_type); - declarations.push_back(IFC4X2_IfcMetricValueSelect_type); - declarations.push_back(IFC4X2_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X2_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X2_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X2_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X2_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X2_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X2_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X2_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X2_IfcMonetaryUnit_type); - declarations.push_back(IFC4X2_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X2_IfcMotorConnection_type); - declarations.push_back(IFC4X2_IfcMotorConnectionType_type); - declarations.push_back(IFC4X2_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X2_IfcNamedUnit_type); - declarations.push_back(IFC4X2_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X2_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X2_IfcNullStyle_type); - declarations.push_back(IFC4X2_IfcNumericMeasure_type); - declarations.push_back(IFC4X2_IfcObject_type); - declarations.push_back(IFC4X2_IfcObjectDefinition_type); - declarations.push_back(IFC4X2_IfcObjective_type); - declarations.push_back(IFC4X2_IfcObjectiveEnum_type); - declarations.push_back(IFC4X2_IfcObjectPlacement_type); - declarations.push_back(IFC4X2_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X2_IfcObjectTypeEnum_type); - declarations.push_back(IFC4X2_IfcOccupant_type); - declarations.push_back(IFC4X2_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X2_IfcOffsetCurve_type); - declarations.push_back(IFC4X2_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X2_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X2_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X2_IfcOpeningElement_type); - declarations.push_back(IFC4X2_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcOpeningStandardCase_type); - declarations.push_back(IFC4X2_IfcOpenShell_type); - declarations.push_back(IFC4X2_IfcOrganization_type); - declarations.push_back(IFC4X2_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X2_IfcOrientationExpression_type); - declarations.push_back(IFC4X2_IfcOrientedEdge_type); - declarations.push_back(IFC4X2_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X2_IfcOutlet_type); - declarations.push_back(IFC4X2_IfcOutletType_type); - declarations.push_back(IFC4X2_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X2_IfcOwnerHistory_type); - declarations.push_back(IFC4X2_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X2_IfcParameterValue_type); - declarations.push_back(IFC4X2_IfcPath_type); - declarations.push_back(IFC4X2_IfcPcurve_type); - declarations.push_back(IFC4X2_IfcPerformanceHistory_type); - declarations.push_back(IFC4X2_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X2_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X2_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X2_IfcPermit_type); - declarations.push_back(IFC4X2_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X2_IfcPerson_type); - declarations.push_back(IFC4X2_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X2_IfcPHMeasure_type); - declarations.push_back(IFC4X2_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X2_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X2_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X2_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X2_IfcPile_type); - declarations.push_back(IFC4X2_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X2_IfcPileType_type); - declarations.push_back(IFC4X2_IfcPileTypeEnum_type); - declarations.push_back(IFC4X2_IfcPipeFitting_type); - declarations.push_back(IFC4X2_IfcPipeFittingType_type); - declarations.push_back(IFC4X2_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X2_IfcPipeSegment_type); - declarations.push_back(IFC4X2_IfcPipeSegmentType_type); - declarations.push_back(IFC4X2_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X2_IfcPixelTexture_type); - declarations.push_back(IFC4X2_IfcPlacement_type); - declarations.push_back(IFC4X2_IfcPlanarBox_type); - declarations.push_back(IFC4X2_IfcPlanarExtent_type); - declarations.push_back(IFC4X2_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X2_IfcPlane_type); - declarations.push_back(IFC4X2_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X2_IfcPlate_type); - declarations.push_back(IFC4X2_IfcPlateStandardCase_type); - declarations.push_back(IFC4X2_IfcPlateType_type); - declarations.push_back(IFC4X2_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X2_IfcPoint_type); - declarations.push_back(IFC4X2_IfcPointOnCurve_type); - declarations.push_back(IFC4X2_IfcPointOnSurface_type); - declarations.push_back(IFC4X2_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X2_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X2_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X2_IfcPolyline_type); - declarations.push_back(IFC4X2_IfcPolyLoop_type); - declarations.push_back(IFC4X2_IfcPort_type); - declarations.push_back(IFC4X2_IfcPositioningElement_type); - declarations.push_back(IFC4X2_IfcPositiveInteger_type); - declarations.push_back(IFC4X2_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X2_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X2_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X2_IfcPostalAddress_type); - declarations.push_back(IFC4X2_IfcPowerMeasure_type); - declarations.push_back(IFC4X2_IfcPreDefinedColour_type); - declarations.push_back(IFC4X2_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X2_IfcPreDefinedItem_type); - declarations.push_back(IFC4X2_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X2_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X2_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X2_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X2_IfcPresentableText_type); - declarations.push_back(IFC4X2_IfcPresentationItem_type); - declarations.push_back(IFC4X2_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X2_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X2_IfcPresentationStyle_type); - declarations.push_back(IFC4X2_IfcPresentationStyleAssignment_type); - declarations.push_back(IFC4X2_IfcPresentationStyleSelect_type); - declarations.push_back(IFC4X2_IfcPressureMeasure_type); - declarations.push_back(IFC4X2_IfcProcedure_type); - declarations.push_back(IFC4X2_IfcProcedureType_type); - declarations.push_back(IFC4X2_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X2_IfcProcess_type); - declarations.push_back(IFC4X2_IfcProcessSelect_type); - declarations.push_back(IFC4X2_IfcProduct_type); - declarations.push_back(IFC4X2_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X2_IfcProductRepresentation_type); - declarations.push_back(IFC4X2_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X2_IfcProductSelect_type); - declarations.push_back(IFC4X2_IfcProfileDef_type); - declarations.push_back(IFC4X2_IfcProfileProperties_type); - declarations.push_back(IFC4X2_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X2_IfcProject_type); - declarations.push_back(IFC4X2_IfcProjectedCRS_type); - declarations.push_back(IFC4X2_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X2_IfcProjectionElement_type); - declarations.push_back(IFC4X2_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcProjectLibrary_type); - declarations.push_back(IFC4X2_IfcProjectOrder_type); - declarations.push_back(IFC4X2_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X2_IfcProperty_type); - declarations.push_back(IFC4X2_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X2_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X2_IfcPropertyDefinition_type); - declarations.push_back(IFC4X2_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X2_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X2_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X2_IfcPropertyListValue_type); - declarations.push_back(IFC4X2_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X2_IfcPropertySet_type); - declarations.push_back(IFC4X2_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X2_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X2_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X2_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X2_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X2_IfcPropertySingleValue_type); - declarations.push_back(IFC4X2_IfcPropertyTableValue_type); - declarations.push_back(IFC4X2_IfcPropertyTemplate_type); - declarations.push_back(IFC4X2_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X2_IfcProtectiveDevice_type); - declarations.push_back(IFC4X2_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X2_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X2_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X2_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X2_IfcProxy_type); - declarations.push_back(IFC4X2_IfcPump_type); - declarations.push_back(IFC4X2_IfcPumpType_type); - declarations.push_back(IFC4X2_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X2_IfcQuantityArea_type); - declarations.push_back(IFC4X2_IfcQuantityCount_type); - declarations.push_back(IFC4X2_IfcQuantityLength_type); - declarations.push_back(IFC4X2_IfcQuantitySet_type); - declarations.push_back(IFC4X2_IfcQuantityTime_type); - declarations.push_back(IFC4X2_IfcQuantityVolume_type); - declarations.push_back(IFC4X2_IfcQuantityWeight_type); - declarations.push_back(IFC4X2_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X2_IfcRailing_type); - declarations.push_back(IFC4X2_IfcRailingType_type); - declarations.push_back(IFC4X2_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X2_IfcRamp_type); - declarations.push_back(IFC4X2_IfcRampFlight_type); - declarations.push_back(IFC4X2_IfcRampFlightType_type); - declarations.push_back(IFC4X2_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X2_IfcRampType_type); - declarations.push_back(IFC4X2_IfcRampTypeEnum_type); - declarations.push_back(IFC4X2_IfcRatioMeasure_type); - declarations.push_back(IFC4X2_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X2_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X2_IfcReal_type); - declarations.push_back(IFC4X2_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X2_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X2_IfcRectangularPyramid_type); - declarations.push_back(IFC4X2_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X2_IfcRecurrencePattern_type); - declarations.push_back(IFC4X2_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X2_IfcReference_type); - declarations.push_back(IFC4X2_IfcReferent_type); - declarations.push_back(IFC4X2_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X2_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X2_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X2_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X2_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X2_IfcReinforcingBar_type); - declarations.push_back(IFC4X2_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X2_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X2_IfcReinforcingBarType_type); - declarations.push_back(IFC4X2_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X2_IfcReinforcingElement_type); - declarations.push_back(IFC4X2_IfcReinforcingElementType_type); - declarations.push_back(IFC4X2_IfcReinforcingMesh_type); - declarations.push_back(IFC4X2_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X2_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X2_IfcRelAggregates_type); - declarations.push_back(IFC4X2_IfcRelAssigns_type); - declarations.push_back(IFC4X2_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X2_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X2_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X2_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X2_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X2_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X2_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X2_IfcRelAssociates_type); - declarations.push_back(IFC4X2_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X2_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X2_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X2_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X2_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X2_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X2_IfcRelationship_type); - declarations.push_back(IFC4X2_IfcRelConnects_type); - declarations.push_back(IFC4X2_IfcRelConnectsElements_type); - declarations.push_back(IFC4X2_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X2_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X2_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X2_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X2_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X2_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X2_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X2_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X2_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X2_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X2_IfcRelDeclares_type); - declarations.push_back(IFC4X2_IfcRelDecomposes_type); - declarations.push_back(IFC4X2_IfcRelDefines_type); - declarations.push_back(IFC4X2_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X2_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X2_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X2_IfcRelDefinesByType_type); - declarations.push_back(IFC4X2_IfcRelFillsElement_type); - declarations.push_back(IFC4X2_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X2_IfcRelInterferesElements_type); - declarations.push_back(IFC4X2_IfcRelNests_type); - declarations.push_back(IFC4X2_IfcRelPositions_type); - declarations.push_back(IFC4X2_IfcRelProjectsElement_type); - declarations.push_back(IFC4X2_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X2_IfcRelSequence_type); - declarations.push_back(IFC4X2_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X2_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X2_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X2_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X2_IfcRelVoidsElement_type); - declarations.push_back(IFC4X2_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X2_IfcRepresentation_type); - declarations.push_back(IFC4X2_IfcRepresentationContext_type); - declarations.push_back(IFC4X2_IfcRepresentationItem_type); - declarations.push_back(IFC4X2_IfcRepresentationMap_type); - declarations.push_back(IFC4X2_IfcResource_type); - declarations.push_back(IFC4X2_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X2_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X2_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X2_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X2_IfcResourceSelect_type); - declarations.push_back(IFC4X2_IfcResourceTime_type); - declarations.push_back(IFC4X2_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X2_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X2_IfcRightCircularCone_type); - declarations.push_back(IFC4X2_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X2_IfcRoleEnum_type); - declarations.push_back(IFC4X2_IfcRoof_type); - declarations.push_back(IFC4X2_IfcRoofType_type); - declarations.push_back(IFC4X2_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X2_IfcRoot_type); - declarations.push_back(IFC4X2_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X2_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X2_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X2_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X2_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X2_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X2_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X2_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X2_IfcSchedulingTime_type); - declarations.push_back(IFC4X2_IfcSeamCurve_type); - declarations.push_back(IFC4X2_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X2_IfcSectionedSolid_type); - declarations.push_back(IFC4X2_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X2_IfcSectionedSpine_type); - declarations.push_back(IFC4X2_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X2_IfcSectionProperties_type); - declarations.push_back(IFC4X2_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X2_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X2_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X2_IfcSensor_type); - declarations.push_back(IFC4X2_IfcSensorType_type); - declarations.push_back(IFC4X2_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X2_IfcSequenceEnum_type); - declarations.push_back(IFC4X2_IfcShadingDevice_type); - declarations.push_back(IFC4X2_IfcShadingDeviceType_type); - declarations.push_back(IFC4X2_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X2_IfcShapeAspect_type); - declarations.push_back(IFC4X2_IfcShapeModel_type); - declarations.push_back(IFC4X2_IfcShapeRepresentation_type); - declarations.push_back(IFC4X2_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X2_IfcShell_type); - declarations.push_back(IFC4X2_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X2_IfcSimpleProperty_type); - declarations.push_back(IFC4X2_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X2_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X2_IfcSimpleValue_type); - declarations.push_back(IFC4X2_IfcSIPrefix_type); - declarations.push_back(IFC4X2_IfcSite_type); - declarations.push_back(IFC4X2_IfcSIUnit_type); - declarations.push_back(IFC4X2_IfcSIUnitName_type); - declarations.push_back(IFC4X2_IfcSizeSelect_type); - declarations.push_back(IFC4X2_IfcSlab_type); - declarations.push_back(IFC4X2_IfcSlabElementedCase_type); - declarations.push_back(IFC4X2_IfcSlabStandardCase_type); - declarations.push_back(IFC4X2_IfcSlabType_type); - declarations.push_back(IFC4X2_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X2_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X2_IfcSolarDevice_type); - declarations.push_back(IFC4X2_IfcSolarDeviceType_type); - declarations.push_back(IFC4X2_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X2_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X2_IfcSolidModel_type); - declarations.push_back(IFC4X2_IfcSolidOrShell_type); - declarations.push_back(IFC4X2_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X2_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X2_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X2_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X2_IfcSpace_type); - declarations.push_back(IFC4X2_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X2_IfcSpaceHeater_type); - declarations.push_back(IFC4X2_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X2_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X2_IfcSpaceType_type); - declarations.push_back(IFC4X2_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X2_IfcSpatialElement_type); - declarations.push_back(IFC4X2_IfcSpatialElementType_type); - declarations.push_back(IFC4X2_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X2_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X2_IfcSpatialZone_type); - declarations.push_back(IFC4X2_IfcSpatialZoneType_type); - declarations.push_back(IFC4X2_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X2_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X2_IfcSpecularExponent_type); - declarations.push_back(IFC4X2_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X2_IfcSpecularRoughness_type); - declarations.push_back(IFC4X2_IfcSphere_type); - declarations.push_back(IFC4X2_IfcSphericalSurface_type); - declarations.push_back(IFC4X2_IfcStackTerminal_type); - declarations.push_back(IFC4X2_IfcStackTerminalType_type); - declarations.push_back(IFC4X2_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X2_IfcStair_type); - declarations.push_back(IFC4X2_IfcStairFlight_type); - declarations.push_back(IFC4X2_IfcStairFlightType_type); - declarations.push_back(IFC4X2_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X2_IfcStairType_type); - declarations.push_back(IFC4X2_IfcStairTypeEnum_type); - declarations.push_back(IFC4X2_IfcStateEnum_type); - declarations.push_back(IFC4X2_IfcStructuralAction_type); - declarations.push_back(IFC4X2_IfcStructuralActivity_type); - declarations.push_back(IFC4X2_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X2_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X2_IfcStructuralConnection_type); - declarations.push_back(IFC4X2_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X2_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X2_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X2_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X2_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X2_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X2_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X2_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X2_IfcStructuralItem_type); - declarations.push_back(IFC4X2_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X2_IfcStructuralLoad_type); - declarations.push_back(IFC4X2_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X2_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X2_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X2_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X2_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X2_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X2_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X2_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X2_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X2_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X2_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X2_IfcStructuralMember_type); - declarations.push_back(IFC4X2_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X2_IfcStructuralPointAction_type); - declarations.push_back(IFC4X2_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X2_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X2_IfcStructuralReaction_type); - declarations.push_back(IFC4X2_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X2_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X2_IfcStyleAssignmentSelect_type); - declarations.push_back(IFC4X2_IfcStyledItem_type); - declarations.push_back(IFC4X2_IfcStyledRepresentation_type); - declarations.push_back(IFC4X2_IfcStyleModel_type); - declarations.push_back(IFC4X2_IfcSubContractResource_type); - declarations.push_back(IFC4X2_IfcSubContractResourceType_type); - declarations.push_back(IFC4X2_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X2_IfcSubedge_type); - declarations.push_back(IFC4X2_IfcSurface_type); - declarations.push_back(IFC4X2_IfcSurfaceCurve_type); - declarations.push_back(IFC4X2_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X2_IfcSurfaceFeature_type); - declarations.push_back(IFC4X2_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X2_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X2_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X2_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X2_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X2_IfcSurfaceSide_type); - declarations.push_back(IFC4X2_IfcSurfaceStyle_type); - declarations.push_back(IFC4X2_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X2_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X2_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X2_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X2_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X2_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X2_IfcSurfaceTexture_type); - declarations.push_back(IFC4X2_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X2_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X2_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X2_IfcSweptSurface_type); - declarations.push_back(IFC4X2_IfcSwitchingDevice_type); - declarations.push_back(IFC4X2_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X2_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X2_IfcSystem_type); - declarations.push_back(IFC4X2_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X2_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X2_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcTable_type); - declarations.push_back(IFC4X2_IfcTableColumn_type); - declarations.push_back(IFC4X2_IfcTableRow_type); - declarations.push_back(IFC4X2_IfcTank_type); - declarations.push_back(IFC4X2_IfcTankType_type); - declarations.push_back(IFC4X2_IfcTankTypeEnum_type); - declarations.push_back(IFC4X2_IfcTask_type); - declarations.push_back(IFC4X2_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X2_IfcTaskTime_type); - declarations.push_back(IFC4X2_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X2_IfcTaskType_type); - declarations.push_back(IFC4X2_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X2_IfcTelecomAddress_type); - declarations.push_back(IFC4X2_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X2_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X2_IfcTendon_type); - declarations.push_back(IFC4X2_IfcTendonAnchor_type); - declarations.push_back(IFC4X2_IfcTendonAnchorType_type); - declarations.push_back(IFC4X2_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X2_IfcTendonConduit_type); - declarations.push_back(IFC4X2_IfcTendonConduitType_type); - declarations.push_back(IFC4X2_IfcTendonConduitTypeEnum_type); - declarations.push_back(IFC4X2_IfcTendonType_type); - declarations.push_back(IFC4X2_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X2_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X2_IfcTessellatedItem_type); - declarations.push_back(IFC4X2_IfcText_type); - declarations.push_back(IFC4X2_IfcTextAlignment_type); - declarations.push_back(IFC4X2_IfcTextDecoration_type); - declarations.push_back(IFC4X2_IfcTextFontName_type); - declarations.push_back(IFC4X2_IfcTextFontSelect_type); - declarations.push_back(IFC4X2_IfcTextLiteral_type); - declarations.push_back(IFC4X2_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X2_IfcTextPath_type); - declarations.push_back(IFC4X2_IfcTextStyle_type); - declarations.push_back(IFC4X2_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X2_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X2_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X2_IfcTextTransformation_type); - declarations.push_back(IFC4X2_IfcTextureCoordinate_type); - declarations.push_back(IFC4X2_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X2_IfcTextureMap_type); - declarations.push_back(IFC4X2_IfcTextureVertex_type); - declarations.push_back(IFC4X2_IfcTextureVertexList_type); - declarations.push_back(IFC4X2_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X2_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X2_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X2_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X2_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X2_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X2_IfcTime_type); - declarations.push_back(IFC4X2_IfcTimeMeasure_type); - declarations.push_back(IFC4X2_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X2_IfcTimePeriod_type); - declarations.push_back(IFC4X2_IfcTimeSeries_type); - declarations.push_back(IFC4X2_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X2_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X2_IfcTimeStamp_type); - declarations.push_back(IFC4X2_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X2_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X2_IfcToroidalSurface_type); - declarations.push_back(IFC4X2_IfcTorqueMeasure_type); - declarations.push_back(IFC4X2_IfcTransformer_type); - declarations.push_back(IFC4X2_IfcTransformerType_type); - declarations.push_back(IFC4X2_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X2_IfcTransitionCode_type); - declarations.push_back(IFC4X2_IfcTransitionCurveSegment2D_type); - declarations.push_back(IFC4X2_IfcTransitionCurveType_type); - declarations.push_back(IFC4X2_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X2_IfcTransportElement_type); - declarations.push_back(IFC4X2_IfcTransportElementType_type); - declarations.push_back(IFC4X2_IfcTransportElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X2_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X2_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X2_IfcTrimmedCurve_type); - declarations.push_back(IFC4X2_IfcTrimmingPreference_type); - declarations.push_back(IFC4X2_IfcTrimmingSelect_type); - declarations.push_back(IFC4X2_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X2_IfcTubeBundle_type); - declarations.push_back(IFC4X2_IfcTubeBundleType_type); - declarations.push_back(IFC4X2_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X2_IfcTypeObject_type); - declarations.push_back(IFC4X2_IfcTypeProcess_type); - declarations.push_back(IFC4X2_IfcTypeProduct_type); - declarations.push_back(IFC4X2_IfcTypeResource_type); - declarations.push_back(IFC4X2_IfcUnit_type); - declarations.push_back(IFC4X2_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X2_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X2_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X2_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X2_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X2_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X2_IfcUnitAssignment_type); - declarations.push_back(IFC4X2_IfcUnitEnum_type); - declarations.push_back(IFC4X2_IfcURIReference_type); - declarations.push_back(IFC4X2_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X2_IfcValue_type); - declarations.push_back(IFC4X2_IfcValve_type); - declarations.push_back(IFC4X2_IfcValveType_type); - declarations.push_back(IFC4X2_IfcValveTypeEnum_type); - declarations.push_back(IFC4X2_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X2_IfcVector_type); - declarations.push_back(IFC4X2_IfcVectorOrDirection_type); - declarations.push_back(IFC4X2_IfcVertex_type); - declarations.push_back(IFC4X2_IfcVertexLoop_type); - declarations.push_back(IFC4X2_IfcVertexPoint_type); - declarations.push_back(IFC4X2_IfcVibrationDamper_type); - declarations.push_back(IFC4X2_IfcVibrationDamperType_type); - declarations.push_back(IFC4X2_IfcVibrationDamperTypeEnum_type); - declarations.push_back(IFC4X2_IfcVibrationIsolator_type); - declarations.push_back(IFC4X2_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X2_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X2_IfcVirtualElement_type); - declarations.push_back(IFC4X2_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X2_IfcVoidingFeature_type); - declarations.push_back(IFC4X2_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X2_IfcVolumeMeasure_type); - declarations.push_back(IFC4X2_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X2_IfcWall_type); - declarations.push_back(IFC4X2_IfcWallElementedCase_type); - declarations.push_back(IFC4X2_IfcWallStandardCase_type); - declarations.push_back(IFC4X2_IfcWallType_type); - declarations.push_back(IFC4X2_IfcWallTypeEnum_type); - declarations.push_back(IFC4X2_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X2_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X2_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X2_IfcWasteTerminal_type); - declarations.push_back(IFC4X2_IfcWasteTerminalType_type); - declarations.push_back(IFC4X2_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X2_IfcWindow_type); - declarations.push_back(IFC4X2_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X2_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X2_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X2_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X2_IfcWindowStandardCase_type); - declarations.push_back(IFC4X2_IfcWindowStyle_type); - declarations.push_back(IFC4X2_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4X2_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4X2_IfcWindowType_type); - declarations.push_back(IFC4X2_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X2_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X2_IfcWorkCalendar_type); - declarations.push_back(IFC4X2_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X2_IfcWorkControl_type); - declarations.push_back(IFC4X2_IfcWorkPlan_type); - declarations.push_back(IFC4X2_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X2_IfcWorkSchedule_type); - declarations.push_back(IFC4X2_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X2_IfcWorkTime_type); - declarations.push_back(IFC4X2_IfcZone_type); - declarations.push_back(IFC4X2_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X2", declarations, new IFC4X2_instance_factory()); + std::vector declarations= { + IFC4X2_IfcAbsorbedDoseMeasure_type, + IFC4X2_IfcAccelerationMeasure_type, + IFC4X2_IfcActionRequest_type, + IFC4X2_IfcActionRequestTypeEnum_type, + IFC4X2_IfcActionSourceTypeEnum_type, + IFC4X2_IfcActionTypeEnum_type, + IFC4X2_IfcActor_type, + IFC4X2_IfcActorRole_type, + IFC4X2_IfcActorSelect_type, + IFC4X2_IfcActuator_type, + IFC4X2_IfcActuatorType_type, + IFC4X2_IfcActuatorTypeEnum_type, + IFC4X2_IfcAddress_type, + IFC4X2_IfcAddressTypeEnum_type, + IFC4X2_IfcAdvancedBrep_type, + IFC4X2_IfcAdvancedBrepWithVoids_type, + IFC4X2_IfcAdvancedFace_type, + IFC4X2_IfcAirTerminal_type, + IFC4X2_IfcAirTerminalBox_type, + IFC4X2_IfcAirTerminalBoxType_type, + IFC4X2_IfcAirTerminalBoxTypeEnum_type, + IFC4X2_IfcAirTerminalType_type, + IFC4X2_IfcAirTerminalTypeEnum_type, + IFC4X2_IfcAirToAirHeatRecovery_type, + IFC4X2_IfcAirToAirHeatRecoveryType_type, + IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X2_IfcAlarm_type, + IFC4X2_IfcAlarmType_type, + IFC4X2_IfcAlarmTypeEnum_type, + IFC4X2_IfcAlignment_type, + IFC4X2_IfcAlignment2DHorizontal_type, + IFC4X2_IfcAlignment2DHorizontalSegment_type, + IFC4X2_IfcAlignment2DSegment_type, + IFC4X2_IfcAlignment2DVerSegCircularArc_type, + IFC4X2_IfcAlignment2DVerSegLine_type, + IFC4X2_IfcAlignment2DVerSegParabolicArc_type, + IFC4X2_IfcAlignment2DVertical_type, + IFC4X2_IfcAlignment2DVerticalSegment_type, + IFC4X2_IfcAlignmentCurve_type, + IFC4X2_IfcAlignmentTypeEnum_type, + IFC4X2_IfcAmountOfSubstanceMeasure_type, + IFC4X2_IfcAnalysisModelTypeEnum_type, + IFC4X2_IfcAnalysisTheoryTypeEnum_type, + IFC4X2_IfcAngularVelocityMeasure_type, + IFC4X2_IfcAnnotation_type, + IFC4X2_IfcAnnotationFillArea_type, + IFC4X2_IfcApplication_type, + IFC4X2_IfcAppliedValue_type, + IFC4X2_IfcAppliedValueSelect_type, + IFC4X2_IfcApproval_type, + IFC4X2_IfcApprovalRelationship_type, + IFC4X2_IfcArbitraryClosedProfileDef_type, + IFC4X2_IfcArbitraryOpenProfileDef_type, + IFC4X2_IfcArbitraryProfileDefWithVoids_type, + IFC4X2_IfcArcIndex_type, + IFC4X2_IfcAreaDensityMeasure_type, + IFC4X2_IfcAreaMeasure_type, + IFC4X2_IfcArithmeticOperatorEnum_type, + IFC4X2_IfcAssemblyPlaceEnum_type, + IFC4X2_IfcAsset_type, + IFC4X2_IfcAsymmetricIShapeProfileDef_type, + IFC4X2_IfcAudioVisualAppliance_type, + IFC4X2_IfcAudioVisualApplianceType_type, + IFC4X2_IfcAudioVisualApplianceTypeEnum_type, + IFC4X2_IfcAxis1Placement_type, + IFC4X2_IfcAxis2Placement_type, + IFC4X2_IfcAxis2Placement2D_type, + IFC4X2_IfcAxis2Placement3D_type, + IFC4X2_IfcBeam_type, + IFC4X2_IfcBeamStandardCase_type, + IFC4X2_IfcBeamType_type, + IFC4X2_IfcBeamTypeEnum_type, + IFC4X2_IfcBearing_type, + IFC4X2_IfcBearingType_type, + IFC4X2_IfcBearingTypeDisplacementEnum_type, + IFC4X2_IfcBearingTypeEnum_type, + IFC4X2_IfcBenchmarkEnum_type, + IFC4X2_IfcBendingParameterSelect_type, + IFC4X2_IfcBinary_type, + IFC4X2_IfcBlobTexture_type, + IFC4X2_IfcBlock_type, + IFC4X2_IfcBoiler_type, + IFC4X2_IfcBoilerType_type, + IFC4X2_IfcBoilerTypeEnum_type, + IFC4X2_IfcBoolean_type, + IFC4X2_IfcBooleanClippingResult_type, + IFC4X2_IfcBooleanOperand_type, + IFC4X2_IfcBooleanOperator_type, + IFC4X2_IfcBooleanResult_type, + IFC4X2_IfcBoundaryCondition_type, + IFC4X2_IfcBoundaryCurve_type, + IFC4X2_IfcBoundaryEdgeCondition_type, + IFC4X2_IfcBoundaryFaceCondition_type, + IFC4X2_IfcBoundaryNodeCondition_type, + IFC4X2_IfcBoundaryNodeConditionWarping_type, + IFC4X2_IfcBoundedCurve_type, + IFC4X2_IfcBoundedSurface_type, + IFC4X2_IfcBoundingBox_type, + IFC4X2_IfcBoxAlignment_type, + IFC4X2_IfcBoxedHalfSpace_type, + IFC4X2_IfcBridge_type, + IFC4X2_IfcBridgePart_type, + IFC4X2_IfcBridgePartTypeEnum_type, + IFC4X2_IfcBridgeTypeEnum_type, + IFC4X2_IfcBSplineCurve_type, + IFC4X2_IfcBSplineCurveForm_type, + IFC4X2_IfcBSplineCurveWithKnots_type, + IFC4X2_IfcBSplineSurface_type, + IFC4X2_IfcBSplineSurfaceForm_type, + IFC4X2_IfcBSplineSurfaceWithKnots_type, + IFC4X2_IfcBuilding_type, + IFC4X2_IfcBuildingElement_type, + IFC4X2_IfcBuildingElementPart_type, + IFC4X2_IfcBuildingElementPartType_type, + IFC4X2_IfcBuildingElementPartTypeEnum_type, + IFC4X2_IfcBuildingElementProxy_type, + IFC4X2_IfcBuildingElementProxyType_type, + IFC4X2_IfcBuildingElementProxyTypeEnum_type, + IFC4X2_IfcBuildingElementType_type, + IFC4X2_IfcBuildingStorey_type, + IFC4X2_IfcBuildingSystem_type, + IFC4X2_IfcBuildingSystemTypeEnum_type, + IFC4X2_IfcBurner_type, + IFC4X2_IfcBurnerType_type, + IFC4X2_IfcBurnerTypeEnum_type, + IFC4X2_IfcCableCarrierFitting_type, + IFC4X2_IfcCableCarrierFittingType_type, + IFC4X2_IfcCableCarrierFittingTypeEnum_type, + IFC4X2_IfcCableCarrierSegment_type, + IFC4X2_IfcCableCarrierSegmentType_type, + IFC4X2_IfcCableCarrierSegmentTypeEnum_type, + IFC4X2_IfcCableFitting_type, + IFC4X2_IfcCableFittingType_type, + IFC4X2_IfcCableFittingTypeEnum_type, + IFC4X2_IfcCableSegment_type, + IFC4X2_IfcCableSegmentType_type, + IFC4X2_IfcCableSegmentTypeEnum_type, + IFC4X2_IfcCaissonFoundation_type, + IFC4X2_IfcCaissonFoundationType_type, + IFC4X2_IfcCaissonFoundationTypeEnum_type, + IFC4X2_IfcCardinalPointReference_type, + IFC4X2_IfcCartesianPoint_type, + IFC4X2_IfcCartesianPointList_type, + IFC4X2_IfcCartesianPointList2D_type, + IFC4X2_IfcCartesianPointList3D_type, + IFC4X2_IfcCartesianTransformationOperator_type, + IFC4X2_IfcCartesianTransformationOperator2D_type, + IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X2_IfcCartesianTransformationOperator3D_type, + IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X2_IfcCenterLineProfileDef_type, + IFC4X2_IfcChangeActionEnum_type, + IFC4X2_IfcChiller_type, + IFC4X2_IfcChillerType_type, + IFC4X2_IfcChillerTypeEnum_type, + IFC4X2_IfcChimney_type, + IFC4X2_IfcChimneyType_type, + IFC4X2_IfcChimneyTypeEnum_type, + IFC4X2_IfcCircle_type, + IFC4X2_IfcCircleHollowProfileDef_type, + IFC4X2_IfcCircleProfileDef_type, + IFC4X2_IfcCircularArcSegment2D_type, + IFC4X2_IfcCivilElement_type, + IFC4X2_IfcCivilElementType_type, + IFC4X2_IfcClassification_type, + IFC4X2_IfcClassificationReference_type, + IFC4X2_IfcClassificationReferenceSelect_type, + IFC4X2_IfcClassificationSelect_type, + IFC4X2_IfcClosedShell_type, + IFC4X2_IfcCoil_type, + IFC4X2_IfcCoilType_type, + IFC4X2_IfcCoilTypeEnum_type, + IFC4X2_IfcColour_type, + IFC4X2_IfcColourOrFactor_type, + IFC4X2_IfcColourRgb_type, + IFC4X2_IfcColourRgbList_type, + IFC4X2_IfcColourSpecification_type, + IFC4X2_IfcColumn_type, + IFC4X2_IfcColumnStandardCase_type, + IFC4X2_IfcColumnType_type, + IFC4X2_IfcColumnTypeEnum_type, + IFC4X2_IfcCommunicationsAppliance_type, + IFC4X2_IfcCommunicationsApplianceType_type, + IFC4X2_IfcCommunicationsApplianceTypeEnum_type, + IFC4X2_IfcComplexNumber_type, + IFC4X2_IfcComplexProperty_type, + IFC4X2_IfcComplexPropertyTemplate_type, + IFC4X2_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X2_IfcCompositeCurve_type, + IFC4X2_IfcCompositeCurveOnSurface_type, + IFC4X2_IfcCompositeCurveSegment_type, + IFC4X2_IfcCompositeProfileDef_type, + IFC4X2_IfcCompoundPlaneAngleMeasure_type, + IFC4X2_IfcCompressor_type, + IFC4X2_IfcCompressorType_type, + IFC4X2_IfcCompressorTypeEnum_type, + IFC4X2_IfcCondenser_type, + IFC4X2_IfcCondenserType_type, + IFC4X2_IfcCondenserTypeEnum_type, + IFC4X2_IfcConic_type, + IFC4X2_IfcConnectedFaceSet_type, + IFC4X2_IfcConnectionCurveGeometry_type, + IFC4X2_IfcConnectionGeometry_type, + IFC4X2_IfcConnectionPointEccentricity_type, + IFC4X2_IfcConnectionPointGeometry_type, + IFC4X2_IfcConnectionSurfaceGeometry_type, + IFC4X2_IfcConnectionTypeEnum_type, + IFC4X2_IfcConnectionVolumeGeometry_type, + IFC4X2_IfcConstraint_type, + IFC4X2_IfcConstraintEnum_type, + IFC4X2_IfcConstructionEquipmentResource_type, + IFC4X2_IfcConstructionEquipmentResourceType_type, + IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X2_IfcConstructionMaterialResource_type, + IFC4X2_IfcConstructionMaterialResourceType_type, + IFC4X2_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X2_IfcConstructionProductResource_type, + IFC4X2_IfcConstructionProductResourceType_type, + IFC4X2_IfcConstructionProductResourceTypeEnum_type, + IFC4X2_IfcConstructionResource_type, + IFC4X2_IfcConstructionResourceType_type, + IFC4X2_IfcContext_type, + IFC4X2_IfcContextDependentMeasure_type, + IFC4X2_IfcContextDependentUnit_type, + IFC4X2_IfcControl_type, + IFC4X2_IfcController_type, + IFC4X2_IfcControllerType_type, + IFC4X2_IfcControllerTypeEnum_type, + IFC4X2_IfcConversionBasedUnit_type, + IFC4X2_IfcConversionBasedUnitWithOffset_type, + IFC4X2_IfcCooledBeam_type, + IFC4X2_IfcCooledBeamType_type, + IFC4X2_IfcCooledBeamTypeEnum_type, + IFC4X2_IfcCoolingTower_type, + IFC4X2_IfcCoolingTowerType_type, + IFC4X2_IfcCoolingTowerTypeEnum_type, + IFC4X2_IfcCoordinateOperation_type, + IFC4X2_IfcCoordinateReferenceSystem_type, + IFC4X2_IfcCoordinateReferenceSystemSelect_type, + IFC4X2_IfcCostItem_type, + IFC4X2_IfcCostItemTypeEnum_type, + IFC4X2_IfcCostSchedule_type, + IFC4X2_IfcCostScheduleTypeEnum_type, + IFC4X2_IfcCostValue_type, + IFC4X2_IfcCountMeasure_type, + IFC4X2_IfcCovering_type, + IFC4X2_IfcCoveringType_type, + IFC4X2_IfcCoveringTypeEnum_type, + IFC4X2_IfcCrewResource_type, + IFC4X2_IfcCrewResourceType_type, + IFC4X2_IfcCrewResourceTypeEnum_type, + IFC4X2_IfcCsgPrimitive3D_type, + IFC4X2_IfcCsgSelect_type, + IFC4X2_IfcCsgSolid_type, + IFC4X2_IfcCShapeProfileDef_type, + IFC4X2_IfcCurrencyRelationship_type, + IFC4X2_IfcCurtainWall_type, + IFC4X2_IfcCurtainWallType_type, + IFC4X2_IfcCurtainWallTypeEnum_type, + IFC4X2_IfcCurvatureMeasure_type, + IFC4X2_IfcCurve_type, + IFC4X2_IfcCurveBoundedPlane_type, + IFC4X2_IfcCurveBoundedSurface_type, + IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X2_IfcCurveInterpolationEnum_type, + IFC4X2_IfcCurveOnSurface_type, + IFC4X2_IfcCurveOrEdgeCurve_type, + IFC4X2_IfcCurveSegment2D_type, + IFC4X2_IfcCurveStyle_type, + IFC4X2_IfcCurveStyleFont_type, + IFC4X2_IfcCurveStyleFontAndScaling_type, + IFC4X2_IfcCurveStyleFontPattern_type, + IFC4X2_IfcCurveStyleFontSelect_type, + IFC4X2_IfcCylindricalSurface_type, + IFC4X2_IfcDamper_type, + IFC4X2_IfcDamperType_type, + IFC4X2_IfcDamperTypeEnum_type, + IFC4X2_IfcDataOriginEnum_type, + IFC4X2_IfcDate_type, + IFC4X2_IfcDateTime_type, + IFC4X2_IfcDayInMonthNumber_type, + IFC4X2_IfcDayInWeekNumber_type, + IFC4X2_IfcDeepFoundation_type, + IFC4X2_IfcDeepFoundationType_type, + IFC4X2_IfcDefinitionSelect_type, + IFC4X2_IfcDerivedMeasureValue_type, + IFC4X2_IfcDerivedProfileDef_type, + IFC4X2_IfcDerivedUnit_type, + IFC4X2_IfcDerivedUnitElement_type, + IFC4X2_IfcDerivedUnitEnum_type, + IFC4X2_IfcDescriptiveMeasure_type, + IFC4X2_IfcDimensionalExponents_type, + IFC4X2_IfcDimensionCount_type, + IFC4X2_IfcDirection_type, + IFC4X2_IfcDirectionSenseEnum_type, + IFC4X2_IfcDiscreteAccessory_type, + IFC4X2_IfcDiscreteAccessoryType_type, + IFC4X2_IfcDiscreteAccessoryTypeEnum_type, + IFC4X2_IfcDistanceExpression_type, + IFC4X2_IfcDistributionChamberElement_type, + IFC4X2_IfcDistributionChamberElementType_type, + IFC4X2_IfcDistributionChamberElementTypeEnum_type, + IFC4X2_IfcDistributionCircuit_type, + IFC4X2_IfcDistributionControlElement_type, + IFC4X2_IfcDistributionControlElementType_type, + IFC4X2_IfcDistributionElement_type, + IFC4X2_IfcDistributionElementType_type, + IFC4X2_IfcDistributionFlowElement_type, + IFC4X2_IfcDistributionFlowElementType_type, + IFC4X2_IfcDistributionPort_type, + IFC4X2_IfcDistributionPortTypeEnum_type, + IFC4X2_IfcDistributionSystem_type, + IFC4X2_IfcDistributionSystemEnum_type, + IFC4X2_IfcDocumentConfidentialityEnum_type, + IFC4X2_IfcDocumentInformation_type, + IFC4X2_IfcDocumentInformationRelationship_type, + IFC4X2_IfcDocumentReference_type, + IFC4X2_IfcDocumentSelect_type, + IFC4X2_IfcDocumentStatusEnum_type, + IFC4X2_IfcDoor_type, + IFC4X2_IfcDoorLiningProperties_type, + IFC4X2_IfcDoorPanelOperationEnum_type, + IFC4X2_IfcDoorPanelPositionEnum_type, + IFC4X2_IfcDoorPanelProperties_type, + IFC4X2_IfcDoorStandardCase_type, + IFC4X2_IfcDoorStyle_type, + IFC4X2_IfcDoorStyleConstructionEnum_type, + IFC4X2_IfcDoorStyleOperationEnum_type, + IFC4X2_IfcDoorType_type, + IFC4X2_IfcDoorTypeEnum_type, + IFC4X2_IfcDoorTypeOperationEnum_type, + IFC4X2_IfcDoseEquivalentMeasure_type, + IFC4X2_IfcDraughtingPreDefinedColour_type, + IFC4X2_IfcDraughtingPreDefinedCurveFont_type, + IFC4X2_IfcDuctFitting_type, + IFC4X2_IfcDuctFittingType_type, + IFC4X2_IfcDuctFittingTypeEnum_type, + IFC4X2_IfcDuctSegment_type, + IFC4X2_IfcDuctSegmentType_type, + IFC4X2_IfcDuctSegmentTypeEnum_type, + IFC4X2_IfcDuctSilencer_type, + IFC4X2_IfcDuctSilencerType_type, + IFC4X2_IfcDuctSilencerTypeEnum_type, + IFC4X2_IfcDuration_type, + IFC4X2_IfcDynamicViscosityMeasure_type, + IFC4X2_IfcEdge_type, + IFC4X2_IfcEdgeCurve_type, + IFC4X2_IfcEdgeLoop_type, + IFC4X2_IfcElectricAppliance_type, + IFC4X2_IfcElectricApplianceType_type, + IFC4X2_IfcElectricApplianceTypeEnum_type, + IFC4X2_IfcElectricCapacitanceMeasure_type, + IFC4X2_IfcElectricChargeMeasure_type, + IFC4X2_IfcElectricConductanceMeasure_type, + IFC4X2_IfcElectricCurrentMeasure_type, + IFC4X2_IfcElectricDistributionBoard_type, + IFC4X2_IfcElectricDistributionBoardType_type, + IFC4X2_IfcElectricDistributionBoardTypeEnum_type, + IFC4X2_IfcElectricFlowStorageDevice_type, + IFC4X2_IfcElectricFlowStorageDeviceType_type, + IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X2_IfcElectricGenerator_type, + IFC4X2_IfcElectricGeneratorType_type, + IFC4X2_IfcElectricGeneratorTypeEnum_type, + IFC4X2_IfcElectricMotor_type, + IFC4X2_IfcElectricMotorType_type, + IFC4X2_IfcElectricMotorTypeEnum_type, + IFC4X2_IfcElectricResistanceMeasure_type, + IFC4X2_IfcElectricTimeControl_type, + IFC4X2_IfcElectricTimeControlType_type, + IFC4X2_IfcElectricTimeControlTypeEnum_type, + IFC4X2_IfcElectricVoltageMeasure_type, + IFC4X2_IfcElement_type, + IFC4X2_IfcElementarySurface_type, + IFC4X2_IfcElementAssembly_type, + IFC4X2_IfcElementAssemblyType_type, + IFC4X2_IfcElementAssemblyTypeEnum_type, + IFC4X2_IfcElementComponent_type, + IFC4X2_IfcElementComponentType_type, + IFC4X2_IfcElementCompositionEnum_type, + IFC4X2_IfcElementQuantity_type, + IFC4X2_IfcElementType_type, + IFC4X2_IfcEllipse_type, + IFC4X2_IfcEllipseProfileDef_type, + IFC4X2_IfcEnergyConversionDevice_type, + IFC4X2_IfcEnergyConversionDeviceType_type, + IFC4X2_IfcEnergyMeasure_type, + IFC4X2_IfcEngine_type, + IFC4X2_IfcEngineType_type, + IFC4X2_IfcEngineTypeEnum_type, + IFC4X2_IfcEvaporativeCooler_type, + IFC4X2_IfcEvaporativeCoolerType_type, + IFC4X2_IfcEvaporativeCoolerTypeEnum_type, + IFC4X2_IfcEvaporator_type, + IFC4X2_IfcEvaporatorType_type, + IFC4X2_IfcEvaporatorTypeEnum_type, + IFC4X2_IfcEvent_type, + IFC4X2_IfcEventTime_type, + IFC4X2_IfcEventTriggerTypeEnum_type, + IFC4X2_IfcEventType_type, + IFC4X2_IfcEventTypeEnum_type, + IFC4X2_IfcExtendedProperties_type, + IFC4X2_IfcExternalInformation_type, + IFC4X2_IfcExternallyDefinedHatchStyle_type, + IFC4X2_IfcExternallyDefinedSurfaceStyle_type, + IFC4X2_IfcExternallyDefinedTextFont_type, + IFC4X2_IfcExternalReference_type, + IFC4X2_IfcExternalReferenceRelationship_type, + IFC4X2_IfcExternalSpatialElement_type, + IFC4X2_IfcExternalSpatialElementTypeEnum_type, + IFC4X2_IfcExternalSpatialStructureElement_type, + IFC4X2_IfcExtrudedAreaSolid_type, + IFC4X2_IfcExtrudedAreaSolidTapered_type, + IFC4X2_IfcFace_type, + IFC4X2_IfcFaceBasedSurfaceModel_type, + IFC4X2_IfcFaceBound_type, + IFC4X2_IfcFaceOuterBound_type, + IFC4X2_IfcFaceSurface_type, + IFC4X2_IfcFacetedBrep_type, + IFC4X2_IfcFacetedBrepWithVoids_type, + IFC4X2_IfcFacility_type, + IFC4X2_IfcFacilityPart_type, + IFC4X2_IfcFailureConnectionCondition_type, + IFC4X2_IfcFan_type, + IFC4X2_IfcFanType_type, + IFC4X2_IfcFanTypeEnum_type, + IFC4X2_IfcFastener_type, + IFC4X2_IfcFastenerType_type, + IFC4X2_IfcFastenerTypeEnum_type, + IFC4X2_IfcFeatureElement_type, + IFC4X2_IfcFeatureElementAddition_type, + IFC4X2_IfcFeatureElementSubtraction_type, + IFC4X2_IfcFillAreaStyle_type, + IFC4X2_IfcFillAreaStyleHatching_type, + IFC4X2_IfcFillAreaStyleTiles_type, + IFC4X2_IfcFillStyleSelect_type, + IFC4X2_IfcFilter_type, + IFC4X2_IfcFilterType_type, + IFC4X2_IfcFilterTypeEnum_type, + IFC4X2_IfcFireSuppressionTerminal_type, + IFC4X2_IfcFireSuppressionTerminalType_type, + IFC4X2_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X2_IfcFixedReferenceSweptAreaSolid_type, + IFC4X2_IfcFlowController_type, + IFC4X2_IfcFlowControllerType_type, + IFC4X2_IfcFlowDirectionEnum_type, + IFC4X2_IfcFlowFitting_type, + IFC4X2_IfcFlowFittingType_type, + IFC4X2_IfcFlowInstrument_type, + IFC4X2_IfcFlowInstrumentType_type, + IFC4X2_IfcFlowInstrumentTypeEnum_type, + IFC4X2_IfcFlowMeter_type, + IFC4X2_IfcFlowMeterType_type, + IFC4X2_IfcFlowMeterTypeEnum_type, + IFC4X2_IfcFlowMovingDevice_type, + IFC4X2_IfcFlowMovingDeviceType_type, + IFC4X2_IfcFlowSegment_type, + IFC4X2_IfcFlowSegmentType_type, + IFC4X2_IfcFlowStorageDevice_type, + IFC4X2_IfcFlowStorageDeviceType_type, + IFC4X2_IfcFlowTerminal_type, + IFC4X2_IfcFlowTerminalType_type, + IFC4X2_IfcFlowTreatmentDevice_type, + IFC4X2_IfcFlowTreatmentDeviceType_type, + IFC4X2_IfcFontStyle_type, + IFC4X2_IfcFontVariant_type, + IFC4X2_IfcFontWeight_type, + IFC4X2_IfcFooting_type, + IFC4X2_IfcFootingType_type, + IFC4X2_IfcFootingTypeEnum_type, + IFC4X2_IfcForceMeasure_type, + IFC4X2_IfcFrequencyMeasure_type, + IFC4X2_IfcFurnishingElement_type, + IFC4X2_IfcFurnishingElementType_type, + IFC4X2_IfcFurniture_type, + IFC4X2_IfcFurnitureType_type, + IFC4X2_IfcFurnitureTypeEnum_type, + IFC4X2_IfcGeographicElement_type, + IFC4X2_IfcGeographicElementType_type, + IFC4X2_IfcGeographicElementTypeEnum_type, + IFC4X2_IfcGeometricCurveSet_type, + IFC4X2_IfcGeometricProjectionEnum_type, + IFC4X2_IfcGeometricRepresentationContext_type, + IFC4X2_IfcGeometricRepresentationItem_type, + IFC4X2_IfcGeometricRepresentationSubContext_type, + IFC4X2_IfcGeometricSet_type, + IFC4X2_IfcGeometricSetSelect_type, + IFC4X2_IfcGloballyUniqueId_type, + IFC4X2_IfcGlobalOrLocalEnum_type, + IFC4X2_IfcGrid_type, + IFC4X2_IfcGridAxis_type, + IFC4X2_IfcGridPlacement_type, + IFC4X2_IfcGridPlacementDirectionSelect_type, + IFC4X2_IfcGridTypeEnum_type, + IFC4X2_IfcGroup_type, + IFC4X2_IfcHalfSpaceSolid_type, + IFC4X2_IfcHatchLineDistanceSelect_type, + IFC4X2_IfcHeatExchanger_type, + IFC4X2_IfcHeatExchangerType_type, + IFC4X2_IfcHeatExchangerTypeEnum_type, + IFC4X2_IfcHeatFluxDensityMeasure_type, + IFC4X2_IfcHeatingValueMeasure_type, + IFC4X2_IfcHumidifier_type, + IFC4X2_IfcHumidifierType_type, + IFC4X2_IfcHumidifierTypeEnum_type, + IFC4X2_IfcIdentifier_type, + IFC4X2_IfcIlluminanceMeasure_type, + IFC4X2_IfcImageTexture_type, + IFC4X2_IfcIndexedColourMap_type, + IFC4X2_IfcIndexedPolyCurve_type, + IFC4X2_IfcIndexedPolygonalFace_type, + IFC4X2_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X2_IfcIndexedTextureMap_type, + IFC4X2_IfcIndexedTriangleTextureMap_type, + IFC4X2_IfcInductanceMeasure_type, + IFC4X2_IfcInteger_type, + IFC4X2_IfcIntegerCountRateMeasure_type, + IFC4X2_IfcInterceptor_type, + IFC4X2_IfcInterceptorType_type, + IFC4X2_IfcInterceptorTypeEnum_type, + IFC4X2_IfcInternalOrExternalEnum_type, + IFC4X2_IfcIntersectionCurve_type, + IFC4X2_IfcInventory_type, + IFC4X2_IfcInventoryTypeEnum_type, + IFC4X2_IfcIonConcentrationMeasure_type, + IFC4X2_IfcIrregularTimeSeries_type, + IFC4X2_IfcIrregularTimeSeriesValue_type, + IFC4X2_IfcIShapeProfileDef_type, + IFC4X2_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X2_IfcJunctionBox_type, + IFC4X2_IfcJunctionBoxType_type, + IFC4X2_IfcJunctionBoxTypeEnum_type, + IFC4X2_IfcKinematicViscosityMeasure_type, + IFC4X2_IfcKnotType_type, + IFC4X2_IfcLabel_type, + IFC4X2_IfcLaborResource_type, + IFC4X2_IfcLaborResourceType_type, + IFC4X2_IfcLaborResourceTypeEnum_type, + IFC4X2_IfcLagTime_type, + IFC4X2_IfcLamp_type, + IFC4X2_IfcLampType_type, + IFC4X2_IfcLampTypeEnum_type, + IFC4X2_IfcLanguageId_type, + IFC4X2_IfcLayeredItem_type, + IFC4X2_IfcLayerSetDirectionEnum_type, + IFC4X2_IfcLengthMeasure_type, + IFC4X2_IfcLibraryInformation_type, + IFC4X2_IfcLibraryReference_type, + IFC4X2_IfcLibrarySelect_type, + IFC4X2_IfcLightDistributionCurveEnum_type, + IFC4X2_IfcLightDistributionData_type, + IFC4X2_IfcLightDistributionDataSourceSelect_type, + IFC4X2_IfcLightEmissionSourceEnum_type, + IFC4X2_IfcLightFixture_type, + IFC4X2_IfcLightFixtureType_type, + IFC4X2_IfcLightFixtureTypeEnum_type, + IFC4X2_IfcLightIntensityDistribution_type, + IFC4X2_IfcLightSource_type, + IFC4X2_IfcLightSourceAmbient_type, + IFC4X2_IfcLightSourceDirectional_type, + IFC4X2_IfcLightSourceGoniometric_type, + IFC4X2_IfcLightSourcePositional_type, + IFC4X2_IfcLightSourceSpot_type, + IFC4X2_IfcLine_type, + IFC4X2_IfcLinearForceMeasure_type, + IFC4X2_IfcLinearMomentMeasure_type, + IFC4X2_IfcLinearPlacement_type, + IFC4X2_IfcLinearPositioningElement_type, + IFC4X2_IfcLinearStiffnessMeasure_type, + IFC4X2_IfcLinearVelocityMeasure_type, + IFC4X2_IfcLineIndex_type, + IFC4X2_IfcLineSegment2D_type, + IFC4X2_IfcLoadGroupTypeEnum_type, + IFC4X2_IfcLocalPlacement_type, + IFC4X2_IfcLogical_type, + IFC4X2_IfcLogicalOperatorEnum_type, + IFC4X2_IfcLoop_type, + IFC4X2_IfcLShapeProfileDef_type, + IFC4X2_IfcLuminousFluxMeasure_type, + IFC4X2_IfcLuminousIntensityDistributionMeasure_type, + IFC4X2_IfcLuminousIntensityMeasure_type, + IFC4X2_IfcMagneticFluxDensityMeasure_type, + IFC4X2_IfcMagneticFluxMeasure_type, + IFC4X2_IfcManifoldSolidBrep_type, + IFC4X2_IfcMapConversion_type, + IFC4X2_IfcMappedItem_type, + IFC4X2_IfcMassDensityMeasure_type, + IFC4X2_IfcMassFlowRateMeasure_type, + IFC4X2_IfcMassMeasure_type, + IFC4X2_IfcMassPerLengthMeasure_type, + IFC4X2_IfcMaterial_type, + IFC4X2_IfcMaterialClassificationRelationship_type, + IFC4X2_IfcMaterialConstituent_type, + IFC4X2_IfcMaterialConstituentSet_type, + IFC4X2_IfcMaterialDefinition_type, + IFC4X2_IfcMaterialDefinitionRepresentation_type, + IFC4X2_IfcMaterialLayer_type, + IFC4X2_IfcMaterialLayerSet_type, + IFC4X2_IfcMaterialLayerSetUsage_type, + IFC4X2_IfcMaterialLayerWithOffsets_type, + IFC4X2_IfcMaterialList_type, + IFC4X2_IfcMaterialProfile_type, + IFC4X2_IfcMaterialProfileSet_type, + IFC4X2_IfcMaterialProfileSetUsage_type, + IFC4X2_IfcMaterialProfileSetUsageTapering_type, + IFC4X2_IfcMaterialProfileWithOffsets_type, + IFC4X2_IfcMaterialProperties_type, + IFC4X2_IfcMaterialRelationship_type, + IFC4X2_IfcMaterialSelect_type, + IFC4X2_IfcMaterialUsageDefinition_type, + IFC4X2_IfcMeasureValue_type, + IFC4X2_IfcMeasureWithUnit_type, + IFC4X2_IfcMechanicalFastener_type, + IFC4X2_IfcMechanicalFastenerType_type, + IFC4X2_IfcMechanicalFastenerTypeEnum_type, + IFC4X2_IfcMedicalDevice_type, + IFC4X2_IfcMedicalDeviceType_type, + IFC4X2_IfcMedicalDeviceTypeEnum_type, + IFC4X2_IfcMember_type, + IFC4X2_IfcMemberStandardCase_type, + IFC4X2_IfcMemberType_type, + IFC4X2_IfcMemberTypeEnum_type, + IFC4X2_IfcMetric_type, + IFC4X2_IfcMetricValueSelect_type, + IFC4X2_IfcMirroredProfileDef_type, + IFC4X2_IfcModulusOfElasticityMeasure_type, + IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X2_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X2_IfcModulusOfSubgradeReactionSelect_type, + IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X2_IfcMoistureDiffusivityMeasure_type, + IFC4X2_IfcMolecularWeightMeasure_type, + IFC4X2_IfcMomentOfInertiaMeasure_type, + IFC4X2_IfcMonetaryMeasure_type, + IFC4X2_IfcMonetaryUnit_type, + IFC4X2_IfcMonthInYearNumber_type, + IFC4X2_IfcMotorConnection_type, + IFC4X2_IfcMotorConnectionType_type, + IFC4X2_IfcMotorConnectionTypeEnum_type, + IFC4X2_IfcNamedUnit_type, + IFC4X2_IfcNonNegativeLengthMeasure_type, + IFC4X2_IfcNormalisedRatioMeasure_type, + IFC4X2_IfcNullStyle_type, + IFC4X2_IfcNumericMeasure_type, + IFC4X2_IfcObject_type, + IFC4X2_IfcObjectDefinition_type, + IFC4X2_IfcObjective_type, + IFC4X2_IfcObjectiveEnum_type, + IFC4X2_IfcObjectPlacement_type, + IFC4X2_IfcObjectReferenceSelect_type, + IFC4X2_IfcObjectTypeEnum_type, + IFC4X2_IfcOccupant_type, + IFC4X2_IfcOccupantTypeEnum_type, + IFC4X2_IfcOffsetCurve_type, + IFC4X2_IfcOffsetCurve2D_type, + IFC4X2_IfcOffsetCurve3D_type, + IFC4X2_IfcOffsetCurveByDistances_type, + IFC4X2_IfcOpeningElement_type, + IFC4X2_IfcOpeningElementTypeEnum_type, + IFC4X2_IfcOpeningStandardCase_type, + IFC4X2_IfcOpenShell_type, + IFC4X2_IfcOrganization_type, + IFC4X2_IfcOrganizationRelationship_type, + IFC4X2_IfcOrientationExpression_type, + IFC4X2_IfcOrientedEdge_type, + IFC4X2_IfcOuterBoundaryCurve_type, + IFC4X2_IfcOutlet_type, + IFC4X2_IfcOutletType_type, + IFC4X2_IfcOutletTypeEnum_type, + IFC4X2_IfcOwnerHistory_type, + IFC4X2_IfcParameterizedProfileDef_type, + IFC4X2_IfcParameterValue_type, + IFC4X2_IfcPath_type, + IFC4X2_IfcPcurve_type, + IFC4X2_IfcPerformanceHistory_type, + IFC4X2_IfcPerformanceHistoryTypeEnum_type, + IFC4X2_IfcPermeableCoveringOperationEnum_type, + IFC4X2_IfcPermeableCoveringProperties_type, + IFC4X2_IfcPermit_type, + IFC4X2_IfcPermitTypeEnum_type, + IFC4X2_IfcPerson_type, + IFC4X2_IfcPersonAndOrganization_type, + IFC4X2_IfcPHMeasure_type, + IFC4X2_IfcPhysicalComplexQuantity_type, + IFC4X2_IfcPhysicalOrVirtualEnum_type, + IFC4X2_IfcPhysicalQuantity_type, + IFC4X2_IfcPhysicalSimpleQuantity_type, + IFC4X2_IfcPile_type, + IFC4X2_IfcPileConstructionEnum_type, + IFC4X2_IfcPileType_type, + IFC4X2_IfcPileTypeEnum_type, + IFC4X2_IfcPipeFitting_type, + IFC4X2_IfcPipeFittingType_type, + IFC4X2_IfcPipeFittingTypeEnum_type, + IFC4X2_IfcPipeSegment_type, + IFC4X2_IfcPipeSegmentType_type, + IFC4X2_IfcPipeSegmentTypeEnum_type, + IFC4X2_IfcPixelTexture_type, + IFC4X2_IfcPlacement_type, + IFC4X2_IfcPlanarBox_type, + IFC4X2_IfcPlanarExtent_type, + IFC4X2_IfcPlanarForceMeasure_type, + IFC4X2_IfcPlane_type, + IFC4X2_IfcPlaneAngleMeasure_type, + IFC4X2_IfcPlate_type, + IFC4X2_IfcPlateStandardCase_type, + IFC4X2_IfcPlateType_type, + IFC4X2_IfcPlateTypeEnum_type, + IFC4X2_IfcPoint_type, + IFC4X2_IfcPointOnCurve_type, + IFC4X2_IfcPointOnSurface_type, + IFC4X2_IfcPointOrVertexPoint_type, + IFC4X2_IfcPolygonalBoundedHalfSpace_type, + IFC4X2_IfcPolygonalFaceSet_type, + IFC4X2_IfcPolyline_type, + IFC4X2_IfcPolyLoop_type, + IFC4X2_IfcPort_type, + IFC4X2_IfcPositioningElement_type, + IFC4X2_IfcPositiveInteger_type, + IFC4X2_IfcPositiveLengthMeasure_type, + IFC4X2_IfcPositivePlaneAngleMeasure_type, + IFC4X2_IfcPositiveRatioMeasure_type, + IFC4X2_IfcPostalAddress_type, + IFC4X2_IfcPowerMeasure_type, + IFC4X2_IfcPreDefinedColour_type, + IFC4X2_IfcPreDefinedCurveFont_type, + IFC4X2_IfcPreDefinedItem_type, + IFC4X2_IfcPreDefinedProperties_type, + IFC4X2_IfcPreDefinedPropertySet_type, + IFC4X2_IfcPreDefinedTextFont_type, + IFC4X2_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X2_IfcPresentableText_type, + IFC4X2_IfcPresentationItem_type, + IFC4X2_IfcPresentationLayerAssignment_type, + IFC4X2_IfcPresentationLayerWithStyle_type, + IFC4X2_IfcPresentationStyle_type, + IFC4X2_IfcPresentationStyleAssignment_type, + IFC4X2_IfcPresentationStyleSelect_type, + IFC4X2_IfcPressureMeasure_type, + IFC4X2_IfcProcedure_type, + IFC4X2_IfcProcedureType_type, + IFC4X2_IfcProcedureTypeEnum_type, + IFC4X2_IfcProcess_type, + IFC4X2_IfcProcessSelect_type, + IFC4X2_IfcProduct_type, + IFC4X2_IfcProductDefinitionShape_type, + IFC4X2_IfcProductRepresentation_type, + IFC4X2_IfcProductRepresentationSelect_type, + IFC4X2_IfcProductSelect_type, + IFC4X2_IfcProfileDef_type, + IFC4X2_IfcProfileProperties_type, + IFC4X2_IfcProfileTypeEnum_type, + IFC4X2_IfcProject_type, + IFC4X2_IfcProjectedCRS_type, + IFC4X2_IfcProjectedOrTrueLengthEnum_type, + IFC4X2_IfcProjectionElement_type, + IFC4X2_IfcProjectionElementTypeEnum_type, + IFC4X2_IfcProjectLibrary_type, + IFC4X2_IfcProjectOrder_type, + IFC4X2_IfcProjectOrderTypeEnum_type, + IFC4X2_IfcProperty_type, + IFC4X2_IfcPropertyAbstraction_type, + IFC4X2_IfcPropertyBoundedValue_type, + IFC4X2_IfcPropertyDefinition_type, + IFC4X2_IfcPropertyDependencyRelationship_type, + IFC4X2_IfcPropertyEnumeratedValue_type, + IFC4X2_IfcPropertyEnumeration_type, + IFC4X2_IfcPropertyListValue_type, + IFC4X2_IfcPropertyReferenceValue_type, + IFC4X2_IfcPropertySet_type, + IFC4X2_IfcPropertySetDefinition_type, + IFC4X2_IfcPropertySetDefinitionSelect_type, + IFC4X2_IfcPropertySetDefinitionSet_type, + IFC4X2_IfcPropertySetTemplate_type, + IFC4X2_IfcPropertySetTemplateTypeEnum_type, + IFC4X2_IfcPropertySingleValue_type, + IFC4X2_IfcPropertyTableValue_type, + IFC4X2_IfcPropertyTemplate_type, + IFC4X2_IfcPropertyTemplateDefinition_type, + IFC4X2_IfcProtectiveDevice_type, + IFC4X2_IfcProtectiveDeviceTrippingUnit_type, + IFC4X2_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X2_IfcProtectiveDeviceType_type, + IFC4X2_IfcProtectiveDeviceTypeEnum_type, + IFC4X2_IfcProxy_type, + IFC4X2_IfcPump_type, + IFC4X2_IfcPumpType_type, + IFC4X2_IfcPumpTypeEnum_type, + IFC4X2_IfcQuantityArea_type, + IFC4X2_IfcQuantityCount_type, + IFC4X2_IfcQuantityLength_type, + IFC4X2_IfcQuantitySet_type, + IFC4X2_IfcQuantityTime_type, + IFC4X2_IfcQuantityVolume_type, + IFC4X2_IfcQuantityWeight_type, + IFC4X2_IfcRadioActivityMeasure_type, + IFC4X2_IfcRailing_type, + IFC4X2_IfcRailingType_type, + IFC4X2_IfcRailingTypeEnum_type, + IFC4X2_IfcRamp_type, + IFC4X2_IfcRampFlight_type, + IFC4X2_IfcRampFlightType_type, + IFC4X2_IfcRampFlightTypeEnum_type, + IFC4X2_IfcRampType_type, + IFC4X2_IfcRampTypeEnum_type, + IFC4X2_IfcRatioMeasure_type, + IFC4X2_IfcRationalBSplineCurveWithKnots_type, + IFC4X2_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X2_IfcReal_type, + IFC4X2_IfcRectangleHollowProfileDef_type, + IFC4X2_IfcRectangleProfileDef_type, + IFC4X2_IfcRectangularPyramid_type, + IFC4X2_IfcRectangularTrimmedSurface_type, + IFC4X2_IfcRecurrencePattern_type, + IFC4X2_IfcRecurrenceTypeEnum_type, + IFC4X2_IfcReference_type, + IFC4X2_IfcReferent_type, + IFC4X2_IfcReferentTypeEnum_type, + IFC4X2_IfcReflectanceMethodEnum_type, + IFC4X2_IfcRegularTimeSeries_type, + IFC4X2_IfcReinforcementBarProperties_type, + IFC4X2_IfcReinforcementDefinitionProperties_type, + IFC4X2_IfcReinforcingBar_type, + IFC4X2_IfcReinforcingBarRoleEnum_type, + IFC4X2_IfcReinforcingBarSurfaceEnum_type, + IFC4X2_IfcReinforcingBarType_type, + IFC4X2_IfcReinforcingBarTypeEnum_type, + IFC4X2_IfcReinforcingElement_type, + IFC4X2_IfcReinforcingElementType_type, + IFC4X2_IfcReinforcingMesh_type, + IFC4X2_IfcReinforcingMeshType_type, + IFC4X2_IfcReinforcingMeshTypeEnum_type, + IFC4X2_IfcRelAggregates_type, + IFC4X2_IfcRelAssigns_type, + IFC4X2_IfcRelAssignsToActor_type, + IFC4X2_IfcRelAssignsToControl_type, + IFC4X2_IfcRelAssignsToGroup_type, + IFC4X2_IfcRelAssignsToGroupByFactor_type, + IFC4X2_IfcRelAssignsToProcess_type, + IFC4X2_IfcRelAssignsToProduct_type, + IFC4X2_IfcRelAssignsToResource_type, + IFC4X2_IfcRelAssociates_type, + IFC4X2_IfcRelAssociatesApproval_type, + IFC4X2_IfcRelAssociatesClassification_type, + IFC4X2_IfcRelAssociatesConstraint_type, + IFC4X2_IfcRelAssociatesDocument_type, + IFC4X2_IfcRelAssociatesLibrary_type, + IFC4X2_IfcRelAssociatesMaterial_type, + IFC4X2_IfcRelationship_type, + IFC4X2_IfcRelConnects_type, + IFC4X2_IfcRelConnectsElements_type, + IFC4X2_IfcRelConnectsPathElements_type, + IFC4X2_IfcRelConnectsPorts_type, + IFC4X2_IfcRelConnectsPortToElement_type, + IFC4X2_IfcRelConnectsStructuralActivity_type, + IFC4X2_IfcRelConnectsStructuralMember_type, + IFC4X2_IfcRelConnectsWithEccentricity_type, + IFC4X2_IfcRelConnectsWithRealizingElements_type, + IFC4X2_IfcRelContainedInSpatialStructure_type, + IFC4X2_IfcRelCoversBldgElements_type, + IFC4X2_IfcRelCoversSpaces_type, + IFC4X2_IfcRelDeclares_type, + IFC4X2_IfcRelDecomposes_type, + IFC4X2_IfcRelDefines_type, + IFC4X2_IfcRelDefinesByObject_type, + IFC4X2_IfcRelDefinesByProperties_type, + IFC4X2_IfcRelDefinesByTemplate_type, + IFC4X2_IfcRelDefinesByType_type, + IFC4X2_IfcRelFillsElement_type, + IFC4X2_IfcRelFlowControlElements_type, + IFC4X2_IfcRelInterferesElements_type, + IFC4X2_IfcRelNests_type, + IFC4X2_IfcRelPositions_type, + IFC4X2_IfcRelProjectsElement_type, + IFC4X2_IfcRelReferencedInSpatialStructure_type, + IFC4X2_IfcRelSequence_type, + IFC4X2_IfcRelServicesBuildings_type, + IFC4X2_IfcRelSpaceBoundary_type, + IFC4X2_IfcRelSpaceBoundary1stLevel_type, + IFC4X2_IfcRelSpaceBoundary2ndLevel_type, + IFC4X2_IfcRelVoidsElement_type, + IFC4X2_IfcReparametrisedCompositeCurveSegment_type, + IFC4X2_IfcRepresentation_type, + IFC4X2_IfcRepresentationContext_type, + IFC4X2_IfcRepresentationItem_type, + IFC4X2_IfcRepresentationMap_type, + IFC4X2_IfcResource_type, + IFC4X2_IfcResourceApprovalRelationship_type, + IFC4X2_IfcResourceConstraintRelationship_type, + IFC4X2_IfcResourceLevelRelationship_type, + IFC4X2_IfcResourceObjectSelect_type, + IFC4X2_IfcResourceSelect_type, + IFC4X2_IfcResourceTime_type, + IFC4X2_IfcRevolvedAreaSolid_type, + IFC4X2_IfcRevolvedAreaSolidTapered_type, + IFC4X2_IfcRightCircularCone_type, + IFC4X2_IfcRightCircularCylinder_type, + IFC4X2_IfcRoleEnum_type, + IFC4X2_IfcRoof_type, + IFC4X2_IfcRoofType_type, + IFC4X2_IfcRoofTypeEnum_type, + IFC4X2_IfcRoot_type, + IFC4X2_IfcRotationalFrequencyMeasure_type, + IFC4X2_IfcRotationalMassMeasure_type, + IFC4X2_IfcRotationalStiffnessMeasure_type, + IFC4X2_IfcRotationalStiffnessSelect_type, + IFC4X2_IfcRoundedRectangleProfileDef_type, + IFC4X2_IfcSanitaryTerminal_type, + IFC4X2_IfcSanitaryTerminalType_type, + IFC4X2_IfcSanitaryTerminalTypeEnum_type, + IFC4X2_IfcSchedulingTime_type, + IFC4X2_IfcSeamCurve_type, + IFC4X2_IfcSectionalAreaIntegralMeasure_type, + IFC4X2_IfcSectionedSolid_type, + IFC4X2_IfcSectionedSolidHorizontal_type, + IFC4X2_IfcSectionedSpine_type, + IFC4X2_IfcSectionModulusMeasure_type, + IFC4X2_IfcSectionProperties_type, + IFC4X2_IfcSectionReinforcementProperties_type, + IFC4X2_IfcSectionTypeEnum_type, + IFC4X2_IfcSegmentIndexSelect_type, + IFC4X2_IfcSensor_type, + IFC4X2_IfcSensorType_type, + IFC4X2_IfcSensorTypeEnum_type, + IFC4X2_IfcSequenceEnum_type, + IFC4X2_IfcShadingDevice_type, + IFC4X2_IfcShadingDeviceType_type, + IFC4X2_IfcShadingDeviceTypeEnum_type, + IFC4X2_IfcShapeAspect_type, + IFC4X2_IfcShapeModel_type, + IFC4X2_IfcShapeRepresentation_type, + IFC4X2_IfcShearModulusMeasure_type, + IFC4X2_IfcShell_type, + IFC4X2_IfcShellBasedSurfaceModel_type, + IFC4X2_IfcSimpleProperty_type, + IFC4X2_IfcSimplePropertyTemplate_type, + IFC4X2_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X2_IfcSimpleValue_type, + IFC4X2_IfcSIPrefix_type, + IFC4X2_IfcSite_type, + IFC4X2_IfcSIUnit_type, + IFC4X2_IfcSIUnitName_type, + IFC4X2_IfcSizeSelect_type, + IFC4X2_IfcSlab_type, + IFC4X2_IfcSlabElementedCase_type, + IFC4X2_IfcSlabStandardCase_type, + IFC4X2_IfcSlabType_type, + IFC4X2_IfcSlabTypeEnum_type, + IFC4X2_IfcSlippageConnectionCondition_type, + IFC4X2_IfcSolarDevice_type, + IFC4X2_IfcSolarDeviceType_type, + IFC4X2_IfcSolarDeviceTypeEnum_type, + IFC4X2_IfcSolidAngleMeasure_type, + IFC4X2_IfcSolidModel_type, + IFC4X2_IfcSolidOrShell_type, + IFC4X2_IfcSoundPowerLevelMeasure_type, + IFC4X2_IfcSoundPowerMeasure_type, + IFC4X2_IfcSoundPressureLevelMeasure_type, + IFC4X2_IfcSoundPressureMeasure_type, + IFC4X2_IfcSpace_type, + IFC4X2_IfcSpaceBoundarySelect_type, + IFC4X2_IfcSpaceHeater_type, + IFC4X2_IfcSpaceHeaterType_type, + IFC4X2_IfcSpaceHeaterTypeEnum_type, + IFC4X2_IfcSpaceType_type, + IFC4X2_IfcSpaceTypeEnum_type, + IFC4X2_IfcSpatialElement_type, + IFC4X2_IfcSpatialElementType_type, + IFC4X2_IfcSpatialStructureElement_type, + IFC4X2_IfcSpatialStructureElementType_type, + IFC4X2_IfcSpatialZone_type, + IFC4X2_IfcSpatialZoneType_type, + IFC4X2_IfcSpatialZoneTypeEnum_type, + IFC4X2_IfcSpecificHeatCapacityMeasure_type, + IFC4X2_IfcSpecularExponent_type, + IFC4X2_IfcSpecularHighlightSelect_type, + IFC4X2_IfcSpecularRoughness_type, + IFC4X2_IfcSphere_type, + IFC4X2_IfcSphericalSurface_type, + IFC4X2_IfcStackTerminal_type, + IFC4X2_IfcStackTerminalType_type, + IFC4X2_IfcStackTerminalTypeEnum_type, + IFC4X2_IfcStair_type, + IFC4X2_IfcStairFlight_type, + IFC4X2_IfcStairFlightType_type, + IFC4X2_IfcStairFlightTypeEnum_type, + IFC4X2_IfcStairType_type, + IFC4X2_IfcStairTypeEnum_type, + IFC4X2_IfcStateEnum_type, + IFC4X2_IfcStructuralAction_type, + IFC4X2_IfcStructuralActivity_type, + IFC4X2_IfcStructuralActivityAssignmentSelect_type, + IFC4X2_IfcStructuralAnalysisModel_type, + IFC4X2_IfcStructuralConnection_type, + IFC4X2_IfcStructuralConnectionCondition_type, + IFC4X2_IfcStructuralCurveAction_type, + IFC4X2_IfcStructuralCurveActivityTypeEnum_type, + IFC4X2_IfcStructuralCurveConnection_type, + IFC4X2_IfcStructuralCurveMember_type, + IFC4X2_IfcStructuralCurveMemberTypeEnum_type, + IFC4X2_IfcStructuralCurveMemberVarying_type, + IFC4X2_IfcStructuralCurveReaction_type, + IFC4X2_IfcStructuralItem_type, + IFC4X2_IfcStructuralLinearAction_type, + IFC4X2_IfcStructuralLoad_type, + IFC4X2_IfcStructuralLoadCase_type, + IFC4X2_IfcStructuralLoadConfiguration_type, + IFC4X2_IfcStructuralLoadGroup_type, + IFC4X2_IfcStructuralLoadLinearForce_type, + IFC4X2_IfcStructuralLoadOrResult_type, + IFC4X2_IfcStructuralLoadPlanarForce_type, + IFC4X2_IfcStructuralLoadSingleDisplacement_type, + IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X2_IfcStructuralLoadSingleForce_type, + IFC4X2_IfcStructuralLoadSingleForceWarping_type, + IFC4X2_IfcStructuralLoadStatic_type, + IFC4X2_IfcStructuralLoadTemperature_type, + IFC4X2_IfcStructuralMember_type, + IFC4X2_IfcStructuralPlanarAction_type, + IFC4X2_IfcStructuralPointAction_type, + IFC4X2_IfcStructuralPointConnection_type, + IFC4X2_IfcStructuralPointReaction_type, + IFC4X2_IfcStructuralReaction_type, + IFC4X2_IfcStructuralResultGroup_type, + IFC4X2_IfcStructuralSurfaceAction_type, + IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X2_IfcStructuralSurfaceConnection_type, + IFC4X2_IfcStructuralSurfaceMember_type, + IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X2_IfcStructuralSurfaceMemberVarying_type, + IFC4X2_IfcStructuralSurfaceReaction_type, + IFC4X2_IfcStyleAssignmentSelect_type, + IFC4X2_IfcStyledItem_type, + IFC4X2_IfcStyledRepresentation_type, + IFC4X2_IfcStyleModel_type, + IFC4X2_IfcSubContractResource_type, + IFC4X2_IfcSubContractResourceType_type, + IFC4X2_IfcSubContractResourceTypeEnum_type, + IFC4X2_IfcSubedge_type, + IFC4X2_IfcSurface_type, + IFC4X2_IfcSurfaceCurve_type, + IFC4X2_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X2_IfcSurfaceFeature_type, + IFC4X2_IfcSurfaceFeatureTypeEnum_type, + IFC4X2_IfcSurfaceOfLinearExtrusion_type, + IFC4X2_IfcSurfaceOfRevolution_type, + IFC4X2_IfcSurfaceOrFaceSurface_type, + IFC4X2_IfcSurfaceReinforcementArea_type, + IFC4X2_IfcSurfaceSide_type, + IFC4X2_IfcSurfaceStyle_type, + IFC4X2_IfcSurfaceStyleElementSelect_type, + IFC4X2_IfcSurfaceStyleLighting_type, + IFC4X2_IfcSurfaceStyleRefraction_type, + IFC4X2_IfcSurfaceStyleRendering_type, + IFC4X2_IfcSurfaceStyleShading_type, + IFC4X2_IfcSurfaceStyleWithTextures_type, + IFC4X2_IfcSurfaceTexture_type, + IFC4X2_IfcSweptAreaSolid_type, + IFC4X2_IfcSweptDiskSolid_type, + IFC4X2_IfcSweptDiskSolidPolygonal_type, + IFC4X2_IfcSweptSurface_type, + IFC4X2_IfcSwitchingDevice_type, + IFC4X2_IfcSwitchingDeviceType_type, + IFC4X2_IfcSwitchingDeviceTypeEnum_type, + IFC4X2_IfcSystem_type, + IFC4X2_IfcSystemFurnitureElement_type, + IFC4X2_IfcSystemFurnitureElementType_type, + IFC4X2_IfcSystemFurnitureElementTypeEnum_type, + IFC4X2_IfcTable_type, + IFC4X2_IfcTableColumn_type, + IFC4X2_IfcTableRow_type, + IFC4X2_IfcTank_type, + IFC4X2_IfcTankType_type, + IFC4X2_IfcTankTypeEnum_type, + IFC4X2_IfcTask_type, + IFC4X2_IfcTaskDurationEnum_type, + IFC4X2_IfcTaskTime_type, + IFC4X2_IfcTaskTimeRecurring_type, + IFC4X2_IfcTaskType_type, + IFC4X2_IfcTaskTypeEnum_type, + IFC4X2_IfcTelecomAddress_type, + IFC4X2_IfcTemperatureGradientMeasure_type, + IFC4X2_IfcTemperatureRateOfChangeMeasure_type, + IFC4X2_IfcTendon_type, + IFC4X2_IfcTendonAnchor_type, + IFC4X2_IfcTendonAnchorType_type, + IFC4X2_IfcTendonAnchorTypeEnum_type, + IFC4X2_IfcTendonConduit_type, + IFC4X2_IfcTendonConduitType_type, + IFC4X2_IfcTendonConduitTypeEnum_type, + IFC4X2_IfcTendonType_type, + IFC4X2_IfcTendonTypeEnum_type, + IFC4X2_IfcTessellatedFaceSet_type, + IFC4X2_IfcTessellatedItem_type, + IFC4X2_IfcText_type, + IFC4X2_IfcTextAlignment_type, + IFC4X2_IfcTextDecoration_type, + IFC4X2_IfcTextFontName_type, + IFC4X2_IfcTextFontSelect_type, + IFC4X2_IfcTextLiteral_type, + IFC4X2_IfcTextLiteralWithExtent_type, + IFC4X2_IfcTextPath_type, + IFC4X2_IfcTextStyle_type, + IFC4X2_IfcTextStyleFontModel_type, + IFC4X2_IfcTextStyleForDefinedFont_type, + IFC4X2_IfcTextStyleTextModel_type, + IFC4X2_IfcTextTransformation_type, + IFC4X2_IfcTextureCoordinate_type, + IFC4X2_IfcTextureCoordinateGenerator_type, + IFC4X2_IfcTextureMap_type, + IFC4X2_IfcTextureVertex_type, + IFC4X2_IfcTextureVertexList_type, + IFC4X2_IfcThermalAdmittanceMeasure_type, + IFC4X2_IfcThermalConductivityMeasure_type, + IFC4X2_IfcThermalExpansionCoefficientMeasure_type, + IFC4X2_IfcThermalResistanceMeasure_type, + IFC4X2_IfcThermalTransmittanceMeasure_type, + IFC4X2_IfcThermodynamicTemperatureMeasure_type, + IFC4X2_IfcTime_type, + IFC4X2_IfcTimeMeasure_type, + IFC4X2_IfcTimeOrRatioSelect_type, + IFC4X2_IfcTimePeriod_type, + IFC4X2_IfcTimeSeries_type, + IFC4X2_IfcTimeSeriesDataTypeEnum_type, + IFC4X2_IfcTimeSeriesValue_type, + IFC4X2_IfcTimeStamp_type, + IFC4X2_IfcTopologicalRepresentationItem_type, + IFC4X2_IfcTopologyRepresentation_type, + IFC4X2_IfcToroidalSurface_type, + IFC4X2_IfcTorqueMeasure_type, + IFC4X2_IfcTransformer_type, + IFC4X2_IfcTransformerType_type, + IFC4X2_IfcTransformerTypeEnum_type, + IFC4X2_IfcTransitionCode_type, + IFC4X2_IfcTransitionCurveSegment2D_type, + IFC4X2_IfcTransitionCurveType_type, + IFC4X2_IfcTranslationalStiffnessSelect_type, + IFC4X2_IfcTransportElement_type, + IFC4X2_IfcTransportElementType_type, + IFC4X2_IfcTransportElementTypeEnum_type, + IFC4X2_IfcTrapeziumProfileDef_type, + IFC4X2_IfcTriangulatedFaceSet_type, + IFC4X2_IfcTriangulatedIrregularNetwork_type, + IFC4X2_IfcTrimmedCurve_type, + IFC4X2_IfcTrimmingPreference_type, + IFC4X2_IfcTrimmingSelect_type, + IFC4X2_IfcTShapeProfileDef_type, + IFC4X2_IfcTubeBundle_type, + IFC4X2_IfcTubeBundleType_type, + IFC4X2_IfcTubeBundleTypeEnum_type, + IFC4X2_IfcTypeObject_type, + IFC4X2_IfcTypeProcess_type, + IFC4X2_IfcTypeProduct_type, + IFC4X2_IfcTypeResource_type, + IFC4X2_IfcUnit_type, + IFC4X2_IfcUnitaryControlElement_type, + IFC4X2_IfcUnitaryControlElementType_type, + IFC4X2_IfcUnitaryControlElementTypeEnum_type, + IFC4X2_IfcUnitaryEquipment_type, + IFC4X2_IfcUnitaryEquipmentType_type, + IFC4X2_IfcUnitaryEquipmentTypeEnum_type, + IFC4X2_IfcUnitAssignment_type, + IFC4X2_IfcUnitEnum_type, + IFC4X2_IfcURIReference_type, + IFC4X2_IfcUShapeProfileDef_type, + IFC4X2_IfcValue_type, + IFC4X2_IfcValve_type, + IFC4X2_IfcValveType_type, + IFC4X2_IfcValveTypeEnum_type, + IFC4X2_IfcVaporPermeabilityMeasure_type, + IFC4X2_IfcVector_type, + IFC4X2_IfcVectorOrDirection_type, + IFC4X2_IfcVertex_type, + IFC4X2_IfcVertexLoop_type, + IFC4X2_IfcVertexPoint_type, + IFC4X2_IfcVibrationDamper_type, + IFC4X2_IfcVibrationDamperType_type, + IFC4X2_IfcVibrationDamperTypeEnum_type, + IFC4X2_IfcVibrationIsolator_type, + IFC4X2_IfcVibrationIsolatorType_type, + IFC4X2_IfcVibrationIsolatorTypeEnum_type, + IFC4X2_IfcVirtualElement_type, + IFC4X2_IfcVirtualGridIntersection_type, + IFC4X2_IfcVoidingFeature_type, + IFC4X2_IfcVoidingFeatureTypeEnum_type, + IFC4X2_IfcVolumeMeasure_type, + IFC4X2_IfcVolumetricFlowRateMeasure_type, + IFC4X2_IfcWall_type, + IFC4X2_IfcWallElementedCase_type, + IFC4X2_IfcWallStandardCase_type, + IFC4X2_IfcWallType_type, + IFC4X2_IfcWallTypeEnum_type, + IFC4X2_IfcWarpingConstantMeasure_type, + IFC4X2_IfcWarpingMomentMeasure_type, + IFC4X2_IfcWarpingStiffnessSelect_type, + IFC4X2_IfcWasteTerminal_type, + IFC4X2_IfcWasteTerminalType_type, + IFC4X2_IfcWasteTerminalTypeEnum_type, + IFC4X2_IfcWindow_type, + IFC4X2_IfcWindowLiningProperties_type, + IFC4X2_IfcWindowPanelOperationEnum_type, + IFC4X2_IfcWindowPanelPositionEnum_type, + IFC4X2_IfcWindowPanelProperties_type, + IFC4X2_IfcWindowStandardCase_type, + IFC4X2_IfcWindowStyle_type, + IFC4X2_IfcWindowStyleConstructionEnum_type, + IFC4X2_IfcWindowStyleOperationEnum_type, + IFC4X2_IfcWindowType_type, + IFC4X2_IfcWindowTypeEnum_type, + IFC4X2_IfcWindowTypePartitioningEnum_type, + IFC4X2_IfcWorkCalendar_type, + IFC4X2_IfcWorkCalendarTypeEnum_type, + IFC4X2_IfcWorkControl_type, + IFC4X2_IfcWorkPlan_type, + IFC4X2_IfcWorkPlanTypeEnum_type, + IFC4X2_IfcWorkSchedule_type, + IFC4X2_IfcWorkScheduleTypeEnum_type, + IFC4X2_IfcWorkTime_type, + IFC4X2_IfcZone_type, + IFC4X2_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3479], declarations, new IFC4X2_instance_factory()); } diff --git a/src/ifcparse/Ifc4x2.cpp b/src/ifcparse/Ifc4x2.cpp index 3e31975014..429b6e490a 100644 --- a/src/ifcparse/Ifc4x2.cpp +++ b/src/ifcparse/Ifc4x2.cpp @@ -1284,20 +1284,11 @@ Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string& v) } const char* Ifc4x2::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcActionRequestTypeEnum::Value Ifc4x2::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcActionRequestTypeEnum::Value) IFC4X2_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcActionRequestTypeEnum::operator Ifc4x2::IfcActionRequestTypeEnum::Value() const { @@ -1326,40 +1317,11 @@ Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcActionSourceTypeEnum::Value Ifc4x2::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcActionSourceTypeEnum::Value) IFC4X2_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcActionSourceTypeEnum::operator Ifc4x2::IfcActionSourceTypeEnum::Value() const { @@ -1388,18 +1350,11 @@ Ifc4x2::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcActionTypeEnum::Value Ifc4x2::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4x2::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x2::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4x2::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4x2::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcActionTypeEnum::Value) IFC4X2_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcActionTypeEnum::operator Ifc4x2::IfcActionTypeEnum::Value() const { @@ -1428,20 +1383,11 @@ Ifc4x2::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcActuatorTypeEnum::Value Ifc4x2::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcActuatorTypeEnum::Value) IFC4X2_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcActuatorTypeEnum::operator Ifc4x2::IfcActuatorTypeEnum::Value() const { @@ -1470,18 +1416,11 @@ Ifc4x2::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4X2_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAddressTypeEnum::Value Ifc4x2::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x2::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x2::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4x2::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x2::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAddressTypeEnum::Value) IFC4X2_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAddressTypeEnum::operator Ifc4x2::IfcAddressTypeEnum::Value() const { @@ -1510,18 +1449,11 @@ Ifc4x2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::string& } const char* Ifc4x2::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAirTerminalBoxTypeEnum::Value Ifc4x2::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAirTerminalBoxTypeEnum::Value) IFC4X2_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAirTerminalBoxTypeEnum::operator Ifc4x2::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1550,19 +1482,11 @@ Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAirTerminalTypeEnum::Value Ifc4x2::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAirTerminalTypeEnum::Value) IFC4X2_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAirTerminalTypeEnum::operator Ifc4x2::IfcAirTerminalTypeEnum::Value() const { @@ -1591,24 +1515,11 @@ Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(const s } const char* Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1637,21 +1548,11 @@ Ifc4x2::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAlarmTypeEnum::Value Ifc4x2::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAlarmTypeEnum::Value) IFC4X2_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAlarmTypeEnum::operator Ifc4x2::IfcAlarmTypeEnum::Value() const { @@ -1680,15 +1581,11 @@ Ifc4x2::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAlignmentTypeEnum::Value Ifc4x2::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAlignmentTypeEnum::Value) IFC4X2_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAlignmentTypeEnum::operator Ifc4x2::IfcAlignmentTypeEnum::Value() const { @@ -1717,18 +1614,11 @@ Ifc4x2::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string& v) } const char* Ifc4x2::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAnalysisModelTypeEnum::Value Ifc4x2::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAnalysisModelTypeEnum::Value) IFC4X2_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAnalysisModelTypeEnum::operator Ifc4x2::IfcAnalysisModelTypeEnum::Value() const { @@ -1757,19 +1647,11 @@ Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::string& } const char* Ifc4x2::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAnalysisTheoryTypeEnum::Value Ifc4x2::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAnalysisTheoryTypeEnum::Value) IFC4X2_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAnalysisTheoryTypeEnum::operator Ifc4x2::IfcAnalysisTheoryTypeEnum::Value() const { @@ -1798,17 +1680,11 @@ Ifc4x2::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::string& } const char* Ifc4x2::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X2_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcArithmeticOperatorEnum::Value Ifc4x2::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcArithmeticOperatorEnum::Value) IFC4X2_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcArithmeticOperatorEnum::operator Ifc4x2::IfcArithmeticOperatorEnum::Value() const { @@ -1837,16 +1713,11 @@ Ifc4x2::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x2::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAssemblyPlaceEnum::Value Ifc4x2::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4x2::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4x2::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAssemblyPlaceEnum::Value) IFC4X2_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAssemblyPlaceEnum::operator Ifc4x2::IfcAssemblyPlaceEnum::Value() const { @@ -1875,26 +1746,11 @@ Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(const s } const char* Ifc4x2::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcAudioVisualApplianceTypeEnum::Value Ifc4x2::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcAudioVisualApplianceTypeEnum::Value) IFC4X2_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcAudioVisualApplianceTypeEnum::operator Ifc4x2::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -1923,19 +1779,11 @@ Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x2::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4X2_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBSplineCurveForm::Value Ifc4x2::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4x2::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBSplineCurveForm::Value) IFC4X2_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x2::IfcBSplineCurveForm::operator Ifc4x2::IfcBSplineCurveForm::Value() const { @@ -1964,24 +1812,11 @@ Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4x2::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4X2_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBSplineSurfaceForm::Value Ifc4x2::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4x2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBSplineSurfaceForm::Value) IFC4X2_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x2::IfcBSplineSurfaceForm::operator Ifc4x2::IfcBSplineSurfaceForm::Value() const { @@ -2010,27 +1845,11 @@ Ifc4x2::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "GIRDER_SEGMENT", "DIAPHRAGM", "PIERCAP", "HATSTONE", "CORNICE", "EDGEBEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBeamTypeEnum::Value Ifc4x2::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "GIRDER_SEGMENT") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_GIRDER_SEGMENT; - if (s == "DIAPHRAGM") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_DIAPHRAGM; - if (s == "PIERCAP") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_PIERCAP; - if (s == "HATSTONE") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_HATSTONE; - if (s == "CORNICE") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_CORNICE; - if (s == "EDGEBEAM") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_EDGEBEAM; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBeamTypeEnum::Value) IFC4X2_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBeamTypeEnum::operator Ifc4x2::IfcBeamTypeEnum::Value() const { @@ -2059,18 +1878,11 @@ Ifc4x2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(const std } const char* Ifc4x2::IfcBearingTypeDisplacementEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXED_MOVEMENT", "GUIDED_LONGITUDINAL", "GUIDED_TRANSVERSAL", "FREE_MOVEMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBearingTypeDisplacementEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBearingTypeDisplacementEnum::Value Ifc4x2::IfcBearingTypeDisplacementEnum::FromString(const std::string& s) { - if (s == "FIXED_MOVEMENT") return ::Ifc4x2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FIXED_MOVEMENT; - if (s == "GUIDED_LONGITUDINAL") return ::Ifc4x2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_LONGITUDINAL; - if (s == "GUIDED_TRANSVERSAL") return ::Ifc4x2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_TRANSVERSAL; - if (s == "FREE_MOVEMENT") return ::Ifc4x2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FREE_MOVEMENT; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBearingTypeDisplacementEnum::Value) IFC4X2_IfcBearingTypeDisplacementEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBearingTypeDisplacementEnum::operator Ifc4x2::IfcBearingTypeDisplacementEnum::Value() const { @@ -2099,23 +1911,11 @@ Ifc4x2::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcBearingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYLINDRICAL", "SPHERICAL", "ELASTOMERIC", "POT", "GUIDE", "ROCKER", "ROLLER", "DISK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBearingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBearingTypeEnum::Value Ifc4x2::IfcBearingTypeEnum::FromString(const std::string& s) { - if (s == "CYLINDRICAL") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_CYLINDRICAL; - if (s == "SPHERICAL") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_SPHERICAL; - if (s == "ELASTOMERIC") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_ELASTOMERIC; - if (s == "POT") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_POT; - if (s == "GUIDE") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_GUIDE; - if (s == "ROCKER") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_ROCKER; - if (s == "ROLLER") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_ROLLER; - if (s == "DISK") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_DISK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBearingTypeEnum::IfcBearingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBearingTypeEnum::Value) IFC4X2_IfcBearingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBearingTypeEnum::operator Ifc4x2::IfcBearingTypeEnum::Value() const { @@ -2144,23 +1944,11 @@ Ifc4x2::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x2::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4X2_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBenchmarkEnum::Value Ifc4x2::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4x2::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBenchmarkEnum::Value) IFC4X2_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBenchmarkEnum::operator Ifc4x2::IfcBenchmarkEnum::Value() const { @@ -2189,17 +1977,11 @@ Ifc4x2::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBoilerTypeEnum::Value Ifc4x2::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4x2::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4x2::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBoilerTypeEnum::Value) IFC4X2_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBoilerTypeEnum::operator Ifc4x2::IfcBoilerTypeEnum::Value() const { @@ -2228,16 +2010,11 @@ Ifc4x2::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x2::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4X2_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBooleanOperator::Value Ifc4x2::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4x2::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4x2::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4x2::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBooleanOperator::Value) IFC4X2_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x2::IfcBooleanOperator::operator Ifc4x2::IfcBooleanOperator::Value() const { @@ -2266,25 +2043,11 @@ Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcBridgePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "DECK", "DECK_SEGMENT", "FOUNDATION", "PIER", "PIER_SEGMENT", "PYLON", "SUBSTRUCTURE", "SUPERSTRUCTURE", "SURFACESTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBridgePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBridgePartTypeEnum::Value Ifc4x2::IfcBridgePartTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_ABUTMENT; - if (s == "DECK") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_DECK; - if (s == "DECK_SEGMENT") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_DECK_SEGMENT; - if (s == "FOUNDATION") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_FOUNDATION; - if (s == "PIER") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_PIER; - if (s == "PIER_SEGMENT") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_PIER_SEGMENT; - if (s == "PYLON") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_PYLON; - if (s == "SUBSTRUCTURE") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_SUPERSTRUCTURE; - if (s == "SURFACESTRUCTURE") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_SURFACESTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBridgePartTypeEnum::IfcBridgePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBridgePartTypeEnum::Value) IFC4X2_IfcBridgePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBridgePartTypeEnum::operator Ifc4x2::IfcBridgePartTypeEnum::Value() const { @@ -2313,23 +2076,11 @@ Ifc4x2::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcBridgeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHED", "CABLE_STAYED", "CANTILEVER", "CULVERT", "FRAMEWORK", "GIRDER", "SUSPENSION", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBridgeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBridgeTypeEnum::Value Ifc4x2::IfcBridgeTypeEnum::FromString(const std::string& s) { - if (s == "ARCHED") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_ARCHED; - if (s == "CABLE_STAYED") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_CABLE_STAYED; - if (s == "CANTILEVER") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_CANTILEVER; - if (s == "CULVERT") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_CULVERT; - if (s == "FRAMEWORK") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_FRAMEWORK; - if (s == "GIRDER") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_GIRDER; - if (s == "SUSPENSION") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_SUSPENSION; - if (s == "TRUSS") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBridgeTypeEnum::IfcBridgeType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBridgeTypeEnum::Value) IFC4X2_IfcBridgeTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBridgeTypeEnum::operator Ifc4x2::IfcBridgeTypeEnum::Value() const { @@ -2358,18 +2109,11 @@ Ifc4x2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const std } const char* Ifc4x2::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "APRON", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBuildingElementPartTypeEnum::Value Ifc4x2::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4x2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "APRON") return ::Ifc4x2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_APRON; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBuildingElementPartTypeEnum::Value) IFC4X2_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBuildingElementPartTypeEnum::operator Ifc4x2::IfcBuildingElementPartTypeEnum::Value() const { @@ -2398,20 +2142,11 @@ Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(const s } const char* Ifc4x2::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBuildingElementProxyTypeEnum::Value Ifc4x2::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBuildingElementProxyTypeEnum::Value) IFC4X2_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBuildingElementProxyTypeEnum::operator Ifc4x2::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2440,23 +2175,11 @@ Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::string& } const char* Ifc4x2::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "REINFORCING", "PRESTRESSING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBuildingSystemTypeEnum::Value Ifc4x2::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "REINFORCING") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_REINFORCING; - if (s == "PRESTRESSING") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_PRESTRESSING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBuildingSystemTypeEnum::Value) IFC4X2_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBuildingSystemTypeEnum::operator Ifc4x2::IfcBuildingSystemTypeEnum::Value() const { @@ -2485,15 +2208,11 @@ Ifc4x2::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcBurnerTypeEnum::Value Ifc4x2::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcBurnerTypeEnum::Value) IFC4X2_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcBurnerTypeEnum::operator Ifc4x2::IfcBurnerTypeEnum::Value() const { @@ -2522,19 +2241,11 @@ Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const std } const char* Ifc4x2::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCableCarrierFittingTypeEnum::Value Ifc4x2::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCableCarrierFittingTypeEnum::Value) IFC4X2_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCableCarrierFittingTypeEnum::operator Ifc4x2::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2563,19 +2274,11 @@ Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const std } const char* Ifc4x2::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCableCarrierSegmentTypeEnum::Value Ifc4x2::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCableCarrierSegmentTypeEnum::Value) IFC4X2_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCableCarrierSegmentTypeEnum::operator Ifc4x2::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2604,20 +2307,11 @@ Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCableFittingTypeEnum::Value Ifc4x2::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCableFittingTypeEnum::Value) IFC4X2_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCableFittingTypeEnum::operator Ifc4x2::IfcCableFittingTypeEnum::Value() const { @@ -2646,19 +2340,11 @@ Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCableSegmentTypeEnum::Value Ifc4x2::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCableSegmentTypeEnum::Value) IFC4X2_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCableSegmentTypeEnum::operator Ifc4x2::IfcCableSegmentTypeEnum::Value() const { @@ -2687,17 +2373,11 @@ Ifc4x2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std::st } const char* Ifc4x2::IfcCaissonFoundationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WELL", "CAISSON", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCaissonFoundationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCaissonFoundationTypeEnum::Value Ifc4x2::IfcCaissonFoundationTypeEnum::FromString(const std::string& s) { - if (s == "WELL") return ::Ifc4x2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_WELL; - if (s == "CAISSON") return ::Ifc4x2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_CAISSON; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCaissonFoundationTypeEnum::Value) IFC4X2_IfcCaissonFoundationTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCaissonFoundationTypeEnum::operator Ifc4x2::IfcCaissonFoundationTypeEnum::Value() const { @@ -2726,18 +2406,11 @@ Ifc4x2::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x2::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcChangeActionEnum::Value Ifc4x2::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4x2::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4x2::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4x2::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x2::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcChangeActionEnum::Value) IFC4X2_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcChangeActionEnum::operator Ifc4x2::IfcChangeActionEnum::Value() const { @@ -2766,18 +2439,11 @@ Ifc4x2::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcChillerTypeEnum::Value Ifc4x2::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x2::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4x2::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x2::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4x2::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcChillerTypeEnum::Value) IFC4X2_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcChillerTypeEnum::operator Ifc4x2::IfcChillerTypeEnum::Value() const { @@ -2806,15 +2472,11 @@ Ifc4x2::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcChimneyTypeEnum::Value Ifc4x2::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcChimneyTypeEnum::Value) IFC4X2_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcChimneyTypeEnum::operator Ifc4x2::IfcChimneyTypeEnum::Value() const { @@ -2843,22 +2505,11 @@ Ifc4x2::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCoilTypeEnum::Value Ifc4x2::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCoilTypeEnum::Value) IFC4X2_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCoilTypeEnum::operator Ifc4x2::IfcCoilTypeEnum::Value() const { @@ -2887,20 +2538,11 @@ Ifc4x2::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "PIERSTEM", "PIERSTEM_SEGMENT", "STANDCOLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcColumnTypeEnum::Value Ifc4x2::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "PIERSTEM") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_PIERSTEM; - if (s == "PIERSTEM_SEGMENT") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_PIERSTEM_SEGMENT; - if (s == "STANDCOLUMN") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_STANDCOLUMN; - if (s == "USERDEFINED") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcColumnTypeEnum::Value) IFC4X2_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcColumnTypeEnum::operator Ifc4x2::IfcColumnTypeEnum::Value() const { @@ -2929,27 +2571,11 @@ Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEnum(c } const char* Ifc4x2::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCommunicationsApplianceTypeEnum::Value Ifc4x2::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCommunicationsApplianceTypeEnum::Value) IFC4X2_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCommunicationsApplianceTypeEnum::operator Ifc4x2::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -2978,15 +2604,11 @@ Ifc4x2::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEnum(c } const char* Ifc4x2::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X2_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x2::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x2::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x2::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X2_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x2::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -3015,30 +2637,11 @@ Ifc4x2::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCompressorTypeEnum::Value Ifc4x2::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCompressorTypeEnum::Value) IFC4X2_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCompressorTypeEnum::operator Ifc4x2::IfcCompressorTypeEnum::Value() const { @@ -3067,22 +2670,11 @@ Ifc4x2::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCondenserTypeEnum::Value Ifc4x2::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCondenserTypeEnum::Value) IFC4X2_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCondenserTypeEnum::operator Ifc4x2::IfcCondenserTypeEnum::Value() const { @@ -3111,17 +2703,11 @@ Ifc4x2::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcConnectionTypeEnum::Value Ifc4x2::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4x2::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x2::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4x2::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcConnectionTypeEnum::Value) IFC4X2_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcConnectionTypeEnum::operator Ifc4x2::IfcConnectionTypeEnum::Value() const { @@ -3150,18 +2736,11 @@ Ifc4x2::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x2::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcConstraintEnum::Value Ifc4x2::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4x2::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x2::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4x2::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4x2::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcConstraintEnum::Value) IFC4X2_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcConstraintEnum::operator Ifc4x2::IfcConstraintEnum::Value() const { @@ -3190,23 +2769,11 @@ Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResour } const char* Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x2::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -3235,24 +2802,11 @@ Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResource } const char* Ifc4x2::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4X2_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x2::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X2_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x2::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3281,17 +2835,11 @@ Ifc4x2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceTy } const char* Ifc4x2::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcConstructionProductResourceTypeEnum::Value Ifc4x2::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcConstructionProductResourceTypeEnum::Value) IFC4X2_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcConstructionProductResourceTypeEnum::operator Ifc4x2::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3320,20 +2868,11 @@ Ifc4x2::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcControllerTypeEnum::Value Ifc4x2::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcControllerTypeEnum::Value) IFC4X2_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcControllerTypeEnum::operator Ifc4x2::IfcControllerTypeEnum::Value() const { @@ -3362,17 +2901,11 @@ Ifc4x2::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCooledBeamTypeEnum::Value Ifc4x2::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x2::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x2::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCooledBeamTypeEnum::Value) IFC4X2_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCooledBeamTypeEnum::operator Ifc4x2::IfcCooledBeamTypeEnum::Value() const { @@ -3401,18 +2934,11 @@ Ifc4x2::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCoolingTowerTypeEnum::Value Ifc4x2::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4x2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCoolingTowerTypeEnum::Value) IFC4X2_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCoolingTowerTypeEnum::operator Ifc4x2::IfcCoolingTowerTypeEnum::Value() const { @@ -3441,15 +2967,11 @@ Ifc4x2::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCostItemTypeEnum::Value Ifc4x2::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCostItemTypeEnum::Value) IFC4X2_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCostItemTypeEnum::operator Ifc4x2::IfcCostItemTypeEnum::Value() const { @@ -3478,22 +3000,11 @@ Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCostScheduleTypeEnum::Value Ifc4x2::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCostScheduleTypeEnum::Value) IFC4X2_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCostScheduleTypeEnum::operator Ifc4x2::IfcCostScheduleTypeEnum::Value() const { @@ -3522,26 +3033,11 @@ Ifc4x2::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "COPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCoveringTypeEnum::Value Ifc4x2::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "COPING") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_COPING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCoveringTypeEnum::Value) IFC4X2_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCoveringTypeEnum::operator Ifc4x2::IfcCoveringTypeEnum::Value() const { @@ -3570,17 +3066,11 @@ Ifc4x2::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCrewResourceTypeEnum::Value Ifc4x2::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x2::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x2::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCrewResourceTypeEnum::Value) IFC4X2_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCrewResourceTypeEnum::operator Ifc4x2::IfcCrewResourceTypeEnum::Value() const { @@ -3609,15 +3099,11 @@ Ifc4x2::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCurtainWallTypeEnum::Value Ifc4x2::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCurtainWallTypeEnum::Value) IFC4X2_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCurtainWallTypeEnum::operator Ifc4x2::IfcCurtainWallTypeEnum::Value() const { @@ -3646,17 +3132,11 @@ Ifc4x2::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::string& } const char* Ifc4x2::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcCurveInterpolationEnum::Value Ifc4x2::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x2::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x2::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x2::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcCurveInterpolationEnum::Value) IFC4X2_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcCurveInterpolationEnum::operator Ifc4x2::IfcCurveInterpolationEnum::Value() const { @@ -3685,26 +3165,11 @@ Ifc4x2::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDamperTypeEnum::Value Ifc4x2::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDamperTypeEnum::Value) IFC4X2_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDamperTypeEnum::operator Ifc4x2::IfcDamperTypeEnum::Value() const { @@ -3733,18 +3198,11 @@ Ifc4x2::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x2::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDataOriginEnum::Value Ifc4x2::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x2::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x2::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x2::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDataOriginEnum::Value) IFC4X2_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDataOriginEnum::operator Ifc4x2::IfcDataOriginEnum::Value() const { @@ -3773,66 +3231,11 @@ Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x2::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X2_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDerivedUnitEnum::Value Ifc4x2::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDerivedUnitEnum::Value) IFC4X2_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDerivedUnitEnum::operator Ifc4x2::IfcDerivedUnitEnum::Value() const { @@ -3861,15 +3264,11 @@ Ifc4x2::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4x2::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4X2_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDirectionSenseEnum::Value Ifc4x2::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x2::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x2::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDirectionSenseEnum::Value) IFC4X2_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDirectionSenseEnum::operator Ifc4x2::IfcDirectionSenseEnum::Value() const { @@ -3898,19 +3297,11 @@ Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std::st } const char* Ifc4x2::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "EXPANSION_JOINT_DEVICE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDiscreteAccessoryTypeEnum::Value Ifc4x2::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "EXPANSION_JOINT_DEVICE") return ::Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_EXPANSION_JOINT_DEVICE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDiscreteAccessoryTypeEnum::Value) IFC4X2_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDiscreteAccessoryTypeEnum::operator Ifc4x2::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -3939,23 +3330,11 @@ Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType } const char* Ifc4x2::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDistributionChamberElementTypeEnum::Value Ifc4x2::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDistributionChamberElementTypeEnum::Value) IFC4X2_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDistributionChamberElementTypeEnum::operator Ifc4x2::IfcDistributionChamberElementTypeEnum::Value() const { @@ -3984,19 +3363,11 @@ Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std::stri } const char* Ifc4x2::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDistributionPortTypeEnum::Value Ifc4x2::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDistributionPortTypeEnum::Value) IFC4X2_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDistributionPortTypeEnum::operator Ifc4x2::IfcDistributionPortTypeEnum::Value() const { @@ -4025,57 +3396,11 @@ Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::string& } const char* Ifc4x2::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 44 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDistributionSystemEnum::Value Ifc4x2::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDistributionSystemEnum::Value) IFC4X2_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDistributionSystemEnum::operator Ifc4x2::IfcDistributionSystemEnum::Value() const { @@ -4104,19 +3429,11 @@ Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const std } const char* Ifc4x2::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDocumentConfidentialityEnum::Value Ifc4x2::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDocumentConfidentialityEnum::Value) IFC4X2_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDocumentConfidentialityEnum::operator Ifc4x2::IfcDocumentConfidentialityEnum::Value() const { @@ -4145,18 +3462,11 @@ Ifc4x2::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4x2::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDocumentStatusEnum::Value Ifc4x2::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x2::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4x2::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4x2::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4x2::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDocumentStatusEnum::Value) IFC4X2_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDocumentStatusEnum::operator Ifc4x2::IfcDocumentStatusEnum::Value() const { @@ -4185,22 +3495,11 @@ Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::string& } const char* Ifc4x2::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDoorPanelOperationEnum::Value Ifc4x2::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDoorPanelOperationEnum::Value) IFC4X2_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDoorPanelOperationEnum::operator Ifc4x2::IfcDoorPanelOperationEnum::Value() const { @@ -4229,17 +3528,11 @@ Ifc4x2::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string& v) } const char* Ifc4x2::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDoorPanelPositionEnum::Value Ifc4x2::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDoorPanelPositionEnum::Value) IFC4X2_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDoorPanelPositionEnum::operator Ifc4x2::IfcDoorPanelPositionEnum::Value() const { @@ -4268,22 +3561,11 @@ Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std::st } const char* Ifc4x2::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDoorStyleConstructionEnum::Value Ifc4x2::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDoorStyleConstructionEnum::Value) IFC4X2_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDoorStyleConstructionEnum::operator Ifc4x2::IfcDoorStyleConstructionEnum::Value() const { @@ -4312,31 +3594,11 @@ Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::string& } const char* Ifc4x2::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDoorStyleOperationEnum::Value Ifc4x2::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDoorStyleOperationEnum::Value) IFC4X2_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDoorStyleOperationEnum::operator Ifc4x2::IfcDoorStyleOperationEnum::Value() const { @@ -4365,18 +3627,11 @@ Ifc4x2::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDoorTypeEnum::Value Ifc4x2::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4x2::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x2::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x2::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDoorTypeEnum::Value) IFC4X2_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDoorTypeEnum::operator Ifc4x2::IfcDoorTypeEnum::Value() const { @@ -4405,33 +3660,11 @@ Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string& v) } const char* Ifc4x2::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 20 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDoorTypeOperationEnum::Value Ifc4x2::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDoorTypeOperationEnum::Value) IFC4X2_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDoorTypeOperationEnum::operator Ifc4x2::IfcDoorTypeOperationEnum::Value() const { @@ -4460,22 +3693,11 @@ Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDuctFittingTypeEnum::Value Ifc4x2::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDuctFittingTypeEnum::Value) IFC4X2_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDuctFittingTypeEnum::operator Ifc4x2::IfcDuctFittingTypeEnum::Value() const { @@ -4504,17 +3726,11 @@ Ifc4x2::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDuctSegmentTypeEnum::Value Ifc4x2::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4x2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDuctSegmentTypeEnum::Value) IFC4X2_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDuctSegmentTypeEnum::operator Ifc4x2::IfcDuctSegmentTypeEnum::Value() const { @@ -4543,18 +3759,11 @@ Ifc4x2::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcDuctSilencerTypeEnum::Value Ifc4x2::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcDuctSilencerTypeEnum::Value) IFC4X2_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcDuctSilencerTypeEnum::operator Ifc4x2::IfcDuctSilencerTypeEnum::Value() const { @@ -4583,31 +3792,11 @@ Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std::st } const char* Ifc4x2::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElectricApplianceTypeEnum::Value Ifc4x2::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElectricApplianceTypeEnum::Value) IFC4X2_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElectricApplianceTypeEnum::operator Ifc4x2::IfcElectricApplianceTypeEnum::Value() const { @@ -4636,19 +3825,11 @@ Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTypeEn } const char* Ifc4x2::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElectricDistributionBoardTypeEnum::Value Ifc4x2::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElectricDistributionBoardTypeEnum::Value) IFC4X2_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElectricDistributionBoardTypeEnum::operator Ifc4x2::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -4677,20 +3858,11 @@ Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTypeEn } const char* Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -4719,18 +3891,11 @@ Ifc4x2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std::st } const char* Ifc4x2::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElectricGeneratorTypeEnum::Value Ifc4x2::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElectricGeneratorTypeEnum::Value) IFC4X2_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElectricGeneratorTypeEnum::operator Ifc4x2::IfcElectricGeneratorTypeEnum::Value() const { @@ -4759,20 +3924,11 @@ Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string& v) } const char* Ifc4x2::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElectricMotorTypeEnum::Value Ifc4x2::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElectricMotorTypeEnum::Value) IFC4X2_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElectricMotorTypeEnum::operator Ifc4x2::IfcElectricMotorTypeEnum::Value() const { @@ -4801,18 +3957,11 @@ Ifc4x2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const std } const char* Ifc4x2::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElectricTimeControlTypeEnum::Value Ifc4x2::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4x2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4x2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElectricTimeControlTypeEnum::Value) IFC4X2_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElectricTimeControlTypeEnum::operator Ifc4x2::IfcElectricTimeControlTypeEnum::Value() const { @@ -4841,29 +3990,11 @@ Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::string } const char* Ifc4x2::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "ABUTMENT", "PIER", "PYLON", "CROSS_BRACING", "DECK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElementAssemblyTypeEnum::Value Ifc4x2::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "ABUTMENT") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ABUTMENT; - if (s == "PIER") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PIER; - if (s == "PYLON") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PYLON; - if (s == "CROSS_BRACING") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_CROSS_BRACING; - if (s == "DECK") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DECK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElementAssemblyTypeEnum::Value) IFC4X2_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElementAssemblyTypeEnum::operator Ifc4x2::IfcElementAssemblyTypeEnum::Value() const { @@ -4892,16 +4023,11 @@ Ifc4x2::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::string& } const char* Ifc4x2::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X2_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcElementCompositionEnum::Value Ifc4x2::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x2::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x2::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x2::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcElementCompositionEnum::Value) IFC4X2_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcElementCompositionEnum::operator Ifc4x2::IfcElementCompositionEnum::Value() const { @@ -4930,17 +4056,11 @@ Ifc4x2::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcEngineTypeEnum::Value Ifc4x2::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x2::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x2::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcEngineTypeEnum::Value) IFC4X2_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcEngineTypeEnum::operator Ifc4x2::IfcEngineTypeEnum::Value() const { @@ -4969,24 +4089,11 @@ Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std::st } const char* Ifc4x2::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcEvaporativeCoolerTypeEnum::Value Ifc4x2::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcEvaporativeCoolerTypeEnum::Value) IFC4X2_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcEvaporativeCoolerTypeEnum::operator Ifc4x2::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -5015,21 +4122,11 @@ Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcEvaporatorTypeEnum::Value Ifc4x2::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcEvaporatorTypeEnum::Value) IFC4X2_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcEvaporatorTypeEnum::operator Ifc4x2::IfcEvaporatorTypeEnum::Value() const { @@ -5058,19 +4155,11 @@ Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcEventTriggerTypeEnum::Value Ifc4x2::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcEventTriggerTypeEnum::Value) IFC4X2_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcEventTriggerTypeEnum::operator Ifc4x2::IfcEventTriggerTypeEnum::Value() const { @@ -5099,18 +4188,11 @@ Ifc4x2::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcEventTypeEnum::Value Ifc4x2::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4x2::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4x2::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x2::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcEventTypeEnum::Value) IFC4X2_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcEventTypeEnum::operator Ifc4x2::IfcEventTypeEnum::Value() const { @@ -5139,19 +4221,11 @@ Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum(con } const char* Ifc4x2::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcExternalSpatialElementTypeEnum::Value Ifc4x2::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcExternalSpatialElementTypeEnum::Value) IFC4X2_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcExternalSpatialElementTypeEnum::operator Ifc4x2::IfcExternalSpatialElementTypeEnum::Value() const { @@ -5180,22 +4254,11 @@ Ifc4x2::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFanTypeEnum::Value Ifc4x2::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFanTypeEnum::Value) IFC4X2_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFanTypeEnum::operator Ifc4x2::IfcFanTypeEnum::Value() const { @@ -5224,18 +4287,11 @@ Ifc4x2::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFastenerTypeEnum::Value Ifc4x2::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x2::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x2::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x2::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFastenerTypeEnum::Value) IFC4X2_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFastenerTypeEnum::operator Ifc4x2::IfcFastenerTypeEnum::Value() const { @@ -5264,21 +4320,11 @@ Ifc4x2::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFilterTypeEnum::Value Ifc4x2::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFilterTypeEnum::Value) IFC4X2_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFilterTypeEnum::operator Ifc4x2::IfcFilterTypeEnum::Value() const { @@ -5307,20 +4353,11 @@ Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEnum(c } const char* Ifc4x2::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x2::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X2_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x2::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -5349,17 +4386,11 @@ Ifc4x2::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x2::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFlowDirectionEnum::Value Ifc4x2::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4x2::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4x2::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4x2::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFlowDirectionEnum::Value) IFC4X2_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFlowDirectionEnum::operator Ifc4x2::IfcFlowDirectionEnum::Value() const { @@ -5388,23 +4419,11 @@ Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::string& } const char* Ifc4x2::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFlowInstrumentTypeEnum::Value Ifc4x2::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFlowInstrumentTypeEnum::Value) IFC4X2_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFlowInstrumentTypeEnum::operator Ifc4x2::IfcFlowInstrumentTypeEnum::Value() const { @@ -5433,19 +4452,11 @@ Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFlowMeterTypeEnum::Value Ifc4x2::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFlowMeterTypeEnum::Value) IFC4X2_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFlowMeterTypeEnum::operator Ifc4x2::IfcFlowMeterTypeEnum::Value() const { @@ -5474,20 +4485,11 @@ Ifc4x2::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFootingTypeEnum::Value Ifc4x2::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFootingTypeEnum::Value) IFC4X2_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFootingTypeEnum::operator Ifc4x2::IfcFootingTypeEnum::Value() const { @@ -5516,22 +4518,11 @@ Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcFurnitureTypeEnum::Value Ifc4x2::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "USERDEFINED") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcFurnitureTypeEnum::Value) IFC4X2_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcFurnitureTypeEnum::operator Ifc4x2::IfcFurnitureTypeEnum::Value() const { @@ -5560,17 +4551,11 @@ Ifc4x2::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std::st } const char* Ifc4x2::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "SOIL_BORING_POINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcGeographicElementTypeEnum::Value Ifc4x2::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4x2::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "SOIL_BORING_POINT") return ::Ifc4x2::IfcGeographicElementTypeEnum::IfcGeographicElementType_SOIL_BORING_POINT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcGeographicElementTypeEnum::Value) IFC4X2_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcGeographicElementTypeEnum::operator Ifc4x2::IfcGeographicElementTypeEnum::Value() const { @@ -5599,22 +4584,11 @@ Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::string } const char* Ifc4x2::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcGeometricProjectionEnum::Value Ifc4x2::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcGeometricProjectionEnum::Value) IFC4X2_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcGeometricProjectionEnum::operator Ifc4x2::IfcGeometricProjectionEnum::Value() const { @@ -5643,15 +4617,11 @@ Ifc4x2::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x2::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X2_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcGlobalOrLocalEnum::Value Ifc4x2::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x2::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x2::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcGlobalOrLocalEnum::Value) IFC4X2_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcGlobalOrLocalEnum::operator Ifc4x2::IfcGlobalOrLocalEnum::Value() const { @@ -5680,19 +4650,11 @@ Ifc4x2::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcGridTypeEnum::Value Ifc4x2::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4x2::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4x2::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4x2::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4x2::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcGridTypeEnum::Value) IFC4X2_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcGridTypeEnum::operator Ifc4x2::IfcGridTypeEnum::Value() const { @@ -5721,17 +4683,11 @@ Ifc4x2::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string& v) } const char* Ifc4x2::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcHeatExchangerTypeEnum::Value Ifc4x2::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcHeatExchangerTypeEnum::Value) IFC4X2_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcHeatExchangerTypeEnum::operator Ifc4x2::IfcHeatExchangerTypeEnum::Value() const { @@ -5760,28 +4716,11 @@ Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcHumidifierTypeEnum::Value Ifc4x2::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcHumidifierTypeEnum::Value) IFC4X2_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcHumidifierTypeEnum::operator Ifc4x2::IfcHumidifierTypeEnum::Value() const { @@ -5810,19 +4749,11 @@ Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcInterceptorTypeEnum::Value Ifc4x2::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcInterceptorTypeEnum::Value) IFC4X2_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcInterceptorTypeEnum::operator Ifc4x2::IfcInterceptorTypeEnum::Value() const { @@ -5851,19 +4782,11 @@ Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::string& } const char* Ifc4x2::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcInternalOrExternalEnum::Value Ifc4x2::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcInternalOrExternalEnum::Value) IFC4X2_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcInternalOrExternalEnum::operator Ifc4x2::IfcInternalOrExternalEnum::Value() const { @@ -5892,18 +4815,11 @@ Ifc4x2::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcInventoryTypeEnum::Value Ifc4x2::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x2::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x2::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x2::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x2::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcInventoryTypeEnum::Value) IFC4X2_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcInventoryTypeEnum::operator Ifc4x2::IfcInventoryTypeEnum::Value() const { @@ -5932,17 +4848,11 @@ Ifc4x2::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcJunctionBoxTypeEnum::Value Ifc4x2::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcJunctionBoxTypeEnum::Value) IFC4X2_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcJunctionBoxTypeEnum::operator Ifc4x2::IfcJunctionBoxTypeEnum::Value() const { @@ -5971,17 +4881,11 @@ Ifc4x2::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x2::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X2_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcKnotType::Value Ifc4x2::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4x2::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x2::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x2::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x2::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcKnotType::Value) IFC4X2_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x2::IfcKnotType::operator Ifc4x2::IfcKnotType::Value() const { @@ -6010,34 +4914,11 @@ Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string& v) } const char* Ifc4x2::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLaborResourceTypeEnum::Value Ifc4x2::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLaborResourceTypeEnum::Value) IFC4X2_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLaborResourceTypeEnum::operator Ifc4x2::IfcLaborResourceTypeEnum::Value() const { @@ -6066,24 +4947,11 @@ Ifc4x2::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLampTypeEnum::Value Ifc4x2::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLampTypeEnum::Value) IFC4X2_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLampTypeEnum::operator Ifc4x2::IfcLampTypeEnum::Value() const { @@ -6112,16 +4980,11 @@ Ifc4x2::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string& v) } const char* Ifc4x2::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X2_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLayerSetDirectionEnum::Value Ifc4x2::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x2::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x2::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x2::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLayerSetDirectionEnum::Value) IFC4X2_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLayerSetDirectionEnum::operator Ifc4x2::IfcLayerSetDirectionEnum::Value() const { @@ -6150,17 +5013,11 @@ Ifc4x2::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const std:: } const char* Ifc4x2::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLightDistributionCurveEnum::Value Ifc4x2::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLightDistributionCurveEnum::Value) IFC4X2_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLightDistributionCurveEnum::operator Ifc4x2::IfcLightDistributionCurveEnum::Value() const { @@ -6189,24 +5046,11 @@ Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::string } const char* Ifc4x2::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLightEmissionSourceEnum::Value Ifc4x2::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLightEmissionSourceEnum::Value) IFC4X2_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLightEmissionSourceEnum::operator Ifc4x2::IfcLightEmissionSourceEnum::Value() const { @@ -6235,18 +5079,11 @@ Ifc4x2::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLightFixtureTypeEnum::Value Ifc4x2::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4x2::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4x2::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x2::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLightFixtureTypeEnum::Value) IFC4X2_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLightFixtureTypeEnum::operator Ifc4x2::IfcLightFixtureTypeEnum::Value() const { @@ -6275,18 +5112,11 @@ Ifc4x2::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLoadGroupTypeEnum::Value Ifc4x2::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4x2::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4x2::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x2::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLoadGroupTypeEnum::Value) IFC4X2_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLoadGroupTypeEnum::operator Ifc4x2::IfcLoadGroupTypeEnum::Value() const { @@ -6315,18 +5145,11 @@ Ifc4x2::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) { } const char* Ifc4x2::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4X2_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcLogicalOperatorEnum::Value Ifc4x2::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4x2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4x2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcLogicalOperatorEnum::Value) IFC4X2_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcLogicalOperatorEnum::operator Ifc4x2::IfcLogicalOperatorEnum::Value() const { @@ -6355,26 +5178,11 @@ Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const std:: } const char* Ifc4x2::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "COUPLER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcMechanicalFastenerTypeEnum::Value Ifc4x2::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "COUPLER") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_COUPLER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcMechanicalFastenerTypeEnum::Value) IFC4X2_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcMechanicalFastenerTypeEnum::operator Ifc4x2::IfcMechanicalFastenerTypeEnum::Value() const { @@ -6403,20 +5211,11 @@ Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string& v) } const char* Ifc4x2::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcMedicalDeviceTypeEnum::Value Ifc4x2::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcMedicalDeviceTypeEnum::Value) IFC4X2_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcMedicalDeviceTypeEnum::operator Ifc4x2::IfcMedicalDeviceTypeEnum::Value() const { @@ -6445,32 +5244,11 @@ Ifc4x2::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 19 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "STIFFENING_RIB", "ARCH_SEGMENT", "SUSPENSION_CABLE", "SUSPENDER", "STAY_CABLE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcMemberTypeEnum::Value Ifc4x2::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "STIFFENING_RIB") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_STIFFENING_RIB; - if (s == "ARCH_SEGMENT") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_ARCH_SEGMENT; - if (s == "SUSPENSION_CABLE") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_SUSPENSION_CABLE; - if (s == "SUSPENDER") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_SUSPENDER; - if (s == "STAY_CABLE") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_STAY_CABLE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcMemberTypeEnum::Value) IFC4X2_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcMemberTypeEnum::operator Ifc4x2::IfcMemberTypeEnum::Value() const { @@ -6499,18 +5277,11 @@ Ifc4x2::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::string } const char* Ifc4x2::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcMotorConnectionTypeEnum::Value Ifc4x2::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcMotorConnectionTypeEnum::Value) IFC4X2_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcMotorConnectionTypeEnum::operator Ifc4x2::IfcMotorConnectionTypeEnum::Value() const { @@ -6539,14 +5310,11 @@ Ifc4x2::IfcNullStyle::IfcNullStyle(const std::string& v) { } const char* Ifc4x2::IfcNullStyle::ToString(Value v) { - if ( v < 0 || v >= 1 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NULL" }; - return names[v]; + return IFC4X2_IfcNullStyle_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcNullStyle::Value Ifc4x2::IfcNullStyle::FromString(const std::string& s) { - if (s == "NULL") return ::Ifc4x2::IfcNullStyle::IfcNullStyle_NULL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcNullStyle::Value) IFC4X2_IfcNullStyle_type->lookup_enum_offset(s); } Ifc4x2::IfcNullStyle::operator Ifc4x2::IfcNullStyle::Value() const { @@ -6575,21 +5343,11 @@ Ifc4x2::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcObjectTypeEnum::Value Ifc4x2::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcObjectTypeEnum::Value) IFC4X2_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcObjectTypeEnum::operator Ifc4x2::IfcObjectTypeEnum::Value() const { @@ -6618,26 +5376,11 @@ Ifc4x2::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x2::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcObjectiveEnum::Value Ifc4x2::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcObjectiveEnum::Value) IFC4X2_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcObjectiveEnum::operator Ifc4x2::IfcObjectiveEnum::Value() const { @@ -6666,22 +5409,11 @@ Ifc4x2::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcOccupantTypeEnum::Value Ifc4x2::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcOccupantTypeEnum::Value) IFC4X2_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcOccupantTypeEnum::operator Ifc4x2::IfcOccupantTypeEnum::Value() const { @@ -6710,17 +5442,11 @@ Ifc4x2::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::string& } const char* Ifc4x2::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcOpeningElementTypeEnum::Value Ifc4x2::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x2::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x2::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x2::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcOpeningElementTypeEnum::Value) IFC4X2_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcOpeningElementTypeEnum::operator Ifc4x2::IfcOpeningElementTypeEnum::Value() const { @@ -6749,20 +5475,11 @@ Ifc4x2::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcOutletTypeEnum::Value Ifc4x2::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcOutletTypeEnum::Value) IFC4X2_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcOutletTypeEnum::operator Ifc4x2::IfcOutletTypeEnum::Value() const { @@ -6791,15 +5508,11 @@ Ifc4x2::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const std:: } const char* Ifc4x2::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPerformanceHistoryTypeEnum::Value Ifc4x2::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPerformanceHistoryTypeEnum::Value) IFC4X2_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPerformanceHistoryTypeEnum::operator Ifc4x2::IfcPerformanceHistoryTypeEnum::Value() const { @@ -6828,18 +5541,11 @@ Ifc4x2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum(con } const char* Ifc4x2::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPermeableCoveringOperationEnum::Value Ifc4x2::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPermeableCoveringOperationEnum::Value) IFC4X2_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPermeableCoveringOperationEnum::operator Ifc4x2::IfcPermeableCoveringOperationEnum::Value() const { @@ -6868,18 +5574,11 @@ Ifc4x2::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPermitTypeEnum::Value Ifc4x2::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x2::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x2::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x2::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPermitTypeEnum::Value) IFC4X2_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPermitTypeEnum::operator Ifc4x2::IfcPermitTypeEnum::Value() const { @@ -6908,16 +5607,11 @@ Ifc4x2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string& v) } const char* Ifc4x2::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPhysicalOrVirtualEnum::Value Ifc4x2::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPhysicalOrVirtualEnum::Value) IFC4X2_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPhysicalOrVirtualEnum::operator Ifc4x2::IfcPhysicalOrVirtualEnum::Value() const { @@ -6946,19 +5640,11 @@ Ifc4x2::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& v) { } const char* Ifc4x2::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPileConstructionEnum::Value Ifc4x2::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x2::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x2::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x2::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x2::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPileConstructionEnum::Value) IFC4X2_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPileConstructionEnum::operator Ifc4x2::IfcPileConstructionEnum::Value() const { @@ -6987,21 +5673,11 @@ Ifc4x2::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPileTypeEnum::Value Ifc4x2::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPileTypeEnum::Value) IFC4X2_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPileTypeEnum::operator Ifc4x2::IfcPileTypeEnum::Value() const { @@ -7030,22 +5706,11 @@ Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPipeFittingTypeEnum::Value Ifc4x2::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPipeFittingTypeEnum::Value) IFC4X2_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPipeFittingTypeEnum::operator Ifc4x2::IfcPipeFittingTypeEnum::Value() const { @@ -7074,20 +5739,11 @@ Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPipeSegmentTypeEnum::Value Ifc4x2::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPipeSegmentTypeEnum::Value) IFC4X2_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPipeSegmentTypeEnum::operator Ifc4x2::IfcPipeSegmentTypeEnum::Value() const { @@ -7116,24 +5772,11 @@ Ifc4x2::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "FLANGE_PLATE", "WEB_PLATE", "STIFFENER_PLATE", "GUSSET_PLATE", "COVER_PLATE", "SPLICE_PLATE", "BASE_PLATE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPlateTypeEnum::Value Ifc4x2::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "FLANGE_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_FLANGE_PLATE; - if (s == "WEB_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_WEB_PLATE; - if (s == "STIFFENER_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_STIFFENER_PLATE; - if (s == "GUSSET_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_GUSSET_PLATE; - if (s == "COVER_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_COVER_PLATE; - if (s == "SPLICE_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_SPLICE_PLATE; - if (s == "BASE_PLATE") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_BASE_PLATE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPlateTypeEnum::Value) IFC4X2_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPlateTypeEnum::operator Ifc4x2::IfcPlateTypeEnum::Value() const { @@ -7162,16 +5805,11 @@ Ifc4x2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresen } const char* Ifc4x2::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X2_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x2::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X2_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x2::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x2::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -7200,22 +5838,11 @@ Ifc4x2::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProcedureTypeEnum::Value Ifc4x2::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProcedureTypeEnum::Value) IFC4X2_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProcedureTypeEnum::operator Ifc4x2::IfcProcedureTypeEnum::Value() const { @@ -7244,15 +5871,11 @@ Ifc4x2::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4X2_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProfileTypeEnum::Value Ifc4x2::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4x2::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4x2::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProfileTypeEnum::Value) IFC4X2_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProfileTypeEnum::operator Ifc4x2::IfcProfileTypeEnum::Value() const { @@ -7281,20 +5904,11 @@ Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProjectOrderTypeEnum::Value Ifc4x2::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProjectOrderTypeEnum::Value) IFC4X2_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProjectOrderTypeEnum::operator Ifc4x2::IfcProjectOrderTypeEnum::Value() const { @@ -7323,15 +5937,11 @@ Ifc4x2::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std::st } const char* Ifc4x2::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X2_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProjectedOrTrueLengthEnum::Value Ifc4x2::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x2::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x2::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProjectedOrTrueLengthEnum::Value) IFC4X2_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProjectedOrTrueLengthEnum::operator Ifc4x2::IfcProjectedOrTrueLengthEnum::Value() const { @@ -7360,17 +5970,11 @@ Ifc4x2::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std::st } const char* Ifc4x2::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLISTER", "DEVIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProjectionElementTypeEnum::Value Ifc4x2::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "BLISTER") return ::Ifc4x2::IfcProjectionElementTypeEnum::IfcProjectionElementType_BLISTER; - if (s == "DEVIATOR") return ::Ifc4x2::IfcProjectionElementTypeEnum::IfcProjectionElementType_DEVIATOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProjectionElementTypeEnum::Value) IFC4X2_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProjectionElementTypeEnum::operator Ifc4x2::IfcProjectionElementTypeEnum::Value() const { @@ -7399,21 +6003,11 @@ Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const std } const char* Ifc4x2::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPropertySetTemplateTypeEnum::Value Ifc4x2::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPropertySetTemplateTypeEnum::Value) IFC4X2_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPropertySetTemplateTypeEnum::operator Ifc4x2::IfcPropertySetTemplateTypeEnum::Value() const { @@ -7442,19 +6036,11 @@ Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnit } const char* Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -7483,22 +6069,11 @@ Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std::stri } const char* Ifc4x2::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcProtectiveDeviceTypeEnum::Value Ifc4x2::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcProtectiveDeviceTypeEnum::Value) IFC4X2_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcProtectiveDeviceTypeEnum::operator Ifc4x2::IfcProtectiveDeviceTypeEnum::Value() const { @@ -7527,22 +6102,11 @@ Ifc4x2::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcPumpTypeEnum::Value Ifc4x2::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcPumpTypeEnum::Value) IFC4X2_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcPumpTypeEnum::operator Ifc4x2::IfcPumpTypeEnum::Value() const { @@ -7571,18 +6135,11 @@ Ifc4x2::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcRailingTypeEnum::Value Ifc4x2::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4x2::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4x2::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4x2::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcRailingTypeEnum::Value) IFC4X2_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcRailingTypeEnum::operator Ifc4x2::IfcRailingTypeEnum::Value() const { @@ -7611,17 +6168,11 @@ Ifc4x2::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcRampFlightTypeEnum::Value Ifc4x2::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x2::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4x2::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcRampFlightTypeEnum::Value) IFC4X2_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcRampFlightTypeEnum::operator Ifc4x2::IfcRampFlightTypeEnum::Value() const { @@ -7650,21 +6201,11 @@ Ifc4x2::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcRampTypeEnum::Value Ifc4x2::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcRampTypeEnum::Value) IFC4X2_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcRampTypeEnum::operator Ifc4x2::IfcRampTypeEnum::Value() const { @@ -7693,21 +6234,11 @@ Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X2_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcRecurrenceTypeEnum::Value Ifc4x2::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x2::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcRecurrenceTypeEnum::Value) IFC4X2_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcRecurrenceTypeEnum::operator Ifc4x2::IfcRecurrenceTypeEnum::Value() const { @@ -7736,18 +6267,11 @@ Ifc4x2::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "KILOPOINT", "MILEPOINT", "STATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcReferentTypeEnum::Value Ifc4x2::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "KILOPOINT") return ::Ifc4x2::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "MILEPOINT") return ::Ifc4x2::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "STATION") return ::Ifc4x2::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcReferentTypeEnum::Value) IFC4X2_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcReferentTypeEnum::operator Ifc4x2::IfcReferentTypeEnum::Value() const { @@ -7776,23 +6300,11 @@ Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string& v) } const char* Ifc4x2::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcReflectanceMethodEnum::Value Ifc4x2::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcReflectanceMethodEnum::Value) IFC4X2_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcReflectanceMethodEnum::operator Ifc4x2::IfcReflectanceMethodEnum::Value() const { @@ -7821,23 +6333,11 @@ Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::string& } const char* Ifc4x2::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcReinforcingBarRoleEnum::Value Ifc4x2::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcReinforcingBarRoleEnum::Value) IFC4X2_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcReinforcingBarRoleEnum::operator Ifc4x2::IfcReinforcingBarRoleEnum::Value() const { @@ -7866,15 +6366,11 @@ Ifc4x2::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std::st } const char* Ifc4x2::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X2_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcReinforcingBarSurfaceEnum::Value Ifc4x2::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x2::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x2::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcReinforcingBarSurfaceEnum::Value) IFC4X2_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcReinforcingBarSurfaceEnum::operator Ifc4x2::IfcReinforcingBarSurfaceEnum::Value() const { @@ -7903,24 +6399,11 @@ Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::string& } const char* Ifc4x2::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "SPACEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcReinforcingBarTypeEnum::Value Ifc4x2::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "SPACEBAR") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SPACEBAR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcReinforcingBarTypeEnum::Value) IFC4X2_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcReinforcingBarTypeEnum::operator Ifc4x2::IfcReinforcingBarTypeEnum::Value() const { @@ -7949,15 +6432,11 @@ Ifc4x2::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::string } const char* Ifc4x2::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcReinforcingMeshTypeEnum::Value Ifc4x2::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x2::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcReinforcingMeshTypeEnum::Value) IFC4X2_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcReinforcingMeshTypeEnum::operator Ifc4x2::IfcReinforcingMeshTypeEnum::Value() const { @@ -7986,36 +6465,11 @@ Ifc4x2::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x2::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4X2_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcRoleEnum::Value Ifc4x2::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4x2::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4x2::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4x2::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4x2::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4x2::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4x2::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4x2::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4x2::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4x2::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4x2::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4x2::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4x2::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4x2::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x2::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x2::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4x2::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcRoleEnum::Value) IFC4X2_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcRoleEnum::operator Ifc4x2::IfcRoleEnum::Value() const { @@ -8044,28 +6498,11 @@ Ifc4x2::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcRoofTypeEnum::Value Ifc4x2::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcRoofTypeEnum::Value) IFC4X2_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcRoofTypeEnum::operator Ifc4x2::IfcRoofTypeEnum::Value() const { @@ -8094,29 +6531,11 @@ Ifc4x2::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x2::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4X2_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSIPrefix::Value Ifc4x2::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4x2::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSIPrefix::Value) IFC4X2_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x2::IfcSIPrefix::operator Ifc4x2::IfcSIPrefix::Value() const { @@ -8145,43 +6564,11 @@ Ifc4x2::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x2::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X2_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSIUnitName::Value Ifc4x2::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x2::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSIUnitName::Value) IFC4X2_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x2::IfcSIUnitName::operator Ifc4x2::IfcSIUnitName::Value() const { @@ -8210,25 +6597,11 @@ Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std::stri } const char* Ifc4x2::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSanitaryTerminalTypeEnum::Value Ifc4x2::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSanitaryTerminalTypeEnum::Value) IFC4X2_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSanitaryTerminalTypeEnum::operator Ifc4x2::IfcSanitaryTerminalTypeEnum::Value() const { @@ -8257,15 +6630,11 @@ Ifc4x2::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4X2_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSectionTypeEnum::Value Ifc4x2::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4x2::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4x2::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSectionTypeEnum::Value) IFC4X2_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSectionTypeEnum::operator Ifc4x2::IfcSectionTypeEnum::Value() const { @@ -8294,39 +6663,11 @@ Ifc4x2::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSensorTypeEnum::Value Ifc4x2::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSensorTypeEnum::Value) IFC4X2_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSensorTypeEnum::operator Ifc4x2::IfcSensorTypeEnum::Value() const { @@ -8355,19 +6696,11 @@ Ifc4x2::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x2::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSequenceEnum::Value Ifc4x2::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4x2::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4x2::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4x2::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4x2::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSequenceEnum::Value) IFC4X2_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSequenceEnum::operator Ifc4x2::IfcSequenceEnum::Value() const { @@ -8396,18 +6729,11 @@ Ifc4x2::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string& v) } const char* Ifc4x2::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcShadingDeviceTypeEnum::Value Ifc4x2::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4x2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4x2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4x2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcShadingDeviceTypeEnum::Value) IFC4X2_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcShadingDeviceTypeEnum::operator Ifc4x2::IfcShadingDeviceTypeEnum::Value() const { @@ -8436,25 +6762,11 @@ Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum(con } const char* Ifc4x2::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4X2_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x2::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X2_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x2::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -8483,23 +6795,11 @@ Ifc4x2::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "APPROACH_SLAB", "PAVING", "WEARING", "SIDEWALK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSlabTypeEnum::Value Ifc4x2::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "APPROACH_SLAB") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_APPROACH_SLAB; - if (s == "PAVING") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_PAVING; - if (s == "WEARING") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_WEARING; - if (s == "SIDEWALK") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_SIDEWALK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSlabTypeEnum::Value) IFC4X2_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSlabTypeEnum::operator Ifc4x2::IfcSlabTypeEnum::Value() const { @@ -8528,17 +6828,11 @@ Ifc4x2::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSolarDeviceTypeEnum::Value Ifc4x2::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSolarDeviceTypeEnum::Value) IFC4X2_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSolarDeviceTypeEnum::operator Ifc4x2::IfcSolarDeviceTypeEnum::Value() const { @@ -8567,17 +6861,11 @@ Ifc4x2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSpaceHeaterTypeEnum::Value Ifc4x2::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSpaceHeaterTypeEnum::Value) IFC4X2_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSpaceHeaterTypeEnum::operator Ifc4x2::IfcSpaceHeaterTypeEnum::Value() const { @@ -8606,20 +6894,11 @@ Ifc4x2::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSpaceTypeEnum::Value Ifc4x2::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSpaceTypeEnum::Value) IFC4X2_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSpaceTypeEnum::operator Ifc4x2::IfcSpaceTypeEnum::Value() const { @@ -8648,23 +6927,11 @@ Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSpatialZoneTypeEnum::Value Ifc4x2::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSpatialZoneTypeEnum::Value) IFC4X2_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSpatialZoneTypeEnum::operator Ifc4x2::IfcSpatialZoneTypeEnum::Value() const { @@ -8693,18 +6960,11 @@ Ifc4x2::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string& v) } const char* Ifc4x2::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStackTerminalTypeEnum::Value Ifc4x2::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x2::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x2::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x2::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStackTerminalTypeEnum::Value) IFC4X2_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStackTerminalTypeEnum::operator Ifc4x2::IfcStackTerminalTypeEnum::Value() const { @@ -8733,20 +6993,11 @@ Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStairFlightTypeEnum::Value Ifc4x2::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStairFlightTypeEnum::Value) IFC4X2_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStairFlightTypeEnum::operator Ifc4x2::IfcStairFlightTypeEnum::Value() const { @@ -8775,29 +7026,11 @@ Ifc4x2::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStairTypeEnum::Value Ifc4x2::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStairTypeEnum::Value) IFC4X2_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStairTypeEnum::operator Ifc4x2::IfcStairTypeEnum::Value() const { @@ -8826,18 +7059,11 @@ Ifc4x2::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x2::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4X2_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStateEnum::Value Ifc4x2::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4x2::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4x2::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4x2::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4x2::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4x2::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStateEnum::Value) IFC4X2_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStateEnum::operator Ifc4x2::IfcStateEnum::Value() const { @@ -8866,22 +7092,11 @@ Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEnum(c } const char* Ifc4x2::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStructuralCurveActivityTypeEnum::Value Ifc4x2::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStructuralCurveActivityTypeEnum::Value) IFC4X2_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStructuralCurveActivityTypeEnum::operator Ifc4x2::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -8910,20 +7125,11 @@ Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(const } const char* Ifc4x2::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStructuralCurveMemberTypeEnum::Value Ifc4x2::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStructuralCurveMemberTypeEnum::Value) IFC4X2_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStructuralCurveMemberTypeEnum::operator Ifc4x2::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -8952,19 +7158,11 @@ Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTypeEn } const char* Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x2::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -8993,18 +7191,11 @@ Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEnum(c } const char* Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x2::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -9033,17 +7224,11 @@ Ifc4x2::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const std } const char* Ifc4x2::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSubContractResourceTypeEnum::Value Ifc4x2::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSubContractResourceTypeEnum::Value) IFC4X2_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSubContractResourceTypeEnum::operator Ifc4x2::IfcSubContractResourceTypeEnum::Value() const { @@ -9072,19 +7257,11 @@ Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::string& } const char* Ifc4x2::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "DEFECT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSurfaceFeatureTypeEnum::Value Ifc4x2::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "DEFECT") return ::Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_DEFECT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSurfaceFeatureTypeEnum::Value) IFC4X2_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSurfaceFeatureTypeEnum::operator Ifc4x2::IfcSurfaceFeatureTypeEnum::Value() const { @@ -9113,16 +7290,11 @@ Ifc4x2::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x2::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4X2_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSurfaceSide::Value Ifc4x2::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x2::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x2::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4x2::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSurfaceSide::Value) IFC4X2_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x2::IfcSurfaceSide::operator Ifc4x2::IfcSurfaceSide::Value() const { @@ -9151,24 +7323,11 @@ Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::string } const char* Ifc4x2::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSwitchingDeviceTypeEnum::Value Ifc4x2::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSwitchingDeviceTypeEnum::Value) IFC4X2_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSwitchingDeviceTypeEnum::operator Ifc4x2::IfcSwitchingDeviceTypeEnum::Value() const { @@ -9197,17 +7356,11 @@ Ifc4x2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum(con } const char* Ifc4x2::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcSystemFurnitureElementTypeEnum::Value Ifc4x2::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4x2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcSystemFurnitureElementTypeEnum::Value) IFC4X2_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcSystemFurnitureElementTypeEnum::operator Ifc4x2::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -9236,22 +7389,11 @@ Ifc4x2::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTankTypeEnum::Value Ifc4x2::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTankTypeEnum::Value) IFC4X2_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTankTypeEnum::operator Ifc4x2::IfcTankTypeEnum::Value() const { @@ -9280,16 +7422,11 @@ Ifc4x2::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x2::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTaskDurationEnum::Value Ifc4x2::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x2::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x2::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTaskDurationEnum::Value) IFC4X2_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTaskDurationEnum::operator Ifc4x2::IfcTaskDurationEnum::Value() const { @@ -9318,27 +7455,11 @@ Ifc4x2::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTaskTypeEnum::Value Ifc4x2::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTaskTypeEnum::Value) IFC4X2_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTaskTypeEnum::operator Ifc4x2::IfcTaskTypeEnum::Value() const { @@ -9367,18 +7488,11 @@ Ifc4x2::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTendonAnchorTypeEnum::Value Ifc4x2::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTendonAnchorTypeEnum::Value) IFC4X2_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTendonAnchorTypeEnum::operator Ifc4x2::IfcTendonAnchorTypeEnum::Value() const { @@ -9407,20 +7521,11 @@ Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::string& v) } const char* Ifc4x2::IfcTendonConduitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DUCT", "COUPLER", "GROUTING_DUCT", "TRUMPET", "DIABOLO", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTendonConduitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTendonConduitTypeEnum::Value Ifc4x2::IfcTendonConduitTypeEnum::FromString(const std::string& s) { - if (s == "DUCT") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_DUCT; - if (s == "COUPLER") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_COUPLER; - if (s == "GROUTING_DUCT") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_GROUTING_DUCT; - if (s == "TRUMPET") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_TRUMPET; - if (s == "DIABOLO") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_DIABOLO; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTendonConduitTypeEnum::IfcTendonConduitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTendonConduitTypeEnum::Value) IFC4X2_IfcTendonConduitTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTendonConduitTypeEnum::operator Ifc4x2::IfcTendonConduitTypeEnum::Value() const { @@ -9449,19 +7554,11 @@ Ifc4x2::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTendonTypeEnum::Value Ifc4x2::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x2::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x2::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x2::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x2::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTendonTypeEnum::Value) IFC4X2_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTendonTypeEnum::operator Ifc4x2::IfcTendonTypeEnum::Value() const { @@ -9490,17 +7587,11 @@ Ifc4x2::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x2::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4X2_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTextPath::Value Ifc4x2::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x2::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x2::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x2::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4x2::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTextPath::Value) IFC4X2_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x2::IfcTextPath::operator Ifc4x2::IfcTextPath::Value() const { @@ -9529,20 +7620,11 @@ Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::string& } const char* Ifc4x2::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTimeSeriesDataTypeEnum::Value Ifc4x2::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTimeSeriesDataTypeEnum::Value) IFC4X2_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTimeSeriesDataTypeEnum::operator Ifc4x2::IfcTimeSeriesDataTypeEnum::Value() const { @@ -9571,20 +7653,11 @@ Ifc4x2::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTransformerTypeEnum::Value Ifc4x2::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTransformerTypeEnum::Value) IFC4X2_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTransformerTypeEnum::operator Ifc4x2::IfcTransformerTypeEnum::Value() const { @@ -9613,17 +7686,11 @@ Ifc4x2::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x2::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4X2_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTransitionCode::Value Ifc4x2::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4x2::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4x2::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x2::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x2::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTransitionCode::Value) IFC4X2_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x2::IfcTransitionCode::operator Ifc4x2::IfcTransitionCode::Value() const { @@ -9652,19 +7719,11 @@ Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType(const std::string& v) { } const char* Ifc4x2::IfcTransitionCurveType::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIQUADRATICPARABOLA", "BLOSSCURVE", "CLOTHOIDCURVE", "COSINECURVE", "CUBICPARABOLA", "SINECURVE" }; - return names[v]; + return IFC4X2_IfcTransitionCurveType_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTransitionCurveType::Value Ifc4x2::IfcTransitionCurveType::FromString(const std::string& s) { - if (s == "BIQUADRATICPARABOLA") return ::Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType_BIQUADRATICPARABOLA; - if (s == "BLOSSCURVE") return ::Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType_BLOSSCURVE; - if (s == "CLOTHOIDCURVE") return ::Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType_CLOTHOIDCURVE; - if (s == "COSINECURVE") return ::Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType_COSINECURVE; - if (s == "CUBICPARABOLA") return ::Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType_CUBICPARABOLA; - if (s == "SINECURVE") return ::Ifc4x2::IfcTransitionCurveType::IfcTransitionCurveType_SINECURVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTransitionCurveType::Value) IFC4X2_IfcTransitionCurveType_type->lookup_enum_offset(s); } Ifc4x2::IfcTransitionCurveType::operator Ifc4x2::IfcTransitionCurveType::Value() const { @@ -9693,20 +7752,11 @@ Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std::stri } const char* Ifc4x2::IfcTransportElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTransportElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTransportElementTypeEnum::Value Ifc4x2::IfcTransportElementTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_LIFTINGGEAR; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTransportElementTypeEnum::IfcTransportElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTransportElementTypeEnum::Value) IFC4X2_IfcTransportElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTransportElementTypeEnum::operator Ifc4x2::IfcTransportElementTypeEnum::Value() const { @@ -9735,16 +7785,11 @@ Ifc4x2::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4x2::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X2_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTrimmingPreference::Value Ifc4x2::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x2::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x2::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x2::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTrimmingPreference::Value) IFC4X2_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x2::IfcTrimmingPreference::operator Ifc4x2::IfcTrimmingPreference::Value() const { @@ -9773,16 +7818,11 @@ Ifc4x2::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcTubeBundleTypeEnum::Value Ifc4x2::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x2::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x2::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcTubeBundleTypeEnum::Value) IFC4X2_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcTubeBundleTypeEnum::operator Ifc4x2::IfcTubeBundleTypeEnum::Value() const { @@ -9811,43 +7851,11 @@ Ifc4x2::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x2::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X2_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcUnitEnum::Value Ifc4x2::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x2::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcUnitEnum::Value) IFC4X2_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcUnitEnum::operator Ifc4x2::IfcUnitEnum::Value() const { @@ -9876,23 +7884,11 @@ Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(const } const char* Ifc4x2::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcUnitaryControlElementTypeEnum::Value Ifc4x2::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "USERDEFINED") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcUnitaryControlElementTypeEnum::Value) IFC4X2_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcUnitaryControlElementTypeEnum::operator Ifc4x2::IfcUnitaryControlElementTypeEnum::Value() const { @@ -9921,20 +7917,11 @@ Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std::stri } const char* Ifc4x2::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcUnitaryEquipmentTypeEnum::Value Ifc4x2::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcUnitaryEquipmentTypeEnum::Value) IFC4X2_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcUnitaryEquipmentTypeEnum::operator Ifc4x2::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -9963,36 +7950,11 @@ Ifc4x2::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcValveTypeEnum::Value Ifc4x2::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcValveTypeEnum::Value) IFC4X2_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcValveTypeEnum::operator Ifc4x2::IfcValveTypeEnum::Value() const { @@ -10021,21 +7983,11 @@ Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::string } const char* Ifc4x2::IfcVibrationDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_YIELD", "SHEAR_YIELD", "AXIAL_YIELD", "FRICTION", "VISCOUS", "RUBBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcVibrationDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcVibrationDamperTypeEnum::Value Ifc4x2::IfcVibrationDamperTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_YIELD") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_BENDING_YIELD; - if (s == "SHEAR_YIELD") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_SHEAR_YIELD; - if (s == "AXIAL_YIELD") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_AXIAL_YIELD; - if (s == "FRICTION") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_FRICTION; - if (s == "VISCOUS") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_VISCOUS; - if (s == "RUBBER") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_RUBBER; - if (s == "USERDEFINED") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcVibrationDamperTypeEnum::Value) IFC4X2_IfcVibrationDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcVibrationDamperTypeEnum::operator Ifc4x2::IfcVibrationDamperTypeEnum::Value() const { @@ -10064,18 +8016,11 @@ Ifc4x2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std::st } const char* Ifc4x2::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "BASE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcVibrationIsolatorTypeEnum::Value Ifc4x2::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4x2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "BASE") return ::Ifc4x2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_BASE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcVibrationIsolatorTypeEnum::Value) IFC4X2_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcVibrationIsolatorTypeEnum::operator Ifc4x2::IfcVibrationIsolatorTypeEnum::Value() const { @@ -10104,21 +8049,11 @@ Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::string& } const char* Ifc4x2::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcVoidingFeatureTypeEnum::Value Ifc4x2::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcVoidingFeatureTypeEnum::Value) IFC4X2_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcVoidingFeatureTypeEnum::operator Ifc4x2::IfcVoidingFeatureTypeEnum::Value() const { @@ -10147,25 +8082,11 @@ Ifc4x2::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "RETAININGWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWallTypeEnum::Value Ifc4x2::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "RETAININGWALL") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_RETAININGWALL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWallTypeEnum::Value) IFC4X2_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWallTypeEnum::operator Ifc4x2::IfcWallTypeEnum::Value() const { @@ -10194,22 +8115,11 @@ Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string& v) } const char* Ifc4x2::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWasteTerminalTypeEnum::Value Ifc4x2::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWasteTerminalTypeEnum::Value) IFC4X2_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWasteTerminalTypeEnum::operator Ifc4x2::IfcWasteTerminalTypeEnum::Value() const { @@ -10238,27 +8148,11 @@ Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std::stri } const char* Ifc4x2::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWindowPanelOperationEnum::Value Ifc4x2::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWindowPanelOperationEnum::Value) IFC4X2_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWindowPanelOperationEnum::operator Ifc4x2::IfcWindowPanelOperationEnum::Value() const { @@ -10287,19 +8181,11 @@ Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::string } const char* Ifc4x2::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWindowPanelPositionEnum::Value Ifc4x2::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWindowPanelPositionEnum::Value) IFC4X2_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWindowPanelPositionEnum::operator Ifc4x2::IfcWindowPanelPositionEnum::Value() const { @@ -10328,21 +8214,11 @@ Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const std } const char* Ifc4x2::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWindowStyleConstructionEnum::Value Ifc4x2::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWindowStyleConstructionEnum::Value) IFC4X2_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWindowStyleConstructionEnum::operator Ifc4x2::IfcWindowStyleConstructionEnum::Value() const { @@ -10371,24 +8247,11 @@ Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std::stri } const char* Ifc4x2::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWindowStyleOperationEnum::Value Ifc4x2::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWindowStyleOperationEnum::Value) IFC4X2_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWindowStyleOperationEnum::operator Ifc4x2::IfcWindowStyleOperationEnum::Value() const { @@ -10417,18 +8280,11 @@ Ifc4x2::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWindowTypeEnum::Value Ifc4x2::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4x2::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4x2::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4x2::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWindowTypeEnum::Value) IFC4X2_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWindowTypeEnum::operator Ifc4x2::IfcWindowTypeEnum::Value() const { @@ -10457,24 +8313,11 @@ Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const std:: } const char* Ifc4x2::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWindowTypePartitioningEnum::Value Ifc4x2::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWindowTypePartitioningEnum::Value) IFC4X2_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWindowTypePartitioningEnum::operator Ifc4x2::IfcWindowTypePartitioningEnum::Value() const { @@ -10503,18 +8346,11 @@ Ifc4x2::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWorkCalendarTypeEnum::Value Ifc4x2::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWorkCalendarTypeEnum::Value) IFC4X2_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWorkCalendarTypeEnum::operator Ifc4x2::IfcWorkCalendarTypeEnum::Value() const { @@ -10543,18 +8379,11 @@ Ifc4x2::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWorkPlanTypeEnum::Value Ifc4x2::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x2::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x2::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x2::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWorkPlanTypeEnum::Value) IFC4X2_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWorkPlanTypeEnum::operator Ifc4x2::IfcWorkPlanTypeEnum::Value() const { @@ -10583,18 +8412,11 @@ Ifc4x2::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& v) { } const char* Ifc4x2::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X2_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x2::IfcWorkScheduleTypeEnum::Value Ifc4x2::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x2::IfcWorkScheduleTypeEnum::Value) IFC4X2_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x2::IfcWorkScheduleTypeEnum::operator Ifc4x2::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x3_add1-schema.cpp b/src/ifcparse/Ifc4x3_add1-schema.cpp index c34c297eb8..acee7a1f81 100644 --- a/src/ifcparse/Ifc4x3_add1-schema.cpp +++ b/src/ifcparse/Ifc4x3_add1-schema.cpp @@ -2602,6 +2602,3917 @@ class IFC4X3_ADD1_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"BRAKES"s, +"BUOYANCY"s, +"COMPLETION_G1"s, +"CREEP"s, +"CURRENT"s, +"DEAD_LOAD_G"s, +"EARTHQUAKE_E"s, +"ERECTION"s, +"FIRE"s, +"ICE"s, +"IMPACT"s, +"IMPULSE"s, +"LACK_OF_FIT"s, +"LIVE_LOAD_Q"s, +"PRESTRESSING_P"s, +"PROPPING"s, +"RAIN"s, +"SETTLEMENT_U"s, +"SHRINKAGE"s, +"SNOW_S"s, +"SYSTEM_IMPERFECTION"s, +"TEMPERATURE_T"s, +"TRANSPORT"s, +"WAVE"s, +"WIND_W"s, +"IfcActionTypeEnum"s, +"EXTRAORDINARY_A"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"DISTRIBUTIONPOINT"s, +"HOME"s, +"OFFICE"s, +"SITE"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"HEATPIPE"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"RAILWAYCROCODILE"s, +"RAILWAYDETONATOR"s, +"SIREN"s, +"WHISTLE"s, +"IfcAlignmentCantSegmentTypeEnum"s, +"BLOSSCURVE"s, +"CONSTANTCANT"s, +"COSINECURVE"s, +"HELMERTCURVE"s, +"LINEARTRANSITION"s, +"SINECURVE"s, +"VIENNESEBEND"s, +"IfcAlignmentHorizontalSegmentTypeEnum"s, +"CIRCULARARC"s, +"CLOTHOID"s, +"CUBIC"s, +"LINE"s, +"IfcAlignmentTypeEnum"s, +"IfcAlignmentVerticalSegmentTypeEnum"s, +"CONSTANTGRADIENT"s, +"PARABOLICARC"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"OUT_PLANE_LOADING_2D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAnnotationTypeEnum"s, +"ASBUILTAREA"s, +"ASBUILTLINE"s, +"ASBUILTPOINT"s, +"ASSUMEDAREA"s, +"ASSUMEDLINE"s, +"ASSUMEDPOINT"s, +"NON_PHYSICAL_SIGNAL"s, +"SUPERELEVATIONEVENT"s, +"WIDTHEVENT"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"COMMUNICATIONTERMINAL"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"RECORDINGEQUIPMENT"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"IfcBSplineCurveForm"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"HYPERBOLIC_ARC"s, +"PARABOLIC_ARC"s, +"POLYLINE_FORM"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"CONICAL_SURF"s, +"CYLINDRICAL_SURF"s, +"GENERALISED_CONE"s, +"PLANE_SURF"s, +"QUADRIC_SURF"s, +"RULED_SURF"s, +"SPHERICAL_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"SURF_OF_REVOLUTION"s, +"TOROIDAL_SURF"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"CORNICE"s, +"DIAPHRAGM"s, +"EDGEBEAM"s, +"GIRDER_SEGMENT"s, +"HATSTONE"s, +"HOLLOWCORE"s, +"JOIST"s, +"LINTEL"s, +"PIERCAP"s, +"SPANDREL"s, +"T_BEAM"s, +"IfcBearingTypeEnum"s, +"CYLINDRICAL"s, +"DISK"s, +"ELASTOMERIC"s, +"GUIDE"s, +"POT"s, +"ROCKER"s, +"ROLLER"s, +"SPHERICAL"s, +"IfcBenchmarkEnum"s, +"EQUALTO"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"INCLUDEDIN"s, +"INCLUDES"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"NOTEQUALTO"s, +"NOTINCLUDEDIN"s, +"NOTINCLUDES"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"STEAM"s, +"WATER"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"DIFFERENCE"s, +"INTERSECTION"s, +"UNION"s, +"IfcBridgePartTypeEnum"s, +"ABUTMENT"s, +"DECK"s, +"DECK_SEGMENT"s, +"FOUNDATION"s, +"PIER"s, +"PIER_SEGMENT"s, +"PYLON"s, +"SUBSTRUCTURE"s, +"SUPERSTRUCTURE"s, +"SURFACESTRUCTURE"s, +"IfcBridgeTypeEnum"s, +"ARCHED"s, +"CABLE_STAYED"s, +"CANTILEVER"s, +"CULVERT"s, +"FRAMEWORK"s, +"GIRDER"s, +"SUSPENSION"s, +"TRUSS"s, +"IfcBuildingElementPartTypeEnum"s, +"APRON"s, +"ARMOURUNIT"s, +"INSULATION"s, +"PRECASTPANEL"s, +"SAFETYCAGE"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORSPACE"s, +"PROVISIONFORVOID"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"IfcBuiltSystemTypeEnum"s, +"EROSIONPREVENTION"s, +"MOORING"s, +"PRESTRESSING"s, +"RAILWAYLINE"s, +"RAILWAYTRACK"s, +"REINFORCING"s, +"TRACKCIRCUIT"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CONNECTOR"s, +"CROSS"s, +"JUNCTION"s, +"REDUCER"s, +"TEE"s, +"TRANSITION"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLEBRACKET"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CATENARYWIRE"s, +"CONDUITSEGMENT"s, +"DROPPER"s, +"IfcCableFittingTypeEnum"s, +"ENTRY"s, +"EXIT"s, +"FANOUT"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CONTACTWIRESEGMENT"s, +"CORESEGMENT"s, +"FIBERSEGMENT"s, +"FIBERTUBE"s, +"OPTICALCABLESEGMENT"s, +"STITCHWIRE"s, +"WIREPAIRSEGMENT"s, +"IfcCaissonFoundationTypeEnum"s, +"CAISSON"s, +"WELL"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"ADDED"s, +"DELETED"s, +"MODIFIED"s, +"NOCHANGE"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"HEATRECOVERY"s, +"WATERCOOLED"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PIERSTEM"s, +"PIERSTEM_SEGMENT"s, +"PILASTER"s, +"STANDCOLUMN"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"AUTOMATON"s, +"COMPUTER"s, +"GATEWAY"s, +"INTELLIGENTPERIPHERAL"s, +"IPNETWORKEQUIPMENT"s, +"LINESIDEELECTRONICUNIT"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"OPTICALLINETERMINAL"s, +"OPTICALNETWORKUNIT"s, +"PRINTER"s, +"RADIOBLOCKCENTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"TELECOMMAND"s, +"TELEPHONYEXCHANGE"s, +"TRANSITIONCOMPONENT"s, +"TRANSPONDER"s, +"TRANSPORTEQUIPMENT"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"BOOSTER"s, +"DYNAMIC"s, +"HERMETIC"s, +"OPENTYPE"s, +"RECIPROCATING"s, +"ROLLINGPISTON"s, +"ROTARY"s, +"ROTARYVANE"s, +"SCROLL"s, +"SEMIHERMETIC"s, +"SINGLESCREW"s, +"SINGLESTAGE"s, +"TROCHOIDAL"s, +"TWINSCREW"s, +"WELDEDSHELLHERMETIC"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATEND"s, +"ATPATH"s, +"ATSTART"s, +"IfcConstraintEnum"s, +"ADVISORY"s, +"HARD"s, +"SOFT"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"MULTIPOSITION"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"TWOPOSITION"s, +"IfcConveyorSegmentTypeEnum"s, +"BELTCONVEYOR"s, +"BUCKETCONVEYOR"s, +"CHUTECONVEYOR"s, +"SCREWCONVEYOR"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"MECHANICALFORCEDDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"NATURALDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"PRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"TENDER"s, +"UNPRICEDBILLOFQUANTITIES"s, +"IfcCountMeasure"s, +"IfcCourseTypeEnum"s, +"ARMOUR"s, +"BALLASTBED"s, +"CORE"s, +"FILTER"s, +"PAVEMENT"s, +"PROTECTION"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"CLADDING"s, +"COPING"s, +"FLOORING"s, +"MEMBRANE"s, +"MOLDING"s, +"ROOFING"s, +"SKIRTINGBOARD"s, +"SLEEVING"s, +"TOPPING"s, +"WRAPPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ACCELERATIONUNIT"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"CURVATUREUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"HEATINGVALUEUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARFORCEUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"LINEARVELOCITYUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"PHUNIT"s, +"PLANARFORCEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"ROTATIONALMASSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SHEARMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"TORQUEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"NEGATIVE"s, +"POSITIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BIRDPROTECTION"s, +"BRACKET"s, +"CABLEARRANGER"s, +"ELASTIC_CUSHION"s, +"EXPANSION_JOINT_DEVICE"s, +"FILLER"s, +"FLASHING"s, +"INSULATOR"s, +"LOCK"s, +"PANEL_STRENGTHENING"s, +"POINTMACHINEMOUNTINGDEVICE"s, +"POINT_MACHINE_LOCKING_DEVICE"s, +"RAILBRACE"s, +"RAILPAD"s, +"RAIL_LUBRICATION"s, +"RAIL_MECHANICAL_EQUIPMENT"s, +"SHOE"s, +"SLIDINGCHAIR"s, +"SOUNDABSORPTION"s, +"TENSIONINGEQUIPMENT"s, +"IfcDistributionBoardTypeEnum"s, +"CONSUMERUNIT"s, +"DISPATCHINGBOARD"s, +"DISTRIBUTIONBOARD"s, +"DISTRIBUTIONFRAME"s, +"MOTORCONTROLCENTRE"s, +"SWITCHBOARD"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"WIRELESS"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CATENARY_SYSTEM"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"FIXEDTRANSMISSIONNETWORK"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MOBILENETWORK"s, +"MONITORINGSYSTEM"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"OPERATIONALTELEPHONYSYSTEM"s, +"OVERHEAD_CONTACTLINE_SYSTEM"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"RETURN_CIRCUIT"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"IfcDocumentConfidentialityEnum"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"PUBLIC"s, +"RESTRICTED"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINAL"s, +"FINALDRAFT"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"DOUBLE_ACTING"s, +"FIXEDPANEL"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"SLIDING"s, +"SWINGING"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorTypeEnum"s, +"BOOM_BARRIER"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"TURNSTILE"s, +"IfcDoorTypeOperationEnum"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"DOUBLE_DOOR_FOLDING"s, +"DOUBLE_DOOR_LIFTING_VERTICAL"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"LIFTING_HORIZONTAL"s, +"LIFTING_VERTICAL_LEFT"s, +"LIFTING_VERTICAL_RIGHT"s, +"REVOLVING_VERTICAL"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"FLEXIBLESEGMENT"s, +"RIGIDSEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcEarthworksCutTypeEnum"s, +"BASE_EXCAVATION"s, +"CUT"s, +"DREDGING"s, +"EXCAVATION"s, +"OVEREXCAVATION"s, +"PAVEMENTMILLING"s, +"STEPEXCAVATION"s, +"TOPSOILREMOVAL"s, +"IfcEarthworksFillTypeEnum"s, +"BACKFILL"s, +"COUNTERWEIGHT"s, +"EMBANKMENT"s, +"SLOPEFILL"s, +"SUBGRADE"s, +"SUBGRADEBED"s, +"TRANSITIONSECTION"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERCOOLER"s, +"FREESTANDINGWATERHEATER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITOR"s, +"CAPACITORBANK"s, +"COMPENSATOR"s, +"HARMONICFILTER"s, +"INDUCTOR"s, +"INDUCTORBANK"s, +"RECHARGER"s, +"UPS"s, +"IfcElectricFlowTreatmentDeviceTypeEnum"s, +"ELECTRONICFILTER"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"RELAY"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"CROSS_BRACING"s, +"DILATATIONPANEL"s, +"ENTRANCEWORKS"s, +"GRID"s, +"MAST"s, +"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SHELTER"s, +"SIGNALASSEMBLY"s, +"SLAB_FIELD"s, +"SUMPBUSTER"s, +"SUPPORTINGASSEMBLY"s, +"SUSPENSIONASSEMBLY"s, +"TRACKPANEL"s, +"TRACTION_SWITCHING_ASSEMBLY"s, +"TRAFFIC_CALMING_DEVICE"s, +"TURNOUTPANEL"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTCOMPLEX"s, +"EVENTMESSAGE"s, +"EVENTRULE"s, +"EVENTTIME"s, +"IfcEventTypeEnum"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"STARTEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_FIRE"s, +"EXTERNAL_WATER"s, +"IfcFacilityPartCommonTypeEnum"s, +"ABOVEGROUND"s, +"BELOWGROUND"s, +"LEVELCROSSING"s, +"SEGMENT"s, +"TERMINAL"s, +"IfcFacilityUsageEnum"s, +"LATERAL"s, +"LONGITUDINAL"s, +"REGION"s, +"VERTICAL"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALAIRFOIL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"PROPELLORAXIAL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"FIREMONITOR"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SINK"s, +"SOURCE"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"AMMETER"s, +"COMBINED"s, +"FREQUENCYMETER"s, +"PHASEANGLEMETER"s, +"POWERFACTORMETER"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"VOLTMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"BED"s, +"CHAIR"s, +"DESK"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"TABLE"s, +"TECHNICALCABINET"s, +"IfcGeographicElementTypeEnum"s, +"SOIL_BORING_POINT"s, +"TERRAIN"s, +"VEGETATION"s, +"IfcGeometricProjectionEnum"s, +"ELEVATION_VIEW"s, +"GRAPH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"SKETCH_VIEW"s, +"IfcGeotechnicalStratumTypeEnum"s, +"SOLID"s, +"VOID"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"IRREGULAR"s, +"RADIAL"s, +"TRIANGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"TURNOUTHEATING"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"ADIABATICAIRWASHER"s, +"ADIABATICATOMIZING"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ADIABATICPAN"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICULTRASONIC"s, +"ADIABATICWETTEDELEMENT"s, +"ASSISTEDBUTANE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDSTEAM"s, +"STEAMINJECTION"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcImpactProtectionDeviceTypeEnum"s, +"BUMPER"s, +"CRASHCUSHION"s, +"DAMPINGSYSTEM"s, +"FENDER"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"FURNITUREINVENTORY"s, +"SPACEINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKerbTypeEnum"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"PIECEWISE_BEZIER_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"UNIFORM_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"DIRECTIONSOURCE"s, +"POINTSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLiquidTerminalTypeEnum"s, +"LOADINGARM"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"LOAD_GROUP"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMarineFacilityTypeEnum"s, +"BARRIERBEACH"s, +"BREAKWATER"s, +"CANAL"s, +"DRYDOCK"s, +"FLOATINGDOCK"s, +"HYDROLIFT"s, +"JETTY"s, +"LAUNCHRECOVERY"s, +"MARINEDEFENCE"s, +"NAVIGATIONALCHANNEL"s, +"PORT"s, +"QUAY"s, +"REVETMENT"s, +"SHIPLIFT"s, +"SHIPLOCK"s, +"SHIPYARD"s, +"SLIPWAY"s, +"WATERWAY"s, +"WATERWAYSHIPLIFT"s, +"IfcMarinePartTypeEnum"s, +"ABOVEWATERLINE"s, +"ANCHORAGE"s, +"APPROACHCHANNEL"s, +"BELOWWATERLINE"s, +"BERTHINGSTRUCTURE"s, +"CHAMBER"s, +"CILL_LEVEL"s, +"COPELEVEL"s, +"CREST"s, +"GATEHEAD"s, +"GUDINGSTRUCTURE"s, +"HIGHWATERLINE"s, +"LANDFIELD"s, +"LEEWARDSIDE"s, +"LOWWATERLINE"s, +"MANUFACTURING"s, +"NAVIGATIONALAREA"s, +"SHIPTRANSFER"s, +"STORAGEAREA"s, +"VEHICLESERVICING"s, +"WATERFIELD"s, +"WEATHERSIDE"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"CHAIN"s, +"COUPLER"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RAILFASTENING"s, +"RAILJOINT"s, +"RIVET"s, +"ROPE"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"ARCH_SEGMENT"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STAY_CABLE"s, +"STIFFENING_RIB"s, +"STRINGER"s, +"STRUCTURALCABLE"s, +"STRUT"s, +"STUD"s, +"SUSPENDER"s, +"SUSPENSION_CABLE"s, +"TIEBAR"s, +"IfcMobileTelecommunicationsApplianceTypeEnum"s, +"ACCESSPOINT"s, +"BASEBANDUNIT"s, +"BASETRANSCEIVERSTATION"s, +"E_UTRAN_NODE_B"s, +"GATEWAY_GPRS_SUPPORT_NODE"s, +"MASTERUNIT"s, +"MOBILESWITCHINGCENTER"s, +"MSCSERVER"s, +"PACKETCONTROLUNIT"s, +"REMOTERADIOUNIT"s, +"REMOTEUNIT"s, +"SERVICE_GPRS_SUPPORT_NODE"s, +"SUBSCRIBERSERVER"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMooringDeviceTypeEnum"s, +"BOLLARD"s, +"LINETENSIONER"s, +"MAGNETICDEVICE"s, +"MOORINGHOOKS"s, +"VACUUMDEVICE"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNavigationElementTypeEnum"s, +"BEACON"s, +"BUOY"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNumericMeasure"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"DATAOUTLET"s, +"POWEROUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPavementTypeEnum"s, +"FLEXIBLE"s, +"RIGID"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"COHESION"s, +"DRIVEN"s, +"FRICTION"s, +"JETGROUTING"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"BASE_PLATE"s, +"COVER_PLATE"s, +"CURTAIN_PANEL"s, +"FLANGE_PLATE"s, +"GUSSET_PLATE"s, +"SHEET"s, +"SPLICE_PLATE"s, +"STIFFENER_PLATE"s, +"WEB_PLATE"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"AREA"s, +"CURVE"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"BLISTER"s, +"DEVIATOR"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_MATERIALDRIVEN"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"PSET_PROFILEDRIVEN"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTROMAGNETIC"s, +"ELECTRONIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"ANTI_ARCING_DEVICE"s, +"CIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"SPARKGAP"s, +"VARISTOR"s, +"VOLTAGELIMITER"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailTypeEnum"s, +"BLADE"s, +"CHECKRAIL"s, +"GUARDRAIL"s, +"RACKRAIL"s, +"RAIL"s, +"STOCKRAIL"s, +"IfcRailingTypeEnum"s, +"BALUSTRADE"s, +"FENCE"s, +"HANDRAIL"s, +"IfcRailwayPartTypeEnum"s, +"DILATATIONSUPERSTRUCTURE"s, +"LINESIDESTRUCTURE"s, +"LINESIDESTRUCTUREPART"s, +"PLAINTRACKSUPERSTRUCTURE"s, +"TRACKSTRUCTURE"s, +"TRACKSTRUCTUREPART"s, +"TURNOUTSUPERSTRUCTURE"s, +"IfcRailwayTypeEnum"s, +"IfcRampFlightTypeEnum"s, +"SPIRAL"s, +"STRAIGHT"s, +"IfcRampTypeEnum"s, +"HALF_TURN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"DAILY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"WEEKLY"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"BOUNDARY"s, +"KILOPOINT"s, +"LANDMARK"s, +"MILEPOINT"s, +"POSITION"s, +"REFERENCEMARKER"s, +"STATION"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcedSoilTypeEnum"s, +"DYNAMICALLYCOMPACTED"s, +"GROUTED"s, +"REPLACED"s, +"ROLLERCOMPACTED"s, +"SURCHARGEPRELOADED"s, +"VERTICALLYDRAINED"s, +"IfcReinforcingBarRoleEnum"s, +"ANCHORING"s, +"EDGE"s, +"LIGATURE"s, +"MAIN"s, +"PUNCHING"s, +"RING"s, +"SHEAR"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"SPACEBAR"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoadPartTypeEnum"s, +"BICYCLECROSSING"s, +"BUS_STOP"s, +"CARRIAGEWAY"s, +"CENTRALISLAND"s, +"CENTRALRESERVE"s, +"HARDSHOULDER"s, +"LAYBY"s, +"PARKINGBAY"s, +"PASSINGBAY"s, +"PEDESTRIAN_CROSSING"s, +"RAILWAYCROSSING"s, +"REFUGEISLAND"s, +"ROADSEGMENT"s, +"ROADSIDE"s, +"ROADSIDEPART"s, +"ROADWAYPLATEAU"s, +"ROUNDABOUT"s, +"SHOULDER"s, +"SIDEWALK"s, +"SOFTSHOULDER"s, +"TOLLPLAZA"s, +"TRAFFICISLAND"s, +"TRAFFICLANE"s, +"IfcRoadTypeEnum"s, +"IfcRoleEnum"s, +"ARCHITECT"s, +"BUILDINGOPERATOR"s, +"BUILDINGOWNER"s, +"CIVILENGINEER"s, +"CLIENT"s, +"COMMISSIONINGENGINEER"s, +"CONSTRUCTIONMANAGER"s, +"CONSULTANT"s, +"CONTRACTOR"s, +"COSTENGINEER"s, +"ELECTRICALENGINEER"s, +"ENGINEER"s, +"FACILITIESMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"MANUFACTURER"s, +"MECHANICALENGINEER"s, +"PROJECTMANAGER"s, +"RESELLER"s, +"STRUCTURALENGINEER"s, +"SUBCONTRACTOR"s, +"SUPPLIER"s, +"IfcRoofTypeEnum"s, +"BARREL_ROOF"s, +"BUTTERFLY_ROOF"s, +"DOME_ROOF"s, +"FLAT_ROOF"s, +"FREEFORM"s, +"GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"HIP_ROOF"s, +"MANSARD_ROOF"s, +"PAVILION_ROOF"s, +"RAINBOW_ROOF"s, +"SHED_ROOF"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"ATTO"s, +"CENTI"s, +"DECA"s, +"DECI"s, +"EXA"s, +"FEMTO"s, +"GIGA"s, +"HECTO"s, +"KILO"s, +"MEGA"s, +"MICRO"s, +"MILLI"s, +"NANO"s, +"PETA"s, +"PICO"s, +"TERA"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SANITARYFOUNTAIN"s, +"SHOWER"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"TAPERED"s, +"UNIFORM"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"COSENSOR"s, +"EARTHQUAKESENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FOREIGNOBJECTDETECTIONSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"OBSTACLESENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"RAINSENSOR"s, +"SMOKESENSOR"s, +"SNOWDEPTHSENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"TRAINSENSOR"s, +"TURNOUTCLOSURESENSOR"s, +"WHEELSENSOR"s, +"WINDSENSOR"s, +"IfcSequenceEnum"s, +"FINISH_FINISH"s, +"FINISH_START"s, +"START_FINISH"s, +"START_START"s, +"IfcShadingDeviceTypeEnum"s, +"AWNING"s, +"JALOUSIE"s, +"SHUTTER"s, +"IfcShearModulusMeasure"s, +"IfcSignTypeEnum"s, +"MARKER"s, +"PICTORAL"s, +"IfcSignalTypeEnum"s, +"AUDIO"s, +"MIXED"s, +"VISUAL"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_BOUNDEDVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_LISTVALUE"s, +"P_REFERENCEVALUE"s, +"P_SINGLEVALUE"s, +"P_TABLEVALUE"s, +"Q_AREA"s, +"Q_COUNT"s, +"Q_LENGTH"s, +"Q_NUMBER"s, +"Q_TIME"s, +"Q_VOLUME"s, +"Q_WEIGHT"s, +"IfcSlabTypeEnum"s, +"APPROACH_SLAB"s, +"BASESLAB"s, +"FLOOR"s, +"LANDING"s, +"ROOF"s, +"TRACKSLAB"s, +"WEARING"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"BERTH"s, +"GFA"s, +"PARKING"s, +"SPACE"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"INTERFERENCE"s, +"OCCUPANCY"s, +"RESERVATION"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"CURVED"s, +"WINDER"s, +"IfcStairTypeEnum"s, +"CURVED_RUN_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"HALF_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"LADDER"s, +"QUARTER_TURN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"SPIRAL_STAIR"s, +"STRAIGHT_RUN_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"IfcStateEnum"s, +"LOCKED"s, +"READONLY"s, +"READONLYLOCKED"s, +"READWRITE"s, +"READWRITELOCKED"s, +"IfcStrippedOptional"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"DISCRETE"s, +"EQUIDISTANT"s, +"PARABOLA"s, +"POLYGONAL"s, +"SINUS"s, +"IfcStructuralCurveMemberTypeEnum"s, +"COMPRESSION_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"RIGID_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"DEFECT"s, +"HATCHMARKING"s, +"LINEMARKING"s, +"MARK"s, +"NONSKIDSURFACING"s, +"PAVEMENTSURFACEMARKING"s, +"RUMBLESTRIP"s, +"SYMBOLMARKING"s, +"TAG"s, +"TRANSVERSERUMBLESTRIP"s, +"TREATMENT"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"START_AND_STOP_EQUIPMENT"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"SUBRACK"s, +"WORKSURFACE"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"OILRETENTIONTRAY"s, +"PRESSUREVESSEL"s, +"STORAGE"s, +"VESSEL"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ADJUSTMENT"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"EMERGENCY"s, +"INSPECTION"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"SAFETY"s, +"TESTING"s, +"TROUBLESHOOTING"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonConduitTypeEnum"s, +"DIABOLO"s, +"GROUTING_DUCT"s, +"TRUMPET"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"DOWN"s, +"UP"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTrackElementTypeEnum"s, +"BLOCKINGDEVICE"s, +"DERAILER"s, +"FROG"s, +"HALF_SET_OF_BLADES"s, +"SLEEPER"s, +"SPEEDREGULATOR"s, +"TRACKENDOFALIGNMENT"s, +"VEHICLESTOP"s, +"IfcTransformerTypeEnum"s, +"CHOPPER"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"IfcTransitionCode"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"DISCONTINUOUS"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementTypeEnum"s, +"CRANEWAY"s, +"ELEVATOR"s, +"ESCALATOR"s, +"HAULINGGEAR"s, +"LIFTINGGEAR"s, +"MOVINGWALKWAY"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"BASESTATIONCONTROLLER"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"HUMIDISTAT"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRCONDITIONINGUNIT"s, +"AIRHANDLER"s, +"DEHUMIDIFIER"s, +"ROOFTOPUNIT"s, +"SPLITSYSTEM"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"DRAWOFFCOCK"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVehicleTypeEnum"s, +"CARGO"s, +"ROLLINGSTOCK"s, +"VEHICLE"s, +"VEHICLEAIR"s, +"VEHICLEMARINE"s, +"VEHICLETRACKED"s, +"VEHICLEWHEELED"s, +"IfcVibrationDamperTypeEnum"s, +"AXIAL_YIELD"s, +"BENDING_YIELD"s, +"RUBBER"s, +"SHEAR_YIELD"s, +"VISCOUS"s, +"IfcVibrationIsolatorTypeEnum"s, +"BASE"s, +"COMPRESSION"s, +"SPRING"s, +"IfcVirtualElementTypeEnum"s, +"CLEARANCE"s, +"IfcVoidingFeatureTypeEnum"s, +"CHAMFER"s, +"CUTOUT"s, +"HOLE"s, +"MITER"s, +"NOTCH"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"ELEMENTEDWALL"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"RETAININGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"WAVEWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWellKnownTextLiteral"s, +"IfcWindowPanelOperationEnum"s, +"BOTTOMHUNG"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"REMOVABLECASEMENT"s, +"SIDEHUNGLEFTHAND"s, +"SIDEHUNGRIGHTHAND"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"TILTANDTURNLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TOPHUNG"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowTypeEnum"s, +"LIGHTDOME"s, +"SKYLIGHT"s, +"WINDOW"s, +"IfcWindowTypePartitioningEnum"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"DOUBLE_PANEL_VERTICAL"s, +"SINGLE_PANEL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_VERTICAL"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcAlignmentParameterSegment"s, +"IfcAlignmentVerticalSegment"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGeographicCRS"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMapConversionScaled"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityNumber"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRigidOperation"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureCoordinateIndices"s, +"IfcTextureCoordinateIndicesWithVoids"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWellKnownText"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcCurveMeasureSelect"s, +"IfcDerivedMeasureValue"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcAlignmentCantSegment"s, +"IfcAlignmentHorizontalSegment"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenCrossProfileDef"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointByDistanceExpression"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcSegment"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcAxis2PlacementLinear"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcCurveSegment"s, +"IfcDirection"s, +"IfcDirectrixCurveSweptAreaSolid"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcIndexedPolygonalTextureMap"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPolynomialCurve"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelAssociatesProfileDef"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelPositions"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSectionedSurface"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcSpiral"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcThirdOrderPolynomialSpiral"s, +"IfcToroidalSurface"s, +"IfcTransportationDeviceType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcVehicleType"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuildingStorey"s, +"IfcBuiltElementType"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcClothoid"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCosineSpiral"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCourseType"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCylindricalSurface"s, +"IfcDeepFoundationType"s, +"IfcDirectrixDerivedReferenceSweptAreaSolid"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFacility"s, +"IfcFacilityPart"s, +"IfcFacilityPartCommon"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGeotechnicalElement"s, +"IfcGeotechnicalStratum"s, +"IfcGradientCurve"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcImpactProtectionDevice"s, +"IfcImpactProtectionDeviceType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcKerbType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLinearElement"s, +"IfcLiquidTerminalType"s, +"IfcMarineFacility"s, +"IfcMarinePart"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMobileTelecommunicationsApplianceType"s, +"IfcMooringDeviceType"s, +"IfcMotorConnectionType"s, +"IfcNavigationElementType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOutletType"s, +"IfcPavementType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailType"s, +"IfcRailingType"s, +"IfcRailway"s, +"IfcRailwayPart"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAdheresToElement"s, +"IfcRelAggregates"s, +"IfcRoad"s, +"IfcRoadPart"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcSecondOrderPolynomialSpiral"s, +"IfcSegmentedReferenceCurve"s, +"IfcSeventhOrderPolynomialSpiral"s, +"IfcShadingDeviceType"s, +"IfcSign"s, +"IfcSignType"s, +"IfcSignalType"s, +"IfcSineSpiral"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonConduit"s, +"IfcTendonConduitType"s, +"IfcTendonType"s, +"IfcTrackElementType"s, +"IfcTransformerType"s, +"IfcTransportElementType"s, +"IfcTransportationDevice"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVehicle"s, +"IfcVibrationDamper"s, +"IfcVibrationDamperType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcInterferenceSelect"s, +"IfcSpatialReferenceSelect"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignmentCant"s, +"IfcAlignmentHorizontal"s, +"IfcAlignmentSegment"s, +"IfcAlignmentVertical"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBearingType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBridge"s, +"IfcBridgePart"s, +"IfcBuilding"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBuiltElement"s, +"IfcBuiltSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcCaissonFoundationType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcConveyorSegmentType"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCourse"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDeepFoundation"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionBoardType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcEarthworksCut"s, +"IfcEarthworksElement"s, +"IfcEarthworksFill"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricFlowTreatmentDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGeotechnicalAssembly"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcKerb"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcLiquidTerminal"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMobileTelecommunicationsAppliance"s, +"IfcMooringDevice"s, +"IfcMotorConnection"s, +"IfcNavigationElement"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPavement"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRail"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcedSoil"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSignal"s, +"IfcSlab"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTrackElement"s, +"IfcTransformer"s, +"IfcTransportElement"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBearing"s, +"IfcBoiler"s, +"IfcBorehole"s, +"IfcBuildingElementProxy"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcCaissonFoundation"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcConveyorSegment"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionBoard"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricFlowTreatmentDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcGeomodel"s, +"IfcGeoslice"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"RailHeadDistance"s, +"StartDistAlong"s, +"HorizontalLength"s, +"StartCantLeft"s, +"EndCantLeft"s, +"StartCantRight"s, +"EndCantRight"s, +"StartPoint"s, +"StartDirection"s, +"StartRadiusOfCurvature"s, +"EndRadiusOfCurvature"s, +"SegmentLength"s, +"GravityCenterLineHeight"s, +"StartTag"s, +"EndTag"s, +"DesignParameters"s, +"StartHeight"s, +"StartGradient"s, +"EndGradient"s, +"RadiusOfCurvature"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"Radius"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Specification"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"ClothoidConstant"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Segments"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"CosineTerm"s, +"ConstantTerm"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"Placement"s, +"SegmentStart"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveStyleFont"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"FlowDirection"s, +"SystemType"s, +"Location"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ParameterTakesPrecedence"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"Tag"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"UsageType"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"FixedReference"s, +"GeodeticDatum"s, +"PrimeMeridian"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"BaseCurve"s, +"EndPoint"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"RelativePlacement"s, +"CartesianPosition"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"ScaleX"s, +"ScaleY"s, +"ScaleZ"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"MaterialExpression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"PlacementRelTo"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Distance"s, +"HorizontalWidths"s, +"Widths"s, +"Slopes"s, +"Tags"s, +"OffsetPoint"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"ConstructionType"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"SizeInX"s, +"SizeInY"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"CoefficientsX"s, +"CoefficientsY"s, +"CoefficientsZ"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"VerticalDatum"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"Expression"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"NumberValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingElement"s, +"RelatedSurfaceFeatures"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"RelatingProfileDef"s, +"ConnectionGeometry"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"InterferenceSpace"s, +"RelatingPositioningElement"s, +"RelatedProducts"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"FirstCoordinate"s, +"SecondCoordinate"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"QuadraticTerm"s, +"LinearTerm"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"SpineCurve"s, +"Transition"s, +"SepticTerm"s, +"SexticTerm"s, +"QuinticTerm"s, +"QuarticTerm"s, +"CubicTerm"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"SineTerm"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"AxisDirection"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"Styles"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"TexCoordsOf"s, +"InnerTexCoordIndices"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"WellKnownText"s, +"CoordinateReferenceSystem"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"StartDate"s, +"FinishDate"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"HasSurfaceFeatures"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ReferencedInStructures"s, +"ToFaceSet"s, +"HasTexCoords"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"ReferencedByPlacements"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"Positions"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"PositionedRelativeTo"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"UsingCurves"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"AdheresToElement"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"ServicesFacilities"s, +"HasColours"s, +"HasTextures"s, +"ToTexMap"s, +"Types"s, +"IFC4X3_ADD1"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2613,14448 +6524,11473 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4X3_ADD1_populate_schema() { - IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_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"); - IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BELL"); - items.push_back("BREAKGLASSBUTTON"); - items.push_back("LIGHT"); - items.push_back("MANUALPULLBOX"); - items.push_back("NOTDEFINED"); - items.push_back("RAILWAYCROCODILE"); - items.push_back("RAILWAYDETONATOR"); - items.push_back("SIREN"); - items.push_back("USERDEFINED"); - items.push_back("WHISTLE"); - IFC4X3_ADD1_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BLOSSCURVE"); - items.push_back("CONSTANTCANT"); - items.push_back("COSINECURVE"); - items.push_back("HELMERTCURVE"); - items.push_back("LINEARTRANSITION"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type("IfcAlignmentCantSegmentTypeEnum", 32, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BLOSSCURVE"); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("COSINECURVE"); - items.push_back("CUBIC"); - items.push_back("HELMERTCURVE"); - items.push_back("LINE"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentHorizontalSegmentTypeEnum", 35, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 38, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("CONSTANTGRADIENT"); - items.push_back("PARABOLICARC"); - IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentVerticalSegmentTypeEnum", 41, items); - } - IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 42, 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"); - IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 43, 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"); - IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 44, items); - } - IFC4X3_ADD1_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 45, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ASBUILTAREA"); - items.push_back("ASBUILTLINE"); - items.push_back("ASBUILTPOINT"); - items.push_back("ASSUMEDAREA"); - items.push_back("ASSUMEDLINE"); - items.push_back("ASSUMEDPOINT"); - items.push_back("NON_PHYSICAL_SIGNAL"); - items.push_back("NOTDEFINED"); - items.push_back("SUPERELEVATIONEVENT"); - items.push_back("USERDEFINED"); - items.push_back("WIDTHEVENT"); - IFC4X3_ADD1_IfcAnnotationTypeEnum_type = new enumeration_type("IfcAnnotationTypeEnum", 48, items); - } - IFC4X3_ADD1_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 58, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 59, 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"); - IFC4X3_ADD1_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 60, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC4X3_ADD1_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 61, items); - } - { - std::vector items; items.reserve(15); - items.push_back("AMPLIFIER"); - items.push_back("CAMERA"); - items.push_back("COMMUNICATIONTERMINAL"); - 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("RECORDINGEQUIPMENT"); - items.push_back("SPEAKER"); - items.push_back("SWITCHER"); - items.push_back("TELEPHONE"); - items.push_back("TUNER"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 66, 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"); - IFC4X3_ADD1_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 108, 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"); - IFC4X3_ADD1_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 111, 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"); - IFC4X3_ADD1_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 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"); - IFC4X3_ADD1_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 77, 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"); - IFC4X3_ADD1_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 78, items); - } - IFC4X3_ADD1_IfcBinary_type = new type_declaration("IfcBinary", 80, 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"); - IFC4X3_ADD1_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 85, items); - } - IFC4X3_ADD1_IfcBoolean_type = new type_declaration("IfcBoolean", 86, 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"); - IFC4X3_ADD1_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 89, 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"); - IFC4X3_ADD1_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 105, 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"); - IFC4X3_ADD1_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 106, items); - } - { - std::vector items; items.reserve(7); - items.push_back("APRON"); - items.push_back("ARMOURUNIT"); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("SAFETYCAGE"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 116, 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"); - IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 119, items); - } - { - std::vector items; items.reserve(8); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("SHADING"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 122, items); - } - { - std::vector items; items.reserve(15); - items.push_back("EROSIONPREVENTION"); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("MOORING"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("PRESTRESSING"); - items.push_back("RAILWAYLINE"); - items.push_back("RAILWAYTRACK"); - items.push_back("REINFORCING"); - items.push_back("SHADING"); - items.push_back("TRACKCIRCUIT"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type = new enumeration_type("IfcBuiltSystemTypeEnum", 126, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 129, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BEND"); - items.push_back("CONNECTOR"); - items.push_back("CROSS"); - items.push_back("JUNCTION"); - items.push_back("NOTDEFINED"); - items.push_back("REDUCER"); - items.push_back("TEE"); - items.push_back("TRANSITION"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 132, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CABLEBRACKET"); - items.push_back("CABLELADDERSEGMENT"); - items.push_back("CABLETRAYSEGMENT"); - items.push_back("CABLETRUNKINGSEGMENT"); - items.push_back("CATENARYWIRE"); - items.push_back("CONDUITSEGMENT"); - items.push_back("DROPPER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 135, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONNECTOR"); - items.push_back("ENTRY"); - items.push_back("EXIT"); - items.push_back("FANOUT"); - items.push_back("JUNCTION"); - items.push_back("NOTDEFINED"); - items.push_back("TRANSITION"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 138, items); - } - { - std::vector items; items.reserve(12); - items.push_back("BUSBARSEGMENT"); - items.push_back("CABLESEGMENT"); - items.push_back("CONDUCTORSEGMENT"); - items.push_back("CONTACTWIRESEGMENT"); - items.push_back("CORESEGMENT"); - items.push_back("FIBERSEGMENT"); - items.push_back("FIBERTUBE"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALCABLESEGMENT"); - items.push_back("STITCHWIRE"); - items.push_back("USERDEFINED"); - items.push_back("WIREPAIRSEGMENT"); - IFC4X3_ADD1_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 141, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CAISSON"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WELL"); - IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 144, items); - } - IFC4X3_ADD1_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 145, 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"); - IFC4X3_ADD1_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 156, 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"); - IFC4X3_ADD1_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 159, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 162, 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"); - IFC4X3_ADD1_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 176, 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"); - IFC4X3_ADD1_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 184, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ANTENNA"); - items.push_back("AUTOMATON"); - items.push_back("COMPUTER"); - items.push_back("FAX"); - items.push_back("GATEWAY"); - items.push_back("INTELLIGENTPERIPHERAL"); - items.push_back("IPNETWORKEQUIPMENT"); - items.push_back("LINESIDEELECTRONICUNIT"); - items.push_back("MODEM"); - items.push_back("NETWORKAPPLIANCE"); - items.push_back("NETWORKBRIDGE"); - items.push_back("NETWORKHUB"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALLINETERMINAL"); - items.push_back("OPTICALNETWORKUNIT"); - items.push_back("PRINTER"); - items.push_back("RADIOBLOCKCENTER"); - items.push_back("REPEATER"); - items.push_back("ROUTER"); - items.push_back("SCANNER"); - items.push_back("TELECOMMAND"); - items.push_back("TELEPHONYEXCHANGE"); - items.push_back("TRANSITIONCOMPONENT"); - items.push_back("TRANSPONDER"); - items.push_back("TRANSPORTEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 187, items); - } - IFC4X3_ADD1_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 188, 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"); - IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 191, items); - } - IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 196, 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"); - IFC4X3_ADD1_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 199, 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"); - IFC4X3_ADD1_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 202, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4X3_ADD1_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 210, 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"); - IFC4X3_ADD1_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 213, 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"); - IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 216, 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"); - IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 219, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 222, items); - } - IFC4X3_ADD1_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 226, 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"); - IFC4X3_ADD1_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 231, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BELTCONVEYOR"); - items.push_back("BUCKETCONVEYOR"); - items.push_back("CHUTECONVEYOR"); - items.push_back("NOTDEFINED"); - items.push_back("SCREWCONVEYOR"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type = new enumeration_type("IfcConveyorSegmentTypeEnum", 236, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 239, 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"); - IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 242, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 248, 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"); - IFC4X3_ADD1_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 250, items); - } - IFC4X3_ADD1_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 252, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(8); - items.push_back("ARMOUR"); - items.push_back("BALLASTBED"); - items.push_back("CORE"); - items.push_back("FILTER"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENT"); - items.push_back("PROTECTION"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCourseTypeEnum_type = new enumeration_type("IfcCourseTypeEnum", 255, items); - } - { - std::vector items; items.reserve(14); - 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("TOPPING"); - items.push_back("USERDEFINED"); - items.push_back("WRAPPING"); - IFC4X3_ADD1_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 258, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 261, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 269, items); - } - IFC4X3_ADD1_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 270, 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"); - IFC4X3_ADD1_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 275, 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"); - IFC4X3_ADD1_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 288, 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"); - IFC4X3_ADD1_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 289, items); - } - IFC4X3_ADD1_IfcDate_type = new type_declaration("IfcDate", 290, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcDateTime_type = new type_declaration("IfcDateTime", 291, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 292, new simple_type(simple_type::integer_type)); - IFC4X3_ADD1_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 293, 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"); - IFC4X3_ADD1_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 301, items); - } - IFC4X3_ADD1_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 302, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 304, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_ADD1_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 306, items); - } - { - std::vector items; items.reserve(23); - items.push_back("ANCHORPLATE"); - items.push_back("BIRDPROTECTION"); - items.push_back("BRACKET"); - items.push_back("CABLEARRANGER"); - items.push_back("ELASTIC_CUSHION"); - items.push_back("EXPANSION_JOINT_DEVICE"); - items.push_back("FILLER"); - items.push_back("FLASHING"); - items.push_back("INSULATOR"); - items.push_back("LOCK"); - items.push_back("NOTDEFINED"); - items.push_back("PANEL_STRENGTHENING"); - items.push_back("POINTMACHINEMOUNTINGDEVICE"); - items.push_back("POINT_MACHINE_LOCKING_DEVICE"); - items.push_back("RAILBRACE"); - items.push_back("RAILPAD"); - items.push_back("RAIL_LUBRICATION"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT"); - items.push_back("SHOE"); - items.push_back("SLIDINGCHAIR"); - items.push_back("SOUNDABSORPTION"); - items.push_back("TENSIONINGEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 311, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONSUMERUNIT"); - items.push_back("DISPATCHINGBOARD"); - items.push_back("DISTRIBUTIONBOARD"); - items.push_back("DISTRIBUTIONFRAME"); - items.push_back("MOTORCONTROLCENTRE"); - items.push_back("NOTDEFINED"); - items.push_back("SWITCHBOARD"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type = new enumeration_type("IfcDistributionBoardTypeEnum", 314, 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"); - IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 317, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CABLE"); - items.push_back("CABLECARRIER"); - items.push_back("DUCT"); - items.push_back("NOTDEFINED"); - items.push_back("PIPE"); - items.push_back("USERDEFINED"); - items.push_back("WIRELESS"); - IFC4X3_ADD1_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 326, items); - } - { - std::vector items; items.reserve(51); - items.push_back("AIRCONDITIONING"); - items.push_back("AUDIOVISUAL"); - items.push_back("CATENARY_SYSTEM"); - 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("FIXEDTRANSMISSIONNETWORK"); - 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("MOBILENETWORK"); - items.push_back("MONITORINGSYSTEM"); - items.push_back("MUNICIPALSOLIDWASTE"); - items.push_back("NOTDEFINED"); - items.push_back("OIL"); - items.push_back("OPERATIONAL"); - items.push_back("OPERATIONALTELEPHONYSYSTEM"); - items.push_back("OVERHEAD_CONTACTLINE_SYSTEM"); - items.push_back("POWERGENERATION"); - items.push_back("RAINWATER"); - items.push_back("REFRIGERATION"); - items.push_back("RETURN_CIRCUIT"); - 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"); - IFC4X3_ADD1_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 328, 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"); - IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 329, 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"); - IFC4X3_ADD1_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 334, 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"); - IFC4X3_ADD1_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 337, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4X3_ADD1_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 338, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BOOM_BARRIER"); - items.push_back("DOOR"); - items.push_back("GATE"); - items.push_back("NOTDEFINED"); - items.push_back("TRAPDOOR"); - items.push_back("TURNSTILE"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 341, items); - } - { - std::vector items; items.reserve(25); - items.push_back("DOUBLE_DOOR_DOUBLE_SWING"); - items.push_back("DOUBLE_DOOR_FOLDING"); - items.push_back("DOUBLE_DOOR_LIFTING_VERTICAL"); - 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("LIFTING_HORIZONTAL"); - items.push_back("LIFTING_VERTICAL_LEFT"); - items.push_back("LIFTING_VERTICAL_RIGHT"); - items.push_back("NOTDEFINED"); - items.push_back("REVOLVING"); - items.push_back("REVOLVING_VERTICAL"); - 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"); - IFC4X3_ADD1_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 342, items); - } - IFC4X3_ADD1_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 343, 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"); - IFC4X3_ADD1_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 348, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 351, 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"); - IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 354, items); - } - IFC4X3_ADD1_IfcDuration_type = new type_declaration("IfcDuration", 355, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 356, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("BASE_EXCAVATION"); - items.push_back("CUT"); - items.push_back("DREDGING"); - items.push_back("EXCAVATION"); - items.push_back("NOTDEFINED"); - items.push_back("OVEREXCAVATION"); - items.push_back("PAVEMENTMILLING"); - items.push_back("STEPEXCAVATION"); - items.push_back("TOPSOILREMOVAL"); - items.push_back("TRENCH"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type = new enumeration_type("IfcEarthworksCutTypeEnum", 358, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BACKFILL"); - items.push_back("COUNTERWEIGHT"); - items.push_back("EMBANKMENT"); - items.push_back("NOTDEFINED"); - items.push_back("SLOPEFILL"); - items.push_back("SUBGRADE"); - items.push_back("SUBGRADEBED"); - items.push_back("TRANSITIONSECTION"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type = new enumeration_type("IfcEarthworksFillTypeEnum", 361, items); - } - { - 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"); - IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 367, items); - } - IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 368, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 369, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 370, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 371, 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"); - IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 374, items); - } - { - std::vector items; items.reserve(11); - items.push_back("BATTERY"); - items.push_back("CAPACITOR"); - items.push_back("CAPACITORBANK"); - items.push_back("COMPENSATOR"); - items.push_back("HARMONICFILTER"); - items.push_back("INDUCTOR"); - items.push_back("INDUCTORBANK"); - items.push_back("NOTDEFINED"); - items.push_back("RECHARGER"); - items.push_back("UPS"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 377, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELECTRONICFILTER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowTreatmentDeviceTypeEnum", 380, 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"); - IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 383, 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"); - IFC4X3_ADD1_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 386, items); - } - IFC4X3_ADD1_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 387, 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"); - IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 390, items); - } - IFC4X3_ADD1_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 391, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(30); - 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("DILATATIONPANEL"); - items.push_back("ENTRANCEWORKS"); - items.push_back("GIRDER"); - items.push_back("GRID"); - items.push_back("MAST"); - items.push_back("NOTDEFINED"); - items.push_back("PIER"); - items.push_back("PYLON"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SHELTER"); - items.push_back("SIGNALASSEMBLY"); - items.push_back("SLAB_FIELD"); - items.push_back("SUMPBUSTER"); - items.push_back("SUPPORTINGASSEMBLY"); - items.push_back("SUSPENSIONASSEMBLY"); - items.push_back("TRACKPANEL"); - items.push_back("TRACTION_SWITCHING_ASSEMBLY"); - items.push_back("TRAFFIC_CALMING_DEVICE"); - items.push_back("TRUSS"); - items.push_back("TURNOUTPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 396, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4X3_ADD1_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 399, items); - } - IFC4X3_ADD1_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 406, 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"); - IFC4X3_ADD1_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 409, 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"); - IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 412, 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"); - IFC4X3_ADD1_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 415, 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"); - IFC4X3_ADD1_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 418, 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"); - IFC4X3_ADD1_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 420, 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"); - IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 429, items); - } - { - std::vector items; items.reserve(10); - items.push_back("ABOVEGROUND"); - items.push_back("BELOWGROUND"); - items.push_back("JUNCTION"); - items.push_back("LEVELCROSSING"); - items.push_back("NOTDEFINED"); - items.push_back("SEGMENT"); - items.push_back("SUBSTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TERMINAL"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type = new enumeration_type("IfcFacilityPartCommonTypeEnum", 443, items); - } - { - std::vector items; items.reserve(6); - items.push_back("LATERAL"); - items.push_back("LONGITUDINAL"); - items.push_back("NOTDEFINED"); - items.push_back("REGION"); - items.push_back("USERDEFINED"); - items.push_back("VERTICAL"); - IFC4X3_ADD1_IfcFacilityUsageEnum_type = new enumeration_type("IfcFacilityUsageEnum", 444, 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"); - IFC4X3_ADD1_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 448, 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"); - IFC4X3_ADD1_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 451, 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"); - IFC4X3_ADD1_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 461, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BREECHINGINLET"); - items.push_back("FIREHYDRANT"); - items.push_back("FIREMONITOR"); - items.push_back("HOSEREEL"); - items.push_back("NOTDEFINED"); - items.push_back("SPRINKLER"); - items.push_back("SPRINKLERDEFLECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 464, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4X3_ADD1_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 468, items); - } - { - std::vector items; items.reserve(12); - items.push_back("AMMETER"); - items.push_back("COMBINED"); - 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"); - items.push_back("VOLTMETER_PEAK"); - items.push_back("VOLTMETER_RMS"); - IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 473, 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"); - IFC4X3_ADD1_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 476, items); - } - IFC4X3_ADD1_IfcFontStyle_type = new type_declaration("IfcFontStyle", 487, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcFontVariant_type = new type_declaration("IfcFontVariant", 488, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcFontWeight_type = new type_declaration("IfcFontWeight", 489, 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"); - IFC4X3_ADD1_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 492, items); - } - IFC4X3_ADD1_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 493, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 494, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - 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("TECHNICALCABINET"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 499, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("SOIL_BORING_POINT"); - items.push_back("TERRAIN"); - items.push_back("USERDEFINED"); - items.push_back("VEGETATION"); - IFC4X3_ADD1_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 503, 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"); - IFC4X3_ADD1_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 505, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("SOLID"); - items.push_back("USERDEFINED"); - items.push_back("VOID"); - items.push_back("WATER"); - IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type = new enumeration_type("IfcGeotechnicalStratumTypeEnum", 516, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4X3_ADD1_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 518, items); - } - IFC4X3_ADD1_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 517, 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"); - IFC4X3_ADD1_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 524, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("TURNOUTHEATING"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 530, items); - } - IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 531, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 532, 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"); - IFC4X3_ADD1_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 535, items); - } - IFC4X3_ADD1_IfcIdentifier_type = new type_declaration("IfcIdentifier", 536, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 537, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("BUMPER"); - items.push_back("CRASHCUSHION"); - items.push_back("DAMPINGSYSTEM"); - items.push_back("FENDER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type("IfcImpactProtectionDeviceTypeEnum", 541, items); - } - IFC4X3_ADD1_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 549, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcInteger_type = new type_declaration("IfcInteger", 550, new simple_type(simple_type::integer_type)); - IFC4X3_ADD1_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 551, 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"); - IFC4X3_ADD1_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 554, 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"); - IFC4X3_ADD1_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 556, 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"); - IFC4X3_ADD1_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 559, items); - } - IFC4X3_ADD1_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 560, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 564, 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"); - IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 567, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcKerbTypeEnum_type = new enumeration_type("IfcKerbTypeEnum", 570, items); - } - IFC4X3_ADD1_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 571, 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"); - IFC4X3_ADD1_IfcKnotType_type = new enumeration_type("IfcKnotType", 572, items); - } - IFC4X3_ADD1_IfcLabel_type = new type_declaration("IfcLabel", 573, 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"); - IFC4X3_ADD1_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 576, 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"); - IFC4X3_ADD1_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 580, items); - } - IFC4X3_ADD1_IfcLanguageId_type = new type_declaration("IfcLanguageId", 581, new named_type(IFC4X3_ADD1_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4X3_ADD1_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 583, items); - } - IFC4X3_ADD1_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 584, 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"); - IFC4X3_ADD1_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 588, 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"); - IFC4X3_ADD1_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 591, 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"); - IFC4X3_ADD1_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 594, items); - } - IFC4X3_ADD1_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 604, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 605, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 608, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 609, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("HOSEREEL"); - items.push_back("LOADINGARM"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type = new enumeration_type("IfcLiquidTerminalTypeEnum", 613, items); - } - { - 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"); - IFC4X3_ADD1_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 614, items); - } - IFC4X3_ADD1_IfcLogical_type = new type_declaration("IfcLogical", 616, 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"); - IFC4X3_ADD1_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 617, items); - } - IFC4X3_ADD1_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 620, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 621, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 622, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 623, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 624, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(21); - items.push_back("BARRIERBEACH"); - items.push_back("BREAKWATER"); - items.push_back("CANAL"); - items.push_back("DRYDOCK"); - items.push_back("FLOATINGDOCK"); - items.push_back("HYDROLIFT"); - items.push_back("JETTY"); - items.push_back("LAUNCHRECOVERY"); - items.push_back("MARINEDEFENCE"); - items.push_back("NAVIGATIONALCHANNEL"); - items.push_back("NOTDEFINED"); - items.push_back("PORT"); - items.push_back("QUAY"); - items.push_back("REVETMENT"); - items.push_back("SHIPLIFT"); - items.push_back("SHIPLOCK"); - items.push_back("SHIPYARD"); - items.push_back("SLIPWAY"); - items.push_back("USERDEFINED"); - items.push_back("WATERWAY"); - items.push_back("WATERWAYSHIPLIFT"); - IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type = new enumeration_type("IfcMarineFacilityTypeEnum", 630, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ABOVEWATERLINE"); - items.push_back("ANCHORAGE"); - items.push_back("APPROACHCHANNEL"); - items.push_back("BELOWWATERLINE"); - items.push_back("BERTHINGSTRUCTURE"); - items.push_back("CHAMBER"); - items.push_back("CILL_LEVEL"); - items.push_back("COPELEVEL"); - items.push_back("CORE"); - items.push_back("CREST"); - items.push_back("GATEHEAD"); - items.push_back("GUDINGSTRUCTURE"); - items.push_back("HIGHWATERLINE"); - items.push_back("LANDFIELD"); - items.push_back("LEEWARDSIDE"); - items.push_back("LOWWATERLINE"); - items.push_back("MANUFACTURING"); - items.push_back("NAVIGATIONALAREA"); - items.push_back("NOTDEFINED"); - items.push_back("PROTECTION"); - items.push_back("SHIPTRANSFER"); - items.push_back("STORAGEAREA"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESERVICING"); - items.push_back("WATERFIELD"); - items.push_back("WEATHERSIDE"); - IFC4X3_ADD1_IfcMarinePartTypeEnum_type = new enumeration_type("IfcMarinePartTypeEnum", 632, items); - } - IFC4X3_ADD1_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 633, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 634, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 635, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 636, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(17); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - items.push_back("CHAIN"); - items.push_back("COUPLER"); - items.push_back("DOWEL"); - items.push_back("NAIL"); - items.push_back("NAILPLATE"); - items.push_back("NOTDEFINED"); - items.push_back("RAILFASTENING"); - items.push_back("RAILJOINT"); - items.push_back("RIVET"); - items.push_back("ROPE"); - items.push_back("SCREW"); - items.push_back("SHEARCONNECTOR"); - items.push_back("STAPLE"); - items.push_back("STUDSHEARCONNECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 661, 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"); - IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 664, items); - } - { - std::vector items; items.reserve(21); - 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("STRUCTURALCABLE"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("SUSPENDER"); - items.push_back("SUSPENSION_CABLE"); - items.push_back("TIEBAR"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 667, items); - } - { - std::vector items; items.reserve(15); - items.push_back("ACCESSPOINT"); - items.push_back("BASEBANDUNIT"); - items.push_back("BASETRANSCEIVERSTATION"); - items.push_back("E_UTRAN_NODE_B"); - items.push_back("GATEWAY_GPRS_SUPPORT_NODE"); - items.push_back("MASTERUNIT"); - items.push_back("MOBILESWITCHINGCENTER"); - items.push_back("MSCSERVER"); - items.push_back("NOTDEFINED"); - items.push_back("PACKETCONTROLUNIT"); - items.push_back("REMOTERADIOUNIT"); - items.push_back("REMOTEUNIT"); - items.push_back("SERVICE_GPRS_SUPPORT_NODE"); - items.push_back("SUBSCRIBERSERVER"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type("IfcMobileTelecommunicationsApplianceTypeEnum", 673, items); - } - IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 674, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 675, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 676, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 677, items); - } - IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 678, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type); - IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 679, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 680, items); - } - IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 681, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 682, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 683, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 684, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 686, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(7); - items.push_back("BOLLARD"); - items.push_back("LINETENSIONER"); - items.push_back("MAGNETICDEVICE"); - items.push_back("MOORINGHOOKS"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VACUUMDEVICE"); - IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type = new enumeration_type("IfcMooringDeviceTypeEnum", 689, items); - } - { - 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"); - IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 692, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BEACON"); - items.push_back("BUOY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcNavigationElementTypeEnum_type = new enumeration_type("IfcNavigationElementTypeEnum", 696, items); - } - IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 697, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)); - IFC4X3_ADD1_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 699, new simple_type(simple_type::number_type)); - { - 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"); - IFC4X3_ADD1_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 703, 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"); - IFC4X3_ADD1_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 707, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 714, 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"); - IFC4X3_ADD1_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 722, items); - } - IFC4X3_ADD1_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 739, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcParameterValue_type = new type_declaration("IfcParameterValue", 725, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGID"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcPavementTypeEnum_type = new enumeration_type("IfcPavementTypeEnum", 729, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 732, 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"); - IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 733, 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"); - IFC4X3_ADD1_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 736, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 741, 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"); - IFC4X3_ADD1_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 745, 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"); - IFC4X3_ADD1_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 747, 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"); - IFC4X3_ADD1_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 750, 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"); - IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 753, items); - } - IFC4X3_ADD1_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 758, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 760, 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"); - IFC4X3_ADD1_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 763, items); - } - IFC4X3_ADD1_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 776, new named_type(IFC4X3_ADD1_IfcInteger_type)); - IFC4X3_ADD1_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 777, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)); - IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 778, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type)); - IFC4X3_ADD1_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 781, 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"); - IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 788, items); - } - IFC4X3_ADD1_IfcPresentableText_type = new type_declaration("IfcPresentableText", 789, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 794, 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"); - IFC4X3_ADD1_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 797, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4X3_ADD1_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 807, 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"); - IFC4X3_ADD1_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 815, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 810, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BLISTER"); - items.push_back("DEVIATOR"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 812, items); - } - { - std::vector items; items.reserve(10); - items.push_back("NOTDEFINED"); - items.push_back("PSET_MATERIALDRIVEN"); - items.push_back("PSET_OCCURRENCEDRIVEN"); - items.push_back("PSET_PERFORMANCEDRIVEN"); - items.push_back("PSET_PROFILEDRIVEN"); - 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"); - IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 830, 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"); - IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 838, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ANTI_ARCING_DEVICE"); - 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("SPARKGAP"); - items.push_back("USERDEFINED"); - items.push_back("VARISTOR"); - items.push_back("VOLTAGELIMITER"); - IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 840, 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"); - IFC4X3_ADD1_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 843, items); - } - IFC4X3_ADD1_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 852, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(8); - items.push_back("BLADE"); - items.push_back("CHECKRAIL"); - items.push_back("GUARDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("RACKRAIL"); - items.push_back("RAIL"); - items.push_back("STOCKRAIL"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRailTypeEnum_type = new enumeration_type("IfcRailTypeEnum", 858, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BALUSTRADE"); - items.push_back("FENCE"); - items.push_back("GUARDRAIL"); - items.push_back("HANDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 856, items); - } - { - std::vector items; items.reserve(10); - items.push_back("DILATATIONSUPERSTRUCTURE"); - items.push_back("LINESIDESTRUCTURE"); - items.push_back("LINESIDESTRUCTUREPART"); - items.push_back("NOTDEFINED"); - items.push_back("PLAINTRACKSUPERSTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TRACKSTRUCTURE"); - items.push_back("TRACKSTRUCTUREPART"); - items.push_back("TURNOUTSUPERSTRUCTURE"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRailwayPartTypeEnum_type = new enumeration_type("IfcRailwayPartTypeEnum", 861, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRailwayTypeEnum_type = new enumeration_type("IfcRailwayTypeEnum", 862, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 866, 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"); - IFC4X3_ADD1_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 868, items); - } - IFC4X3_ADD1_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 869, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcReal_type = new type_declaration("IfcReal", 872, 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"); - IFC4X3_ADD1_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 878, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BOUNDARY"); - items.push_back("INTERSECTION"); - items.push_back("KILOPOINT"); - items.push_back("LANDMARK"); - items.push_back("MILEPOINT"); - items.push_back("NOTDEFINED"); - items.push_back("POSITION"); - items.push_back("REFERENCEMARKER"); - items.push_back("STATION"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 881, items); - } - { - std::vector items; items.reserve(11); - 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("PHYSICAL"); - items.push_back("PLASTIC"); - items.push_back("STRAUSS"); - IFC4X3_ADD1_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 882, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DYNAMICALLYCOMPACTED"); - items.push_back("GROUTED"); - items.push_back("NOTDEFINED"); - items.push_back("REPLACED"); - items.push_back("ROLLERCOMPACTED"); - items.push_back("SURCHARGEPRELOADED"); - items.push_back("USERDEFINED"); - items.push_back("VERTICALLYDRAINED"); - IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type = new enumeration_type("IfcReinforcedSoilTypeEnum", 885, 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"); - IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 889, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 890, 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"); - IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 892, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 897, items); - } - { - std::vector items; items.reserve(26); - items.push_back("BICYCLECROSSING"); - items.push_back("BUS_STOP"); - items.push_back("CARRIAGEWAY"); - items.push_back("CENTRALISLAND"); - items.push_back("CENTRALRESERVE"); - items.push_back("HARDSHOULDER"); - items.push_back("INTERSECTION"); - items.push_back("LAYBY"); - items.push_back("NOTDEFINED"); - items.push_back("PARKINGBAY"); - items.push_back("PASSINGBAY"); - items.push_back("PEDESTRIAN_CROSSING"); - items.push_back("RAILWAYCROSSING"); - items.push_back("REFUGEISLAND"); - items.push_back("ROADSEGMENT"); - items.push_back("ROADSIDE"); - items.push_back("ROADSIDEPART"); - items.push_back("ROADWAYPLATEAU"); - items.push_back("ROUNDABOUT"); - items.push_back("SHOULDER"); - items.push_back("SIDEWALK"); - items.push_back("SOFTSHOULDER"); - items.push_back("TOLLPLAZA"); - items.push_back("TRAFFICISLAND"); - items.push_back("TRAFFICLANE"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRoadPartTypeEnum_type = new enumeration_type("IfcRoadPartTypeEnum", 968, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcRoadTypeEnum_type = new enumeration_type("IfcRoadTypeEnum", 969, 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"); - IFC4X3_ADD1_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 970, 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"); - IFC4X3_ADD1_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 973, items); - } - IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 975, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 976, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 977, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type); - IFC4X3_ADD1_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 978, 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"); - IFC4X3_ADD1_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 1023, 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"); - IFC4X3_ADD1_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 1026, 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"); - IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 982, items); - } - IFC4X3_ADD1_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 991, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4X3_ADD1_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 994, items); - } - IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 986, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(34); - items.push_back("CO2SENSOR"); - items.push_back("CONDUCTANCESENSOR"); - items.push_back("CONTACTSENSOR"); - items.push_back("COSENSOR"); - items.push_back("EARTHQUAKESENSOR"); - items.push_back("FIRESENSOR"); - items.push_back("FLOWSENSOR"); - items.push_back("FOREIGNOBJECTDETECTIONSENSOR"); - 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("OBSTACLESENSOR"); - items.push_back("PHSENSOR"); - items.push_back("PRESSURESENSOR"); - items.push_back("RADIATIONSENSOR"); - items.push_back("RADIOACTIVITYSENSOR"); - items.push_back("RAINSENSOR"); - items.push_back("SMOKESENSOR"); - items.push_back("SNOWDEPTHSENSOR"); - items.push_back("SOUNDSENSOR"); - items.push_back("TEMPERATURESENSOR"); - items.push_back("TRAINSENSOR"); - items.push_back("TURNOUTCLOSURESENSOR"); - items.push_back("USERDEFINED"); - items.push_back("WHEELSENSOR"); - items.push_back("WINDSENSOR"); - IFC4X3_ADD1_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 1000, 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"); - IFC4X3_ADD1_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 1001, 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"); - IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 1005, items); - } - IFC4X3_ADD1_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 1009, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("MARKER"); - items.push_back("MIRROR"); - items.push_back("NOTDEFINED"); - items.push_back("PICTORAL"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcSignTypeEnum_type = new enumeration_type("IfcSignTypeEnum", 1017, items); - } - { - std::vector items; items.reserve(5); - items.push_back("AUDIO"); - items.push_back("MIXED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VISUAL"); - IFC4X3_ADD1_IfcSignalTypeEnum_type = new enumeration_type("IfcSignalTypeEnum", 1015, items); - } - { - std::vector items; items.reserve(13); - 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_NUMBER"); - items.push_back("Q_TIME"); - items.push_back("Q_VOLUME"); - items.push_back("Q_WEIGHT"); - IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 1020, items); - } - { - std::vector items; items.reserve(11); - 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("TRACKSLAB"); - items.push_back("USERDEFINED"); - items.push_back("WEARING"); - IFC4X3_ADD1_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 1030, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 1034, items); - } - IFC4X3_ADD1_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 1035, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 1038, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 1039, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 1040, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 1041, 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"); - IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 1046, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BERTH"); - 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"); - IFC4X3_ADD1_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 1048, items); - } - { - std::vector items; items.reserve(12); - items.push_back("CONSTRUCTION"); - items.push_back("FIRESAFETY"); - items.push_back("INTERFERENCE"); - items.push_back("LIGHTING"); - items.push_back("NOTDEFINED"); - items.push_back("OCCUPANCY"); - items.push_back("RESERVATION"); - items.push_back("SECURITY"); - items.push_back("THERMAL"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - items.push_back("VENTILATION"); - IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 1056, items); - } - IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 1057, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 1058, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 1060, 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"); - IFC4X3_ADD1_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 1066, 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"); - IFC4X3_ADD1_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 1070, items); - } - { - std::vector items; items.reserve(17); - 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("LADDER"); - 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"); - IFC4X3_ADD1_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 1072, 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"); - IFC4X3_ADD1_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 1073, items); - } - IFC4X3_ADD1_IfcStrippedOptional_type = new type_declaration("IfcStrippedOptional", 1074, new simple_type(simple_type::boolean_type)); - { - 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"); - IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 1082, 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"); - IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1085, 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"); - IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1111, 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"); - IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1114, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1122, items); - } - { - std::vector items; items.reserve(13); - items.push_back("DEFECT"); - items.push_back("HATCHMARKING"); - items.push_back("LINEMARKING"); - items.push_back("MARK"); - items.push_back("NONSKIDSURFACING"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENTSURFACEMARKING"); - items.push_back("RUMBLESTRIP"); - items.push_back("SYMBOLMARKING"); - items.push_back("TAG"); - items.push_back("TRANSVERSERUMBLESTRIP"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1128, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_ADD1_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1133, items); - } - { - std::vector items; items.reserve(13); - 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("RELAY"); - items.push_back("SELECTORSWITCH"); - items.push_back("STARTER"); - items.push_back("START_AND_STOP_EQUIPMENT"); - items.push_back("SWITCHDISCONNECTOR"); - items.push_back("TOGGLESWITCH"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1148, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("SUBRACK"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1152, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BASIN"); - items.push_back("BREAKPRESSURE"); - items.push_back("EXPANSION"); - items.push_back("FEEDANDEXPANSION"); - items.push_back("NOTDEFINED"); - items.push_back("OILRETENTIONTRAY"); - items.push_back("PRESSUREVESSEL"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VESSEL"); - IFC4X3_ADD1_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1158, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4X3_ADD1_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1160, items); - } - { - std::vector items; items.reserve(23); - items.push_back("ADJUSTMENT"); - items.push_back("ATTENDANCE"); - items.push_back("CALIBRATION"); - items.push_back("CONSTRUCTION"); - items.push_back("DEMOLITION"); - items.push_back("DISMANTLE"); - items.push_back("DISPOSAL"); - items.push_back("EMERGENCY"); - items.push_back("INSPECTION"); - 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("SAFETY"); - items.push_back("SHUTDOWN"); - items.push_back("STARTUP"); - items.push_back("TESTING"); - items.push_back("TROUBLESHOOTING"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1164, items); - } - IFC4X3_ADD1_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1166, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1167, 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"); - IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1171, 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"); - IFC4X3_ADD1_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1174, 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"); - IFC4X3_ADD1_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1176, items); - } - IFC4X3_ADD1_IfcText_type = new type_declaration("IfcText", 1179, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1180, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1181, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1182, 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"); - IFC4X3_ADD1_IfcTextPath_type = new enumeration_type("IfcTextPath", 1186, items); - } - IFC4X3_ADD1_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1191, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1199, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1200, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1201, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1202, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1203, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1204, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcTime_type = new type_declaration("IfcTime", 1206, new simple_type(simple_type::string_type)); - IFC4X3_ADD1_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1207, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcDuration_type); - items.push_back(IFC4X3_ADD1_IfcRatioMeasure_type); - IFC4X3_ADD1_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1208, 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"); - IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1211, items); - } - IFC4X3_ADD1_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1213, new simple_type(simple_type::integer_type)); - IFC4X3_ADD1_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1217, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - items.push_back("BLOCKINGDEVICE"); - items.push_back("DERAILER"); - items.push_back("FROG"); - items.push_back("HALF_SET_OF_BLADES"); - items.push_back("NOTDEFINED"); - items.push_back("SLEEPER"); - items.push_back("SPEEDREGULATOR"); - items.push_back("TRACKENDOFALIGNMENT"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESTOP"); - IFC4X3_ADD1_IfcTrackElementTypeEnum_type = new enumeration_type("IfcTrackElementTypeEnum", 1220, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CHOPPER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_ADD1_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1223, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4X3_ADD1_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1224, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcLinearStiffnessMeasure_type); - IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1225, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CRANEWAY"); - items.push_back("ELEVATOR"); - items.push_back("ESCALATOR"); - items.push_back("HAULINGGEAR"); - items.push_back("LIFTINGGEAR"); - items.push_back("MOVINGWALKWAY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcTransportElementTypeEnum_type = new enumeration_type("IfcTransportElementTypeEnum", 1230, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4X3_ADD1_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1235, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1240, items); - } - IFC4X3_ADD1_IfcURIReference_type = new type_declaration("IfcURIReference", 1254, 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"); - IFC4X3_ADD1_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1253, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ALARMPANEL"); - items.push_back("BASESTATIONCONTROLLER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1248, 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"); - IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1251, 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"); - IFC4X3_ADD1_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1259, items); - } - IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1260, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(9); - items.push_back("CARGO"); - items.push_back("NOTDEFINED"); - items.push_back("ROLLINGSTOCK"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLE"); - items.push_back("VEHICLEAIR"); - items.push_back("VEHICLEMARINE"); - items.push_back("VEHICLETRACKED"); - items.push_back("VEHICLEWHEELED"); - IFC4X3_ADD1_IfcVehicleTypeEnum_type = new enumeration_type("IfcVehicleTypeEnum", 1265, items); - } - { - 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"); - IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1271, 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"); - IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1274, items); - } - { - std::vector items; items.reserve(5); - items.push_back("BOUNDARY"); - items.push_back("CLEARANCE"); - items.push_back("NOTDEFINED"); - items.push_back("PROVISIONFORVOID"); - items.push_back("USERDEFINED"); - IFC4X3_ADD1_IfcVirtualElementTypeEnum_type = new enumeration_type("IfcVirtualElementTypeEnum", 1276, 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"); - IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1279, items); - } - IFC4X3_ADD1_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1280, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1281, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(13); - 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"); - items.push_back("WAVEWALL"); - IFC4X3_ADD1_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1285, items); - } - IFC4X3_ADD1_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1286, new simple_type(simple_type::real_type)); - IFC4X3_ADD1_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1287, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcWarpingMomentMeasure_type); - IFC4X3_ADD1_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1288, 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"); - IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1291, items); - } - IFC4X3_ADD1_IfcWellKnownTextLiteral_type = new type_declaration("IfcWellKnownTextLiteral", 1293, new simple_type(simple_type::string_type)); - { - 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"); - IFC4X3_ADD1_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1296, 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"); - IFC4X3_ADD1_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1297, 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"); - IFC4X3_ADD1_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1300, 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"); - IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1301, 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"); - IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1303, 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"); - IFC4X3_ADD1_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1306, 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"); - IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1308, items); - } - IFC4X3_ADD1_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4X3_ADD1_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4X3_ADD1_IfcAlignmentParameterSegment_type = new entity("IfcAlignmentParameterSegment", true, 36, 0); - IFC4X3_ADD1_IfcAlignmentVerticalSegment_type = new entity("IfcAlignmentVerticalSegment", false, 40, IFC4X3_ADD1_IfcAlignmentParameterSegment_type); - IFC4X3_ADD1_IfcApplication_type = new entity("IfcApplication", false, 49, 0); - IFC4X3_ADD1_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 50, 0); - IFC4X3_ADD1_IfcApproval_type = new entity("IfcApproval", false, 52, 0); - IFC4X3_ADD1_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 92, 0); - IFC4X3_ADD1_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 94, IFC4X3_ADD1_IfcBoundaryCondition_type); - IFC4X3_ADD1_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 95, IFC4X3_ADD1_IfcBoundaryCondition_type); - IFC4X3_ADD1_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 96, IFC4X3_ADD1_IfcBoundaryCondition_type); - IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 97, IFC4X3_ADD1_IfcBoundaryNodeCondition_type); - IFC4X3_ADD1_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 206, 0); - IFC4X3_ADD1_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 208, IFC4X3_ADD1_IfcConnectionGeometry_type); - IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 209, IFC4X3_ADD1_IfcConnectionGeometry_type); - IFC4X3_ADD1_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 211, IFC4X3_ADD1_IfcConnectionGeometry_type); - IFC4X3_ADD1_IfcConstraint_type = new entity("IfcConstraint", true, 212, 0); - IFC4X3_ADD1_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 243, 0); - IFC4X3_ADD1_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 244, 0); - IFC4X3_ADD1_IfcCostValue_type = new entity("IfcCostValue", false, 251, IFC4X3_ADD1_IfcAppliedValue_type); - IFC4X3_ADD1_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 299, 0); - IFC4X3_ADD1_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 300, 0); - IFC4X3_ADD1_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 303, 0); - IFC4X3_ADD1_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 422, 0); - IFC4X3_ADD1_IfcExternalReference_type = new entity("IfcExternalReference", true, 426, 0); - IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 423, IFC4X3_ADD1_IfcExternalReference_type); - IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 424, IFC4X3_ADD1_IfcExternalReference_type); - IFC4X3_ADD1_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 425, IFC4X3_ADD1_IfcExternalReference_type); - IFC4X3_ADD1_IfcGeographicCRS_type = new entity("IfcGeographicCRS", false, 500, IFC4X3_ADD1_IfcCoordinateReferenceSystem_type); - IFC4X3_ADD1_IfcGridAxis_type = new entity("IfcGridAxis", false, 521, 0); - IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 562, 0); - IFC4X3_ADD1_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 585, IFC4X3_ADD1_IfcExternalInformation_type); - IFC4X3_ADD1_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 586, IFC4X3_ADD1_IfcExternalReference_type); - IFC4X3_ADD1_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 589, 0); - IFC4X3_ADD1_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 595, 0); - IFC4X3_ADD1_IfcMapConversion_type = new entity("IfcMapConversion", false, 626, IFC4X3_ADD1_IfcCoordinateOperation_type); - IFC4X3_ADD1_IfcMapConversionScaled_type = new entity("IfcMapConversionScaled", false, 627, IFC4X3_ADD1_IfcMapConversion_type); - IFC4X3_ADD1_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 638, 0); - IFC4X3_ADD1_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 641, 0); - IFC4X3_ADD1_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 643, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 644, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 646, IFC4X3_ADD1_IfcMaterialLayer_type); - IFC4X3_ADD1_IfcMaterialList_type = new entity("IfcMaterialList", false, 647, 0); - IFC4X3_ADD1_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 648, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 649, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 652, IFC4X3_ADD1_IfcMaterialProfile_type); - IFC4X3_ADD1_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 656, 0); - IFC4X3_ADD1_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 658, 0); - IFC4X3_ADD1_IfcMetric_type = new entity("IfcMetric", false, 668, IFC4X3_ADD1_IfcConstraint_type); - IFC4X3_ADD1_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 685, 0); - IFC4X3_ADD1_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 693, 0); - IFC4X3_ADD1_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 704, 0); - IFC4X3_ADD1_IfcObjective_type = new entity("IfcObjective", false, 702, IFC4X3_ADD1_IfcConstraint_type); - IFC4X3_ADD1_IfcOrganization_type = new entity("IfcOrganization", false, 716, 0); - IFC4X3_ADD1_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 723, 0); - IFC4X3_ADD1_IfcPerson_type = new entity("IfcPerson", false, 737, 0); - IFC4X3_ADD1_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 738, 0); - IFC4X3_ADD1_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 742, 0); - IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 743, IFC4X3_ADD1_IfcPhysicalQuantity_type); - IFC4X3_ADD1_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 780, IFC4X3_ADD1_IfcAddress_type); - IFC4X3_ADD1_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 790, 0); - IFC4X3_ADD1_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 791, 0); - IFC4X3_ADD1_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 792, IFC4X3_ADD1_IfcPresentationLayerAssignment_type); - IFC4X3_ADD1_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 793, 0); - IFC4X3_ADD1_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 802, 0); - IFC4X3_ADD1_IfcProfileDef_type = new entity("IfcProfileDef", false, 805, 0); - IFC4X3_ADD1_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 809, IFC4X3_ADD1_IfcCoordinateReferenceSystem_type); - IFC4X3_ADD1_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 817, 0); - IFC4X3_ADD1_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 822, IFC4X3_ADD1_IfcPropertyAbstraction_type); - IFC4X3_ADD1_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 844, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 845, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 846, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcQuantityNumber_type = new entity("IfcQuantityNumber", false, 847, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 849, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 850, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 851, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 877, 0); - IFC4X3_ADD1_IfcReference_type = new entity("IfcReference", false, 879, 0); - IFC4X3_ADD1_IfcRepresentation_type = new entity("IfcRepresentation", true, 950, 0); - IFC4X3_ADD1_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 951, 0); - IFC4X3_ADD1_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 952, 0); - IFC4X3_ADD1_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 953, 0); - IFC4X3_ADD1_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 957, 0); - IFC4X3_ADD1_IfcRigidOperation_type = new entity("IfcRigidOperation", false, 965, IFC4X3_ADD1_IfcCoordinateOperation_type); - IFC4X3_ADD1_IfcRoot_type = new entity("IfcRoot", true, 974, 0); - IFC4X3_ADD1_IfcSIUnit_type = new entity("IfcSIUnit", false, 1025, IFC4X3_ADD1_IfcNamedUnit_type); - IFC4X3_ADD1_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 983, 0); - IFC4X3_ADD1_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 1006, 0); - IFC4X3_ADD1_IfcShapeModel_type = new entity("IfcShapeModel", true, 1007, IFC4X3_ADD1_IfcRepresentation_type); - IFC4X3_ADD1_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 1008, IFC4X3_ADD1_IfcShapeModel_type); - IFC4X3_ADD1_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 1080, 0); - IFC4X3_ADD1_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1090, 0); - IFC4X3_ADD1_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1092, IFC4X3_ADD1_IfcStructuralLoad_type); - IFC4X3_ADD1_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1095, IFC4X3_ADD1_IfcStructuralLoad_type); - IFC4X3_ADD1_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1101, IFC4X3_ADD1_IfcStructuralLoadOrResult_type); - IFC4X3_ADD1_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1102, IFC4X3_ADD1_IfcStructuralLoadStatic_type); - IFC4X3_ADD1_IfcStyleModel_type = new entity("IfcStyleModel", true, 1119, IFC4X3_ADD1_IfcRepresentation_type); - IFC4X3_ADD1_IfcStyledItem_type = new entity("IfcStyledItem", false, 1117, IFC4X3_ADD1_IfcRepresentationItem_type); - IFC4X3_ADD1_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1118, IFC4X3_ADD1_IfcStyleModel_type); - IFC4X3_ADD1_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1132, IFC4X3_ADD1_IfcStructuralLoadOrResult_type); - IFC4X3_ADD1_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1134, IFC4X3_ADD1_IfcPresentationStyle_type); - IFC4X3_ADD1_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1136, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1137, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1139, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1140, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1141, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcTable_type = new entity("IfcTable", false, 1153, 0); - IFC4X3_ADD1_IfcTableColumn_type = new entity("IfcTableColumn", false, 1154, 0); - IFC4X3_ADD1_IfcTableRow_type = new entity("IfcTableRow", false, 1155, 0); - IFC4X3_ADD1_IfcTaskTime_type = new entity("IfcTaskTime", false, 1161, IFC4X3_ADD1_IfcSchedulingTime_type); - IFC4X3_ADD1_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1162, IFC4X3_ADD1_IfcTaskTime_type); - IFC4X3_ADD1_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1165, IFC4X3_ADD1_IfcAddress_type); - IFC4X3_ADD1_IfcTextStyle_type = new entity("IfcTextStyle", false, 1187, IFC4X3_ADD1_IfcPresentationStyle_type); - IFC4X3_ADD1_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1189, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1190, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1192, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1193, IFC4X3_ADD1_IfcTextureCoordinate_type); - IFC4X3_ADD1_IfcTextureCoordinateIndices_type = new entity("IfcTextureCoordinateIndices", false, 1194, 0); - IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type = new entity("IfcTextureCoordinateIndicesWithVoids", false, 1195, IFC4X3_ADD1_IfcTextureCoordinateIndices_type); - IFC4X3_ADD1_IfcTextureMap_type = new entity("IfcTextureMap", false, 1196, IFC4X3_ADD1_IfcTextureCoordinate_type); - IFC4X3_ADD1_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1197, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1198, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1209, 0); - IFC4X3_ADD1_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1210, 0); - IFC4X3_ADD1_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1212, 0); - IFC4X3_ADD1_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1214, IFC4X3_ADD1_IfcRepresentationItem_type); - IFC4X3_ADD1_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1215, IFC4X3_ADD1_IfcShapeModel_type); - IFC4X3_ADD1_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1252, 0); - IFC4X3_ADD1_IfcVertex_type = new entity("IfcVertex", false, 1266, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1268, IFC4X3_ADD1_IfcVertex_type); - IFC4X3_ADD1_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1277, 0); - IFC4X3_ADD1_IfcWellKnownText_type = new entity("IfcWellKnownText", false, 1292, 0); - IFC4X3_ADD1_IfcWorkTime_type = new entity("IfcWorkTime", false, 1309, IFC4X3_ADD1_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcOrganization_type); - items.push_back(IFC4X3_ADD1_IfcPerson_type); - items.push_back(IFC4X3_ADD1_IfcPersonAndOrganization_type); - IFC4X3_ADD1_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4X3_ADD1_IfcArcIndex_type = new type_declaration("IfcArcIndex", 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPlaneAngleMeasure_type); - IFC4X3_ADD1_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 79, items); - } - IFC4X3_ADD1_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 101, new named_type(IFC4X3_ADD1_IfcLabel_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcParameterValue_type); - IFC4X3_ADD1_IfcCurveMeasureSelect_type = new select_type("IfcCurveMeasureSelect", 276, items); - } - { - std::vector items; items.reserve(71); - items.push_back(IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4X3_ADD1_IfcAccelerationMeasure_type); - items.push_back(IFC4X3_ADD1_IfcAngularVelocityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcAreaDensityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4X3_ADD1_IfcCurvatureMeasure_type); - items.push_back(IFC4X3_ADD1_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4X3_ADD1_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcElectricChargeMeasure_type); - items.push_back(IFC4X3_ADD1_IfcElectricConductanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcElectricResistanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcElectricVoltageMeasure_type); - items.push_back(IFC4X3_ADD1_IfcEnergyMeasure_type); - items.push_back(IFC4X3_ADD1_IfcForceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcFrequencyMeasure_type); - items.push_back(IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcHeatingValueMeasure_type); - items.push_back(IFC4X3_ADD1_IfcIlluminanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcInductanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4X3_ADD1_IfcIonConcentrationMeasure_type); - items.push_back(IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLinearForceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLinearMomentMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLinearVelocityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLuminousFluxMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMagneticFluxMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMassDensityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMassFlowRateMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMassPerLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMolecularWeightMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMonetaryMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPHMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPlanarForceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPowerMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPressureMeasure_type); - items.push_back(IFC4X3_ADD1_IfcRadioActivityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4X3_ADD1_IfcRotationalMassMeasure_type); - items.push_back(IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSectionModulusMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4X3_ADD1_IfcShearModulusMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSoundPowerMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSoundPressureMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcThermalConductivityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4X3_ADD1_IfcThermalResistanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcTorqueMeasure_type); - items.push_back(IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4X3_ADD1_IfcWarpingConstantMeasure_type); - items.push_back(IFC4X3_ADD1_IfcWarpingMomentMeasure_type); - IFC4X3_ADD1_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 297, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcRepresentation_type); - items.push_back(IFC4X3_ADD1_IfcRepresentationItem_type); - IFC4X3_ADD1_IfcLayeredItem_type = new select_type("IfcLayeredItem", 582, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcLibraryInformation_type); - items.push_back(IFC4X3_ADD1_IfcLibraryReference_type); - IFC4X3_ADD1_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 587, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcExternalReference_type); - items.push_back(IFC4X3_ADD1_IfcLightIntensityDistribution_type); - IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 590, items); - } - IFC4X3_ADD1_IfcLineIndex_type = new type_declaration("IfcLineIndex", 610, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcMaterialDefinition_type); - items.push_back(IFC4X3_ADD1_IfcMaterialList_type); - items.push_back(IFC4X3_ADD1_IfcMaterialUsageDefinition_type); - IFC4X3_ADD1_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 655, items); - } - IFC4X3_ADD1_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 698, new named_type(IFC4X3_ADD1_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4X3_ADD1_IfcAddress_type); - items.push_back(IFC4X3_ADD1_IfcAppliedValue_type); - items.push_back(IFC4X3_ADD1_IfcExternalReference_type); - items.push_back(IFC4X3_ADD1_IfcMaterialDefinition_type); - items.push_back(IFC4X3_ADD1_IfcOrganization_type); - items.push_back(IFC4X3_ADD1_IfcPerson_type); - items.push_back(IFC4X3_ADD1_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_ADD1_IfcTable_type); - items.push_back(IFC4X3_ADD1_IfcTimeSeries_type); - IFC4X3_ADD1_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 705, items); - } - IFC4X3_ADD1_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 779, new named_type(IFC4X3_ADD1_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcArcIndex_type); - items.push_back(IFC4X3_ADD1_IfcLineIndex_type); - IFC4X3_ADD1_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 997, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4X3_ADD1_IfcBinary_type); - items.push_back(IFC4X3_ADD1_IfcBoolean_type); - items.push_back(IFC4X3_ADD1_IfcDate_type); - items.push_back(IFC4X3_ADD1_IfcDateTime_type); - items.push_back(IFC4X3_ADD1_IfcDuration_type); - items.push_back(IFC4X3_ADD1_IfcIdentifier_type); - items.push_back(IFC4X3_ADD1_IfcInteger_type); - items.push_back(IFC4X3_ADD1_IfcLabel_type); - items.push_back(IFC4X3_ADD1_IfcLogical_type); - items.push_back(IFC4X3_ADD1_IfcPositiveInteger_type); - items.push_back(IFC4X3_ADD1_IfcReal_type); - items.push_back(IFC4X3_ADD1_IfcText_type); - items.push_back(IFC4X3_ADD1_IfcTime_type); - items.push_back(IFC4X3_ADD1_IfcTimeStamp_type); - IFC4X3_ADD1_IfcSimpleValue_type = new select_type("IfcSimpleValue", 1021, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_ADD1_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_ADD1_IfcRatioMeasure_type); - IFC4X3_ADD1_IfcSizeSelect_type = new select_type("IfcSizeSelect", 1027, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcSpecularExponent_type); - items.push_back(IFC4X3_ADD1_IfcSpecularRoughness_type); - IFC4X3_ADD1_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 1059, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4X3_ADD1_IfcSurfaceStyleLighting_type); - items.push_back(IFC4X3_ADD1_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4X3_ADD1_IfcSurfaceStyleShading_type); - items.push_back(IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type); - IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1135, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcDerivedUnit_type); - items.push_back(IFC4X3_ADD1_IfcMonetaryUnit_type); - items.push_back(IFC4X3_ADD1_IfcNamedUnit_type); - IFC4X3_ADD1_IfcUnit_type = new select_type("IfcUnit", 1245, items); - } - IFC4X3_ADD1_IfcAlignmentCantSegment_type = new entity("IfcAlignmentCantSegment", false, 31, IFC4X3_ADD1_IfcAlignmentParameterSegment_type); - IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type = new entity("IfcAlignmentHorizontalSegment", false, 34, IFC4X3_ADD1_IfcAlignmentParameterSegment_type); - IFC4X3_ADD1_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 53, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 54, IFC4X3_ADD1_IfcProfileDef_type); - IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 55, IFC4X3_ADD1_IfcProfileDef_type); - IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 56, IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type); - IFC4X3_ADD1_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 81, IFC4X3_ADD1_IfcSurfaceTexture_type); - IFC4X3_ADD1_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 155, IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type); - IFC4X3_ADD1_IfcClassification_type = new entity("IfcClassification", false, 168, IFC4X3_ADD1_IfcExternalInformation_type); - IFC4X3_ADD1_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 169, IFC4X3_ADD1_IfcExternalReference_type); - IFC4X3_ADD1_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 180, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 181, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 195, IFC4X3_ADD1_IfcProfileDef_type); - IFC4X3_ADD1_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 204, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 205, IFC4X3_ADD1_IfcConnectionGeometry_type); - IFC4X3_ADD1_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 207, IFC4X3_ADD1_IfcConnectionPointGeometry_type); - IFC4X3_ADD1_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 227, IFC4X3_ADD1_IfcNamedUnit_type); - IFC4X3_ADD1_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 232, IFC4X3_ADD1_IfcNamedUnit_type); - IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 233, IFC4X3_ADD1_IfcConversionBasedUnit_type); - IFC4X3_ADD1_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 266, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 280, IFC4X3_ADD1_IfcPresentationStyle_type); - IFC4X3_ADD1_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 281, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 282, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 283, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 298, IFC4X3_ADD1_IfcProfileDef_type); - IFC4X3_ADD1_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 330, IFC4X3_ADD1_IfcExternalInformation_type); - IFC4X3_ADD1_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 331, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 332, IFC4X3_ADD1_IfcExternalReference_type); - IFC4X3_ADD1_IfcEdge_type = new entity("IfcEdge", false, 362, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 363, IFC4X3_ADD1_IfcEdge_type); - IFC4X3_ADD1_IfcEventTime_type = new entity("IfcEventTime", false, 417, IFC4X3_ADD1_IfcSchedulingTime_type); - IFC4X3_ADD1_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 421, IFC4X3_ADD1_IfcPropertyAbstraction_type); - IFC4X3_ADD1_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 427, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcFace_type = new entity("IfcFace", false, 433, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcFaceBound_type = new entity("IfcFaceBound", false, 435, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 436, IFC4X3_ADD1_IfcFaceBound_type); - IFC4X3_ADD1_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 437, IFC4X3_ADD1_IfcFace_type); - IFC4X3_ADD1_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 445, IFC4X3_ADD1_IfcStructuralConnectionCondition_type); - IFC4X3_ADD1_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 455, IFC4X3_ADD1_IfcPresentationStyle_type); - IFC4X3_ADD1_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 506, IFC4X3_ADD1_IfcRepresentationContext_type); - IFC4X3_ADD1_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 507, IFC4X3_ADD1_IfcRepresentationItem_type); - IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 508, IFC4X3_ADD1_IfcGeometricRepresentationContext_type); - IFC4X3_ADD1_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 509, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 522, IFC4X3_ADD1_IfcObjectPlacement_type); - IFC4X3_ADD1_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 526, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcImageTexture_type = new entity("IfcImageTexture", false, 538, IFC4X3_ADD1_IfcSurfaceTexture_type); - IFC4X3_ADD1_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 542, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 547, IFC4X3_ADD1_IfcTextureCoordinate_type); - IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 548, IFC4X3_ADD1_IfcIndexedTextureMap_type); - IFC4X3_ADD1_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 561, IFC4X3_ADD1_IfcTimeSeries_type); - IFC4X3_ADD1_IfcLagTime_type = new entity("IfcLagTime", false, 577, IFC4X3_ADD1_IfcSchedulingTime_type); - IFC4X3_ADD1_IfcLightSource_type = new entity("IfcLightSource", true, 596, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 597, IFC4X3_ADD1_IfcLightSource_type); - IFC4X3_ADD1_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 598, IFC4X3_ADD1_IfcLightSource_type); - IFC4X3_ADD1_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 599, IFC4X3_ADD1_IfcLightSource_type); - IFC4X3_ADD1_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 600, IFC4X3_ADD1_IfcLightSource_type); - IFC4X3_ADD1_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 601, IFC4X3_ADD1_IfcLightSourcePositional_type); - IFC4X3_ADD1_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 606, IFC4X3_ADD1_IfcObjectPlacement_type); - IFC4X3_ADD1_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 615, IFC4X3_ADD1_IfcObjectPlacement_type); - IFC4X3_ADD1_IfcLoop_type = new entity("IfcLoop", false, 618, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcMappedItem_type = new entity("IfcMappedItem", false, 628, IFC4X3_ADD1_IfcRepresentationItem_type); - IFC4X3_ADD1_IfcMaterial_type = new entity("IfcMaterial", false, 637, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 639, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 640, IFC4X3_ADD1_IfcMaterialDefinition_type); - IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 642, IFC4X3_ADD1_IfcProductRepresentation_type); - IFC4X3_ADD1_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 645, IFC4X3_ADD1_IfcMaterialUsageDefinition_type); - IFC4X3_ADD1_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 650, IFC4X3_ADD1_IfcMaterialUsageDefinition_type); - IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 651, IFC4X3_ADD1_IfcMaterialProfileSetUsage_type); - IFC4X3_ADD1_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 653, IFC4X3_ADD1_IfcExtendedProperties_type); - IFC4X3_ADD1_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 654, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 670, IFC4X3_ADD1_IfcDerivedProfileDef_type); - IFC4X3_ADD1_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 701, IFC4X3_ADD1_IfcRoot_type); - IFC4X3_ADD1_IfcOpenCrossProfileDef_type = new entity("IfcOpenCrossProfileDef", false, 712, IFC4X3_ADD1_IfcProfileDef_type); - IFC4X3_ADD1_IfcOpenShell_type = new entity("IfcOpenShell", false, 715, IFC4X3_ADD1_IfcConnectedFaceSet_type); - IFC4X3_ADD1_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 717, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 718, IFC4X3_ADD1_IfcEdge_type); - IFC4X3_ADD1_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 724, IFC4X3_ADD1_IfcProfileDef_type); - IFC4X3_ADD1_IfcPath_type = new entity("IfcPath", false, 726, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 740, IFC4X3_ADD1_IfcPhysicalQuantity_type); - IFC4X3_ADD1_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 754, IFC4X3_ADD1_IfcSurfaceTexture_type); - IFC4X3_ADD1_IfcPlacement_type = new entity("IfcPlacement", true, 755, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 757, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcPoint_type = new entity("IfcPoint", true, 764, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcPointByDistanceExpression_type = new entity("IfcPointByDistanceExpression", false, 765, IFC4X3_ADD1_IfcPoint_type); - IFC4X3_ADD1_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 766, IFC4X3_ADD1_IfcPoint_type); - IFC4X3_ADD1_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 767, IFC4X3_ADD1_IfcPoint_type); - IFC4X3_ADD1_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 772, IFC4X3_ADD1_IfcLoop_type); - IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 769, IFC4X3_ADD1_IfcHalfSpaceSolid_type); - IFC4X3_ADD1_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 784, IFC4X3_ADD1_IfcPresentationItem_type); - IFC4X3_ADD1_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 785, IFC4X3_ADD1_IfcPropertyAbstraction_type); - IFC4X3_ADD1_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 787, IFC4X3_ADD1_IfcPreDefinedItem_type); - IFC4X3_ADD1_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 801, IFC4X3_ADD1_IfcProductRepresentation_type); - IFC4X3_ADD1_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 806, IFC4X3_ADD1_IfcExtendedProperties_type); - IFC4X3_ADD1_IfcProperty_type = new entity("IfcProperty", true, 816, IFC4X3_ADD1_IfcPropertyAbstraction_type); - IFC4X3_ADD1_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 819, IFC4X3_ADD1_IfcRoot_type); - IFC4X3_ADD1_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 820, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 826, IFC4X3_ADD1_IfcPropertyDefinition_type); - IFC4X3_ADD1_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 834, IFC4X3_ADD1_IfcPropertyDefinition_type); - IFC4X3_ADD1_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 848, IFC4X3_ADD1_IfcPropertySetDefinition_type); - IFC4X3_ADD1_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 874, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 883, IFC4X3_ADD1_IfcTimeSeries_type); - IFC4X3_ADD1_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 886, IFC4X3_ADD1_IfcPreDefinedProperties_type); - IFC4X3_ADD1_IfcRelationship_type = new entity("IfcRelationship", true, 916, IFC4X3_ADD1_IfcRoot_type); - IFC4X3_ADD1_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 955, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 956, IFC4X3_ADD1_IfcResourceLevelRelationship_type); - IFC4X3_ADD1_IfcResourceTime_type = new entity("IfcResourceTime", false, 960, IFC4X3_ADD1_IfcSchedulingTime_type); - IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 979, IFC4X3_ADD1_IfcRectangleProfileDef_type); - IFC4X3_ADD1_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 992, IFC4X3_ADD1_IfcPreDefinedProperties_type); - IFC4X3_ADD1_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 993, IFC4X3_ADD1_IfcPreDefinedProperties_type); - IFC4X3_ADD1_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 989, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcSegment_type = new entity("IfcSegment", true, 995, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 1011, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 1018, IFC4X3_ADD1_IfcProperty_type); - IFC4X3_ADD1_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 1031, IFC4X3_ADD1_IfcStructuralConnectionCondition_type); - IFC4X3_ADD1_IfcSolidModel_type = new entity("IfcSolidModel", true, 1036, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 1094, IFC4X3_ADD1_IfcStructuralLoadStatic_type); - IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 1096, IFC4X3_ADD1_IfcStructuralLoadStatic_type); - IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 1097, IFC4X3_ADD1_IfcStructuralLoadStatic_type); - IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 1098, IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type); - IFC4X3_ADD1_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1099, IFC4X3_ADD1_IfcStructuralLoadStatic_type); - IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1100, IFC4X3_ADD1_IfcStructuralLoadSingleForce_type); - IFC4X3_ADD1_IfcSubedge_type = new entity("IfcSubedge", false, 1123, IFC4X3_ADD1_IfcEdge_type); - IFC4X3_ADD1_IfcSurface_type = new entity("IfcSurface", true, 1124, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1138, IFC4X3_ADD1_IfcSurfaceStyleShading_type); - IFC4X3_ADD1_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1142, IFC4X3_ADD1_IfcSolidModel_type); - IFC4X3_ADD1_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1143, IFC4X3_ADD1_IfcSolidModel_type); - IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1144, IFC4X3_ADD1_IfcSweptDiskSolid_type); - IFC4X3_ADD1_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1145, IFC4X3_ADD1_IfcSurface_type); - IFC4X3_ADD1_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1237, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1178, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1184, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1185, IFC4X3_ADD1_IfcTextLiteral_type); - IFC4X3_ADD1_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1188, IFC4X3_ADD1_IfcPreDefinedTextFont_type); - IFC4X3_ADD1_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1231, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcTypeObject_type = new entity("IfcTypeObject", false, 1241, IFC4X3_ADD1_IfcObjectDefinition_type); - IFC4X3_ADD1_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1242, IFC4X3_ADD1_IfcTypeObject_type); - IFC4X3_ADD1_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1243, IFC4X3_ADD1_IfcTypeObject_type); - IFC4X3_ADD1_IfcTypeResource_type = new entity("IfcTypeResource", true, 1244, IFC4X3_ADD1_IfcTypeObject_type); - IFC4X3_ADD1_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1255, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcVector_type = new entity("IfcVector", false, 1261, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1267, IFC4X3_ADD1_IfcLoop_type); - IFC4X3_ADD1_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1311, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcClassification_type); - items.push_back(IFC4X3_ADD1_IfcClassificationReference_type); - IFC4X3_ADD1_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 170, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcClassification_type); - items.push_back(IFC4X3_ADD1_IfcClassificationReference_type); - IFC4X3_ADD1_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 171, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4X3_ADD1_IfcGeometricRepresentationContext_type); - IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 245, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcObjectDefinition_type); - items.push_back(IFC4X3_ADD1_IfcPropertyDefinition_type); - IFC4X3_ADD1_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 296, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcDocumentInformation_type); - items.push_back(IFC4X3_ADD1_IfcDocumentReference_type); - IFC4X3_ADD1_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 333, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcVector_type); - IFC4X3_ADD1_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 527, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4X3_ADD1_IfcAreaMeasure_type); - items.push_back(IFC4X3_ADD1_IfcComplexNumber_type); - items.push_back(IFC4X3_ADD1_IfcContextDependentMeasure_type); - items.push_back(IFC4X3_ADD1_IfcCountMeasure_type); - items.push_back(IFC4X3_ADD1_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_ADD1_IfcElectricCurrentMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4X3_ADD1_IfcMassMeasure_type); - items.push_back(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_ADD1_IfcNumericMeasure_type); - items.push_back(IFC4X3_ADD1_IfcParameterValue_type); - items.push_back(IFC4X3_ADD1_IfcPlaneAngleMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4X3_ADD1_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_ADD1_IfcRatioMeasure_type); - items.push_back(IFC4X3_ADD1_IfcSolidAngleMeasure_type); - items.push_back(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4X3_ADD1_IfcTimeMeasure_type); - items.push_back(IFC4X3_ADD1_IfcVolumeMeasure_type); - IFC4X3_ADD1_IfcMeasureValue_type = new select_type("IfcMeasureValue", 657, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcPoint_type); - items.push_back(IFC4X3_ADD1_IfcVertexPoint_type); - IFC4X3_ADD1_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 768, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcProductDefinitionShape_type); - items.push_back(IFC4X3_ADD1_IfcRepresentationMap_type); - IFC4X3_ADD1_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 803, items); - } - IFC4X3_ADD1_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 828, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(17); - items.push_back(IFC4X3_ADD1_IfcActorRole_type); - items.push_back(IFC4X3_ADD1_IfcAppliedValue_type); - items.push_back(IFC4X3_ADD1_IfcApproval_type); - items.push_back(IFC4X3_ADD1_IfcConstraint_type); - items.push_back(IFC4X3_ADD1_IfcContextDependentUnit_type); - items.push_back(IFC4X3_ADD1_IfcConversionBasedUnit_type); - items.push_back(IFC4X3_ADD1_IfcExternalInformation_type); - items.push_back(IFC4X3_ADD1_IfcExternalReference_type); - items.push_back(IFC4X3_ADD1_IfcMaterialDefinition_type); - items.push_back(IFC4X3_ADD1_IfcOrganization_type); - items.push_back(IFC4X3_ADD1_IfcPerson_type); - items.push_back(IFC4X3_ADD1_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_ADD1_IfcPhysicalQuantity_type); - items.push_back(IFC4X3_ADD1_IfcProfileDef_type); - items.push_back(IFC4X3_ADD1_IfcPropertyAbstraction_type); - items.push_back(IFC4X3_ADD1_IfcShapeAspect_type); - items.push_back(IFC4X3_ADD1_IfcTimeSeries_type); - IFC4X3_ADD1_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 958, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4X3_ADD1_IfcPreDefinedTextFont_type); - IFC4X3_ADD1_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1183, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcDerivedMeasureValue_type); - items.push_back(IFC4X3_ADD1_IfcMeasureValue_type); - items.push_back(IFC4X3_ADD1_IfcSimpleValue_type); - IFC4X3_ADD1_IfcValue_type = new select_type("IfcValue", 1256, items); - } - IFC4X3_ADD1_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X3_ADD1_IfcFaceSurface_type); - IFC4X3_ADD1_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 47, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 63, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 67, IFC4X3_ADD1_IfcPlacement_type); - IFC4X3_ADD1_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 69, IFC4X3_ADD1_IfcPlacement_type); - IFC4X3_ADD1_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 70, IFC4X3_ADD1_IfcPlacement_type); - IFC4X3_ADD1_IfcAxis2PlacementLinear_type = new entity("IfcAxis2PlacementLinear", false, 71, IFC4X3_ADD1_IfcPlacement_type); - IFC4X3_ADD1_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 90, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 99, IFC4X3_ADD1_IfcSurface_type); - IFC4X3_ADD1_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 100, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 102, IFC4X3_ADD1_IfcHalfSpaceSolid_type); - IFC4X3_ADD1_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 265, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 146, IFC4X3_ADD1_IfcPoint_type); - IFC4X3_ADD1_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 147, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 148, IFC4X3_ADD1_IfcCartesianPointList_type); - IFC4X3_ADD1_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 149, IFC4X3_ADD1_IfcCartesianPointList_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 150, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 151, IFC4X3_ADD1_IfcCartesianTransformationOperator_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 152, IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 153, IFC4X3_ADD1_IfcCartesianTransformationOperator_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 154, IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type); - IFC4X3_ADD1_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 165, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcClosedShell_type = new entity("IfcClosedShell", false, 172, IFC4X3_ADD1_IfcConnectedFaceSet_type); - IFC4X3_ADD1_IfcColourRgb_type = new entity("IfcColourRgb", false, 179, IFC4X3_ADD1_IfcColourSpecification_type); - IFC4X3_ADD1_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 189, IFC4X3_ADD1_IfcProperty_type); - IFC4X3_ADD1_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 194, IFC4X3_ADD1_IfcSegment_type); - IFC4X3_ADD1_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 224, IFC4X3_ADD1_IfcTypeResource_type); - IFC4X3_ADD1_IfcContext_type = new entity("IfcContext", true, 225, IFC4X3_ADD1_IfcObjectDefinition_type); - IFC4X3_ADD1_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 260, IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 262, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 264, IFC4X3_ADD1_IfcSolidModel_type); - IFC4X3_ADD1_IfcCurve_type = new entity("IfcCurve", true, 271, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 272, IFC4X3_ADD1_IfcBoundedSurface_type); - IFC4X3_ADD1_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 273, IFC4X3_ADD1_IfcBoundedSurface_type); - IFC4X3_ADD1_IfcCurveSegment_type = new entity("IfcCurveSegment", false, 279, IFC4X3_ADD1_IfcSegment_type); - IFC4X3_ADD1_IfcDirection_type = new entity("IfcDirection", false, 305, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type = new entity("IfcDirectrixCurveSweptAreaSolid", true, 307, IFC4X3_ADD1_IfcSweptAreaSolid_type); - IFC4X3_ADD1_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 364, IFC4X3_ADD1_IfcLoop_type); - IFC4X3_ADD1_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 400, IFC4X3_ADD1_IfcQuantitySet_type); - IFC4X3_ADD1_IfcElementType_type = new entity("IfcElementType", true, 401, IFC4X3_ADD1_IfcTypeProduct_type); - IFC4X3_ADD1_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 393, IFC4X3_ADD1_IfcSurface_type); - IFC4X3_ADD1_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 403, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcEventType_type = new entity("IfcEventType", false, 419, IFC4X3_ADD1_IfcTypeProcess_type); - IFC4X3_ADD1_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 431, IFC4X3_ADD1_IfcSweptAreaSolid_type); - IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 432, IFC4X3_ADD1_IfcExtrudedAreaSolid_type); - IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 434, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 456, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 457, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 465, IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_ADD1_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 496, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 498, IFC4X3_ADD1_IfcFurnishingElementType_type); - IFC4X3_ADD1_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 502, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 504, IFC4X3_ADD1_IfcGeometricSet_type); - IFC4X3_ADD1_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 563, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 544, IFC4X3_ADD1_IfcTessellatedItem_type); - IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 545, IFC4X3_ADD1_IfcIndexedPolygonalFace_type); - IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type = new entity("IfcIndexedPolygonalTextureMap", false, 546, IFC4X3_ADD1_IfcIndexedTextureMap_type); - IFC4X3_ADD1_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 619, IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 575, IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcLine_type = new entity("IfcLine", false, 602, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 625, IFC4X3_ADD1_IfcSolidModel_type); - IFC4X3_ADD1_IfcObject_type = new entity("IfcObject", true, 700, IFC4X3_ADD1_IfcObjectDefinition_type); - IFC4X3_ADD1_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 708, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 709, IFC4X3_ADD1_IfcOffsetCurve_type); - IFC4X3_ADD1_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 710, IFC4X3_ADD1_IfcOffsetCurve_type); - IFC4X3_ADD1_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 711, IFC4X3_ADD1_IfcOffsetCurve_type); - IFC4X3_ADD1_IfcPcurve_type = new entity("IfcPcurve", false, 730, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 756, IFC4X3_ADD1_IfcPlanarExtent_type); - IFC4X3_ADD1_IfcPlane_type = new entity("IfcPlane", false, 759, IFC4X3_ADD1_IfcElementarySurface_type); - IFC4X3_ADD1_IfcPolynomialCurve_type = new entity("IfcPolynomialCurve", false, 773, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 782, IFC4X3_ADD1_IfcPreDefinedItem_type); - IFC4X3_ADD1_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 783, IFC4X3_ADD1_IfcPreDefinedItem_type); - IFC4X3_ADD1_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 786, IFC4X3_ADD1_IfcPropertySetDefinition_type); - IFC4X3_ADD1_IfcProcedureType_type = new entity("IfcProcedureType", false, 796, IFC4X3_ADD1_IfcTypeProcess_type); - IFC4X3_ADD1_IfcProcess_type = new entity("IfcProcess", true, 798, IFC4X3_ADD1_IfcObject_type); - IFC4X3_ADD1_IfcProduct_type = new entity("IfcProduct", true, 800, IFC4X3_ADD1_IfcObject_type); - IFC4X3_ADD1_IfcProject_type = new entity("IfcProject", false, 808, IFC4X3_ADD1_IfcContext_type); - IFC4X3_ADD1_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 813, IFC4X3_ADD1_IfcContext_type); - IFC4X3_ADD1_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 818, IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 821, IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 823, IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 824, IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcPropertySet_type = new entity("IfcPropertySet", false, 825, IFC4X3_ADD1_IfcPropertySetDefinition_type); - IFC4X3_ADD1_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 829, IFC4X3_ADD1_IfcPropertyTemplateDefinition_type); - IFC4X3_ADD1_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 831, IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 832, IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 833, IFC4X3_ADD1_IfcPropertyTemplateDefinition_type); - IFC4X3_ADD1_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 873, IFC4X3_ADD1_IfcRectangleProfileDef_type); - IFC4X3_ADD1_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 875, IFC4X3_ADD1_IfcCsgPrimitive3D_type); - IFC4X3_ADD1_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 876, IFC4X3_ADD1_IfcBoundedSurface_type); - IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 887, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - IFC4X3_ADD1_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 900, IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 901, IFC4X3_ADD1_IfcRelAssigns_type); - IFC4X3_ADD1_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 902, IFC4X3_ADD1_IfcRelAssigns_type); - IFC4X3_ADD1_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 903, IFC4X3_ADD1_IfcRelAssigns_type); - IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 904, IFC4X3_ADD1_IfcRelAssignsToGroup_type); - IFC4X3_ADD1_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 905, IFC4X3_ADD1_IfcRelAssigns_type); - IFC4X3_ADD1_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 906, IFC4X3_ADD1_IfcRelAssigns_type); - IFC4X3_ADD1_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 907, IFC4X3_ADD1_IfcRelAssigns_type); - IFC4X3_ADD1_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 908, IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 909, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 910, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 911, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 912, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 913, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 914, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelAssociatesProfileDef_type = new entity("IfcRelAssociatesProfileDef", false, 915, IFC4X3_ADD1_IfcRelAssociates_type); - IFC4X3_ADD1_IfcRelConnects_type = new entity("IfcRelConnects", true, 917, IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 918, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 919, IFC4X3_ADD1_IfcRelConnectsElements_type); - IFC4X3_ADD1_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 921, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 920, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 922, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 923, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 924, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type); - IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 925, IFC4X3_ADD1_IfcRelConnectsElements_type); - IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 926, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 927, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 928, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 929, IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 930, IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRelDefines_type = new entity("IfcRelDefines", true, 931, IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 932, IFC4X3_ADD1_IfcRelDefines_type); - IFC4X3_ADD1_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 933, IFC4X3_ADD1_IfcRelDefines_type); - IFC4X3_ADD1_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 934, IFC4X3_ADD1_IfcRelDefines_type); - IFC4X3_ADD1_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 935, IFC4X3_ADD1_IfcRelDefines_type); - IFC4X3_ADD1_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 936, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 937, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 938, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelNests_type = new entity("IfcRelNests", false, 939, IFC4X3_ADD1_IfcRelDecomposes_type); - IFC4X3_ADD1_IfcRelPositions_type = new entity("IfcRelPositions", false, 940, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 941, IFC4X3_ADD1_IfcRelDecomposes_type); - IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 942, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelSequence_type = new entity("IfcRelSequence", false, 943, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 944, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 945, IFC4X3_ADD1_IfcRelConnects_type); - IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 946, IFC4X3_ADD1_IfcRelSpaceBoundary_type); - IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 947, IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_ADD1_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 948, IFC4X3_ADD1_IfcRelDecomposes_type); - IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 949, IFC4X3_ADD1_IfcCompositeCurveSegment_type); - IFC4X3_ADD1_IfcResource_type = new entity("IfcResource", true, 954, IFC4X3_ADD1_IfcObject_type); - IFC4X3_ADD1_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 961, IFC4X3_ADD1_IfcSweptAreaSolid_type); - IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 962, IFC4X3_ADD1_IfcRevolvedAreaSolid_type); - IFC4X3_ADD1_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 963, IFC4X3_ADD1_IfcCsgPrimitive3D_type); - IFC4X3_ADD1_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 964, IFC4X3_ADD1_IfcCsgPrimitive3D_type); - IFC4X3_ADD1_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 987, IFC4X3_ADD1_IfcSolidModel_type); - IFC4X3_ADD1_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 988, IFC4X3_ADD1_IfcSectionedSolid_type); - IFC4X3_ADD1_IfcSectionedSurface_type = new entity("IfcSectionedSurface", false, 990, IFC4X3_ADD1_IfcSurface_type); - IFC4X3_ADD1_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 1019, IFC4X3_ADD1_IfcPropertyTemplate_type); - IFC4X3_ADD1_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 1049, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 1050, IFC4X3_ADD1_IfcTypeProduct_type); - IFC4X3_ADD1_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 1052, IFC4X3_ADD1_IfcSpatialElement_type); - IFC4X3_ADD1_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 1053, IFC4X3_ADD1_IfcSpatialElementType_type); - IFC4X3_ADD1_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 1054, IFC4X3_ADD1_IfcSpatialElement_type); - IFC4X3_ADD1_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 1055, IFC4X3_ADD1_IfcSpatialElementType_type); - IFC4X3_ADD1_IfcSphere_type = new entity("IfcSphere", false, 1061, IFC4X3_ADD1_IfcCsgPrimitive3D_type); - IFC4X3_ADD1_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 1062, IFC4X3_ADD1_IfcElementarySurface_type); - IFC4X3_ADD1_IfcSpiral_type = new entity("IfcSpiral", true, 1063, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 1076, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 1088, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1103, IFC4X3_ADD1_IfcStructuralItem_type); - IFC4X3_ADD1_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1108, IFC4X3_ADD1_IfcStructuralActivity_type); - IFC4X3_ADD1_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1113, IFC4X3_ADD1_IfcStructuralMember_type); - IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1115, IFC4X3_ADD1_IfcStructuralSurfaceMember_type); - IFC4X3_ADD1_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1116, IFC4X3_ADD1_IfcStructuralReaction_type); - IFC4X3_ADD1_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1121, IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1125, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1126, IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1129, IFC4X3_ADD1_IfcSweptSurface_type); - IFC4X3_ADD1_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1130, IFC4X3_ADD1_IfcSweptSurface_type); - IFC4X3_ADD1_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1151, IFC4X3_ADD1_IfcFurnishingElementType_type); - IFC4X3_ADD1_IfcTask_type = new entity("IfcTask", false, 1159, IFC4X3_ADD1_IfcProcess_type); - IFC4X3_ADD1_IfcTaskType_type = new entity("IfcTaskType", false, 1163, IFC4X3_ADD1_IfcTypeProcess_type); - IFC4X3_ADD1_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1177, IFC4X3_ADD1_IfcTessellatedItem_type); - IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type = new entity("IfcThirdOrderPolynomialSpiral", false, 1205, IFC4X3_ADD1_IfcSpiral_type); - IFC4X3_ADD1_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1216, IFC4X3_ADD1_IfcElementarySurface_type); - IFC4X3_ADD1_IfcTransportationDeviceType_type = new entity("IfcTransportationDeviceType", true, 1227, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1232, IFC4X3_ADD1_IfcTessellatedFaceSet_type); - IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1233, IFC4X3_ADD1_IfcTriangulatedFaceSet_type); - IFC4X3_ADD1_IfcVehicleType_type = new entity("IfcVehicleType", false, 1264, IFC4X3_ADD1_IfcTransportationDeviceType_type); - IFC4X3_ADD1_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1295, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - IFC4X3_ADD1_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1298, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_ADD1_IfcReference_type); - items.push_back(IFC4X3_ADD1_IfcValue_type); - IFC4X3_ADD1_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 51, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcAxis2Placement2D_type); - items.push_back(IFC4X3_ADD1_IfcAxis2Placement3D_type); - IFC4X3_ADD1_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 68, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_ADD1_IfcBooleanResult_type); - items.push_back(IFC4X3_ADD1_IfcCsgPrimitive3D_type); - items.push_back(IFC4X3_ADD1_IfcHalfSpaceSolid_type); - items.push_back(IFC4X3_ADD1_IfcSolidModel_type); - items.push_back(IFC4X3_ADD1_IfcTessellatedFaceSet_type); - IFC4X3_ADD1_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 88, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcColourSpecification_type); - items.push_back(IFC4X3_ADD1_IfcPreDefinedColour_type); - IFC4X3_ADD1_IfcColour_type = new select_type("IfcColour", 177, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcColourRgb_type); - items.push_back(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type); - IFC4X3_ADD1_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 178, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBooleanResult_type); - items.push_back(IFC4X3_ADD1_IfcCsgPrimitive3D_type); - IFC4X3_ADD1_IfcCsgSelect_type = new select_type("IfcCsgSelect", 263, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcCurveStyleFont_type); - items.push_back(IFC4X3_ADD1_IfcPreDefinedCurveFont_type); - IFC4X3_ADD1_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 284, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X3_ADD1_IfcColour_type); - items.push_back(IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X3_ADD1_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X3_ADD1_IfcFillAreaStyleTiles_type); - IFC4X3_ADD1_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 458, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcCurve_type); - items.push_back(IFC4X3_ADD1_IfcPoint_type); - items.push_back(IFC4X3_ADD1_IfcSurface_type); - IFC4X3_ADD1_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 510, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcDirection_type); - items.push_back(IFC4X3_ADD1_IfcVirtualGridIntersection_type); - IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 523, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_ADD1_IfcAppliedValue_type); - items.push_back(IFC4X3_ADD1_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_ADD1_IfcReference_type); - items.push_back(IFC4X3_ADD1_IfcTable_type); - items.push_back(IFC4X3_ADD1_IfcTimeSeries_type); - items.push_back(IFC4X3_ADD1_IfcValue_type); - IFC4X3_ADD1_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 669, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcProcess_type); - items.push_back(IFC4X3_ADD1_IfcTypeProcess_type); - IFC4X3_ADD1_IfcProcessSelect_type = new select_type("IfcProcessSelect", 799, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcProduct_type); - items.push_back(IFC4X3_ADD1_IfcTypeProduct_type); - IFC4X3_ADD1_IfcProductSelect_type = new select_type("IfcProductSelect", 804, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcPropertySetDefinition_type); - items.push_back(IFC4X3_ADD1_IfcPropertySetDefinitionSet_type); - IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 827, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcResource_type); - items.push_back(IFC4X3_ADD1_IfcTypeResource_type); - IFC4X3_ADD1_IfcResourceSelect_type = new select_type("IfcResourceSelect", 959, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcClosedShell_type); - items.push_back(IFC4X3_ADD1_IfcOpenShell_type); - IFC4X3_ADD1_IfcShell_type = new select_type("IfcShell", 1010, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcClosedShell_type); - items.push_back(IFC4X3_ADD1_IfcSolidModel_type); - IFC4X3_ADD1_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 1037, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X3_ADD1_IfcFaceSurface_type); - items.push_back(IFC4X3_ADD1_IfcSurface_type); - IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1131, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcCartesianPoint_type); - items.push_back(IFC4X3_ADD1_IfcParameterValue_type); - IFC4X3_ADD1_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1236, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcDirection_type); - items.push_back(IFC4X3_ADD1_IfcVector_type); - IFC4X3_ADD1_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1262, items); - } - IFC4X3_ADD1_IfcActor_type = new entity("IfcActor", false, 6, IFC4X3_ADD1_IfcObject_type); - IFC4X3_ADD1_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X3_ADD1_IfcManifoldSolidBrep_type); - IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X3_ADD1_IfcAdvancedBrep_type); - IFC4X3_ADD1_IfcAnnotation_type = new entity("IfcAnnotation", false, 46, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 110, IFC4X3_ADD1_IfcBoundedSurface_type); - IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 112, IFC4X3_ADD1_IfcBSplineSurface_type); - IFC4X3_ADD1_IfcBlock_type = new entity("IfcBlock", false, 82, IFC4X3_ADD1_IfcCsgPrimitive3D_type); - IFC4X3_ADD1_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 87, IFC4X3_ADD1_IfcBooleanResult_type); - IFC4X3_ADD1_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 98, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 120, IFC4X3_ADD1_IfcSpatialStructureElement_type); - IFC4X3_ADD1_IfcBuiltElementType_type = new entity("IfcBuiltElementType", false, 124, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcChimneyType_type = new entity("IfcChimneyType", false, 161, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 164, IFC4X3_ADD1_IfcCircleProfileDef_type); - IFC4X3_ADD1_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 167, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcClothoid_type = new entity("IfcClothoid", false, 173, IFC4X3_ADD1_IfcSpiral_type); - IFC4X3_ADD1_IfcColumnType_type = new entity("IfcColumnType", false, 183, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 190, IFC4X3_ADD1_IfcPropertyTemplate_type); - IFC4X3_ADD1_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 192, IFC4X3_ADD1_IfcBoundedCurve_type); - IFC4X3_ADD1_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 193, IFC4X3_ADD1_IfcCompositeCurve_type); - IFC4X3_ADD1_IfcConic_type = new entity("IfcConic", true, 203, IFC4X3_ADD1_IfcCurve_type); - IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 215, IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 218, IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 221, IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 223, IFC4X3_ADD1_IfcResource_type); - IFC4X3_ADD1_IfcControl_type = new entity("IfcControl", true, 228, IFC4X3_ADD1_IfcObject_type); - IFC4X3_ADD1_IfcCosineSpiral_type = new entity("IfcCosineSpiral", false, 246, IFC4X3_ADD1_IfcSpiral_type); - IFC4X3_ADD1_IfcCostItem_type = new entity("IfcCostItem", false, 247, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 249, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcCourseType_type = new entity("IfcCourseType", false, 254, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcCoveringType_type = new entity("IfcCoveringType", false, 257, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcCrewResource_type = new entity("IfcCrewResource", false, 259, IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 268, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 285, IFC4X3_ADD1_IfcElementarySurface_type); - IFC4X3_ADD1_IfcDeepFoundationType_type = new entity("IfcDeepFoundationType", false, 295, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type = new entity("IfcDirectrixDerivedReferenceSweptAreaSolid", false, 308, IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type); - IFC4X3_ADD1_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 322, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 324, IFC4X3_ADD1_IfcDistributionElementType_type); - IFC4X3_ADD1_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 336, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - IFC4X3_ADD1_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 339, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - IFC4X3_ADD1_IfcDoorType_type = new entity("IfcDoorType", false, 340, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 344, IFC4X3_ADD1_IfcPreDefinedColour_type); - IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 345, IFC4X3_ADD1_IfcPreDefinedCurveFont_type); - IFC4X3_ADD1_IfcElement_type = new entity("IfcElement", true, 392, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 394, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 395, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcElementComponent_type = new entity("IfcElementComponent", true, 397, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 398, IFC4X3_ADD1_IfcElementType_type); - IFC4X3_ADD1_IfcEllipse_type = new entity("IfcEllipse", false, 402, IFC4X3_ADD1_IfcConic_type); - IFC4X3_ADD1_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 405, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcEngineType_type = new entity("IfcEngineType", false, 408, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 411, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 414, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcEvent_type = new entity("IfcEvent", false, 416, IFC4X3_ADD1_IfcProcess_type); - IFC4X3_ADD1_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 430, IFC4X3_ADD1_IfcSpatialElement_type); - IFC4X3_ADD1_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 438, IFC4X3_ADD1_IfcManifoldSolidBrep_type); - IFC4X3_ADD1_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 439, IFC4X3_ADD1_IfcFacetedBrep_type); - IFC4X3_ADD1_IfcFacility_type = new entity("IfcFacility", false, 440, IFC4X3_ADD1_IfcSpatialStructureElement_type); - IFC4X3_ADD1_IfcFacilityPart_type = new entity("IfcFacilityPart", true, 441, IFC4X3_ADD1_IfcSpatialStructureElement_type); - IFC4X3_ADD1_IfcFacilityPartCommon_type = new entity("IfcFacilityPartCommon", false, 442, IFC4X3_ADD1_IfcFacilityPart_type); - IFC4X3_ADD1_IfcFastener_type = new entity("IfcFastener", false, 449, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcFastenerType_type = new entity("IfcFastenerType", false, 450, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 452, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 453, IFC4X3_ADD1_IfcFeatureElement_type); - IFC4X3_ADD1_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 454, IFC4X3_ADD1_IfcFeatureElement_type); - IFC4X3_ADD1_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 467, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 470, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 475, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 478, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 480, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 482, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 484, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 486, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcFootingType_type = new entity("IfcFootingType", false, 491, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 495, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcFurniture_type = new entity("IfcFurniture", false, 497, IFC4X3_ADD1_IfcFurnishingElement_type); - IFC4X3_ADD1_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 501, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcGeotechnicalElement_type = new entity("IfcGeotechnicalElement", true, 514, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcGeotechnicalStratum_type = new entity("IfcGeotechnicalStratum", false, 515, IFC4X3_ADD1_IfcGeotechnicalElement_type); - IFC4X3_ADD1_IfcGradientCurve_type = new entity("IfcGradientCurve", false, 519, IFC4X3_ADD1_IfcCompositeCurve_type); - IFC4X3_ADD1_IfcGroup_type = new entity("IfcGroup", false, 525, IFC4X3_ADD1_IfcObject_type); - IFC4X3_ADD1_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 529, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 534, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcImpactProtectionDevice_type = new entity("IfcImpactProtectionDevice", false, 539, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcImpactProtectionDeviceType_type = new entity("IfcImpactProtectionDeviceType", false, 540, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 543, IFC4X3_ADD1_IfcBoundedCurve_type); - IFC4X3_ADD1_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 553, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); - IFC4X3_ADD1_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 557, IFC4X3_ADD1_IfcSurfaceCurve_type); - IFC4X3_ADD1_IfcInventory_type = new entity("IfcInventory", false, 558, IFC4X3_ADD1_IfcGroup_type); - IFC4X3_ADD1_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 566, IFC4X3_ADD1_IfcFlowFittingType_type); - IFC4X3_ADD1_IfcKerbType_type = new entity("IfcKerbType", false, 569, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcLaborResource_type = new entity("IfcLaborResource", false, 574, IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcLampType_type = new entity("IfcLampType", false, 579, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 593, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcLinearElement_type = new entity("IfcLinearElement", false, 603, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcLiquidTerminalType_type = new entity("IfcLiquidTerminalType", false, 612, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcMarineFacility_type = new entity("IfcMarineFacility", false, 629, IFC4X3_ADD1_IfcFacility_type); - IFC4X3_ADD1_IfcMarinePart_type = new entity("IfcMarinePart", false, 631, IFC4X3_ADD1_IfcFacilityPart_type); - IFC4X3_ADD1_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 659, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 660, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 663, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcMemberType_type = new entity("IfcMemberType", false, 666, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type = new entity("IfcMobileTelecommunicationsApplianceType", false, 672, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcMooringDeviceType_type = new entity("IfcMooringDeviceType", false, 688, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 691, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcNavigationElementType_type = new entity("IfcNavigationElementType", false, 695, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcOccupant_type = new entity("IfcOccupant", false, 706, IFC4X3_ADD1_IfcActor_type); - IFC4X3_ADD1_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 713, IFC4X3_ADD1_IfcFeatureElementSubtraction_type); - IFC4X3_ADD1_IfcOutletType_type = new entity("IfcOutletType", false, 721, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcPavementType_type = new entity("IfcPavementType", false, 728, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 731, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 734, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - IFC4X3_ADD1_IfcPermit_type = new entity("IfcPermit", false, 735, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcPileType_type = new entity("IfcPileType", false, 746, IFC4X3_ADD1_IfcDeepFoundationType_type); - IFC4X3_ADD1_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 749, IFC4X3_ADD1_IfcFlowFittingType_type); - IFC4X3_ADD1_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 752, IFC4X3_ADD1_IfcFlowSegmentType_type); - IFC4X3_ADD1_IfcPlateType_type = new entity("IfcPlateType", false, 762, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 770, IFC4X3_ADD1_IfcTessellatedFaceSet_type); - IFC4X3_ADD1_IfcPolyline_type = new entity("IfcPolyline", false, 771, IFC4X3_ADD1_IfcBoundedCurve_type); - IFC4X3_ADD1_IfcPort_type = new entity("IfcPort", true, 774, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 775, IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcProcedure_type = new entity("IfcProcedure", false, 795, IFC4X3_ADD1_IfcProcess_type); - IFC4X3_ADD1_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 814, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 811, IFC4X3_ADD1_IfcFeatureElementAddition_type); - IFC4X3_ADD1_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 839, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcPumpType_type = new entity("IfcPumpType", false, 842, IFC4X3_ADD1_IfcFlowMovingDeviceType_type); - IFC4X3_ADD1_IfcRailType_type = new entity("IfcRailType", false, 857, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcRailingType_type = new entity("IfcRailingType", false, 855, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcRailway_type = new entity("IfcRailway", false, 859, IFC4X3_ADD1_IfcFacility_type); - IFC4X3_ADD1_IfcRailwayPart_type = new entity("IfcRailwayPart", false, 860, IFC4X3_ADD1_IfcFacilityPart_type); - IFC4X3_ADD1_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 865, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcRampType_type = new entity("IfcRampType", false, 867, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 871, IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type); - IFC4X3_ADD1_IfcReferent_type = new entity("IfcReferent", false, 880, IFC4X3_ADD1_IfcPositioningElement_type); - IFC4X3_ADD1_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 893, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 894, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 895, IFC4X3_ADD1_IfcReinforcingElement_type); - IFC4X3_ADD1_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 896, IFC4X3_ADD1_IfcReinforcingElementType_type); - IFC4X3_ADD1_IfcRelAdheresToElement_type = new entity("IfcRelAdheresToElement", false, 898, IFC4X3_ADD1_IfcRelDecomposes_type); - IFC4X3_ADD1_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 899, IFC4X3_ADD1_IfcRelDecomposes_type); - IFC4X3_ADD1_IfcRoad_type = new entity("IfcRoad", false, 966, IFC4X3_ADD1_IfcFacility_type); - IFC4X3_ADD1_IfcRoadPart_type = new entity("IfcRoadPart", false, 967, IFC4X3_ADD1_IfcFacilityPart_type); - IFC4X3_ADD1_IfcRoofType_type = new entity("IfcRoofType", false, 972, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 981, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 984, IFC4X3_ADD1_IfcSurfaceCurve_type); - IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type = new entity("IfcSecondOrderPolynomialSpiral", false, 985, IFC4X3_ADD1_IfcSpiral_type); - IFC4X3_ADD1_IfcSegmentedReferenceCurve_type = new entity("IfcSegmentedReferenceCurve", false, 996, IFC4X3_ADD1_IfcCompositeCurve_type); - IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type = new entity("IfcSeventhOrderPolynomialSpiral", false, 1002, IFC4X3_ADD1_IfcSpiral_type); - IFC4X3_ADD1_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 1004, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcSign_type = new entity("IfcSign", false, 1012, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcSignType_type = new entity("IfcSignType", false, 1016, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcSignalType_type = new entity("IfcSignalType", false, 1014, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcSineSpiral_type = new entity("IfcSineSpiral", false, 1022, IFC4X3_ADD1_IfcSpiral_type); - IFC4X3_ADD1_IfcSite_type = new entity("IfcSite", false, 1024, IFC4X3_ADD1_IfcSpatialStructureElement_type); - IFC4X3_ADD1_IfcSlabType_type = new entity("IfcSlabType", false, 1029, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 1033, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcSpace_type = new entity("IfcSpace", false, 1042, IFC4X3_ADD1_IfcSpatialStructureElement_type); - IFC4X3_ADD1_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 1045, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcSpaceType_type = new entity("IfcSpaceType", false, 1047, IFC4X3_ADD1_IfcSpatialStructureElementType_type); - IFC4X3_ADD1_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 1065, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 1069, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcStairType_type = new entity("IfcStairType", false, 1071, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 1075, IFC4X3_ADD1_IfcStructuralActivity_type); - IFC4X3_ADD1_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 1079, IFC4X3_ADD1_IfcStructuralItem_type); - IFC4X3_ADD1_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 1081, IFC4X3_ADD1_IfcStructuralAction_type); - IFC4X3_ADD1_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 1083, IFC4X3_ADD1_IfcStructuralConnection_type); - IFC4X3_ADD1_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 1084, IFC4X3_ADD1_IfcStructuralMember_type); - IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 1086, IFC4X3_ADD1_IfcStructuralCurveMember_type); - IFC4X3_ADD1_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 1087, IFC4X3_ADD1_IfcStructuralReaction_type); - IFC4X3_ADD1_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 1089, IFC4X3_ADD1_IfcStructuralCurveAction_type); - IFC4X3_ADD1_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 1093, IFC4X3_ADD1_IfcGroup_type); - IFC4X3_ADD1_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1105, IFC4X3_ADD1_IfcStructuralAction_type); - IFC4X3_ADD1_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1106, IFC4X3_ADD1_IfcStructuralConnection_type); - IFC4X3_ADD1_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1107, IFC4X3_ADD1_IfcStructuralReaction_type); - IFC4X3_ADD1_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1109, IFC4X3_ADD1_IfcGroup_type); - IFC4X3_ADD1_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1110, IFC4X3_ADD1_IfcStructuralAction_type); - IFC4X3_ADD1_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1112, IFC4X3_ADD1_IfcStructuralConnection_type); - IFC4X3_ADD1_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1120, IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1127, IFC4X3_ADD1_IfcFeatureElement_type); - IFC4X3_ADD1_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1147, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcSystem_type = new entity("IfcSystem", false, 1149, IFC4X3_ADD1_IfcGroup_type); - IFC4X3_ADD1_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1150, IFC4X3_ADD1_IfcFurnishingElement_type); - IFC4X3_ADD1_IfcTankType_type = new entity("IfcTankType", false, 1157, IFC4X3_ADD1_IfcFlowStorageDeviceType_type); - IFC4X3_ADD1_IfcTendon_type = new entity("IfcTendon", false, 1168, IFC4X3_ADD1_IfcReinforcingElement_type); - IFC4X3_ADD1_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1169, IFC4X3_ADD1_IfcReinforcingElement_type); - IFC4X3_ADD1_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1170, IFC4X3_ADD1_IfcReinforcingElementType_type); - IFC4X3_ADD1_IfcTendonConduit_type = new entity("IfcTendonConduit", false, 1172, IFC4X3_ADD1_IfcReinforcingElement_type); - IFC4X3_ADD1_IfcTendonConduitType_type = new entity("IfcTendonConduitType", false, 1173, IFC4X3_ADD1_IfcReinforcingElementType_type); - IFC4X3_ADD1_IfcTendonType_type = new entity("IfcTendonType", false, 1175, IFC4X3_ADD1_IfcReinforcingElementType_type); - IFC4X3_ADD1_IfcTrackElementType_type = new entity("IfcTrackElementType", false, 1219, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcTransformerType_type = new entity("IfcTransformerType", false, 1222, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1229, IFC4X3_ADD1_IfcTransportationDeviceType_type); - IFC4X3_ADD1_IfcTransportationDevice_type = new entity("IfcTransportationDevice", true, 1226, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1234, IFC4X3_ADD1_IfcBoundedCurve_type); - IFC4X3_ADD1_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1239, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1250, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcValveType_type = new entity("IfcValveType", false, 1258, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcVehicle_type = new entity("IfcVehicle", false, 1263, IFC4X3_ADD1_IfcTransportationDevice_type); - IFC4X3_ADD1_IfcVibrationDamper_type = new entity("IfcVibrationDamper", false, 1269, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcVibrationDamperType_type = new entity("IfcVibrationDamperType", false, 1270, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1272, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1273, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1275, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1278, IFC4X3_ADD1_IfcFeatureElementSubtraction_type); - IFC4X3_ADD1_IfcWallType_type = new entity("IfcWallType", false, 1284, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1290, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcWindowType_type = new entity("IfcWindowType", false, 1299, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1302, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcWorkControl_type = new entity("IfcWorkControl", true, 1304, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1305, IFC4X3_ADD1_IfcWorkControl_type); - IFC4X3_ADD1_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1307, IFC4X3_ADD1_IfcWorkControl_type); - IFC4X3_ADD1_IfcZone_type = new entity("IfcZone", false, 1310, IFC4X3_ADD1_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X3_ADD1_IfcCurveStyleFontSelect_type); - IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 274, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_ADD1_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X3_ADD1_IfcPcurve_type); - items.push_back(IFC4X3_ADD1_IfcSurfaceCurve_type); - IFC4X3_ADD1_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 277, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcBoundedCurve_type); - items.push_back(IFC4X3_ADD1_IfcEdgeCurve_type); - IFC4X3_ADD1_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 278, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcElement_type); - items.push_back(IFC4X3_ADD1_IfcSpatialElement_type); - IFC4X3_ADD1_IfcInterferenceSelect_type = new select_type("IfcInterferenceSelect", 555, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcGroup_type); - items.push_back(IFC4X3_ADD1_IfcProduct_type); - IFC4X3_ADD1_IfcSpatialReferenceSelect_type = new select_type("IfcSpatialReferenceSelect", 1051, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcElement_type); - items.push_back(IFC4X3_ADD1_IfcStructuralItem_type); - IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 1077, items); - } - IFC4X3_ADD1_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X3_ADD1_IfcControl_type); - IFC4X3_ADD1_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcAlignmentCant_type = new entity("IfcAlignmentCant", false, 30, IFC4X3_ADD1_IfcLinearElement_type); - IFC4X3_ADD1_IfcAlignmentHorizontal_type = new entity("IfcAlignmentHorizontal", false, 33, IFC4X3_ADD1_IfcLinearElement_type); - IFC4X3_ADD1_IfcAlignmentSegment_type = new entity("IfcAlignmentSegment", false, 37, IFC4X3_ADD1_IfcLinearElement_type); - IFC4X3_ADD1_IfcAlignmentVertical_type = new entity("IfcAlignmentVertical", false, 39, IFC4X3_ADD1_IfcLinearElement_type); - IFC4X3_ADD1_IfcAsset_type = new entity("IfcAsset", false, 62, IFC4X3_ADD1_IfcGroup_type); - IFC4X3_ADD1_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 65, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 107, IFC4X3_ADD1_IfcBoundedCurve_type); - IFC4X3_ADD1_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 109, IFC4X3_ADD1_IfcBSplineCurve_type); - IFC4X3_ADD1_IfcBeamType_type = new entity("IfcBeamType", false, 73, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcBearingType_type = new entity("IfcBearingType", false, 76, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcBoilerType_type = new entity("IfcBoilerType", false, 84, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 93, IFC4X3_ADD1_IfcCompositeCurveOnSurface_type); - IFC4X3_ADD1_IfcBridge_type = new entity("IfcBridge", false, 103, IFC4X3_ADD1_IfcFacility_type); - IFC4X3_ADD1_IfcBridgePart_type = new entity("IfcBridgePart", false, 104, IFC4X3_ADD1_IfcFacilityPart_type); - IFC4X3_ADD1_IfcBuilding_type = new entity("IfcBuilding", false, 113, IFC4X3_ADD1_IfcFacility_type); - IFC4X3_ADD1_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 114, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 115, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 118, IFC4X3_ADD1_IfcBuiltElementType_type); - IFC4X3_ADD1_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 121, IFC4X3_ADD1_IfcSystem_type); - IFC4X3_ADD1_IfcBuiltElement_type = new entity("IfcBuiltElement", false, 123, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcBuiltSystem_type = new entity("IfcBuiltSystem", false, 125, IFC4X3_ADD1_IfcSystem_type); - IFC4X3_ADD1_IfcBurnerType_type = new entity("IfcBurnerType", false, 128, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 131, IFC4X3_ADD1_IfcFlowFittingType_type); - IFC4X3_ADD1_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 134, IFC4X3_ADD1_IfcFlowSegmentType_type); - IFC4X3_ADD1_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 137, IFC4X3_ADD1_IfcFlowFittingType_type); - IFC4X3_ADD1_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 140, IFC4X3_ADD1_IfcFlowSegmentType_type); - IFC4X3_ADD1_IfcCaissonFoundationType_type = new entity("IfcCaissonFoundationType", false, 143, IFC4X3_ADD1_IfcDeepFoundationType_type); - IFC4X3_ADD1_IfcChillerType_type = new entity("IfcChillerType", false, 158, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcChimney_type = new entity("IfcChimney", false, 160, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcCircle_type = new entity("IfcCircle", false, 163, IFC4X3_ADD1_IfcConic_type); - IFC4X3_ADD1_IfcCivilElement_type = new entity("IfcCivilElement", false, 166, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcCoilType_type = new entity("IfcCoilType", false, 175, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcColumn_type = new entity("IfcColumn", false, 182, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 186, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcCompressorType_type = new entity("IfcCompressorType", false, 198, IFC4X3_ADD1_IfcFlowMovingDeviceType_type); - IFC4X3_ADD1_IfcCondenserType_type = new entity("IfcCondenserType", false, 201, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 214, IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 217, IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 220, IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcConveyorSegmentType_type = new entity("IfcConveyorSegmentType", false, 235, IFC4X3_ADD1_IfcFlowSegmentType_type); - IFC4X3_ADD1_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 238, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 241, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcCourse_type = new entity("IfcCourse", false, 253, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcCovering_type = new entity("IfcCovering", false, 256, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 267, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcDamperType_type = new entity("IfcDamperType", false, 287, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcDeepFoundation_type = new entity("IfcDeepFoundation", false, 294, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 309, IFC4X3_ADD1_IfcElementComponent_type); - IFC4X3_ADD1_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 310, IFC4X3_ADD1_IfcElementComponentType_type); - IFC4X3_ADD1_IfcDistributionBoardType_type = new entity("IfcDistributionBoardType", false, 313, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 316, IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 320, IFC4X3_ADD1_IfcDistributionElementType_type); - IFC4X3_ADD1_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 321, IFC4X3_ADD1_IfcElement_type); - IFC4X3_ADD1_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 323, IFC4X3_ADD1_IfcDistributionElement_type); - IFC4X3_ADD1_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 325, IFC4X3_ADD1_IfcPort_type); - IFC4X3_ADD1_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 327, IFC4X3_ADD1_IfcSystem_type); - IFC4X3_ADD1_IfcDoor_type = new entity("IfcDoor", false, 335, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 347, IFC4X3_ADD1_IfcFlowFittingType_type); - IFC4X3_ADD1_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 350, IFC4X3_ADD1_IfcFlowSegmentType_type); - IFC4X3_ADD1_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 353, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); - IFC4X3_ADD1_IfcEarthworksCut_type = new entity("IfcEarthworksCut", false, 357, IFC4X3_ADD1_IfcFeatureElementSubtraction_type); - IFC4X3_ADD1_IfcEarthworksElement_type = new entity("IfcEarthworksElement", false, 359, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcEarthworksFill_type = new entity("IfcEarthworksFill", false, 360, IFC4X3_ADD1_IfcEarthworksElement_type); - IFC4X3_ADD1_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 366, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 373, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 376, IFC4X3_ADD1_IfcFlowStorageDeviceType_type); - IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type = new entity("IfcElectricFlowTreatmentDeviceType", false, 379, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); - IFC4X3_ADD1_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 382, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 385, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - IFC4X3_ADD1_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 389, IFC4X3_ADD1_IfcFlowControllerType_type); - IFC4X3_ADD1_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 404, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcEngine_type = new entity("IfcEngine", false, 407, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 410, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcEvaporator_type = new entity("IfcEvaporator", false, 413, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 428, IFC4X3_ADD1_IfcExternalSpatialStructureElement_type); - IFC4X3_ADD1_IfcFanType_type = new entity("IfcFanType", false, 447, IFC4X3_ADD1_IfcFlowMovingDeviceType_type); - IFC4X3_ADD1_IfcFilterType_type = new entity("IfcFilterType", false, 460, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); - IFC4X3_ADD1_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 463, IFC4X3_ADD1_IfcFlowTerminalType_type); - IFC4X3_ADD1_IfcFlowController_type = new entity("IfcFlowController", false, 466, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 469, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 472, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 474, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 477, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 479, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 481, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 483, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 485, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcFooting_type = new entity("IfcFooting", false, 490, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcGeotechnicalAssembly_type = new entity("IfcGeotechnicalAssembly", true, 513, IFC4X3_ADD1_IfcGeotechnicalElement_type); - IFC4X3_ADD1_IfcGrid_type = new entity("IfcGrid", false, 520, IFC4X3_ADD1_IfcPositioningElement_type); - IFC4X3_ADD1_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 528, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcHumidifier_type = new entity("IfcHumidifier", false, 533, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcInterceptor_type = new entity("IfcInterceptor", false, 552, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); - IFC4X3_ADD1_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 565, IFC4X3_ADD1_IfcFlowFitting_type); - IFC4X3_ADD1_IfcKerb_type = new entity("IfcKerb", false, 568, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcLamp_type = new entity("IfcLamp", false, 578, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcLightFixture_type = new entity("IfcLightFixture", false, 592, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", false, 607, IFC4X3_ADD1_IfcPositioningElement_type); - IFC4X3_ADD1_IfcLiquidTerminal_type = new entity("IfcLiquidTerminal", false, 611, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 662, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcMember_type = new entity("IfcMember", false, 665, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type = new entity("IfcMobileTelecommunicationsAppliance", false, 671, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcMooringDevice_type = new entity("IfcMooringDevice", false, 687, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 690, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcNavigationElement_type = new entity("IfcNavigationElement", false, 694, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 719, IFC4X3_ADD1_IfcBoundaryCurve_type); - IFC4X3_ADD1_IfcOutlet_type = new entity("IfcOutlet", false, 720, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcPavement_type = new entity("IfcPavement", false, 727, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcPile_type = new entity("IfcPile", false, 744, IFC4X3_ADD1_IfcDeepFoundation_type); - IFC4X3_ADD1_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 748, IFC4X3_ADD1_IfcFlowFitting_type); - IFC4X3_ADD1_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 751, IFC4X3_ADD1_IfcFlowSegment_type); - IFC4X3_ADD1_IfcPlate_type = new entity("IfcPlate", false, 761, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 835, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 837, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcPump_type = new entity("IfcPump", false, 841, IFC4X3_ADD1_IfcFlowMovingDevice_type); - IFC4X3_ADD1_IfcRail_type = new entity("IfcRail", false, 853, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcRailing_type = new entity("IfcRailing", false, 854, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcRamp_type = new entity("IfcRamp", false, 863, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcRampFlight_type = new entity("IfcRampFlight", false, 864, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 870, IFC4X3_ADD1_IfcBSplineCurveWithKnots_type); - IFC4X3_ADD1_IfcReinforcedSoil_type = new entity("IfcReinforcedSoil", false, 884, IFC4X3_ADD1_IfcEarthworksElement_type); - IFC4X3_ADD1_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 888, IFC4X3_ADD1_IfcReinforcingElement_type); - IFC4X3_ADD1_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 891, IFC4X3_ADD1_IfcReinforcingElementType_type); - IFC4X3_ADD1_IfcRoof_type = new entity("IfcRoof", false, 971, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 980, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcSensorType_type = new entity("IfcSensorType", false, 999, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 1003, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcSignal_type = new entity("IfcSignal", false, 1013, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcSlab_type = new entity("IfcSlab", false, 1028, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 1032, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 1044, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 1064, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcStair_type = new entity("IfcStair", false, 1067, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcStairFlight_type = new entity("IfcStairFlight", false, 1068, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 1078, IFC4X3_ADD1_IfcSystem_type); - IFC4X3_ADD1_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 1091, IFC4X3_ADD1_IfcStructuralLoadGroup_type); - IFC4X3_ADD1_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1104, IFC4X3_ADD1_IfcStructuralSurfaceAction_type); - IFC4X3_ADD1_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1146, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcTank_type = new entity("IfcTank", false, 1156, IFC4X3_ADD1_IfcFlowStorageDevice_type); - IFC4X3_ADD1_IfcTrackElement_type = new entity("IfcTrackElement", false, 1218, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcTransformer_type = new entity("IfcTransformer", false, 1221, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcTransportElement_type = new entity("IfcTransportElement", false, 1228, IFC4X3_ADD1_IfcTransportationDevice_type); - IFC4X3_ADD1_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1238, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1247, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1249, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcValve_type = new entity("IfcValve", false, 1257, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcWall_type = new entity("IfcWall", false, 1282, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1283, IFC4X3_ADD1_IfcWall_type); - IFC4X3_ADD1_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1289, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcWindow_type = new entity("IfcWindow", false, 1294, IFC4X3_ADD1_IfcBuiltElement_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_ADD1_IfcExternalSpatialElement_type); - items.push_back(IFC4X3_ADD1_IfcSpace_type); - IFC4X3_ADD1_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 1043, items); - } - IFC4X3_ADD1_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X3_ADD1_IfcLinearPositioningElement_type); - IFC4X3_ADD1_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 64, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcBeam_type = new entity("IfcBeam", false, 72, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcBearing_type = new entity("IfcBearing", false, 75, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcBoiler_type = new entity("IfcBoiler", false, 83, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcBorehole_type = new entity("IfcBorehole", false, 91, IFC4X3_ADD1_IfcGeotechnicalAssembly_type); - IFC4X3_ADD1_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 117, IFC4X3_ADD1_IfcBuiltElement_type); - IFC4X3_ADD1_IfcBurner_type = new entity("IfcBurner", false, 127, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 130, IFC4X3_ADD1_IfcFlowFitting_type); - IFC4X3_ADD1_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 133, IFC4X3_ADD1_IfcFlowSegment_type); - IFC4X3_ADD1_IfcCableFitting_type = new entity("IfcCableFitting", false, 136, IFC4X3_ADD1_IfcFlowFitting_type); - IFC4X3_ADD1_IfcCableSegment_type = new entity("IfcCableSegment", false, 139, IFC4X3_ADD1_IfcFlowSegment_type); - IFC4X3_ADD1_IfcCaissonFoundation_type = new entity("IfcCaissonFoundation", false, 142, IFC4X3_ADD1_IfcDeepFoundation_type); - IFC4X3_ADD1_IfcChiller_type = new entity("IfcChiller", false, 157, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcCoil_type = new entity("IfcCoil", false, 174, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 185, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcCompressor_type = new entity("IfcCompressor", false, 197, IFC4X3_ADD1_IfcFlowMovingDevice_type); - IFC4X3_ADD1_IfcCondenser_type = new entity("IfcCondenser", false, 200, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcControllerType_type = new entity("IfcControllerType", false, 230, IFC4X3_ADD1_IfcDistributionControlElementType_type); - IFC4X3_ADD1_IfcConveyorSegment_type = new entity("IfcConveyorSegment", false, 234, IFC4X3_ADD1_IfcFlowSegment_type); - IFC4X3_ADD1_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 237, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 240, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcDamper_type = new entity("IfcDamper", false, 286, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcDistributionBoard_type = new entity("IfcDistributionBoard", false, 312, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 315, IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 318, IFC4X3_ADD1_IfcDistributionSystem_type); - IFC4X3_ADD1_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 319, IFC4X3_ADD1_IfcDistributionElement_type); - IFC4X3_ADD1_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 346, IFC4X3_ADD1_IfcFlowFitting_type); - IFC4X3_ADD1_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 349, IFC4X3_ADD1_IfcFlowSegment_type); - IFC4X3_ADD1_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 352, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); - IFC4X3_ADD1_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 365, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 372, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 375, IFC4X3_ADD1_IfcFlowStorageDevice_type); - IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type = new entity("IfcElectricFlowTreatmentDevice", false, 378, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); - IFC4X3_ADD1_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 381, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 384, IFC4X3_ADD1_IfcEnergyConversionDevice_type); - IFC4X3_ADD1_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 388, IFC4X3_ADD1_IfcFlowController_type); - IFC4X3_ADD1_IfcFan_type = new entity("IfcFan", false, 446, IFC4X3_ADD1_IfcFlowMovingDevice_type); - IFC4X3_ADD1_IfcFilter_type = new entity("IfcFilter", false, 459, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); - IFC4X3_ADD1_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 462, IFC4X3_ADD1_IfcFlowTerminal_type); - IFC4X3_ADD1_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 471, IFC4X3_ADD1_IfcDistributionControlElement_type); - IFC4X3_ADD1_IfcGeomodel_type = new entity("IfcGeomodel", false, 511, IFC4X3_ADD1_IfcGeotechnicalAssembly_type); - IFC4X3_ADD1_IfcGeoslice_type = new entity("IfcGeoslice", false, 512, IFC4X3_ADD1_IfcGeotechnicalAssembly_type); - IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 836, IFC4X3_ADD1_IfcDistributionControlElement_type); - IFC4X3_ADD1_IfcSensor_type = new entity("IfcSensor", false, 998, IFC4X3_ADD1_IfcDistributionControlElement_type); - IFC4X3_ADD1_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1246, IFC4X3_ADD1_IfcDistributionControlElement_type); - IFC4X3_ADD1_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X3_ADD1_IfcDistributionControlElement_type); - IFC4X3_ADD1_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X3_ADD1_IfcDistributionControlElement_type); - IFC4X3_ADD1_IfcController_type = new entity("IfcController", false, 229, IFC4X3_ADD1_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X3_ADD1_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X3_ADD1_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_ADD1_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RailHeadDistance", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentCant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("StartCantLeft", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantLeft", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("StartCantRight", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantRight", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentCantSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("StartRadiusOfCurvature", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndRadiusOfCurvature", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("GravityCenterLineHeight", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentParameterSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DesignParameters", new named_type(IFC4X3_ADD1_IfcAlignmentParameterSegment_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), false)); - attributes.push_back(new attribute("EndGradient", new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), false)); - attributes.push_back(new attribute("RadiusOfCurvature", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAlignmentVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAnnotationTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X3_ADD1_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X3_ADD1_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X3_ADD1_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X3_ADD1_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X3_ADD1_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_ADD1_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_ADD1_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_ADD1_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X3_ADD1_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X3_ADD1_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X3_ADD1_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcAxis2PlacementLinear_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X3_ADD1_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X3_ADD1_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_ADD1_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X3_ADD1_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X3_ADD1_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X3_ADD1_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_ADD1_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBearingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBearing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBearingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBearingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X3_ADD1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X3_ADD1_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_ADD1_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X3_ADD1_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X3_ADD1_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBorehole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X3_ADD1_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X3_ADD1_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBridgeTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBridge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBridgePartTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBridgePart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X3_ADD1_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuiltElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuiltElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBuiltSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCaissonFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCaissonFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Specification", new named_type(IFC4X3_ADD1_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X3_ADD1_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ClothoidConstant", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcClothoid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_ADD1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X3_ADD1_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X3_ADD1_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X3_ADD1_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X3_ADD1_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X3_ADD1_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X3_ADD1_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X3_ADD1_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_ADD1_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X3_ADD1_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X3_ADD1_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConveyorSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcConveyorSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X3_ADD1_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CosineTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCosineSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCourseTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCourse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCourseTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCourseType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X3_ADD1_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X3_ADD1_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X3_ADD1_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X3_ADD1_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_ADD1_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_ADD1_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_ADD1_IfcPlacement_type), false)); - attributes.push_back(new attribute("SegmentStart", new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X3_ADD1_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveStyleFont", new named_type(IFC4X3_ADD1_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDeepFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDeepFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_ADD1_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X3_ADD1_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X3_ADD1_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_ADD1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_ADD1_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X3_ADD1_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_ADD1_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X3_ADD1_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_ADD1_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_ADD1_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEarthworksCut_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEarthworksElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEarthworksFill_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X3_ADD1_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X3_ADD1_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_ADD1_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_ADD1_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X3_ADD1_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_ADD1_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_ADD1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X3_ADD1_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X3_ADD1_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("UsageType", new named_type(IFC4X3_ADD1_IfcFacilityUsageEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFacilityPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFacilityPartCommon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X3_ADD1_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X3_ADD1_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_ADD1_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("PrimeMeridian", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeographicCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X3_ADD1_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X3_ADD1_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X3_ADD1_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X3_ADD1_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeomodel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeoslice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeotechnicalAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeotechnicalElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGeotechnicalStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_ADD1_IfcPlacement_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGradientCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X3_ADD1_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X3_ADD1_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcImpactProtectionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcImpactProtectionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_ADD1_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X3_ADD1_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X3_ADD1_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndices", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTextureCoordinateIndices_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_ADD1_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X3_ADD1_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_ADD1_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_ADD1_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X3_ADD1_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcKerbTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcKerb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcKerbTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcKerbType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X3_ADD1_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_ADD1_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X3_ADD1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_ADD1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X3_ADD1_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X3_ADD1_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X3_ADD1_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X3_ADD1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X3_ADD1_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X3_ADD1_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X3_ADD1_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X3_ADD1_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLinearElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_ADD1_IfcAxis2PlacementLinear_type), false)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLiquidTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLiquidTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X3_ADD1_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ScaleX", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - attributes.push_back(new attribute("ScaleY", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - attributes.push_back(new attribute("ScaleZ", new named_type(IFC4X3_ADD1_IfcReal_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMapConversionScaled_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X3_ADD1_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X3_ADD1_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMarineFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMarinePartTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMarinePart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X3_ADD1_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_ADD1_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X3_ADD1_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_ADD1_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X3_ADD1_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X3_ADD1_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X3_ADD1_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X3_ADD1_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X3_ADD1_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_ADD1_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X3_ADD1_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X3_ADD1_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X3_ADD1_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X3_ADD1_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X3_ADD1_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_ADD1_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_ADD1_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterial_type)), false)); - attributes.push_back(new attribute("MaterialExpression", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X3_ADD1_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X3_ADD1_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X3_ADD1_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X3_ADD1_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_ADD1_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X3_ADD1_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMooringDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMooringDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X3_ADD1_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_ADD1_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcNavigationElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcNavigationElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcNavigationElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcNavigationElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X3_ADD1_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X3_ADD1_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X3_ADD1_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HorizontalWidths", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Widths", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type)), false)); - attributes.push_back(new attribute("Slopes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("Tags", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("OffsetPoint", new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOpenCrossProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X3_ADD1_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X3_ADD1_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X3_ADD1_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X3_ADD1_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X3_ADD1_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X3_ADD1_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X3_ADD1_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X3_ADD1_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X3_ADD1_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_ADD1_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPavementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPavement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPavementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPavementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_ADD1_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X3_ADD1_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X3_ADD1_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_ADD1_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_ADD1_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_ADD1_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X3_ADD1_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_ADD1_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPointByDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcPlacement_type), false)); - attributes.push_back(new attribute("CoefficientsX", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true)); - attributes.push_back(new attribute("CoefficientsY", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true)); - attributes.push_back(new attribute("CoefficientsZ", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPolynomialCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_ADD1_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X3_ADD1_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X3_ADD1_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X3_ADD1_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X3_ADD1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Specification", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X3_ADD1_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X3_ADD1_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X3_ADD1_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X3_ADD1_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X3_ADD1_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X3_ADD1_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X3_ADD1_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X3_ADD1_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X3_ADD1_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X3_ADD1_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NumberValue", new named_type(IFC4X3_ADD1_IfcNumericMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityNumber_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X3_ADD1_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X3_ADD1_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X3_ADD1_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRailTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRail_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRailTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRailType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRailwayTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRailway_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRailwayPartTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRailwayPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X3_ADD1_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X3_ADD1_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcReferentTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X3_ADD1_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcedSoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X3_ADD1_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedSurfaceFeatures", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSurfaceFeature_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAdheresToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_ADD1_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X3_ADD1_IfcStrippedOptional_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X3_ADD1_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X3_ADD1_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X3_ADD1_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X3_ADD1_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_ADD1_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X3_ADD1_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X3_ADD1_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X3_ADD1_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_ADD1_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X3_ADD1_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_ADD1_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_ADD1_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X3_ADD1_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_ADD1_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProfileDef", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelAssociatesProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X3_ADD1_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X3_ADD1_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_ADD1_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_ADD1_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_ADD1_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X3_ADD1_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X3_ADD1_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X3_ADD1_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X3_ADD1_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X3_ADD1_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_ADD1_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X3_ADD1_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_ADD1_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_ADD1_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X3_ADD1_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_ADD1_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X3_ADD1_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X3_ADD1_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X3_ADD1_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X3_ADD1_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_ADD1_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_ADD1_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("InterferenceSpace", new named_type(IFC4X3_ADD1_IfcSpatialZone_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_ADD1_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPositioningElement", new named_type(IFC4X3_ADD1_IfcPositioningElement_type), false)); - attributes.push_back(new attribute("RelatedProducts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProduct_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelPositions_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X3_ADD1_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSpatialReferenceSelect_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_ADD1_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_ADD1_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X3_ADD1_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X3_ADD1_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X3_ADD1_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X3_ADD1_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_ADD1_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X3_ADD1_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_ADD1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X3_ADD1_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X3_ADD1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X3_ADD1_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X3_ADD1_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_ADD1_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_ADD1_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_ADD1_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FirstCoordinate", new named_type(IFC4X3_ADD1_IfcMeasureValue_type), false)); - attributes.push_back(new attribute("SecondCoordinate", new named_type(IFC4X3_ADD1_IfcMeasureValue_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRigidOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRoadTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRoadPartTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRoadPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X3_ADD1_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X3_ADD1_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X3_ADD1_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_ADD1_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X3_ADD1_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X3_ADD1_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X3_ADD1_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcAxis2PlacementLinear_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X3_ADD1_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcAxis2PlacementLinear_type)), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSectionedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Transition", new named_type(IFC4X3_ADD1_IfcTransitionCode_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_ADD1_IfcPlacement_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSegmentedReferenceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("SepticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SexticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("QuinticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("QuarticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CubicTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X3_ADD1_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X3_ADD1_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSignTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSign_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSignTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSignType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSignalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSignal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSignalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSignalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X3_ADD1_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X3_ADD1_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SineTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSineSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X3_ADD1_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X3_ADD1_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X3_ADD1_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X3_ADD1_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X3_ADD1_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_ADD1_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X3_ADD1_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X3_ADD1_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X3_ADD1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X3_ADD1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X3_ADD1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X3_ADD1_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X3_ADD1_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X3_ADD1_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X3_ADD1_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X3_ADD1_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X3_ADD1_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X3_ADD1_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X3_ADD1_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X3_ADD1_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X3_ADD1_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X3_ADD1_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X3_ADD1_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X3_ADD1_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPresentationStyle_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X3_ADD1_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_ADD1_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X3_ADD1_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X3_ADD1_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X3_ADD1_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_ADD1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X3_ADD1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_ADD1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X3_ADD1_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X3_ADD1_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X3_ADD1_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X3_ADD1_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X3_ADD1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_ADD1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_ADD1_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X3_ADD1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_ADD1_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_ADD1_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X3_ADD1_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_ADD1_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X3_ADD1_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X3_ADD1_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X3_ADD1_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTendonConduit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTendonConduitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X3_ADD1_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X3_ADD1_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X3_ADD1_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X3_ADD1_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X3_ADD1_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X3_ADD1_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X3_ADD1_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X3_ADD1_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X3_ADD1_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X3_ADD1_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X3_ADD1_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X3_ADD1_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X3_ADD1_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X3_ADD1_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X3_ADD1_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X3_ADD1_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X3_ADD1_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), false)); - attributes.push_back(new attribute("TexCoordsOf", new named_type(IFC4X3_ADD1_IfcIndexedPolygonalFace_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextureCoordinateIndices_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerTexCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_ADD1_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CubicTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_ADD1_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_ADD1_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_ADD1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_ADD1_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_ADD1_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTrackElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTrackElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTrackElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTrackElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTransportElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTransportElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTransportationDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTransportationDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_ADD1_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_ADD1_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_ADD1_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X3_ADD1_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_ADD1_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_ADD1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_ADD1_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_ADD1_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVehicleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVehicle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVehicleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVehicleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_ADD1_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X3_ADD1_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X3_ADD1_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_ADD1_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVibrationDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVibrationDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVirtualElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WellKnownText", new named_type(IFC4X3_ADD1_IfcWellKnownTextLiteral_type), false)); - attributes.push_back(new attribute("CoordinateReferenceSystem", new named_type(IFC4X3_ADD1_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWellKnownText_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_ADD1_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_ADD1_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_ADD1_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_ADD1_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_ADD1_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X3_ADD1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X3_ADD1_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("StartDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - attributes.push_back(new attribute("FinishDate", new named_type(IFC4X3_ADD1_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_ADD1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_ADD1_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToActor_type, IFC4X3_ADD1_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X3_ADD1_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPerson_type, IFC4X3_ADD1_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcOrganization_type, IFC4X3_ADD1_IfcOrganization_type->attributes()[4])); - IFC4X3_ADD1_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X3_ADD1_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesApproval_type, IFC4X3_ADD1_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceApprovalRelationship_type, IFC4X3_ADD1_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcApprovalRelationship_type, IFC4X3_ADD1_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcApprovalRelationship_type, IFC4X3_ADD1_IfcApprovalRelationship_type->attributes()[0])); - IFC4X3_ADD1_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesClassification_type, IFC4X3_ADD1_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcClassificationReference_type, IFC4X3_ADD1_IfcClassificationReference_type->attributes()[0])); - IFC4X3_ADD1_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesClassification_type, IFC4X3_ADD1_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcClassificationReference_type, IFC4X3_ADD1_IfcClassificationReference_type->attributes()[0])); - IFC4X3_ADD1_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceConstraintRelationship_type, IFC4X3_ADD1_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X3_ADD1_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByProperties_type, IFC4X3_ADD1_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDeclares_type, IFC4X3_ADD1_IfcRelDeclares_type->attributes()[0])); - IFC4X3_ADD1_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToControl_type, IFC4X3_ADD1_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X3_ADD1_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcCoordinateOperation_type, IFC4X3_ADD1_IfcCoordinateOperation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("WellKnownText", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcWellKnownText_type, IFC4X3_ADD1_IfcWellKnownText_type->attributes()[1])); - IFC4X3_ADD1_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelCoversSpaces_type, IFC4X3_ADD1_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelCoversBldgElements_type, IFC4X3_ADD1_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X3_ADD1_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelFlowControlElements_type, IFC4X3_ADD1_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X3_ADD1_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsPortToElement_type, IFC4X3_ADD1_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X3_ADD1_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelFlowControlElements_type, IFC4X3_ADD1_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X3_ADD1_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesDocument_type, IFC4X3_ADD1_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcDocumentReference_type, IFC4X3_ADD1_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcDocumentInformationRelationship_type, IFC4X3_ADD1_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcDocumentInformationRelationship_type, IFC4X3_ADD1_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X3_ADD1_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesDocument_type, IFC4X3_ADD1_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X3_ADD1_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelFillsElement_type, IFC4X3_ADD1_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsElements_type, IFC4X3_ADD1_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelProjectsElement_type, IFC4X3_ADD1_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelVoidsElement_type, IFC4X3_ADD1_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type, IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary_type, IFC4X3_ADD1_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsElements_type, IFC4X3_ADD1_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelCoversBldgElements_type, IFC4X3_ADD1_IfcRelCoversBldgElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasSurfaceFeatures", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAdheresToElement_type, IFC4X3_ADD1_IfcRelAdheresToElement_type->attributes()[0])); - IFC4X3_ADD1_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X3_ADD1_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary_type, IFC4X3_ADD1_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_ADD1_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcTextureMap_type, IFC4X3_ADD1_IfcTextureMap_type->attributes()[1])); - IFC4X3_ADD1_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcRelProjectsElement_type, IFC4X3_ADD1_IfcRelProjectsElement_type->attributes()[1])); - IFC4X3_ADD1_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcRelVoidsElement_type, IFC4X3_ADD1_IfcRelVoidsElement_type->attributes()[1])); - IFC4X3_ADD1_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type, IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcCoordinateOperation_type, IFC4X3_ADD1_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_ADD1_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcGrid_type, IFC4X3_ADD1_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcGrid_type, IFC4X3_ADD1_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcGrid_type, IFC4X3_ADD1_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcVirtualGridIntersection_type, IFC4X3_ADD1_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X3_ADD1_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToGroup_type, IFC4X3_ADD1_IfcRelAssignsToGroup_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_ADD1_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcPolygonalFaceSet_type, IFC4X3_ADD1_IfcPolygonalFaceSet_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasTexCoords", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcTextureCoordinateIndices_type, IFC4X3_ADD1_IfcTextureCoordinateIndices_type->attributes()[1])); - IFC4X3_ADD1_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesLibrary_type, IFC4X3_ADD1_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcLibraryReference_type, IFC4X3_ADD1_IfcLibraryReference_type->attributes()[2])); - IFC4X3_ADD1_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesLibrary_type, IFC4X3_ADD1_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X3_ADD1_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type, IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcMaterialRelationship_type, IFC4X3_ADD1_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcMaterialRelationship_type, IFC4X3_ADD1_IfcMaterialRelationship_type->attributes()[0])); - IFC4X3_ADD1_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcMaterialConstituentSet_type, IFC4X3_ADD1_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X3_ADD1_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesMaterial_type, IFC4X3_ADD1_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcMaterialProperties_type, IFC4X3_ADD1_IfcMaterialProperties_type->attributes()[0])); - IFC4X3_ADD1_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcMaterialLayerSet_type, IFC4X3_ADD1_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X3_ADD1_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcMaterialProfileSet_type, IFC4X3_ADD1_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X3_ADD1_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcRelAssociatesMaterial_type, IFC4X3_ADD1_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X3_ADD1_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDefinesByObject_type, IFC4X3_ADD1_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByObject_type, IFC4X3_ADD1_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDefinesByType_type, IFC4X3_ADD1_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByProperties_type, IFC4X3_ADD1_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X3_ADD1_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssigns_type, IFC4X3_ADD1_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelNests_type, IFC4X3_ADD1_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelNests_type, IFC4X3_ADD1_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDeclares_type, IFC4X3_ADD1_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAggregates_type, IFC4X3_ADD1_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelAggregates_type, IFC4X3_ADD1_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociates_type, IFC4X3_ADD1_IfcRelAssociates_type->attributes()[0])); - IFC4X3_ADD1_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcProduct_type, IFC4X3_ADD1_IfcProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ReferencedByPlacements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcObjectPlacement_type, IFC4X3_ADD1_IfcObjectPlacement_type->attributes()[0])); - IFC4X3_ADD1_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelFillsElement_type, IFC4X3_ADD1_IfcRelFillsElement_type->attributes()[0])); - IFC4X3_ADD1_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcOrganizationRelationship_type, IFC4X3_ADD1_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcOrganizationRelationship_type, IFC4X3_ADD1_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPersonAndOrganization_type, IFC4X3_ADD1_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X3_ADD1_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPersonAndOrganization_type, IFC4X3_ADD1_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X3_ADD1_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcPhysicalComplexQuantity_type, IFC4X3_ADD1_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X3_ADD1_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsPortToElement_type, IFC4X3_ADD1_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsPorts_type, IFC4X3_ADD1_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsPorts_type, IFC4X3_ADD1_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X3_ADD1_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Positions", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelPositions_type, IFC4X3_ADD1_IfcRelPositions_type->attributes()[0])); - IFC4X3_ADD1_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSequence_type, IFC4X3_ADD1_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSequence_type, IFC4X3_ADD1_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProcess_type, IFC4X3_ADD1_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_ADD1_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProduct_type, IFC4X3_ADD1_IfcRelAssignsToProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PositionedRelativeTo", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelPositions_type, IFC4X3_ADD1_IfcRelPositions_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_ADD1_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcProduct_type, IFC4X3_ADD1_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcShapeAspect_type, IFC4X3_ADD1_IfcShapeAspect_type->attributes()[4])); - IFC4X3_ADD1_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcProfileProperties_type, IFC4X3_ADD1_IfcProfileProperties_type->attributes()[0])); - IFC4X3_ADD1_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertySet_type, IFC4X3_ADD1_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcComplexProperty_type, IFC4X3_ADD1_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceConstraintRelationship_type, IFC4X3_ADD1_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceApprovalRelationship_type, IFC4X3_ADD1_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X3_ADD1_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDeclares_type, IFC4X3_ADD1_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociates_type, IFC4X3_ADD1_IfcRelAssociates_type->attributes()[0])); - IFC4X3_ADD1_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcTypeObject_type, IFC4X3_ADD1_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByTemplate_type, IFC4X3_ADD1_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByProperties_type, IFC4X3_ADD1_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X3_ADD1_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByTemplate_type, IFC4X3_ADD1_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X3_ADD1_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcComplexPropertyTemplate_type, IFC4X3_ADD1_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertySetTemplate_type, IFC4X3_ADD1_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X3_ADD1_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type, IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRepresentationMap_type, IFC4X3_ADD1_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPresentationLayerAssignment_type, IFC4X3_ADD1_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcProductRepresentation_type, IFC4X3_ADD1_IfcProductRepresentation_type->attributes()[2])); - IFC4X3_ADD1_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRepresentation_type, IFC4X3_ADD1_IfcRepresentation_type->attributes()[0])); - IFC4X3_ADD1_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcPresentationLayerAssignment_type, IFC4X3_ADD1_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcStyledItem_type, IFC4X3_ADD1_IfcStyledItem_type->attributes()[0])); - IFC4X3_ADD1_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcShapeAspect_type, IFC4X3_ADD1_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcMappedItem_type, IFC4X3_ADD1_IfcMappedItem_type->attributes()[0])); - IFC4X3_ADD1_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToResource_type, IFC4X3_ADD1_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_ADD1_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcCompositeCurve_type, IFC4X3_ADD1_IfcCompositeCurve_type->attributes()[0])); - IFC4X3_ADD1_IfcSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcShapeAspect_type, IFC4X3_ADD1_IfcShapeAspect_type->attributes()[0])); - IFC4X3_ADD1_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelCoversSpaces_type, IFC4X3_ADD1_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary_type, IFC4X3_ADD1_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_ADD1_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelServicesBuildings_type, IFC4X3_ADD1_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[0])); - IFC4X3_ADD1_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X3_ADD1_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X3_ADD1_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X3_ADD1_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcStructuralResultGroup_type, IFC4X3_ADD1_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcStructuralAnalysisModel_type, IFC4X3_ADD1_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X3_ADD1_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X3_ADD1_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcStructuralAnalysisModel_type, IFC4X3_ADD1_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X3_ADD1_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AdheresToElement", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcRelAdheresToElement_type, IFC4X3_ADD1_IfcRelAdheresToElement_type->attributes()[1])); - IFC4X3_ADD1_IfcSurfaceFeature_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcTextureCoordinate_type, IFC4X3_ADD1_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type, IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X3_ADD1_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelServicesBuildings_type, IFC4X3_ADD1_IfcRelServicesBuildings_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ServicesFacilities", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_ADD1_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcIndexedColourMap_type, IFC4X3_ADD1_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcIndexedTextureMap_type, IFC4X3_ADD1_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X3_ADD1_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToTexMap", inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type, IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type->attributes()[0])); - IFC4X3_ADD1_IfcTextureCoordinateIndices_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_ADD1_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDefinesByType_type, IFC4X3_ADD1_IfcRelDefinesByType_type->attributes()[1])); - IFC4X3_ADD1_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProcess_type, IFC4X3_ADD1_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_ADD1_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProduct_type, IFC4X3_ADD1_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X3_ADD1_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToResource_type, IFC4X3_ADD1_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_ADD1_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_ADD1_IfcActionRequest_type);defs.push_back(IFC4X3_ADD1_IfcCostItem_type);defs.push_back(IFC4X3_ADD1_IfcCostSchedule_type);defs.push_back(IFC4X3_ADD1_IfcPerformanceHistory_type);defs.push_back(IFC4X3_ADD1_IfcPermit_type);defs.push_back(IFC4X3_ADD1_IfcProjectOrder_type);defs.push_back(IFC4X3_ADD1_IfcWorkCalendar_type);defs.push_back(IFC4X3_ADD1_IfcWorkControl_type); - IFC4X3_ADD1_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcActor_type);defs.push_back(IFC4X3_ADD1_IfcControl_type);defs.push_back(IFC4X3_ADD1_IfcGroup_type);defs.push_back(IFC4X3_ADD1_IfcProcess_type);defs.push_back(IFC4X3_ADD1_IfcProduct_type);defs.push_back(IFC4X3_ADD1_IfcResource_type); - IFC4X3_ADD1_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_ADD1_IfcActuator_type);defs.push_back(IFC4X3_ADD1_IfcAlarm_type);defs.push_back(IFC4X3_ADD1_IfcController_type);defs.push_back(IFC4X3_ADD1_IfcFlowInstrument_type);defs.push_back(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X3_ADD1_IfcSensor_type);defs.push_back(IFC4X3_ADD1_IfcUnitaryControlElement_type); - IFC4X3_ADD1_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_ADD1_IfcActuatorType_type);defs.push_back(IFC4X3_ADD1_IfcAlarmType_type);defs.push_back(IFC4X3_ADD1_IfcControllerType_type);defs.push_back(IFC4X3_ADD1_IfcFlowInstrumentType_type);defs.push_back(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X3_ADD1_IfcSensorType_type);defs.push_back(IFC4X3_ADD1_IfcUnitaryControlElementType_type); - IFC4X3_ADD1_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcAdvancedBrep_type);defs.push_back(IFC4X3_ADD1_IfcFacetedBrep_type); - IFC4X3_ADD1_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type); - IFC4X3_ADD1_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcAdvancedFace_type); - IFC4X3_ADD1_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_ADD1_IfcAirTerminal_type);defs.push_back(IFC4X3_ADD1_IfcAudioVisualAppliance_type);defs.push_back(IFC4X3_ADD1_IfcCommunicationsAppliance_type);defs.push_back(IFC4X3_ADD1_IfcElectricAppliance_type);defs.push_back(IFC4X3_ADD1_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X3_ADD1_IfcLamp_type);defs.push_back(IFC4X3_ADD1_IfcLightFixture_type);defs.push_back(IFC4X3_ADD1_IfcLiquidTerminal_type);defs.push_back(IFC4X3_ADD1_IfcMedicalDevice_type);defs.push_back(IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type);defs.push_back(IFC4X3_ADD1_IfcOutlet_type);defs.push_back(IFC4X3_ADD1_IfcSanitaryTerminal_type);defs.push_back(IFC4X3_ADD1_IfcSignal_type);defs.push_back(IFC4X3_ADD1_IfcSpaceHeater_type);defs.push_back(IFC4X3_ADD1_IfcStackTerminal_type);defs.push_back(IFC4X3_ADD1_IfcWasteTerminal_type); - IFC4X3_ADD1_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcAirTerminalBox_type);defs.push_back(IFC4X3_ADD1_IfcDamper_type);defs.push_back(IFC4X3_ADD1_IfcDistributionBoard_type);defs.push_back(IFC4X3_ADD1_IfcElectricDistributionBoard_type);defs.push_back(IFC4X3_ADD1_IfcElectricTimeControl_type);defs.push_back(IFC4X3_ADD1_IfcFlowMeter_type);defs.push_back(IFC4X3_ADD1_IfcProtectiveDevice_type);defs.push_back(IFC4X3_ADD1_IfcSwitchingDevice_type);defs.push_back(IFC4X3_ADD1_IfcValve_type); - IFC4X3_ADD1_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcAirTerminalBoxType_type);defs.push_back(IFC4X3_ADD1_IfcDamperType_type);defs.push_back(IFC4X3_ADD1_IfcDistributionBoardType_type);defs.push_back(IFC4X3_ADD1_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X3_ADD1_IfcElectricTimeControlType_type);defs.push_back(IFC4X3_ADD1_IfcFlowMeterType_type);defs.push_back(IFC4X3_ADD1_IfcProtectiveDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcSwitchingDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcValveType_type); - IFC4X3_ADD1_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_ADD1_IfcAirTerminalType_type);defs.push_back(IFC4X3_ADD1_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X3_ADD1_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X3_ADD1_IfcElectricApplianceType_type);defs.push_back(IFC4X3_ADD1_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X3_ADD1_IfcLampType_type);defs.push_back(IFC4X3_ADD1_IfcLightFixtureType_type);defs.push_back(IFC4X3_ADD1_IfcLiquidTerminalType_type);defs.push_back(IFC4X3_ADD1_IfcMedicalDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type);defs.push_back(IFC4X3_ADD1_IfcOutletType_type);defs.push_back(IFC4X3_ADD1_IfcSanitaryTerminalType_type);defs.push_back(IFC4X3_ADD1_IfcSignalType_type);defs.push_back(IFC4X3_ADD1_IfcSpaceHeaterType_type);defs.push_back(IFC4X3_ADD1_IfcStackTerminalType_type);defs.push_back(IFC4X3_ADD1_IfcWasteTerminalType_type); - IFC4X3_ADD1_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_ADD1_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X3_ADD1_IfcBoiler_type);defs.push_back(IFC4X3_ADD1_IfcBurner_type);defs.push_back(IFC4X3_ADD1_IfcChiller_type);defs.push_back(IFC4X3_ADD1_IfcCoil_type);defs.push_back(IFC4X3_ADD1_IfcCondenser_type);defs.push_back(IFC4X3_ADD1_IfcCooledBeam_type);defs.push_back(IFC4X3_ADD1_IfcCoolingTower_type);defs.push_back(IFC4X3_ADD1_IfcElectricGenerator_type);defs.push_back(IFC4X3_ADD1_IfcElectricMotor_type);defs.push_back(IFC4X3_ADD1_IfcEngine_type);defs.push_back(IFC4X3_ADD1_IfcEvaporativeCooler_type);defs.push_back(IFC4X3_ADD1_IfcEvaporator_type);defs.push_back(IFC4X3_ADD1_IfcHeatExchanger_type);defs.push_back(IFC4X3_ADD1_IfcHumidifier_type);defs.push_back(IFC4X3_ADD1_IfcMotorConnection_type);defs.push_back(IFC4X3_ADD1_IfcSolarDevice_type);defs.push_back(IFC4X3_ADD1_IfcTransformer_type);defs.push_back(IFC4X3_ADD1_IfcTubeBundle_type);defs.push_back(IFC4X3_ADD1_IfcUnitaryEquipment_type); - IFC4X3_ADD1_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X3_ADD1_IfcBoilerType_type);defs.push_back(IFC4X3_ADD1_IfcBurnerType_type);defs.push_back(IFC4X3_ADD1_IfcChillerType_type);defs.push_back(IFC4X3_ADD1_IfcCoilType_type);defs.push_back(IFC4X3_ADD1_IfcCondenserType_type);defs.push_back(IFC4X3_ADD1_IfcCooledBeamType_type);defs.push_back(IFC4X3_ADD1_IfcCoolingTowerType_type);defs.push_back(IFC4X3_ADD1_IfcElectricGeneratorType_type);defs.push_back(IFC4X3_ADD1_IfcElectricMotorType_type);defs.push_back(IFC4X3_ADD1_IfcEngineType_type);defs.push_back(IFC4X3_ADD1_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X3_ADD1_IfcEvaporatorType_type);defs.push_back(IFC4X3_ADD1_IfcHeatExchangerType_type);defs.push_back(IFC4X3_ADD1_IfcHumidifierType_type);defs.push_back(IFC4X3_ADD1_IfcMotorConnectionType_type);defs.push_back(IFC4X3_ADD1_IfcSolarDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcTransformerType_type);defs.push_back(IFC4X3_ADD1_IfcTubeBundleType_type);defs.push_back(IFC4X3_ADD1_IfcUnitaryEquipmentType_type); - IFC4X3_ADD1_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcAlignment_type); - IFC4X3_ADD1_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcAlignmentCant_type);defs.push_back(IFC4X3_ADD1_IfcAlignmentHorizontal_type);defs.push_back(IFC4X3_ADD1_IfcAlignmentSegment_type);defs.push_back(IFC4X3_ADD1_IfcAlignmentVertical_type); - IFC4X3_ADD1_IfcLinearElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcAlignmentCantSegment_type);defs.push_back(IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type);defs.push_back(IFC4X3_ADD1_IfcAlignmentVerticalSegment_type); - IFC4X3_ADD1_IfcAlignmentParameterSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_ADD1_IfcAnnotation_type);defs.push_back(IFC4X3_ADD1_IfcElement_type);defs.push_back(IFC4X3_ADD1_IfcLinearElement_type);defs.push_back(IFC4X3_ADD1_IfcPort_type);defs.push_back(IFC4X3_ADD1_IfcPositioningElement_type);defs.push_back(IFC4X3_ADD1_IfcSpatialElement_type);defs.push_back(IFC4X3_ADD1_IfcStructuralActivity_type);defs.push_back(IFC4X3_ADD1_IfcStructuralItem_type); - IFC4X3_ADD1_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(25); - defs.push_back(IFC4X3_ADD1_IfcAnnotationFillArea_type);defs.push_back(IFC4X3_ADD1_IfcBooleanResult_type);defs.push_back(IFC4X3_ADD1_IfcBoundingBox_type);defs.push_back(IFC4X3_ADD1_IfcCartesianPointList_type);defs.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X3_ADD1_IfcCsgPrimitive3D_type);defs.push_back(IFC4X3_ADD1_IfcCurve_type);defs.push_back(IFC4X3_ADD1_IfcDirection_type);defs.push_back(IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X3_ADD1_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X3_ADD1_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X3_ADD1_IfcGeometricSet_type);defs.push_back(IFC4X3_ADD1_IfcHalfSpaceSolid_type);defs.push_back(IFC4X3_ADD1_IfcLightSource_type);defs.push_back(IFC4X3_ADD1_IfcPlacement_type);defs.push_back(IFC4X3_ADD1_IfcPlanarExtent_type);defs.push_back(IFC4X3_ADD1_IfcPoint_type);defs.push_back(IFC4X3_ADD1_IfcSectionedSpine_type);defs.push_back(IFC4X3_ADD1_IfcSegment_type);defs.push_back(IFC4X3_ADD1_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X3_ADD1_IfcSolidModel_type);defs.push_back(IFC4X3_ADD1_IfcSurface_type);defs.push_back(IFC4X3_ADD1_IfcTessellatedItem_type);defs.push_back(IFC4X3_ADD1_IfcTextLiteral_type);defs.push_back(IFC4X3_ADD1_IfcVector_type); - IFC4X3_ADD1_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcApprovalRelationship_type);defs.push_back(IFC4X3_ADD1_IfcCurrencyRelationship_type);defs.push_back(IFC4X3_ADD1_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X3_ADD1_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X3_ADD1_IfcMaterialRelationship_type);defs.push_back(IFC4X3_ADD1_IfcOrganizationRelationship_type);defs.push_back(IFC4X3_ADD1_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X3_ADD1_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X3_ADD1_IfcResourceConstraintRelationship_type); - IFC4X3_ADD1_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcCompositeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcDerivedProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcOpenCrossProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcParameterizedProfileDef_type); - IFC4X3_ADD1_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type); - IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcAsset_type);defs.push_back(IFC4X3_ADD1_IfcInventory_type);defs.push_back(IFC4X3_ADD1_IfcStructuralLoadGroup_type);defs.push_back(IFC4X3_ADD1_IfcStructuralResultGroup_type);defs.push_back(IFC4X3_ADD1_IfcSystem_type); - IFC4X3_ADD1_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcCShapeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcCircleProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcEllipseProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcIShapeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcLShapeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcRectangleProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcTShapeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcUShapeProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcZShapeProfileDef_type); - IFC4X3_ADD1_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcAxis1Placement_type);defs.push_back(IFC4X3_ADD1_IfcAxis2Placement2D_type);defs.push_back(IFC4X3_ADD1_IfcAxis2Placement3D_type);defs.push_back(IFC4X3_ADD1_IfcAxis2PlacementLinear_type); - IFC4X3_ADD1_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcBSplineCurve_type);defs.push_back(IFC4X3_ADD1_IfcCompositeCurve_type);defs.push_back(IFC4X3_ADD1_IfcIndexedPolyCurve_type);defs.push_back(IFC4X3_ADD1_IfcPolyline_type);defs.push_back(IFC4X3_ADD1_IfcTrimmedCurve_type); - IFC4X3_ADD1_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcBSplineCurveWithKnots_type); - IFC4X3_ADD1_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcBSplineSurface_type);defs.push_back(IFC4X3_ADD1_IfcCurveBoundedPlane_type);defs.push_back(IFC4X3_ADD1_IfcCurveBoundedSurface_type);defs.push_back(IFC4X3_ADD1_IfcRectangularTrimmedSurface_type); - IFC4X3_ADD1_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type); - IFC4X3_ADD1_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X3_ADD1_IfcBeam_type);defs.push_back(IFC4X3_ADD1_IfcBearing_type);defs.push_back(IFC4X3_ADD1_IfcBuildingElementProxy_type);defs.push_back(IFC4X3_ADD1_IfcChimney_type);defs.push_back(IFC4X3_ADD1_IfcColumn_type);defs.push_back(IFC4X3_ADD1_IfcCourse_type);defs.push_back(IFC4X3_ADD1_IfcCovering_type);defs.push_back(IFC4X3_ADD1_IfcCurtainWall_type);defs.push_back(IFC4X3_ADD1_IfcDeepFoundation_type);defs.push_back(IFC4X3_ADD1_IfcDoor_type);defs.push_back(IFC4X3_ADD1_IfcEarthworksElement_type);defs.push_back(IFC4X3_ADD1_IfcFooting_type);defs.push_back(IFC4X3_ADD1_IfcKerb_type);defs.push_back(IFC4X3_ADD1_IfcMember_type);defs.push_back(IFC4X3_ADD1_IfcMooringDevice_type);defs.push_back(IFC4X3_ADD1_IfcNavigationElement_type);defs.push_back(IFC4X3_ADD1_IfcPavement_type);defs.push_back(IFC4X3_ADD1_IfcPlate_type);defs.push_back(IFC4X3_ADD1_IfcRail_type);defs.push_back(IFC4X3_ADD1_IfcRailing_type);defs.push_back(IFC4X3_ADD1_IfcRamp_type);defs.push_back(IFC4X3_ADD1_IfcRampFlight_type);defs.push_back(IFC4X3_ADD1_IfcRoof_type);defs.push_back(IFC4X3_ADD1_IfcShadingDevice_type);defs.push_back(IFC4X3_ADD1_IfcSlab_type);defs.push_back(IFC4X3_ADD1_IfcStair_type);defs.push_back(IFC4X3_ADD1_IfcStairFlight_type);defs.push_back(IFC4X3_ADD1_IfcTrackElement_type);defs.push_back(IFC4X3_ADD1_IfcWall_type);defs.push_back(IFC4X3_ADD1_IfcWindow_type); - IFC4X3_ADD1_IfcBuiltElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(29); - defs.push_back(IFC4X3_ADD1_IfcBeamType_type);defs.push_back(IFC4X3_ADD1_IfcBearingType_type);defs.push_back(IFC4X3_ADD1_IfcBuildingElementProxyType_type);defs.push_back(IFC4X3_ADD1_IfcChimneyType_type);defs.push_back(IFC4X3_ADD1_IfcColumnType_type);defs.push_back(IFC4X3_ADD1_IfcCourseType_type);defs.push_back(IFC4X3_ADD1_IfcCoveringType_type);defs.push_back(IFC4X3_ADD1_IfcCurtainWallType_type);defs.push_back(IFC4X3_ADD1_IfcDeepFoundationType_type);defs.push_back(IFC4X3_ADD1_IfcDoorType_type);defs.push_back(IFC4X3_ADD1_IfcFootingType_type);defs.push_back(IFC4X3_ADD1_IfcKerbType_type);defs.push_back(IFC4X3_ADD1_IfcMemberType_type);defs.push_back(IFC4X3_ADD1_IfcMooringDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcNavigationElementType_type);defs.push_back(IFC4X3_ADD1_IfcPavementType_type);defs.push_back(IFC4X3_ADD1_IfcPlateType_type);defs.push_back(IFC4X3_ADD1_IfcRailType_type);defs.push_back(IFC4X3_ADD1_IfcRailingType_type);defs.push_back(IFC4X3_ADD1_IfcRampFlightType_type);defs.push_back(IFC4X3_ADD1_IfcRampType_type);defs.push_back(IFC4X3_ADD1_IfcRoofType_type);defs.push_back(IFC4X3_ADD1_IfcShadingDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcSlabType_type);defs.push_back(IFC4X3_ADD1_IfcStairFlightType_type);defs.push_back(IFC4X3_ADD1_IfcStairType_type);defs.push_back(IFC4X3_ADD1_IfcTrackElementType_type);defs.push_back(IFC4X3_ADD1_IfcWallType_type);defs.push_back(IFC4X3_ADD1_IfcWindowType_type); - IFC4X3_ADD1_IfcBuiltElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcBlobTexture_type);defs.push_back(IFC4X3_ADD1_IfcImageTexture_type);defs.push_back(IFC4X3_ADD1_IfcPixelTexture_type); - IFC4X3_ADD1_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcBlock_type);defs.push_back(IFC4X3_ADD1_IfcRectangularPyramid_type);defs.push_back(IFC4X3_ADD1_IfcRightCircularCone_type);defs.push_back(IFC4X3_ADD1_IfcRightCircularCylinder_type);defs.push_back(IFC4X3_ADD1_IfcSphere_type); - IFC4X3_ADD1_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcBooleanClippingResult_type); - IFC4X3_ADD1_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcBorehole_type);defs.push_back(IFC4X3_ADD1_IfcGeomodel_type);defs.push_back(IFC4X3_ADD1_IfcGeoslice_type); - IFC4X3_ADD1_IfcGeotechnicalAssembly_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcBoundaryCurve_type); - IFC4X3_ADD1_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X3_ADD1_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X3_ADD1_IfcBoundaryNodeCondition_type); - IFC4X3_ADD1_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type); - IFC4X3_ADD1_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_ADD1_IfcBoundedCurve_type);defs.push_back(IFC4X3_ADD1_IfcConic_type);defs.push_back(IFC4X3_ADD1_IfcLine_type);defs.push_back(IFC4X3_ADD1_IfcOffsetCurve_type);defs.push_back(IFC4X3_ADD1_IfcPcurve_type);defs.push_back(IFC4X3_ADD1_IfcPolynomialCurve_type);defs.push_back(IFC4X3_ADD1_IfcSpiral_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceCurve_type); - IFC4X3_ADD1_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcBoundedSurface_type);defs.push_back(IFC4X3_ADD1_IfcElementarySurface_type);defs.push_back(IFC4X3_ADD1_IfcSectionedSurface_type);defs.push_back(IFC4X3_ADD1_IfcSweptSurface_type); - IFC4X3_ADD1_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcBoxedHalfSpace_type);defs.push_back(IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type); - IFC4X3_ADD1_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcBridge_type);defs.push_back(IFC4X3_ADD1_IfcBuilding_type);defs.push_back(IFC4X3_ADD1_IfcMarineFacility_type);defs.push_back(IFC4X3_ADD1_IfcRailway_type);defs.push_back(IFC4X3_ADD1_IfcRoad_type); - IFC4X3_ADD1_IfcFacility_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcBridgePart_type);defs.push_back(IFC4X3_ADD1_IfcFacilityPartCommon_type);defs.push_back(IFC4X3_ADD1_IfcMarinePart_type);defs.push_back(IFC4X3_ADD1_IfcRailwayPart_type);defs.push_back(IFC4X3_ADD1_IfcRoadPart_type); - IFC4X3_ADD1_IfcFacilityPart_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcBuildingElementPart_type);defs.push_back(IFC4X3_ADD1_IfcDiscreteAccessory_type);defs.push_back(IFC4X3_ADD1_IfcFastener_type);defs.push_back(IFC4X3_ADD1_IfcImpactProtectionDevice_type);defs.push_back(IFC4X3_ADD1_IfcMechanicalFastener_type);defs.push_back(IFC4X3_ADD1_IfcReinforcingElement_type);defs.push_back(IFC4X3_ADD1_IfcSign_type);defs.push_back(IFC4X3_ADD1_IfcVibrationDamper_type);defs.push_back(IFC4X3_ADD1_IfcVibrationIsolator_type); - IFC4X3_ADD1_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcBuildingElementPartType_type);defs.push_back(IFC4X3_ADD1_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X3_ADD1_IfcFastenerType_type);defs.push_back(IFC4X3_ADD1_IfcImpactProtectionDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcMechanicalFastenerType_type);defs.push_back(IFC4X3_ADD1_IfcReinforcingElementType_type);defs.push_back(IFC4X3_ADD1_IfcSignType_type);defs.push_back(IFC4X3_ADD1_IfcVibrationDamperType_type);defs.push_back(IFC4X3_ADD1_IfcVibrationIsolatorType_type); - IFC4X3_ADD1_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcBuildingStorey_type);defs.push_back(IFC4X3_ADD1_IfcFacility_type);defs.push_back(IFC4X3_ADD1_IfcFacilityPart_type);defs.push_back(IFC4X3_ADD1_IfcSite_type);defs.push_back(IFC4X3_ADD1_IfcSpace_type); - IFC4X3_ADD1_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcBuildingSystem_type);defs.push_back(IFC4X3_ADD1_IfcBuiltSystem_type);defs.push_back(IFC4X3_ADD1_IfcDistributionSystem_type);defs.push_back(IFC4X3_ADD1_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X3_ADD1_IfcZone_type); - IFC4X3_ADD1_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_ADD1_IfcBuiltElement_type);defs.push_back(IFC4X3_ADD1_IfcCivilElement_type);defs.push_back(IFC4X3_ADD1_IfcDistributionElement_type);defs.push_back(IFC4X3_ADD1_IfcElementAssembly_type);defs.push_back(IFC4X3_ADD1_IfcElementComponent_type);defs.push_back(IFC4X3_ADD1_IfcFeatureElement_type);defs.push_back(IFC4X3_ADD1_IfcFurnishingElement_type);defs.push_back(IFC4X3_ADD1_IfcGeographicElement_type);defs.push_back(IFC4X3_ADD1_IfcGeotechnicalElement_type);defs.push_back(IFC4X3_ADD1_IfcTransportationDevice_type);defs.push_back(IFC4X3_ADD1_IfcVirtualElement_type); - IFC4X3_ADD1_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_ADD1_IfcBuiltElementType_type);defs.push_back(IFC4X3_ADD1_IfcCivilElementType_type);defs.push_back(IFC4X3_ADD1_IfcDistributionElementType_type);defs.push_back(IFC4X3_ADD1_IfcElementAssemblyType_type);defs.push_back(IFC4X3_ADD1_IfcElementComponentType_type);defs.push_back(IFC4X3_ADD1_IfcFurnishingElementType_type);defs.push_back(IFC4X3_ADD1_IfcGeographicElementType_type);defs.push_back(IFC4X3_ADD1_IfcTransportationDeviceType_type); - IFC4X3_ADD1_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcCableCarrierFitting_type);defs.push_back(IFC4X3_ADD1_IfcCableFitting_type);defs.push_back(IFC4X3_ADD1_IfcDuctFitting_type);defs.push_back(IFC4X3_ADD1_IfcJunctionBox_type);defs.push_back(IFC4X3_ADD1_IfcPipeFitting_type); - IFC4X3_ADD1_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcCableCarrierFittingType_type);defs.push_back(IFC4X3_ADD1_IfcCableFittingType_type);defs.push_back(IFC4X3_ADD1_IfcDuctFittingType_type);defs.push_back(IFC4X3_ADD1_IfcJunctionBoxType_type);defs.push_back(IFC4X3_ADD1_IfcPipeFittingType_type); - IFC4X3_ADD1_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcCableCarrierSegment_type);defs.push_back(IFC4X3_ADD1_IfcCableSegment_type);defs.push_back(IFC4X3_ADD1_IfcConveyorSegment_type);defs.push_back(IFC4X3_ADD1_IfcDuctSegment_type);defs.push_back(IFC4X3_ADD1_IfcPipeSegment_type); - IFC4X3_ADD1_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X3_ADD1_IfcCableSegmentType_type);defs.push_back(IFC4X3_ADD1_IfcConveyorSegmentType_type);defs.push_back(IFC4X3_ADD1_IfcDuctSegmentType_type);defs.push_back(IFC4X3_ADD1_IfcPipeSegmentType_type); - IFC4X3_ADD1_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcCaissonFoundation_type);defs.push_back(IFC4X3_ADD1_IfcPile_type); - IFC4X3_ADD1_IfcDeepFoundation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcCaissonFoundationType_type);defs.push_back(IFC4X3_ADD1_IfcPileType_type); - IFC4X3_ADD1_IfcDeepFoundationType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcCartesianPoint_type);defs.push_back(IFC4X3_ADD1_IfcPointByDistanceExpression_type);defs.push_back(IFC4X3_ADD1_IfcPointOnCurve_type);defs.push_back(IFC4X3_ADD1_IfcPointOnSurface_type); - IFC4X3_ADD1_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcCartesianPointList2D_type);defs.push_back(IFC4X3_ADD1_IfcCartesianPointList3D_type); - IFC4X3_ADD1_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcCenterLineProfileDef_type); - IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcCircle_type);defs.push_back(IFC4X3_ADD1_IfcEllipse_type); - IFC4X3_ADD1_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcCircleHollowProfileDef_type); - IFC4X3_ADD1_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcClassification_type);defs.push_back(IFC4X3_ADD1_IfcDocumentInformation_type);defs.push_back(IFC4X3_ADD1_IfcLibraryInformation_type); - IFC4X3_ADD1_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcClassificationReference_type);defs.push_back(IFC4X3_ADD1_IfcDocumentReference_type);defs.push_back(IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X3_ADD1_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X3_ADD1_IfcLibraryReference_type); - IFC4X3_ADD1_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcClosedShell_type);defs.push_back(IFC4X3_ADD1_IfcOpenShell_type); - IFC4X3_ADD1_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcClothoid_type);defs.push_back(IFC4X3_ADD1_IfcCosineSpiral_type);defs.push_back(IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type);defs.push_back(IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type);defs.push_back(IFC4X3_ADD1_IfcSineSpiral_type);defs.push_back(IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type); - IFC4X3_ADD1_IfcSpiral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcColourRgb_type); - IFC4X3_ADD1_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X3_ADD1_IfcColourRgbList_type);defs.push_back(IFC4X3_ADD1_IfcColourSpecification_type);defs.push_back(IFC4X3_ADD1_IfcCurveStyleFont_type);defs.push_back(IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X3_ADD1_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X3_ADD1_IfcIndexedColourMap_type);defs.push_back(IFC4X3_ADD1_IfcPreDefinedItem_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceStyleShading_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceTexture_type);defs.push_back(IFC4X3_ADD1_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X3_ADD1_IfcTextStyleTextModel_type);defs.push_back(IFC4X3_ADD1_IfcTextureCoordinate_type);defs.push_back(IFC4X3_ADD1_IfcTextureVertex_type);defs.push_back(IFC4X3_ADD1_IfcTextureVertexList_type); - IFC4X3_ADD1_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcComplexProperty_type);defs.push_back(IFC4X3_ADD1_IfcSimpleProperty_type); - IFC4X3_ADD1_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X3_ADD1_IfcSimplePropertyTemplate_type); - IFC4X3_ADD1_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcCompositeCurveOnSurface_type);defs.push_back(IFC4X3_ADD1_IfcGradientCurve_type);defs.push_back(IFC4X3_ADD1_IfcSegmentedReferenceCurve_type); - IFC4X3_ADD1_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcCompositeCurveSegment_type);defs.push_back(IFC4X3_ADD1_IfcCurveSegment_type); - IFC4X3_ADD1_IfcSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcCompressor_type);defs.push_back(IFC4X3_ADD1_IfcFan_type);defs.push_back(IFC4X3_ADD1_IfcPump_type); - IFC4X3_ADD1_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcCompressorType_type);defs.push_back(IFC4X3_ADD1_IfcFanType_type);defs.push_back(IFC4X3_ADD1_IfcPumpType_type); - IFC4X3_ADD1_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_ADD1_IfcConnectedFaceSet_type);defs.push_back(IFC4X3_ADD1_IfcEdge_type);defs.push_back(IFC4X3_ADD1_IfcFace_type);defs.push_back(IFC4X3_ADD1_IfcFaceBound_type);defs.push_back(IFC4X3_ADD1_IfcLoop_type);defs.push_back(IFC4X3_ADD1_IfcPath_type);defs.push_back(IFC4X3_ADD1_IfcVertex_type); - IFC4X3_ADD1_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X3_ADD1_IfcConnectionPointGeometry_type);defs.push_back(IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X3_ADD1_IfcConnectionVolumeGeometry_type); - IFC4X3_ADD1_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcConnectionPointEccentricity_type); - IFC4X3_ADD1_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X3_ADD1_IfcConstructionMaterialResource_type);defs.push_back(IFC4X3_ADD1_IfcConstructionProductResource_type);defs.push_back(IFC4X3_ADD1_IfcCrewResource_type);defs.push_back(IFC4X3_ADD1_IfcLaborResource_type);defs.push_back(IFC4X3_ADD1_IfcSubContractResource_type); - IFC4X3_ADD1_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X3_ADD1_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X3_ADD1_IfcConstructionProductResourceType_type);defs.push_back(IFC4X3_ADD1_IfcCrewResourceType_type);defs.push_back(IFC4X3_ADD1_IfcLaborResourceType_type);defs.push_back(IFC4X3_ADD1_IfcSubContractResourceType_type); - IFC4X3_ADD1_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcConstructionResource_type); - IFC4X3_ADD1_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcConstructionResourceType_type); - IFC4X3_ADD1_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcContext_type);defs.push_back(IFC4X3_ADD1_IfcObject_type);defs.push_back(IFC4X3_ADD1_IfcTypeObject_type); - IFC4X3_ADD1_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcContextDependentUnit_type);defs.push_back(IFC4X3_ADD1_IfcConversionBasedUnit_type);defs.push_back(IFC4X3_ADD1_IfcSIUnit_type); - IFC4X3_ADD1_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type); - IFC4X3_ADD1_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcCostValue_type); - IFC4X3_ADD1_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcCsgSolid_type);defs.push_back(IFC4X3_ADD1_IfcManifoldSolidBrep_type);defs.push_back(IFC4X3_ADD1_IfcSectionedSolid_type);defs.push_back(IFC4X3_ADD1_IfcSweptAreaSolid_type);defs.push_back(IFC4X3_ADD1_IfcSweptDiskSolid_type); - IFC4X3_ADD1_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcCurveStyle_type);defs.push_back(IFC4X3_ADD1_IfcFillAreaStyle_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceStyle_type);defs.push_back(IFC4X3_ADD1_IfcTextStyle_type); - IFC4X3_ADD1_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcCylindricalSurface_type);defs.push_back(IFC4X3_ADD1_IfcPlane_type);defs.push_back(IFC4X3_ADD1_IfcSphericalSurface_type);defs.push_back(IFC4X3_ADD1_IfcToroidalSurface_type); - IFC4X3_ADD1_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type);defs.push_back(IFC4X3_ADD1_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X3_ADD1_IfcRevolvedAreaSolid_type); - IFC4X3_ADD1_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type); - IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcDistributionChamberElement_type);defs.push_back(IFC4X3_ADD1_IfcEnergyConversionDevice_type);defs.push_back(IFC4X3_ADD1_IfcFlowController_type);defs.push_back(IFC4X3_ADD1_IfcFlowFitting_type);defs.push_back(IFC4X3_ADD1_IfcFlowMovingDevice_type);defs.push_back(IFC4X3_ADD1_IfcFlowSegment_type);defs.push_back(IFC4X3_ADD1_IfcFlowStorageDevice_type);defs.push_back(IFC4X3_ADD1_IfcFlowTerminal_type);defs.push_back(IFC4X3_ADD1_IfcFlowTreatmentDevice_type); - IFC4X3_ADD1_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_ADD1_IfcDistributionChamberElementType_type);defs.push_back(IFC4X3_ADD1_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcFlowControllerType_type);defs.push_back(IFC4X3_ADD1_IfcFlowFittingType_type);defs.push_back(IFC4X3_ADD1_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcFlowSegmentType_type);defs.push_back(IFC4X3_ADD1_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcFlowTerminalType_type);defs.push_back(IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); - IFC4X3_ADD1_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcDistributionCircuit_type); - IFC4X3_ADD1_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcDistributionControlElement_type);defs.push_back(IFC4X3_ADD1_IfcDistributionFlowElement_type); - IFC4X3_ADD1_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcDistributionControlElementType_type);defs.push_back(IFC4X3_ADD1_IfcDistributionFlowElementType_type); - IFC4X3_ADD1_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcDistributionPort_type); - IFC4X3_ADD1_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcDoorLiningProperties_type);defs.push_back(IFC4X3_ADD1_IfcDoorPanelProperties_type);defs.push_back(IFC4X3_ADD1_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X3_ADD1_IfcWindowLiningProperties_type);defs.push_back(IFC4X3_ADD1_IfcWindowPanelProperties_type); - IFC4X3_ADD1_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type); - IFC4X3_ADD1_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type); - IFC4X3_ADD1_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcDuctSilencer_type);defs.push_back(IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type);defs.push_back(IFC4X3_ADD1_IfcFilter_type);defs.push_back(IFC4X3_ADD1_IfcInterceptor_type); - IFC4X3_ADD1_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcDuctSilencerType_type);defs.push_back(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcFilterType_type);defs.push_back(IFC4X3_ADD1_IfcInterceptorType_type); - IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcEarthworksCut_type);defs.push_back(IFC4X3_ADD1_IfcOpeningElement_type);defs.push_back(IFC4X3_ADD1_IfcVoidingFeature_type); - IFC4X3_ADD1_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcEarthworksFill_type);defs.push_back(IFC4X3_ADD1_IfcReinforcedSoil_type); - IFC4X3_ADD1_IfcEarthworksElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcEdgeCurve_type);defs.push_back(IFC4X3_ADD1_IfcOrientedEdge_type);defs.push_back(IFC4X3_ADD1_IfcSubedge_type); - IFC4X3_ADD1_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcEdgeLoop_type);defs.push_back(IFC4X3_ADD1_IfcPolyLoop_type);defs.push_back(IFC4X3_ADD1_IfcVertexLoop_type); - IFC4X3_ADD1_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X3_ADD1_IfcTank_type); - IFC4X3_ADD1_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X3_ADD1_IfcTankType_type); - IFC4X3_ADD1_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcElementQuantity_type); - IFC4X3_ADD1_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcElementType_type);defs.push_back(IFC4X3_ADD1_IfcSpatialElementType_type); - IFC4X3_ADD1_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcEvent_type);defs.push_back(IFC4X3_ADD1_IfcProcedure_type);defs.push_back(IFC4X3_ADD1_IfcTask_type); - IFC4X3_ADD1_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcEventTime_type);defs.push_back(IFC4X3_ADD1_IfcLagTime_type);defs.push_back(IFC4X3_ADD1_IfcResourceTime_type);defs.push_back(IFC4X3_ADD1_IfcTaskTime_type);defs.push_back(IFC4X3_ADD1_IfcWorkTime_type); - IFC4X3_ADD1_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcEventType_type);defs.push_back(IFC4X3_ADD1_IfcProcedureType_type);defs.push_back(IFC4X3_ADD1_IfcTaskType_type); - IFC4X3_ADD1_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcExtendedProperties_type);defs.push_back(IFC4X3_ADD1_IfcPreDefinedProperties_type);defs.push_back(IFC4X3_ADD1_IfcProperty_type);defs.push_back(IFC4X3_ADD1_IfcPropertyEnumeration_type); - IFC4X3_ADD1_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcExternalSpatialElement_type); - IFC4X3_ADD1_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X3_ADD1_IfcSpatialStructureElement_type);defs.push_back(IFC4X3_ADD1_IfcSpatialZone_type); - IFC4X3_ADD1_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type); - IFC4X3_ADD1_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcFaceOuterBound_type); - IFC4X3_ADD1_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcFaceSurface_type); - IFC4X3_ADD1_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcFacetedBrepWithVoids_type); - IFC4X3_ADD1_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcFailureConnectionCondition_type);defs.push_back(IFC4X3_ADD1_IfcSlippageConnectionCondition_type); - IFC4X3_ADD1_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcFeatureElementAddition_type);defs.push_back(IFC4X3_ADD1_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceFeature_type); - IFC4X3_ADD1_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcFurniture_type);defs.push_back(IFC4X3_ADD1_IfcSystemFurnitureElement_type); - IFC4X3_ADD1_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcFurnitureType_type);defs.push_back(IFC4X3_ADD1_IfcSystemFurnitureElementType_type); - IFC4X3_ADD1_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcGeographicCRS_type);defs.push_back(IFC4X3_ADD1_IfcProjectedCRS_type); - IFC4X3_ADD1_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcGeometricCurveSet_type); - IFC4X3_ADD1_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcGeometricRepresentationContext_type); - IFC4X3_ADD1_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X3_ADD1_IfcMappedItem_type);defs.push_back(IFC4X3_ADD1_IfcStyledItem_type);defs.push_back(IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - IFC4X3_ADD1_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type); - IFC4X3_ADD1_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcGeotechnicalAssembly_type);defs.push_back(IFC4X3_ADD1_IfcGeotechnicalStratum_type); - IFC4X3_ADD1_IfcGeotechnicalElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcGrid_type);defs.push_back(IFC4X3_ADD1_IfcLinearPositioningElement_type);defs.push_back(IFC4X3_ADD1_IfcReferent_type); - IFC4X3_ADD1_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcGridPlacement_type);defs.push_back(IFC4X3_ADD1_IfcLinearPlacement_type);defs.push_back(IFC4X3_ADD1_IfcLocalPlacement_type); - IFC4X3_ADD1_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X3_ADD1_IfcTessellatedFaceSet_type); - IFC4X3_ADD1_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X3_ADD1_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type);defs.push_back(IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type); - IFC4X3_ADD1_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcIndexedTextureMap_type);defs.push_back(IFC4X3_ADD1_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X3_ADD1_IfcTextureMap_type); - IFC4X3_ADD1_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcIntersectionCurve_type);defs.push_back(IFC4X3_ADD1_IfcSeamCurve_type); - IFC4X3_ADD1_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcIrregularTimeSeries_type);defs.push_back(IFC4X3_ADD1_IfcRegularTimeSeries_type); - IFC4X3_ADD1_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcLightSourceAmbient_type);defs.push_back(IFC4X3_ADD1_IfcLightSourceDirectional_type);defs.push_back(IFC4X3_ADD1_IfcLightSourceGoniometric_type);defs.push_back(IFC4X3_ADD1_IfcLightSourcePositional_type); - IFC4X3_ADD1_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcLightSourceSpot_type); - IFC4X3_ADD1_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcMapConversion_type);defs.push_back(IFC4X3_ADD1_IfcRigidOperation_type); - IFC4X3_ADD1_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcMapConversionScaled_type); - IFC4X3_ADD1_IfcMapConversion_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_ADD1_IfcMaterial_type);defs.push_back(IFC4X3_ADD1_IfcMaterialConstituent_type);defs.push_back(IFC4X3_ADD1_IfcMaterialConstituentSet_type);defs.push_back(IFC4X3_ADD1_IfcMaterialLayer_type);defs.push_back(IFC4X3_ADD1_IfcMaterialLayerSet_type);defs.push_back(IFC4X3_ADD1_IfcMaterialProfile_type);defs.push_back(IFC4X3_ADD1_IfcMaterialProfileSet_type); - IFC4X3_ADD1_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X3_ADD1_IfcProductDefinitionShape_type); - IFC4X3_ADD1_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X3_ADD1_IfcMaterialProfileSetUsage_type); - IFC4X3_ADD1_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type); - IFC4X3_ADD1_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type); - IFC4X3_ADD1_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type); - IFC4X3_ADD1_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcMaterialProperties_type);defs.push_back(IFC4X3_ADD1_IfcProfileProperties_type); - IFC4X3_ADD1_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcMetric_type);defs.push_back(IFC4X3_ADD1_IfcObjective_type); - IFC4X3_ADD1_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcMirroredProfileDef_type); - IFC4X3_ADD1_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcObjectDefinition_type);defs.push_back(IFC4X3_ADD1_IfcPropertyDefinition_type);defs.push_back(IFC4X3_ADD1_IfcRelationship_type); - IFC4X3_ADD1_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcOccupant_type); - IFC4X3_ADD1_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcOffsetCurve2D_type);defs.push_back(IFC4X3_ADD1_IfcOffsetCurve3D_type);defs.push_back(IFC4X3_ADD1_IfcOffsetCurveByDistances_type); - IFC4X3_ADD1_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcOuterBoundaryCurve_type); - IFC4X3_ADD1_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - IFC4X3_ADD1_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcPlanarBox_type); - IFC4X3_ADD1_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcPolygonalFaceSet_type);defs.push_back(IFC4X3_ADD1_IfcTriangulatedFaceSet_type); - IFC4X3_ADD1_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcPostalAddress_type);defs.push_back(IFC4X3_ADD1_IfcTelecomAddress_type); - IFC4X3_ADD1_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcPreDefinedColour_type);defs.push_back(IFC4X3_ADD1_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X3_ADD1_IfcPreDefinedTextFont_type); - IFC4X3_ADD1_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X3_ADD1_IfcPropertySet_type);defs.push_back(IFC4X3_ADD1_IfcQuantitySet_type); - IFC4X3_ADD1_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcPresentationLayerWithStyle_type); - IFC4X3_ADD1_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcProject_type);defs.push_back(IFC4X3_ADD1_IfcProjectLibrary_type); - IFC4X3_ADD1_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcProjectionElement_type); - IFC4X3_ADD1_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcPropertyBoundedValue_type);defs.push_back(IFC4X3_ADD1_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X3_ADD1_IfcPropertyListValue_type);defs.push_back(IFC4X3_ADD1_IfcPropertyReferenceValue_type);defs.push_back(IFC4X3_ADD1_IfcPropertySingleValue_type);defs.push_back(IFC4X3_ADD1_IfcPropertyTableValue_type); - IFC4X3_ADD1_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcPropertySetDefinition_type);defs.push_back(IFC4X3_ADD1_IfcPropertyTemplateDefinition_type); - IFC4X3_ADD1_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcPropertySetTemplate_type);defs.push_back(IFC4X3_ADD1_IfcPropertyTemplate_type); - IFC4X3_ADD1_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_ADD1_IfcQuantityArea_type);defs.push_back(IFC4X3_ADD1_IfcQuantityCount_type);defs.push_back(IFC4X3_ADD1_IfcQuantityLength_type);defs.push_back(IFC4X3_ADD1_IfcQuantityNumber_type);defs.push_back(IFC4X3_ADD1_IfcQuantityTime_type);defs.push_back(IFC4X3_ADD1_IfcQuantityVolume_type);defs.push_back(IFC4X3_ADD1_IfcQuantityWeight_type); - IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type); - IFC4X3_ADD1_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type); - IFC4X3_ADD1_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcReinforcementBarProperties_type);defs.push_back(IFC4X3_ADD1_IfcSectionProperties_type);defs.push_back(IFC4X3_ADD1_IfcSectionReinforcementProperties_type); - IFC4X3_ADD1_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcReinforcingBar_type);defs.push_back(IFC4X3_ADD1_IfcReinforcingMesh_type);defs.push_back(IFC4X3_ADD1_IfcTendon_type);defs.push_back(IFC4X3_ADD1_IfcTendonAnchor_type);defs.push_back(IFC4X3_ADD1_IfcTendonConduit_type); - IFC4X3_ADD1_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcReinforcingBarType_type);defs.push_back(IFC4X3_ADD1_IfcReinforcingMeshType_type);defs.push_back(IFC4X3_ADD1_IfcTendonAnchorType_type);defs.push_back(IFC4X3_ADD1_IfcTendonConduitType_type);defs.push_back(IFC4X3_ADD1_IfcTendonType_type); - IFC4X3_ADD1_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcRelAdheresToElement_type);defs.push_back(IFC4X3_ADD1_IfcRelAggregates_type);defs.push_back(IFC4X3_ADD1_IfcRelNests_type);defs.push_back(IFC4X3_ADD1_IfcRelProjectsElement_type);defs.push_back(IFC4X3_ADD1_IfcRelVoidsElement_type); - IFC4X3_ADD1_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcRelAssigns_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociates_type);defs.push_back(IFC4X3_ADD1_IfcRelConnects_type);defs.push_back(IFC4X3_ADD1_IfcRelDeclares_type);defs.push_back(IFC4X3_ADD1_IfcRelDecomposes_type);defs.push_back(IFC4X3_ADD1_IfcRelDefines_type); - IFC4X3_ADD1_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_ADD1_IfcRelAssignsToActor_type);defs.push_back(IFC4X3_ADD1_IfcRelAssignsToControl_type);defs.push_back(IFC4X3_ADD1_IfcRelAssignsToGroup_type);defs.push_back(IFC4X3_ADD1_IfcRelAssignsToProcess_type);defs.push_back(IFC4X3_ADD1_IfcRelAssignsToProduct_type);defs.push_back(IFC4X3_ADD1_IfcRelAssignsToResource_type); - IFC4X3_ADD1_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type); - IFC4X3_ADD1_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_ADD1_IfcRelAssociatesApproval_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociatesClassification_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociatesDocument_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociatesMaterial_type);defs.push_back(IFC4X3_ADD1_IfcRelAssociatesProfileDef_type); - IFC4X3_ADD1_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_ADD1_IfcRelConnectsElements_type);defs.push_back(IFC4X3_ADD1_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X3_ADD1_IfcRelConnectsPorts_type);defs.push_back(IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X3_ADD1_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X3_ADD1_IfcRelCoversBldgElements_type);defs.push_back(IFC4X3_ADD1_IfcRelCoversSpaces_type);defs.push_back(IFC4X3_ADD1_IfcRelFillsElement_type);defs.push_back(IFC4X3_ADD1_IfcRelFlowControlElements_type);defs.push_back(IFC4X3_ADD1_IfcRelInterferesElements_type);defs.push_back(IFC4X3_ADD1_IfcRelPositions_type);defs.push_back(IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X3_ADD1_IfcRelSequence_type);defs.push_back(IFC4X3_ADD1_IfcRelServicesBuildings_type);defs.push_back(IFC4X3_ADD1_IfcRelSpaceBoundary_type); - IFC4X3_ADD1_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcRelConnectsPathElements_type);defs.push_back(IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type); - IFC4X3_ADD1_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type); - IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_ADD1_IfcRelDefinesByObject_type);defs.push_back(IFC4X3_ADD1_IfcRelDefinesByProperties_type);defs.push_back(IFC4X3_ADD1_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X3_ADD1_IfcRelDefinesByType_type); - IFC4X3_ADD1_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_ADD1_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type); - IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type); - IFC4X3_ADD1_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type); - IFC4X3_ADD1_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcSectionedSolidHorizontal_type); - IFC4X3_ADD1_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcShapeModel_type);defs.push_back(IFC4X3_ADD1_IfcStyleModel_type); - IFC4X3_ADD1_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcShapeRepresentation_type);defs.push_back(IFC4X3_ADD1_IfcTopologyRepresentation_type); - IFC4X3_ADD1_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcSpaceType_type); - IFC4X3_ADD1_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcSpatialStructureElementType_type);defs.push_back(IFC4X3_ADD1_IfcSpatialZoneType_type); - IFC4X3_ADD1_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcStructuralAction_type);defs.push_back(IFC4X3_ADD1_IfcStructuralReaction_type); - IFC4X3_ADD1_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcStructuralConnection_type);defs.push_back(IFC4X3_ADD1_IfcStructuralMember_type); - IFC4X3_ADD1_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcStructuralCurveAction_type);defs.push_back(IFC4X3_ADD1_IfcStructuralPointAction_type);defs.push_back(IFC4X3_ADD1_IfcStructuralSurfaceAction_type); - IFC4X3_ADD1_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcStructuralCurveConnection_type);defs.push_back(IFC4X3_ADD1_IfcStructuralPointConnection_type);defs.push_back(IFC4X3_ADD1_IfcStructuralSurfaceConnection_type); - IFC4X3_ADD1_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcStructuralCurveMember_type);defs.push_back(IFC4X3_ADD1_IfcStructuralSurfaceMember_type); - IFC4X3_ADD1_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type); - IFC4X3_ADD1_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcStructuralCurveReaction_type);defs.push_back(IFC4X3_ADD1_IfcStructuralPointReaction_type);defs.push_back(IFC4X3_ADD1_IfcStructuralSurfaceReaction_type); - IFC4X3_ADD1_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralLinearAction_type); - IFC4X3_ADD1_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralLoadCase_type); - IFC4X3_ADD1_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X3_ADD1_IfcStructuralLoadOrResult_type); - IFC4X3_ADD1_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_ADD1_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X3_ADD1_IfcStructuralLoadTemperature_type); - IFC4X3_ADD1_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type); - IFC4X3_ADD1_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcStructuralLoadStatic_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceReinforcementArea_type); - IFC4X3_ADD1_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralPlanarAction_type); - IFC4X3_ADD1_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type); - IFC4X3_ADD1_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcStyledRepresentation_type); - IFC4X3_ADD1_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X3_ADD1_IfcSurfaceOfRevolution_type); - IFC4X3_ADD1_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcSurfaceStyleRendering_type); - IFC4X3_ADD1_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type); - IFC4X3_ADD1_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcTaskTimeRecurring_type); - IFC4X3_ADD1_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcTextLiteralWithExtent_type); - IFC4X3_ADD1_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcTextStyleFontModel_type); - IFC4X3_ADD1_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type); - IFC4X3_ADD1_IfcTextureCoordinateIndices_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcTransportElement_type);defs.push_back(IFC4X3_ADD1_IfcVehicle_type); - IFC4X3_ADD1_IfcTransportationDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcTransportElementType_type);defs.push_back(IFC4X3_ADD1_IfcVehicleType_type); - IFC4X3_ADD1_IfcTransportationDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type); - IFC4X3_ADD1_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_ADD1_IfcTypeProcess_type);defs.push_back(IFC4X3_ADD1_IfcTypeProduct_type);defs.push_back(IFC4X3_ADD1_IfcTypeResource_type); - IFC4X3_ADD1_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcVertexPoint_type); - IFC4X3_ADD1_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_ADD1_IfcWallStandardCase_type); - IFC4X3_ADD1_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_ADD1_IfcWorkPlan_type);defs.push_back(IFC4X3_ADD1_IfcWorkSchedule_type); - IFC4X3_ADD1_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[77], + strings[78], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type(strings[79], 32, { + strings[80], + strings[81], + strings[82], + strings[83], + strings[84], + strings[85], + strings[86] + }); + IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type(strings[87], 35, { + strings[80], + strings[88], + strings[89], + strings[82], + strings[90], + strings[83], + strings[91], + strings[85], + strings[86] + }); + IFC4X3_ADD1_IfcAlignmentTypeEnum_type = new enumeration_type(strings[92], 38, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type(strings[93], 41, { + strings[88], + strings[89], + strings[94], + strings[95] + }); + IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[96], 42, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[97], 43, { + strings[98], + strings[99], + strings[100], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[101], 44, { + strings[102], + strings[103], + strings[104], + strings[105], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAngularVelocityMeasure_type = new type_declaration(strings[106], 45, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcAnnotationTypeEnum_type = new enumeration_type(strings[107], 48, { + strings[108], + strings[109], + strings[110], + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcAreaDensityMeasure_type = new type_declaration(strings[117], 58, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcAreaMeasure_type = new type_declaration(strings[118], 59, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[119], 60, { + strings[120], + strings[121], + strings[122], + strings[123] + }); + IFC4X3_ADD1_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[124], 61, { + strings[125], + strings[50], + strings[9] + }); + IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[126], 66, { + strings[127], + strings[128], + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[134], + strings[135], + strings[136], + strings[137], + strings[138], + strings[139], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBSplineCurveForm_type = new enumeration_type(strings[140], 108, { + strings[141], + strings[142], + strings[143], + strings[144], + strings[145], + strings[146] + }); + IFC4X3_ADD1_IfcBSplineSurfaceForm_type = new enumeration_type(strings[147], 111, { + strings[148], + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[154], + strings[155], + strings[156], + strings[157], + strings[146] + }); + IFC4X3_ADD1_IfcBeamTypeEnum_type = new enumeration_type(strings[158], 74, { + strings[159], + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165], + strings[166], + strings[167], + strings[168], + strings[169], + strings[170], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBearingTypeEnum_type = new enumeration_type(strings[171], 77, { + strings[172], + strings[173], + strings[174], + strings[175], + strings[176], + strings[177], + strings[178], + strings[179], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBenchmarkEnum_type = new enumeration_type(strings[180], 78, { + strings[181], + strings[182], + strings[183], + strings[184], + strings[185], + strings[186], + strings[187], + strings[188], + strings[189], + strings[190] + }); + IFC4X3_ADD1_IfcBinary_type = new type_declaration(strings[191], 80, new simple_type(simple_type::binary_type)); + IFC4X3_ADD1_IfcBoilerTypeEnum_type = new enumeration_type(strings[192], 85, { + strings[193], + strings[194], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBoolean_type = new type_declaration(strings[195], 86, new simple_type(simple_type::boolean_type)); + IFC4X3_ADD1_IfcBooleanOperator_type = new enumeration_type(strings[196], 89, { + strings[197], + strings[198], + strings[199] + }); + IFC4X3_ADD1_IfcBridgePartTypeEnum_type = new enumeration_type(strings[200], 105, { + strings[201], + strings[202], + strings[203], + strings[204], + strings[205], + strings[206], + strings[207], + strings[208], + strings[209], + strings[210], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBridgeTypeEnum_type = new enumeration_type(strings[211], 106, { + strings[212], + strings[213], + strings[214], + strings[215], + strings[216], + strings[217], + strings[218], + strings[219], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[220], 116, { + strings[221], + strings[222], + strings[223], + strings[224], + strings[225], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[226], 119, { + strings[227], + strings[228], + strings[229], + strings[230], + strings[231], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[232], 122, { + strings[233], + strings[204], + strings[234], + strings[235], + strings[236], + strings[33], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type = new enumeration_type(strings[237], 126, { + strings[238], + strings[233], + strings[204], + strings[234], + strings[239], + strings[235], + strings[240], + strings[241], + strings[242], + strings[243], + strings[236], + strings[244], + strings[33], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcBurnerTypeEnum_type = new enumeration_type(strings[245], 129, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[246], 132, { + strings[247], + strings[248], + strings[249], + strings[250], + strings[251], + strings[252], + strings[253], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[254], 135, { + strings[255], + strings[256], + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCableFittingTypeEnum_type = new enumeration_type(strings[262], 138, { + strings[248], + strings[263], + strings[264], + strings[265], + strings[250], + strings[253], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[266], 141, { + strings[267], + strings[268], + strings[269], + strings[270], + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type = new enumeration_type(strings[277], 144, { + strings[278], + strings[279], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCardinalPointReference_type = new type_declaration(strings[280], 145, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcChangeActionEnum_type = new enumeration_type(strings[281], 156, { + strings[282], + strings[283], + strings[284], + strings[285], + strings[9] + }); + IFC4X3_ADD1_IfcChillerTypeEnum_type = new enumeration_type(strings[286], 159, { + strings[287], + strings[288], + strings[289], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcChimneyTypeEnum_type = new enumeration_type(strings[290], 162, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCoilTypeEnum_type = new enumeration_type(strings[291], 176, { + strings[292], + strings[293], + strings[294], + strings[295], + strings[296], + strings[297], + strings[298], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcColumnTypeEnum_type = new enumeration_type(strings[299], 184, { + strings[300], + strings[301], + strings[302], + strings[303], + strings[304], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[305], 187, { + strings[306], + strings[307], + strings[308], + strings[4], + strings[309], + strings[310], + strings[311], + strings[312], + strings[313], + strings[314], + strings[315], + strings[316], + strings[317], + strings[318], + strings[319], + strings[320], + strings[321], + strings[322], + strings[323], + strings[324], + strings[325], + strings[326], + strings[327], + strings[328], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcComplexNumber_type = new type_declaration(strings[329], 188, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[330], 191, { + strings[331], + strings[332] + }); + IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[333], 196, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X3_ADD1_IfcCompressorTypeEnum_type = new enumeration_type(strings[334], 199, { + strings[335], + strings[336], + strings[337], + strings[338], + strings[339], + strings[340], + strings[341], + strings[342], + strings[343], + strings[344], + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCondenserTypeEnum_type = new enumeration_type(strings[350], 202, { + strings[287], + strings[351], + strings[289], + strings[352], + strings[353], + strings[354], + strings[355], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcConnectionTypeEnum_type = new enumeration_type(strings[356], 210, { + strings[357], + strings[358], + strings[359], + strings[9] + }); + IFC4X3_ADD1_IfcConstraintEnum_type = new enumeration_type(strings[360], 213, { + strings[361], + strings[362], + strings[363], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[364], 216, { + strings[365], + strings[366], + strings[367], + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[373], 219, { + strings[374], + strings[375], + strings[376], + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[383], 222, { + strings[384], + strings[385], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcContextDependentMeasure_type = new type_declaration(strings[386], 226, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcControllerTypeEnum_type = new enumeration_type(strings[387], 231, { + strings[388], + strings[389], + strings[390], + strings[391], + strings[392], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type = new enumeration_type(strings[393], 236, { + strings[394], + strings[395], + strings[396], + strings[397], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[398], 239, { + strings[399], + strings[400], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[401], 242, { + strings[402], + strings[403], + strings[404], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCostItemTypeEnum_type = new enumeration_type(strings[405], 248, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[406], 250, { + strings[407], + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[413], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCountMeasure_type = new type_declaration(strings[414], 252, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcCourseTypeEnum_type = new enumeration_type(strings[415], 255, { + strings[416], + strings[417], + strings[418], + strings[419], + strings[420], + strings[421], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCoveringTypeEnum_type = new enumeration_type(strings[422], 258, { + strings[423], + strings[424], + strings[425], + strings[426], + strings[223], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[432], + strings[433], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[434], 261, { + strings[49], + strings[50], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[435], 269, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcCurvatureMeasure_type = new type_declaration(strings[436], 270, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcCurveInterpolationEnum_type = new enumeration_type(strings[437], 275, { + strings[438], + strings[439], + strings[440], + strings[9] + }); + IFC4X3_ADD1_IfcDamperTypeEnum_type = new enumeration_type(strings[441], 288, { + strings[442], + strings[443], + strings[444], + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[452], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDataOriginEnum_type = new enumeration_type(strings[453], 289, { + strings[454], + strings[455], + strings[456], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDate_type = new type_declaration(strings[457], 290, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcDateTime_type = new type_declaration(strings[458], 291, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcDayInMonthNumber_type = new type_declaration(strings[459], 292, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcDayInWeekNumber_type = new type_declaration(strings[460], 293, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcDerivedUnitEnum_type = new enumeration_type(strings[461], 301, { + strings[462], + strings[463], + strings[464], + strings[465], + strings[466], + strings[467], + strings[468], + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[477], + strings[478], + strings[479], + strings[480], + strings[481], + strings[482], + strings[483], + strings[484], + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[502], + strings[503], + strings[504], + strings[505], + strings[506], + strings[507], + strings[508], + strings[509], + strings[510], + strings[511], + strings[512], + strings[513], + strings[8] + }); + IFC4X3_ADD1_IfcDescriptiveMeasure_type = new type_declaration(strings[514], 302, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcDimensionCount_type = new type_declaration(strings[515], 304, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcDirectionSenseEnum_type = new enumeration_type(strings[516], 306, { + strings[517], + strings[518] + }); + IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[519], 311, { + strings[520], + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[535], + strings[536], + strings[537], + strings[538], + strings[539], + strings[540], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type = new enumeration_type(strings[541], 314, { + strings[542], + strings[543], + strings[544], + strings[545], + strings[546], + strings[547], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[548], 317, { + strings[549], + strings[550], + strings[551], + strings[552], + strings[553], + strings[554], + strings[555], + strings[556], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[557], 326, { + strings[558], + strings[559], + strings[560], + strings[561], + strings[562], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDistributionSystemEnum_type = new enumeration_type(strings[563], 328, { + strings[564], + strings[565], + strings[566], + strings[567], + strings[568], + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[577], + strings[578], + strings[579], + strings[580], + strings[581], + strings[582], + strings[583], + strings[584], + strings[377], + strings[585], + strings[586], + strings[368], + strings[369], + strings[587], + strings[588], + strings[589], + strings[590], + strings[591], + strings[592], + strings[593], + strings[594], + strings[595], + strings[596], + strings[597], + strings[598], + strings[599], + strings[600], + strings[601], + strings[602], + strings[138], + strings[603], + strings[604], + strings[605], + strings[606], + strings[607], + strings[608], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[609], 329, { + strings[610], + strings[611], + strings[612], + strings[613], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDocumentStatusEnum_type = new enumeration_type(strings[614], 334, { + strings[615], + strings[616], + strings[617], + strings[618], + strings[9] + }); + IFC4X3_ADD1_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[619], 337, { + strings[620], + strings[621], + strings[622], + strings[623], + strings[624], + strings[625], + strings[626], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[627], 338, { + strings[628], + strings[629], + strings[630], + strings[9] + }); + IFC4X3_ADD1_IfcDoorTypeEnum_type = new enumeration_type(strings[631], 341, { + strings[632], + strings[633], + strings[634], + strings[635], + strings[636], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[637], 342, { + strings[638], + strings[639], + strings[640], + strings[641], + strings[642], + strings[643], + strings[644], + strings[645], + strings[646], + strings[647], + strings[648], + strings[649], + strings[650], + strings[651], + strings[623], + strings[652], + strings[624], + strings[653], + strings[654], + strings[655], + strings[656], + strings[657], + strings[658], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDoseEquivalentMeasure_type = new type_declaration(strings[659], 343, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[660], 348, { + strings[247], + strings[248], + strings[263], + strings[264], + strings[250], + strings[661], + strings[253], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[662], 351, { + strings[663], + strings[664], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[665], 354, { + strings[666], + strings[667], + strings[668], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcDuration_type = new type_declaration(strings[669], 355, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcDynamicViscosityMeasure_type = new type_declaration(strings[670], 356, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type = new enumeration_type(strings[671], 358, { + strings[672], + strings[673], + strings[674], + strings[675], + strings[676], + strings[677], + strings[678], + strings[679], + strings[555], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type = new enumeration_type(strings[680], 361, { + strings[681], + strings[682], + strings[683], + strings[684], + strings[685], + strings[686], + strings[687], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[688], 367, { + strings[689], + strings[690], + strings[691], + strings[692], + strings[693], + strings[694], + strings[695], + strings[696], + strings[697], + strings[698], + strings[699], + strings[700], + strings[701], + strings[702], + strings[703], + strings[704], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[705], 368, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcElectricChargeMeasure_type = new type_declaration(strings[706], 369, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcElectricConductanceMeasure_type = new type_declaration(strings[707], 370, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcElectricCurrentMeasure_type = new type_declaration(strings[708], 371, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[709], 374, { + strings[542], + strings[544], + strings[546], + strings[547], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[710], 377, { + strings[711], + strings[712], + strings[713], + strings[714], + strings[715], + strings[716], + strings[717], + strings[718], + strings[719], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type(strings[720], 380, { + strings[721], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[722], 383, { + strings[723], + strings[724], + strings[725], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[726], 386, { + strings[727], + strings[728], + strings[729], + strings[730], + strings[731], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricResistanceMeasure_type = new type_declaration(strings[732], 387, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[733], 390, { + strings[734], + strings[735], + strings[736], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElectricVoltageMeasure_type = new type_declaration(strings[737], 391, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[738], 396, { + strings[201], + strings[739], + strings[740], + strings[741], + strings[742], + strings[743], + strings[202], + strings[744], + strings[745], + strings[217], + strings[746], + strings[747], + strings[205], + strings[207], + strings[748], + strings[749], + strings[750], + strings[751], + strings[752], + strings[753], + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[759], + strings[219], + strings[760], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcElementCompositionEnum_type = new enumeration_type(strings[761], 399, { + strings[227], + strings[228], + strings[229] + }); + IFC4X3_ADD1_IfcEnergyMeasure_type = new type_declaration(strings[762], 406, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcEngineTypeEnum_type = new enumeration_type(strings[763], 409, { + strings[764], + strings[765], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[766], 412, { + strings[767], + strings[768], + strings[769], + strings[770], + strings[771], + strings[772], + strings[773], + strings[774], + strings[775], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[776], 415, { + strings[777], + strings[778], + strings[779], + strings[780], + strings[781], + strings[782], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[783], 418, { + strings[784], + strings[785], + strings[786], + strings[787], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcEventTypeEnum_type = new enumeration_type(strings[788], 420, { + strings[789], + strings[790], + strings[791], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[792], 429, { + strings[793], + strings[794], + strings[795], + strings[796], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type = new enumeration_type(strings[797], 443, { + strings[798], + strings[799], + strings[250], + strings[800], + strings[801], + strings[208], + strings[209], + strings[802], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFacilityUsageEnum_type = new enumeration_type(strings[803], 444, { + strings[804], + strings[805], + strings[806], + strings[807], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFanTypeEnum_type = new enumeration_type(strings[808], 448, { + strings[809], + strings[810], + strings[811], + strings[812], + strings[813], + strings[814], + strings[815], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFastenerTypeEnum_type = new enumeration_type(strings[816], 451, { + strings[817], + strings[818], + strings[819], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFilterTypeEnum_type = new enumeration_type(strings[820], 461, { + strings[821], + strings[822], + strings[823], + strings[824], + strings[825], + strings[826], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[827], 464, { + strings[828], + strings[829], + strings[830], + strings[831], + strings[832], + strings[833], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFlowDirectionEnum_type = new enumeration_type(strings[834], 468, { + strings[835], + strings[836], + strings[837], + strings[9] + }); + IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[838], 473, { + strings[839], + strings[840], + strings[841], + strings[842], + strings[843], + strings[844], + strings[845], + strings[846], + strings[847], + strings[848], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[849], 476, { + strings[850], + strings[851], + strings[852], + strings[853], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcFontStyle_type = new type_declaration(strings[854], 487, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcFontVariant_type = new type_declaration(strings[855], 488, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcFontWeight_type = new type_declaration(strings[856], 489, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcFootingTypeEnum_type = new enumeration_type(strings[857], 492, { + strings[858], + strings[859], + strings[860], + strings[861], + strings[862], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcForceMeasure_type = new type_declaration(strings[863], 493, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcFrequencyMeasure_type = new type_declaration(strings[864], 494, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcFurnitureTypeEnum_type = new enumeration_type(strings[865], 499, { + strings[866], + strings[867], + strings[868], + strings[869], + strings[870], + strings[871], + strings[872], + strings[873], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[874], 503, { + strings[875], + strings[876], + strings[877], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcGeometricProjectionEnum_type = new enumeration_type(strings[878], 505, { + strings[879], + strings[880], + strings[881], + strings[882], + strings[883], + strings[884], + strings[885], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type = new enumeration_type(strings[886], 516, { + strings[887], + strings[888], + strings[194], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[889], 518, { + strings[890], + strings[891] + }); + IFC4X3_ADD1_IfcGloballyUniqueId_type = new type_declaration(strings[892], 517, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcGridTypeEnum_type = new enumeration_type(strings[893], 524, { + strings[894], + strings[895], + strings[667], + strings[896], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[897], 530, { + strings[898], + strings[899], + strings[900], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[901], 531, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcHeatingValueMeasure_type = new type_declaration(strings[902], 532, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcHumidifierTypeEnum_type = new enumeration_type(strings[903], 535, { + strings[904], + strings[905], + strings[906], + strings[907], + strings[908], + strings[909], + strings[910], + strings[911], + strings[912], + strings[913], + strings[914], + strings[915], + strings[916], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcIdentifier_type = new type_declaration(strings[917], 536, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcIlluminanceMeasure_type = new type_declaration(strings[918], 537, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type(strings[919], 541, { + strings[920], + strings[921], + strings[922], + strings[923], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcInductanceMeasure_type = new type_declaration(strings[924], 549, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcInteger_type = new type_declaration(strings[925], 550, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcIntegerCountRateMeasure_type = new type_declaration(strings[926], 551, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcInterceptorTypeEnum_type = new enumeration_type(strings[927], 554, { + strings[928], + strings[929], + strings[591], + strings[930], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcInternalOrExternalEnum_type = new enumeration_type(strings[931], 556, { + strings[793], + strings[794], + strings[795], + strings[796], + strings[932], + strings[9] + }); + IFC4X3_ADD1_IfcInventoryTypeEnum_type = new enumeration_type(strings[933], 559, { + strings[934], + strings[935], + strings[936], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcIonConcentrationMeasure_type = new type_declaration(strings[937], 560, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[938], 564, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[939], 567, { + strings[574], + strings[940], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcKerbTypeEnum_type = new enumeration_type(strings[941], 570, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcKinematicViscosityMeasure_type = new type_declaration(strings[942], 571, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcKnotType_type = new enumeration_type(strings[943], 572, { + strings[944], + strings[945], + strings[946], + strings[146] + }); + IFC4X3_ADD1_IfcLabel_type = new type_declaration(strings[947], 573, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[948], 576, { + strings[949], + strings[950], + strings[951], + strings[375], + strings[376], + strings[952], + strings[953], + strings[426], + strings[954], + strings[955], + strings[956], + strings[379], + strings[957], + strings[370], + strings[958], + strings[429], + strings[959], + strings[960], + strings[961], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcLampTypeEnum_type = new enumeration_type(strings[962], 580, { + strings[963], + strings[964], + strings[965], + strings[966], + strings[967], + strings[968], + strings[969], + strings[970], + strings[971], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcLanguageId_type = new type_declaration(strings[972], 581, new named_type(IFC4X3_ADD1_IfcIdentifier_type)); + IFC4X3_ADD1_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[973], 583, { + strings[974], + strings[975], + strings[976] + }); + IFC4X3_ADD1_IfcLengthMeasure_type = new type_declaration(strings[977], 584, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[978], 588, { + strings[979], + strings[980], + strings[981], + strings[9] + }); + IFC4X3_ADD1_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[982], 591, { + strings[963], + strings[964], + strings[966], + strings[967], + strings[983], + strings[984], + strings[985], + strings[986], + strings[969], + strings[971], + strings[9] + }); + IFC4X3_ADD1_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[987], 594, { + strings[988], + strings[989], + strings[990], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcLinearForceMeasure_type = new type_declaration(strings[991], 604, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLinearMomentMeasure_type = new type_declaration(strings[992], 605, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLinearStiffnessMeasure_type = new type_declaration(strings[993], 608, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLinearVelocityMeasure_type = new type_declaration(strings[994], 609, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type = new enumeration_type(strings[995], 613, { + strings[831], + strings[996], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[997], 614, { + strings[998], + strings[999], + strings[1000], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcLogical_type = new type_declaration(strings[1001], 616, new simple_type(simple_type::logical_type)); + IFC4X3_ADD1_IfcLogicalOperatorEnum_type = new enumeration_type(strings[1002], 617, { + strings[1003], + strings[1004], + strings[1005], + strings[1006], + strings[1007] + }); + IFC4X3_ADD1_IfcLuminousFluxMeasure_type = new type_declaration(strings[1008], 620, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[1009], 621, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcLuminousIntensityMeasure_type = new type_declaration(strings[1010], 622, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[1011], 623, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMagneticFluxMeasure_type = new type_declaration(strings[1012], 624, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type = new enumeration_type(strings[1013], 630, { + strings[1014], + strings[1015], + strings[1016], + strings[1017], + strings[1018], + strings[1019], + strings[1020], + strings[1021], + strings[1022], + strings[1023], + strings[1024], + strings[1025], + strings[1026], + strings[1027], + strings[1028], + strings[1029], + strings[1030], + strings[1031], + strings[1032], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcMarinePartTypeEnum_type = new enumeration_type(strings[1033], 632, { + strings[1034], + strings[1035], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[1041], + strings[418], + strings[1042], + strings[1043], + strings[1044], + strings[1045], + strings[1046], + strings[1047], + strings[1048], + strings[1049], + strings[1050], + strings[421], + strings[1051], + strings[1052], + strings[1053], + strings[1054], + strings[1055], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcMassDensityMeasure_type = new type_declaration(strings[1056], 633, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMassFlowRateMeasure_type = new type_declaration(strings[1057], 634, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMassMeasure_type = new type_declaration(strings[1058], 635, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMassPerLengthMeasure_type = new type_declaration(strings[1059], 636, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[1060], 661, { + strings[1061], + strings[1062], + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[1067], + strings[1068], + strings[1069], + strings[1070], + strings[1071], + strings[1072], + strings[1073], + strings[1074], + strings[1075], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[1076], 664, { + strings[1077], + strings[1078], + strings[1079], + strings[1080], + strings[1081], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcMemberTypeEnum_type = new enumeration_type(strings[1082], 667, { + strings[1083], + strings[1084], + strings[1085], + strings[1086], + strings[1087], + strings[1088], + strings[898], + strings[6], + strings[1089], + strings[1090], + strings[1091], + strings[1092], + strings[1093], + strings[1094], + strings[1095], + strings[1096], + strings[1097], + strings[1098], + strings[1099], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type(strings[1100], 673, { + strings[1101], + strings[1102], + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[1107], + strings[1108], + strings[1109], + strings[1110], + strings[1111], + strings[1112], + strings[1113], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[1114], 674, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[1115], 675, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[1116], 676, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[1117], 677, { + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[1118], 678, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[1119], 679, { + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[1120], 680, { + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[1121], 681, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMolecularWeightMeasure_type = new type_declaration(strings[1122], 682, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[1123], 683, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMonetaryMeasure_type = new type_declaration(strings[1124], 684, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcMonthInYearNumber_type = new type_declaration(strings[1125], 686, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type = new enumeration_type(strings[1126], 689, { + strings[1127], + strings[1128], + strings[1129], + strings[1130], + strings[1131], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[1132], 692, { + strings[1133], + strings[1134], + strings[1135], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcNavigationElementTypeEnum_type = new enumeration_type(strings[1136], 696, { + strings[1137], + strings[1138], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[1139], 697, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)); + IFC4X3_ADD1_IfcNumericMeasure_type = new type_declaration(strings[1140], 699, new simple_type(simple_type::number_type)); + IFC4X3_ADD1_IfcObjectiveEnum_type = new enumeration_type(strings[1141], 703, { + strings[1142], + strings[1143], + strings[1144], + strings[793], + strings[1145], + strings[1146], + strings[1147], + strings[1148], + strings[1149], + strings[1150], + strings[1151], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcOccupantTypeEnum_type = new enumeration_type(strings[1152], 707, { + strings[1153], + strings[1154], + strings[1155], + strings[1156], + strings[1157], + strings[1158], + strings[1159], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[1160], 714, { + strings[1161], + strings[1162], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcOutletTypeEnum_type = new enumeration_type(strings[1163], 722, { + strings[1164], + strings[1165], + strings[1166], + strings[1167], + strings[1168], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPHMeasure_type = new type_declaration(strings[1169], 739, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcParameterValue_type = new type_declaration(strings[1170], 725, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcPavementTypeEnum_type = new enumeration_type(strings[1171], 729, { + strings[1172], + strings[1173], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[1174], 732, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[1175], 733, { + strings[1176], + strings[1177], + strings[1178], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPermitTypeEnum_type = new enumeration_type(strings[1179], 736, { + strings[1180], + strings[1181], + strings[1182], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[1183], 741, { + strings[1184], + strings[1185], + strings[9] + }); + IFC4X3_ADD1_IfcPileConstructionEnum_type = new enumeration_type(strings[1186], 745, { + strings[1187], + strings[1188], + strings[1189], + strings[1190], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPileTypeEnum_type = new enumeration_type(strings[1191], 747, { + strings[1192], + strings[1193], + strings[1194], + strings[1195], + strings[1196], + strings[1197], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[1198], 750, { + strings[247], + strings[248], + strings[263], + strings[264], + strings[250], + strings[661], + strings[253], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[1199], 753, { + strings[215], + strings[663], + strings[1200], + strings[664], + strings[1201], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPlanarForceMeasure_type = new type_declaration(strings[1202], 758, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcPlaneAngleMeasure_type = new type_declaration(strings[1203], 760, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcPlateTypeEnum_type = new enumeration_type(strings[1204], 763, { + strings[1205], + strings[1206], + strings[1207], + strings[1208], + strings[1209], + strings[1210], + strings[1211], + strings[1212], + strings[1213], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPositiveInteger_type = new type_declaration(strings[1214], 776, new named_type(IFC4X3_ADD1_IfcInteger_type)); + IFC4X3_ADD1_IfcPositiveLengthMeasure_type = new type_declaration(strings[1215], 777, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)); + IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[1216], 778, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type)); + IFC4X3_ADD1_IfcPowerMeasure_type = new type_declaration(strings[1217], 781, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[1218], 788, { + strings[1219], + strings[1220], + strings[1221] + }); + IFC4X3_ADD1_IfcPresentableText_type = new type_declaration(strings[1222], 789, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcPressureMeasure_type = new type_declaration(strings[1223], 794, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcProcedureTypeEnum_type = new enumeration_type(strings[1224], 797, { + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[1229], + strings[1230], + strings[1231], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcProfileTypeEnum_type = new enumeration_type(strings[1232], 807, { + strings[1233], + strings[1234] + }); + IFC4X3_ADD1_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[1235], 815, { + strings[1236], + strings[1237], + strings[1238], + strings[1239], + strings[1240], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[1241], 810, { + strings[1242], + strings[1243] + }); + IFC4X3_ADD1_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[1244], 812, { + strings[1245], + strings[1246], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[1247], 830, { + strings[1248], + strings[1249], + strings[1250], + strings[1251], + strings[1252], + strings[1253], + strings[1254], + strings[1255], + strings[1256], + strings[9] + }); + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[1257], 838, { + strings[1258], + strings[1259], + strings[1260], + strings[1261], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[1262], 840, { + strings[1263], + strings[1264], + strings[1265], + strings[1266], + strings[1267], + strings[1268], + strings[1269], + strings[1270], + strings[1271], + strings[1272], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcPumpTypeEnum_type = new enumeration_type(strings[1273], 843, { + strings[1274], + strings[1275], + strings[1276], + strings[1277], + strings[1278], + strings[1279], + strings[1280], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRadioActivityMeasure_type = new type_declaration(strings[1281], 852, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcRailTypeEnum_type = new enumeration_type(strings[1282], 858, { + strings[1283], + strings[1284], + strings[1285], + strings[1286], + strings[1287], + strings[1288], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRailingTypeEnum_type = new enumeration_type(strings[1289], 856, { + strings[1290], + strings[1291], + strings[1285], + strings[1292], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRailwayPartTypeEnum_type = new enumeration_type(strings[1293], 861, { + strings[1294], + strings[1295], + strings[1296], + strings[1297], + strings[209], + strings[1298], + strings[1299], + strings[1300], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRailwayTypeEnum_type = new enumeration_type(strings[1301], 862, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRampFlightTypeEnum_type = new enumeration_type(strings[1302], 866, { + strings[1303], + strings[1304], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRampTypeEnum_type = new enumeration_type(strings[1305], 868, { + strings[1306], + strings[1307], + strings[1308], + strings[1309], + strings[1310], + strings[1311], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRatioMeasure_type = new type_declaration(strings[1312], 869, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcReal_type = new type_declaration(strings[1313], 872, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1314], 878, { + strings[1315], + strings[1316], + strings[1317], + strings[1318], + strings[1319], + strings[1320], + strings[1321], + strings[1322] + }); + IFC4X3_ADD1_IfcReferentTypeEnum_type = new enumeration_type(strings[1323], 881, { + strings[1324], + strings[198], + strings[1325], + strings[1326], + strings[1327], + strings[1328], + strings[1329], + strings[1330], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1331], 882, { + strings[1332], + strings[1333], + strings[1334], + strings[1335], + strings[380], + strings[1336], + strings[1337], + strings[1184], + strings[381], + strings[1338], + strings[9] + }); + IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type = new enumeration_type(strings[1339], 885, { + strings[1340], + strings[1341], + strings[1342], + strings[1343], + strings[1344], + strings[1345], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1346], 889, { + strings[1347], + strings[1348], + strings[1349], + strings[1350], + strings[1351], + strings[1352], + strings[1353], + strings[1096], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1354], 890, { + strings[1355], + strings[1356] + }); + IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1357], 892, { + strings[1347], + strings[1348], + strings[1349], + strings[1350], + strings[1351], + strings[1352], + strings[1353], + strings[1358], + strings[1096], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1359], 897, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRoadPartTypeEnum_type = new enumeration_type(strings[1360], 968, { + strings[1361], + strings[1362], + strings[1363], + strings[1364], + strings[1365], + strings[1366], + strings[198], + strings[1367], + strings[1368], + strings[1369], + strings[1370], + strings[1371], + strings[1372], + strings[1373], + strings[1374], + strings[1375], + strings[1376], + strings[1377], + strings[1378], + strings[1379], + strings[1380], + strings[1381], + strings[1382], + strings[1383], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRoadTypeEnum_type = new enumeration_type(strings[1384], 969, { + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRoleEnum_type = new enumeration_type(strings[1385], 970, { + strings[1386], + strings[1387], + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[1395], + strings[1396], + strings[1397], + strings[1398], + strings[1399], + strings[1400], + strings[1401], + strings[1158], + strings[1402], + strings[1403], + strings[1404], + strings[1405], + strings[1406], + strings[8] + }); + IFC4X3_ADD1_IfcRoofTypeEnum_type = new enumeration_type(strings[1407], 973, { + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[1417], + strings[1418], + strings[1419], + strings[1420], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1421], 975, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcRotationalMassMeasure_type = new type_declaration(strings[1422], 976, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1423], 977, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcRotationalStiffnessSelect_type = new select_type(strings[1424], 978, { + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type + }); + IFC4X3_ADD1_IfcSIPrefix_type = new enumeration_type(strings[1425], 1023, { + strings[1426], + strings[1427], + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434], + strings[1435], + strings[1436], + strings[1437], + strings[1438], + strings[1439], + strings[1440], + strings[1441] + }); + IFC4X3_ADD1_IfcSIUnitName_type = new enumeration_type(strings[1442], 1026, { + strings[1443], + strings[1444], + strings[1445], + strings[1446], + strings[1447], + strings[1448], + strings[1449], + strings[1450], + strings[1451], + strings[1452], + strings[1453], + strings[1454], + strings[1455], + strings[1456], + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[1466], + strings[1467], + strings[1468], + strings[1469], + strings[1470], + strings[1471], + strings[1472] + }); + IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1473], 982, { + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[835], + strings[1479], + strings[1480], + strings[1481], + strings[1482], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSectionModulusMeasure_type = new type_declaration(strings[1483], 991, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSectionTypeEnum_type = new enumeration_type(strings[1484], 994, { + strings[1485], + strings[1486] + }); + IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1487], 986, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSensorTypeEnum_type = new enumeration_type(strings[1488], 1000, { + strings[1489], + strings[1490], + strings[1491], + strings[1492], + strings[1493], + strings[1494], + strings[1495], + strings[1496], + strings[1497], + strings[1498], + strings[1499], + strings[1500], + strings[1501], + strings[1502], + strings[1503], + strings[1504], + strings[1505], + strings[1506], + strings[1507], + strings[1508], + strings[1509], + strings[1510], + strings[1511], + strings[1512], + strings[1513], + strings[1514], + strings[1515], + strings[1516], + strings[1517], + strings[1518], + strings[1519], + strings[1520], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSequenceEnum_type = new enumeration_type(strings[1521], 1001, { + strings[1522], + strings[1523], + strings[1524], + strings[1525], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1526], 1005, { + strings[1527], + strings[1528], + strings[1529], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcShearModulusMeasure_type = new type_declaration(strings[1530], 1009, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSignTypeEnum_type = new enumeration_type(strings[1531], 1017, { + strings[1532], + strings[1336], + strings[1533], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSignalTypeEnum_type = new enumeration_type(strings[1534], 1015, { + strings[1535], + strings[1536], + strings[1537], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1538], 1020, { + strings[1539], + strings[1540], + strings[1541], + strings[1542], + strings[1543], + strings[1544], + strings[1545], + strings[1546], + strings[1547], + strings[1548], + strings[1549], + strings[1550], + strings[1551] + }); + IFC4X3_ADD1_IfcSlabTypeEnum_type = new enumeration_type(strings[1552], 1030, { + strings[1553], + strings[1554], + strings[1555], + strings[1556], + strings[370], + strings[1557], + strings[1379], + strings[1558], + strings[1559], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1560], 1034, { + strings[1561], + strings[1562], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSolidAngleMeasure_type = new type_declaration(strings[1563], 1035, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1564], 1038, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSoundPowerMeasure_type = new type_declaration(strings[1565], 1039, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1566], 1040, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSoundPressureMeasure_type = new type_declaration(strings[1567], 1041, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1568], 1046, { + strings[1569], + strings[1570], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSpaceTypeEnum_type = new enumeration_type(strings[1571], 1048, { + strings[1572], + strings[793], + strings[1573], + strings[932], + strings[1574], + strings[1575], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1576], 1056, { + strings[1577], + strings[1578], + strings[1579], + strings[369], + strings[1580], + strings[1581], + strings[599], + strings[1261], + strings[33], + strings[606], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1582], 1057, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSpecularExponent_type = new type_declaration(strings[1583], 1058, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcSpecularRoughness_type = new type_declaration(strings[1584], 1060, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1585], 1066, { + strings[1586], + strings[1587], + strings[1588], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1589], 1070, { + strings[1590], + strings[1412], + strings[1303], + strings[1304], + strings[1591], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcStairTypeEnum_type = new enumeration_type(strings[1592], 1072, { + strings[1593], + strings[1594], + strings[1595], + strings[1596], + strings[1597], + strings[1598], + strings[1599], + strings[1600], + strings[1601], + strings[1602], + strings[1603], + strings[1604], + strings[1605], + strings[1606], + strings[1607], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcStateEnum_type = new enumeration_type(strings[1608], 1073, { + strings[1609], + strings[1610], + strings[1611], + strings[1612], + strings[1613] + }); + IFC4X3_ADD1_IfcStrippedOptional_type = new type_declaration(strings[1614], 1074, new simple_type(simple_type::boolean_type)); + IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1615], 1082, { + strings[1616], + strings[1617], + strings[1618], + strings[438], + strings[1619], + strings[1620], + strings[1621], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1622], 1085, { + strings[558], + strings[1623], + strings[1624], + strings[1625], + strings[1626], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1627], 1111, { + strings[1628], + strings[1616], + strings[1617], + strings[1629], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1630], 1114, { + strings[1631], + strings[1632], + strings[1633], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1634], 1122, { + strings[1635], + strings[1182], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1636], 1128, { + strings[1637], + strings[1638], + strings[1639], + strings[1640], + strings[1641], + strings[1642], + strings[1643], + strings[1644], + strings[1645], + strings[1646], + strings[1647], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSurfaceSide_type = new enumeration_type(strings[1648], 1133, { + strings[1649], + strings[517], + strings[518] + }); + IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1650], 1148, { + strings[1651], + strings[1652], + strings[1653], + strings[1654], + strings[1655], + strings[734], + strings[1656], + strings[1657], + strings[1658], + strings[1659], + strings[1660], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1661], 1152, { + strings[1662], + strings[1663], + strings[1664], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTankTypeEnum_type = new enumeration_type(strings[1665], 1158, { + strings[1666], + strings[1667], + strings[1668], + strings[1669], + strings[1670], + strings[1671], + strings[1672], + strings[1673], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTaskDurationEnum_type = new enumeration_type(strings[1674], 1160, { + strings[1675], + strings[1676], + strings[9] + }); + IFC4X3_ADD1_IfcTaskTypeEnum_type = new enumeration_type(strings[1677], 1164, { + strings[1678], + strings[1679], + strings[1228], + strings[1577], + strings[1680], + strings[1681], + strings[575], + strings[1682], + strings[1683], + strings[1684], + strings[1685], + strings[1686], + strings[1687], + strings[1688], + strings[1689], + strings[1690], + strings[1691], + strings[1230], + strings[1231], + strings[1692], + strings[1693], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1694], 1166, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1695], 1167, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1696], 1171, { + strings[1064], + strings[1697], + strings[1698], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTendonConduitTypeEnum_type = new enumeration_type(strings[1699], 1174, { + strings[1064], + strings[1700], + strings[560], + strings[1701], + strings[1702], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTendonTypeEnum_type = new enumeration_type(strings[1703], 1176, { + strings[1704], + strings[1705], + strings[1706], + strings[1707], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcText_type = new type_declaration(strings[1708], 1179, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcTextAlignment_type = new type_declaration(strings[1709], 1180, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcTextDecoration_type = new type_declaration(strings[1710], 1181, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcTextFontName_type = new type_declaration(strings[1711], 1182, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcTextPath_type = new enumeration_type(strings[1712], 1186, { + strings[1713], + strings[628], + strings[630], + strings[1714] + }); + IFC4X3_ADD1_IfcTextTransformation_type = new type_declaration(strings[1715], 1191, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1716], 1199, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcThermalConductivityMeasure_type = new type_declaration(strings[1717], 1200, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1718], 1201, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcThermalResistanceMeasure_type = new type_declaration(strings[1719], 1202, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1720], 1203, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1721], 1204, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcTime_type = new type_declaration(strings[1722], 1206, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcTimeMeasure_type = new type_declaration(strings[1723], 1207, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcTimeOrRatioSelect_type = new select_type(strings[1724], 1208, { + IFC4X3_ADD1_IfcDuration_type, + IFC4X3_ADD1_IfcRatioMeasure_type + }); + IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1725], 1211, { + strings[1726], + strings[1617], + strings[1727], + strings[1728], + strings[1729], + strings[1730], + strings[9] + }); + IFC4X3_ADD1_IfcTimeStamp_type = new type_declaration(strings[1731], 1213, new simple_type(simple_type::integer_type)); + IFC4X3_ADD1_IfcTorqueMeasure_type = new type_declaration(strings[1732], 1217, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcTrackElementTypeEnum_type = new enumeration_type(strings[1733], 1220, { + strings[1734], + strings[1735], + strings[1736], + strings[1737], + strings[1738], + strings[1739], + strings[1740], + strings[1741], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTransformerTypeEnum_type = new enumeration_type(strings[1742], 1223, { + strings[1743], + strings[840], + strings[15], + strings[1744], + strings[1745], + strings[1746], + strings[1747], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTransitionCode_type = new enumeration_type(strings[1748], 1224, { + strings[1726], + strings[1749], + strings[1750], + strings[1751] + }); + IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type = new select_type(strings[1752], 1225, { + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcLinearStiffnessMeasure_type + }); + IFC4X3_ADD1_IfcTransportElementTypeEnum_type = new enumeration_type(strings[1753], 1230, { + strings[1754], + strings[1755], + strings[1756], + strings[1757], + strings[1758], + strings[1759], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcTrimmingPreference_type = new enumeration_type(strings[1760], 1235, { + strings[1761], + strings[1148], + strings[146] + }); + IFC4X3_ADD1_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1762], 1240, { + strings[1763], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcURIReference_type = new type_declaration(strings[1764], 1254, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcUnitEnum_type = new enumeration_type(strings[1765], 1253, { + strings[1766], + strings[1767], + strings[1768], + strings[1769], + strings[1770], + strings[1771], + strings[1772], + strings[1773], + strings[1774], + strings[1775], + strings[1776], + strings[1777], + strings[1778], + strings[1779], + strings[1780], + strings[1781], + strings[1782], + strings[1783], + strings[1784], + strings[1785], + strings[1786], + strings[1787], + strings[1788], + strings[1789], + strings[1790], + strings[1791], + strings[1792], + strings[1793], + strings[1794], + strings[8] + }); + IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1795], 1248, { + strings[1796], + strings[1797], + strings[840], + strings[1798], + strings[1799], + strings[1800], + strings[1801], + strings[1802], + strings[1803], + strings[1804], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1805], 1251, { + strings[1806], + strings[1807], + strings[1808], + strings[1809], + strings[1810], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcValveTypeEnum_type = new enumeration_type(strings[1811], 1259, { + strings[1812], + strings[1813], + strings[1814], + strings[1815], + strings[1816], + strings[1817], + strings[1818], + strings[1819], + strings[1820], + strings[1821], + strings[1822], + strings[1823], + strings[1824], + strings[1825], + strings[1826], + strings[1827], + strings[1828], + strings[1829], + strings[1830], + strings[1831], + strings[1832], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1833], 1260, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcVehicleTypeEnum_type = new enumeration_type(strings[1834], 1265, { + strings[1835], + strings[1836], + strings[1837], + strings[1838], + strings[1839], + strings[1840], + strings[1841], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type = new enumeration_type(strings[1842], 1271, { + strings[1843], + strings[1844], + strings[1195], + strings[1845], + strings[1846], + strings[1847], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1848], 1274, { + strings[1849], + strings[1850], + strings[1851], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcVirtualElementTypeEnum_type = new enumeration_type(strings[1852], 1276, { + strings[1324], + strings[1853], + strings[231], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1854], 1279, { + strings[1855], + strings[1856], + strings[1348], + strings[1857], + strings[1858], + strings[1859], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcVolumeMeasure_type = new type_declaration(strings[1860], 1280, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1861], 1281, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcWallTypeEnum_type = new enumeration_type(strings[1862], 1285, { + strings[1863], + strings[1864], + strings[1865], + strings[1866], + strings[1867], + strings[1620], + strings[1868], + strings[1353], + strings[1869], + strings[1870], + strings[1871], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcWarpingConstantMeasure_type = new type_declaration(strings[1872], 1286, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcWarpingMomentMeasure_type = new type_declaration(strings[1873], 1287, new simple_type(simple_type::real_type)); + IFC4X3_ADD1_IfcWarpingStiffnessSelect_type = new select_type(strings[1874], 1288, { + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcWarpingMomentMeasure_type + }); + IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1875], 1291, { + strings[1876], + strings[1877], + strings[1878], + strings[1879], + strings[1880], + strings[1881], + strings[1882], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcWellKnownTextLiteral_type = new type_declaration(strings[1883], 1293, new simple_type(simple_type::string_type)); + IFC4X3_ADD1_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1884], 1296, { + strings[1885], + strings[1886], + strings[1887], + strings[1888], + strings[1889], + strings[1890], + strings[1891], + strings[1892], + strings[1893], + strings[1894], + strings[1895], + strings[1896], + strings[1897], + strings[9] + }); + IFC4X3_ADD1_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1898], 1297, { + strings[1899], + strings[628], + strings[629], + strings[630], + strings[1900], + strings[9] + }); + IFC4X3_ADD1_IfcWindowTypeEnum_type = new enumeration_type(strings[1901], 1300, { + strings[1902], + strings[1903], + strings[1904], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1905], 1301, { + strings[1906], + strings[1907], + strings[1908], + strings[1909], + strings[1910], + strings[1911], + strings[1912], + strings[1913], + strings[1914], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1915], 1303, { + strings[1916], + strings[1917], + strings[1918], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1919], 1306, { + strings[1920], + strings[1921], + strings[1922], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1923], 1308, { + strings[1920], + strings[1921], + strings[1922], + strings[8], + strings[9] + }); + IFC4X3_ADD1_IfcActorRole_type = new entity(strings[1924], false, 7, 0); + IFC4X3_ADD1_IfcAddress_type = new entity(strings[1925], true, 12, 0); + IFC4X3_ADD1_IfcAlignmentParameterSegment_type = new entity(strings[1926], true, 36, 0); + IFC4X3_ADD1_IfcAlignmentVerticalSegment_type = new entity(strings[1927], false, 40, IFC4X3_ADD1_IfcAlignmentParameterSegment_type); + IFC4X3_ADD1_IfcApplication_type = new entity(strings[1928], false, 49, 0); + IFC4X3_ADD1_IfcAppliedValue_type = new entity(strings[1929], false, 50, 0); + IFC4X3_ADD1_IfcApproval_type = new entity(strings[1930], false, 52, 0); + IFC4X3_ADD1_IfcBoundaryCondition_type = new entity(strings[1931], true, 92, 0); + IFC4X3_ADD1_IfcBoundaryEdgeCondition_type = new entity(strings[1932], false, 94, IFC4X3_ADD1_IfcBoundaryCondition_type); + IFC4X3_ADD1_IfcBoundaryFaceCondition_type = new entity(strings[1933], false, 95, IFC4X3_ADD1_IfcBoundaryCondition_type); + IFC4X3_ADD1_IfcBoundaryNodeCondition_type = new entity(strings[1934], false, 96, IFC4X3_ADD1_IfcBoundaryCondition_type); + IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type = new entity(strings[1935], false, 97, IFC4X3_ADD1_IfcBoundaryNodeCondition_type); + IFC4X3_ADD1_IfcConnectionGeometry_type = new entity(strings[1936], true, 206, 0); + IFC4X3_ADD1_IfcConnectionPointGeometry_type = new entity(strings[1937], false, 208, IFC4X3_ADD1_IfcConnectionGeometry_type); + IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type = new entity(strings[1938], false, 209, IFC4X3_ADD1_IfcConnectionGeometry_type); + IFC4X3_ADD1_IfcConnectionVolumeGeometry_type = new entity(strings[1939], false, 211, IFC4X3_ADD1_IfcConnectionGeometry_type); + IFC4X3_ADD1_IfcConstraint_type = new entity(strings[1940], true, 212, 0); + IFC4X3_ADD1_IfcCoordinateOperation_type = new entity(strings[1941], true, 243, 0); + IFC4X3_ADD1_IfcCoordinateReferenceSystem_type = new entity(strings[1942], true, 244, 0); + IFC4X3_ADD1_IfcCostValue_type = new entity(strings[1943], false, 251, IFC4X3_ADD1_IfcAppliedValue_type); + IFC4X3_ADD1_IfcDerivedUnit_type = new entity(strings[1944], false, 299, 0); + IFC4X3_ADD1_IfcDerivedUnitElement_type = new entity(strings[1945], false, 300, 0); + IFC4X3_ADD1_IfcDimensionalExponents_type = new entity(strings[1946], false, 303, 0); + IFC4X3_ADD1_IfcExternalInformation_type = new entity(strings[1947], true, 422, 0); + IFC4X3_ADD1_IfcExternalReference_type = new entity(strings[1948], true, 426, 0); + IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type = new entity(strings[1949], false, 423, IFC4X3_ADD1_IfcExternalReference_type); + IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1950], false, 424, IFC4X3_ADD1_IfcExternalReference_type); + IFC4X3_ADD1_IfcExternallyDefinedTextFont_type = new entity(strings[1951], false, 425, IFC4X3_ADD1_IfcExternalReference_type); + IFC4X3_ADD1_IfcGeographicCRS_type = new entity(strings[1952], false, 500, IFC4X3_ADD1_IfcCoordinateReferenceSystem_type); + IFC4X3_ADD1_IfcGridAxis_type = new entity(strings[1953], false, 521, 0); + IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type = new entity(strings[1954], false, 562, 0); + IFC4X3_ADD1_IfcLibraryInformation_type = new entity(strings[1955], false, 585, IFC4X3_ADD1_IfcExternalInformation_type); + IFC4X3_ADD1_IfcLibraryReference_type = new entity(strings[1956], false, 586, IFC4X3_ADD1_IfcExternalReference_type); + IFC4X3_ADD1_IfcLightDistributionData_type = new entity(strings[1957], false, 589, 0); + IFC4X3_ADD1_IfcLightIntensityDistribution_type = new entity(strings[1958], false, 595, 0); + IFC4X3_ADD1_IfcMapConversion_type = new entity(strings[1959], false, 626, IFC4X3_ADD1_IfcCoordinateOperation_type); + IFC4X3_ADD1_IfcMapConversionScaled_type = new entity(strings[1960], false, 627, IFC4X3_ADD1_IfcMapConversion_type); + IFC4X3_ADD1_IfcMaterialClassificationRelationship_type = new entity(strings[1961], false, 638, 0); + IFC4X3_ADD1_IfcMaterialDefinition_type = new entity(strings[1962], true, 641, 0); + IFC4X3_ADD1_IfcMaterialLayer_type = new entity(strings[1963], false, 643, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialLayerSet_type = new entity(strings[1964], false, 644, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type = new entity(strings[1965], false, 646, IFC4X3_ADD1_IfcMaterialLayer_type); + IFC4X3_ADD1_IfcMaterialList_type = new entity(strings[1966], false, 647, 0); + IFC4X3_ADD1_IfcMaterialProfile_type = new entity(strings[1967], false, 648, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialProfileSet_type = new entity(strings[1968], false, 649, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type = new entity(strings[1969], false, 652, IFC4X3_ADD1_IfcMaterialProfile_type); + IFC4X3_ADD1_IfcMaterialUsageDefinition_type = new entity(strings[1970], true, 656, 0); + IFC4X3_ADD1_IfcMeasureWithUnit_type = new entity(strings[1971], false, 658, 0); + IFC4X3_ADD1_IfcMetric_type = new entity(strings[1972], false, 668, IFC4X3_ADD1_IfcConstraint_type); + IFC4X3_ADD1_IfcMonetaryUnit_type = new entity(strings[1973], false, 685, 0); + IFC4X3_ADD1_IfcNamedUnit_type = new entity(strings[1974], true, 693, 0); + IFC4X3_ADD1_IfcObjectPlacement_type = new entity(strings[1975], true, 704, 0); + IFC4X3_ADD1_IfcObjective_type = new entity(strings[1976], false, 702, IFC4X3_ADD1_IfcConstraint_type); + IFC4X3_ADD1_IfcOrganization_type = new entity(strings[1977], false, 716, 0); + IFC4X3_ADD1_IfcOwnerHistory_type = new entity(strings[1978], false, 723, 0); + IFC4X3_ADD1_IfcPerson_type = new entity(strings[1979], false, 737, 0); + IFC4X3_ADD1_IfcPersonAndOrganization_type = new entity(strings[1980], false, 738, 0); + IFC4X3_ADD1_IfcPhysicalQuantity_type = new entity(strings[1981], true, 742, 0); + IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type = new entity(strings[1982], true, 743, IFC4X3_ADD1_IfcPhysicalQuantity_type); + IFC4X3_ADD1_IfcPostalAddress_type = new entity(strings[1983], false, 780, IFC4X3_ADD1_IfcAddress_type); + IFC4X3_ADD1_IfcPresentationItem_type = new entity(strings[1984], true, 790, 0); + IFC4X3_ADD1_IfcPresentationLayerAssignment_type = new entity(strings[1985], false, 791, 0); + IFC4X3_ADD1_IfcPresentationLayerWithStyle_type = new entity(strings[1986], false, 792, IFC4X3_ADD1_IfcPresentationLayerAssignment_type); + IFC4X3_ADD1_IfcPresentationStyle_type = new entity(strings[1987], true, 793, 0); + IFC4X3_ADD1_IfcProductRepresentation_type = new entity(strings[1988], true, 802, 0); + IFC4X3_ADD1_IfcProfileDef_type = new entity(strings[1989], false, 805, 0); + IFC4X3_ADD1_IfcProjectedCRS_type = new entity(strings[1990], false, 809, IFC4X3_ADD1_IfcCoordinateReferenceSystem_type); + IFC4X3_ADD1_IfcPropertyAbstraction_type = new entity(strings[1991], true, 817, 0); + IFC4X3_ADD1_IfcPropertyEnumeration_type = new entity(strings[1992], false, 822, IFC4X3_ADD1_IfcPropertyAbstraction_type); + IFC4X3_ADD1_IfcQuantityArea_type = new entity(strings[1993], false, 844, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcQuantityCount_type = new entity(strings[1994], false, 845, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcQuantityLength_type = new entity(strings[1995], false, 846, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcQuantityNumber_type = new entity(strings[1996], false, 847, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcQuantityTime_type = new entity(strings[1997], false, 849, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcQuantityVolume_type = new entity(strings[1998], false, 850, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcQuantityWeight_type = new entity(strings[1999], false, 851, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); + IFC4X3_ADD1_IfcRecurrencePattern_type = new entity(strings[2000], false, 877, 0); + IFC4X3_ADD1_IfcReference_type = new entity(strings[2001], false, 879, 0); + IFC4X3_ADD1_IfcRepresentation_type = new entity(strings[2002], true, 950, 0); + IFC4X3_ADD1_IfcRepresentationContext_type = new entity(strings[2003], true, 951, 0); + IFC4X3_ADD1_IfcRepresentationItem_type = new entity(strings[2004], true, 952, 0); + IFC4X3_ADD1_IfcRepresentationMap_type = new entity(strings[2005], false, 953, 0); + IFC4X3_ADD1_IfcResourceLevelRelationship_type = new entity(strings[2006], true, 957, 0); + IFC4X3_ADD1_IfcRigidOperation_type = new entity(strings[2007], false, 965, IFC4X3_ADD1_IfcCoordinateOperation_type); + IFC4X3_ADD1_IfcRoot_type = new entity(strings[2008], true, 974, 0); + IFC4X3_ADD1_IfcSIUnit_type = new entity(strings[2009], false, 1025, IFC4X3_ADD1_IfcNamedUnit_type); + IFC4X3_ADD1_IfcSchedulingTime_type = new entity(strings[2010], true, 983, 0); + IFC4X3_ADD1_IfcShapeAspect_type = new entity(strings[2011], false, 1006, 0); + IFC4X3_ADD1_IfcShapeModel_type = new entity(strings[2012], true, 1007, IFC4X3_ADD1_IfcRepresentation_type); + IFC4X3_ADD1_IfcShapeRepresentation_type = new entity(strings[2013], false, 1008, IFC4X3_ADD1_IfcShapeModel_type); + IFC4X3_ADD1_IfcStructuralConnectionCondition_type = new entity(strings[2014], true, 1080, 0); + IFC4X3_ADD1_IfcStructuralLoad_type = new entity(strings[2015], true, 1090, 0); + IFC4X3_ADD1_IfcStructuralLoadConfiguration_type = new entity(strings[2016], false, 1092, IFC4X3_ADD1_IfcStructuralLoad_type); + IFC4X3_ADD1_IfcStructuralLoadOrResult_type = new entity(strings[2017], true, 1095, IFC4X3_ADD1_IfcStructuralLoad_type); + IFC4X3_ADD1_IfcStructuralLoadStatic_type = new entity(strings[2018], true, 1101, IFC4X3_ADD1_IfcStructuralLoadOrResult_type); + IFC4X3_ADD1_IfcStructuralLoadTemperature_type = new entity(strings[2019], false, 1102, IFC4X3_ADD1_IfcStructuralLoadStatic_type); + IFC4X3_ADD1_IfcStyleModel_type = new entity(strings[2020], true, 1119, IFC4X3_ADD1_IfcRepresentation_type); + IFC4X3_ADD1_IfcStyledItem_type = new entity(strings[2021], false, 1117, IFC4X3_ADD1_IfcRepresentationItem_type); + IFC4X3_ADD1_IfcStyledRepresentation_type = new entity(strings[2022], false, 1118, IFC4X3_ADD1_IfcStyleModel_type); + IFC4X3_ADD1_IfcSurfaceReinforcementArea_type = new entity(strings[2023], false, 1132, IFC4X3_ADD1_IfcStructuralLoadOrResult_type); + IFC4X3_ADD1_IfcSurfaceStyle_type = new entity(strings[2024], false, 1134, IFC4X3_ADD1_IfcPresentationStyle_type); + IFC4X3_ADD1_IfcSurfaceStyleLighting_type = new entity(strings[2025], false, 1136, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcSurfaceStyleRefraction_type = new entity(strings[2026], false, 1137, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcSurfaceStyleShading_type = new entity(strings[2027], false, 1139, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type = new entity(strings[2028], false, 1140, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcSurfaceTexture_type = new entity(strings[2029], true, 1141, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcTable_type = new entity(strings[2030], false, 1153, 0); + IFC4X3_ADD1_IfcTableColumn_type = new entity(strings[2031], false, 1154, 0); + IFC4X3_ADD1_IfcTableRow_type = new entity(strings[2032], false, 1155, 0); + IFC4X3_ADD1_IfcTaskTime_type = new entity(strings[2033], false, 1161, IFC4X3_ADD1_IfcSchedulingTime_type); + IFC4X3_ADD1_IfcTaskTimeRecurring_type = new entity(strings[2034], false, 1162, IFC4X3_ADD1_IfcTaskTime_type); + IFC4X3_ADD1_IfcTelecomAddress_type = new entity(strings[2035], false, 1165, IFC4X3_ADD1_IfcAddress_type); + IFC4X3_ADD1_IfcTextStyle_type = new entity(strings[2036], false, 1187, IFC4X3_ADD1_IfcPresentationStyle_type); + IFC4X3_ADD1_IfcTextStyleForDefinedFont_type = new entity(strings[2037], false, 1189, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcTextStyleTextModel_type = new entity(strings[2038], false, 1190, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcTextureCoordinate_type = new entity(strings[2039], true, 1192, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcTextureCoordinateGenerator_type = new entity(strings[2040], false, 1193, IFC4X3_ADD1_IfcTextureCoordinate_type); + IFC4X3_ADD1_IfcTextureCoordinateIndices_type = new entity(strings[2041], false, 1194, 0); + IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type = new entity(strings[2042], false, 1195, IFC4X3_ADD1_IfcTextureCoordinateIndices_type); + IFC4X3_ADD1_IfcTextureMap_type = new entity(strings[2043], false, 1196, IFC4X3_ADD1_IfcTextureCoordinate_type); + IFC4X3_ADD1_IfcTextureVertex_type = new entity(strings[2044], false, 1197, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcTextureVertexList_type = new entity(strings[2045], false, 1198, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcTimePeriod_type = new entity(strings[2046], false, 1209, 0); + IFC4X3_ADD1_IfcTimeSeries_type = new entity(strings[2047], true, 1210, 0); + IFC4X3_ADD1_IfcTimeSeriesValue_type = new entity(strings[2048], false, 1212, 0); + IFC4X3_ADD1_IfcTopologicalRepresentationItem_type = new entity(strings[2049], true, 1214, IFC4X3_ADD1_IfcRepresentationItem_type); + IFC4X3_ADD1_IfcTopologyRepresentation_type = new entity(strings[2050], false, 1215, IFC4X3_ADD1_IfcShapeModel_type); + IFC4X3_ADD1_IfcUnitAssignment_type = new entity(strings[2051], false, 1252, 0); + IFC4X3_ADD1_IfcVertex_type = new entity(strings[2052], false, 1266, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcVertexPoint_type = new entity(strings[2053], false, 1268, IFC4X3_ADD1_IfcVertex_type); + IFC4X3_ADD1_IfcVirtualGridIntersection_type = new entity(strings[2054], false, 1277, 0); + IFC4X3_ADD1_IfcWellKnownText_type = new entity(strings[2055], false, 1292, 0); + IFC4X3_ADD1_IfcWorkTime_type = new entity(strings[2056], false, 1309, IFC4X3_ADD1_IfcSchedulingTime_type); + IFC4X3_ADD1_IfcActorSelect_type = new select_type(strings[2057], 8, { + IFC4X3_ADD1_IfcOrganization_type, + IFC4X3_ADD1_IfcPerson_type, + IFC4X3_ADD1_IfcPersonAndOrganization_type + }); + IFC4X3_ADD1_IfcArcIndex_type = new type_declaration(strings[2058], 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))); + IFC4X3_ADD1_IfcBendingParameterSelect_type = new select_type(strings[2059], 79, { + IFC4X3_ADD1_IfcLengthMeasure_type, + IFC4X3_ADD1_IfcPlaneAngleMeasure_type + }); + IFC4X3_ADD1_IfcBoxAlignment_type = new type_declaration(strings[2060], 101, new named_type(IFC4X3_ADD1_IfcLabel_type)); + IFC4X3_ADD1_IfcCurveMeasureSelect_type = new select_type(strings[2061], 276, { + IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type, + IFC4X3_ADD1_IfcParameterValue_type + }); + IFC4X3_ADD1_IfcDerivedMeasureValue_type = new select_type(strings[2062], 297, { + IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type, + IFC4X3_ADD1_IfcAccelerationMeasure_type, + IFC4X3_ADD1_IfcAngularVelocityMeasure_type, + IFC4X3_ADD1_IfcAreaDensityMeasure_type, + IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_ADD1_IfcCurvatureMeasure_type, + IFC4X3_ADD1_IfcDoseEquivalentMeasure_type, + IFC4X3_ADD1_IfcDynamicViscosityMeasure_type, + IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type, + IFC4X3_ADD1_IfcElectricChargeMeasure_type, + IFC4X3_ADD1_IfcElectricConductanceMeasure_type, + IFC4X3_ADD1_IfcElectricResistanceMeasure_type, + IFC4X3_ADD1_IfcElectricVoltageMeasure_type, + IFC4X3_ADD1_IfcEnergyMeasure_type, + IFC4X3_ADD1_IfcForceMeasure_type, + IFC4X3_ADD1_IfcFrequencyMeasure_type, + IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type, + IFC4X3_ADD1_IfcHeatingValueMeasure_type, + IFC4X3_ADD1_IfcIlluminanceMeasure_type, + IFC4X3_ADD1_IfcInductanceMeasure_type, + IFC4X3_ADD1_IfcIntegerCountRateMeasure_type, + IFC4X3_ADD1_IfcIonConcentrationMeasure_type, + IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_ADD1_IfcKinematicViscosityMeasure_type, + IFC4X3_ADD1_IfcLinearForceMeasure_type, + IFC4X3_ADD1_IfcLinearMomentMeasure_type, + IFC4X3_ADD1_IfcLinearStiffnessMeasure_type, + IFC4X3_ADD1_IfcLinearVelocityMeasure_type, + IFC4X3_ADD1_IfcLuminousFluxMeasure_type, + IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type, + IFC4X3_ADD1_IfcMagneticFluxMeasure_type, + IFC4X3_ADD1_IfcMassDensityMeasure_type, + IFC4X3_ADD1_IfcMassFlowRateMeasure_type, + IFC4X3_ADD1_IfcMassPerLengthMeasure_type, + IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type, + IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type, + IFC4X3_ADD1_IfcMolecularWeightMeasure_type, + IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type, + IFC4X3_ADD1_IfcMonetaryMeasure_type, + IFC4X3_ADD1_IfcPHMeasure_type, + IFC4X3_ADD1_IfcPlanarForceMeasure_type, + IFC4X3_ADD1_IfcPowerMeasure_type, + IFC4X3_ADD1_IfcPressureMeasure_type, + IFC4X3_ADD1_IfcRadioActivityMeasure_type, + IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type, + IFC4X3_ADD1_IfcRotationalMassMeasure_type, + IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type, + IFC4X3_ADD1_IfcSectionModulusMeasure_type, + IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_ADD1_IfcShearModulusMeasure_type, + IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type, + IFC4X3_ADD1_IfcSoundPowerMeasure_type, + IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type, + IFC4X3_ADD1_IfcSoundPressureMeasure_type, + IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_ADD1_IfcTemperatureGradientMeasure_type, + IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type, + IFC4X3_ADD1_IfcThermalConductivityMeasure_type, + IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_ADD1_IfcThermalResistanceMeasure_type, + IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type, + IFC4X3_ADD1_IfcTorqueMeasure_type, + IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type, + IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type, + IFC4X3_ADD1_IfcWarpingConstantMeasure_type, + IFC4X3_ADD1_IfcWarpingMomentMeasure_type + }); + IFC4X3_ADD1_IfcLayeredItem_type = new select_type(strings[2063], 582, { + IFC4X3_ADD1_IfcRepresentation_type, + IFC4X3_ADD1_IfcRepresentationItem_type + }); + IFC4X3_ADD1_IfcLibrarySelect_type = new select_type(strings[2064], 587, { + IFC4X3_ADD1_IfcLibraryInformation_type, + IFC4X3_ADD1_IfcLibraryReference_type + }); + IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type = new select_type(strings[2065], 590, { + IFC4X3_ADD1_IfcExternalReference_type, + IFC4X3_ADD1_IfcLightIntensityDistribution_type + }); + IFC4X3_ADD1_IfcLineIndex_type = new type_declaration(strings[2066], 610, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))); + IFC4X3_ADD1_IfcMaterialSelect_type = new select_type(strings[2067], 655, { + IFC4X3_ADD1_IfcMaterialDefinition_type, + IFC4X3_ADD1_IfcMaterialList_type, + IFC4X3_ADD1_IfcMaterialUsageDefinition_type + }); + IFC4X3_ADD1_IfcNormalisedRatioMeasure_type = new type_declaration(strings[2068], 698, new named_type(IFC4X3_ADD1_IfcRatioMeasure_type)); + IFC4X3_ADD1_IfcObjectReferenceSelect_type = new select_type(strings[2069], 705, { + IFC4X3_ADD1_IfcAddress_type, + IFC4X3_ADD1_IfcAppliedValue_type, + IFC4X3_ADD1_IfcExternalReference_type, + IFC4X3_ADD1_IfcMaterialDefinition_type, + IFC4X3_ADD1_IfcOrganization_type, + IFC4X3_ADD1_IfcPerson_type, + IFC4X3_ADD1_IfcPersonAndOrganization_type, + IFC4X3_ADD1_IfcTable_type, + IFC4X3_ADD1_IfcTimeSeries_type + }); + IFC4X3_ADD1_IfcPositiveRatioMeasure_type = new type_declaration(strings[2070], 779, new named_type(IFC4X3_ADD1_IfcRatioMeasure_type)); + IFC4X3_ADD1_IfcSegmentIndexSelect_type = new select_type(strings[2071], 997, { + IFC4X3_ADD1_IfcArcIndex_type, + IFC4X3_ADD1_IfcLineIndex_type + }); + IFC4X3_ADD1_IfcSimpleValue_type = new select_type(strings[2072], 1021, { + IFC4X3_ADD1_IfcBinary_type, + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcDate_type, + IFC4X3_ADD1_IfcDateTime_type, + IFC4X3_ADD1_IfcDuration_type, + IFC4X3_ADD1_IfcIdentifier_type, + IFC4X3_ADD1_IfcInteger_type, + IFC4X3_ADD1_IfcLabel_type, + IFC4X3_ADD1_IfcLogical_type, + IFC4X3_ADD1_IfcPositiveInteger_type, + IFC4X3_ADD1_IfcReal_type, + IFC4X3_ADD1_IfcText_type, + IFC4X3_ADD1_IfcTime_type, + IFC4X3_ADD1_IfcTimeStamp_type + }); + IFC4X3_ADD1_IfcSizeSelect_type = new select_type(strings[2073], 1027, { + IFC4X3_ADD1_IfcDescriptiveMeasure_type, + IFC4X3_ADD1_IfcLengthMeasure_type, + IFC4X3_ADD1_IfcNormalisedRatioMeasure_type, + IFC4X3_ADD1_IfcPositiveLengthMeasure_type, + IFC4X3_ADD1_IfcPositiveRatioMeasure_type, + IFC4X3_ADD1_IfcRatioMeasure_type + }); + IFC4X3_ADD1_IfcSpecularHighlightSelect_type = new select_type(strings[2074], 1059, { + IFC4X3_ADD1_IfcSpecularExponent_type, + IFC4X3_ADD1_IfcSpecularRoughness_type + }); + IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type = new select_type(strings[2075], 1135, { + IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_ADD1_IfcSurfaceStyleLighting_type, + IFC4X3_ADD1_IfcSurfaceStyleRefraction_type, + IFC4X3_ADD1_IfcSurfaceStyleShading_type, + IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type + }); + IFC4X3_ADD1_IfcUnit_type = new select_type(strings[2076], 1245, { + IFC4X3_ADD1_IfcDerivedUnit_type, + IFC4X3_ADD1_IfcMonetaryUnit_type, + IFC4X3_ADD1_IfcNamedUnit_type + }); + IFC4X3_ADD1_IfcAlignmentCantSegment_type = new entity(strings[2077], false, 31, IFC4X3_ADD1_IfcAlignmentParameterSegment_type); + IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type = new entity(strings[2078], false, 34, IFC4X3_ADD1_IfcAlignmentParameterSegment_type); + IFC4X3_ADD1_IfcApprovalRelationship_type = new entity(strings[2079], false, 53, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type = new entity(strings[2080], false, 54, IFC4X3_ADD1_IfcProfileDef_type); + IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type = new entity(strings[2081], false, 55, IFC4X3_ADD1_IfcProfileDef_type); + IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type = new entity(strings[2082], false, 56, IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type); + IFC4X3_ADD1_IfcBlobTexture_type = new entity(strings[2083], false, 81, IFC4X3_ADD1_IfcSurfaceTexture_type); + IFC4X3_ADD1_IfcCenterLineProfileDef_type = new entity(strings[2084], false, 155, IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type); + IFC4X3_ADD1_IfcClassification_type = new entity(strings[2085], false, 168, IFC4X3_ADD1_IfcExternalInformation_type); + IFC4X3_ADD1_IfcClassificationReference_type = new entity(strings[2086], false, 169, IFC4X3_ADD1_IfcExternalReference_type); + IFC4X3_ADD1_IfcColourRgbList_type = new entity(strings[2087], false, 180, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcColourSpecification_type = new entity(strings[2088], true, 181, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcCompositeProfileDef_type = new entity(strings[2089], false, 195, IFC4X3_ADD1_IfcProfileDef_type); + IFC4X3_ADD1_IfcConnectedFaceSet_type = new entity(strings[2090], false, 204, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcConnectionCurveGeometry_type = new entity(strings[2091], false, 205, IFC4X3_ADD1_IfcConnectionGeometry_type); + IFC4X3_ADD1_IfcConnectionPointEccentricity_type = new entity(strings[2092], false, 207, IFC4X3_ADD1_IfcConnectionPointGeometry_type); + IFC4X3_ADD1_IfcContextDependentUnit_type = new entity(strings[2093], false, 227, IFC4X3_ADD1_IfcNamedUnit_type); + IFC4X3_ADD1_IfcConversionBasedUnit_type = new entity(strings[2094], false, 232, IFC4X3_ADD1_IfcNamedUnit_type); + IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type = new entity(strings[2095], false, 233, IFC4X3_ADD1_IfcConversionBasedUnit_type); + IFC4X3_ADD1_IfcCurrencyRelationship_type = new entity(strings[2096], false, 266, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcCurveStyle_type = new entity(strings[2097], false, 280, IFC4X3_ADD1_IfcPresentationStyle_type); + IFC4X3_ADD1_IfcCurveStyleFont_type = new entity(strings[2098], false, 281, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type = new entity(strings[2099], false, 282, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcCurveStyleFontPattern_type = new entity(strings[2100], false, 283, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcDerivedProfileDef_type = new entity(strings[2101], false, 298, IFC4X3_ADD1_IfcProfileDef_type); + IFC4X3_ADD1_IfcDocumentInformation_type = new entity(strings[2102], false, 330, IFC4X3_ADD1_IfcExternalInformation_type); + IFC4X3_ADD1_IfcDocumentInformationRelationship_type = new entity(strings[2103], false, 331, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcDocumentReference_type = new entity(strings[2104], false, 332, IFC4X3_ADD1_IfcExternalReference_type); + IFC4X3_ADD1_IfcEdge_type = new entity(strings[2105], false, 362, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcEdgeCurve_type = new entity(strings[2106], false, 363, IFC4X3_ADD1_IfcEdge_type); + IFC4X3_ADD1_IfcEventTime_type = new entity(strings[2107], false, 417, IFC4X3_ADD1_IfcSchedulingTime_type); + IFC4X3_ADD1_IfcExtendedProperties_type = new entity(strings[2108], true, 421, IFC4X3_ADD1_IfcPropertyAbstraction_type); + IFC4X3_ADD1_IfcExternalReferenceRelationship_type = new entity(strings[2109], false, 427, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcFace_type = new entity(strings[2110], false, 433, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcFaceBound_type = new entity(strings[2111], false, 435, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcFaceOuterBound_type = new entity(strings[2112], false, 436, IFC4X3_ADD1_IfcFaceBound_type); + IFC4X3_ADD1_IfcFaceSurface_type = new entity(strings[2113], false, 437, IFC4X3_ADD1_IfcFace_type); + IFC4X3_ADD1_IfcFailureConnectionCondition_type = new entity(strings[2114], false, 445, IFC4X3_ADD1_IfcStructuralConnectionCondition_type); + IFC4X3_ADD1_IfcFillAreaStyle_type = new entity(strings[2115], false, 455, IFC4X3_ADD1_IfcPresentationStyle_type); + IFC4X3_ADD1_IfcGeometricRepresentationContext_type = new entity(strings[2116], false, 506, IFC4X3_ADD1_IfcRepresentationContext_type); + IFC4X3_ADD1_IfcGeometricRepresentationItem_type = new entity(strings[2117], true, 507, IFC4X3_ADD1_IfcRepresentationItem_type); + IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type = new entity(strings[2118], false, 508, IFC4X3_ADD1_IfcGeometricRepresentationContext_type); + IFC4X3_ADD1_IfcGeometricSet_type = new entity(strings[2119], false, 509, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcGridPlacement_type = new entity(strings[2120], false, 522, IFC4X3_ADD1_IfcObjectPlacement_type); + IFC4X3_ADD1_IfcHalfSpaceSolid_type = new entity(strings[2121], false, 526, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcImageTexture_type = new entity(strings[2122], false, 538, IFC4X3_ADD1_IfcSurfaceTexture_type); + IFC4X3_ADD1_IfcIndexedColourMap_type = new entity(strings[2123], false, 542, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcIndexedTextureMap_type = new entity(strings[2124], true, 547, IFC4X3_ADD1_IfcTextureCoordinate_type); + IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type = new entity(strings[2125], false, 548, IFC4X3_ADD1_IfcIndexedTextureMap_type); + IFC4X3_ADD1_IfcIrregularTimeSeries_type = new entity(strings[2126], false, 561, IFC4X3_ADD1_IfcTimeSeries_type); + IFC4X3_ADD1_IfcLagTime_type = new entity(strings[2127], false, 577, IFC4X3_ADD1_IfcSchedulingTime_type); + IFC4X3_ADD1_IfcLightSource_type = new entity(strings[2128], true, 596, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcLightSourceAmbient_type = new entity(strings[2129], false, 597, IFC4X3_ADD1_IfcLightSource_type); + IFC4X3_ADD1_IfcLightSourceDirectional_type = new entity(strings[2130], false, 598, IFC4X3_ADD1_IfcLightSource_type); + IFC4X3_ADD1_IfcLightSourceGoniometric_type = new entity(strings[2131], false, 599, IFC4X3_ADD1_IfcLightSource_type); + IFC4X3_ADD1_IfcLightSourcePositional_type = new entity(strings[2132], false, 600, IFC4X3_ADD1_IfcLightSource_type); + IFC4X3_ADD1_IfcLightSourceSpot_type = new entity(strings[2133], false, 601, IFC4X3_ADD1_IfcLightSourcePositional_type); + IFC4X3_ADD1_IfcLinearPlacement_type = new entity(strings[2134], false, 606, IFC4X3_ADD1_IfcObjectPlacement_type); + IFC4X3_ADD1_IfcLocalPlacement_type = new entity(strings[2135], false, 615, IFC4X3_ADD1_IfcObjectPlacement_type); + IFC4X3_ADD1_IfcLoop_type = new entity(strings[2136], false, 618, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcMappedItem_type = new entity(strings[2137], false, 628, IFC4X3_ADD1_IfcRepresentationItem_type); + IFC4X3_ADD1_IfcMaterial_type = new entity(strings[2138], false, 637, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialConstituent_type = new entity(strings[2139], false, 639, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialConstituentSet_type = new entity(strings[2140], false, 640, IFC4X3_ADD1_IfcMaterialDefinition_type); + IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type = new entity(strings[2141], false, 642, IFC4X3_ADD1_IfcProductRepresentation_type); + IFC4X3_ADD1_IfcMaterialLayerSetUsage_type = new entity(strings[2142], false, 645, IFC4X3_ADD1_IfcMaterialUsageDefinition_type); + IFC4X3_ADD1_IfcMaterialProfileSetUsage_type = new entity(strings[2143], false, 650, IFC4X3_ADD1_IfcMaterialUsageDefinition_type); + IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type = new entity(strings[2144], false, 651, IFC4X3_ADD1_IfcMaterialProfileSetUsage_type); + IFC4X3_ADD1_IfcMaterialProperties_type = new entity(strings[2145], false, 653, IFC4X3_ADD1_IfcExtendedProperties_type); + IFC4X3_ADD1_IfcMaterialRelationship_type = new entity(strings[2146], false, 654, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcMirroredProfileDef_type = new entity(strings[2147], false, 670, IFC4X3_ADD1_IfcDerivedProfileDef_type); + IFC4X3_ADD1_IfcObjectDefinition_type = new entity(strings[2148], true, 701, IFC4X3_ADD1_IfcRoot_type); + IFC4X3_ADD1_IfcOpenCrossProfileDef_type = new entity(strings[2149], false, 712, IFC4X3_ADD1_IfcProfileDef_type); + IFC4X3_ADD1_IfcOpenShell_type = new entity(strings[2150], false, 715, IFC4X3_ADD1_IfcConnectedFaceSet_type); + IFC4X3_ADD1_IfcOrganizationRelationship_type = new entity(strings[2151], false, 717, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcOrientedEdge_type = new entity(strings[2152], false, 718, IFC4X3_ADD1_IfcEdge_type); + IFC4X3_ADD1_IfcParameterizedProfileDef_type = new entity(strings[2153], true, 724, IFC4X3_ADD1_IfcProfileDef_type); + IFC4X3_ADD1_IfcPath_type = new entity(strings[2154], false, 726, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); + IFC4X3_ADD1_IfcPhysicalComplexQuantity_type = new entity(strings[2155], false, 740, IFC4X3_ADD1_IfcPhysicalQuantity_type); + IFC4X3_ADD1_IfcPixelTexture_type = new entity(strings[2156], false, 754, IFC4X3_ADD1_IfcSurfaceTexture_type); + IFC4X3_ADD1_IfcPlacement_type = new entity(strings[2157], true, 755, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcPlanarExtent_type = new entity(strings[2158], false, 757, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcPoint_type = new entity(strings[2159], true, 764, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcPointByDistanceExpression_type = new entity(strings[2160], false, 765, IFC4X3_ADD1_IfcPoint_type); + IFC4X3_ADD1_IfcPointOnCurve_type = new entity(strings[2161], false, 766, IFC4X3_ADD1_IfcPoint_type); + IFC4X3_ADD1_IfcPointOnSurface_type = new entity(strings[2162], false, 767, IFC4X3_ADD1_IfcPoint_type); + IFC4X3_ADD1_IfcPolyLoop_type = new entity(strings[2163], false, 772, IFC4X3_ADD1_IfcLoop_type); + IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type = new entity(strings[2164], false, 769, IFC4X3_ADD1_IfcHalfSpaceSolid_type); + IFC4X3_ADD1_IfcPreDefinedItem_type = new entity(strings[2165], true, 784, IFC4X3_ADD1_IfcPresentationItem_type); + IFC4X3_ADD1_IfcPreDefinedProperties_type = new entity(strings[2166], true, 785, IFC4X3_ADD1_IfcPropertyAbstraction_type); + IFC4X3_ADD1_IfcPreDefinedTextFont_type = new entity(strings[2167], true, 787, IFC4X3_ADD1_IfcPreDefinedItem_type); + IFC4X3_ADD1_IfcProductDefinitionShape_type = new entity(strings[2168], false, 801, IFC4X3_ADD1_IfcProductRepresentation_type); + IFC4X3_ADD1_IfcProfileProperties_type = new entity(strings[2169], false, 806, IFC4X3_ADD1_IfcExtendedProperties_type); + IFC4X3_ADD1_IfcProperty_type = new entity(strings[2170], true, 816, IFC4X3_ADD1_IfcPropertyAbstraction_type); + IFC4X3_ADD1_IfcPropertyDefinition_type = new entity(strings[2171], true, 819, IFC4X3_ADD1_IfcRoot_type); + IFC4X3_ADD1_IfcPropertyDependencyRelationship_type = new entity(strings[2172], false, 820, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcPropertySetDefinition_type = new entity(strings[2173], true, 826, IFC4X3_ADD1_IfcPropertyDefinition_type); + IFC4X3_ADD1_IfcPropertyTemplateDefinition_type = new entity(strings[2174], true, 834, IFC4X3_ADD1_IfcPropertyDefinition_type); + IFC4X3_ADD1_IfcQuantitySet_type = new entity(strings[2175], true, 848, IFC4X3_ADD1_IfcPropertySetDefinition_type); + IFC4X3_ADD1_IfcRectangleProfileDef_type = new entity(strings[2176], false, 874, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcRegularTimeSeries_type = new entity(strings[2177], false, 883, IFC4X3_ADD1_IfcTimeSeries_type); + IFC4X3_ADD1_IfcReinforcementBarProperties_type = new entity(strings[2178], false, 886, IFC4X3_ADD1_IfcPreDefinedProperties_type); + IFC4X3_ADD1_IfcRelationship_type = new entity(strings[2179], true, 916, IFC4X3_ADD1_IfcRoot_type); + IFC4X3_ADD1_IfcResourceApprovalRelationship_type = new entity(strings[2180], false, 955, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcResourceConstraintRelationship_type = new entity(strings[2181], false, 956, IFC4X3_ADD1_IfcResourceLevelRelationship_type); + IFC4X3_ADD1_IfcResourceTime_type = new entity(strings[2182], false, 960, IFC4X3_ADD1_IfcSchedulingTime_type); + IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type = new entity(strings[2183], false, 979, IFC4X3_ADD1_IfcRectangleProfileDef_type); + IFC4X3_ADD1_IfcSectionProperties_type = new entity(strings[2184], false, 992, IFC4X3_ADD1_IfcPreDefinedProperties_type); + IFC4X3_ADD1_IfcSectionReinforcementProperties_type = new entity(strings[2185], false, 993, IFC4X3_ADD1_IfcPreDefinedProperties_type); + IFC4X3_ADD1_IfcSectionedSpine_type = new entity(strings[2186], false, 989, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcSegment_type = new entity(strings[2187], true, 995, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcShellBasedSurfaceModel_type = new entity(strings[2188], false, 1011, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcSimpleProperty_type = new entity(strings[2189], true, 1018, IFC4X3_ADD1_IfcProperty_type); + IFC4X3_ADD1_IfcSlippageConnectionCondition_type = new entity(strings[2190], false, 1031, IFC4X3_ADD1_IfcStructuralConnectionCondition_type); + IFC4X3_ADD1_IfcSolidModel_type = new entity(strings[2191], true, 1036, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcStructuralLoadLinearForce_type = new entity(strings[2192], false, 1094, IFC4X3_ADD1_IfcStructuralLoadStatic_type); + IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type = new entity(strings[2193], false, 1096, IFC4X3_ADD1_IfcStructuralLoadStatic_type); + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type = new entity(strings[2194], false, 1097, IFC4X3_ADD1_IfcStructuralLoadStatic_type); + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[2195], false, 1098, IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type); + IFC4X3_ADD1_IfcStructuralLoadSingleForce_type = new entity(strings[2196], false, 1099, IFC4X3_ADD1_IfcStructuralLoadStatic_type); + IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type = new entity(strings[2197], false, 1100, IFC4X3_ADD1_IfcStructuralLoadSingleForce_type); + IFC4X3_ADD1_IfcSubedge_type = new entity(strings[2198], false, 1123, IFC4X3_ADD1_IfcEdge_type); + IFC4X3_ADD1_IfcSurface_type = new entity(strings[2199], true, 1124, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcSurfaceStyleRendering_type = new entity(strings[2200], false, 1138, IFC4X3_ADD1_IfcSurfaceStyleShading_type); + IFC4X3_ADD1_IfcSweptAreaSolid_type = new entity(strings[2201], true, 1142, IFC4X3_ADD1_IfcSolidModel_type); + IFC4X3_ADD1_IfcSweptDiskSolid_type = new entity(strings[2202], false, 1143, IFC4X3_ADD1_IfcSolidModel_type); + IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type = new entity(strings[2203], false, 1144, IFC4X3_ADD1_IfcSweptDiskSolid_type); + IFC4X3_ADD1_IfcSweptSurface_type = new entity(strings[2204], true, 1145, IFC4X3_ADD1_IfcSurface_type); + IFC4X3_ADD1_IfcTShapeProfileDef_type = new entity(strings[2205], false, 1237, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcTessellatedItem_type = new entity(strings[2206], true, 1178, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcTextLiteral_type = new entity(strings[2207], false, 1184, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcTextLiteralWithExtent_type = new entity(strings[2208], false, 1185, IFC4X3_ADD1_IfcTextLiteral_type); + IFC4X3_ADD1_IfcTextStyleFontModel_type = new entity(strings[2209], false, 1188, IFC4X3_ADD1_IfcPreDefinedTextFont_type); + IFC4X3_ADD1_IfcTrapeziumProfileDef_type = new entity(strings[2210], false, 1231, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcTypeObject_type = new entity(strings[2211], false, 1241, IFC4X3_ADD1_IfcObjectDefinition_type); + IFC4X3_ADD1_IfcTypeProcess_type = new entity(strings[2212], true, 1242, IFC4X3_ADD1_IfcTypeObject_type); + IFC4X3_ADD1_IfcTypeProduct_type = new entity(strings[2213], false, 1243, IFC4X3_ADD1_IfcTypeObject_type); + IFC4X3_ADD1_IfcTypeResource_type = new entity(strings[2214], true, 1244, IFC4X3_ADD1_IfcTypeObject_type); + IFC4X3_ADD1_IfcUShapeProfileDef_type = new entity(strings[2215], false, 1255, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcVector_type = new entity(strings[2216], false, 1261, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcVertexLoop_type = new entity(strings[2217], false, 1267, IFC4X3_ADD1_IfcLoop_type); + IFC4X3_ADD1_IfcZShapeProfileDef_type = new entity(strings[2218], false, 1311, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcClassificationReferenceSelect_type = new select_type(strings[2219], 170, { + IFC4X3_ADD1_IfcClassification_type, + IFC4X3_ADD1_IfcClassificationReference_type + }); + IFC4X3_ADD1_IfcClassificationSelect_type = new select_type(strings[2220], 171, { + IFC4X3_ADD1_IfcClassification_type, + IFC4X3_ADD1_IfcClassificationReference_type + }); + IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[2221], 245, { + IFC4X3_ADD1_IfcCoordinateReferenceSystem_type, + IFC4X3_ADD1_IfcGeometricRepresentationContext_type + }); + IFC4X3_ADD1_IfcDefinitionSelect_type = new select_type(strings[2222], 296, { + IFC4X3_ADD1_IfcObjectDefinition_type, + IFC4X3_ADD1_IfcPropertyDefinition_type + }); + IFC4X3_ADD1_IfcDocumentSelect_type = new select_type(strings[2223], 333, { + IFC4X3_ADD1_IfcDocumentInformation_type, + IFC4X3_ADD1_IfcDocumentReference_type + }); + IFC4X3_ADD1_IfcHatchLineDistanceSelect_type = new select_type(strings[2224], 527, { + IFC4X3_ADD1_IfcPositiveLengthMeasure_type, + IFC4X3_ADD1_IfcVector_type + }); + IFC4X3_ADD1_IfcMeasureValue_type = new select_type(strings[2225], 657, { + IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type, + IFC4X3_ADD1_IfcAreaMeasure_type, + IFC4X3_ADD1_IfcComplexNumber_type, + IFC4X3_ADD1_IfcContextDependentMeasure_type, + IFC4X3_ADD1_IfcCountMeasure_type, + IFC4X3_ADD1_IfcDescriptiveMeasure_type, + IFC4X3_ADD1_IfcElectricCurrentMeasure_type, + IFC4X3_ADD1_IfcLengthMeasure_type, + IFC4X3_ADD1_IfcLuminousIntensityMeasure_type, + IFC4X3_ADD1_IfcMassMeasure_type, + IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type, + IFC4X3_ADD1_IfcNormalisedRatioMeasure_type, + IFC4X3_ADD1_IfcNumericMeasure_type, + IFC4X3_ADD1_IfcParameterValue_type, + IFC4X3_ADD1_IfcPlaneAngleMeasure_type, + IFC4X3_ADD1_IfcPositiveLengthMeasure_type, + IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type, + IFC4X3_ADD1_IfcPositiveRatioMeasure_type, + IFC4X3_ADD1_IfcRatioMeasure_type, + IFC4X3_ADD1_IfcSolidAngleMeasure_type, + IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_ADD1_IfcTimeMeasure_type, + IFC4X3_ADD1_IfcVolumeMeasure_type + }); + IFC4X3_ADD1_IfcPointOrVertexPoint_type = new select_type(strings[2226], 768, { + IFC4X3_ADD1_IfcPoint_type, + IFC4X3_ADD1_IfcVertexPoint_type + }); + IFC4X3_ADD1_IfcProductRepresentationSelect_type = new select_type(strings[2227], 803, { + IFC4X3_ADD1_IfcProductDefinitionShape_type, + IFC4X3_ADD1_IfcRepresentationMap_type + }); + IFC4X3_ADD1_IfcPropertySetDefinitionSet_type = new type_declaration(strings[2228], 828, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertySetDefinition_type))); + IFC4X3_ADD1_IfcResourceObjectSelect_type = new select_type(strings[2229], 958, { + IFC4X3_ADD1_IfcActorRole_type, + IFC4X3_ADD1_IfcAppliedValue_type, + IFC4X3_ADD1_IfcApproval_type, + IFC4X3_ADD1_IfcConstraint_type, + IFC4X3_ADD1_IfcContextDependentUnit_type, + IFC4X3_ADD1_IfcConversionBasedUnit_type, + IFC4X3_ADD1_IfcExternalInformation_type, + IFC4X3_ADD1_IfcExternalReference_type, + IFC4X3_ADD1_IfcMaterialDefinition_type, + IFC4X3_ADD1_IfcOrganization_type, + IFC4X3_ADD1_IfcPerson_type, + IFC4X3_ADD1_IfcPersonAndOrganization_type, + IFC4X3_ADD1_IfcPhysicalQuantity_type, + IFC4X3_ADD1_IfcProfileDef_type, + IFC4X3_ADD1_IfcPropertyAbstraction_type, + IFC4X3_ADD1_IfcShapeAspect_type, + IFC4X3_ADD1_IfcTimeSeries_type + }); + IFC4X3_ADD1_IfcTextFontSelect_type = new select_type(strings[2230], 1183, { + IFC4X3_ADD1_IfcExternallyDefinedTextFont_type, + IFC4X3_ADD1_IfcPreDefinedTextFont_type + }); + IFC4X3_ADD1_IfcValue_type = new select_type(strings[2231], 1256, { + IFC4X3_ADD1_IfcDerivedMeasureValue_type, + IFC4X3_ADD1_IfcMeasureValue_type, + IFC4X3_ADD1_IfcSimpleValue_type + }); + IFC4X3_ADD1_IfcAdvancedFace_type = new entity(strings[2232], false, 16, IFC4X3_ADD1_IfcFaceSurface_type); + IFC4X3_ADD1_IfcAnnotationFillArea_type = new entity(strings[2233], false, 47, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type = new entity(strings[2234], false, 63, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcAxis1Placement_type = new entity(strings[2235], false, 67, IFC4X3_ADD1_IfcPlacement_type); + IFC4X3_ADD1_IfcAxis2Placement2D_type = new entity(strings[2236], false, 69, IFC4X3_ADD1_IfcPlacement_type); + IFC4X3_ADD1_IfcAxis2Placement3D_type = new entity(strings[2237], false, 70, IFC4X3_ADD1_IfcPlacement_type); + IFC4X3_ADD1_IfcAxis2PlacementLinear_type = new entity(strings[2238], false, 71, IFC4X3_ADD1_IfcPlacement_type); + IFC4X3_ADD1_IfcBooleanResult_type = new entity(strings[2239], false, 90, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcBoundedSurface_type = new entity(strings[2240], true, 99, IFC4X3_ADD1_IfcSurface_type); + IFC4X3_ADD1_IfcBoundingBox_type = new entity(strings[2241], false, 100, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcBoxedHalfSpace_type = new entity(strings[2242], false, 102, IFC4X3_ADD1_IfcHalfSpaceSolid_type); + IFC4X3_ADD1_IfcCShapeProfileDef_type = new entity(strings[2243], false, 265, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcCartesianPoint_type = new entity(strings[2244], false, 146, IFC4X3_ADD1_IfcPoint_type); + IFC4X3_ADD1_IfcCartesianPointList_type = new entity(strings[2245], true, 147, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcCartesianPointList2D_type = new entity(strings[2246], false, 148, IFC4X3_ADD1_IfcCartesianPointList_type); + IFC4X3_ADD1_IfcCartesianPointList3D_type = new entity(strings[2247], false, 149, IFC4X3_ADD1_IfcCartesianPointList_type); + IFC4X3_ADD1_IfcCartesianTransformationOperator_type = new entity(strings[2248], true, 150, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type = new entity(strings[2249], false, 151, IFC4X3_ADD1_IfcCartesianTransformationOperator_type); + IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[2250], false, 152, IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type); + IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type = new entity(strings[2251], false, 153, IFC4X3_ADD1_IfcCartesianTransformationOperator_type); + IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[2252], false, 154, IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type); + IFC4X3_ADD1_IfcCircleProfileDef_type = new entity(strings[2253], false, 165, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcClosedShell_type = new entity(strings[2254], false, 172, IFC4X3_ADD1_IfcConnectedFaceSet_type); + IFC4X3_ADD1_IfcColourRgb_type = new entity(strings[2255], false, 179, IFC4X3_ADD1_IfcColourSpecification_type); + IFC4X3_ADD1_IfcComplexProperty_type = new entity(strings[2256], false, 189, IFC4X3_ADD1_IfcProperty_type); + IFC4X3_ADD1_IfcCompositeCurveSegment_type = new entity(strings[2257], false, 194, IFC4X3_ADD1_IfcSegment_type); + IFC4X3_ADD1_IfcConstructionResourceType_type = new entity(strings[2258], true, 224, IFC4X3_ADD1_IfcTypeResource_type); + IFC4X3_ADD1_IfcContext_type = new entity(strings[2259], true, 225, IFC4X3_ADD1_IfcObjectDefinition_type); + IFC4X3_ADD1_IfcCrewResourceType_type = new entity(strings[2260], false, 260, IFC4X3_ADD1_IfcConstructionResourceType_type); + IFC4X3_ADD1_IfcCsgPrimitive3D_type = new entity(strings[2261], true, 262, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcCsgSolid_type = new entity(strings[2262], false, 264, IFC4X3_ADD1_IfcSolidModel_type); + IFC4X3_ADD1_IfcCurve_type = new entity(strings[2263], true, 271, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcCurveBoundedPlane_type = new entity(strings[2264], false, 272, IFC4X3_ADD1_IfcBoundedSurface_type); + IFC4X3_ADD1_IfcCurveBoundedSurface_type = new entity(strings[2265], false, 273, IFC4X3_ADD1_IfcBoundedSurface_type); + IFC4X3_ADD1_IfcCurveSegment_type = new entity(strings[2266], false, 279, IFC4X3_ADD1_IfcSegment_type); + IFC4X3_ADD1_IfcDirection_type = new entity(strings[2267], false, 305, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type = new entity(strings[2268], true, 307, IFC4X3_ADD1_IfcSweptAreaSolid_type); + IFC4X3_ADD1_IfcEdgeLoop_type = new entity(strings[2269], false, 364, IFC4X3_ADD1_IfcLoop_type); + IFC4X3_ADD1_IfcElementQuantity_type = new entity(strings[2270], false, 400, IFC4X3_ADD1_IfcQuantitySet_type); + IFC4X3_ADD1_IfcElementType_type = new entity(strings[2271], true, 401, IFC4X3_ADD1_IfcTypeProduct_type); + IFC4X3_ADD1_IfcElementarySurface_type = new entity(strings[2272], true, 393, IFC4X3_ADD1_IfcSurface_type); + IFC4X3_ADD1_IfcEllipseProfileDef_type = new entity(strings[2273], false, 403, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcEventType_type = new entity(strings[2274], false, 419, IFC4X3_ADD1_IfcTypeProcess_type); + IFC4X3_ADD1_IfcExtrudedAreaSolid_type = new entity(strings[2275], false, 431, IFC4X3_ADD1_IfcSweptAreaSolid_type); + IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type = new entity(strings[2276], false, 432, IFC4X3_ADD1_IfcExtrudedAreaSolid_type); + IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type = new entity(strings[2277], false, 434, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcFillAreaStyleHatching_type = new entity(strings[2278], false, 456, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcFillAreaStyleTiles_type = new entity(strings[2279], false, 457, IFC4X3_ADD1_IfcGeometricRepresentationItem_type); + IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[2280], false, 465, IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_ADD1_IfcFurnishingElementType_type = new entity(strings[2281], false, 496, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcFurnitureType_type = new entity(strings[2282], false, 498, IFC4X3_ADD1_IfcFurnishingElementType_type); + IFC4X3_ADD1_IfcGeographicElementType_type = new entity(strings[2283], false, 502, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcGeometricCurveSet_type = new entity(strings[2284], false, 504, IFC4X3_ADD1_IfcGeometricSet_type); + IFC4X3_ADD1_IfcIShapeProfileDef_type = new entity(strings[2285], false, 563, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcIndexedPolygonalFace_type = new entity(strings[2286], false, 544, IFC4X3_ADD1_IfcTessellatedItem_type); + IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[2287], false, 545, IFC4X3_ADD1_IfcIndexedPolygonalFace_type); + IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type = new entity(strings[2288], false, 546, IFC4X3_ADD1_IfcIndexedTextureMap_type); + IFC4X3_ADD1_IfcLShapeProfileDef_type = new entity(strings[2289], false, 619, IFC4X3_ADD1_IfcParameterizedProfileDef_type); + IFC4X3_ADD1_IfcLaborResourceType_type = new entity(strings[2290], false, 575, IFC4X3_ADD1_IfcConstructionResourceType_type); + IFC4X3_ADD1_IfcLine_type = new entity(strings[2291], false, 602, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcManifoldSolidBrep_type = new entity(strings[2292], true, 625, IFC4X3_ADD1_IfcSolidModel_type); + IFC4X3_ADD1_IfcObject_type = new entity(strings[2293], true, 700, IFC4X3_ADD1_IfcObjectDefinition_type); + IFC4X3_ADD1_IfcOffsetCurve_type = new entity(strings[2294], true, 708, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcOffsetCurve2D_type = new entity(strings[2295], false, 709, IFC4X3_ADD1_IfcOffsetCurve_type); + IFC4X3_ADD1_IfcOffsetCurve3D_type = new entity(strings[2296], false, 710, IFC4X3_ADD1_IfcOffsetCurve_type); + IFC4X3_ADD1_IfcOffsetCurveByDistances_type = new entity(strings[2297], false, 711, IFC4X3_ADD1_IfcOffsetCurve_type); + IFC4X3_ADD1_IfcPcurve_type = new entity(strings[2298], false, 730, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcPlanarBox_type = new entity(strings[2299], false, 756, IFC4X3_ADD1_IfcPlanarExtent_type); + IFC4X3_ADD1_IfcPlane_type = new entity(strings[2300], false, 759, IFC4X3_ADD1_IfcElementarySurface_type); + IFC4X3_ADD1_IfcPolynomialCurve_type = new entity(strings[2301], false, 773, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcPreDefinedColour_type = new entity(strings[2302], true, 782, IFC4X3_ADD1_IfcPreDefinedItem_type); + IFC4X3_ADD1_IfcPreDefinedCurveFont_type = new entity(strings[2303], true, 783, IFC4X3_ADD1_IfcPreDefinedItem_type); + IFC4X3_ADD1_IfcPreDefinedPropertySet_type = new entity(strings[2304], true, 786, IFC4X3_ADD1_IfcPropertySetDefinition_type); + IFC4X3_ADD1_IfcProcedureType_type = new entity(strings[2305], false, 796, IFC4X3_ADD1_IfcTypeProcess_type); + IFC4X3_ADD1_IfcProcess_type = new entity(strings[2306], true, 798, IFC4X3_ADD1_IfcObject_type); + IFC4X3_ADD1_IfcProduct_type = new entity(strings[2307], true, 800, IFC4X3_ADD1_IfcObject_type); + IFC4X3_ADD1_IfcProject_type = new entity(strings[2308], false, 808, IFC4X3_ADD1_IfcContext_type); + IFC4X3_ADD1_IfcProjectLibrary_type = new entity(strings[2309], false, 813, IFC4X3_ADD1_IfcContext_type); + IFC4X3_ADD1_IfcPropertyBoundedValue_type = new entity(strings[2310], false, 818, IFC4X3_ADD1_IfcSimpleProperty_type); + IFC4X3_ADD1_IfcPropertyEnumeratedValue_type = new entity(strings[2311], false, 821, IFC4X3_ADD1_IfcSimpleProperty_type); + IFC4X3_ADD1_IfcPropertyListValue_type = new entity(strings[2312], false, 823, IFC4X3_ADD1_IfcSimpleProperty_type); + IFC4X3_ADD1_IfcPropertyReferenceValue_type = new entity(strings[2313], false, 824, IFC4X3_ADD1_IfcSimpleProperty_type); + IFC4X3_ADD1_IfcPropertySet_type = new entity(strings[2314], false, 825, IFC4X3_ADD1_IfcPropertySetDefinition_type); + IFC4X3_ADD1_IfcPropertySetTemplate_type = new entity(strings[2315], false, 829, IFC4X3_ADD1_IfcPropertyTemplateDefinition_type); + IFC4X3_ADD1_IfcPropertySingleValue_type = new entity(strings[2316], false, 831, IFC4X3_ADD1_IfcSimpleProperty_type); + IFC4X3_ADD1_IfcPropertyTableValue_type = new entity(strings[2317], false, 832, IFC4X3_ADD1_IfcSimpleProperty_type); + IFC4X3_ADD1_IfcPropertyTemplate_type = new entity(strings[2318], true, 833, IFC4X3_ADD1_IfcPropertyTemplateDefinition_type); + IFC4X3_ADD1_IfcRectangleHollowProfileDef_type = new entity(strings[2319], false, 873, IFC4X3_ADD1_IfcRectangleProfileDef_type); + IFC4X3_ADD1_IfcRectangularPyramid_type = new entity(strings[2320], false, 875, IFC4X3_ADD1_IfcCsgPrimitive3D_type); + IFC4X3_ADD1_IfcRectangularTrimmedSurface_type = new entity(strings[2321], false, 876, IFC4X3_ADD1_IfcBoundedSurface_type); + IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type = new entity(strings[2322], false, 887, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); + IFC4X3_ADD1_IfcRelAssigns_type = new entity(strings[2323], true, 900, IFC4X3_ADD1_IfcRelationship_type); + IFC4X3_ADD1_IfcRelAssignsToActor_type = new entity(strings[2324], false, 901, IFC4X3_ADD1_IfcRelAssigns_type); + IFC4X3_ADD1_IfcRelAssignsToControl_type = new entity(strings[2325], false, 902, IFC4X3_ADD1_IfcRelAssigns_type); + IFC4X3_ADD1_IfcRelAssignsToGroup_type = new entity(strings[2326], false, 903, IFC4X3_ADD1_IfcRelAssigns_type); + IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type = new entity(strings[2327], false, 904, IFC4X3_ADD1_IfcRelAssignsToGroup_type); + IFC4X3_ADD1_IfcRelAssignsToProcess_type = new entity(strings[2328], false, 905, IFC4X3_ADD1_IfcRelAssigns_type); + IFC4X3_ADD1_IfcRelAssignsToProduct_type = new entity(strings[2329], false, 906, IFC4X3_ADD1_IfcRelAssigns_type); + IFC4X3_ADD1_IfcRelAssignsToResource_type = new entity(strings[2330], false, 907, IFC4X3_ADD1_IfcRelAssigns_type); + IFC4X3_ADD1_IfcRelAssociates_type = new entity(strings[2331], true, 908, IFC4X3_ADD1_IfcRelationship_type); + IFC4X3_ADD1_IfcRelAssociatesApproval_type = new entity(strings[2332], false, 909, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelAssociatesClassification_type = new entity(strings[2333], false, 910, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelAssociatesConstraint_type = new entity(strings[2334], false, 911, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelAssociatesDocument_type = new entity(strings[2335], false, 912, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelAssociatesLibrary_type = new entity(strings[2336], false, 913, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelAssociatesMaterial_type = new entity(strings[2337], false, 914, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelAssociatesProfileDef_type = new entity(strings[2338], false, 915, IFC4X3_ADD1_IfcRelAssociates_type); + IFC4X3_ADD1_IfcRelConnects_type = new entity(strings[2339], true, 917, IFC4X3_ADD1_IfcRelationship_type); + IFC4X3_ADD1_IfcRelConnectsElements_type = new entity(strings[2340], false, 918, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelConnectsPathElements_type = new entity(strings[2341], false, 919, IFC4X3_ADD1_IfcRelConnectsElements_type); + IFC4X3_ADD1_IfcRelConnectsPortToElement_type = new entity(strings[2342], false, 921, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelConnectsPorts_type = new entity(strings[2343], false, 920, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type = new entity(strings[2344], false, 922, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelConnectsStructuralMember_type = new entity(strings[2345], false, 923, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type = new entity(strings[2346], false, 924, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type); + IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type = new entity(strings[2347], false, 925, IFC4X3_ADD1_IfcRelConnectsElements_type); + IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type = new entity(strings[2348], false, 926, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelCoversBldgElements_type = new entity(strings[2349], false, 927, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelCoversSpaces_type = new entity(strings[2350], false, 928, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelDeclares_type = new entity(strings[2351], false, 929, IFC4X3_ADD1_IfcRelationship_type); + IFC4X3_ADD1_IfcRelDecomposes_type = new entity(strings[2352], true, 930, IFC4X3_ADD1_IfcRelationship_type); + IFC4X3_ADD1_IfcRelDefines_type = new entity(strings[2353], true, 931, IFC4X3_ADD1_IfcRelationship_type); + IFC4X3_ADD1_IfcRelDefinesByObject_type = new entity(strings[2354], false, 932, IFC4X3_ADD1_IfcRelDefines_type); + IFC4X3_ADD1_IfcRelDefinesByProperties_type = new entity(strings[2355], false, 933, IFC4X3_ADD1_IfcRelDefines_type); + IFC4X3_ADD1_IfcRelDefinesByTemplate_type = new entity(strings[2356], false, 934, IFC4X3_ADD1_IfcRelDefines_type); + IFC4X3_ADD1_IfcRelDefinesByType_type = new entity(strings[2357], false, 935, IFC4X3_ADD1_IfcRelDefines_type); + IFC4X3_ADD1_IfcRelFillsElement_type = new entity(strings[2358], false, 936, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelFlowControlElements_type = new entity(strings[2359], false, 937, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelInterferesElements_type = new entity(strings[2360], false, 938, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelNests_type = new entity(strings[2361], false, 939, IFC4X3_ADD1_IfcRelDecomposes_type); + IFC4X3_ADD1_IfcRelPositions_type = new entity(strings[2362], false, 940, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelProjectsElement_type = new entity(strings[2363], false, 941, IFC4X3_ADD1_IfcRelDecomposes_type); + IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type = new entity(strings[2364], false, 942, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelSequence_type = new entity(strings[2365], false, 943, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelServicesBuildings_type = new entity(strings[2366], false, 944, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelSpaceBoundary_type = new entity(strings[2367], false, 945, IFC4X3_ADD1_IfcRelConnects_type); + IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type = new entity(strings[2368], false, 946, IFC4X3_ADD1_IfcRelSpaceBoundary_type); + IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[2369], false, 947, IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type); + IFC4X3_ADD1_IfcRelVoidsElement_type = new entity(strings[2370], false, 948, IFC4X3_ADD1_IfcRelDecomposes_type); + IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[2371], false, 949, IFC4X3_ADD1_IfcCompositeCurveSegment_type); + IFC4X3_ADD1_IfcResource_type = new entity(strings[2372], true, 954, IFC4X3_ADD1_IfcObject_type); + IFC4X3_ADD1_IfcRevolvedAreaSolid_type = new entity(strings[2373], false, 961, IFC4X3_ADD1_IfcSweptAreaSolid_type); + IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type = new entity(strings[2374], false, 962, IFC4X3_ADD1_IfcRevolvedAreaSolid_type); + IFC4X3_ADD1_IfcRightCircularCone_type = new entity(strings[2375], false, 963, IFC4X3_ADD1_IfcCsgPrimitive3D_type); + IFC4X3_ADD1_IfcRightCircularCylinder_type = new entity(strings[2376], false, 964, IFC4X3_ADD1_IfcCsgPrimitive3D_type); + IFC4X3_ADD1_IfcSectionedSolid_type = new entity(strings[2377], true, 987, IFC4X3_ADD1_IfcSolidModel_type); + IFC4X3_ADD1_IfcSectionedSolidHorizontal_type = new entity(strings[2378], false, 988, IFC4X3_ADD1_IfcSectionedSolid_type); + IFC4X3_ADD1_IfcSectionedSurface_type = new entity(strings[2379], false, 990, IFC4X3_ADD1_IfcSurface_type); + IFC4X3_ADD1_IfcSimplePropertyTemplate_type = new entity(strings[2380], false, 1019, IFC4X3_ADD1_IfcPropertyTemplate_type); + IFC4X3_ADD1_IfcSpatialElement_type = new entity(strings[2381], true, 1049, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcSpatialElementType_type = new entity(strings[2382], true, 1050, IFC4X3_ADD1_IfcTypeProduct_type); + IFC4X3_ADD1_IfcSpatialStructureElement_type = new entity(strings[2383], true, 1052, IFC4X3_ADD1_IfcSpatialElement_type); + IFC4X3_ADD1_IfcSpatialStructureElementType_type = new entity(strings[2384], true, 1053, IFC4X3_ADD1_IfcSpatialElementType_type); + IFC4X3_ADD1_IfcSpatialZone_type = new entity(strings[2385], false, 1054, IFC4X3_ADD1_IfcSpatialElement_type); + IFC4X3_ADD1_IfcSpatialZoneType_type = new entity(strings[2386], false, 1055, IFC4X3_ADD1_IfcSpatialElementType_type); + IFC4X3_ADD1_IfcSphere_type = new entity(strings[2387], false, 1061, IFC4X3_ADD1_IfcCsgPrimitive3D_type); + IFC4X3_ADD1_IfcSphericalSurface_type = new entity(strings[2388], false, 1062, IFC4X3_ADD1_IfcElementarySurface_type); + IFC4X3_ADD1_IfcSpiral_type = new entity(strings[2389], true, 1063, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcStructuralActivity_type = new entity(strings[2390], true, 1076, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcStructuralItem_type = new entity(strings[2391], true, 1088, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcStructuralMember_type = new entity(strings[2392], true, 1103, IFC4X3_ADD1_IfcStructuralItem_type); + IFC4X3_ADD1_IfcStructuralReaction_type = new entity(strings[2393], true, 1108, IFC4X3_ADD1_IfcStructuralActivity_type); + IFC4X3_ADD1_IfcStructuralSurfaceMember_type = new entity(strings[2394], false, 1113, IFC4X3_ADD1_IfcStructuralMember_type); + IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type = new entity(strings[2395], false, 1115, IFC4X3_ADD1_IfcStructuralSurfaceMember_type); + IFC4X3_ADD1_IfcStructuralSurfaceReaction_type = new entity(strings[2396], false, 1116, IFC4X3_ADD1_IfcStructuralReaction_type); + IFC4X3_ADD1_IfcSubContractResourceType_type = new entity(strings[2397], false, 1121, IFC4X3_ADD1_IfcConstructionResourceType_type); + IFC4X3_ADD1_IfcSurfaceCurve_type = new entity(strings[2398], false, 1125, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[2399], false, 1126, IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type = new entity(strings[2400], false, 1129, IFC4X3_ADD1_IfcSweptSurface_type); + IFC4X3_ADD1_IfcSurfaceOfRevolution_type = new entity(strings[2401], false, 1130, IFC4X3_ADD1_IfcSweptSurface_type); + IFC4X3_ADD1_IfcSystemFurnitureElementType_type = new entity(strings[2402], false, 1151, IFC4X3_ADD1_IfcFurnishingElementType_type); + IFC4X3_ADD1_IfcTask_type = new entity(strings[2403], false, 1159, IFC4X3_ADD1_IfcProcess_type); + IFC4X3_ADD1_IfcTaskType_type = new entity(strings[2404], false, 1163, IFC4X3_ADD1_IfcTypeProcess_type); + IFC4X3_ADD1_IfcTessellatedFaceSet_type = new entity(strings[2405], true, 1177, IFC4X3_ADD1_IfcTessellatedItem_type); + IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type = new entity(strings[2406], false, 1205, IFC4X3_ADD1_IfcSpiral_type); + IFC4X3_ADD1_IfcToroidalSurface_type = new entity(strings[2407], false, 1216, IFC4X3_ADD1_IfcElementarySurface_type); + IFC4X3_ADD1_IfcTransportationDeviceType_type = new entity(strings[2408], true, 1227, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcTriangulatedFaceSet_type = new entity(strings[2409], false, 1232, IFC4X3_ADD1_IfcTessellatedFaceSet_type); + IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type = new entity(strings[2410], false, 1233, IFC4X3_ADD1_IfcTriangulatedFaceSet_type); + IFC4X3_ADD1_IfcVehicleType_type = new entity(strings[2411], false, 1264, IFC4X3_ADD1_IfcTransportationDeviceType_type); + IFC4X3_ADD1_IfcWindowLiningProperties_type = new entity(strings[2412], false, 1295, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); + IFC4X3_ADD1_IfcWindowPanelProperties_type = new entity(strings[2413], false, 1298, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); + IFC4X3_ADD1_IfcAppliedValueSelect_type = new select_type(strings[2414], 51, { + IFC4X3_ADD1_IfcMeasureWithUnit_type, + IFC4X3_ADD1_IfcReference_type, + IFC4X3_ADD1_IfcValue_type + }); + IFC4X3_ADD1_IfcAxis2Placement_type = new select_type(strings[2415], 68, { + IFC4X3_ADD1_IfcAxis2Placement2D_type, + IFC4X3_ADD1_IfcAxis2Placement3D_type + }); + IFC4X3_ADD1_IfcBooleanOperand_type = new select_type(strings[2416], 88, { + IFC4X3_ADD1_IfcBooleanResult_type, + IFC4X3_ADD1_IfcCsgPrimitive3D_type, + IFC4X3_ADD1_IfcHalfSpaceSolid_type, + IFC4X3_ADD1_IfcSolidModel_type, + IFC4X3_ADD1_IfcTessellatedFaceSet_type + }); + IFC4X3_ADD1_IfcColour_type = new select_type(strings[2417], 177, { + IFC4X3_ADD1_IfcColourSpecification_type, + IFC4X3_ADD1_IfcPreDefinedColour_type + }); + IFC4X3_ADD1_IfcColourOrFactor_type = new select_type(strings[2418], 178, { + IFC4X3_ADD1_IfcColourRgb_type, + IFC4X3_ADD1_IfcNormalisedRatioMeasure_type + }); + IFC4X3_ADD1_IfcCsgSelect_type = new select_type(strings[2419], 263, { + IFC4X3_ADD1_IfcBooleanResult_type, + IFC4X3_ADD1_IfcCsgPrimitive3D_type + }); + IFC4X3_ADD1_IfcCurveStyleFontSelect_type = new select_type(strings[2420], 284, { + IFC4X3_ADD1_IfcCurveStyleFont_type, + IFC4X3_ADD1_IfcPreDefinedCurveFont_type + }); + IFC4X3_ADD1_IfcFillStyleSelect_type = new select_type(strings[2421], 458, { + IFC4X3_ADD1_IfcColour_type, + IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type, + IFC4X3_ADD1_IfcFillAreaStyleHatching_type, + IFC4X3_ADD1_IfcFillAreaStyleTiles_type + }); + IFC4X3_ADD1_IfcGeometricSetSelect_type = new select_type(strings[2422], 510, { + IFC4X3_ADD1_IfcCurve_type, + IFC4X3_ADD1_IfcPoint_type, + IFC4X3_ADD1_IfcSurface_type + }); + IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type = new select_type(strings[2423], 523, { + IFC4X3_ADD1_IfcDirection_type, + IFC4X3_ADD1_IfcVirtualGridIntersection_type + }); + IFC4X3_ADD1_IfcMetricValueSelect_type = new select_type(strings[2424], 669, { + IFC4X3_ADD1_IfcAppliedValue_type, + IFC4X3_ADD1_IfcMeasureWithUnit_type, + IFC4X3_ADD1_IfcReference_type, + IFC4X3_ADD1_IfcTable_type, + IFC4X3_ADD1_IfcTimeSeries_type, + IFC4X3_ADD1_IfcValue_type + }); + IFC4X3_ADD1_IfcProcessSelect_type = new select_type(strings[2425], 799, { + IFC4X3_ADD1_IfcProcess_type, + IFC4X3_ADD1_IfcTypeProcess_type + }); + IFC4X3_ADD1_IfcProductSelect_type = new select_type(strings[2426], 804, { + IFC4X3_ADD1_IfcProduct_type, + IFC4X3_ADD1_IfcTypeProduct_type + }); + IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type = new select_type(strings[2427], 827, { + IFC4X3_ADD1_IfcPropertySetDefinition_type, + IFC4X3_ADD1_IfcPropertySetDefinitionSet_type + }); + IFC4X3_ADD1_IfcResourceSelect_type = new select_type(strings[2428], 959, { + IFC4X3_ADD1_IfcResource_type, + IFC4X3_ADD1_IfcTypeResource_type + }); + IFC4X3_ADD1_IfcShell_type = new select_type(strings[2429], 1010, { + IFC4X3_ADD1_IfcClosedShell_type, + IFC4X3_ADD1_IfcOpenShell_type + }); + IFC4X3_ADD1_IfcSolidOrShell_type = new select_type(strings[2430], 1037, { + IFC4X3_ADD1_IfcClosedShell_type, + IFC4X3_ADD1_IfcSolidModel_type + }); + IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type = new select_type(strings[2431], 1131, { + IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type, + IFC4X3_ADD1_IfcFaceSurface_type, + IFC4X3_ADD1_IfcSurface_type + }); + IFC4X3_ADD1_IfcTrimmingSelect_type = new select_type(strings[2432], 1236, { + IFC4X3_ADD1_IfcCartesianPoint_type, + IFC4X3_ADD1_IfcParameterValue_type + }); + IFC4X3_ADD1_IfcVectorOrDirection_type = new select_type(strings[2433], 1262, { + IFC4X3_ADD1_IfcDirection_type, + IFC4X3_ADD1_IfcVector_type + }); + IFC4X3_ADD1_IfcActor_type = new entity(strings[2434], false, 6, IFC4X3_ADD1_IfcObject_type); + IFC4X3_ADD1_IfcAdvancedBrep_type = new entity(strings[2435], false, 14, IFC4X3_ADD1_IfcManifoldSolidBrep_type); + IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type = new entity(strings[2436], false, 15, IFC4X3_ADD1_IfcAdvancedBrep_type); + IFC4X3_ADD1_IfcAnnotation_type = new entity(strings[2437], false, 46, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcBSplineSurface_type = new entity(strings[2438], true, 110, IFC4X3_ADD1_IfcBoundedSurface_type); + IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type = new entity(strings[2439], false, 112, IFC4X3_ADD1_IfcBSplineSurface_type); + IFC4X3_ADD1_IfcBlock_type = new entity(strings[2440], false, 82, IFC4X3_ADD1_IfcCsgPrimitive3D_type); + IFC4X3_ADD1_IfcBooleanClippingResult_type = new entity(strings[2441], false, 87, IFC4X3_ADD1_IfcBooleanResult_type); + IFC4X3_ADD1_IfcBoundedCurve_type = new entity(strings[2442], true, 98, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcBuildingStorey_type = new entity(strings[2443], false, 120, IFC4X3_ADD1_IfcSpatialStructureElement_type); + IFC4X3_ADD1_IfcBuiltElementType_type = new entity(strings[2444], false, 124, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcChimneyType_type = new entity(strings[2445], false, 161, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcCircleHollowProfileDef_type = new entity(strings[2446], false, 164, IFC4X3_ADD1_IfcCircleProfileDef_type); + IFC4X3_ADD1_IfcCivilElementType_type = new entity(strings[2447], false, 167, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcClothoid_type = new entity(strings[2448], false, 173, IFC4X3_ADD1_IfcSpiral_type); + IFC4X3_ADD1_IfcColumnType_type = new entity(strings[2449], false, 183, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcComplexPropertyTemplate_type = new entity(strings[2450], false, 190, IFC4X3_ADD1_IfcPropertyTemplate_type); + IFC4X3_ADD1_IfcCompositeCurve_type = new entity(strings[2451], false, 192, IFC4X3_ADD1_IfcBoundedCurve_type); + IFC4X3_ADD1_IfcCompositeCurveOnSurface_type = new entity(strings[2452], false, 193, IFC4X3_ADD1_IfcCompositeCurve_type); + IFC4X3_ADD1_IfcConic_type = new entity(strings[2453], true, 203, IFC4X3_ADD1_IfcCurve_type); + IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type = new entity(strings[2454], false, 215, IFC4X3_ADD1_IfcConstructionResourceType_type); + IFC4X3_ADD1_IfcConstructionMaterialResourceType_type = new entity(strings[2455], false, 218, IFC4X3_ADD1_IfcConstructionResourceType_type); + IFC4X3_ADD1_IfcConstructionProductResourceType_type = new entity(strings[2456], false, 221, IFC4X3_ADD1_IfcConstructionResourceType_type); + IFC4X3_ADD1_IfcConstructionResource_type = new entity(strings[2457], true, 223, IFC4X3_ADD1_IfcResource_type); + IFC4X3_ADD1_IfcControl_type = new entity(strings[2458], true, 228, IFC4X3_ADD1_IfcObject_type); + IFC4X3_ADD1_IfcCosineSpiral_type = new entity(strings[2459], false, 246, IFC4X3_ADD1_IfcSpiral_type); + IFC4X3_ADD1_IfcCostItem_type = new entity(strings[2460], false, 247, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcCostSchedule_type = new entity(strings[2461], false, 249, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcCourseType_type = new entity(strings[2462], false, 254, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcCoveringType_type = new entity(strings[2463], false, 257, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcCrewResource_type = new entity(strings[2464], false, 259, IFC4X3_ADD1_IfcConstructionResource_type); + IFC4X3_ADD1_IfcCurtainWallType_type = new entity(strings[2465], false, 268, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcCylindricalSurface_type = new entity(strings[2466], false, 285, IFC4X3_ADD1_IfcElementarySurface_type); + IFC4X3_ADD1_IfcDeepFoundationType_type = new entity(strings[2467], false, 295, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type = new entity(strings[2468], false, 308, IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type); + IFC4X3_ADD1_IfcDistributionElementType_type = new entity(strings[2469], false, 322, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcDistributionFlowElementType_type = new entity(strings[2470], true, 324, IFC4X3_ADD1_IfcDistributionElementType_type); + IFC4X3_ADD1_IfcDoorLiningProperties_type = new entity(strings[2471], false, 336, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); + IFC4X3_ADD1_IfcDoorPanelProperties_type = new entity(strings[2472], false, 339, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); + IFC4X3_ADD1_IfcDoorType_type = new entity(strings[2473], false, 340, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type = new entity(strings[2474], false, 344, IFC4X3_ADD1_IfcPreDefinedColour_type); + IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2475], false, 345, IFC4X3_ADD1_IfcPreDefinedCurveFont_type); + IFC4X3_ADD1_IfcElement_type = new entity(strings[2476], true, 392, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcElementAssembly_type = new entity(strings[2477], false, 394, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcElementAssemblyType_type = new entity(strings[2478], false, 395, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcElementComponent_type = new entity(strings[2479], true, 397, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcElementComponentType_type = new entity(strings[2480], true, 398, IFC4X3_ADD1_IfcElementType_type); + IFC4X3_ADD1_IfcEllipse_type = new entity(strings[2481], false, 402, IFC4X3_ADD1_IfcConic_type); + IFC4X3_ADD1_IfcEnergyConversionDeviceType_type = new entity(strings[2482], true, 405, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcEngineType_type = new entity(strings[2483], false, 408, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcEvaporativeCoolerType_type = new entity(strings[2484], false, 411, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcEvaporatorType_type = new entity(strings[2485], false, 414, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcEvent_type = new entity(strings[2486], false, 416, IFC4X3_ADD1_IfcProcess_type); + IFC4X3_ADD1_IfcExternalSpatialStructureElement_type = new entity(strings[2487], true, 430, IFC4X3_ADD1_IfcSpatialElement_type); + IFC4X3_ADD1_IfcFacetedBrep_type = new entity(strings[2488], false, 438, IFC4X3_ADD1_IfcManifoldSolidBrep_type); + IFC4X3_ADD1_IfcFacetedBrepWithVoids_type = new entity(strings[2489], false, 439, IFC4X3_ADD1_IfcFacetedBrep_type); + IFC4X3_ADD1_IfcFacility_type = new entity(strings[2490], false, 440, IFC4X3_ADD1_IfcSpatialStructureElement_type); + IFC4X3_ADD1_IfcFacilityPart_type = new entity(strings[2491], true, 441, IFC4X3_ADD1_IfcSpatialStructureElement_type); + IFC4X3_ADD1_IfcFacilityPartCommon_type = new entity(strings[2492], false, 442, IFC4X3_ADD1_IfcFacilityPart_type); + IFC4X3_ADD1_IfcFastener_type = new entity(strings[2493], false, 449, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcFastenerType_type = new entity(strings[2494], false, 450, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcFeatureElement_type = new entity(strings[2495], true, 452, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcFeatureElementAddition_type = new entity(strings[2496], true, 453, IFC4X3_ADD1_IfcFeatureElement_type); + IFC4X3_ADD1_IfcFeatureElementSubtraction_type = new entity(strings[2497], true, 454, IFC4X3_ADD1_IfcFeatureElement_type); + IFC4X3_ADD1_IfcFlowControllerType_type = new entity(strings[2498], true, 467, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFlowFittingType_type = new entity(strings[2499], true, 470, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFlowMeterType_type = new entity(strings[2500], false, 475, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcFlowMovingDeviceType_type = new entity(strings[2501], true, 478, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFlowSegmentType_type = new entity(strings[2502], true, 480, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFlowStorageDeviceType_type = new entity(strings[2503], true, 482, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFlowTerminalType_type = new entity(strings[2504], true, 484, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type = new entity(strings[2505], true, 486, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcFootingType_type = new entity(strings[2506], false, 491, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcFurnishingElement_type = new entity(strings[2507], false, 495, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcFurniture_type = new entity(strings[2508], false, 497, IFC4X3_ADD1_IfcFurnishingElement_type); + IFC4X3_ADD1_IfcGeographicElement_type = new entity(strings[2509], false, 501, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcGeotechnicalElement_type = new entity(strings[2510], true, 514, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcGeotechnicalStratum_type = new entity(strings[2511], false, 515, IFC4X3_ADD1_IfcGeotechnicalElement_type); + IFC4X3_ADD1_IfcGradientCurve_type = new entity(strings[2512], false, 519, IFC4X3_ADD1_IfcCompositeCurve_type); + IFC4X3_ADD1_IfcGroup_type = new entity(strings[2513], false, 525, IFC4X3_ADD1_IfcObject_type); + IFC4X3_ADD1_IfcHeatExchangerType_type = new entity(strings[2514], false, 529, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcHumidifierType_type = new entity(strings[2515], false, 534, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcImpactProtectionDevice_type = new entity(strings[2516], false, 539, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcImpactProtectionDeviceType_type = new entity(strings[2517], false, 540, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcIndexedPolyCurve_type = new entity(strings[2518], false, 543, IFC4X3_ADD1_IfcBoundedCurve_type); + IFC4X3_ADD1_IfcInterceptorType_type = new entity(strings[2519], false, 553, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); + IFC4X3_ADD1_IfcIntersectionCurve_type = new entity(strings[2520], false, 557, IFC4X3_ADD1_IfcSurfaceCurve_type); + IFC4X3_ADD1_IfcInventory_type = new entity(strings[2521], false, 558, IFC4X3_ADD1_IfcGroup_type); + IFC4X3_ADD1_IfcJunctionBoxType_type = new entity(strings[2522], false, 566, IFC4X3_ADD1_IfcFlowFittingType_type); + IFC4X3_ADD1_IfcKerbType_type = new entity(strings[2523], false, 569, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcLaborResource_type = new entity(strings[2524], false, 574, IFC4X3_ADD1_IfcConstructionResource_type); + IFC4X3_ADD1_IfcLampType_type = new entity(strings[2525], false, 579, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcLightFixtureType_type = new entity(strings[2526], false, 593, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcLinearElement_type = new entity(strings[2527], false, 603, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcLiquidTerminalType_type = new entity(strings[2528], false, 612, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcMarineFacility_type = new entity(strings[2529], false, 629, IFC4X3_ADD1_IfcFacility_type); + IFC4X3_ADD1_IfcMarinePart_type = new entity(strings[2530], false, 631, IFC4X3_ADD1_IfcFacilityPart_type); + IFC4X3_ADD1_IfcMechanicalFastener_type = new entity(strings[2531], false, 659, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcMechanicalFastenerType_type = new entity(strings[2532], false, 660, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcMedicalDeviceType_type = new entity(strings[2533], false, 663, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcMemberType_type = new entity(strings[2534], false, 666, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type = new entity(strings[2535], false, 672, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcMooringDeviceType_type = new entity(strings[2536], false, 688, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcMotorConnectionType_type = new entity(strings[2537], false, 691, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcNavigationElementType_type = new entity(strings[2538], false, 695, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcOccupant_type = new entity(strings[2539], false, 706, IFC4X3_ADD1_IfcActor_type); + IFC4X3_ADD1_IfcOpeningElement_type = new entity(strings[2540], false, 713, IFC4X3_ADD1_IfcFeatureElementSubtraction_type); + IFC4X3_ADD1_IfcOutletType_type = new entity(strings[2541], false, 721, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcPavementType_type = new entity(strings[2542], false, 728, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcPerformanceHistory_type = new entity(strings[2543], false, 731, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcPermeableCoveringProperties_type = new entity(strings[2544], false, 734, IFC4X3_ADD1_IfcPreDefinedPropertySet_type); + IFC4X3_ADD1_IfcPermit_type = new entity(strings[2545], false, 735, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcPileType_type = new entity(strings[2546], false, 746, IFC4X3_ADD1_IfcDeepFoundationType_type); + IFC4X3_ADD1_IfcPipeFittingType_type = new entity(strings[2547], false, 749, IFC4X3_ADD1_IfcFlowFittingType_type); + IFC4X3_ADD1_IfcPipeSegmentType_type = new entity(strings[2548], false, 752, IFC4X3_ADD1_IfcFlowSegmentType_type); + IFC4X3_ADD1_IfcPlateType_type = new entity(strings[2549], false, 762, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcPolygonalFaceSet_type = new entity(strings[2550], false, 770, IFC4X3_ADD1_IfcTessellatedFaceSet_type); + IFC4X3_ADD1_IfcPolyline_type = new entity(strings[2551], false, 771, IFC4X3_ADD1_IfcBoundedCurve_type); + IFC4X3_ADD1_IfcPort_type = new entity(strings[2552], true, 774, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcPositioningElement_type = new entity(strings[2553], true, 775, IFC4X3_ADD1_IfcProduct_type); + IFC4X3_ADD1_IfcProcedure_type = new entity(strings[2554], false, 795, IFC4X3_ADD1_IfcProcess_type); + IFC4X3_ADD1_IfcProjectOrder_type = new entity(strings[2555], false, 814, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcProjectionElement_type = new entity(strings[2556], false, 811, IFC4X3_ADD1_IfcFeatureElementAddition_type); + IFC4X3_ADD1_IfcProtectiveDeviceType_type = new entity(strings[2557], false, 839, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcPumpType_type = new entity(strings[2558], false, 842, IFC4X3_ADD1_IfcFlowMovingDeviceType_type); + IFC4X3_ADD1_IfcRailType_type = new entity(strings[2559], false, 857, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcRailingType_type = new entity(strings[2560], false, 855, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcRailway_type = new entity(strings[2561], false, 859, IFC4X3_ADD1_IfcFacility_type); + IFC4X3_ADD1_IfcRailwayPart_type = new entity(strings[2562], false, 860, IFC4X3_ADD1_IfcFacilityPart_type); + IFC4X3_ADD1_IfcRampFlightType_type = new entity(strings[2563], false, 865, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcRampType_type = new entity(strings[2564], false, 867, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2565], false, 871, IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type); + IFC4X3_ADD1_IfcReferent_type = new entity(strings[2566], false, 880, IFC4X3_ADD1_IfcPositioningElement_type); + IFC4X3_ADD1_IfcReinforcingElement_type = new entity(strings[2567], true, 893, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcReinforcingElementType_type = new entity(strings[2568], true, 894, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcReinforcingMesh_type = new entity(strings[2569], false, 895, IFC4X3_ADD1_IfcReinforcingElement_type); + IFC4X3_ADD1_IfcReinforcingMeshType_type = new entity(strings[2570], false, 896, IFC4X3_ADD1_IfcReinforcingElementType_type); + IFC4X3_ADD1_IfcRelAdheresToElement_type = new entity(strings[2571], false, 898, IFC4X3_ADD1_IfcRelDecomposes_type); + IFC4X3_ADD1_IfcRelAggregates_type = new entity(strings[2572], false, 899, IFC4X3_ADD1_IfcRelDecomposes_type); + IFC4X3_ADD1_IfcRoad_type = new entity(strings[2573], false, 966, IFC4X3_ADD1_IfcFacility_type); + IFC4X3_ADD1_IfcRoadPart_type = new entity(strings[2574], false, 967, IFC4X3_ADD1_IfcFacilityPart_type); + IFC4X3_ADD1_IfcRoofType_type = new entity(strings[2575], false, 972, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcSanitaryTerminalType_type = new entity(strings[2576], false, 981, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcSeamCurve_type = new entity(strings[2577], false, 984, IFC4X3_ADD1_IfcSurfaceCurve_type); + IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type = new entity(strings[2578], false, 985, IFC4X3_ADD1_IfcSpiral_type); + IFC4X3_ADD1_IfcSegmentedReferenceCurve_type = new entity(strings[2579], false, 996, IFC4X3_ADD1_IfcCompositeCurve_type); + IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type = new entity(strings[2580], false, 1002, IFC4X3_ADD1_IfcSpiral_type); + IFC4X3_ADD1_IfcShadingDeviceType_type = new entity(strings[2581], false, 1004, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcSign_type = new entity(strings[2582], false, 1012, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcSignType_type = new entity(strings[2583], false, 1016, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcSignalType_type = new entity(strings[2584], false, 1014, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcSineSpiral_type = new entity(strings[2585], false, 1022, IFC4X3_ADD1_IfcSpiral_type); + IFC4X3_ADD1_IfcSite_type = new entity(strings[2586], false, 1024, IFC4X3_ADD1_IfcSpatialStructureElement_type); + IFC4X3_ADD1_IfcSlabType_type = new entity(strings[2587], false, 1029, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcSolarDeviceType_type = new entity(strings[2588], false, 1033, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcSpace_type = new entity(strings[2589], false, 1042, IFC4X3_ADD1_IfcSpatialStructureElement_type); + IFC4X3_ADD1_IfcSpaceHeaterType_type = new entity(strings[2590], false, 1045, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcSpaceType_type = new entity(strings[2591], false, 1047, IFC4X3_ADD1_IfcSpatialStructureElementType_type); + IFC4X3_ADD1_IfcStackTerminalType_type = new entity(strings[2592], false, 1065, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcStairFlightType_type = new entity(strings[2593], false, 1069, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcStairType_type = new entity(strings[2594], false, 1071, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcStructuralAction_type = new entity(strings[2595], true, 1075, IFC4X3_ADD1_IfcStructuralActivity_type); + IFC4X3_ADD1_IfcStructuralConnection_type = new entity(strings[2596], true, 1079, IFC4X3_ADD1_IfcStructuralItem_type); + IFC4X3_ADD1_IfcStructuralCurveAction_type = new entity(strings[2597], false, 1081, IFC4X3_ADD1_IfcStructuralAction_type); + IFC4X3_ADD1_IfcStructuralCurveConnection_type = new entity(strings[2598], false, 1083, IFC4X3_ADD1_IfcStructuralConnection_type); + IFC4X3_ADD1_IfcStructuralCurveMember_type = new entity(strings[2599], false, 1084, IFC4X3_ADD1_IfcStructuralMember_type); + IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type = new entity(strings[2600], false, 1086, IFC4X3_ADD1_IfcStructuralCurveMember_type); + IFC4X3_ADD1_IfcStructuralCurveReaction_type = new entity(strings[2601], false, 1087, IFC4X3_ADD1_IfcStructuralReaction_type); + IFC4X3_ADD1_IfcStructuralLinearAction_type = new entity(strings[2602], false, 1089, IFC4X3_ADD1_IfcStructuralCurveAction_type); + IFC4X3_ADD1_IfcStructuralLoadGroup_type = new entity(strings[2603], false, 1093, IFC4X3_ADD1_IfcGroup_type); + IFC4X3_ADD1_IfcStructuralPointAction_type = new entity(strings[2604], false, 1105, IFC4X3_ADD1_IfcStructuralAction_type); + IFC4X3_ADD1_IfcStructuralPointConnection_type = new entity(strings[2605], false, 1106, IFC4X3_ADD1_IfcStructuralConnection_type); + IFC4X3_ADD1_IfcStructuralPointReaction_type = new entity(strings[2606], false, 1107, IFC4X3_ADD1_IfcStructuralReaction_type); + IFC4X3_ADD1_IfcStructuralResultGroup_type = new entity(strings[2607], false, 1109, IFC4X3_ADD1_IfcGroup_type); + IFC4X3_ADD1_IfcStructuralSurfaceAction_type = new entity(strings[2608], false, 1110, IFC4X3_ADD1_IfcStructuralAction_type); + IFC4X3_ADD1_IfcStructuralSurfaceConnection_type = new entity(strings[2609], false, 1112, IFC4X3_ADD1_IfcStructuralConnection_type); + IFC4X3_ADD1_IfcSubContractResource_type = new entity(strings[2610], false, 1120, IFC4X3_ADD1_IfcConstructionResource_type); + IFC4X3_ADD1_IfcSurfaceFeature_type = new entity(strings[2611], false, 1127, IFC4X3_ADD1_IfcFeatureElement_type); + IFC4X3_ADD1_IfcSwitchingDeviceType_type = new entity(strings[2612], false, 1147, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcSystem_type = new entity(strings[2613], false, 1149, IFC4X3_ADD1_IfcGroup_type); + IFC4X3_ADD1_IfcSystemFurnitureElement_type = new entity(strings[2614], false, 1150, IFC4X3_ADD1_IfcFurnishingElement_type); + IFC4X3_ADD1_IfcTankType_type = new entity(strings[2615], false, 1157, IFC4X3_ADD1_IfcFlowStorageDeviceType_type); + IFC4X3_ADD1_IfcTendon_type = new entity(strings[2616], false, 1168, IFC4X3_ADD1_IfcReinforcingElement_type); + IFC4X3_ADD1_IfcTendonAnchor_type = new entity(strings[2617], false, 1169, IFC4X3_ADD1_IfcReinforcingElement_type); + IFC4X3_ADD1_IfcTendonAnchorType_type = new entity(strings[2618], false, 1170, IFC4X3_ADD1_IfcReinforcingElementType_type); + IFC4X3_ADD1_IfcTendonConduit_type = new entity(strings[2619], false, 1172, IFC4X3_ADD1_IfcReinforcingElement_type); + IFC4X3_ADD1_IfcTendonConduitType_type = new entity(strings[2620], false, 1173, IFC4X3_ADD1_IfcReinforcingElementType_type); + IFC4X3_ADD1_IfcTendonType_type = new entity(strings[2621], false, 1175, IFC4X3_ADD1_IfcReinforcingElementType_type); + IFC4X3_ADD1_IfcTrackElementType_type = new entity(strings[2622], false, 1219, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcTransformerType_type = new entity(strings[2623], false, 1222, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcTransportElementType_type = new entity(strings[2624], false, 1229, IFC4X3_ADD1_IfcTransportationDeviceType_type); + IFC4X3_ADD1_IfcTransportationDevice_type = new entity(strings[2625], true, 1226, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcTrimmedCurve_type = new entity(strings[2626], false, 1234, IFC4X3_ADD1_IfcBoundedCurve_type); + IFC4X3_ADD1_IfcTubeBundleType_type = new entity(strings[2627], false, 1239, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcUnitaryEquipmentType_type = new entity(strings[2628], false, 1250, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcValveType_type = new entity(strings[2629], false, 1258, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcVehicle_type = new entity(strings[2630], false, 1263, IFC4X3_ADD1_IfcTransportationDevice_type); + IFC4X3_ADD1_IfcVibrationDamper_type = new entity(strings[2631], false, 1269, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcVibrationDamperType_type = new entity(strings[2632], false, 1270, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcVibrationIsolator_type = new entity(strings[2633], false, 1272, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcVibrationIsolatorType_type = new entity(strings[2634], false, 1273, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcVirtualElement_type = new entity(strings[2635], false, 1275, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcVoidingFeature_type = new entity(strings[2636], false, 1278, IFC4X3_ADD1_IfcFeatureElementSubtraction_type); + IFC4X3_ADD1_IfcWallType_type = new entity(strings[2637], false, 1284, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcWasteTerminalType_type = new entity(strings[2638], false, 1290, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcWindowType_type = new entity(strings[2639], false, 1299, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcWorkCalendar_type = new entity(strings[2640], false, 1302, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcWorkControl_type = new entity(strings[2641], true, 1304, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcWorkPlan_type = new entity(strings[2642], false, 1305, IFC4X3_ADD1_IfcWorkControl_type); + IFC4X3_ADD1_IfcWorkSchedule_type = new entity(strings[2643], false, 1307, IFC4X3_ADD1_IfcWorkControl_type); + IFC4X3_ADD1_IfcZone_type = new entity(strings[2644], false, 1310, IFC4X3_ADD1_IfcSystem_type); + IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2645], 274, { + IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type, + IFC4X3_ADD1_IfcCurveStyleFontSelect_type + }); + IFC4X3_ADD1_IfcCurveOnSurface_type = new select_type(strings[2646], 277, { + IFC4X3_ADD1_IfcCompositeCurveOnSurface_type, + IFC4X3_ADD1_IfcPcurve_type, + IFC4X3_ADD1_IfcSurfaceCurve_type + }); + IFC4X3_ADD1_IfcCurveOrEdgeCurve_type = new select_type(strings[2647], 278, { + IFC4X3_ADD1_IfcBoundedCurve_type, + IFC4X3_ADD1_IfcEdgeCurve_type + }); + IFC4X3_ADD1_IfcInterferenceSelect_type = new select_type(strings[2648], 555, { + IFC4X3_ADD1_IfcElement_type, + IFC4X3_ADD1_IfcSpatialElement_type + }); + IFC4X3_ADD1_IfcSpatialReferenceSelect_type = new select_type(strings[2649], 1051, { + IFC4X3_ADD1_IfcGroup_type, + IFC4X3_ADD1_IfcProduct_type + }); + IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2650], 1077, { + IFC4X3_ADD1_IfcElement_type, + IFC4X3_ADD1_IfcStructuralItem_type + }); + IFC4X3_ADD1_IfcActionRequest_type = new entity(strings[2651], false, 2, IFC4X3_ADD1_IfcControl_type); + IFC4X3_ADD1_IfcAirTerminalBoxType_type = new entity(strings[2652], false, 19, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcAirTerminalType_type = new entity(strings[2653], false, 21, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type = new entity(strings[2654], false, 24, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcAlignmentCant_type = new entity(strings[2655], false, 30, IFC4X3_ADD1_IfcLinearElement_type); + IFC4X3_ADD1_IfcAlignmentHorizontal_type = new entity(strings[2656], false, 33, IFC4X3_ADD1_IfcLinearElement_type); + IFC4X3_ADD1_IfcAlignmentSegment_type = new entity(strings[2657], false, 37, IFC4X3_ADD1_IfcLinearElement_type); + IFC4X3_ADD1_IfcAlignmentVertical_type = new entity(strings[2658], false, 39, IFC4X3_ADD1_IfcLinearElement_type); + IFC4X3_ADD1_IfcAsset_type = new entity(strings[2659], false, 62, IFC4X3_ADD1_IfcGroup_type); + IFC4X3_ADD1_IfcAudioVisualApplianceType_type = new entity(strings[2660], false, 65, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcBSplineCurve_type = new entity(strings[2661], true, 107, IFC4X3_ADD1_IfcBoundedCurve_type); + IFC4X3_ADD1_IfcBSplineCurveWithKnots_type = new entity(strings[2662], false, 109, IFC4X3_ADD1_IfcBSplineCurve_type); + IFC4X3_ADD1_IfcBeamType_type = new entity(strings[2663], false, 73, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcBearingType_type = new entity(strings[2664], false, 76, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcBoilerType_type = new entity(strings[2665], false, 84, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcBoundaryCurve_type = new entity(strings[2666], false, 93, IFC4X3_ADD1_IfcCompositeCurveOnSurface_type); + IFC4X3_ADD1_IfcBridge_type = new entity(strings[2667], false, 103, IFC4X3_ADD1_IfcFacility_type); + IFC4X3_ADD1_IfcBridgePart_type = new entity(strings[2668], false, 104, IFC4X3_ADD1_IfcFacilityPart_type); + IFC4X3_ADD1_IfcBuilding_type = new entity(strings[2669], false, 113, IFC4X3_ADD1_IfcFacility_type); + IFC4X3_ADD1_IfcBuildingElementPart_type = new entity(strings[2670], false, 114, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcBuildingElementPartType_type = new entity(strings[2671], false, 115, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcBuildingElementProxyType_type = new entity(strings[2672], false, 118, IFC4X3_ADD1_IfcBuiltElementType_type); + IFC4X3_ADD1_IfcBuildingSystem_type = new entity(strings[2673], false, 121, IFC4X3_ADD1_IfcSystem_type); + IFC4X3_ADD1_IfcBuiltElement_type = new entity(strings[2674], false, 123, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcBuiltSystem_type = new entity(strings[2675], false, 125, IFC4X3_ADD1_IfcSystem_type); + IFC4X3_ADD1_IfcBurnerType_type = new entity(strings[2676], false, 128, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcCableCarrierFittingType_type = new entity(strings[2677], false, 131, IFC4X3_ADD1_IfcFlowFittingType_type); + IFC4X3_ADD1_IfcCableCarrierSegmentType_type = new entity(strings[2678], false, 134, IFC4X3_ADD1_IfcFlowSegmentType_type); + IFC4X3_ADD1_IfcCableFittingType_type = new entity(strings[2679], false, 137, IFC4X3_ADD1_IfcFlowFittingType_type); + IFC4X3_ADD1_IfcCableSegmentType_type = new entity(strings[2680], false, 140, IFC4X3_ADD1_IfcFlowSegmentType_type); + IFC4X3_ADD1_IfcCaissonFoundationType_type = new entity(strings[2681], false, 143, IFC4X3_ADD1_IfcDeepFoundationType_type); + IFC4X3_ADD1_IfcChillerType_type = new entity(strings[2682], false, 158, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcChimney_type = new entity(strings[2683], false, 160, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcCircle_type = new entity(strings[2684], false, 163, IFC4X3_ADD1_IfcConic_type); + IFC4X3_ADD1_IfcCivilElement_type = new entity(strings[2685], false, 166, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcCoilType_type = new entity(strings[2686], false, 175, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcColumn_type = new entity(strings[2687], false, 182, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcCommunicationsApplianceType_type = new entity(strings[2688], false, 186, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcCompressorType_type = new entity(strings[2689], false, 198, IFC4X3_ADD1_IfcFlowMovingDeviceType_type); + IFC4X3_ADD1_IfcCondenserType_type = new entity(strings[2690], false, 201, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcConstructionEquipmentResource_type = new entity(strings[2691], false, 214, IFC4X3_ADD1_IfcConstructionResource_type); + IFC4X3_ADD1_IfcConstructionMaterialResource_type = new entity(strings[2692], false, 217, IFC4X3_ADD1_IfcConstructionResource_type); + IFC4X3_ADD1_IfcConstructionProductResource_type = new entity(strings[2693], false, 220, IFC4X3_ADD1_IfcConstructionResource_type); + IFC4X3_ADD1_IfcConveyorSegmentType_type = new entity(strings[2694], false, 235, IFC4X3_ADD1_IfcFlowSegmentType_type); + IFC4X3_ADD1_IfcCooledBeamType_type = new entity(strings[2695], false, 238, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcCoolingTowerType_type = new entity(strings[2696], false, 241, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcCourse_type = new entity(strings[2697], false, 253, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcCovering_type = new entity(strings[2698], false, 256, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcCurtainWall_type = new entity(strings[2699], false, 267, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcDamperType_type = new entity(strings[2700], false, 287, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcDeepFoundation_type = new entity(strings[2701], false, 294, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcDiscreteAccessory_type = new entity(strings[2702], false, 309, IFC4X3_ADD1_IfcElementComponent_type); + IFC4X3_ADD1_IfcDiscreteAccessoryType_type = new entity(strings[2703], false, 310, IFC4X3_ADD1_IfcElementComponentType_type); + IFC4X3_ADD1_IfcDistributionBoardType_type = new entity(strings[2704], false, 313, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcDistributionChamberElementType_type = new entity(strings[2705], false, 316, IFC4X3_ADD1_IfcDistributionFlowElementType_type); + IFC4X3_ADD1_IfcDistributionControlElementType_type = new entity(strings[2706], true, 320, IFC4X3_ADD1_IfcDistributionElementType_type); + IFC4X3_ADD1_IfcDistributionElement_type = new entity(strings[2707], false, 321, IFC4X3_ADD1_IfcElement_type); + IFC4X3_ADD1_IfcDistributionFlowElement_type = new entity(strings[2708], false, 323, IFC4X3_ADD1_IfcDistributionElement_type); + IFC4X3_ADD1_IfcDistributionPort_type = new entity(strings[2709], false, 325, IFC4X3_ADD1_IfcPort_type); + IFC4X3_ADD1_IfcDistributionSystem_type = new entity(strings[2710], false, 327, IFC4X3_ADD1_IfcSystem_type); + IFC4X3_ADD1_IfcDoor_type = new entity(strings[2711], false, 335, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcDuctFittingType_type = new entity(strings[2712], false, 347, IFC4X3_ADD1_IfcFlowFittingType_type); + IFC4X3_ADD1_IfcDuctSegmentType_type = new entity(strings[2713], false, 350, IFC4X3_ADD1_IfcFlowSegmentType_type); + IFC4X3_ADD1_IfcDuctSilencerType_type = new entity(strings[2714], false, 353, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); + IFC4X3_ADD1_IfcEarthworksCut_type = new entity(strings[2715], false, 357, IFC4X3_ADD1_IfcFeatureElementSubtraction_type); + IFC4X3_ADD1_IfcEarthworksElement_type = new entity(strings[2716], false, 359, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcEarthworksFill_type = new entity(strings[2717], false, 360, IFC4X3_ADD1_IfcEarthworksElement_type); + IFC4X3_ADD1_IfcElectricApplianceType_type = new entity(strings[2718], false, 366, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcElectricDistributionBoardType_type = new entity(strings[2719], false, 373, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type = new entity(strings[2720], false, 376, IFC4X3_ADD1_IfcFlowStorageDeviceType_type); + IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type = new entity(strings[2721], false, 379, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); + IFC4X3_ADD1_IfcElectricGeneratorType_type = new entity(strings[2722], false, 382, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcElectricMotorType_type = new entity(strings[2723], false, 385, IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); + IFC4X3_ADD1_IfcElectricTimeControlType_type = new entity(strings[2724], false, 389, IFC4X3_ADD1_IfcFlowControllerType_type); + IFC4X3_ADD1_IfcEnergyConversionDevice_type = new entity(strings[2725], false, 404, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcEngine_type = new entity(strings[2726], false, 407, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcEvaporativeCooler_type = new entity(strings[2727], false, 410, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcEvaporator_type = new entity(strings[2728], false, 413, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcExternalSpatialElement_type = new entity(strings[2729], false, 428, IFC4X3_ADD1_IfcExternalSpatialStructureElement_type); + IFC4X3_ADD1_IfcFanType_type = new entity(strings[2730], false, 447, IFC4X3_ADD1_IfcFlowMovingDeviceType_type); + IFC4X3_ADD1_IfcFilterType_type = new entity(strings[2731], false, 460, IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); + IFC4X3_ADD1_IfcFireSuppressionTerminalType_type = new entity(strings[2732], false, 463, IFC4X3_ADD1_IfcFlowTerminalType_type); + IFC4X3_ADD1_IfcFlowController_type = new entity(strings[2733], false, 466, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFlowFitting_type = new entity(strings[2734], false, 469, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFlowInstrumentType_type = new entity(strings[2735], false, 472, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcFlowMeter_type = new entity(strings[2736], false, 474, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcFlowMovingDevice_type = new entity(strings[2737], false, 477, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFlowSegment_type = new entity(strings[2738], false, 479, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFlowStorageDevice_type = new entity(strings[2739], false, 481, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFlowTerminal_type = new entity(strings[2740], false, 483, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFlowTreatmentDevice_type = new entity(strings[2741], false, 485, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcFooting_type = new entity(strings[2742], false, 490, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcGeotechnicalAssembly_type = new entity(strings[2743], true, 513, IFC4X3_ADD1_IfcGeotechnicalElement_type); + IFC4X3_ADD1_IfcGrid_type = new entity(strings[2744], false, 520, IFC4X3_ADD1_IfcPositioningElement_type); + IFC4X3_ADD1_IfcHeatExchanger_type = new entity(strings[2745], false, 528, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcHumidifier_type = new entity(strings[2746], false, 533, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcInterceptor_type = new entity(strings[2747], false, 552, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); + IFC4X3_ADD1_IfcJunctionBox_type = new entity(strings[2748], false, 565, IFC4X3_ADD1_IfcFlowFitting_type); + IFC4X3_ADD1_IfcKerb_type = new entity(strings[2749], false, 568, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcLamp_type = new entity(strings[2750], false, 578, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcLightFixture_type = new entity(strings[2751], false, 592, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcLinearPositioningElement_type = new entity(strings[2752], false, 607, IFC4X3_ADD1_IfcPositioningElement_type); + IFC4X3_ADD1_IfcLiquidTerminal_type = new entity(strings[2753], false, 611, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcMedicalDevice_type = new entity(strings[2754], false, 662, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcMember_type = new entity(strings[2755], false, 665, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type = new entity(strings[2756], false, 671, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcMooringDevice_type = new entity(strings[2757], false, 687, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcMotorConnection_type = new entity(strings[2758], false, 690, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcNavigationElement_type = new entity(strings[2759], false, 694, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcOuterBoundaryCurve_type = new entity(strings[2760], false, 719, IFC4X3_ADD1_IfcBoundaryCurve_type); + IFC4X3_ADD1_IfcOutlet_type = new entity(strings[2761], false, 720, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcPavement_type = new entity(strings[2762], false, 727, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcPile_type = new entity(strings[2763], false, 744, IFC4X3_ADD1_IfcDeepFoundation_type); + IFC4X3_ADD1_IfcPipeFitting_type = new entity(strings[2764], false, 748, IFC4X3_ADD1_IfcFlowFitting_type); + IFC4X3_ADD1_IfcPipeSegment_type = new entity(strings[2765], false, 751, IFC4X3_ADD1_IfcFlowSegment_type); + IFC4X3_ADD1_IfcPlate_type = new entity(strings[2766], false, 761, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcProtectiveDevice_type = new entity(strings[2767], false, 835, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2768], false, 837, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcPump_type = new entity(strings[2769], false, 841, IFC4X3_ADD1_IfcFlowMovingDevice_type); + IFC4X3_ADD1_IfcRail_type = new entity(strings[2770], false, 853, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcRailing_type = new entity(strings[2771], false, 854, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcRamp_type = new entity(strings[2772], false, 863, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcRampFlight_type = new entity(strings[2773], false, 864, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2774], false, 870, IFC4X3_ADD1_IfcBSplineCurveWithKnots_type); + IFC4X3_ADD1_IfcReinforcedSoil_type = new entity(strings[2775], false, 884, IFC4X3_ADD1_IfcEarthworksElement_type); + IFC4X3_ADD1_IfcReinforcingBar_type = new entity(strings[2776], false, 888, IFC4X3_ADD1_IfcReinforcingElement_type); + IFC4X3_ADD1_IfcReinforcingBarType_type = new entity(strings[2777], false, 891, IFC4X3_ADD1_IfcReinforcingElementType_type); + IFC4X3_ADD1_IfcRoof_type = new entity(strings[2778], false, 971, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcSanitaryTerminal_type = new entity(strings[2779], false, 980, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcSensorType_type = new entity(strings[2780], false, 999, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcShadingDevice_type = new entity(strings[2781], false, 1003, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcSignal_type = new entity(strings[2782], false, 1013, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcSlab_type = new entity(strings[2783], false, 1028, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcSolarDevice_type = new entity(strings[2784], false, 1032, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcSpaceHeater_type = new entity(strings[2785], false, 1044, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcStackTerminal_type = new entity(strings[2786], false, 1064, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcStair_type = new entity(strings[2787], false, 1067, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcStairFlight_type = new entity(strings[2788], false, 1068, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcStructuralAnalysisModel_type = new entity(strings[2789], false, 1078, IFC4X3_ADD1_IfcSystem_type); + IFC4X3_ADD1_IfcStructuralLoadCase_type = new entity(strings[2790], false, 1091, IFC4X3_ADD1_IfcStructuralLoadGroup_type); + IFC4X3_ADD1_IfcStructuralPlanarAction_type = new entity(strings[2791], false, 1104, IFC4X3_ADD1_IfcStructuralSurfaceAction_type); + IFC4X3_ADD1_IfcSwitchingDevice_type = new entity(strings[2792], false, 1146, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcTank_type = new entity(strings[2793], false, 1156, IFC4X3_ADD1_IfcFlowStorageDevice_type); + IFC4X3_ADD1_IfcTrackElement_type = new entity(strings[2794], false, 1218, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcTransformer_type = new entity(strings[2795], false, 1221, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcTransportElement_type = new entity(strings[2796], false, 1228, IFC4X3_ADD1_IfcTransportationDevice_type); + IFC4X3_ADD1_IfcTubeBundle_type = new entity(strings[2797], false, 1238, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcUnitaryControlElementType_type = new entity(strings[2798], false, 1247, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcUnitaryEquipment_type = new entity(strings[2799], false, 1249, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcValve_type = new entity(strings[2800], false, 1257, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcWall_type = new entity(strings[2801], false, 1282, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcWallStandardCase_type = new entity(strings[2802], false, 1283, IFC4X3_ADD1_IfcWall_type); + IFC4X3_ADD1_IfcWasteTerminal_type = new entity(strings[2803], false, 1289, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcWindow_type = new entity(strings[2804], false, 1294, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcSpaceBoundarySelect_type = new select_type(strings[2805], 1043, { + IFC4X3_ADD1_IfcExternalSpatialElement_type, + IFC4X3_ADD1_IfcSpace_type + }); + IFC4X3_ADD1_IfcActuatorType_type = new entity(strings[2806], false, 10, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcAirTerminal_type = new entity(strings[2807], false, 17, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcAirTerminalBox_type = new entity(strings[2808], false, 18, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcAirToAirHeatRecovery_type = new entity(strings[2809], false, 23, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcAlarmType_type = new entity(strings[2810], false, 27, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcAlignment_type = new entity(strings[2811], false, 29, IFC4X3_ADD1_IfcLinearPositioningElement_type); + IFC4X3_ADD1_IfcAudioVisualAppliance_type = new entity(strings[2812], false, 64, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcBeam_type = new entity(strings[2813], false, 72, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcBearing_type = new entity(strings[2814], false, 75, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcBoiler_type = new entity(strings[2815], false, 83, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcBorehole_type = new entity(strings[2816], false, 91, IFC4X3_ADD1_IfcGeotechnicalAssembly_type); + IFC4X3_ADD1_IfcBuildingElementProxy_type = new entity(strings[2817], false, 117, IFC4X3_ADD1_IfcBuiltElement_type); + IFC4X3_ADD1_IfcBurner_type = new entity(strings[2818], false, 127, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcCableCarrierFitting_type = new entity(strings[2819], false, 130, IFC4X3_ADD1_IfcFlowFitting_type); + IFC4X3_ADD1_IfcCableCarrierSegment_type = new entity(strings[2820], false, 133, IFC4X3_ADD1_IfcFlowSegment_type); + IFC4X3_ADD1_IfcCableFitting_type = new entity(strings[2821], false, 136, IFC4X3_ADD1_IfcFlowFitting_type); + IFC4X3_ADD1_IfcCableSegment_type = new entity(strings[2822], false, 139, IFC4X3_ADD1_IfcFlowSegment_type); + IFC4X3_ADD1_IfcCaissonFoundation_type = new entity(strings[2823], false, 142, IFC4X3_ADD1_IfcDeepFoundation_type); + IFC4X3_ADD1_IfcChiller_type = new entity(strings[2824], false, 157, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcCoil_type = new entity(strings[2825], false, 174, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcCommunicationsAppliance_type = new entity(strings[2826], false, 185, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcCompressor_type = new entity(strings[2827], false, 197, IFC4X3_ADD1_IfcFlowMovingDevice_type); + IFC4X3_ADD1_IfcCondenser_type = new entity(strings[2828], false, 200, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcControllerType_type = new entity(strings[2829], false, 230, IFC4X3_ADD1_IfcDistributionControlElementType_type); + IFC4X3_ADD1_IfcConveyorSegment_type = new entity(strings[2830], false, 234, IFC4X3_ADD1_IfcFlowSegment_type); + IFC4X3_ADD1_IfcCooledBeam_type = new entity(strings[2831], false, 237, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcCoolingTower_type = new entity(strings[2832], false, 240, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcDamper_type = new entity(strings[2833], false, 286, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcDistributionBoard_type = new entity(strings[2834], false, 312, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcDistributionChamberElement_type = new entity(strings[2835], false, 315, IFC4X3_ADD1_IfcDistributionFlowElement_type); + IFC4X3_ADD1_IfcDistributionCircuit_type = new entity(strings[2836], false, 318, IFC4X3_ADD1_IfcDistributionSystem_type); + IFC4X3_ADD1_IfcDistributionControlElement_type = new entity(strings[2837], false, 319, IFC4X3_ADD1_IfcDistributionElement_type); + IFC4X3_ADD1_IfcDuctFitting_type = new entity(strings[2838], false, 346, IFC4X3_ADD1_IfcFlowFitting_type); + IFC4X3_ADD1_IfcDuctSegment_type = new entity(strings[2839], false, 349, IFC4X3_ADD1_IfcFlowSegment_type); + IFC4X3_ADD1_IfcDuctSilencer_type = new entity(strings[2840], false, 352, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); + IFC4X3_ADD1_IfcElectricAppliance_type = new entity(strings[2841], false, 365, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcElectricDistributionBoard_type = new entity(strings[2842], false, 372, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcElectricFlowStorageDevice_type = new entity(strings[2843], false, 375, IFC4X3_ADD1_IfcFlowStorageDevice_type); + IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type = new entity(strings[2844], false, 378, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); + IFC4X3_ADD1_IfcElectricGenerator_type = new entity(strings[2845], false, 381, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcElectricMotor_type = new entity(strings[2846], false, 384, IFC4X3_ADD1_IfcEnergyConversionDevice_type); + IFC4X3_ADD1_IfcElectricTimeControl_type = new entity(strings[2847], false, 388, IFC4X3_ADD1_IfcFlowController_type); + IFC4X3_ADD1_IfcFan_type = new entity(strings[2848], false, 446, IFC4X3_ADD1_IfcFlowMovingDevice_type); + IFC4X3_ADD1_IfcFilter_type = new entity(strings[2849], false, 459, IFC4X3_ADD1_IfcFlowTreatmentDevice_type); + IFC4X3_ADD1_IfcFireSuppressionTerminal_type = new entity(strings[2850], false, 462, IFC4X3_ADD1_IfcFlowTerminal_type); + IFC4X3_ADD1_IfcFlowInstrument_type = new entity(strings[2851], false, 471, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcGeomodel_type = new entity(strings[2852], false, 511, IFC4X3_ADD1_IfcGeotechnicalAssembly_type); + IFC4X3_ADD1_IfcGeoslice_type = new entity(strings[2853], false, 512, IFC4X3_ADD1_IfcGeotechnicalAssembly_type); + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2854], false, 836, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcSensor_type = new entity(strings[2855], false, 998, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcUnitaryControlElement_type = new entity(strings[2856], false, 1246, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcActuator_type = new entity(strings[2857], false, 9, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcAlarm_type = new entity(strings[2858], false, 26, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcController_type = new entity(strings[2859], false, 229, IFC4X3_ADD1_IfcDistributionControlElement_type); + IFC4X3_ADD1_IfcActionRequest_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcActor_type->set_attributes({ + new attribute(strings[2863], new named_type(IFC4X3_ADD1_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcActorRole_type->set_attributes({ + new attribute(strings[2864], new named_type(IFC4X3_ADD1_IfcRoleEnum_type), false), + new attribute(strings[2865], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcActuator_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcActuatorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAddress_type->set_attributes({ + new attribute(strings[2867], new named_type(IFC4X3_ADD1_IfcAddressTypeEnum_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[2868], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2869], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlarm_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlarmType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentCant_type->set_attributes({ + new attribute(strings[2870], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentCantSegment_type->set_attributes({ + new attribute(strings[2871], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2873], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2874], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[2875], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2876], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentHorizontal_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type->set_attributes({ + new attribute(strings[2877], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false), + new attribute(strings[2878], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2879], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2880], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2881], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2882], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentParameterSegment_type->set_attributes({ + new attribute(strings[2883], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2884], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcAlignmentSegment_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_ADD1_IfcAlignmentParameterSegment_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentVertical_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAlignmentVerticalSegment_type->set_attributes({ + new attribute(strings[2871], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2886], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2887], new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), false), + new attribute(strings[2888], new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), false), + new attribute(strings[2889], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAnnotation_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAnnotationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2890], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[2891], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcApplication_type->set_attributes({ + new attribute(strings[2892], new named_type(IFC4X3_ADD1_IfcOrganization_type), false), + new attribute(strings[2893], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2894], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2895], new named_type(IFC4X3_ADD1_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[2897], new named_type(IFC4X3_ADD1_IfcAppliedValueSelect_type), true), + new attribute(strings[2898], new named_type(IFC4X3_ADD1_IfcMeasureWithUnit_type), true), + new attribute(strings[2899], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[2900], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[2901], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2902], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2903], new named_type(IFC4X3_ADD1_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2904], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcApproval_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[2906], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2907], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2908], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[2909], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[2910], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2911], new named_type(IFC4X3_ADD1_IfcApproval_type), false), + new attribute(strings[2912], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2913], new named_type(IFC4X3_ADD1_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2914], new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2915], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcAsset_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2917], new named_type(IFC4X3_ADD1_IfcCostValue_type), true), + new attribute(strings[2918], new named_type(IFC4X3_ADD1_IfcCostValue_type), true), + new attribute(strings[2919], new named_type(IFC4X3_ADD1_IfcCostValue_type), true), + new attribute(strings[2920], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[2921], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[2922], new named_type(IFC4X3_ADD1_IfcPerson_type), true), + new attribute(strings[2923], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[2924], new named_type(IFC4X3_ADD1_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2926], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2927], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2928], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2929], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2930], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2931], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2932], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2933], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2934], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2935], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2936], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2937], new named_type(IFC4X3_ADD1_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2938], new named_type(IFC4X3_ADD1_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2937], new named_type(IFC4X3_ADD1_IfcDirection_type), true), + new attribute(strings[2938], new named_type(IFC4X3_ADD1_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcAxis2PlacementLinear_type->set_attributes({ + new attribute(strings[2937], new named_type(IFC4X3_ADD1_IfcDirection_type), true), + new attribute(strings[2938], new named_type(IFC4X3_ADD1_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2939], new named_type(IFC4X3_ADD1_IfcInteger_type), false), + new attribute(strings[2940], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type)), false), + new attribute(strings[2941], new named_type(IFC4X3_ADD1_IfcBSplineCurveForm_type), false), + new attribute(strings[2942], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[2943], new named_type(IFC4X3_ADD1_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2944], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false), + new attribute(strings[2945], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false), + new attribute(strings[2946], new named_type(IFC4X3_ADD1_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2947], new named_type(IFC4X3_ADD1_IfcInteger_type), false), + new attribute(strings[2948], new named_type(IFC4X3_ADD1_IfcInteger_type), false), + new attribute(strings[2940], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type))), false), + new attribute(strings[2949], new named_type(IFC4X3_ADD1_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2950], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[2951], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[2943], new named_type(IFC4X3_ADD1_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2952], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false), + new attribute(strings[2953], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false), + new attribute(strings[2954], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false), + new attribute(strings[2955], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false), + new attribute(strings[2946], new named_type(IFC4X3_ADD1_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBeam_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBeamType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBearing_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBearingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBearingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBearingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2956], new named_type(IFC4X3_ADD1_IfcIdentifier_type), false), + new attribute(strings[2957], new named_type(IFC4X3_ADD1_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBlock_type->set_attributes({ + new attribute(strings[2958], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2959], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2960], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcBoiler_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBoilerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2961], new named_type(IFC4X3_ADD1_IfcBooleanOperator_type), false), + new attribute(strings[2962], new named_type(IFC4X3_ADD1_IfcBooleanOperand_type), false), + new attribute(strings[2963], new named_type(IFC4X3_ADD1_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcBorehole_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_ADD1_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2964], new named_type(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2965], new named_type(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2966], new named_type(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2967], new named_type(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2968], new named_type(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2969], new named_type(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2970], new named_type(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2971], new named_type(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2972], new named_type(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2973], new named_type(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2974], new named_type(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2975], new named_type(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2976], new named_type(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2977], new named_type(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2978], new named_type(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2979], new named_type(IFC4X3_ADD1_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2980], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false), + new attribute(strings[2981], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2982], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2983], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2984], new named_type(IFC4X3_ADD1_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcBridge_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBridgeTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBridgePart_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBridgePartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuilding_type->set_attributes({ + new attribute(strings[2985], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[2986], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[2987], new named_type(IFC4X3_ADD1_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2988], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuiltElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuiltElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBuiltSystem_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type), true), + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBurner_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcBurnerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2991], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2993], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2994], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableFitting_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableSegment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCaissonFoundation_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCaissonFoundationType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2995], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2996], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type))), false), + new attribute(strings[2997], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2996], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type))), false), + new attribute(strings[2997], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_ADD1_IfcDirection_type), true), + new attribute(strings[2999], new named_type(IFC4X3_ADD1_IfcDirection_type), true), + new attribute(strings[3000], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false), + new attribute(strings[3001], new named_type(IFC4X3_ADD1_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[3002], new named_type(IFC4X3_ADD1_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[3003], new named_type(IFC4X3_ADD1_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[3002], new named_type(IFC4X3_ADD1_IfcReal_type), true), + new attribute(strings[3004], new named_type(IFC4X3_ADD1_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[3005], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcChiller_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcChillerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcChimney_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcChimneyType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCircle_type->set_attributes({ + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2992], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcClassification_type->set_attributes({ + new attribute(strings[3007], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3008], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3009], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3010], new named_type(IFC4X3_ADD1_IfcURIReference_type), true), + new attribute(strings[3011], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcClassificationReference_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_ADD1_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3013], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcClothoid_type->set_attributes({ + new attribute(strings[3014], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcCoil_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCoilType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcColourRgb_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3016], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3017], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcColourRgbList_type->set_attributes({ + new attribute(strings[3018], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X3_ADD1_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcColumn_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcColumnType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcComplexProperty_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_ADD1_IfcIdentifier_type), false), + new attribute(strings[3020], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3021], new named_type(IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[3022], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[3023], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSegment_type)), false), + new attribute(strings[2943], new named_type(IFC4X3_ADD1_IfcLogical_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X3_ADD1_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3024], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3025], new named_type(IFC4X3_ADD1_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[3026], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false), + new attribute(strings[3027], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcCompressor_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCompressorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCondenser_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCondenserType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConic_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[3029], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcFace_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[3030], new named_type(IFC4X3_ADD1_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[3031], new named_type(IFC4X3_ADD1_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[3032], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3033], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3034], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[3035], new named_type(IFC4X3_ADD1_IfcPointOrVertexPoint_type), false), + new attribute(strings[3036], new named_type(IFC4X3_ADD1_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[3038], new named_type(IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[3039], new named_type(IFC4X3_ADD1_IfcSolidOrShell_type), false), + new attribute(strings[3040], new named_type(IFC4X3_ADD1_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcConstraint_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3041], new named_type(IFC4X3_ADD1_IfcConstraintEnum_type), false), + new attribute(strings[3042], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3043], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[3044], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3045], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionResource_type->set_attributes({ + new attribute(strings[3046], new named_type(IFC4X3_ADD1_IfcResourceTime_type), true), + new attribute(strings[3047], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAppliedValue_type)), true), + new attribute(strings[3048], new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[3047], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAppliedValue_type)), true), + new attribute(strings[3048], new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcContext_type->set_attributes({ + new attribute(strings[3049], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3050], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3051], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentationContext_type)), true), + new attribute(strings[3052], new named_type(IFC4X3_ADD1_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcControl_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcController_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcControllerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[3053], new named_type(IFC4X3_ADD1_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[3054], new named_type(IFC4X3_ADD1_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcConveyorSegment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcConveyorSegmentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[3056], new named_type(IFC4X3_ADD1_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcCosineSpiral_type->set_attributes({ + new attribute(strings[3057], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3058], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcCostItem_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCostItemTypeEnum_type), true), + new attribute(strings[3059], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCostValue_type)), true), + new attribute(strings[3060], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3061], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3062], new named_type(IFC4X3_ADD1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCourse_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCourseTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCourseType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCourseTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCovering_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCoveringType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCrewResource_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcCsgSolid_type->set_attributes({ + new attribute(strings[3063], new named_type(IFC4X3_ADD1_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[3064], new named_type(IFC4X3_ADD1_IfcMonetaryUnit_type), false), + new attribute(strings[3065], new named_type(IFC4X3_ADD1_IfcMonetaryUnit_type), false), + new attribute(strings[3066], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), false), + new attribute(strings[3067], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3068], new named_type(IFC4X3_ADD1_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[3069], new named_type(IFC4X3_ADD1_IfcPlane_type), false), + new attribute(strings[2890], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[2891], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_ADD1_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[3069], new named_type(IFC4X3_ADD1_IfcSurface_type), false), + new attribute(strings[3070], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBoundaryCurve_type)), false), + new attribute(strings[3071], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcCurveSegment_type->set_attributes({ + new attribute(strings[3072], new named_type(IFC4X3_ADD1_IfcPlacement_type), false), + new attribute(strings[3073], new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), false), + new attribute(strings[2881], new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), false), + new attribute(strings[3025], new named_type(IFC4X3_ADD1_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcCurveStyle_type->set_attributes({ + new attribute(strings[3074], new named_type(IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[3075], new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true), + new attribute(strings[3076], new named_type(IFC4X3_ADD1_IfcColour_type), true), + new attribute(strings[3077], new named_type(IFC4X3_ADD1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3078], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3079], new named_type(IFC4X3_ADD1_IfcCurveStyleFontSelect_type), false), + new attribute(strings[3080], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[3081], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3082], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcDamper_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDamperType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDeepFoundation_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDeepFoundationType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[3083], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false), + new attribute(strings[2961], new named_type(IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[3027], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[3084], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDerivedUnitElement_type)), false), + new attribute(strings[3085], new named_type(IFC4X3_ADD1_IfcDerivedUnitEnum_type), false), + new attribute(strings[3086], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcNamedUnit_type), false), + new attribute(strings[3088], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[3089], new simple_type(simple_type::integer_type), false), + new attribute(strings[3090], new simple_type(simple_type::integer_type), false), + new attribute(strings[3091], new simple_type(simple_type::integer_type), false), + new attribute(strings[3092], new simple_type(simple_type::integer_type), false), + new attribute(strings[3093], new simple_type(simple_type::integer_type), false), + new attribute(strings[3094], new simple_type(simple_type::integer_type), false), + new attribute(strings[3095], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDirection_type->set_attributes({ + new attribute(strings[3096], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcReal_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3097], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3098], new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), true), + new attribute(strings[3099], new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type->set_attributes({ + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionBoard_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionBoardType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionPort_type->set_attributes({ + new attribute(strings[3100], new named_type(IFC4X3_ADD1_IfcFlowDirectionEnum_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[3101], new named_type(IFC4X3_ADD1_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), false), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3102], new named_type(IFC4X3_ADD1_IfcURIReference_type), true), + new attribute(strings[2867], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3103], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3104], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3105], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3106], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[3107], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorSelect_type)), true), + new attribute(strings[3044], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3108], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3109], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3110], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[3111], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[3112], new named_type(IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[3113], new named_type(IFC4X3_ADD1_IfcDocumentInformation_type), false), + new attribute(strings[3114], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDocumentInformation_type)), false), + new attribute(strings[3115], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3116], new named_type(IFC4X3_ADD1_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcDoor_type->set_attributes({ + new attribute(strings[3117], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDoorTypeEnum_type), true), + new attribute(strings[3119], new named_type(IFC4X3_ADD1_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[3120], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[3121], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3122], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3123], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3124], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3125], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3126], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3127], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3128], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3129], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3130], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3131], new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true), + new attribute(strings[3132], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3133], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[3134], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3135], new named_type(IFC4X3_ADD1_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[3136], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3137], new named_type(IFC4X3_ADD1_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[3131], new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDoorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDoorTypeEnum_type), false), + new attribute(strings[3119], new named_type(IFC4X3_ADD1_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[3138], new named_type(IFC4X3_ADD1_IfcBoolean_type), true), + new attribute(strings[3120], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEarthworksCut_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEarthworksElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEarthworksFill_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEdge_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X3_ADD1_IfcVertex_type), false), + new attribute(strings[3140], new named_type(IFC4X3_ADD1_IfcVertex_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[3141], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3024], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[3142], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElement_type->set_attributes({ + new attribute(strings[3143], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementAssembly_type->set_attributes({ + new attribute(strings[3144], new named_type(IFC4X3_ADD1_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementQuantity_type->set_attributes({ + new attribute(strings[3145], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3146], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementType_type->set_attributes({ + new attribute(strings[3147], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcElementarySurface_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcEllipse_type->set_attributes({ + new attribute(strings[3148], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3149], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[3148], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3149], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEngine_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEngineType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEvaporator_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEvent_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEventTypeEnum_type), true), + new attribute(strings[3150], new named_type(IFC4X3_ADD1_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[3151], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3152], new named_type(IFC4X3_ADD1_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEventTime_type->set_attributes({ + new attribute(strings[3153], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3154], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3155], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3156], new named_type(IFC4X3_ADD1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcEventType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcEventTypeEnum_type), false), + new attribute(strings[3150], new named_type(IFC4X3_ADD1_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[3151], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3157], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcExternalReference_type->set_attributes({ + new attribute(strings[3102], new named_type(IFC4X3_ADD1_IfcURIReference_type), true), + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[3158], new named_type(IFC4X3_ADD1_IfcExternalReference_type), false), + new attribute(strings[3159], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4X3_ADD1_IfcDirection_type), false), + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3161], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcFace_type->set_attributes({ + new attribute(strings[3162], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3163], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcFaceBound_type->set_attributes({ + new attribute(strings[3164], new named_type(IFC4X3_ADD1_IfcLoop_type), false), + new attribute(strings[3165], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X3_ADD1_IfcFaceSurface_type->set_attributes({ + new attribute(strings[3166], new named_type(IFC4X3_ADD1_IfcSurface_type), false), + new attribute(strings[3024], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2869], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcFacility_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFacilityPart_type->set_attributes({ + new attribute(strings[3167], new named_type(IFC4X3_ADD1_IfcFacilityUsageEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFacilityPartCommon_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[3168], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3169], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3170], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3171], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3172], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3173], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFan_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFanType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFastener_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFastenerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[3174], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcFillStyleSelect_type)), false), + new attribute(strings[3077], new named_type(IFC4X3_ADD1_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[3175], new named_type(IFC4X3_ADD1_IfcCurveStyle_type), false), + new attribute(strings[3176], new named_type(IFC4X3_ADD1_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[3177], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), true), + new attribute(strings[3178], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), true), + new attribute(strings[3179], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[3180], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcVector_type)), false), + new attribute(strings[3181], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStyledItem_type)), false), + new attribute(strings[3182], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcFilter_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFilterType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3183], new named_type(IFC4X3_ADD1_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFooting_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFootingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFurniture_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcFurnitureType_type->set_attributes({ + new attribute(strings[3144], new named_type(IFC4X3_ADD1_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeographicCRS_type->set_attributes({ + new attribute(strings[3184], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3185], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcNamedUnit_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[3186], new named_type(IFC4X3_ADD1_IfcDimensionCount_type), false), + new attribute(strings[3187], new named_type(IFC4X3_ADD1_IfcReal_type), true), + new attribute(strings[3188], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false), + new attribute(strings[3189], new named_type(IFC4X3_ADD1_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[3190], new named_type(IFC4X3_ADD1_IfcGeometricRepresentationContext_type), false), + new attribute(strings[3191], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3192], new named_type(IFC4X3_ADD1_IfcGeometricProjectionEnum_type), false), + new attribute(strings[3193], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X3_ADD1_IfcGeometricSet_type->set_attributes({ + new attribute(strings[3084], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcGeomodel_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeoslice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeotechnicalAssembly_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeotechnicalElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGeotechnicalStratum_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGradientCurve_type->set_attributes({ + new attribute(strings[3194], new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false), + new attribute(strings[3195], new named_type(IFC4X3_ADD1_IfcPlacement_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcGrid_type->set_attributes({ + new attribute(strings[3196], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), false), + new attribute(strings[3197], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), false), + new attribute(strings[3198], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcGridAxis_type->set_attributes({ + new attribute(strings[3199], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3200], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3024], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcGridPlacement_type->set_attributes({ + new attribute(strings[3201], new named_type(IFC4X3_ADD1_IfcVirtualGridIntersection_type), false), + new attribute(strings[3202], new named_type(IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[3203], new named_type(IFC4X3_ADD1_IfcSurface_type), false), + new attribute(strings[3204], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcHumidifier_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[3118], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2926], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2927], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3205], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3206], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3207], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3208], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcImageTexture_type->set_attributes({ + new attribute(strings[3209], new named_type(IFC4X3_ADD1_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcImpactProtectionDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcImpactProtectionDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[3210], new named_type(IFC4X3_ADD1_IfcTessellatedFaceSet_type), false), + new attribute(strings[3211], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3212], new named_type(IFC4X3_ADD1_IfcColourRgbList_type), false), + new attribute(strings[3213], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[3214], new named_type(IFC4X3_ADD1_IfcCartesianPointList_type), false), + new attribute(strings[3023], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2943], new named_type(IFC4X3_ADD1_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[3215], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[3216], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type->set_attributes({ + new attribute(strings[3217], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTextureCoordinateIndices_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[3210], new named_type(IFC4X3_ADD1_IfcTessellatedFaceSet_type), false), + new attribute(strings[3218], new named_type(IFC4X3_ADD1_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[3219], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcInterceptor_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcInventory_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcInventoryTypeEnum_type), true), + new attribute(strings[3220], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[3221], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPerson_type)), true), + new attribute(strings[3222], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[2918], new named_type(IFC4X3_ADD1_IfcCostValue_type), true), + new attribute(strings[2917], new named_type(IFC4X3_ADD1_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[3223], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[3224], new named_type(IFC4X3_ADD1_IfcDateTime_type), false), + new attribute(strings[3225], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcKerb_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcKerbTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcKerbType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcKerbTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2991], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3005], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3206], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3226], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3227], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLaborResource_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLagTime_type->set_attributes({ + new attribute(strings[3228], new named_type(IFC4X3_ADD1_IfcTimeOrRatioSelect_type), false), + new attribute(strings[3229], new named_type(IFC4X3_ADD1_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcLamp_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLampType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2893], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3230], new named_type(IFC4X3_ADD1_IfcActorSelect_type), true), + new attribute(strings[3231], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3102], new named_type(IFC4X3_ADD1_IfcURIReference_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3232], new named_type(IFC4X3_ADD1_IfcLanguageId_type), true), + new attribute(strings[3233], new named_type(IFC4X3_ADD1_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[3234], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false), + new attribute(strings[3235], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3236], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcLightFixture_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[3237], new named_type(IFC4X3_ADD1_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[3238], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcLightSource_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3239], new named_type(IFC4X3_ADD1_IfcColourRgb_type), false), + new attribute(strings[3240], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3241], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[3165], new named_type(IFC4X3_ADD1_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false), + new attribute(strings[3242], new named_type(IFC4X3_ADD1_IfcColourRgb_type), true), + new attribute(strings[3243], new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[3244], new named_type(IFC4X3_ADD1_IfcLuminousFluxMeasure_type), false), + new attribute(strings[3245], new named_type(IFC4X3_ADD1_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[3246], new named_type(IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false), + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3247], new named_type(IFC4X3_ADD1_IfcReal_type), false), + new attribute(strings[3248], new named_type(IFC4X3_ADD1_IfcReal_type), false), + new attribute(strings[3249], new named_type(IFC4X3_ADD1_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[3165], new named_type(IFC4X3_ADD1_IfcDirection_type), false), + new attribute(strings[3250], new named_type(IFC4X3_ADD1_IfcReal_type), true), + new attribute(strings[3251], new named_type(IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[3252], new named_type(IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLine_type->set_attributes({ + new attribute(strings[3253], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), false), + new attribute(strings[3254], new named_type(IFC4X3_ADD1_IfcVector_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcLinearElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[3255], new named_type(IFC4X3_ADD1_IfcAxis2PlacementLinear_type), false), + new attribute(strings[3256], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcLinearPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLiquidTerminal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLiquidTerminalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[3255], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[3257], new named_type(IFC4X3_ADD1_IfcClosedShell_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcMapConversion_type->set_attributes({ + new attribute(strings[3258], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3259], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3260], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3261], new named_type(IFC4X3_ADD1_IfcReal_type), true), + new attribute(strings[3262], new named_type(IFC4X3_ADD1_IfcReal_type), true), + new attribute(strings[3001], new named_type(IFC4X3_ADD1_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMapConversionScaled_type->set_attributes({ + new attribute(strings[3263], new named_type(IFC4X3_ADD1_IfcReal_type), false), + new attribute(strings[3264], new named_type(IFC4X3_ADD1_IfcReal_type), false), + new attribute(strings[3265], new named_type(IFC4X3_ADD1_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMappedItem_type->set_attributes({ + new attribute(strings[3266], new named_type(IFC4X3_ADD1_IfcRepresentationMap_type), false), + new attribute(strings[3267], new named_type(IFC4X3_ADD1_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcMarineFacility_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMarinePart_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMarinePartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterial_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[2901], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[3268], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcClassificationSelect_type)), false), + new attribute(strings[3269], new named_type(IFC4X3_ADD1_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3270], new named_type(IFC4X3_ADD1_IfcMaterial_type), false), + new attribute(strings[3271], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2901], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3272], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[3273], new named_type(IFC4X3_ADD1_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[3270], new named_type(IFC4X3_ADD1_IfcMaterial_type), true), + new attribute(strings[3274], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[3275], new named_type(IFC4X3_ADD1_IfcLogical_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[2901], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3276], new named_type(IFC4X3_ADD1_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[3277], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterialLayer_type)), false), + new attribute(strings[3278], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[3279], new named_type(IFC4X3_ADD1_IfcMaterialLayerSet_type), false), + new attribute(strings[3280], new named_type(IFC4X3_ADD1_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3281], new named_type(IFC4X3_ADD1_IfcDirectionSenseEnum_type), false), + new attribute(strings[3282], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3283], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[3284], new named_type(IFC4X3_ADD1_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3285], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialList_type->set_attributes({ + new attribute(strings[3286], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterial_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3270], new named_type(IFC4X3_ADD1_IfcMaterial_type), true), + new attribute(strings[3287], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false), + new attribute(strings[3276], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[2901], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3288], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterialProfile_type)), false), + new attribute(strings[3289], new named_type(IFC4X3_ADD1_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[3290], new named_type(IFC4X3_ADD1_IfcMaterialProfileSet_type), false), + new attribute(strings[3291], new named_type(IFC4X3_ADD1_IfcCardinalPointReference_type), true), + new attribute(strings[3283], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[3292], new named_type(IFC4X3_ADD1_IfcMaterialProfileSet_type), false), + new attribute(strings[3293], new named_type(IFC4X3_ADD1_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[3285], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[3270], new named_type(IFC4X3_ADD1_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[3294], new named_type(IFC4X3_ADD1_IfcMaterial_type), false), + new attribute(strings[3295], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMaterial_type)), false), + new attribute(strings[3296], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[3297], new named_type(IFC4X3_ADD1_IfcValue_type), false), + new attribute(strings[3298], new named_type(IFC4X3_ADD1_IfcUnit_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[3299], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3300], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[3299], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3300], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMember_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMemberType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMetric_type->set_attributes({ + new attribute(strings[3301], new named_type(IFC4X3_ADD1_IfcBenchmarkEnum_type), false), + new attribute(strings[3302], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3303], new named_type(IFC4X3_ADD1_IfcMetricValueSelect_type), true), + new attribute(strings[3304], new named_type(IFC4X3_ADD1_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[3305], new named_type(IFC4X3_ADD1_IfcLabel_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcMooringDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMooringDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcNamedUnit_type->set_attributes({ + new attribute(strings[3306], new named_type(IFC4X3_ADD1_IfcDimensionalExponents_type), false), + new attribute(strings[3085], new named_type(IFC4X3_ADD1_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcNavigationElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcNavigationElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcNavigationElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcNavigationElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcObject_type->set_attributes({ + new attribute(strings[3049], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcObjectPlacement_type->set_attributes({ + new attribute(strings[3307], new named_type(IFC4X3_ADD1_IfcObjectPlacement_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcObjective_type->set_attributes({ + new attribute(strings[3308], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcConstraint_type)), true), + new attribute(strings[3309], new named_type(IFC4X3_ADD1_IfcLogicalOperatorEnum_type), true), + new attribute(strings[3310], new named_type(IFC4X3_ADD1_IfcObjectiveEnum_type), false), + new attribute(strings[3311], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcOccupant_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[3312], new named_type(IFC4X3_ADD1_IfcCurve_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[3313], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2943], new named_type(IFC4X3_ADD1_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[3313], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[2943], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[2938], new named_type(IFC4X3_ADD1_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[3285], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3143], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcOpenCrossProfileDef_type->set_attributes({ + new attribute(strings[3314], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3315], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type)), false), + new attribute(strings[3316], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3317], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3318], new named_type(IFC4X3_ADD1_IfcCartesianPoint_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcOrganization_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3319], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorRole_type)), true), + new attribute(strings[3320], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_ADD1_IfcOrganization_type), false), + new attribute(strings[3322], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[3323], new named_type(IFC4X3_ADD1_IfcEdge_type), false), + new attribute(strings[3165], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X3_ADD1_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_ADD1_IfcOutlet_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcOutletType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[3324], new named_type(IFC4X3_ADD1_IfcPersonAndOrganization_type), false), + new attribute(strings[3325], new named_type(IFC4X3_ADD1_IfcApplication_type), false), + new attribute(strings[3326], new named_type(IFC4X3_ADD1_IfcStateEnum_type), true), + new attribute(strings[3327], new named_type(IFC4X3_ADD1_IfcChangeActionEnum_type), true), + new attribute(strings[3328], new named_type(IFC4X3_ADD1_IfcTimeStamp_type), true), + new attribute(strings[3329], new named_type(IFC4X3_ADD1_IfcPersonAndOrganization_type), true), + new attribute(strings[3330], new named_type(IFC4X3_ADD1_IfcApplication_type), true), + new attribute(strings[3331], new named_type(IFC4X3_ADD1_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcPath_type->set_attributes({ + new attribute(strings[3142], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcPavement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPavementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPavementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPavementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPcurve_type->set_attributes({ + new attribute(strings[3069], new named_type(IFC4X3_ADD1_IfcSurface_type), false), + new attribute(strings[3332], new named_type(IFC4X3_ADD1_IfcCurve_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[3333], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[3119], new named_type(IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[3137], new named_type(IFC4X3_ADD1_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3334], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3335], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3131], new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPermit_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPermitTypeEnum_type), true), + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPerson_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3336], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3337], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3338], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3339], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3340], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3319], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorRole_type)), true), + new attribute(strings[3320], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[3341], new named_type(IFC4X3_ADD1_IfcPerson_type), false), + new attribute(strings[3342], new named_type(IFC4X3_ADD1_IfcOrganization_type), false), + new attribute(strings[3319], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[3343], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPhysicalQuantity_type)), false), + new attribute(strings[3344], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[3345], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3046], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcPile_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPileTypeEnum_type), true), + new attribute(strings[3346], new named_type(IFC4X3_ADD1_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPileType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2991], new named_type(IFC4X3_ADD1_IfcInteger_type), false), + new attribute(strings[3347], new named_type(IFC4X3_ADD1_IfcInteger_type), false), + new attribute(strings[3348], new named_type(IFC4X3_ADD1_IfcInteger_type), false), + new attribute(strings[3349], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPlacement_type->set_attributes({ + new attribute(strings[3102], new named_type(IFC4X3_ADD1_IfcPoint_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcPlanarBox_type->set_attributes({ + new attribute(strings[3072], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[3350], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3351], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcPlate_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPlateType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcPointByDistanceExpression_type->set_attributes({ + new attribute(strings[3352], new named_type(IFC4X3_ADD1_IfcCurveMeasureSelect_type), false), + new attribute(strings[3353], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3354], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3355], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3312], new named_type(IFC4X3_ADD1_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[3312], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3356], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[3069], new named_type(IFC4X3_ADD1_IfcSurface_type), false), + new attribute(strings[3357], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false), + new attribute(strings[3358], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcPolyLoop_type->set_attributes({ + new attribute(strings[3359], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), false), + new attribute(strings[3360], new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[3361], new named_type(IFC4X3_ADD1_IfcBoolean_type), true), + new attribute(strings[3362], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[3363], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPolyline_type->set_attributes({ + new attribute(strings[3214], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcPolynomialCurve_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcPlacement_type), false), + new attribute(strings[3364], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true), + new attribute(strings[3365], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true), + new attribute(strings[3366], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPostalAddress_type->set_attributes({ + new attribute(strings[3367], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3368], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3369], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3370], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3371], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3372], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3373], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3374], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLayeredItem_type)), false), + new attribute(strings[2905], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[3375], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[3376], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[3377], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[3378], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_ADD1_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcProcedure_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProcedureType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProcess_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProduct_type->set_attributes({ + new attribute(strings[3379], new named_type(IFC4X3_ADD1_IfcObjectPlacement_type), true), + new attribute(strings[3380], new named_type(IFC4X3_ADD1_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3381], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcProfileDef_type->set_attributes({ + new attribute(strings[3382], new named_type(IFC4X3_ADD1_IfcProfileTypeEnum_type), false), + new attribute(strings[3383], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcProfileProperties_type->set_attributes({ + new attribute(strings[3384], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[3184], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3385], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3386], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3387], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3388], new named_type(IFC4X3_ADD1_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProperty_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcIdentifier_type), false), + new attribute(strings[3010], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[3389], new named_type(IFC4X3_ADD1_IfcValue_type), true), + new attribute(strings[3390], new named_type(IFC4X3_ADD1_IfcValue_type), true), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcUnit_type), true), + new attribute(strings[3391], new named_type(IFC4X3_ADD1_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[3392], new named_type(IFC4X3_ADD1_IfcProperty_type), false), + new attribute(strings[3393], new named_type(IFC4X3_ADD1_IfcProperty_type), false), + new attribute(strings[3394], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[3395], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true), + new attribute(strings[3396], new named_type(IFC4X3_ADD1_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[3395], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), false), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[3225], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3397], new named_type(IFC4X3_ADD1_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertySet_type->set_attributes({ + new attribute(strings[3020], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[3021], new named_type(IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[3398], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3022], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[3399], new named_type(IFC4X3_ADD1_IfcValue_type), true), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[3400], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true), + new attribute(strings[3401], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true), + new attribute(strings[3394], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3402], new named_type(IFC4X3_ADD1_IfcUnit_type), true), + new attribute(strings[3403], new named_type(IFC4X3_ADD1_IfcUnit_type), true), + new attribute(strings[3404], new named_type(IFC4X3_ADD1_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPump_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcPumpType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityArea_type->set_attributes({ + new attribute(strings[3405], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityCount_type->set_attributes({ + new attribute(strings[3407], new named_type(IFC4X3_ADD1_IfcCountMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityLength_type->set_attributes({ + new attribute(strings[3408], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityNumber_type->set_attributes({ + new attribute(strings[3409], new named_type(IFC4X3_ADD1_IfcNumericMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityTime_type->set_attributes({ + new attribute(strings[3410], new named_type(IFC4X3_ADD1_IfcTimeMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[3411], new named_type(IFC4X3_ADD1_IfcVolumeMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[3412], new named_type(IFC4X3_ADD1_IfcMassMeasure_type), false), + new attribute(strings[3406], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcRail_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRailTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRailType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRailTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRailing_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRailingType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRailway_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRailwayTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRailwayPart_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRailwayPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRamp_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRampFlight_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRampType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[3413], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[3413], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2992], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3414], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3415], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2982], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2958], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2959], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3347], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[3069], new named_type(IFC4X3_ADD1_IfcSurface_type), false), + new attribute(strings[3416], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false), + new attribute(strings[3417], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false), + new attribute(strings[3418], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false), + new attribute(strings[3419], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false), + new attribute(strings[3420], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3421], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[3422], new named_type(IFC4X3_ADD1_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[3423], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDayInMonthNumber_type)), true), + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDayInWeekNumber_type)), true), + new attribute(strings[3425], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcMonthInYearNumber_type)), true), + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[3426], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[3427], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[3428], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReference_type->set_attributes({ + new attribute(strings[3429], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3430], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3431], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3432], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), true), + new attribute(strings[3433], new named_type(IFC4X3_ADD1_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcReferent_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcReferentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[3434], new named_type(IFC4X3_ADD1_IfcTimeMeasure_type), false), + new attribute(strings[3223], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcedSoil_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[3435], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), false), + new attribute(strings[3436], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[3437], new named_type(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3438], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3439], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3440], new named_type(IFC4X3_ADD1_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[3441], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3442], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[3299], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3443], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3444], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[3437], new named_type(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[3299], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3443], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3444], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3437], new named_type(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3445], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3446], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[3436], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[3447], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3448], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3449], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3450], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3451], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3452], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3453], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3454], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[3447], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3448], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3449], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3450], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3451], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3452], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3453], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3454], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3445], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3446], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAdheresToElement_type->set_attributes({ + new attribute(strings[3455], new named_type(IFC4X3_ADD1_IfcElement_type), false), + new attribute(strings[3456], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSurfaceFeature_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAggregates_type->set_attributes({ + new attribute(strings[3457], new named_type(IFC4X3_ADD1_IfcObjectDefinition_type), false), + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssigns_type->set_attributes({ + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false), + new attribute(strings[3459], new named_type(IFC4X3_ADD1_IfcStrippedOptional_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_ADD1_IfcActor_type), false), + new attribute(strings[3461], new named_type(IFC4X3_ADD1_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[3462], new named_type(IFC4X3_ADD1_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[3463], new named_type(IFC4X3_ADD1_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[3464], new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[3465], new named_type(IFC4X3_ADD1_IfcProcessSelect_type), false), + new attribute(strings[3466], new named_type(IFC4X3_ADD1_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[3467], new named_type(IFC4X3_ADD1_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[3468], new named_type(IFC4X3_ADD1_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociates_type->set_attributes({ + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2911], new named_type(IFC4X3_ADD1_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[3469], new named_type(IFC4X3_ADD1_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[3470], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3471], new named_type(IFC4X3_ADD1_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[3113], new named_type(IFC4X3_ADD1_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[3472], new named_type(IFC4X3_ADD1_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[3294], new named_type(IFC4X3_ADD1_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelAssociatesProfileDef_type->set_attributes({ + new attribute(strings[3473], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[3474], new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), true), + new attribute(strings[3455], new named_type(IFC4X3_ADD1_IfcElement_type), false), + new attribute(strings[3475], new named_type(IFC4X3_ADD1_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[3476], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false), + new attribute(strings[3477], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false), + new attribute(strings[3478], new named_type(IFC4X3_ADD1_IfcConnectionTypeEnum_type), false), + new attribute(strings[3479], new named_type(IFC4X3_ADD1_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[3480], new named_type(IFC4X3_ADD1_IfcPort_type), false), + new attribute(strings[3475], new named_type(IFC4X3_ADD1_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[3480], new named_type(IFC4X3_ADD1_IfcPort_type), false), + new attribute(strings[3481], new named_type(IFC4X3_ADD1_IfcPort_type), false), + new attribute(strings[3482], new named_type(IFC4X3_ADD1_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[3455], new named_type(IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[3483], new named_type(IFC4X3_ADD1_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[3484], new named_type(IFC4X3_ADD1_IfcStructuralMember_type), false), + new attribute(strings[3485], new named_type(IFC4X3_ADD1_IfcStructuralConnection_type), false), + new attribute(strings[3486], new named_type(IFC4X3_ADD1_IfcBoundaryCondition_type), true), + new attribute(strings[3487], new named_type(IFC4X3_ADD1_IfcStructuralConnectionCondition_type), true), + new attribute(strings[3488], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3489], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[3490], new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[3491], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcElement_type)), false), + new attribute(strings[3492], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[3493], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProduct_type)), false), + new attribute(strings[3494], new named_type(IFC4X3_ADD1_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[3495], new named_type(IFC4X3_ADD1_IfcElement_type), false), + new attribute(strings[3496], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[3497], new named_type(IFC4X3_ADD1_IfcSpace_type), false), + new attribute(strings[3496], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelDeclares_type->set_attributes({ + new attribute(strings[3498], new named_type(IFC4X3_ADD1_IfcContext_type), false), + new attribute(strings[3499], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObject_type)), false), + new attribute(strings[3457], new named_type(IFC4X3_ADD1_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false), + new attribute(strings[3500], new named_type(IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[3501], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertySetDefinition_type)), false), + new attribute(strings[3502], new named_type(IFC4X3_ADD1_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObject_type)), false), + new attribute(strings[3503], new named_type(IFC4X3_ADD1_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[3504], new named_type(IFC4X3_ADD1_IfcOpeningElement_type), false), + new attribute(strings[3505], new named_type(IFC4X3_ADD1_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[3506], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcDistributionControlElement_type)), false), + new attribute(strings[3507], new named_type(IFC4X3_ADD1_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[3455], new named_type(IFC4X3_ADD1_IfcInterferenceSelect_type), false), + new attribute(strings[3475], new named_type(IFC4X3_ADD1_IfcInterferenceSelect_type), false), + new attribute(strings[3508], new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), true), + new attribute(strings[3509], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3510], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[3511], new named_type(IFC4X3_ADD1_IfcSpatialZone_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelNests_type->set_attributes({ + new attribute(strings[3457], new named_type(IFC4X3_ADD1_IfcObjectDefinition_type), false), + new attribute(strings[3458], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelPositions_type->set_attributes({ + new attribute(strings[3512], new named_type(IFC4X3_ADD1_IfcPositioningElement_type), false), + new attribute(strings[3513], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcProduct_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[3455], new named_type(IFC4X3_ADD1_IfcElement_type), false), + new attribute(strings[3514], new named_type(IFC4X3_ADD1_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[3493], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSpatialReferenceSelect_type)), false), + new attribute(strings[3494], new named_type(IFC4X3_ADD1_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelSequence_type->set_attributes({ + new attribute(strings[3465], new named_type(IFC4X3_ADD1_IfcProcess_type), false), + new attribute(strings[3515], new named_type(IFC4X3_ADD1_IfcProcess_type), false), + new attribute(strings[3516], new named_type(IFC4X3_ADD1_IfcLagTime_type), true), + new attribute(strings[3517], new named_type(IFC4X3_ADD1_IfcSequenceEnum_type), true), + new attribute(strings[3518], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3519], new named_type(IFC4X3_ADD1_IfcSystem_type), false), + new attribute(strings[3520], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[3497], new named_type(IFC4X3_ADD1_IfcSpaceBoundarySelect_type), false), + new attribute(strings[3505], new named_type(IFC4X3_ADD1_IfcElement_type), false), + new attribute(strings[3474], new named_type(IFC4X3_ADD1_IfcConnectionGeometry_type), true), + new attribute(strings[3521], new named_type(IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3522], new named_type(IFC4X3_ADD1_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3523], new named_type(IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3524], new named_type(IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[3495], new named_type(IFC4X3_ADD1_IfcElement_type), false), + new attribute(strings[3525], new named_type(IFC4X3_ADD1_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3526], new named_type(IFC4X3_ADD1_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRepresentation_type->set_attributes({ + new attribute(strings[3527], new named_type(IFC4X3_ADD1_IfcRepresentationContext_type), false), + new attribute(strings[3528], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3529], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3530], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3531], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3532], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3533], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false), + new attribute(strings[3534], new named_type(IFC4X3_ADD1_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcResource_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[3159], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcResourceObjectSelect_type)), false), + new attribute(strings[2911], new named_type(IFC4X3_ADD1_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[3471], new named_type(IFC4X3_ADD1_IfcConstraint_type), false), + new attribute(strings[3159], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcResourceTime_type->set_attributes({ + new attribute(strings[3535], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3536], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3537], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3538], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3539], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3540], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3541], new named_type(IFC4X3_ADD1_IfcBoolean_type), true), + new attribute(strings[3542], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3543], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3544], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3545], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3546], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3547], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3548], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3549], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2937], new named_type(IFC4X3_ADD1_IfcAxis1Placement_type), false), + new attribute(strings[3550], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3161], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[3347], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3551], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[3347], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcRigidOperation_type->set_attributes({ + new attribute(strings[3552], new named_type(IFC4X3_ADD1_IfcMeasureValue_type), false), + new attribute(strings[3553], new named_type(IFC4X3_ADD1_IfcMeasureValue_type), false), + new attribute(strings[3347], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcRoad_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRoadTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRoadPart_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRoadPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRoof_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRoofType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcRoot_type->set_attributes({ + new attribute(strings[3554], new named_type(IFC4X3_ADD1_IfcGloballyUniqueId_type), false), + new attribute(strings[3555], new named_type(IFC4X3_ADD1_IfcOwnerHistory_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3556], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSIUnit_type->set_attributes({ + new attribute(strings[3557], new named_type(IFC4X3_ADD1_IfcSIPrefix_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X3_ADD1_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3558], new named_type(IFC4X3_ADD1_IfcDataOriginEnum_type), true), + new attribute(strings[3559], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3560], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3561], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3058], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3562], new named_type(IFC4X3_ADD1_IfcSectionTypeEnum_type), false), + new attribute(strings[3563], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false), + new attribute(strings[3564], new named_type(IFC4X3_ADD1_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3565], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3566], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3567], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3568], new named_type(IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3569], new named_type(IFC4X3_ADD1_IfcSectionProperties_type), false), + new attribute(strings[3570], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[3097], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3571], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3572], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcAxis2PlacementLinear_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3573], new named_type(IFC4X3_ADD1_IfcCompositeCurve_type), false), + new attribute(strings[3571], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false), + new attribute(strings[3572], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSectionedSurface_type->set_attributes({ + new attribute(strings[3097], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3572], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcAxis2PlacementLinear_type)), false), + new attribute(strings[3571], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_ADD1_IfcProfileDef_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSegment_type->set_attributes({ + new attribute(strings[3574], new named_type(IFC4X3_ADD1_IfcTransitionCode_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcSegmentedReferenceCurve_type->set_attributes({ + new attribute(strings[3194], new named_type(IFC4X3_ADD1_IfcBoundedCurve_type), false), + new attribute(strings[3195], new named_type(IFC4X3_ADD1_IfcPlacement_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSensor_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSensorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3575], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3576], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3577], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3578], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3579], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3560], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3561], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3058], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3580], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcShapeModel_type)), false), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3581], new named_type(IFC4X3_ADD1_IfcLogical_type), false), + new attribute(strings[3582], new named_type(IFC4X3_ADD1_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3583], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcShell_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcSign_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSignTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSignType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSignTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSignal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSignalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSignalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSignalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X3_ADD1_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[3021], new named_type(IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3584], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3585], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3586], new named_type(IFC4X3_ADD1_IfcPropertyEnumeration_type), true), + new attribute(strings[3587], new named_type(IFC4X3_ADD1_IfcUnit_type), true), + new attribute(strings[3588], new named_type(IFC4X3_ADD1_IfcUnit_type), true), + new attribute(strings[3394], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3589], new named_type(IFC4X3_ADD1_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSineSpiral_type->set_attributes({ + new attribute(strings[3590], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3561], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3058], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSite_type->set_attributes({ + new attribute(strings[3591], new named_type(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3592], new named_type(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3593], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3594], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3595], new named_type(IFC4X3_ADD1_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSlab_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSlabType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3596], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3597], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3598], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcSpace_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSpaceTypeEnum_type), true), + new attribute(strings[3599], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpaceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSpaceTypeEnum_type), false), + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[3147], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3600], new named_type(IFC4X3_ADD1_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSphere_type->set_attributes({ + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcSpiral_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStair_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStairFlight_type->set_attributes({ + new attribute(strings[3601], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[3602], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[3603], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3604], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStairType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3605], new named_type(IFC4X3_ADD1_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3606], new named_type(IFC4X3_ADD1_IfcStructuralLoad_type), false), + new attribute(strings[3607], new named_type(IFC4X3_ADD1_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3608], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true), + new attribute(strings[3609], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3610], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStructuralResultGroup_type)), true), + new attribute(strings[3611], new named_type(IFC4X3_ADD1_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[3486], new named_type(IFC4X3_ADD1_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3612], new named_type(IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[3613], new named_type(IFC4X3_ADD1_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2937], new named_type(IFC4X3_ADD1_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_ADD1_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3614], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[3223], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3615], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3616], new named_type(IFC4X3_ADD1_IfcActionTypeEnum_type), false), + new attribute(strings[3617], new named_type(IFC4X3_ADD1_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3618], new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), true), + new attribute(strings[2867], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3619], new named_type(IFC4X3_ADD1_IfcLinearForceMeasure_type), true), + new attribute(strings[3620], new named_type(IFC4X3_ADD1_IfcLinearForceMeasure_type), true), + new attribute(strings[3621], new named_type(IFC4X3_ADD1_IfcLinearForceMeasure_type), true), + new attribute(strings[3622], new named_type(IFC4X3_ADD1_IfcLinearMomentMeasure_type), true), + new attribute(strings[3623], new named_type(IFC4X3_ADD1_IfcLinearMomentMeasure_type), true), + new attribute(strings[3624], new named_type(IFC4X3_ADD1_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3625], new named_type(IFC4X3_ADD1_IfcPlanarForceMeasure_type), true), + new attribute(strings[3626], new named_type(IFC4X3_ADD1_IfcPlanarForceMeasure_type), true), + new attribute(strings[3627], new named_type(IFC4X3_ADD1_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3628], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3629], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3630], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3631], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3632], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3633], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3634], new named_type(IFC4X3_ADD1_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3635], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3636], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3637], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3638], new named_type(IFC4X3_ADD1_IfcTorqueMeasure_type), true), + new attribute(strings[3639], new named_type(IFC4X3_ADD1_IfcTorqueMeasure_type), true), + new attribute(strings[3640], new named_type(IFC4X3_ADD1_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3641], new named_type(IFC4X3_ADD1_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X3_ADD1_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3642], new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3643], new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3644], new named_type(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[3489], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3645], new named_type(IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3646], new named_type(IFC4X3_ADD1_IfcStructuralLoadGroup_type), true), + new attribute(strings[3647], new named_type(IFC4X3_ADD1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3612], new named_type(IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[3005], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcStyledItem_type->set_attributes({ + new attribute(strings[3648], new named_type(IFC4X3_ADD1_IfcRepresentationItem_type), true), + new attribute(strings[3649], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPresentationStyle_type)), false), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSubedge_type->set_attributes({ + new attribute(strings[3650], new named_type(IFC4X3_ADD1_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3651], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3652], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_ADD1_IfcPcurve_type)), false), + new attribute(strings[3653], new named_type(IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3654], new named_type(IFC4X3_ADD1_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4X3_ADD1_IfcDirection_type), false), + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3655], new named_type(IFC4X3_ADD1_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3656], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), true), + new attribute(strings[3657], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), true), + new attribute(strings[3658], new named_type(IFC4X3_ADD1_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3659], new named_type(IFC4X3_ADD1_IfcSurfaceSide_type), false), + new attribute(strings[3649], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3660], new named_type(IFC4X3_ADD1_IfcColourRgb_type), false), + new attribute(strings[3661], new named_type(IFC4X3_ADD1_IfcColourRgb_type), false), + new attribute(strings[3662], new named_type(IFC4X3_ADD1_IfcColourRgb_type), false), + new attribute(strings[3663], new named_type(IFC4X3_ADD1_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3664], new named_type(IFC4X3_ADD1_IfcReal_type), true), + new attribute(strings[3665], new named_type(IFC4X3_ADD1_IfcReal_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3666], new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true), + new attribute(strings[3662], new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true), + new attribute(strings[3660], new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true), + new attribute(strings[3667], new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true), + new attribute(strings[3668], new named_type(IFC4X3_ADD1_IfcColourOrFactor_type), true), + new attribute(strings[3669], new named_type(IFC4X3_ADD1_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3670], new named_type(IFC4X3_ADD1_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3671], new named_type(IFC4X3_ADD1_IfcColourRgb_type), false), + new attribute(strings[3672], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3673], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3674], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3675], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3676], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3677], new named_type(IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3678], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3679], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false), + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[3097], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3006], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3680], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3098], new named_type(IFC4X3_ADD1_IfcParameterValue_type), true), + new attribute(strings[3099], new named_type(IFC4X3_ADD1_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[3206], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3681], new named_type(IFC4X3_ADD1_IfcProfileDef_type), false), + new attribute(strings[3028], new named_type(IFC4X3_ADD1_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3682], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2927], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3205], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3206], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3207], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3683], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3684], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3208], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTable_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3685], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTableRow_type)), true), + new attribute(strings[3686], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcTableColumn_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcUnit_type), true), + new attribute(strings[3304], new named_type(IFC4X3_ADD1_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcTableRow_type->set_attributes({ + new attribute(strings[3687], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), true), + new attribute(strings[3688], new named_type(IFC4X3_ADD1_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcTank_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTankType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTask_type->set_attributes({ + new attribute(strings[2861], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3689], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3690], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3276], new named_type(IFC4X3_ADD1_IfcInteger_type), true), + new attribute(strings[3691], new named_type(IFC4X3_ADD1_IfcTaskTime_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTaskTime_type->set_attributes({ + new attribute(strings[3229], new named_type(IFC4X3_ADD1_IfcTaskDurationEnum_type), true), + new attribute(strings[3692], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3537], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3538], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3693], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3694], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3695], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3696], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3697], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3698], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3699], new named_type(IFC4X3_ADD1_IfcBoolean_type), true), + new attribute(strings[3542], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3700], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3545], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3546], new named_type(IFC4X3_ADD1_IfcDateTime_type), true), + new attribute(strings[3701], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3549], new named_type(IFC4X3_ADD1_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3702], new named_type(IFC4X3_ADD1_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTaskType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTaskTypeEnum_type), false), + new attribute(strings[3689], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3703], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3704], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3705], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3706], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcLabel_type)), true), + new attribute(strings[3707], new named_type(IFC4X3_ADD1_IfcURIReference_type), true), + new attribute(strings[3708], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTendon_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTendonTypeEnum_type), true), + new attribute(strings[3299], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3443], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3709], new named_type(IFC4X3_ADD1_IfcForceMeasure_type), true), + new attribute(strings[3710], new named_type(IFC4X3_ADD1_IfcPressureMeasure_type), true), + new attribute(strings[3711], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3712], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3713], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTendonConduit_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTendonConduitType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTendonType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTendonTypeEnum_type), false), + new attribute(strings[3299], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3443], new named_type(IFC4X3_ADD1_IfcAreaMeasure_type), true), + new attribute(strings[3714], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2995], new named_type(IFC4X3_ADD1_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3715], new named_type(IFC4X3_ADD1_IfcPresentableText_type), false), + new attribute(strings[3072], new named_type(IFC4X3_ADD1_IfcAxis2Placement_type), false), + new attribute(strings[3716], new named_type(IFC4X3_ADD1_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3717], new named_type(IFC4X3_ADD1_IfcPlanarExtent_type), false), + new attribute(strings[3718], new named_type(IFC4X3_ADD1_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcTextStyle_type->set_attributes({ + new attribute(strings[3719], new named_type(IFC4X3_ADD1_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3720], new named_type(IFC4X3_ADD1_IfcTextStyleTextModel_type), true), + new attribute(strings[3721], new named_type(IFC4X3_ADD1_IfcTextFontSelect_type), false), + new attribute(strings[3077], new named_type(IFC4X3_ADD1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3722], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcTextFontName_type)), false), + new attribute(strings[3723], new named_type(IFC4X3_ADD1_IfcFontStyle_type), true), + new attribute(strings[3724], new named_type(IFC4X3_ADD1_IfcFontVariant_type), true), + new attribute(strings[3725], new named_type(IFC4X3_ADD1_IfcFontWeight_type), true), + new attribute(strings[3726], new named_type(IFC4X3_ADD1_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3727], new named_type(IFC4X3_ADD1_IfcColour_type), false), + new attribute(strings[3728], new named_type(IFC4X3_ADD1_IfcColour_type), true) + },{ + false, false + }); + IFC4X3_ADD1_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3729], new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true), + new attribute(strings[3730], new named_type(IFC4X3_ADD1_IfcTextAlignment_type), true), + new attribute(strings[3731], new named_type(IFC4X3_ADD1_IfcTextDecoration_type), true), + new attribute(strings[3732], new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true), + new attribute(strings[3733], new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true), + new attribute(strings[3734], new named_type(IFC4X3_ADD1_IfcTextTransformation_type), true), + new attribute(strings[3735], new named_type(IFC4X3_ADD1_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3736], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3676], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[3678], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcTextureCoordinateIndices_type->set_attributes({ + new attribute(strings[3219], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), false), + new attribute(strings[3737], new named_type(IFC4X3_ADD1_IfcIndexedPolygonalFace_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type->set_attributes({ + new attribute(strings[3738], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcTextureMap_type->set_attributes({ + new attribute(strings[3739], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_ADD1_IfcTextureVertex_type)), false), + new attribute(strings[3210], new named_type(IFC4X3_ADD1_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2995], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3740], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3579], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false), + new attribute(strings[3560], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3561], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3058], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3741], new named_type(IFC4X3_ADD1_IfcTime_type), false), + new attribute(strings[3742], new named_type(IFC4X3_ADD1_IfcTime_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_ADD1_IfcLabel_type), false), + new attribute(strings[2866], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3741], new named_type(IFC4X3_ADD1_IfcDateTime_type), false), + new attribute(strings[3742], new named_type(IFC4X3_ADD1_IfcDateTime_type), false), + new attribute(strings[3743], new named_type(IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3558], new named_type(IFC4X3_ADD1_IfcDataOriginEnum_type), false), + new attribute(strings[3559], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3087], new named_type(IFC4X3_ADD1_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[3225], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcValue_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_ADD1_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3744], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3745], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_ADD1_IfcTrackElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTrackElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTrackElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTrackElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTransformer_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTransformerType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTransportElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTransportElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTransportElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTransportationDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTransportationDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3746], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3747], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2982], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3748], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3749], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcParameterValue_type))), true), + new attribute(strings[3361], new named_type(IFC4X3_ADD1_IfcBoolean_type), true), + new attribute(strings[3215], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type))), false), + new attribute(strings[3363], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3750], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[3312], new named_type(IFC4X3_ADD1_IfcCurve_type), false), + new attribute(strings[3751], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_ADD1_IfcTrimmingSelect_type)), false), + new attribute(strings[3752], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_ADD1_IfcTrimmingSelect_type)), false), + new attribute(strings[3753], new named_type(IFC4X3_ADD1_IfcBoolean_type), false), + new attribute(strings[3653], new named_type(IFC4X3_ADD1_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_ADD1_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTypeObject_type->set_attributes({ + new attribute(strings[3754], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[3755], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3756], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3757], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_ADD1_IfcRepresentationMap_type)), true), + new attribute(strings[3143], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcTypeResource_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_ADD1_IfcIdentifier_type), true), + new attribute(strings[2862], new named_type(IFC4X3_ADD1_IfcText_type), true), + new attribute(strings[3758], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3682], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2927], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3205], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3206], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3226], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3208], new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3759], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcUnit_type)), false) + },{ + false + }); + IFC4X3_ADD1_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcValve_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcValveType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVector_type->set_attributes({ + new attribute(strings[3165], new named_type(IFC4X3_ADD1_IfcDirection_type), false), + new attribute(strings[3760], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcVehicle_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVehicleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVehicleType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVehicleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X3_ADD1_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3761], new named_type(IFC4X3_ADD1_IfcVertex_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3762], new named_type(IFC4X3_ADD1_IfcPoint_type), false) + },{ + false + }); + IFC4X3_ADD1_IfcVibrationDamper_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVibrationDamperType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVirtualElement_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVirtualElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3763], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_ADD1_IfcGridAxis_type)), false), + new attribute(strings[3764], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWall_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWallType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWellKnownText_type->set_attributes({ + new attribute(strings[3765], new named_type(IFC4X3_ADD1_IfcWellKnownTextLiteral_type), false), + new attribute(strings[3766], new named_type(IFC4X3_ADD1_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X3_ADD1_IfcWindow_type->set_attributes({ + new attribute(strings[3117], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWindowTypeEnum_type), true), + new attribute(strings[3767], new named_type(IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3768], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[3121], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3122], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3125], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3769], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3770], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3771], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3772], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3773], new named_type(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3131], new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true), + new attribute(strings[3127], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3132], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true), + new attribute(strings[3133], new named_type(IFC4X3_ADD1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[3119], new named_type(IFC4X3_ADD1_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[3137], new named_type(IFC4X3_ADD1_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3334], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3335], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3131], new named_type(IFC4X3_ADD1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWindowType_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWindowTypeEnum_type), false), + new attribute(strings[3767], new named_type(IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[3138], new named_type(IFC4X3_ADD1_IfcBoolean_type), true), + new attribute(strings[3768], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3774], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcWorkTime_type)), true), + new attribute(strings[3775], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcWorkTime_type)), true), + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWorkControl_type->set_attributes({ + new attribute(strings[3331], new named_type(IFC4X3_ADD1_IfcDateTime_type), false), + new attribute(strings[3776], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_ADD1_IfcPerson_type)), true), + new attribute(strings[2867], new named_type(IFC4X3_ADD1_IfcLabel_type), true), + new attribute(strings[3777], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3698], new named_type(IFC4X3_ADD1_IfcDuration_type), true), + new attribute(strings[3741], new named_type(IFC4X3_ADD1_IfcDateTime_type), false), + new attribute(strings[3778], new named_type(IFC4X3_ADD1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2860], new named_type(IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcWorkTime_type->set_attributes({ + new attribute(strings[3779], new named_type(IFC4X3_ADD1_IfcRecurrencePattern_type), true), + new attribute(strings[3780], new named_type(IFC4X3_ADD1_IfcDate_type), true), + new attribute(strings[3781], new named_type(IFC4X3_ADD1_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3682], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2927], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3205], new named_type(IFC4X3_ADD1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3206], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3226], new named_type(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcZone_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_ADD1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_ADD1_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToActor_type, IFC4X3_ADD1_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3784], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPerson_type, IFC4X3_ADD1_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcOrganization_type, IFC4X3_ADD1_IfcOrganization_type->attributes()[4]) + }); + IFC4X3_ADD1_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3788], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesApproval_type, IFC4X3_ADD1_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3789], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceApprovalRelationship_type, IFC4X3_ADD1_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcApprovalRelationship_type, IFC4X3_ADD1_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcApprovalRelationship_type, IFC4X3_ADD1_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3792], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesClassification_type, IFC4X3_ADD1_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3793], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcClassificationReference_type, IFC4X3_ADD1_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3794], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesClassification_type, IFC4X3_ADD1_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3793], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcClassificationReference_type, IFC4X3_ADD1_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3795], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceConstraintRelationship_type, IFC4X3_ADD1_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByProperties_type, IFC4X3_ADD1_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDeclares_type, IFC4X3_ADD1_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToControl_type, IFC4X3_ADD1_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcCoordinateOperation_type, IFC4X3_ADD1_IfcCoordinateOperation_type->attributes()[0]), + new inverse_attribute(strings[3765], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcWellKnownText_type, IFC4X3_ADD1_IfcWellKnownText_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3800], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelCoversSpaces_type, IFC4X3_ADD1_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3801], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelCoversBldgElements_type, IFC4X3_ADD1_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3802], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelFlowControlElements_type, IFC4X3_ADD1_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3803], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsPortToElement_type, IFC4X3_ADD1_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3804], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelFlowControlElements_type, IFC4X3_ADD1_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3805], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesDocument_type, IFC4X3_ADD1_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3806], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcDocumentReference_type, IFC4X3_ADD1_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3807], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcDocumentInformationRelationship_type, IFC4X3_ADD1_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3808], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcDocumentInformationRelationship_type, IFC4X3_ADD1_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3809], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesDocument_type, IFC4X3_ADD1_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3810], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelFillsElement_type, IFC4X3_ADD1_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3811], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsElements_type, IFC4X3_ADD1_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3812], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3813], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3814], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelProjectsElement_type, IFC4X3_ADD1_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3815], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelVoidsElement_type, IFC4X3_ADD1_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3816], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type, IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3817], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary_type, IFC4X3_ADD1_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3818], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsElements_type, IFC4X3_ADD1_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3819], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelCoversBldgElements_type, IFC4X3_ADD1_IfcRelCoversBldgElements_type->attributes()[0]), + new inverse_attribute(strings[3820], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAdheresToElement_type, IFC4X3_ADD1_IfcRelAdheresToElement_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3822], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary_type, IFC4X3_ADD1_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3823], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcTextureMap_type, IFC4X3_ADD1_IfcTextureMap_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3824], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcRelProjectsElement_type, IFC4X3_ADD1_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3825], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcRelVoidsElement_type, IFC4X3_ADD1_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3826], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type, IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcCoordinateOperation_type, IFC4X3_ADD1_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3827], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcGrid_type, IFC4X3_ADD1_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3828], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcGrid_type, IFC4X3_ADD1_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3829], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcGrid_type, IFC4X3_ADD1_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3830], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcVirtualGridIntersection_type, IFC4X3_ADD1_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3831], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToGroup_type, IFC4X3_ADD1_IfcRelAssignsToGroup_type->attributes()[0]), + new inverse_attribute(strings[3832], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3833], inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcPolygonalFaceSet_type, IFC4X3_ADD1_IfcPolygonalFaceSet_type->attributes()[1]), + new inverse_attribute(strings[3834], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcTextureCoordinateIndices_type, IFC4X3_ADD1_IfcTextureCoordinateIndices_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3835], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesLibrary_type, IFC4X3_ADD1_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3836], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcLibraryReference_type, IFC4X3_ADD1_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X3_ADD1_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3837], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesLibrary_type, IFC4X3_ADD1_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3838], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type, IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcMaterialRelationship_type, IFC4X3_ADD1_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3839], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcMaterialRelationship_type, IFC4X3_ADD1_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcMaterialConstituentSet_type, IFC4X3_ADD1_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X3_ADD1_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3841], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociatesMaterial_type, IFC4X3_ADD1_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3020], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcMaterialProperties_type, IFC4X3_ADD1_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3842], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcMaterialLayerSet_type, IFC4X3_ADD1_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3843], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcMaterialProfileSet_type, IFC4X3_ADD1_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X3_ADD1_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3841], inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcRelAssociatesMaterial_type, IFC4X3_ADD1_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3844], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDefinesByObject_type, IFC4X3_ADD1_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByObject_type, IFC4X3_ADD1_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3845], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDefinesByType_type, IFC4X3_ADD1_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByProperties_type, IFC4X3_ADD1_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3846], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssigns_type, IFC4X3_ADD1_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3847], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelNests_type, IFC4X3_ADD1_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3848], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelNests_type, IFC4X3_ADD1_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDeclares_type, IFC4X3_ADD1_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3850], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAggregates_type, IFC4X3_ADD1_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3851], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelAggregates_type, IFC4X3_ADD1_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3852], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociates_type, IFC4X3_ADD1_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3853], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcProduct_type, IFC4X3_ADD1_IfcProduct_type->attributes()[0]), + new inverse_attribute(strings[3854], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcObjectPlacement_type, IFC4X3_ADD1_IfcObjectPlacement_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3855], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelFillsElement_type, IFC4X3_ADD1_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3856], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcOrganizationRelationship_type, IFC4X3_ADD1_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcOrganizationRelationship_type, IFC4X3_ADD1_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3857], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPersonAndOrganization_type, IFC4X3_ADD1_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3858], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPersonAndOrganization_type, IFC4X3_ADD1_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3859], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcPhysicalComplexQuantity_type, IFC4X3_ADD1_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3860], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsPortToElement_type, IFC4X3_ADD1_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3818], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsPorts_type, IFC4X3_ADD1_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3811], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsPorts_type, IFC4X3_ADD1_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3861], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelPositions_type, IFC4X3_ADD1_IfcRelPositions_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3862], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSequence_type, IFC4X3_ADD1_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3863], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSequence_type, IFC4X3_ADD1_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3864], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProcess_type, IFC4X3_ADD1_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3865], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProduct_type, IFC4X3_ADD1_IfcRelAssignsToProduct_type->attributes()[0]), + new inverse_attribute(strings[3866], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelPositions_type, IFC4X3_ADD1_IfcRelPositions_type->attributes()[1]), + new inverse_attribute(strings[3832], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3867], inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcProduct_type, IFC4X3_ADD1_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3868], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcShapeAspect_type, IFC4X3_ADD1_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X3_ADD1_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3020], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcProfileProperties_type, IFC4X3_ADD1_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3869], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertySet_type, IFC4X3_ADD1_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3870], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3871], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type, IFC4X3_ADD1_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3859], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcComplexProperty_type, IFC4X3_ADD1_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3872], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceConstraintRelationship_type, IFC4X3_ADD1_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3873], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcResourceApprovalRelationship_type, IFC4X3_ADD1_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDeclares_type, IFC4X3_ADD1_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3852], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssociates_type, IFC4X3_ADD1_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3874], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcTypeObject_type, IFC4X3_ADD1_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByTemplate_type, IFC4X3_ADD1_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3875], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByProperties_type, IFC4X3_ADD1_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3876], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelDefinesByTemplate_type, IFC4X3_ADD1_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3877], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcComplexPropertyTemplate_type, IFC4X3_ADD1_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3878], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPropertySetTemplate_type, IFC4X3_ADD1_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2891], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type, IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3879], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3880], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRepresentationMap_type, IFC4X3_ADD1_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3881], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcPresentationLayerAssignment_type, IFC4X3_ADD1_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3882], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcProductRepresentation_type, IFC4X3_ADD1_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X3_ADD1_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3883], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRepresentation_type, IFC4X3_ADD1_IfcRepresentation_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3884], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcPresentationLayerAssignment_type, IFC4X3_ADD1_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3885], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcStyledItem_type, IFC4X3_ADD1_IfcStyledItem_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3868], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcShapeAspect_type, IFC4X3_ADD1_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3886], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcMappedItem_type, IFC4X3_ADD1_IfcMappedItem_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3887], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToResource_type, IFC4X3_ADD1_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3888], inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcCompositeCurve_type, IFC4X3_ADD1_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3889], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcShapeAspect_type, IFC4X3_ADD1_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3819], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelCoversSpaces_type, IFC4X3_ADD1_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3822], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelSpaceBoundary_type, IFC4X3_ADD1_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3890], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3891], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelServicesBuildings_type, IFC4X3_ADD1_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3892], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3812], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3813], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelInterferesElements_type, IFC4X3_ADD1_IfcRelInterferesElements_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3893], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3894], inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3895], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type, IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3896], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcStructuralResultGroup_type, IFC4X3_ADD1_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3897], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcStructuralAnalysisModel_type, IFC4X3_ADD1_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X3_ADD1_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3898], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type, IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3899], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcStructuralAnalysisModel_type, IFC4X3_ADD1_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X3_ADD1_IfcSurfaceFeature_type->set_inverse_attributes({ + new inverse_attribute(strings[3900], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcRelAdheresToElement_type, IFC4X3_ADD1_IfcRelAdheresToElement_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3901], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcTextureCoordinate_type, IFC4X3_ADD1_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3902], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type, IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3903], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelServicesBuildings_type, IFC4X3_ADD1_IfcRelServicesBuildings_type->attributes()[0]), + new inverse_attribute(strings[3904], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3905], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcIndexedColourMap_type, IFC4X3_ADD1_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3906], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcIndexedTextureMap_type, IFC4X3_ADD1_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcTextureCoordinateIndices_type->set_inverse_attributes({ + new inverse_attribute(strings[3907], inverse_attribute::unspecified_type, -1, -1, IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type, IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 1, -1, IFC4X3_ADD1_IfcExternalReferenceRelationship_type, IFC4X3_ADD1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3908], inverse_attribute::set_type, 0, 1, IFC4X3_ADD1_IfcRelDefinesByType_type, IFC4X3_ADD1_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X3_ADD1_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3864], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProcess_type, IFC4X3_ADD1_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3865], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToProduct_type, IFC4X3_ADD1_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3887], inverse_attribute::set_type, 0, -1, IFC4X3_ADD1_IfcRelAssignsToResource_type, IFC4X3_ADD1_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_ADD1_IfcControl_type->set_subtypes({ + IFC4X3_ADD1_IfcActionRequest_type,IFC4X3_ADD1_IfcCostItem_type,IFC4X3_ADD1_IfcCostSchedule_type,IFC4X3_ADD1_IfcPerformanceHistory_type,IFC4X3_ADD1_IfcPermit_type,IFC4X3_ADD1_IfcProjectOrder_type,IFC4X3_ADD1_IfcWorkCalendar_type,IFC4X3_ADD1_IfcWorkControl_type + }); + IFC4X3_ADD1_IfcObject_type->set_subtypes({ + IFC4X3_ADD1_IfcActor_type,IFC4X3_ADD1_IfcControl_type,IFC4X3_ADD1_IfcGroup_type,IFC4X3_ADD1_IfcProcess_type,IFC4X3_ADD1_IfcProduct_type,IFC4X3_ADD1_IfcResource_type + }); + IFC4X3_ADD1_IfcDistributionControlElement_type->set_subtypes({ + IFC4X3_ADD1_IfcActuator_type,IFC4X3_ADD1_IfcAlarm_type,IFC4X3_ADD1_IfcController_type,IFC4X3_ADD1_IfcFlowInstrument_type,IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type,IFC4X3_ADD1_IfcSensor_type,IFC4X3_ADD1_IfcUnitaryControlElement_type + }); + IFC4X3_ADD1_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcActuatorType_type,IFC4X3_ADD1_IfcAlarmType_type,IFC4X3_ADD1_IfcControllerType_type,IFC4X3_ADD1_IfcFlowInstrumentType_type,IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type,IFC4X3_ADD1_IfcSensorType_type,IFC4X3_ADD1_IfcUnitaryControlElementType_type + }); + IFC4X3_ADD1_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X3_ADD1_IfcAdvancedBrep_type,IFC4X3_ADD1_IfcFacetedBrep_type + }); + IFC4X3_ADD1_IfcAdvancedBrep_type->set_subtypes({ + IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type + }); + IFC4X3_ADD1_IfcFaceSurface_type->set_subtypes({ + IFC4X3_ADD1_IfcAdvancedFace_type + }); + IFC4X3_ADD1_IfcFlowTerminal_type->set_subtypes({ + IFC4X3_ADD1_IfcAirTerminal_type,IFC4X3_ADD1_IfcAudioVisualAppliance_type,IFC4X3_ADD1_IfcCommunicationsAppliance_type,IFC4X3_ADD1_IfcElectricAppliance_type,IFC4X3_ADD1_IfcFireSuppressionTerminal_type,IFC4X3_ADD1_IfcLamp_type,IFC4X3_ADD1_IfcLightFixture_type,IFC4X3_ADD1_IfcLiquidTerminal_type,IFC4X3_ADD1_IfcMedicalDevice_type,IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type,IFC4X3_ADD1_IfcOutlet_type,IFC4X3_ADD1_IfcSanitaryTerminal_type,IFC4X3_ADD1_IfcSignal_type,IFC4X3_ADD1_IfcSpaceHeater_type,IFC4X3_ADD1_IfcStackTerminal_type,IFC4X3_ADD1_IfcWasteTerminal_type + }); + IFC4X3_ADD1_IfcFlowController_type->set_subtypes({ + IFC4X3_ADD1_IfcAirTerminalBox_type,IFC4X3_ADD1_IfcDamper_type,IFC4X3_ADD1_IfcDistributionBoard_type,IFC4X3_ADD1_IfcElectricDistributionBoard_type,IFC4X3_ADD1_IfcElectricTimeControl_type,IFC4X3_ADD1_IfcFlowMeter_type,IFC4X3_ADD1_IfcProtectiveDevice_type,IFC4X3_ADD1_IfcSwitchingDevice_type,IFC4X3_ADD1_IfcValve_type + }); + IFC4X3_ADD1_IfcFlowControllerType_type->set_subtypes({ + IFC4X3_ADD1_IfcAirTerminalBoxType_type,IFC4X3_ADD1_IfcDamperType_type,IFC4X3_ADD1_IfcDistributionBoardType_type,IFC4X3_ADD1_IfcElectricDistributionBoardType_type,IFC4X3_ADD1_IfcElectricTimeControlType_type,IFC4X3_ADD1_IfcFlowMeterType_type,IFC4X3_ADD1_IfcProtectiveDeviceType_type,IFC4X3_ADD1_IfcSwitchingDeviceType_type,IFC4X3_ADD1_IfcValveType_type + }); + IFC4X3_ADD1_IfcFlowTerminalType_type->set_subtypes({ + IFC4X3_ADD1_IfcAirTerminalType_type,IFC4X3_ADD1_IfcAudioVisualApplianceType_type,IFC4X3_ADD1_IfcCommunicationsApplianceType_type,IFC4X3_ADD1_IfcElectricApplianceType_type,IFC4X3_ADD1_IfcFireSuppressionTerminalType_type,IFC4X3_ADD1_IfcLampType_type,IFC4X3_ADD1_IfcLightFixtureType_type,IFC4X3_ADD1_IfcLiquidTerminalType_type,IFC4X3_ADD1_IfcMedicalDeviceType_type,IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type,IFC4X3_ADD1_IfcOutletType_type,IFC4X3_ADD1_IfcSanitaryTerminalType_type,IFC4X3_ADD1_IfcSignalType_type,IFC4X3_ADD1_IfcSpaceHeaterType_type,IFC4X3_ADD1_IfcStackTerminalType_type,IFC4X3_ADD1_IfcWasteTerminalType_type + }); + IFC4X3_ADD1_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X3_ADD1_IfcAirToAirHeatRecovery_type,IFC4X3_ADD1_IfcBoiler_type,IFC4X3_ADD1_IfcBurner_type,IFC4X3_ADD1_IfcChiller_type,IFC4X3_ADD1_IfcCoil_type,IFC4X3_ADD1_IfcCondenser_type,IFC4X3_ADD1_IfcCooledBeam_type,IFC4X3_ADD1_IfcCoolingTower_type,IFC4X3_ADD1_IfcElectricGenerator_type,IFC4X3_ADD1_IfcElectricMotor_type,IFC4X3_ADD1_IfcEngine_type,IFC4X3_ADD1_IfcEvaporativeCooler_type,IFC4X3_ADD1_IfcEvaporator_type,IFC4X3_ADD1_IfcHeatExchanger_type,IFC4X3_ADD1_IfcHumidifier_type,IFC4X3_ADD1_IfcMotorConnection_type,IFC4X3_ADD1_IfcSolarDevice_type,IFC4X3_ADD1_IfcTransformer_type,IFC4X3_ADD1_IfcTubeBundle_type,IFC4X3_ADD1_IfcUnitaryEquipment_type + }); + IFC4X3_ADD1_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type,IFC4X3_ADD1_IfcBoilerType_type,IFC4X3_ADD1_IfcBurnerType_type,IFC4X3_ADD1_IfcChillerType_type,IFC4X3_ADD1_IfcCoilType_type,IFC4X3_ADD1_IfcCondenserType_type,IFC4X3_ADD1_IfcCooledBeamType_type,IFC4X3_ADD1_IfcCoolingTowerType_type,IFC4X3_ADD1_IfcElectricGeneratorType_type,IFC4X3_ADD1_IfcElectricMotorType_type,IFC4X3_ADD1_IfcEngineType_type,IFC4X3_ADD1_IfcEvaporativeCoolerType_type,IFC4X3_ADD1_IfcEvaporatorType_type,IFC4X3_ADD1_IfcHeatExchangerType_type,IFC4X3_ADD1_IfcHumidifierType_type,IFC4X3_ADD1_IfcMotorConnectionType_type,IFC4X3_ADD1_IfcSolarDeviceType_type,IFC4X3_ADD1_IfcTransformerType_type,IFC4X3_ADD1_IfcTubeBundleType_type,IFC4X3_ADD1_IfcUnitaryEquipmentType_type + }); + IFC4X3_ADD1_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X3_ADD1_IfcAlignment_type + }); + IFC4X3_ADD1_IfcLinearElement_type->set_subtypes({ + IFC4X3_ADD1_IfcAlignmentCant_type,IFC4X3_ADD1_IfcAlignmentHorizontal_type,IFC4X3_ADD1_IfcAlignmentSegment_type,IFC4X3_ADD1_IfcAlignmentVertical_type + }); + IFC4X3_ADD1_IfcAlignmentParameterSegment_type->set_subtypes({ + IFC4X3_ADD1_IfcAlignmentCantSegment_type,IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type,IFC4X3_ADD1_IfcAlignmentVerticalSegment_type + }); + IFC4X3_ADD1_IfcProduct_type->set_subtypes({ + IFC4X3_ADD1_IfcAnnotation_type,IFC4X3_ADD1_IfcElement_type,IFC4X3_ADD1_IfcLinearElement_type,IFC4X3_ADD1_IfcPort_type,IFC4X3_ADD1_IfcPositioningElement_type,IFC4X3_ADD1_IfcSpatialElement_type,IFC4X3_ADD1_IfcStructuralActivity_type,IFC4X3_ADD1_IfcStructuralItem_type + }); + IFC4X3_ADD1_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X3_ADD1_IfcAnnotationFillArea_type,IFC4X3_ADD1_IfcBooleanResult_type,IFC4X3_ADD1_IfcBoundingBox_type,IFC4X3_ADD1_IfcCartesianPointList_type,IFC4X3_ADD1_IfcCartesianTransformationOperator_type,IFC4X3_ADD1_IfcCsgPrimitive3D_type,IFC4X3_ADD1_IfcCurve_type,IFC4X3_ADD1_IfcDirection_type,IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type,IFC4X3_ADD1_IfcFillAreaStyleHatching_type,IFC4X3_ADD1_IfcFillAreaStyleTiles_type,IFC4X3_ADD1_IfcGeometricSet_type,IFC4X3_ADD1_IfcHalfSpaceSolid_type,IFC4X3_ADD1_IfcLightSource_type,IFC4X3_ADD1_IfcPlacement_type,IFC4X3_ADD1_IfcPlanarExtent_type,IFC4X3_ADD1_IfcPoint_type,IFC4X3_ADD1_IfcSectionedSpine_type,IFC4X3_ADD1_IfcSegment_type,IFC4X3_ADD1_IfcShellBasedSurfaceModel_type,IFC4X3_ADD1_IfcSolidModel_type,IFC4X3_ADD1_IfcSurface_type,IFC4X3_ADD1_IfcTessellatedItem_type,IFC4X3_ADD1_IfcTextLiteral_type,IFC4X3_ADD1_IfcVector_type + }); + IFC4X3_ADD1_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X3_ADD1_IfcApprovalRelationship_type,IFC4X3_ADD1_IfcCurrencyRelationship_type,IFC4X3_ADD1_IfcDocumentInformationRelationship_type,IFC4X3_ADD1_IfcExternalReferenceRelationship_type,IFC4X3_ADD1_IfcMaterialRelationship_type,IFC4X3_ADD1_IfcOrganizationRelationship_type,IFC4X3_ADD1_IfcPropertyDependencyRelationship_type,IFC4X3_ADD1_IfcResourceApprovalRelationship_type,IFC4X3_ADD1_IfcResourceConstraintRelationship_type + }); + IFC4X3_ADD1_IfcProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type,IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type,IFC4X3_ADD1_IfcCompositeProfileDef_type,IFC4X3_ADD1_IfcDerivedProfileDef_type,IFC4X3_ADD1_IfcOpenCrossProfileDef_type,IFC4X3_ADD1_IfcParameterizedProfileDef_type + }); + IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X3_ADD1_IfcGroup_type->set_subtypes({ + IFC4X3_ADD1_IfcAsset_type,IFC4X3_ADD1_IfcInventory_type,IFC4X3_ADD1_IfcStructuralLoadGroup_type,IFC4X3_ADD1_IfcStructuralResultGroup_type,IFC4X3_ADD1_IfcSystem_type + }); + IFC4X3_ADD1_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type,IFC4X3_ADD1_IfcCShapeProfileDef_type,IFC4X3_ADD1_IfcCircleProfileDef_type,IFC4X3_ADD1_IfcEllipseProfileDef_type,IFC4X3_ADD1_IfcIShapeProfileDef_type,IFC4X3_ADD1_IfcLShapeProfileDef_type,IFC4X3_ADD1_IfcRectangleProfileDef_type,IFC4X3_ADD1_IfcTShapeProfileDef_type,IFC4X3_ADD1_IfcTrapeziumProfileDef_type,IFC4X3_ADD1_IfcUShapeProfileDef_type,IFC4X3_ADD1_IfcZShapeProfileDef_type + }); + IFC4X3_ADD1_IfcPlacement_type->set_subtypes({ + IFC4X3_ADD1_IfcAxis1Placement_type,IFC4X3_ADD1_IfcAxis2Placement2D_type,IFC4X3_ADD1_IfcAxis2Placement3D_type,IFC4X3_ADD1_IfcAxis2PlacementLinear_type + }); + IFC4X3_ADD1_IfcBoundedCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcBSplineCurve_type,IFC4X3_ADD1_IfcCompositeCurve_type,IFC4X3_ADD1_IfcIndexedPolyCurve_type,IFC4X3_ADD1_IfcPolyline_type,IFC4X3_ADD1_IfcTrimmedCurve_type + }); + IFC4X3_ADD1_IfcBSplineCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcBSplineCurveWithKnots_type + }); + IFC4X3_ADD1_IfcBoundedSurface_type->set_subtypes({ + IFC4X3_ADD1_IfcBSplineSurface_type,IFC4X3_ADD1_IfcCurveBoundedPlane_type,IFC4X3_ADD1_IfcCurveBoundedSurface_type,IFC4X3_ADD1_IfcRectangularTrimmedSurface_type + }); + IFC4X3_ADD1_IfcBSplineSurface_type->set_subtypes({ + IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type + }); + IFC4X3_ADD1_IfcBuiltElement_type->set_subtypes({ + IFC4X3_ADD1_IfcBeam_type,IFC4X3_ADD1_IfcBearing_type,IFC4X3_ADD1_IfcBuildingElementProxy_type,IFC4X3_ADD1_IfcChimney_type,IFC4X3_ADD1_IfcColumn_type,IFC4X3_ADD1_IfcCourse_type,IFC4X3_ADD1_IfcCovering_type,IFC4X3_ADD1_IfcCurtainWall_type,IFC4X3_ADD1_IfcDeepFoundation_type,IFC4X3_ADD1_IfcDoor_type,IFC4X3_ADD1_IfcEarthworksElement_type,IFC4X3_ADD1_IfcFooting_type,IFC4X3_ADD1_IfcKerb_type,IFC4X3_ADD1_IfcMember_type,IFC4X3_ADD1_IfcMooringDevice_type,IFC4X3_ADD1_IfcNavigationElement_type,IFC4X3_ADD1_IfcPavement_type,IFC4X3_ADD1_IfcPlate_type,IFC4X3_ADD1_IfcRail_type,IFC4X3_ADD1_IfcRailing_type,IFC4X3_ADD1_IfcRamp_type,IFC4X3_ADD1_IfcRampFlight_type,IFC4X3_ADD1_IfcRoof_type,IFC4X3_ADD1_IfcShadingDevice_type,IFC4X3_ADD1_IfcSlab_type,IFC4X3_ADD1_IfcStair_type,IFC4X3_ADD1_IfcStairFlight_type,IFC4X3_ADD1_IfcTrackElement_type,IFC4X3_ADD1_IfcWall_type,IFC4X3_ADD1_IfcWindow_type + }); + IFC4X3_ADD1_IfcBuiltElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcBeamType_type,IFC4X3_ADD1_IfcBearingType_type,IFC4X3_ADD1_IfcBuildingElementProxyType_type,IFC4X3_ADD1_IfcChimneyType_type,IFC4X3_ADD1_IfcColumnType_type,IFC4X3_ADD1_IfcCourseType_type,IFC4X3_ADD1_IfcCoveringType_type,IFC4X3_ADD1_IfcCurtainWallType_type,IFC4X3_ADD1_IfcDeepFoundationType_type,IFC4X3_ADD1_IfcDoorType_type,IFC4X3_ADD1_IfcFootingType_type,IFC4X3_ADD1_IfcKerbType_type,IFC4X3_ADD1_IfcMemberType_type,IFC4X3_ADD1_IfcMooringDeviceType_type,IFC4X3_ADD1_IfcNavigationElementType_type,IFC4X3_ADD1_IfcPavementType_type,IFC4X3_ADD1_IfcPlateType_type,IFC4X3_ADD1_IfcRailType_type,IFC4X3_ADD1_IfcRailingType_type,IFC4X3_ADD1_IfcRampFlightType_type,IFC4X3_ADD1_IfcRampType_type,IFC4X3_ADD1_IfcRoofType_type,IFC4X3_ADD1_IfcShadingDeviceType_type,IFC4X3_ADD1_IfcSlabType_type,IFC4X3_ADD1_IfcStairFlightType_type,IFC4X3_ADD1_IfcStairType_type,IFC4X3_ADD1_IfcTrackElementType_type,IFC4X3_ADD1_IfcWallType_type,IFC4X3_ADD1_IfcWindowType_type + }); + IFC4X3_ADD1_IfcSurfaceTexture_type->set_subtypes({ + IFC4X3_ADD1_IfcBlobTexture_type,IFC4X3_ADD1_IfcImageTexture_type,IFC4X3_ADD1_IfcPixelTexture_type + }); + IFC4X3_ADD1_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X3_ADD1_IfcBlock_type,IFC4X3_ADD1_IfcRectangularPyramid_type,IFC4X3_ADD1_IfcRightCircularCone_type,IFC4X3_ADD1_IfcRightCircularCylinder_type,IFC4X3_ADD1_IfcSphere_type + }); + IFC4X3_ADD1_IfcBooleanResult_type->set_subtypes({ + IFC4X3_ADD1_IfcBooleanClippingResult_type + }); + IFC4X3_ADD1_IfcGeotechnicalAssembly_type->set_subtypes({ + IFC4X3_ADD1_IfcBorehole_type,IFC4X3_ADD1_IfcGeomodel_type,IFC4X3_ADD1_IfcGeoslice_type + }); + IFC4X3_ADD1_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X3_ADD1_IfcBoundaryCurve_type + }); + IFC4X3_ADD1_IfcBoundaryCondition_type->set_subtypes({ + IFC4X3_ADD1_IfcBoundaryEdgeCondition_type,IFC4X3_ADD1_IfcBoundaryFaceCondition_type,IFC4X3_ADD1_IfcBoundaryNodeCondition_type + }); + IFC4X3_ADD1_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type + }); + IFC4X3_ADD1_IfcCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcBoundedCurve_type,IFC4X3_ADD1_IfcConic_type,IFC4X3_ADD1_IfcLine_type,IFC4X3_ADD1_IfcOffsetCurve_type,IFC4X3_ADD1_IfcPcurve_type,IFC4X3_ADD1_IfcPolynomialCurve_type,IFC4X3_ADD1_IfcSpiral_type,IFC4X3_ADD1_IfcSurfaceCurve_type + }); + IFC4X3_ADD1_IfcSurface_type->set_subtypes({ + IFC4X3_ADD1_IfcBoundedSurface_type,IFC4X3_ADD1_IfcElementarySurface_type,IFC4X3_ADD1_IfcSectionedSurface_type,IFC4X3_ADD1_IfcSweptSurface_type + }); + IFC4X3_ADD1_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcBoxedHalfSpace_type,IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X3_ADD1_IfcFacility_type->set_subtypes({ + IFC4X3_ADD1_IfcBridge_type,IFC4X3_ADD1_IfcBuilding_type,IFC4X3_ADD1_IfcMarineFacility_type,IFC4X3_ADD1_IfcRailway_type,IFC4X3_ADD1_IfcRoad_type + }); + IFC4X3_ADD1_IfcFacilityPart_type->set_subtypes({ + IFC4X3_ADD1_IfcBridgePart_type,IFC4X3_ADD1_IfcFacilityPartCommon_type,IFC4X3_ADD1_IfcMarinePart_type,IFC4X3_ADD1_IfcRailwayPart_type,IFC4X3_ADD1_IfcRoadPart_type + }); + IFC4X3_ADD1_IfcElementComponent_type->set_subtypes({ + IFC4X3_ADD1_IfcBuildingElementPart_type,IFC4X3_ADD1_IfcDiscreteAccessory_type,IFC4X3_ADD1_IfcFastener_type,IFC4X3_ADD1_IfcImpactProtectionDevice_type,IFC4X3_ADD1_IfcMechanicalFastener_type,IFC4X3_ADD1_IfcReinforcingElement_type,IFC4X3_ADD1_IfcSign_type,IFC4X3_ADD1_IfcVibrationDamper_type,IFC4X3_ADD1_IfcVibrationIsolator_type + }); + IFC4X3_ADD1_IfcElementComponentType_type->set_subtypes({ + IFC4X3_ADD1_IfcBuildingElementPartType_type,IFC4X3_ADD1_IfcDiscreteAccessoryType_type,IFC4X3_ADD1_IfcFastenerType_type,IFC4X3_ADD1_IfcImpactProtectionDeviceType_type,IFC4X3_ADD1_IfcMechanicalFastenerType_type,IFC4X3_ADD1_IfcReinforcingElementType_type,IFC4X3_ADD1_IfcSignType_type,IFC4X3_ADD1_IfcVibrationDamperType_type,IFC4X3_ADD1_IfcVibrationIsolatorType_type + }); + IFC4X3_ADD1_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X3_ADD1_IfcBuildingStorey_type,IFC4X3_ADD1_IfcFacility_type,IFC4X3_ADD1_IfcFacilityPart_type,IFC4X3_ADD1_IfcSite_type,IFC4X3_ADD1_IfcSpace_type + }); + IFC4X3_ADD1_IfcSystem_type->set_subtypes({ + IFC4X3_ADD1_IfcBuildingSystem_type,IFC4X3_ADD1_IfcBuiltSystem_type,IFC4X3_ADD1_IfcDistributionSystem_type,IFC4X3_ADD1_IfcStructuralAnalysisModel_type,IFC4X3_ADD1_IfcZone_type + }); + IFC4X3_ADD1_IfcElement_type->set_subtypes({ + IFC4X3_ADD1_IfcBuiltElement_type,IFC4X3_ADD1_IfcCivilElement_type,IFC4X3_ADD1_IfcDistributionElement_type,IFC4X3_ADD1_IfcElementAssembly_type,IFC4X3_ADD1_IfcElementComponent_type,IFC4X3_ADD1_IfcFeatureElement_type,IFC4X3_ADD1_IfcFurnishingElement_type,IFC4X3_ADD1_IfcGeographicElement_type,IFC4X3_ADD1_IfcGeotechnicalElement_type,IFC4X3_ADD1_IfcTransportationDevice_type,IFC4X3_ADD1_IfcVirtualElement_type + }); + IFC4X3_ADD1_IfcElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcBuiltElementType_type,IFC4X3_ADD1_IfcCivilElementType_type,IFC4X3_ADD1_IfcDistributionElementType_type,IFC4X3_ADD1_IfcElementAssemblyType_type,IFC4X3_ADD1_IfcElementComponentType_type,IFC4X3_ADD1_IfcFurnishingElementType_type,IFC4X3_ADD1_IfcGeographicElementType_type,IFC4X3_ADD1_IfcTransportationDeviceType_type + }); + IFC4X3_ADD1_IfcFlowFitting_type->set_subtypes({ + IFC4X3_ADD1_IfcCableCarrierFitting_type,IFC4X3_ADD1_IfcCableFitting_type,IFC4X3_ADD1_IfcDuctFitting_type,IFC4X3_ADD1_IfcJunctionBox_type,IFC4X3_ADD1_IfcPipeFitting_type + }); + IFC4X3_ADD1_IfcFlowFittingType_type->set_subtypes({ + IFC4X3_ADD1_IfcCableCarrierFittingType_type,IFC4X3_ADD1_IfcCableFittingType_type,IFC4X3_ADD1_IfcDuctFittingType_type,IFC4X3_ADD1_IfcJunctionBoxType_type,IFC4X3_ADD1_IfcPipeFittingType_type + }); + IFC4X3_ADD1_IfcFlowSegment_type->set_subtypes({ + IFC4X3_ADD1_IfcCableCarrierSegment_type,IFC4X3_ADD1_IfcCableSegment_type,IFC4X3_ADD1_IfcConveyorSegment_type,IFC4X3_ADD1_IfcDuctSegment_type,IFC4X3_ADD1_IfcPipeSegment_type + }); + IFC4X3_ADD1_IfcFlowSegmentType_type->set_subtypes({ + IFC4X3_ADD1_IfcCableCarrierSegmentType_type,IFC4X3_ADD1_IfcCableSegmentType_type,IFC4X3_ADD1_IfcConveyorSegmentType_type,IFC4X3_ADD1_IfcDuctSegmentType_type,IFC4X3_ADD1_IfcPipeSegmentType_type + }); + IFC4X3_ADD1_IfcDeepFoundation_type->set_subtypes({ + IFC4X3_ADD1_IfcCaissonFoundation_type,IFC4X3_ADD1_IfcPile_type + }); + IFC4X3_ADD1_IfcDeepFoundationType_type->set_subtypes({ + IFC4X3_ADD1_IfcCaissonFoundationType_type,IFC4X3_ADD1_IfcPileType_type + }); + IFC4X3_ADD1_IfcPoint_type->set_subtypes({ + IFC4X3_ADD1_IfcCartesianPoint_type,IFC4X3_ADD1_IfcPointByDistanceExpression_type,IFC4X3_ADD1_IfcPointOnCurve_type,IFC4X3_ADD1_IfcPointOnSurface_type + }); + IFC4X3_ADD1_IfcCartesianPointList_type->set_subtypes({ + IFC4X3_ADD1_IfcCartesianPointList2D_type,IFC4X3_ADD1_IfcCartesianPointList3D_type + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type,IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcCenterLineProfileDef_type + }); + IFC4X3_ADD1_IfcConic_type->set_subtypes({ + IFC4X3_ADD1_IfcCircle_type,IFC4X3_ADD1_IfcEllipse_type + }); + IFC4X3_ADD1_IfcCircleProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcCircleHollowProfileDef_type + }); + IFC4X3_ADD1_IfcExternalInformation_type->set_subtypes({ + IFC4X3_ADD1_IfcClassification_type,IFC4X3_ADD1_IfcDocumentInformation_type,IFC4X3_ADD1_IfcLibraryInformation_type + }); + IFC4X3_ADD1_IfcExternalReference_type->set_subtypes({ + IFC4X3_ADD1_IfcClassificationReference_type,IFC4X3_ADD1_IfcDocumentReference_type,IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type,IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type,IFC4X3_ADD1_IfcExternallyDefinedTextFont_type,IFC4X3_ADD1_IfcLibraryReference_type + }); + IFC4X3_ADD1_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X3_ADD1_IfcClosedShell_type,IFC4X3_ADD1_IfcOpenShell_type + }); + IFC4X3_ADD1_IfcSpiral_type->set_subtypes({ + IFC4X3_ADD1_IfcClothoid_type,IFC4X3_ADD1_IfcCosineSpiral_type,IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type,IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type,IFC4X3_ADD1_IfcSineSpiral_type,IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type + }); + IFC4X3_ADD1_IfcColourSpecification_type->set_subtypes({ + IFC4X3_ADD1_IfcColourRgb_type + }); + IFC4X3_ADD1_IfcPresentationItem_type->set_subtypes({ + IFC4X3_ADD1_IfcColourRgbList_type,IFC4X3_ADD1_IfcColourSpecification_type,IFC4X3_ADD1_IfcCurveStyleFont_type,IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type,IFC4X3_ADD1_IfcCurveStyleFontPattern_type,IFC4X3_ADD1_IfcIndexedColourMap_type,IFC4X3_ADD1_IfcPreDefinedItem_type,IFC4X3_ADD1_IfcSurfaceStyleLighting_type,IFC4X3_ADD1_IfcSurfaceStyleRefraction_type,IFC4X3_ADD1_IfcSurfaceStyleShading_type,IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type,IFC4X3_ADD1_IfcSurfaceTexture_type,IFC4X3_ADD1_IfcTextStyleForDefinedFont_type,IFC4X3_ADD1_IfcTextStyleTextModel_type,IFC4X3_ADD1_IfcTextureCoordinate_type,IFC4X3_ADD1_IfcTextureVertex_type,IFC4X3_ADD1_IfcTextureVertexList_type + }); + IFC4X3_ADD1_IfcProperty_type->set_subtypes({ + IFC4X3_ADD1_IfcComplexProperty_type,IFC4X3_ADD1_IfcSimpleProperty_type + }); + IFC4X3_ADD1_IfcPropertyTemplate_type->set_subtypes({ + IFC4X3_ADD1_IfcComplexPropertyTemplate_type,IFC4X3_ADD1_IfcSimplePropertyTemplate_type + }); + IFC4X3_ADD1_IfcCompositeCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcCompositeCurveOnSurface_type,IFC4X3_ADD1_IfcGradientCurve_type,IFC4X3_ADD1_IfcSegmentedReferenceCurve_type + }); + IFC4X3_ADD1_IfcSegment_type->set_subtypes({ + IFC4X3_ADD1_IfcCompositeCurveSegment_type,IFC4X3_ADD1_IfcCurveSegment_type + }); + IFC4X3_ADD1_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X3_ADD1_IfcCompressor_type,IFC4X3_ADD1_IfcFan_type,IFC4X3_ADD1_IfcPump_type + }); + IFC4X3_ADD1_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X3_ADD1_IfcCompressorType_type,IFC4X3_ADD1_IfcFanType_type,IFC4X3_ADD1_IfcPumpType_type + }); + IFC4X3_ADD1_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X3_ADD1_IfcConnectedFaceSet_type,IFC4X3_ADD1_IfcEdge_type,IFC4X3_ADD1_IfcFace_type,IFC4X3_ADD1_IfcFaceBound_type,IFC4X3_ADD1_IfcLoop_type,IFC4X3_ADD1_IfcPath_type,IFC4X3_ADD1_IfcVertex_type + }); + IFC4X3_ADD1_IfcConnectionGeometry_type->set_subtypes({ + IFC4X3_ADD1_IfcConnectionCurveGeometry_type,IFC4X3_ADD1_IfcConnectionPointGeometry_type,IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type,IFC4X3_ADD1_IfcConnectionVolumeGeometry_type + }); + IFC4X3_ADD1_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X3_ADD1_IfcConnectionPointEccentricity_type + }); + IFC4X3_ADD1_IfcConstructionResource_type->set_subtypes({ + IFC4X3_ADD1_IfcConstructionEquipmentResource_type,IFC4X3_ADD1_IfcConstructionMaterialResource_type,IFC4X3_ADD1_IfcConstructionProductResource_type,IFC4X3_ADD1_IfcCrewResource_type,IFC4X3_ADD1_IfcLaborResource_type,IFC4X3_ADD1_IfcSubContractResource_type + }); + IFC4X3_ADD1_IfcConstructionResourceType_type->set_subtypes({ + IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type,IFC4X3_ADD1_IfcConstructionMaterialResourceType_type,IFC4X3_ADD1_IfcConstructionProductResourceType_type,IFC4X3_ADD1_IfcCrewResourceType_type,IFC4X3_ADD1_IfcLaborResourceType_type,IFC4X3_ADD1_IfcSubContractResourceType_type + }); + IFC4X3_ADD1_IfcResource_type->set_subtypes({ + IFC4X3_ADD1_IfcConstructionResource_type + }); + IFC4X3_ADD1_IfcTypeResource_type->set_subtypes({ + IFC4X3_ADD1_IfcConstructionResourceType_type + }); + IFC4X3_ADD1_IfcObjectDefinition_type->set_subtypes({ + IFC4X3_ADD1_IfcContext_type,IFC4X3_ADD1_IfcObject_type,IFC4X3_ADD1_IfcTypeObject_type + }); + IFC4X3_ADD1_IfcNamedUnit_type->set_subtypes({ + IFC4X3_ADD1_IfcContextDependentUnit_type,IFC4X3_ADD1_IfcConversionBasedUnit_type,IFC4X3_ADD1_IfcSIUnit_type + }); + IFC4X3_ADD1_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type + }); + IFC4X3_ADD1_IfcAppliedValue_type->set_subtypes({ + IFC4X3_ADD1_IfcCostValue_type + }); + IFC4X3_ADD1_IfcSolidModel_type->set_subtypes({ + IFC4X3_ADD1_IfcCsgSolid_type,IFC4X3_ADD1_IfcManifoldSolidBrep_type,IFC4X3_ADD1_IfcSectionedSolid_type,IFC4X3_ADD1_IfcSweptAreaSolid_type,IFC4X3_ADD1_IfcSweptDiskSolid_type + }); + IFC4X3_ADD1_IfcPresentationStyle_type->set_subtypes({ + IFC4X3_ADD1_IfcCurveStyle_type,IFC4X3_ADD1_IfcFillAreaStyle_type,IFC4X3_ADD1_IfcSurfaceStyle_type,IFC4X3_ADD1_IfcTextStyle_type + }); + IFC4X3_ADD1_IfcElementarySurface_type->set_subtypes({ + IFC4X3_ADD1_IfcCylindricalSurface_type,IFC4X3_ADD1_IfcPlane_type,IFC4X3_ADD1_IfcSphericalSurface_type,IFC4X3_ADD1_IfcToroidalSurface_type + }); + IFC4X3_ADD1_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type,IFC4X3_ADD1_IfcExtrudedAreaSolid_type,IFC4X3_ADD1_IfcRevolvedAreaSolid_type + }); + IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type + }); + IFC4X3_ADD1_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X3_ADD1_IfcDistributionChamberElement_type,IFC4X3_ADD1_IfcEnergyConversionDevice_type,IFC4X3_ADD1_IfcFlowController_type,IFC4X3_ADD1_IfcFlowFitting_type,IFC4X3_ADD1_IfcFlowMovingDevice_type,IFC4X3_ADD1_IfcFlowSegment_type,IFC4X3_ADD1_IfcFlowStorageDevice_type,IFC4X3_ADD1_IfcFlowTerminal_type,IFC4X3_ADD1_IfcFlowTreatmentDevice_type + }); + IFC4X3_ADD1_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcDistributionChamberElementType_type,IFC4X3_ADD1_IfcEnergyConversionDeviceType_type,IFC4X3_ADD1_IfcFlowControllerType_type,IFC4X3_ADD1_IfcFlowFittingType_type,IFC4X3_ADD1_IfcFlowMovingDeviceType_type,IFC4X3_ADD1_IfcFlowSegmentType_type,IFC4X3_ADD1_IfcFlowStorageDeviceType_type,IFC4X3_ADD1_IfcFlowTerminalType_type,IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type + }); + IFC4X3_ADD1_IfcDistributionSystem_type->set_subtypes({ + IFC4X3_ADD1_IfcDistributionCircuit_type + }); + IFC4X3_ADD1_IfcDistributionElement_type->set_subtypes({ + IFC4X3_ADD1_IfcDistributionControlElement_type,IFC4X3_ADD1_IfcDistributionFlowElement_type + }); + IFC4X3_ADD1_IfcDistributionElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcDistributionControlElementType_type,IFC4X3_ADD1_IfcDistributionFlowElementType_type + }); + IFC4X3_ADD1_IfcPort_type->set_subtypes({ + IFC4X3_ADD1_IfcDistributionPort_type + }); + IFC4X3_ADD1_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X3_ADD1_IfcDoorLiningProperties_type,IFC4X3_ADD1_IfcDoorPanelProperties_type,IFC4X3_ADD1_IfcPermeableCoveringProperties_type,IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type,IFC4X3_ADD1_IfcWindowLiningProperties_type,IFC4X3_ADD1_IfcWindowPanelProperties_type + }); + IFC4X3_ADD1_IfcPreDefinedColour_type->set_subtypes({ + IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type + }); + IFC4X3_ADD1_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X3_ADD1_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X3_ADD1_IfcDuctSilencer_type,IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type,IFC4X3_ADD1_IfcFilter_type,IFC4X3_ADD1_IfcInterceptor_type + }); + IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X3_ADD1_IfcDuctSilencerType_type,IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type,IFC4X3_ADD1_IfcFilterType_type,IFC4X3_ADD1_IfcInterceptorType_type + }); + IFC4X3_ADD1_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X3_ADD1_IfcEarthworksCut_type,IFC4X3_ADD1_IfcOpeningElement_type,IFC4X3_ADD1_IfcVoidingFeature_type + }); + IFC4X3_ADD1_IfcEarthworksElement_type->set_subtypes({ + IFC4X3_ADD1_IfcEarthworksFill_type,IFC4X3_ADD1_IfcReinforcedSoil_type + }); + IFC4X3_ADD1_IfcEdge_type->set_subtypes({ + IFC4X3_ADD1_IfcEdgeCurve_type,IFC4X3_ADD1_IfcOrientedEdge_type,IFC4X3_ADD1_IfcSubedge_type + }); + IFC4X3_ADD1_IfcLoop_type->set_subtypes({ + IFC4X3_ADD1_IfcEdgeLoop_type,IFC4X3_ADD1_IfcPolyLoop_type,IFC4X3_ADD1_IfcVertexLoop_type + }); + IFC4X3_ADD1_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X3_ADD1_IfcElectricFlowStorageDevice_type,IFC4X3_ADD1_IfcTank_type + }); + IFC4X3_ADD1_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type,IFC4X3_ADD1_IfcTankType_type + }); + IFC4X3_ADD1_IfcQuantitySet_type->set_subtypes({ + IFC4X3_ADD1_IfcElementQuantity_type + }); + IFC4X3_ADD1_IfcTypeProduct_type->set_subtypes({ + IFC4X3_ADD1_IfcElementType_type,IFC4X3_ADD1_IfcSpatialElementType_type + }); + IFC4X3_ADD1_IfcProcess_type->set_subtypes({ + IFC4X3_ADD1_IfcEvent_type,IFC4X3_ADD1_IfcProcedure_type,IFC4X3_ADD1_IfcTask_type + }); + IFC4X3_ADD1_IfcSchedulingTime_type->set_subtypes({ + IFC4X3_ADD1_IfcEventTime_type,IFC4X3_ADD1_IfcLagTime_type,IFC4X3_ADD1_IfcResourceTime_type,IFC4X3_ADD1_IfcTaskTime_type,IFC4X3_ADD1_IfcWorkTime_type + }); + IFC4X3_ADD1_IfcTypeProcess_type->set_subtypes({ + IFC4X3_ADD1_IfcEventType_type,IFC4X3_ADD1_IfcProcedureType_type,IFC4X3_ADD1_IfcTaskType_type + }); + IFC4X3_ADD1_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X3_ADD1_IfcExtendedProperties_type,IFC4X3_ADD1_IfcPreDefinedProperties_type,IFC4X3_ADD1_IfcProperty_type,IFC4X3_ADD1_IfcPropertyEnumeration_type + }); + IFC4X3_ADD1_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X3_ADD1_IfcExternalSpatialElement_type + }); + IFC4X3_ADD1_IfcSpatialElement_type->set_subtypes({ + IFC4X3_ADD1_IfcExternalSpatialStructureElement_type,IFC4X3_ADD1_IfcSpatialStructureElement_type,IFC4X3_ADD1_IfcSpatialZone_type + }); + IFC4X3_ADD1_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type + }); + IFC4X3_ADD1_IfcFaceBound_type->set_subtypes({ + IFC4X3_ADD1_IfcFaceOuterBound_type + }); + IFC4X3_ADD1_IfcFace_type->set_subtypes({ + IFC4X3_ADD1_IfcFaceSurface_type + }); + IFC4X3_ADD1_IfcFacetedBrep_type->set_subtypes({ + IFC4X3_ADD1_IfcFacetedBrepWithVoids_type + }); + IFC4X3_ADD1_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X3_ADD1_IfcFailureConnectionCondition_type,IFC4X3_ADD1_IfcSlippageConnectionCondition_type + }); + IFC4X3_ADD1_IfcFeatureElement_type->set_subtypes({ + IFC4X3_ADD1_IfcFeatureElementAddition_type,IFC4X3_ADD1_IfcFeatureElementSubtraction_type,IFC4X3_ADD1_IfcSurfaceFeature_type + }); + IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type,IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X3_ADD1_IfcFurnishingElement_type->set_subtypes({ + IFC4X3_ADD1_IfcFurniture_type,IFC4X3_ADD1_IfcSystemFurnitureElement_type + }); + IFC4X3_ADD1_IfcFurnishingElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcFurnitureType_type,IFC4X3_ADD1_IfcSystemFurnitureElementType_type + }); + IFC4X3_ADD1_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X3_ADD1_IfcGeographicCRS_type,IFC4X3_ADD1_IfcProjectedCRS_type + }); + IFC4X3_ADD1_IfcGeometricSet_type->set_subtypes({ + IFC4X3_ADD1_IfcGeometricCurveSet_type + }); + IFC4X3_ADD1_IfcRepresentationContext_type->set_subtypes({ + IFC4X3_ADD1_IfcGeometricRepresentationContext_type + }); + IFC4X3_ADD1_IfcRepresentationItem_type->set_subtypes({ + IFC4X3_ADD1_IfcGeometricRepresentationItem_type,IFC4X3_ADD1_IfcMappedItem_type,IFC4X3_ADD1_IfcStyledItem_type,IFC4X3_ADD1_IfcTopologicalRepresentationItem_type + }); + IFC4X3_ADD1_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type + }); + IFC4X3_ADD1_IfcGeotechnicalElement_type->set_subtypes({ + IFC4X3_ADD1_IfcGeotechnicalAssembly_type,IFC4X3_ADD1_IfcGeotechnicalStratum_type + }); + IFC4X3_ADD1_IfcPositioningElement_type->set_subtypes({ + IFC4X3_ADD1_IfcGrid_type,IFC4X3_ADD1_IfcLinearPositioningElement_type,IFC4X3_ADD1_IfcReferent_type + }); + IFC4X3_ADD1_IfcObjectPlacement_type->set_subtypes({ + IFC4X3_ADD1_IfcGridPlacement_type,IFC4X3_ADD1_IfcLinearPlacement_type,IFC4X3_ADD1_IfcLocalPlacement_type + }); + IFC4X3_ADD1_IfcTessellatedItem_type->set_subtypes({ + IFC4X3_ADD1_IfcIndexedPolygonalFace_type,IFC4X3_ADD1_IfcTessellatedFaceSet_type + }); + IFC4X3_ADD1_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X3_ADD1_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type,IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type + }); + IFC4X3_ADD1_IfcTextureCoordinate_type->set_subtypes({ + IFC4X3_ADD1_IfcIndexedTextureMap_type,IFC4X3_ADD1_IfcTextureCoordinateGenerator_type,IFC4X3_ADD1_IfcTextureMap_type + }); + IFC4X3_ADD1_IfcSurfaceCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcIntersectionCurve_type,IFC4X3_ADD1_IfcSeamCurve_type + }); + IFC4X3_ADD1_IfcTimeSeries_type->set_subtypes({ + IFC4X3_ADD1_IfcIrregularTimeSeries_type,IFC4X3_ADD1_IfcRegularTimeSeries_type + }); + IFC4X3_ADD1_IfcLightSource_type->set_subtypes({ + IFC4X3_ADD1_IfcLightSourceAmbient_type,IFC4X3_ADD1_IfcLightSourceDirectional_type,IFC4X3_ADD1_IfcLightSourceGoniometric_type,IFC4X3_ADD1_IfcLightSourcePositional_type + }); + IFC4X3_ADD1_IfcLightSourcePositional_type->set_subtypes({ + IFC4X3_ADD1_IfcLightSourceSpot_type + }); + IFC4X3_ADD1_IfcCoordinateOperation_type->set_subtypes({ + IFC4X3_ADD1_IfcMapConversion_type,IFC4X3_ADD1_IfcRigidOperation_type + }); + IFC4X3_ADD1_IfcMapConversion_type->set_subtypes({ + IFC4X3_ADD1_IfcMapConversionScaled_type + }); + IFC4X3_ADD1_IfcMaterialDefinition_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterial_type,IFC4X3_ADD1_IfcMaterialConstituent_type,IFC4X3_ADD1_IfcMaterialConstituentSet_type,IFC4X3_ADD1_IfcMaterialLayer_type,IFC4X3_ADD1_IfcMaterialLayerSet_type,IFC4X3_ADD1_IfcMaterialProfile_type,IFC4X3_ADD1_IfcMaterialProfileSet_type + }); + IFC4X3_ADD1_IfcProductRepresentation_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type,IFC4X3_ADD1_IfcProductDefinitionShape_type + }); + IFC4X3_ADD1_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterialLayerSetUsage_type,IFC4X3_ADD1_IfcMaterialProfileSetUsage_type + }); + IFC4X3_ADD1_IfcMaterialLayer_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type + }); + IFC4X3_ADD1_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X3_ADD1_IfcMaterialProfile_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type + }); + IFC4X3_ADD1_IfcExtendedProperties_type->set_subtypes({ + IFC4X3_ADD1_IfcMaterialProperties_type,IFC4X3_ADD1_IfcProfileProperties_type + }); + IFC4X3_ADD1_IfcConstraint_type->set_subtypes({ + IFC4X3_ADD1_IfcMetric_type,IFC4X3_ADD1_IfcObjective_type + }); + IFC4X3_ADD1_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcMirroredProfileDef_type + }); + IFC4X3_ADD1_IfcRoot_type->set_subtypes({ + IFC4X3_ADD1_IfcObjectDefinition_type,IFC4X3_ADD1_IfcPropertyDefinition_type,IFC4X3_ADD1_IfcRelationship_type + }); + IFC4X3_ADD1_IfcActor_type->set_subtypes({ + IFC4X3_ADD1_IfcOccupant_type + }); + IFC4X3_ADD1_IfcOffsetCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcOffsetCurve2D_type,IFC4X3_ADD1_IfcOffsetCurve3D_type,IFC4X3_ADD1_IfcOffsetCurveByDistances_type + }); + IFC4X3_ADD1_IfcBoundaryCurve_type->set_subtypes({ + IFC4X3_ADD1_IfcOuterBoundaryCurve_type + }); + IFC4X3_ADD1_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X3_ADD1_IfcPhysicalComplexQuantity_type,IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type + }); + IFC4X3_ADD1_IfcPlanarExtent_type->set_subtypes({ + IFC4X3_ADD1_IfcPlanarBox_type + }); + IFC4X3_ADD1_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X3_ADD1_IfcPolygonalFaceSet_type,IFC4X3_ADD1_IfcTriangulatedFaceSet_type + }); + IFC4X3_ADD1_IfcAddress_type->set_subtypes({ + IFC4X3_ADD1_IfcPostalAddress_type,IFC4X3_ADD1_IfcTelecomAddress_type + }); + IFC4X3_ADD1_IfcPreDefinedItem_type->set_subtypes({ + IFC4X3_ADD1_IfcPreDefinedColour_type,IFC4X3_ADD1_IfcPreDefinedCurveFont_type,IFC4X3_ADD1_IfcPreDefinedTextFont_type + }); + IFC4X3_ADD1_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X3_ADD1_IfcPreDefinedPropertySet_type,IFC4X3_ADD1_IfcPropertySet_type,IFC4X3_ADD1_IfcQuantitySet_type + }); + IFC4X3_ADD1_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X3_ADD1_IfcPresentationLayerWithStyle_type + }); + IFC4X3_ADD1_IfcContext_type->set_subtypes({ + IFC4X3_ADD1_IfcProject_type,IFC4X3_ADD1_IfcProjectLibrary_type + }); + IFC4X3_ADD1_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X3_ADD1_IfcProjectionElement_type + }); + IFC4X3_ADD1_IfcSimpleProperty_type->set_subtypes({ + IFC4X3_ADD1_IfcPropertyBoundedValue_type,IFC4X3_ADD1_IfcPropertyEnumeratedValue_type,IFC4X3_ADD1_IfcPropertyListValue_type,IFC4X3_ADD1_IfcPropertyReferenceValue_type,IFC4X3_ADD1_IfcPropertySingleValue_type,IFC4X3_ADD1_IfcPropertyTableValue_type + }); + IFC4X3_ADD1_IfcPropertyDefinition_type->set_subtypes({ + IFC4X3_ADD1_IfcPropertySetDefinition_type,IFC4X3_ADD1_IfcPropertyTemplateDefinition_type + }); + IFC4X3_ADD1_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X3_ADD1_IfcPropertySetTemplate_type,IFC4X3_ADD1_IfcPropertyTemplate_type + }); + IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X3_ADD1_IfcQuantityArea_type,IFC4X3_ADD1_IfcQuantityCount_type,IFC4X3_ADD1_IfcQuantityLength_type,IFC4X3_ADD1_IfcQuantityNumber_type,IFC4X3_ADD1_IfcQuantityTime_type,IFC4X3_ADD1_IfcQuantityVolume_type,IFC4X3_ADD1_IfcQuantityWeight_type + }); + IFC4X3_ADD1_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X3_ADD1_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X3_ADD1_IfcRectangleHollowProfileDef_type,IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type + }); + IFC4X3_ADD1_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X3_ADD1_IfcReinforcementBarProperties_type,IFC4X3_ADD1_IfcSectionProperties_type,IFC4X3_ADD1_IfcSectionReinforcementProperties_type + }); + IFC4X3_ADD1_IfcReinforcingElement_type->set_subtypes({ + IFC4X3_ADD1_IfcReinforcingBar_type,IFC4X3_ADD1_IfcReinforcingMesh_type,IFC4X3_ADD1_IfcTendon_type,IFC4X3_ADD1_IfcTendonAnchor_type,IFC4X3_ADD1_IfcTendonConduit_type + }); + IFC4X3_ADD1_IfcReinforcingElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcReinforcingBarType_type,IFC4X3_ADD1_IfcReinforcingMeshType_type,IFC4X3_ADD1_IfcTendonAnchorType_type,IFC4X3_ADD1_IfcTendonConduitType_type,IFC4X3_ADD1_IfcTendonType_type + }); + IFC4X3_ADD1_IfcRelDecomposes_type->set_subtypes({ + IFC4X3_ADD1_IfcRelAdheresToElement_type,IFC4X3_ADD1_IfcRelAggregates_type,IFC4X3_ADD1_IfcRelNests_type,IFC4X3_ADD1_IfcRelProjectsElement_type,IFC4X3_ADD1_IfcRelVoidsElement_type + }); + IFC4X3_ADD1_IfcRelationship_type->set_subtypes({ + IFC4X3_ADD1_IfcRelAssigns_type,IFC4X3_ADD1_IfcRelAssociates_type,IFC4X3_ADD1_IfcRelConnects_type,IFC4X3_ADD1_IfcRelDeclares_type,IFC4X3_ADD1_IfcRelDecomposes_type,IFC4X3_ADD1_IfcRelDefines_type + }); + IFC4X3_ADD1_IfcRelAssigns_type->set_subtypes({ + IFC4X3_ADD1_IfcRelAssignsToActor_type,IFC4X3_ADD1_IfcRelAssignsToControl_type,IFC4X3_ADD1_IfcRelAssignsToGroup_type,IFC4X3_ADD1_IfcRelAssignsToProcess_type,IFC4X3_ADD1_IfcRelAssignsToProduct_type,IFC4X3_ADD1_IfcRelAssignsToResource_type + }); + IFC4X3_ADD1_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type + }); + IFC4X3_ADD1_IfcRelAssociates_type->set_subtypes({ + IFC4X3_ADD1_IfcRelAssociatesApproval_type,IFC4X3_ADD1_IfcRelAssociatesClassification_type,IFC4X3_ADD1_IfcRelAssociatesConstraint_type,IFC4X3_ADD1_IfcRelAssociatesDocument_type,IFC4X3_ADD1_IfcRelAssociatesLibrary_type,IFC4X3_ADD1_IfcRelAssociatesMaterial_type,IFC4X3_ADD1_IfcRelAssociatesProfileDef_type + }); + IFC4X3_ADD1_IfcRelConnects_type->set_subtypes({ + IFC4X3_ADD1_IfcRelConnectsElements_type,IFC4X3_ADD1_IfcRelConnectsPortToElement_type,IFC4X3_ADD1_IfcRelConnectsPorts_type,IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type,IFC4X3_ADD1_IfcRelConnectsStructuralMember_type,IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type,IFC4X3_ADD1_IfcRelCoversBldgElements_type,IFC4X3_ADD1_IfcRelCoversSpaces_type,IFC4X3_ADD1_IfcRelFillsElement_type,IFC4X3_ADD1_IfcRelFlowControlElements_type,IFC4X3_ADD1_IfcRelInterferesElements_type,IFC4X3_ADD1_IfcRelPositions_type,IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type,IFC4X3_ADD1_IfcRelSequence_type,IFC4X3_ADD1_IfcRelServicesBuildings_type,IFC4X3_ADD1_IfcRelSpaceBoundary_type + }); + IFC4X3_ADD1_IfcRelConnectsElements_type->set_subtypes({ + IFC4X3_ADD1_IfcRelConnectsPathElements_type,IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type + }); + IFC4X3_ADD1_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type + }); + IFC4X3_ADD1_IfcRelDefines_type->set_subtypes({ + IFC4X3_ADD1_IfcRelDefinesByObject_type,IFC4X3_ADD1_IfcRelDefinesByProperties_type,IFC4X3_ADD1_IfcRelDefinesByTemplate_type,IFC4X3_ADD1_IfcRelDefinesByType_type + }); + IFC4X3_ADD1_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X3_ADD1_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X3_ADD1_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type + }); + IFC4X3_ADD1_IfcSectionedSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcSectionedSolidHorizontal_type + }); + IFC4X3_ADD1_IfcRepresentation_type->set_subtypes({ + IFC4X3_ADD1_IfcShapeModel_type,IFC4X3_ADD1_IfcStyleModel_type + }); + IFC4X3_ADD1_IfcShapeModel_type->set_subtypes({ + IFC4X3_ADD1_IfcShapeRepresentation_type,IFC4X3_ADD1_IfcTopologyRepresentation_type + }); + IFC4X3_ADD1_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcSpaceType_type + }); + IFC4X3_ADD1_IfcSpatialElementType_type->set_subtypes({ + IFC4X3_ADD1_IfcSpatialStructureElementType_type,IFC4X3_ADD1_IfcSpatialZoneType_type + }); + IFC4X3_ADD1_IfcStructuralActivity_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralAction_type,IFC4X3_ADD1_IfcStructuralReaction_type + }); + IFC4X3_ADD1_IfcStructuralItem_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralConnection_type,IFC4X3_ADD1_IfcStructuralMember_type + }); + IFC4X3_ADD1_IfcStructuralAction_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralCurveAction_type,IFC4X3_ADD1_IfcStructuralPointAction_type,IFC4X3_ADD1_IfcStructuralSurfaceAction_type + }); + IFC4X3_ADD1_IfcStructuralConnection_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralCurveConnection_type,IFC4X3_ADD1_IfcStructuralPointConnection_type,IFC4X3_ADD1_IfcStructuralSurfaceConnection_type + }); + IFC4X3_ADD1_IfcStructuralMember_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralCurveMember_type,IFC4X3_ADD1_IfcStructuralSurfaceMember_type + }); + IFC4X3_ADD1_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type + }); + IFC4X3_ADD1_IfcStructuralReaction_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralCurveReaction_type,IFC4X3_ADD1_IfcStructuralPointReaction_type,IFC4X3_ADD1_IfcStructuralSurfaceReaction_type + }); + IFC4X3_ADD1_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLinearAction_type + }); + IFC4X3_ADD1_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLoadCase_type + }); + IFC4X3_ADD1_IfcStructuralLoad_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLoadConfiguration_type,IFC4X3_ADD1_IfcStructuralLoadOrResult_type + }); + IFC4X3_ADD1_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLoadLinearForce_type,IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type,IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type,IFC4X3_ADD1_IfcStructuralLoadSingleForce_type,IFC4X3_ADD1_IfcStructuralLoadTemperature_type + }); + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X3_ADD1_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X3_ADD1_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralLoadStatic_type,IFC4X3_ADD1_IfcSurfaceReinforcementArea_type + }); + IFC4X3_ADD1_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralPlanarAction_type + }); + IFC4X3_ADD1_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X3_ADD1_IfcStyleModel_type->set_subtypes({ + IFC4X3_ADD1_IfcStyledRepresentation_type + }); + IFC4X3_ADD1_IfcSweptSurface_type->set_subtypes({ + IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type,IFC4X3_ADD1_IfcSurfaceOfRevolution_type + }); + IFC4X3_ADD1_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X3_ADD1_IfcSurfaceStyleRendering_type + }); + IFC4X3_ADD1_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type + }); + IFC4X3_ADD1_IfcTaskTime_type->set_subtypes({ + IFC4X3_ADD1_IfcTaskTimeRecurring_type + }); + IFC4X3_ADD1_IfcTextLiteral_type->set_subtypes({ + IFC4X3_ADD1_IfcTextLiteralWithExtent_type + }); + IFC4X3_ADD1_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X3_ADD1_IfcTextStyleFontModel_type + }); + IFC4X3_ADD1_IfcTextureCoordinateIndices_type->set_subtypes({ + IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type + }); + IFC4X3_ADD1_IfcTransportationDevice_type->set_subtypes({ + IFC4X3_ADD1_IfcTransportElement_type,IFC4X3_ADD1_IfcVehicle_type + }); + IFC4X3_ADD1_IfcTransportationDeviceType_type->set_subtypes({ + IFC4X3_ADD1_IfcTransportElementType_type,IFC4X3_ADD1_IfcVehicleType_type + }); + IFC4X3_ADD1_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type + }); + IFC4X3_ADD1_IfcTypeObject_type->set_subtypes({ + IFC4X3_ADD1_IfcTypeProcess_type,IFC4X3_ADD1_IfcTypeProduct_type,IFC4X3_ADD1_IfcTypeResource_type + }); + IFC4X3_ADD1_IfcVertex_type->set_subtypes({ + IFC4X3_ADD1_IfcVertexPoint_type + }); + IFC4X3_ADD1_IfcWall_type->set_subtypes({ + IFC4X3_ADD1_IfcWallStandardCase_type + }); + IFC4X3_ADD1_IfcWorkControl_type->set_subtypes({ + IFC4X3_ADD1_IfcWorkPlan_type,IFC4X3_ADD1_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1312); - declarations.push_back(IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcActionRequest_type); - declarations.push_back(IFC4X3_ADD1_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcActionTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcActor_type); - declarations.push_back(IFC4X3_ADD1_IfcActorRole_type); - declarations.push_back(IFC4X3_ADD1_IfcActorSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcActuator_type); - declarations.push_back(IFC4X3_ADD1_IfcActuatorType_type); - declarations.push_back(IFC4X3_ADD1_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAddress_type); - declarations.push_back(IFC4X3_ADD1_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAdvancedBrep_type); - declarations.push_back(IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X3_ADD1_IfcAdvancedFace_type); - declarations.push_back(IFC4X3_ADD1_IfcAirTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcAirTerminalBox_type); - declarations.push_back(IFC4X3_ADD1_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAirTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAlarm_type); - declarations.push_back(IFC4X3_ADD1_IfcAlarmType_type); - declarations.push_back(IFC4X3_ADD1_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignment_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentCant_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentCantSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentHorizontal_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentParameterSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentVertical_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentVerticalSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcAnnotation_type); - declarations.push_back(IFC4X3_ADD1_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X3_ADD1_IfcAnnotationTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcApplication_type); - declarations.push_back(IFC4X3_ADD1_IfcAppliedValue_type); - declarations.push_back(IFC4X3_ADD1_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcApproval_type); - declarations.push_back(IFC4X3_ADD1_IfcApprovalRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X3_ADD1_IfcArcIndex_type); - declarations.push_back(IFC4X3_ADD1_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcAreaMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAsset_type); - declarations.push_back(IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X3_ADD1_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcAxis1Placement_type); - declarations.push_back(IFC4X3_ADD1_IfcAxis2Placement_type); - declarations.push_back(IFC4X3_ADD1_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X3_ADD1_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X3_ADD1_IfcAxis2PlacementLinear_type); - declarations.push_back(IFC4X3_ADD1_IfcBeam_type); - declarations.push_back(IFC4X3_ADD1_IfcBeamType_type); - declarations.push_back(IFC4X3_ADD1_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBearing_type); - declarations.push_back(IFC4X3_ADD1_IfcBearingType_type); - declarations.push_back(IFC4X3_ADD1_IfcBearingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcBinary_type); - declarations.push_back(IFC4X3_ADD1_IfcBlobTexture_type); - declarations.push_back(IFC4X3_ADD1_IfcBlock_type); - declarations.push_back(IFC4X3_ADD1_IfcBoiler_type); - declarations.push_back(IFC4X3_ADD1_IfcBoilerType_type); - declarations.push_back(IFC4X3_ADD1_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBoolean_type); - declarations.push_back(IFC4X3_ADD1_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X3_ADD1_IfcBooleanOperand_type); - declarations.push_back(IFC4X3_ADD1_IfcBooleanOperator_type); - declarations.push_back(IFC4X3_ADD1_IfcBooleanResult_type); - declarations.push_back(IFC4X3_ADD1_IfcBorehole_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundaryCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundaryCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundedCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundedSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcBoundingBox_type); - declarations.push_back(IFC4X3_ADD1_IfcBoxAlignment_type); - declarations.push_back(IFC4X3_ADD1_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X3_ADD1_IfcBridge_type); - declarations.push_back(IFC4X3_ADD1_IfcBridgePart_type); - declarations.push_back(IFC4X3_ADD1_IfcBridgePartTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBridgeTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBSplineCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X3_ADD1_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_ADD1_IfcBSplineSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_ADD1_IfcBuilding_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingElementPart_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingStorey_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingSystem_type); - declarations.push_back(IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBuiltElement_type); - declarations.push_back(IFC4X3_ADD1_IfcBuiltElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcBuiltSystem_type); - declarations.push_back(IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcBurner_type); - declarations.push_back(IFC4X3_ADD1_IfcBurnerType_type); - declarations.push_back(IFC4X3_ADD1_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X3_ADD1_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCableFitting_type); - declarations.push_back(IFC4X3_ADD1_IfcCableFittingType_type); - declarations.push_back(IFC4X3_ADD1_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCableSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcCableSegmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCaissonFoundation_type); - declarations.push_back(IFC4X3_ADD1_IfcCaissonFoundationType_type); - declarations.push_back(IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCardinalPointReference_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianPoint_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianPointList_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X3_ADD1_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcChangeActionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcChiller_type); - declarations.push_back(IFC4X3_ADD1_IfcChillerType_type); - declarations.push_back(IFC4X3_ADD1_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcChimney_type); - declarations.push_back(IFC4X3_ADD1_IfcChimneyType_type); - declarations.push_back(IFC4X3_ADD1_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCircle_type); - declarations.push_back(IFC4X3_ADD1_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcCircleProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcCivilElement_type); - declarations.push_back(IFC4X3_ADD1_IfcCivilElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcClassification_type); - declarations.push_back(IFC4X3_ADD1_IfcClassificationReference_type); - declarations.push_back(IFC4X3_ADD1_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcClassificationSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcClosedShell_type); - declarations.push_back(IFC4X3_ADD1_IfcClothoid_type); - declarations.push_back(IFC4X3_ADD1_IfcCoil_type); - declarations.push_back(IFC4X3_ADD1_IfcCoilType_type); - declarations.push_back(IFC4X3_ADD1_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcColour_type); - declarations.push_back(IFC4X3_ADD1_IfcColourOrFactor_type); - declarations.push_back(IFC4X3_ADD1_IfcColourRgb_type); - declarations.push_back(IFC4X3_ADD1_IfcColourRgbList_type); - declarations.push_back(IFC4X3_ADD1_IfcColourSpecification_type); - declarations.push_back(IFC4X3_ADD1_IfcColumn_type); - declarations.push_back(IFC4X3_ADD1_IfcColumnType_type); - declarations.push_back(IFC4X3_ADD1_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X3_ADD1_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcComplexNumber_type); - declarations.push_back(IFC4X3_ADD1_IfcComplexProperty_type); - declarations.push_back(IFC4X3_ADD1_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCompositeCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcCompressor_type); - declarations.push_back(IFC4X3_ADD1_IfcCompressorType_type); - declarations.push_back(IFC4X3_ADD1_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCondenser_type); - declarations.push_back(IFC4X3_ADD1_IfcCondenserType_type); - declarations.push_back(IFC4X3_ADD1_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConic_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionGeometry_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X3_ADD1_IfcConstraint_type); - declarations.push_back(IFC4X3_ADD1_IfcConstraintEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionProductResource_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionResource_type); - declarations.push_back(IFC4X3_ADD1_IfcConstructionResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcContext_type); - declarations.push_back(IFC4X3_ADD1_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcContextDependentUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcControl_type); - declarations.push_back(IFC4X3_ADD1_IfcController_type); - declarations.push_back(IFC4X3_ADD1_IfcControllerType_type); - declarations.push_back(IFC4X3_ADD1_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X3_ADD1_IfcConveyorSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcConveyorSegmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCooledBeam_type); - declarations.push_back(IFC4X3_ADD1_IfcCooledBeamType_type); - declarations.push_back(IFC4X3_ADD1_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCoolingTower_type); - declarations.push_back(IFC4X3_ADD1_IfcCoolingTowerType_type); - declarations.push_back(IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCoordinateOperation_type); - declarations.push_back(IFC4X3_ADD1_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcCosineSpiral_type); - declarations.push_back(IFC4X3_ADD1_IfcCostItem_type); - declarations.push_back(IFC4X3_ADD1_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCostSchedule_type); - declarations.push_back(IFC4X3_ADD1_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCostValue_type); - declarations.push_back(IFC4X3_ADD1_IfcCountMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcCourse_type); - declarations.push_back(IFC4X3_ADD1_IfcCourseType_type); - declarations.push_back(IFC4X3_ADD1_IfcCourseTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCovering_type); - declarations.push_back(IFC4X3_ADD1_IfcCoveringType_type); - declarations.push_back(IFC4X3_ADD1_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCrewResource_type); - declarations.push_back(IFC4X3_ADD1_IfcCrewResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X3_ADD1_IfcCsgSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcCsgSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcCurtainWall_type); - declarations.push_back(IFC4X3_ADD1_IfcCurtainWallType_type); - declarations.push_back(IFC4X3_ADD1_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveMeasureSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveOnSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveStyleFont_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X3_ADD1_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcCylindricalSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcDamper_type); - declarations.push_back(IFC4X3_ADD1_IfcDamperType_type); - declarations.push_back(IFC4X3_ADD1_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDataOriginEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDate_type); - declarations.push_back(IFC4X3_ADD1_IfcDateTime_type); - declarations.push_back(IFC4X3_ADD1_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X3_ADD1_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X3_ADD1_IfcDeepFoundation_type); - declarations.push_back(IFC4X3_ADD1_IfcDeepFoundationType_type); - declarations.push_back(IFC4X3_ADD1_IfcDefinitionSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X3_ADD1_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcDerivedUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X3_ADD1_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcDimensionalExponents_type); - declarations.push_back(IFC4X3_ADD1_IfcDimensionCount_type); - declarations.push_back(IFC4X3_ADD1_IfcDirection_type); - declarations.push_back(IFC4X3_ADD1_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X3_ADD1_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionBoard_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionBoardType_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionCircuit_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionControlElement_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionElement_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionPort_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionSystem_type); - declarations.push_back(IFC4X3_ADD1_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDocumentInformation_type); - declarations.push_back(IFC4X3_ADD1_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcDocumentReference_type); - declarations.push_back(IFC4X3_ADD1_IfcDocumentSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDoor_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorType_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctFitting_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctFittingType_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctSegmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctSilencer_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctSilencerType_type); - declarations.push_back(IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcDuration_type); - declarations.push_back(IFC4X3_ADD1_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcEarthworksCut_type); - declarations.push_back(IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcEarthworksElement_type); - declarations.push_back(IFC4X3_ADD1_IfcEarthworksFill_type); - declarations.push_back(IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcEdge_type); - declarations.push_back(IFC4X3_ADD1_IfcEdgeCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcEdgeLoop_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricAppliance_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricApplianceType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricGenerator_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricMotor_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricMotorType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricTimeControl_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcElement_type); - declarations.push_back(IFC4X3_ADD1_IfcElementarySurface_type); - declarations.push_back(IFC4X3_ADD1_IfcElementAssembly_type); - declarations.push_back(IFC4X3_ADD1_IfcElementAssemblyType_type); - declarations.push_back(IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElementComponent_type); - declarations.push_back(IFC4X3_ADD1_IfcElementComponentType_type); - declarations.push_back(IFC4X3_ADD1_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcElementQuantity_type); - declarations.push_back(IFC4X3_ADD1_IfcElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcEllipse_type); - declarations.push_back(IFC4X3_ADD1_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcEnergyMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcEngine_type); - declarations.push_back(IFC4X3_ADD1_IfcEngineType_type); - declarations.push_back(IFC4X3_ADD1_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X3_ADD1_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcEvaporator_type); - declarations.push_back(IFC4X3_ADD1_IfcEvaporatorType_type); - declarations.push_back(IFC4X3_ADD1_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcEvent_type); - declarations.push_back(IFC4X3_ADD1_IfcEventTime_type); - declarations.push_back(IFC4X3_ADD1_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcEventType_type); - declarations.push_back(IFC4X3_ADD1_IfcEventTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcExtendedProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcExternalInformation_type); - declarations.push_back(IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X3_ADD1_IfcExternalReference_type); - declarations.push_back(IFC4X3_ADD1_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X3_ADD1_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X3_ADD1_IfcFace_type); - declarations.push_back(IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X3_ADD1_IfcFaceBound_type); - declarations.push_back(IFC4X3_ADD1_IfcFaceOuterBound_type); - declarations.push_back(IFC4X3_ADD1_IfcFaceSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcFacetedBrep_type); - declarations.push_back(IFC4X3_ADD1_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X3_ADD1_IfcFacility_type); - declarations.push_back(IFC4X3_ADD1_IfcFacilityPart_type); - declarations.push_back(IFC4X3_ADD1_IfcFacilityPartCommon_type); - declarations.push_back(IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFacilityUsageEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcFan_type); - declarations.push_back(IFC4X3_ADD1_IfcFanType_type); - declarations.push_back(IFC4X3_ADD1_IfcFanTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFastener_type); - declarations.push_back(IFC4X3_ADD1_IfcFastenerType_type); - declarations.push_back(IFC4X3_ADD1_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFeatureElement_type); - declarations.push_back(IFC4X3_ADD1_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X3_ADD1_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X3_ADD1_IfcFillAreaStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X3_ADD1_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X3_ADD1_IfcFillStyleSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcFilter_type); - declarations.push_back(IFC4X3_ADD1_IfcFilterType_type); - declarations.push_back(IFC4X3_ADD1_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowController_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowControllerType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowFitting_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowFittingType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowInstrument_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowMeter_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowMeterType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowSegmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcFontStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcFontVariant_type); - declarations.push_back(IFC4X3_ADD1_IfcFontWeight_type); - declarations.push_back(IFC4X3_ADD1_IfcFooting_type); - declarations.push_back(IFC4X3_ADD1_IfcFootingType_type); - declarations.push_back(IFC4X3_ADD1_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcForceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcFurnishingElement_type); - declarations.push_back(IFC4X3_ADD1_IfcFurnishingElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcFurniture_type); - declarations.push_back(IFC4X3_ADD1_IfcFurnitureType_type); - declarations.push_back(IFC4X3_ADD1_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcGeographicCRS_type); - declarations.push_back(IFC4X3_ADD1_IfcGeographicElement_type); - declarations.push_back(IFC4X3_ADD1_IfcGeographicElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricSet_type); - declarations.push_back(IFC4X3_ADD1_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcGeomodel_type); - declarations.push_back(IFC4X3_ADD1_IfcGeoslice_type); - declarations.push_back(IFC4X3_ADD1_IfcGeotechnicalAssembly_type); - declarations.push_back(IFC4X3_ADD1_IfcGeotechnicalElement_type); - declarations.push_back(IFC4X3_ADD1_IfcGeotechnicalStratum_type); - declarations.push_back(IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X3_ADD1_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcGradientCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcGrid_type); - declarations.push_back(IFC4X3_ADD1_IfcGridAxis_type); - declarations.push_back(IFC4X3_ADD1_IfcGridPlacement_type); - declarations.push_back(IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcGridTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcGroup_type); - declarations.push_back(IFC4X3_ADD1_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcHeatExchanger_type); - declarations.push_back(IFC4X3_ADD1_IfcHeatExchangerType_type); - declarations.push_back(IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcHumidifier_type); - declarations.push_back(IFC4X3_ADD1_IfcHumidifierType_type); - declarations.push_back(IFC4X3_ADD1_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcIdentifier_type); - declarations.push_back(IFC4X3_ADD1_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcImageTexture_type); - declarations.push_back(IFC4X3_ADD1_IfcImpactProtectionDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcImpactProtectionDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedColourMap_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X3_ADD1_IfcInductanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcInteger_type); - declarations.push_back(IFC4X3_ADD1_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcInterceptor_type); - declarations.push_back(IFC4X3_ADD1_IfcInterceptorType_type); - declarations.push_back(IFC4X3_ADD1_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcInterferenceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcIntersectionCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcInventory_type); - declarations.push_back(IFC4X3_ADD1_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X3_ADD1_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcJunctionBox_type); - declarations.push_back(IFC4X3_ADD1_IfcJunctionBoxType_type); - declarations.push_back(IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcKerb_type); - declarations.push_back(IFC4X3_ADD1_IfcKerbType_type); - declarations.push_back(IFC4X3_ADD1_IfcKerbTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcKnotType_type); - declarations.push_back(IFC4X3_ADD1_IfcLabel_type); - declarations.push_back(IFC4X3_ADD1_IfcLaborResource_type); - declarations.push_back(IFC4X3_ADD1_IfcLaborResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLagTime_type); - declarations.push_back(IFC4X3_ADD1_IfcLamp_type); - declarations.push_back(IFC4X3_ADD1_IfcLampType_type); - declarations.push_back(IFC4X3_ADD1_IfcLampTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLanguageId_type); - declarations.push_back(IFC4X3_ADD1_IfcLayeredItem_type); - declarations.push_back(IFC4X3_ADD1_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLengthMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLibraryInformation_type); - declarations.push_back(IFC4X3_ADD1_IfcLibraryReference_type); - declarations.push_back(IFC4X3_ADD1_IfcLibrarySelect_type); - declarations.push_back(IFC4X3_ADD1_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLightDistributionData_type); - declarations.push_back(IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLightFixture_type); - declarations.push_back(IFC4X3_ADD1_IfcLightFixtureType_type); - declarations.push_back(IFC4X3_ADD1_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X3_ADD1_IfcLightSource_type); - declarations.push_back(IFC4X3_ADD1_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X3_ADD1_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X3_ADD1_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X3_ADD1_IfcLightSourcePositional_type); - declarations.push_back(IFC4X3_ADD1_IfcLightSourceSpot_type); - declarations.push_back(IFC4X3_ADD1_IfcLine_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearElement_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearPlacement_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLineIndex_type); - declarations.push_back(IFC4X3_ADD1_IfcLiquidTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcLiquidTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLocalPlacement_type); - declarations.push_back(IFC4X3_ADD1_IfcLogical_type); - declarations.push_back(IFC4X3_ADD1_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcLoop_type); - declarations.push_back(IFC4X3_ADD1_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X3_ADD1_IfcMapConversion_type); - declarations.push_back(IFC4X3_ADD1_IfcMapConversionScaled_type); - declarations.push_back(IFC4X3_ADD1_IfcMappedItem_type); - declarations.push_back(IFC4X3_ADD1_IfcMarineFacility_type); - declarations.push_back(IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcMarinePart_type); - declarations.push_back(IFC4X3_ADD1_IfcMarinePartTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMassMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterial_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialConstituent_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialDefinition_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialLayer_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialList_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialProfile_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X3_ADD1_IfcMeasureValue_type); - declarations.push_back(IFC4X3_ADD1_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcMechanicalFastener_type); - declarations.push_back(IFC4X3_ADD1_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcMedicalDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcMember_type); - declarations.push_back(IFC4X3_ADD1_IfcMemberType_type); - declarations.push_back(IFC4X3_ADD1_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcMetric_type); - declarations.push_back(IFC4X3_ADD1_IfcMetricValueSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type); - declarations.push_back(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type); - declarations.push_back(IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcMonetaryUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X3_ADD1_IfcMooringDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcMooringDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcMotorConnection_type); - declarations.push_back(IFC4X3_ADD1_IfcMotorConnectionType_type); - declarations.push_back(IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcNamedUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcNavigationElement_type); - declarations.push_back(IFC4X3_ADD1_IfcNavigationElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcNavigationElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcNumericMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcObject_type); - declarations.push_back(IFC4X3_ADD1_IfcObjectDefinition_type); - declarations.push_back(IFC4X3_ADD1_IfcObjective_type); - declarations.push_back(IFC4X3_ADD1_IfcObjectiveEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcObjectPlacement_type); - declarations.push_back(IFC4X3_ADD1_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcOccupant_type); - declarations.push_back(IFC4X3_ADD1_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcOffsetCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X3_ADD1_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X3_ADD1_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X3_ADD1_IfcOpenCrossProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcOpeningElement_type); - declarations.push_back(IFC4X3_ADD1_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcOpenShell_type); - declarations.push_back(IFC4X3_ADD1_IfcOrganization_type); - declarations.push_back(IFC4X3_ADD1_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcOrientedEdge_type); - declarations.push_back(IFC4X3_ADD1_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcOutlet_type); - declarations.push_back(IFC4X3_ADD1_IfcOutletType_type); - declarations.push_back(IFC4X3_ADD1_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcOwnerHistory_type); - declarations.push_back(IFC4X3_ADD1_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcParameterValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPath_type); - declarations.push_back(IFC4X3_ADD1_IfcPavement_type); - declarations.push_back(IFC4X3_ADD1_IfcPavementType_type); - declarations.push_back(IFC4X3_ADD1_IfcPavementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPcurve_type); - declarations.push_back(IFC4X3_ADD1_IfcPerformanceHistory_type); - declarations.push_back(IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcPermit_type); - declarations.push_back(IFC4X3_ADD1_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPerson_type); - declarations.push_back(IFC4X3_ADD1_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X3_ADD1_IfcPHMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X3_ADD1_IfcPile_type); - declarations.push_back(IFC4X3_ADD1_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPileType_type); - declarations.push_back(IFC4X3_ADD1_IfcPileTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPipeFitting_type); - declarations.push_back(IFC4X3_ADD1_IfcPipeFittingType_type); - declarations.push_back(IFC4X3_ADD1_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPipeSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcPipeSegmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPixelTexture_type); - declarations.push_back(IFC4X3_ADD1_IfcPlacement_type); - declarations.push_back(IFC4X3_ADD1_IfcPlanarBox_type); - declarations.push_back(IFC4X3_ADD1_IfcPlanarExtent_type); - declarations.push_back(IFC4X3_ADD1_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPlane_type); - declarations.push_back(IFC4X3_ADD1_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPlate_type); - declarations.push_back(IFC4X3_ADD1_IfcPlateType_type); - declarations.push_back(IFC4X3_ADD1_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPoint_type); - declarations.push_back(IFC4X3_ADD1_IfcPointByDistanceExpression_type); - declarations.push_back(IFC4X3_ADD1_IfcPointOnCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcPointOnSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X3_ADD1_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X3_ADD1_IfcPolyline_type); - declarations.push_back(IFC4X3_ADD1_IfcPolyLoop_type); - declarations.push_back(IFC4X3_ADD1_IfcPolynomialCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcPort_type); - declarations.push_back(IFC4X3_ADD1_IfcPositioningElement_type); - declarations.push_back(IFC4X3_ADD1_IfcPositiveInteger_type); - declarations.push_back(IFC4X3_ADD1_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPostalAddress_type); - declarations.push_back(IFC4X3_ADD1_IfcPowerMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcPreDefinedColour_type); - declarations.push_back(IFC4X3_ADD1_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_ADD1_IfcPreDefinedItem_type); - declarations.push_back(IFC4X3_ADD1_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X3_ADD1_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcPresentableText_type); - declarations.push_back(IFC4X3_ADD1_IfcPresentationItem_type); - declarations.push_back(IFC4X3_ADD1_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X3_ADD1_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcPresentationStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcPressureMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcProcedure_type); - declarations.push_back(IFC4X3_ADD1_IfcProcedureType_type); - declarations.push_back(IFC4X3_ADD1_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcProcess_type); - declarations.push_back(IFC4X3_ADD1_IfcProcessSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcProduct_type); - declarations.push_back(IFC4X3_ADD1_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X3_ADD1_IfcProductRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcProductSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcProfileProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcProject_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectedCRS_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectionElement_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectLibrary_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectOrder_type); - declarations.push_back(IFC4X3_ADD1_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcProperty_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyDefinition_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyListValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySet_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertySingleValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyTableValue_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyTemplate_type); - declarations.push_back(IFC4X3_ADD1_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X3_ADD1_IfcProtectiveDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcPump_type); - declarations.push_back(IFC4X3_ADD1_IfcPumpType_type); - declarations.push_back(IFC4X3_ADD1_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityArea_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityCount_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityLength_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityNumber_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantitySet_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityTime_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityVolume_type); - declarations.push_back(IFC4X3_ADD1_IfcQuantityWeight_type); - declarations.push_back(IFC4X3_ADD1_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcRail_type); - declarations.push_back(IFC4X3_ADD1_IfcRailing_type); - declarations.push_back(IFC4X3_ADD1_IfcRailingType_type); - declarations.push_back(IFC4X3_ADD1_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRailType_type); - declarations.push_back(IFC4X3_ADD1_IfcRailTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRailway_type); - declarations.push_back(IFC4X3_ADD1_IfcRailwayPart_type); - declarations.push_back(IFC4X3_ADD1_IfcRailwayPartTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRailwayTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRamp_type); - declarations.push_back(IFC4X3_ADD1_IfcRampFlight_type); - declarations.push_back(IFC4X3_ADD1_IfcRampFlightType_type); - declarations.push_back(IFC4X3_ADD1_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRampType_type); - declarations.push_back(IFC4X3_ADD1_IfcRampTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRatioMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_ADD1_IfcReal_type); - declarations.push_back(IFC4X3_ADD1_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcRectangularPyramid_type); - declarations.push_back(IFC4X3_ADD1_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcRecurrencePattern_type); - declarations.push_back(IFC4X3_ADD1_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcReference_type); - declarations.push_back(IFC4X3_ADD1_IfcReferent_type); - declarations.push_back(IFC4X3_ADD1_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcedSoil_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingBar_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingBarType_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingElement_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingMesh_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAdheresToElement_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAggregates_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssigns_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociates_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X3_ADD1_IfcRelAssociatesProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnects_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsElements_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X3_ADD1_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X3_ADD1_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDeclares_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDecomposes_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDefines_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X3_ADD1_IfcRelDefinesByType_type); - declarations.push_back(IFC4X3_ADD1_IfcRelFillsElement_type); - declarations.push_back(IFC4X3_ADD1_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X3_ADD1_IfcRelInterferesElements_type); - declarations.push_back(IFC4X3_ADD1_IfcRelNests_type); - declarations.push_back(IFC4X3_ADD1_IfcRelPositions_type); - declarations.push_back(IFC4X3_ADD1_IfcRelProjectsElement_type); - declarations.push_back(IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X3_ADD1_IfcRelSequence_type); - declarations.push_back(IFC4X3_ADD1_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X3_ADD1_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X3_ADD1_IfcRelVoidsElement_type); - declarations.push_back(IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcRepresentationContext_type); - declarations.push_back(IFC4X3_ADD1_IfcRepresentationItem_type); - declarations.push_back(IFC4X3_ADD1_IfcRepresentationMap_type); - declarations.push_back(IFC4X3_ADD1_IfcResource_type); - declarations.push_back(IFC4X3_ADD1_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X3_ADD1_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcResourceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcResourceTime_type); - declarations.push_back(IFC4X3_ADD1_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X3_ADD1_IfcRightCircularCone_type); - declarations.push_back(IFC4X3_ADD1_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X3_ADD1_IfcRigidOperation_type); - declarations.push_back(IFC4X3_ADD1_IfcRoad_type); - declarations.push_back(IFC4X3_ADD1_IfcRoadPart_type); - declarations.push_back(IFC4X3_ADD1_IfcRoadPartTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRoadTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRoleEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRoof_type); - declarations.push_back(IFC4X3_ADD1_IfcRoofType_type); - declarations.push_back(IFC4X3_ADD1_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcRoot_type); - declarations.push_back(IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSchedulingTime_type); - declarations.push_back(IFC4X3_ADD1_IfcSeamCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionedSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionedSpine_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionedSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSegment_type); - declarations.push_back(IFC4X3_ADD1_IfcSegmentedReferenceCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcSensor_type); - declarations.push_back(IFC4X3_ADD1_IfcSensorType_type); - declarations.push_back(IFC4X3_ADD1_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSequenceEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_ADD1_IfcShadingDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcShadingDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcShapeAspect_type); - declarations.push_back(IFC4X3_ADD1_IfcShapeModel_type); - declarations.push_back(IFC4X3_ADD1_IfcShapeRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcShell_type); - declarations.push_back(IFC4X3_ADD1_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X3_ADD1_IfcSign_type); - declarations.push_back(IFC4X3_ADD1_IfcSignal_type); - declarations.push_back(IFC4X3_ADD1_IfcSignalType_type); - declarations.push_back(IFC4X3_ADD1_IfcSignalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSignType_type); - declarations.push_back(IFC4X3_ADD1_IfcSignTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSimpleProperty_type); - declarations.push_back(IFC4X3_ADD1_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSimpleValue_type); - declarations.push_back(IFC4X3_ADD1_IfcSineSpiral_type); - declarations.push_back(IFC4X3_ADD1_IfcSIPrefix_type); - declarations.push_back(IFC4X3_ADD1_IfcSite_type); - declarations.push_back(IFC4X3_ADD1_IfcSIUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcSIUnitName_type); - declarations.push_back(IFC4X3_ADD1_IfcSizeSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcSlab_type); - declarations.push_back(IFC4X3_ADD1_IfcSlabType_type); - declarations.push_back(IFC4X3_ADD1_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcSolarDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcSolarDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSolidModel_type); - declarations.push_back(IFC4X3_ADD1_IfcSolidOrShell_type); - declarations.push_back(IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSpace_type); - declarations.push_back(IFC4X3_ADD1_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X3_ADD1_IfcSpaceHeater_type); - declarations.push_back(IFC4X3_ADD1_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSpaceType_type); - declarations.push_back(IFC4X3_ADD1_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialElement_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialReferenceSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialZone_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialZoneType_type); - declarations.push_back(IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcSpecularExponent_type); - declarations.push_back(IFC4X3_ADD1_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcSpecularRoughness_type); - declarations.push_back(IFC4X3_ADD1_IfcSphere_type); - declarations.push_back(IFC4X3_ADD1_IfcSphericalSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcSpiral_type); - declarations.push_back(IFC4X3_ADD1_IfcStackTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcStackTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStair_type); - declarations.push_back(IFC4X3_ADD1_IfcStairFlight_type); - declarations.push_back(IFC4X3_ADD1_IfcStairFlightType_type); - declarations.push_back(IFC4X3_ADD1_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStairType_type); - declarations.push_back(IFC4X3_ADD1_IfcStairTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStateEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStrippedOptional_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralAction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralActivity_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralConnection_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralItem_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoad_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralMember_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralPointAction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralReaction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X3_ADD1_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X3_ADD1_IfcStyledItem_type); - declarations.push_back(IFC4X3_ADD1_IfcStyledRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcStyleModel_type); - declarations.push_back(IFC4X3_ADD1_IfcSubContractResource_type); - declarations.push_back(IFC4X3_ADD1_IfcSubContractResourceType_type); - declarations.push_back(IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSubedge_type); - declarations.push_back(IFC4X3_ADD1_IfcSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceFeature_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceSide_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X3_ADD1_IfcSurfaceTexture_type); - declarations.push_back(IFC4X3_ADD1_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X3_ADD1_IfcSweptSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcSwitchingDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcSystem_type); - declarations.push_back(IFC4X3_ADD1_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X3_ADD1_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTable_type); - declarations.push_back(IFC4X3_ADD1_IfcTableColumn_type); - declarations.push_back(IFC4X3_ADD1_IfcTableRow_type); - declarations.push_back(IFC4X3_ADD1_IfcTank_type); - declarations.push_back(IFC4X3_ADD1_IfcTankType_type); - declarations.push_back(IFC4X3_ADD1_IfcTankTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTask_type); - declarations.push_back(IFC4X3_ADD1_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTaskTime_type); - declarations.push_back(IFC4X3_ADD1_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X3_ADD1_IfcTaskType_type); - declarations.push_back(IFC4X3_ADD1_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTelecomAddress_type); - declarations.push_back(IFC4X3_ADD1_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcTendon_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonAnchor_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonAnchorType_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonConduit_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonConduitType_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonConduitTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonType_type); - declarations.push_back(IFC4X3_ADD1_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X3_ADD1_IfcTessellatedItem_type); - declarations.push_back(IFC4X3_ADD1_IfcText_type); - declarations.push_back(IFC4X3_ADD1_IfcTextAlignment_type); - declarations.push_back(IFC4X3_ADD1_IfcTextDecoration_type); - declarations.push_back(IFC4X3_ADD1_IfcTextFontName_type); - declarations.push_back(IFC4X3_ADD1_IfcTextFontSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcTextLiteral_type); - declarations.push_back(IFC4X3_ADD1_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X3_ADD1_IfcTextPath_type); - declarations.push_back(IFC4X3_ADD1_IfcTextStyle_type); - declarations.push_back(IFC4X3_ADD1_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X3_ADD1_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X3_ADD1_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X3_ADD1_IfcTextTransformation_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureCoordinate_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureCoordinateIndices_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureMap_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureVertex_type); - declarations.push_back(IFC4X3_ADD1_IfcTextureVertexList_type); - declarations.push_back(IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_ADD1_IfcTime_type); - declarations.push_back(IFC4X3_ADD1_IfcTimeMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcTimePeriod_type); - declarations.push_back(IFC4X3_ADD1_IfcTimeSeries_type); - declarations.push_back(IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X3_ADD1_IfcTimeStamp_type); - declarations.push_back(IFC4X3_ADD1_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X3_ADD1_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X3_ADD1_IfcToroidalSurface_type); - declarations.push_back(IFC4X3_ADD1_IfcTorqueMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcTrackElement_type); - declarations.push_back(IFC4X3_ADD1_IfcTrackElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcTrackElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTransformer_type); - declarations.push_back(IFC4X3_ADD1_IfcTransformerType_type); - declarations.push_back(IFC4X3_ADD1_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTransitionCode_type); - declarations.push_back(IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcTransportationDevice_type); - declarations.push_back(IFC4X3_ADD1_IfcTransportationDeviceType_type); - declarations.push_back(IFC4X3_ADD1_IfcTransportElement_type); - declarations.push_back(IFC4X3_ADD1_IfcTransportElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcTransportElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X3_ADD1_IfcTrimmedCurve_type); - declarations.push_back(IFC4X3_ADD1_IfcTrimmingPreference_type); - declarations.push_back(IFC4X3_ADD1_IfcTrimmingSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcTubeBundle_type); - declarations.push_back(IFC4X3_ADD1_IfcTubeBundleType_type); - declarations.push_back(IFC4X3_ADD1_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcTypeObject_type); - declarations.push_back(IFC4X3_ADD1_IfcTypeProcess_type); - declarations.push_back(IFC4X3_ADD1_IfcTypeProduct_type); - declarations.push_back(IFC4X3_ADD1_IfcTypeResource_type); - declarations.push_back(IFC4X3_ADD1_IfcUnit_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitAssignment_type); - declarations.push_back(IFC4X3_ADD1_IfcUnitEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcURIReference_type); - declarations.push_back(IFC4X3_ADD1_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X3_ADD1_IfcValue_type); - declarations.push_back(IFC4X3_ADD1_IfcValve_type); - declarations.push_back(IFC4X3_ADD1_IfcValveType_type); - declarations.push_back(IFC4X3_ADD1_IfcValveTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcVector_type); - declarations.push_back(IFC4X3_ADD1_IfcVectorOrDirection_type); - declarations.push_back(IFC4X3_ADD1_IfcVehicle_type); - declarations.push_back(IFC4X3_ADD1_IfcVehicleType_type); - declarations.push_back(IFC4X3_ADD1_IfcVehicleTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcVertex_type); - declarations.push_back(IFC4X3_ADD1_IfcVertexLoop_type); - declarations.push_back(IFC4X3_ADD1_IfcVertexPoint_type); - declarations.push_back(IFC4X3_ADD1_IfcVibrationDamper_type); - declarations.push_back(IFC4X3_ADD1_IfcVibrationDamperType_type); - declarations.push_back(IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcVibrationIsolator_type); - declarations.push_back(IFC4X3_ADD1_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcVirtualElement_type); - declarations.push_back(IFC4X3_ADD1_IfcVirtualElementTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X3_ADD1_IfcVoidingFeature_type); - declarations.push_back(IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcVolumeMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcWall_type); - declarations.push_back(IFC4X3_ADD1_IfcWallStandardCase_type); - declarations.push_back(IFC4X3_ADD1_IfcWallType_type); - declarations.push_back(IFC4X3_ADD1_IfcWallTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X3_ADD1_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X3_ADD1_IfcWasteTerminal_type); - declarations.push_back(IFC4X3_ADD1_IfcWasteTerminalType_type); - declarations.push_back(IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWellKnownText_type); - declarations.push_back(IFC4X3_ADD1_IfcWellKnownTextLiteral_type); - declarations.push_back(IFC4X3_ADD1_IfcWindow_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowType_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkCalendar_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkControl_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkPlan_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkSchedule_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X3_ADD1_IfcWorkTime_type); - declarations.push_back(IFC4X3_ADD1_IfcZone_type); - declarations.push_back(IFC4X3_ADD1_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X3_ADD1", declarations, new IFC4X3_ADD1_instance_factory()); + std::vector declarations= { + IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type, + IFC4X3_ADD1_IfcAccelerationMeasure_type, + IFC4X3_ADD1_IfcActionRequest_type, + IFC4X3_ADD1_IfcActionRequestTypeEnum_type, + IFC4X3_ADD1_IfcActionSourceTypeEnum_type, + IFC4X3_ADD1_IfcActionTypeEnum_type, + IFC4X3_ADD1_IfcActor_type, + IFC4X3_ADD1_IfcActorRole_type, + IFC4X3_ADD1_IfcActorSelect_type, + IFC4X3_ADD1_IfcActuator_type, + IFC4X3_ADD1_IfcActuatorType_type, + IFC4X3_ADD1_IfcActuatorTypeEnum_type, + IFC4X3_ADD1_IfcAddress_type, + IFC4X3_ADD1_IfcAddressTypeEnum_type, + IFC4X3_ADD1_IfcAdvancedBrep_type, + IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type, + IFC4X3_ADD1_IfcAdvancedFace_type, + IFC4X3_ADD1_IfcAirTerminal_type, + IFC4X3_ADD1_IfcAirTerminalBox_type, + IFC4X3_ADD1_IfcAirTerminalBoxType_type, + IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type, + IFC4X3_ADD1_IfcAirTerminalType_type, + IFC4X3_ADD1_IfcAirTerminalTypeEnum_type, + IFC4X3_ADD1_IfcAirToAirHeatRecovery_type, + IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type, + IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X3_ADD1_IfcAlarm_type, + IFC4X3_ADD1_IfcAlarmType_type, + IFC4X3_ADD1_IfcAlarmTypeEnum_type, + IFC4X3_ADD1_IfcAlignment_type, + IFC4X3_ADD1_IfcAlignmentCant_type, + IFC4X3_ADD1_IfcAlignmentCantSegment_type, + IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type, + IFC4X3_ADD1_IfcAlignmentHorizontal_type, + IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type, + IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type, + IFC4X3_ADD1_IfcAlignmentParameterSegment_type, + IFC4X3_ADD1_IfcAlignmentSegment_type, + IFC4X3_ADD1_IfcAlignmentTypeEnum_type, + IFC4X3_ADD1_IfcAlignmentVertical_type, + IFC4X3_ADD1_IfcAlignmentVerticalSegment_type, + IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type, + IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type, + IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type, + IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type, + IFC4X3_ADD1_IfcAngularVelocityMeasure_type, + IFC4X3_ADD1_IfcAnnotation_type, + IFC4X3_ADD1_IfcAnnotationFillArea_type, + IFC4X3_ADD1_IfcAnnotationTypeEnum_type, + IFC4X3_ADD1_IfcApplication_type, + IFC4X3_ADD1_IfcAppliedValue_type, + IFC4X3_ADD1_IfcAppliedValueSelect_type, + IFC4X3_ADD1_IfcApproval_type, + IFC4X3_ADD1_IfcApprovalRelationship_type, + IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type, + IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type, + IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type, + IFC4X3_ADD1_IfcArcIndex_type, + IFC4X3_ADD1_IfcAreaDensityMeasure_type, + IFC4X3_ADD1_IfcAreaMeasure_type, + IFC4X3_ADD1_IfcArithmeticOperatorEnum_type, + IFC4X3_ADD1_IfcAssemblyPlaceEnum_type, + IFC4X3_ADD1_IfcAsset_type, + IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type, + IFC4X3_ADD1_IfcAudioVisualAppliance_type, + IFC4X3_ADD1_IfcAudioVisualApplianceType_type, + IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type, + IFC4X3_ADD1_IfcAxis1Placement_type, + IFC4X3_ADD1_IfcAxis2Placement_type, + IFC4X3_ADD1_IfcAxis2Placement2D_type, + IFC4X3_ADD1_IfcAxis2Placement3D_type, + IFC4X3_ADD1_IfcAxis2PlacementLinear_type, + IFC4X3_ADD1_IfcBeam_type, + IFC4X3_ADD1_IfcBeamType_type, + IFC4X3_ADD1_IfcBeamTypeEnum_type, + IFC4X3_ADD1_IfcBearing_type, + IFC4X3_ADD1_IfcBearingType_type, + IFC4X3_ADD1_IfcBearingTypeEnum_type, + IFC4X3_ADD1_IfcBenchmarkEnum_type, + IFC4X3_ADD1_IfcBendingParameterSelect_type, + IFC4X3_ADD1_IfcBinary_type, + IFC4X3_ADD1_IfcBlobTexture_type, + IFC4X3_ADD1_IfcBlock_type, + IFC4X3_ADD1_IfcBoiler_type, + IFC4X3_ADD1_IfcBoilerType_type, + IFC4X3_ADD1_IfcBoilerTypeEnum_type, + IFC4X3_ADD1_IfcBoolean_type, + IFC4X3_ADD1_IfcBooleanClippingResult_type, + IFC4X3_ADD1_IfcBooleanOperand_type, + IFC4X3_ADD1_IfcBooleanOperator_type, + IFC4X3_ADD1_IfcBooleanResult_type, + IFC4X3_ADD1_IfcBorehole_type, + IFC4X3_ADD1_IfcBoundaryCondition_type, + IFC4X3_ADD1_IfcBoundaryCurve_type, + IFC4X3_ADD1_IfcBoundaryEdgeCondition_type, + IFC4X3_ADD1_IfcBoundaryFaceCondition_type, + IFC4X3_ADD1_IfcBoundaryNodeCondition_type, + IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type, + IFC4X3_ADD1_IfcBoundedCurve_type, + IFC4X3_ADD1_IfcBoundedSurface_type, + IFC4X3_ADD1_IfcBoundingBox_type, + IFC4X3_ADD1_IfcBoxAlignment_type, + IFC4X3_ADD1_IfcBoxedHalfSpace_type, + IFC4X3_ADD1_IfcBridge_type, + IFC4X3_ADD1_IfcBridgePart_type, + IFC4X3_ADD1_IfcBridgePartTypeEnum_type, + IFC4X3_ADD1_IfcBridgeTypeEnum_type, + IFC4X3_ADD1_IfcBSplineCurve_type, + IFC4X3_ADD1_IfcBSplineCurveForm_type, + IFC4X3_ADD1_IfcBSplineCurveWithKnots_type, + IFC4X3_ADD1_IfcBSplineSurface_type, + IFC4X3_ADD1_IfcBSplineSurfaceForm_type, + IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type, + IFC4X3_ADD1_IfcBuilding_type, + IFC4X3_ADD1_IfcBuildingElementPart_type, + IFC4X3_ADD1_IfcBuildingElementPartType_type, + IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type, + IFC4X3_ADD1_IfcBuildingElementProxy_type, + IFC4X3_ADD1_IfcBuildingElementProxyType_type, + IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type, + IFC4X3_ADD1_IfcBuildingStorey_type, + IFC4X3_ADD1_IfcBuildingSystem_type, + IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type, + IFC4X3_ADD1_IfcBuiltElement_type, + IFC4X3_ADD1_IfcBuiltElementType_type, + IFC4X3_ADD1_IfcBuiltSystem_type, + IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type, + IFC4X3_ADD1_IfcBurner_type, + IFC4X3_ADD1_IfcBurnerType_type, + IFC4X3_ADD1_IfcBurnerTypeEnum_type, + IFC4X3_ADD1_IfcCableCarrierFitting_type, + IFC4X3_ADD1_IfcCableCarrierFittingType_type, + IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type, + IFC4X3_ADD1_IfcCableCarrierSegment_type, + IFC4X3_ADD1_IfcCableCarrierSegmentType_type, + IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type, + IFC4X3_ADD1_IfcCableFitting_type, + IFC4X3_ADD1_IfcCableFittingType_type, + IFC4X3_ADD1_IfcCableFittingTypeEnum_type, + IFC4X3_ADD1_IfcCableSegment_type, + IFC4X3_ADD1_IfcCableSegmentType_type, + IFC4X3_ADD1_IfcCableSegmentTypeEnum_type, + IFC4X3_ADD1_IfcCaissonFoundation_type, + IFC4X3_ADD1_IfcCaissonFoundationType_type, + IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type, + IFC4X3_ADD1_IfcCardinalPointReference_type, + IFC4X3_ADD1_IfcCartesianPoint_type, + IFC4X3_ADD1_IfcCartesianPointList_type, + IFC4X3_ADD1_IfcCartesianPointList2D_type, + IFC4X3_ADD1_IfcCartesianPointList3D_type, + IFC4X3_ADD1_IfcCartesianTransformationOperator_type, + IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type, + IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type, + IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X3_ADD1_IfcCenterLineProfileDef_type, + IFC4X3_ADD1_IfcChangeActionEnum_type, + IFC4X3_ADD1_IfcChiller_type, + IFC4X3_ADD1_IfcChillerType_type, + IFC4X3_ADD1_IfcChillerTypeEnum_type, + IFC4X3_ADD1_IfcChimney_type, + IFC4X3_ADD1_IfcChimneyType_type, + IFC4X3_ADD1_IfcChimneyTypeEnum_type, + IFC4X3_ADD1_IfcCircle_type, + IFC4X3_ADD1_IfcCircleHollowProfileDef_type, + IFC4X3_ADD1_IfcCircleProfileDef_type, + IFC4X3_ADD1_IfcCivilElement_type, + IFC4X3_ADD1_IfcCivilElementType_type, + IFC4X3_ADD1_IfcClassification_type, + IFC4X3_ADD1_IfcClassificationReference_type, + IFC4X3_ADD1_IfcClassificationReferenceSelect_type, + IFC4X3_ADD1_IfcClassificationSelect_type, + IFC4X3_ADD1_IfcClosedShell_type, + IFC4X3_ADD1_IfcClothoid_type, + IFC4X3_ADD1_IfcCoil_type, + IFC4X3_ADD1_IfcCoilType_type, + IFC4X3_ADD1_IfcCoilTypeEnum_type, + IFC4X3_ADD1_IfcColour_type, + IFC4X3_ADD1_IfcColourOrFactor_type, + IFC4X3_ADD1_IfcColourRgb_type, + IFC4X3_ADD1_IfcColourRgbList_type, + IFC4X3_ADD1_IfcColourSpecification_type, + IFC4X3_ADD1_IfcColumn_type, + IFC4X3_ADD1_IfcColumnType_type, + IFC4X3_ADD1_IfcColumnTypeEnum_type, + IFC4X3_ADD1_IfcCommunicationsAppliance_type, + IFC4X3_ADD1_IfcCommunicationsApplianceType_type, + IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type, + IFC4X3_ADD1_IfcComplexNumber_type, + IFC4X3_ADD1_IfcComplexProperty_type, + IFC4X3_ADD1_IfcComplexPropertyTemplate_type, + IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X3_ADD1_IfcCompositeCurve_type, + IFC4X3_ADD1_IfcCompositeCurveOnSurface_type, + IFC4X3_ADD1_IfcCompositeCurveSegment_type, + IFC4X3_ADD1_IfcCompositeProfileDef_type, + IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_ADD1_IfcCompressor_type, + IFC4X3_ADD1_IfcCompressorType_type, + IFC4X3_ADD1_IfcCompressorTypeEnum_type, + IFC4X3_ADD1_IfcCondenser_type, + IFC4X3_ADD1_IfcCondenserType_type, + IFC4X3_ADD1_IfcCondenserTypeEnum_type, + IFC4X3_ADD1_IfcConic_type, + IFC4X3_ADD1_IfcConnectedFaceSet_type, + IFC4X3_ADD1_IfcConnectionCurveGeometry_type, + IFC4X3_ADD1_IfcConnectionGeometry_type, + IFC4X3_ADD1_IfcConnectionPointEccentricity_type, + IFC4X3_ADD1_IfcConnectionPointGeometry_type, + IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type, + IFC4X3_ADD1_IfcConnectionTypeEnum_type, + IFC4X3_ADD1_IfcConnectionVolumeGeometry_type, + IFC4X3_ADD1_IfcConstraint_type, + IFC4X3_ADD1_IfcConstraintEnum_type, + IFC4X3_ADD1_IfcConstructionEquipmentResource_type, + IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type, + IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X3_ADD1_IfcConstructionMaterialResource_type, + IFC4X3_ADD1_IfcConstructionMaterialResourceType_type, + IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X3_ADD1_IfcConstructionProductResource_type, + IFC4X3_ADD1_IfcConstructionProductResourceType_type, + IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type, + IFC4X3_ADD1_IfcConstructionResource_type, + IFC4X3_ADD1_IfcConstructionResourceType_type, + IFC4X3_ADD1_IfcContext_type, + IFC4X3_ADD1_IfcContextDependentMeasure_type, + IFC4X3_ADD1_IfcContextDependentUnit_type, + IFC4X3_ADD1_IfcControl_type, + IFC4X3_ADD1_IfcController_type, + IFC4X3_ADD1_IfcControllerType_type, + IFC4X3_ADD1_IfcControllerTypeEnum_type, + IFC4X3_ADD1_IfcConversionBasedUnit_type, + IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type, + IFC4X3_ADD1_IfcConveyorSegment_type, + IFC4X3_ADD1_IfcConveyorSegmentType_type, + IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type, + IFC4X3_ADD1_IfcCooledBeam_type, + IFC4X3_ADD1_IfcCooledBeamType_type, + IFC4X3_ADD1_IfcCooledBeamTypeEnum_type, + IFC4X3_ADD1_IfcCoolingTower_type, + IFC4X3_ADD1_IfcCoolingTowerType_type, + IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type, + IFC4X3_ADD1_IfcCoordinateOperation_type, + IFC4X3_ADD1_IfcCoordinateReferenceSystem_type, + IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type, + IFC4X3_ADD1_IfcCosineSpiral_type, + IFC4X3_ADD1_IfcCostItem_type, + IFC4X3_ADD1_IfcCostItemTypeEnum_type, + IFC4X3_ADD1_IfcCostSchedule_type, + IFC4X3_ADD1_IfcCostScheduleTypeEnum_type, + IFC4X3_ADD1_IfcCostValue_type, + IFC4X3_ADD1_IfcCountMeasure_type, + IFC4X3_ADD1_IfcCourse_type, + IFC4X3_ADD1_IfcCourseType_type, + IFC4X3_ADD1_IfcCourseTypeEnum_type, + IFC4X3_ADD1_IfcCovering_type, + IFC4X3_ADD1_IfcCoveringType_type, + IFC4X3_ADD1_IfcCoveringTypeEnum_type, + IFC4X3_ADD1_IfcCrewResource_type, + IFC4X3_ADD1_IfcCrewResourceType_type, + IFC4X3_ADD1_IfcCrewResourceTypeEnum_type, + IFC4X3_ADD1_IfcCsgPrimitive3D_type, + IFC4X3_ADD1_IfcCsgSelect_type, + IFC4X3_ADD1_IfcCsgSolid_type, + IFC4X3_ADD1_IfcCShapeProfileDef_type, + IFC4X3_ADD1_IfcCurrencyRelationship_type, + IFC4X3_ADD1_IfcCurtainWall_type, + IFC4X3_ADD1_IfcCurtainWallType_type, + IFC4X3_ADD1_IfcCurtainWallTypeEnum_type, + IFC4X3_ADD1_IfcCurvatureMeasure_type, + IFC4X3_ADD1_IfcCurve_type, + IFC4X3_ADD1_IfcCurveBoundedPlane_type, + IFC4X3_ADD1_IfcCurveBoundedSurface_type, + IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X3_ADD1_IfcCurveInterpolationEnum_type, + IFC4X3_ADD1_IfcCurveMeasureSelect_type, + IFC4X3_ADD1_IfcCurveOnSurface_type, + IFC4X3_ADD1_IfcCurveOrEdgeCurve_type, + IFC4X3_ADD1_IfcCurveSegment_type, + IFC4X3_ADD1_IfcCurveStyle_type, + IFC4X3_ADD1_IfcCurveStyleFont_type, + IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type, + IFC4X3_ADD1_IfcCurveStyleFontPattern_type, + IFC4X3_ADD1_IfcCurveStyleFontSelect_type, + IFC4X3_ADD1_IfcCylindricalSurface_type, + IFC4X3_ADD1_IfcDamper_type, + IFC4X3_ADD1_IfcDamperType_type, + IFC4X3_ADD1_IfcDamperTypeEnum_type, + IFC4X3_ADD1_IfcDataOriginEnum_type, + IFC4X3_ADD1_IfcDate_type, + IFC4X3_ADD1_IfcDateTime_type, + IFC4X3_ADD1_IfcDayInMonthNumber_type, + IFC4X3_ADD1_IfcDayInWeekNumber_type, + IFC4X3_ADD1_IfcDeepFoundation_type, + IFC4X3_ADD1_IfcDeepFoundationType_type, + IFC4X3_ADD1_IfcDefinitionSelect_type, + IFC4X3_ADD1_IfcDerivedMeasureValue_type, + IFC4X3_ADD1_IfcDerivedProfileDef_type, + IFC4X3_ADD1_IfcDerivedUnit_type, + IFC4X3_ADD1_IfcDerivedUnitElement_type, + IFC4X3_ADD1_IfcDerivedUnitEnum_type, + IFC4X3_ADD1_IfcDescriptiveMeasure_type, + IFC4X3_ADD1_IfcDimensionalExponents_type, + IFC4X3_ADD1_IfcDimensionCount_type, + IFC4X3_ADD1_IfcDirection_type, + IFC4X3_ADD1_IfcDirectionSenseEnum_type, + IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type, + IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type, + IFC4X3_ADD1_IfcDiscreteAccessory_type, + IFC4X3_ADD1_IfcDiscreteAccessoryType_type, + IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type, + IFC4X3_ADD1_IfcDistributionBoard_type, + IFC4X3_ADD1_IfcDistributionBoardType_type, + IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type, + IFC4X3_ADD1_IfcDistributionChamberElement_type, + IFC4X3_ADD1_IfcDistributionChamberElementType_type, + IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type, + IFC4X3_ADD1_IfcDistributionCircuit_type, + IFC4X3_ADD1_IfcDistributionControlElement_type, + IFC4X3_ADD1_IfcDistributionControlElementType_type, + IFC4X3_ADD1_IfcDistributionElement_type, + IFC4X3_ADD1_IfcDistributionElementType_type, + IFC4X3_ADD1_IfcDistributionFlowElement_type, + IFC4X3_ADD1_IfcDistributionFlowElementType_type, + IFC4X3_ADD1_IfcDistributionPort_type, + IFC4X3_ADD1_IfcDistributionPortTypeEnum_type, + IFC4X3_ADD1_IfcDistributionSystem_type, + IFC4X3_ADD1_IfcDistributionSystemEnum_type, + IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type, + IFC4X3_ADD1_IfcDocumentInformation_type, + IFC4X3_ADD1_IfcDocumentInformationRelationship_type, + IFC4X3_ADD1_IfcDocumentReference_type, + IFC4X3_ADD1_IfcDocumentSelect_type, + IFC4X3_ADD1_IfcDocumentStatusEnum_type, + IFC4X3_ADD1_IfcDoor_type, + IFC4X3_ADD1_IfcDoorLiningProperties_type, + IFC4X3_ADD1_IfcDoorPanelOperationEnum_type, + IFC4X3_ADD1_IfcDoorPanelPositionEnum_type, + IFC4X3_ADD1_IfcDoorPanelProperties_type, + IFC4X3_ADD1_IfcDoorType_type, + IFC4X3_ADD1_IfcDoorTypeEnum_type, + IFC4X3_ADD1_IfcDoorTypeOperationEnum_type, + IFC4X3_ADD1_IfcDoseEquivalentMeasure_type, + IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type, + IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type, + IFC4X3_ADD1_IfcDuctFitting_type, + IFC4X3_ADD1_IfcDuctFittingType_type, + IFC4X3_ADD1_IfcDuctFittingTypeEnum_type, + IFC4X3_ADD1_IfcDuctSegment_type, + IFC4X3_ADD1_IfcDuctSegmentType_type, + IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type, + IFC4X3_ADD1_IfcDuctSilencer_type, + IFC4X3_ADD1_IfcDuctSilencerType_type, + IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type, + IFC4X3_ADD1_IfcDuration_type, + IFC4X3_ADD1_IfcDynamicViscosityMeasure_type, + IFC4X3_ADD1_IfcEarthworksCut_type, + IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type, + IFC4X3_ADD1_IfcEarthworksElement_type, + IFC4X3_ADD1_IfcEarthworksFill_type, + IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type, + IFC4X3_ADD1_IfcEdge_type, + IFC4X3_ADD1_IfcEdgeCurve_type, + IFC4X3_ADD1_IfcEdgeLoop_type, + IFC4X3_ADD1_IfcElectricAppliance_type, + IFC4X3_ADD1_IfcElectricApplianceType_type, + IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type, + IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type, + IFC4X3_ADD1_IfcElectricChargeMeasure_type, + IFC4X3_ADD1_IfcElectricConductanceMeasure_type, + IFC4X3_ADD1_IfcElectricCurrentMeasure_type, + IFC4X3_ADD1_IfcElectricDistributionBoard_type, + IFC4X3_ADD1_IfcElectricDistributionBoardType_type, + IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type, + IFC4X3_ADD1_IfcElectricFlowStorageDevice_type, + IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type, + IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type, + IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type, + IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type, + IFC4X3_ADD1_IfcElectricGenerator_type, + IFC4X3_ADD1_IfcElectricGeneratorType_type, + IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type, + IFC4X3_ADD1_IfcElectricMotor_type, + IFC4X3_ADD1_IfcElectricMotorType_type, + IFC4X3_ADD1_IfcElectricMotorTypeEnum_type, + IFC4X3_ADD1_IfcElectricResistanceMeasure_type, + IFC4X3_ADD1_IfcElectricTimeControl_type, + IFC4X3_ADD1_IfcElectricTimeControlType_type, + IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type, + IFC4X3_ADD1_IfcElectricVoltageMeasure_type, + IFC4X3_ADD1_IfcElement_type, + IFC4X3_ADD1_IfcElementarySurface_type, + IFC4X3_ADD1_IfcElementAssembly_type, + IFC4X3_ADD1_IfcElementAssemblyType_type, + IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type, + IFC4X3_ADD1_IfcElementComponent_type, + IFC4X3_ADD1_IfcElementComponentType_type, + IFC4X3_ADD1_IfcElementCompositionEnum_type, + IFC4X3_ADD1_IfcElementQuantity_type, + IFC4X3_ADD1_IfcElementType_type, + IFC4X3_ADD1_IfcEllipse_type, + IFC4X3_ADD1_IfcEllipseProfileDef_type, + IFC4X3_ADD1_IfcEnergyConversionDevice_type, + IFC4X3_ADD1_IfcEnergyConversionDeviceType_type, + IFC4X3_ADD1_IfcEnergyMeasure_type, + IFC4X3_ADD1_IfcEngine_type, + IFC4X3_ADD1_IfcEngineType_type, + IFC4X3_ADD1_IfcEngineTypeEnum_type, + IFC4X3_ADD1_IfcEvaporativeCooler_type, + IFC4X3_ADD1_IfcEvaporativeCoolerType_type, + IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type, + IFC4X3_ADD1_IfcEvaporator_type, + IFC4X3_ADD1_IfcEvaporatorType_type, + IFC4X3_ADD1_IfcEvaporatorTypeEnum_type, + IFC4X3_ADD1_IfcEvent_type, + IFC4X3_ADD1_IfcEventTime_type, + IFC4X3_ADD1_IfcEventTriggerTypeEnum_type, + IFC4X3_ADD1_IfcEventType_type, + IFC4X3_ADD1_IfcEventTypeEnum_type, + IFC4X3_ADD1_IfcExtendedProperties_type, + IFC4X3_ADD1_IfcExternalInformation_type, + IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type, + IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_ADD1_IfcExternallyDefinedTextFont_type, + IFC4X3_ADD1_IfcExternalReference_type, + IFC4X3_ADD1_IfcExternalReferenceRelationship_type, + IFC4X3_ADD1_IfcExternalSpatialElement_type, + IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type, + IFC4X3_ADD1_IfcExternalSpatialStructureElement_type, + IFC4X3_ADD1_IfcExtrudedAreaSolid_type, + IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type, + IFC4X3_ADD1_IfcFace_type, + IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type, + IFC4X3_ADD1_IfcFaceBound_type, + IFC4X3_ADD1_IfcFaceOuterBound_type, + IFC4X3_ADD1_IfcFaceSurface_type, + IFC4X3_ADD1_IfcFacetedBrep_type, + IFC4X3_ADD1_IfcFacetedBrepWithVoids_type, + IFC4X3_ADD1_IfcFacility_type, + IFC4X3_ADD1_IfcFacilityPart_type, + IFC4X3_ADD1_IfcFacilityPartCommon_type, + IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_ADD1_IfcFacilityUsageEnum_type, + IFC4X3_ADD1_IfcFailureConnectionCondition_type, + IFC4X3_ADD1_IfcFan_type, + IFC4X3_ADD1_IfcFanType_type, + IFC4X3_ADD1_IfcFanTypeEnum_type, + IFC4X3_ADD1_IfcFastener_type, + IFC4X3_ADD1_IfcFastenerType_type, + IFC4X3_ADD1_IfcFastenerTypeEnum_type, + IFC4X3_ADD1_IfcFeatureElement_type, + IFC4X3_ADD1_IfcFeatureElementAddition_type, + IFC4X3_ADD1_IfcFeatureElementSubtraction_type, + IFC4X3_ADD1_IfcFillAreaStyle_type, + IFC4X3_ADD1_IfcFillAreaStyleHatching_type, + IFC4X3_ADD1_IfcFillAreaStyleTiles_type, + IFC4X3_ADD1_IfcFillStyleSelect_type, + IFC4X3_ADD1_IfcFilter_type, + IFC4X3_ADD1_IfcFilterType_type, + IFC4X3_ADD1_IfcFilterTypeEnum_type, + IFC4X3_ADD1_IfcFireSuppressionTerminal_type, + IFC4X3_ADD1_IfcFireSuppressionTerminalType_type, + IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type, + IFC4X3_ADD1_IfcFlowController_type, + IFC4X3_ADD1_IfcFlowControllerType_type, + IFC4X3_ADD1_IfcFlowDirectionEnum_type, + IFC4X3_ADD1_IfcFlowFitting_type, + IFC4X3_ADD1_IfcFlowFittingType_type, + IFC4X3_ADD1_IfcFlowInstrument_type, + IFC4X3_ADD1_IfcFlowInstrumentType_type, + IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type, + IFC4X3_ADD1_IfcFlowMeter_type, + IFC4X3_ADD1_IfcFlowMeterType_type, + IFC4X3_ADD1_IfcFlowMeterTypeEnum_type, + IFC4X3_ADD1_IfcFlowMovingDevice_type, + IFC4X3_ADD1_IfcFlowMovingDeviceType_type, + IFC4X3_ADD1_IfcFlowSegment_type, + IFC4X3_ADD1_IfcFlowSegmentType_type, + IFC4X3_ADD1_IfcFlowStorageDevice_type, + IFC4X3_ADD1_IfcFlowStorageDeviceType_type, + IFC4X3_ADD1_IfcFlowTerminal_type, + IFC4X3_ADD1_IfcFlowTerminalType_type, + IFC4X3_ADD1_IfcFlowTreatmentDevice_type, + IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type, + IFC4X3_ADD1_IfcFontStyle_type, + IFC4X3_ADD1_IfcFontVariant_type, + IFC4X3_ADD1_IfcFontWeight_type, + IFC4X3_ADD1_IfcFooting_type, + IFC4X3_ADD1_IfcFootingType_type, + IFC4X3_ADD1_IfcFootingTypeEnum_type, + IFC4X3_ADD1_IfcForceMeasure_type, + IFC4X3_ADD1_IfcFrequencyMeasure_type, + IFC4X3_ADD1_IfcFurnishingElement_type, + IFC4X3_ADD1_IfcFurnishingElementType_type, + IFC4X3_ADD1_IfcFurniture_type, + IFC4X3_ADD1_IfcFurnitureType_type, + IFC4X3_ADD1_IfcFurnitureTypeEnum_type, + IFC4X3_ADD1_IfcGeographicCRS_type, + IFC4X3_ADD1_IfcGeographicElement_type, + IFC4X3_ADD1_IfcGeographicElementType_type, + IFC4X3_ADD1_IfcGeographicElementTypeEnum_type, + IFC4X3_ADD1_IfcGeometricCurveSet_type, + IFC4X3_ADD1_IfcGeometricProjectionEnum_type, + IFC4X3_ADD1_IfcGeometricRepresentationContext_type, + IFC4X3_ADD1_IfcGeometricRepresentationItem_type, + IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type, + IFC4X3_ADD1_IfcGeometricSet_type, + IFC4X3_ADD1_IfcGeometricSetSelect_type, + IFC4X3_ADD1_IfcGeomodel_type, + IFC4X3_ADD1_IfcGeoslice_type, + IFC4X3_ADD1_IfcGeotechnicalAssembly_type, + IFC4X3_ADD1_IfcGeotechnicalElement_type, + IFC4X3_ADD1_IfcGeotechnicalStratum_type, + IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type, + IFC4X3_ADD1_IfcGloballyUniqueId_type, + IFC4X3_ADD1_IfcGlobalOrLocalEnum_type, + IFC4X3_ADD1_IfcGradientCurve_type, + IFC4X3_ADD1_IfcGrid_type, + IFC4X3_ADD1_IfcGridAxis_type, + IFC4X3_ADD1_IfcGridPlacement_type, + IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type, + IFC4X3_ADD1_IfcGridTypeEnum_type, + IFC4X3_ADD1_IfcGroup_type, + IFC4X3_ADD1_IfcHalfSpaceSolid_type, + IFC4X3_ADD1_IfcHatchLineDistanceSelect_type, + IFC4X3_ADD1_IfcHeatExchanger_type, + IFC4X3_ADD1_IfcHeatExchangerType_type, + IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type, + IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type, + IFC4X3_ADD1_IfcHeatingValueMeasure_type, + IFC4X3_ADD1_IfcHumidifier_type, + IFC4X3_ADD1_IfcHumidifierType_type, + IFC4X3_ADD1_IfcHumidifierTypeEnum_type, + IFC4X3_ADD1_IfcIdentifier_type, + IFC4X3_ADD1_IfcIlluminanceMeasure_type, + IFC4X3_ADD1_IfcImageTexture_type, + IFC4X3_ADD1_IfcImpactProtectionDevice_type, + IFC4X3_ADD1_IfcImpactProtectionDeviceType_type, + IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_ADD1_IfcIndexedColourMap_type, + IFC4X3_ADD1_IfcIndexedPolyCurve_type, + IFC4X3_ADD1_IfcIndexedPolygonalFace_type, + IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type, + IFC4X3_ADD1_IfcIndexedTextureMap_type, + IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type, + IFC4X3_ADD1_IfcInductanceMeasure_type, + IFC4X3_ADD1_IfcInteger_type, + IFC4X3_ADD1_IfcIntegerCountRateMeasure_type, + IFC4X3_ADD1_IfcInterceptor_type, + IFC4X3_ADD1_IfcInterceptorType_type, + IFC4X3_ADD1_IfcInterceptorTypeEnum_type, + IFC4X3_ADD1_IfcInterferenceSelect_type, + IFC4X3_ADD1_IfcInternalOrExternalEnum_type, + IFC4X3_ADD1_IfcIntersectionCurve_type, + IFC4X3_ADD1_IfcInventory_type, + IFC4X3_ADD1_IfcInventoryTypeEnum_type, + IFC4X3_ADD1_IfcIonConcentrationMeasure_type, + IFC4X3_ADD1_IfcIrregularTimeSeries_type, + IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type, + IFC4X3_ADD1_IfcIShapeProfileDef_type, + IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_ADD1_IfcJunctionBox_type, + IFC4X3_ADD1_IfcJunctionBoxType_type, + IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type, + IFC4X3_ADD1_IfcKerb_type, + IFC4X3_ADD1_IfcKerbType_type, + IFC4X3_ADD1_IfcKerbTypeEnum_type, + IFC4X3_ADD1_IfcKinematicViscosityMeasure_type, + IFC4X3_ADD1_IfcKnotType_type, + IFC4X3_ADD1_IfcLabel_type, + IFC4X3_ADD1_IfcLaborResource_type, + IFC4X3_ADD1_IfcLaborResourceType_type, + IFC4X3_ADD1_IfcLaborResourceTypeEnum_type, + IFC4X3_ADD1_IfcLagTime_type, + IFC4X3_ADD1_IfcLamp_type, + IFC4X3_ADD1_IfcLampType_type, + IFC4X3_ADD1_IfcLampTypeEnum_type, + IFC4X3_ADD1_IfcLanguageId_type, + IFC4X3_ADD1_IfcLayeredItem_type, + IFC4X3_ADD1_IfcLayerSetDirectionEnum_type, + IFC4X3_ADD1_IfcLengthMeasure_type, + IFC4X3_ADD1_IfcLibraryInformation_type, + IFC4X3_ADD1_IfcLibraryReference_type, + IFC4X3_ADD1_IfcLibrarySelect_type, + IFC4X3_ADD1_IfcLightDistributionCurveEnum_type, + IFC4X3_ADD1_IfcLightDistributionData_type, + IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type, + IFC4X3_ADD1_IfcLightEmissionSourceEnum_type, + IFC4X3_ADD1_IfcLightFixture_type, + IFC4X3_ADD1_IfcLightFixtureType_type, + IFC4X3_ADD1_IfcLightFixtureTypeEnum_type, + IFC4X3_ADD1_IfcLightIntensityDistribution_type, + IFC4X3_ADD1_IfcLightSource_type, + IFC4X3_ADD1_IfcLightSourceAmbient_type, + IFC4X3_ADD1_IfcLightSourceDirectional_type, + IFC4X3_ADD1_IfcLightSourceGoniometric_type, + IFC4X3_ADD1_IfcLightSourcePositional_type, + IFC4X3_ADD1_IfcLightSourceSpot_type, + IFC4X3_ADD1_IfcLine_type, + IFC4X3_ADD1_IfcLinearElement_type, + IFC4X3_ADD1_IfcLinearForceMeasure_type, + IFC4X3_ADD1_IfcLinearMomentMeasure_type, + IFC4X3_ADD1_IfcLinearPlacement_type, + IFC4X3_ADD1_IfcLinearPositioningElement_type, + IFC4X3_ADD1_IfcLinearStiffnessMeasure_type, + IFC4X3_ADD1_IfcLinearVelocityMeasure_type, + IFC4X3_ADD1_IfcLineIndex_type, + IFC4X3_ADD1_IfcLiquidTerminal_type, + IFC4X3_ADD1_IfcLiquidTerminalType_type, + IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type, + IFC4X3_ADD1_IfcLoadGroupTypeEnum_type, + IFC4X3_ADD1_IfcLocalPlacement_type, + IFC4X3_ADD1_IfcLogical_type, + IFC4X3_ADD1_IfcLogicalOperatorEnum_type, + IFC4X3_ADD1_IfcLoop_type, + IFC4X3_ADD1_IfcLShapeProfileDef_type, + IFC4X3_ADD1_IfcLuminousFluxMeasure_type, + IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_ADD1_IfcLuminousIntensityMeasure_type, + IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type, + IFC4X3_ADD1_IfcMagneticFluxMeasure_type, + IFC4X3_ADD1_IfcManifoldSolidBrep_type, + IFC4X3_ADD1_IfcMapConversion_type, + IFC4X3_ADD1_IfcMapConversionScaled_type, + IFC4X3_ADD1_IfcMappedItem_type, + IFC4X3_ADD1_IfcMarineFacility_type, + IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type, + IFC4X3_ADD1_IfcMarinePart_type, + IFC4X3_ADD1_IfcMarinePartTypeEnum_type, + IFC4X3_ADD1_IfcMassDensityMeasure_type, + IFC4X3_ADD1_IfcMassFlowRateMeasure_type, + IFC4X3_ADD1_IfcMassMeasure_type, + IFC4X3_ADD1_IfcMassPerLengthMeasure_type, + IFC4X3_ADD1_IfcMaterial_type, + IFC4X3_ADD1_IfcMaterialClassificationRelationship_type, + IFC4X3_ADD1_IfcMaterialConstituent_type, + IFC4X3_ADD1_IfcMaterialConstituentSet_type, + IFC4X3_ADD1_IfcMaterialDefinition_type, + IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type, + IFC4X3_ADD1_IfcMaterialLayer_type, + IFC4X3_ADD1_IfcMaterialLayerSet_type, + IFC4X3_ADD1_IfcMaterialLayerSetUsage_type, + IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type, + IFC4X3_ADD1_IfcMaterialList_type, + IFC4X3_ADD1_IfcMaterialProfile_type, + IFC4X3_ADD1_IfcMaterialProfileSet_type, + IFC4X3_ADD1_IfcMaterialProfileSetUsage_type, + IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type, + IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type, + IFC4X3_ADD1_IfcMaterialProperties_type, + IFC4X3_ADD1_IfcMaterialRelationship_type, + IFC4X3_ADD1_IfcMaterialSelect_type, + IFC4X3_ADD1_IfcMaterialUsageDefinition_type, + IFC4X3_ADD1_IfcMeasureValue_type, + IFC4X3_ADD1_IfcMeasureWithUnit_type, + IFC4X3_ADD1_IfcMechanicalFastener_type, + IFC4X3_ADD1_IfcMechanicalFastenerType_type, + IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type, + IFC4X3_ADD1_IfcMedicalDevice_type, + IFC4X3_ADD1_IfcMedicalDeviceType_type, + IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type, + IFC4X3_ADD1_IfcMember_type, + IFC4X3_ADD1_IfcMemberType_type, + IFC4X3_ADD1_IfcMemberTypeEnum_type, + IFC4X3_ADD1_IfcMetric_type, + IFC4X3_ADD1_IfcMetricValueSelect_type, + IFC4X3_ADD1_IfcMirroredProfileDef_type, + IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type, + IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type, + IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type, + IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type, + IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type, + IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type, + IFC4X3_ADD1_IfcMolecularWeightMeasure_type, + IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type, + IFC4X3_ADD1_IfcMonetaryMeasure_type, + IFC4X3_ADD1_IfcMonetaryUnit_type, + IFC4X3_ADD1_IfcMonthInYearNumber_type, + IFC4X3_ADD1_IfcMooringDevice_type, + IFC4X3_ADD1_IfcMooringDeviceType_type, + IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type, + IFC4X3_ADD1_IfcMotorConnection_type, + IFC4X3_ADD1_IfcMotorConnectionType_type, + IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type, + IFC4X3_ADD1_IfcNamedUnit_type, + IFC4X3_ADD1_IfcNavigationElement_type, + IFC4X3_ADD1_IfcNavigationElementType_type, + IFC4X3_ADD1_IfcNavigationElementTypeEnum_type, + IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type, + IFC4X3_ADD1_IfcNormalisedRatioMeasure_type, + IFC4X3_ADD1_IfcNumericMeasure_type, + IFC4X3_ADD1_IfcObject_type, + IFC4X3_ADD1_IfcObjectDefinition_type, + IFC4X3_ADD1_IfcObjective_type, + IFC4X3_ADD1_IfcObjectiveEnum_type, + IFC4X3_ADD1_IfcObjectPlacement_type, + IFC4X3_ADD1_IfcObjectReferenceSelect_type, + IFC4X3_ADD1_IfcOccupant_type, + IFC4X3_ADD1_IfcOccupantTypeEnum_type, + IFC4X3_ADD1_IfcOffsetCurve_type, + IFC4X3_ADD1_IfcOffsetCurve2D_type, + IFC4X3_ADD1_IfcOffsetCurve3D_type, + IFC4X3_ADD1_IfcOffsetCurveByDistances_type, + IFC4X3_ADD1_IfcOpenCrossProfileDef_type, + IFC4X3_ADD1_IfcOpeningElement_type, + IFC4X3_ADD1_IfcOpeningElementTypeEnum_type, + IFC4X3_ADD1_IfcOpenShell_type, + IFC4X3_ADD1_IfcOrganization_type, + IFC4X3_ADD1_IfcOrganizationRelationship_type, + IFC4X3_ADD1_IfcOrientedEdge_type, + IFC4X3_ADD1_IfcOuterBoundaryCurve_type, + IFC4X3_ADD1_IfcOutlet_type, + IFC4X3_ADD1_IfcOutletType_type, + IFC4X3_ADD1_IfcOutletTypeEnum_type, + IFC4X3_ADD1_IfcOwnerHistory_type, + IFC4X3_ADD1_IfcParameterizedProfileDef_type, + IFC4X3_ADD1_IfcParameterValue_type, + IFC4X3_ADD1_IfcPath_type, + IFC4X3_ADD1_IfcPavement_type, + IFC4X3_ADD1_IfcPavementType_type, + IFC4X3_ADD1_IfcPavementTypeEnum_type, + IFC4X3_ADD1_IfcPcurve_type, + IFC4X3_ADD1_IfcPerformanceHistory_type, + IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type, + IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type, + IFC4X3_ADD1_IfcPermeableCoveringProperties_type, + IFC4X3_ADD1_IfcPermit_type, + IFC4X3_ADD1_IfcPermitTypeEnum_type, + IFC4X3_ADD1_IfcPerson_type, + IFC4X3_ADD1_IfcPersonAndOrganization_type, + IFC4X3_ADD1_IfcPHMeasure_type, + IFC4X3_ADD1_IfcPhysicalComplexQuantity_type, + IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type, + IFC4X3_ADD1_IfcPhysicalQuantity_type, + IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type, + IFC4X3_ADD1_IfcPile_type, + IFC4X3_ADD1_IfcPileConstructionEnum_type, + IFC4X3_ADD1_IfcPileType_type, + IFC4X3_ADD1_IfcPileTypeEnum_type, + IFC4X3_ADD1_IfcPipeFitting_type, + IFC4X3_ADD1_IfcPipeFittingType_type, + IFC4X3_ADD1_IfcPipeFittingTypeEnum_type, + IFC4X3_ADD1_IfcPipeSegment_type, + IFC4X3_ADD1_IfcPipeSegmentType_type, + IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type, + IFC4X3_ADD1_IfcPixelTexture_type, + IFC4X3_ADD1_IfcPlacement_type, + IFC4X3_ADD1_IfcPlanarBox_type, + IFC4X3_ADD1_IfcPlanarExtent_type, + IFC4X3_ADD1_IfcPlanarForceMeasure_type, + IFC4X3_ADD1_IfcPlane_type, + IFC4X3_ADD1_IfcPlaneAngleMeasure_type, + IFC4X3_ADD1_IfcPlate_type, + IFC4X3_ADD1_IfcPlateType_type, + IFC4X3_ADD1_IfcPlateTypeEnum_type, + IFC4X3_ADD1_IfcPoint_type, + IFC4X3_ADD1_IfcPointByDistanceExpression_type, + IFC4X3_ADD1_IfcPointOnCurve_type, + IFC4X3_ADD1_IfcPointOnSurface_type, + IFC4X3_ADD1_IfcPointOrVertexPoint_type, + IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type, + IFC4X3_ADD1_IfcPolygonalFaceSet_type, + IFC4X3_ADD1_IfcPolyline_type, + IFC4X3_ADD1_IfcPolyLoop_type, + IFC4X3_ADD1_IfcPolynomialCurve_type, + IFC4X3_ADD1_IfcPort_type, + IFC4X3_ADD1_IfcPositioningElement_type, + IFC4X3_ADD1_IfcPositiveInteger_type, + IFC4X3_ADD1_IfcPositiveLengthMeasure_type, + IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type, + IFC4X3_ADD1_IfcPositiveRatioMeasure_type, + IFC4X3_ADD1_IfcPostalAddress_type, + IFC4X3_ADD1_IfcPowerMeasure_type, + IFC4X3_ADD1_IfcPreDefinedColour_type, + IFC4X3_ADD1_IfcPreDefinedCurveFont_type, + IFC4X3_ADD1_IfcPreDefinedItem_type, + IFC4X3_ADD1_IfcPreDefinedProperties_type, + IFC4X3_ADD1_IfcPreDefinedPropertySet_type, + IFC4X3_ADD1_IfcPreDefinedTextFont_type, + IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X3_ADD1_IfcPresentableText_type, + IFC4X3_ADD1_IfcPresentationItem_type, + IFC4X3_ADD1_IfcPresentationLayerAssignment_type, + IFC4X3_ADD1_IfcPresentationLayerWithStyle_type, + IFC4X3_ADD1_IfcPresentationStyle_type, + IFC4X3_ADD1_IfcPressureMeasure_type, + IFC4X3_ADD1_IfcProcedure_type, + IFC4X3_ADD1_IfcProcedureType_type, + IFC4X3_ADD1_IfcProcedureTypeEnum_type, + IFC4X3_ADD1_IfcProcess_type, + IFC4X3_ADD1_IfcProcessSelect_type, + IFC4X3_ADD1_IfcProduct_type, + IFC4X3_ADD1_IfcProductDefinitionShape_type, + IFC4X3_ADD1_IfcProductRepresentation_type, + IFC4X3_ADD1_IfcProductRepresentationSelect_type, + IFC4X3_ADD1_IfcProductSelect_type, + IFC4X3_ADD1_IfcProfileDef_type, + IFC4X3_ADD1_IfcProfileProperties_type, + IFC4X3_ADD1_IfcProfileTypeEnum_type, + IFC4X3_ADD1_IfcProject_type, + IFC4X3_ADD1_IfcProjectedCRS_type, + IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type, + IFC4X3_ADD1_IfcProjectionElement_type, + IFC4X3_ADD1_IfcProjectionElementTypeEnum_type, + IFC4X3_ADD1_IfcProjectLibrary_type, + IFC4X3_ADD1_IfcProjectOrder_type, + IFC4X3_ADD1_IfcProjectOrderTypeEnum_type, + IFC4X3_ADD1_IfcProperty_type, + IFC4X3_ADD1_IfcPropertyAbstraction_type, + IFC4X3_ADD1_IfcPropertyBoundedValue_type, + IFC4X3_ADD1_IfcPropertyDefinition_type, + IFC4X3_ADD1_IfcPropertyDependencyRelationship_type, + IFC4X3_ADD1_IfcPropertyEnumeratedValue_type, + IFC4X3_ADD1_IfcPropertyEnumeration_type, + IFC4X3_ADD1_IfcPropertyListValue_type, + IFC4X3_ADD1_IfcPropertyReferenceValue_type, + IFC4X3_ADD1_IfcPropertySet_type, + IFC4X3_ADD1_IfcPropertySetDefinition_type, + IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type, + IFC4X3_ADD1_IfcPropertySetDefinitionSet_type, + IFC4X3_ADD1_IfcPropertySetTemplate_type, + IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type, + IFC4X3_ADD1_IfcPropertySingleValue_type, + IFC4X3_ADD1_IfcPropertyTableValue_type, + IFC4X3_ADD1_IfcPropertyTemplate_type, + IFC4X3_ADD1_IfcPropertyTemplateDefinition_type, + IFC4X3_ADD1_IfcProtectiveDevice_type, + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type, + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X3_ADD1_IfcProtectiveDeviceType_type, + IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type, + IFC4X3_ADD1_IfcPump_type, + IFC4X3_ADD1_IfcPumpType_type, + IFC4X3_ADD1_IfcPumpTypeEnum_type, + IFC4X3_ADD1_IfcQuantityArea_type, + IFC4X3_ADD1_IfcQuantityCount_type, + IFC4X3_ADD1_IfcQuantityLength_type, + IFC4X3_ADD1_IfcQuantityNumber_type, + IFC4X3_ADD1_IfcQuantitySet_type, + IFC4X3_ADD1_IfcQuantityTime_type, + IFC4X3_ADD1_IfcQuantityVolume_type, + IFC4X3_ADD1_IfcQuantityWeight_type, + IFC4X3_ADD1_IfcRadioActivityMeasure_type, + IFC4X3_ADD1_IfcRail_type, + IFC4X3_ADD1_IfcRailing_type, + IFC4X3_ADD1_IfcRailingType_type, + IFC4X3_ADD1_IfcRailingTypeEnum_type, + IFC4X3_ADD1_IfcRailType_type, + IFC4X3_ADD1_IfcRailTypeEnum_type, + IFC4X3_ADD1_IfcRailway_type, + IFC4X3_ADD1_IfcRailwayPart_type, + IFC4X3_ADD1_IfcRailwayPartTypeEnum_type, + IFC4X3_ADD1_IfcRailwayTypeEnum_type, + IFC4X3_ADD1_IfcRamp_type, + IFC4X3_ADD1_IfcRampFlight_type, + IFC4X3_ADD1_IfcRampFlightType_type, + IFC4X3_ADD1_IfcRampFlightTypeEnum_type, + IFC4X3_ADD1_IfcRampType_type, + IFC4X3_ADD1_IfcRampTypeEnum_type, + IFC4X3_ADD1_IfcRatioMeasure_type, + IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type, + IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X3_ADD1_IfcReal_type, + IFC4X3_ADD1_IfcRectangleHollowProfileDef_type, + IFC4X3_ADD1_IfcRectangleProfileDef_type, + IFC4X3_ADD1_IfcRectangularPyramid_type, + IFC4X3_ADD1_IfcRectangularTrimmedSurface_type, + IFC4X3_ADD1_IfcRecurrencePattern_type, + IFC4X3_ADD1_IfcRecurrenceTypeEnum_type, + IFC4X3_ADD1_IfcReference_type, + IFC4X3_ADD1_IfcReferent_type, + IFC4X3_ADD1_IfcReferentTypeEnum_type, + IFC4X3_ADD1_IfcReflectanceMethodEnum_type, + IFC4X3_ADD1_IfcRegularTimeSeries_type, + IFC4X3_ADD1_IfcReinforcedSoil_type, + IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type, + IFC4X3_ADD1_IfcReinforcementBarProperties_type, + IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type, + IFC4X3_ADD1_IfcReinforcingBar_type, + IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type, + IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type, + IFC4X3_ADD1_IfcReinforcingBarType_type, + IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type, + IFC4X3_ADD1_IfcReinforcingElement_type, + IFC4X3_ADD1_IfcReinforcingElementType_type, + IFC4X3_ADD1_IfcReinforcingMesh_type, + IFC4X3_ADD1_IfcReinforcingMeshType_type, + IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type, + IFC4X3_ADD1_IfcRelAdheresToElement_type, + IFC4X3_ADD1_IfcRelAggregates_type, + IFC4X3_ADD1_IfcRelAssigns_type, + IFC4X3_ADD1_IfcRelAssignsToActor_type, + IFC4X3_ADD1_IfcRelAssignsToControl_type, + IFC4X3_ADD1_IfcRelAssignsToGroup_type, + IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type, + IFC4X3_ADD1_IfcRelAssignsToProcess_type, + IFC4X3_ADD1_IfcRelAssignsToProduct_type, + IFC4X3_ADD1_IfcRelAssignsToResource_type, + IFC4X3_ADD1_IfcRelAssociates_type, + IFC4X3_ADD1_IfcRelAssociatesApproval_type, + IFC4X3_ADD1_IfcRelAssociatesClassification_type, + IFC4X3_ADD1_IfcRelAssociatesConstraint_type, + IFC4X3_ADD1_IfcRelAssociatesDocument_type, + IFC4X3_ADD1_IfcRelAssociatesLibrary_type, + IFC4X3_ADD1_IfcRelAssociatesMaterial_type, + IFC4X3_ADD1_IfcRelAssociatesProfileDef_type, + IFC4X3_ADD1_IfcRelationship_type, + IFC4X3_ADD1_IfcRelConnects_type, + IFC4X3_ADD1_IfcRelConnectsElements_type, + IFC4X3_ADD1_IfcRelConnectsPathElements_type, + IFC4X3_ADD1_IfcRelConnectsPorts_type, + IFC4X3_ADD1_IfcRelConnectsPortToElement_type, + IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type, + IFC4X3_ADD1_IfcRelConnectsStructuralMember_type, + IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type, + IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type, + IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type, + IFC4X3_ADD1_IfcRelCoversBldgElements_type, + IFC4X3_ADD1_IfcRelCoversSpaces_type, + IFC4X3_ADD1_IfcRelDeclares_type, + IFC4X3_ADD1_IfcRelDecomposes_type, + IFC4X3_ADD1_IfcRelDefines_type, + IFC4X3_ADD1_IfcRelDefinesByObject_type, + IFC4X3_ADD1_IfcRelDefinesByProperties_type, + IFC4X3_ADD1_IfcRelDefinesByTemplate_type, + IFC4X3_ADD1_IfcRelDefinesByType_type, + IFC4X3_ADD1_IfcRelFillsElement_type, + IFC4X3_ADD1_IfcRelFlowControlElements_type, + IFC4X3_ADD1_IfcRelInterferesElements_type, + IFC4X3_ADD1_IfcRelNests_type, + IFC4X3_ADD1_IfcRelPositions_type, + IFC4X3_ADD1_IfcRelProjectsElement_type, + IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type, + IFC4X3_ADD1_IfcRelSequence_type, + IFC4X3_ADD1_IfcRelServicesBuildings_type, + IFC4X3_ADD1_IfcRelSpaceBoundary_type, + IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type, + IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type, + IFC4X3_ADD1_IfcRelVoidsElement_type, + IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type, + IFC4X3_ADD1_IfcRepresentation_type, + IFC4X3_ADD1_IfcRepresentationContext_type, + IFC4X3_ADD1_IfcRepresentationItem_type, + IFC4X3_ADD1_IfcRepresentationMap_type, + IFC4X3_ADD1_IfcResource_type, + IFC4X3_ADD1_IfcResourceApprovalRelationship_type, + IFC4X3_ADD1_IfcResourceConstraintRelationship_type, + IFC4X3_ADD1_IfcResourceLevelRelationship_type, + IFC4X3_ADD1_IfcResourceObjectSelect_type, + IFC4X3_ADD1_IfcResourceSelect_type, + IFC4X3_ADD1_IfcResourceTime_type, + IFC4X3_ADD1_IfcRevolvedAreaSolid_type, + IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type, + IFC4X3_ADD1_IfcRightCircularCone_type, + IFC4X3_ADD1_IfcRightCircularCylinder_type, + IFC4X3_ADD1_IfcRigidOperation_type, + IFC4X3_ADD1_IfcRoad_type, + IFC4X3_ADD1_IfcRoadPart_type, + IFC4X3_ADD1_IfcRoadPartTypeEnum_type, + IFC4X3_ADD1_IfcRoadTypeEnum_type, + IFC4X3_ADD1_IfcRoleEnum_type, + IFC4X3_ADD1_IfcRoof_type, + IFC4X3_ADD1_IfcRoofType_type, + IFC4X3_ADD1_IfcRoofTypeEnum_type, + IFC4X3_ADD1_IfcRoot_type, + IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type, + IFC4X3_ADD1_IfcRotationalMassMeasure_type, + IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type, + IFC4X3_ADD1_IfcRotationalStiffnessSelect_type, + IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type, + IFC4X3_ADD1_IfcSanitaryTerminal_type, + IFC4X3_ADD1_IfcSanitaryTerminalType_type, + IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type, + IFC4X3_ADD1_IfcSchedulingTime_type, + IFC4X3_ADD1_IfcSeamCurve_type, + IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type, + IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_ADD1_IfcSectionedSolid_type, + IFC4X3_ADD1_IfcSectionedSolidHorizontal_type, + IFC4X3_ADD1_IfcSectionedSpine_type, + IFC4X3_ADD1_IfcSectionedSurface_type, + IFC4X3_ADD1_IfcSectionModulusMeasure_type, + IFC4X3_ADD1_IfcSectionProperties_type, + IFC4X3_ADD1_IfcSectionReinforcementProperties_type, + IFC4X3_ADD1_IfcSectionTypeEnum_type, + IFC4X3_ADD1_IfcSegment_type, + IFC4X3_ADD1_IfcSegmentedReferenceCurve_type, + IFC4X3_ADD1_IfcSegmentIndexSelect_type, + IFC4X3_ADD1_IfcSensor_type, + IFC4X3_ADD1_IfcSensorType_type, + IFC4X3_ADD1_IfcSensorTypeEnum_type, + IFC4X3_ADD1_IfcSequenceEnum_type, + IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type, + IFC4X3_ADD1_IfcShadingDevice_type, + IFC4X3_ADD1_IfcShadingDeviceType_type, + IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type, + IFC4X3_ADD1_IfcShapeAspect_type, + IFC4X3_ADD1_IfcShapeModel_type, + IFC4X3_ADD1_IfcShapeRepresentation_type, + IFC4X3_ADD1_IfcShearModulusMeasure_type, + IFC4X3_ADD1_IfcShell_type, + IFC4X3_ADD1_IfcShellBasedSurfaceModel_type, + IFC4X3_ADD1_IfcSign_type, + IFC4X3_ADD1_IfcSignal_type, + IFC4X3_ADD1_IfcSignalType_type, + IFC4X3_ADD1_IfcSignalTypeEnum_type, + IFC4X3_ADD1_IfcSignType_type, + IFC4X3_ADD1_IfcSignTypeEnum_type, + IFC4X3_ADD1_IfcSimpleProperty_type, + IFC4X3_ADD1_IfcSimplePropertyTemplate_type, + IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X3_ADD1_IfcSimpleValue_type, + IFC4X3_ADD1_IfcSineSpiral_type, + IFC4X3_ADD1_IfcSIPrefix_type, + IFC4X3_ADD1_IfcSite_type, + IFC4X3_ADD1_IfcSIUnit_type, + IFC4X3_ADD1_IfcSIUnitName_type, + IFC4X3_ADD1_IfcSizeSelect_type, + IFC4X3_ADD1_IfcSlab_type, + IFC4X3_ADD1_IfcSlabType_type, + IFC4X3_ADD1_IfcSlabTypeEnum_type, + IFC4X3_ADD1_IfcSlippageConnectionCondition_type, + IFC4X3_ADD1_IfcSolarDevice_type, + IFC4X3_ADD1_IfcSolarDeviceType_type, + IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type, + IFC4X3_ADD1_IfcSolidAngleMeasure_type, + IFC4X3_ADD1_IfcSolidModel_type, + IFC4X3_ADD1_IfcSolidOrShell_type, + IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type, + IFC4X3_ADD1_IfcSoundPowerMeasure_type, + IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type, + IFC4X3_ADD1_IfcSoundPressureMeasure_type, + IFC4X3_ADD1_IfcSpace_type, + IFC4X3_ADD1_IfcSpaceBoundarySelect_type, + IFC4X3_ADD1_IfcSpaceHeater_type, + IFC4X3_ADD1_IfcSpaceHeaterType_type, + IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type, + IFC4X3_ADD1_IfcSpaceType_type, + IFC4X3_ADD1_IfcSpaceTypeEnum_type, + IFC4X3_ADD1_IfcSpatialElement_type, + IFC4X3_ADD1_IfcSpatialElementType_type, + IFC4X3_ADD1_IfcSpatialReferenceSelect_type, + IFC4X3_ADD1_IfcSpatialStructureElement_type, + IFC4X3_ADD1_IfcSpatialStructureElementType_type, + IFC4X3_ADD1_IfcSpatialZone_type, + IFC4X3_ADD1_IfcSpatialZoneType_type, + IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type, + IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_ADD1_IfcSpecularExponent_type, + IFC4X3_ADD1_IfcSpecularHighlightSelect_type, + IFC4X3_ADD1_IfcSpecularRoughness_type, + IFC4X3_ADD1_IfcSphere_type, + IFC4X3_ADD1_IfcSphericalSurface_type, + IFC4X3_ADD1_IfcSpiral_type, + IFC4X3_ADD1_IfcStackTerminal_type, + IFC4X3_ADD1_IfcStackTerminalType_type, + IFC4X3_ADD1_IfcStackTerminalTypeEnum_type, + IFC4X3_ADD1_IfcStair_type, + IFC4X3_ADD1_IfcStairFlight_type, + IFC4X3_ADD1_IfcStairFlightType_type, + IFC4X3_ADD1_IfcStairFlightTypeEnum_type, + IFC4X3_ADD1_IfcStairType_type, + IFC4X3_ADD1_IfcStairTypeEnum_type, + IFC4X3_ADD1_IfcStateEnum_type, + IFC4X3_ADD1_IfcStrippedOptional_type, + IFC4X3_ADD1_IfcStructuralAction_type, + IFC4X3_ADD1_IfcStructuralActivity_type, + IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type, + IFC4X3_ADD1_IfcStructuralAnalysisModel_type, + IFC4X3_ADD1_IfcStructuralConnection_type, + IFC4X3_ADD1_IfcStructuralConnectionCondition_type, + IFC4X3_ADD1_IfcStructuralCurveAction_type, + IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type, + IFC4X3_ADD1_IfcStructuralCurveConnection_type, + IFC4X3_ADD1_IfcStructuralCurveMember_type, + IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type, + IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type, + IFC4X3_ADD1_IfcStructuralCurveReaction_type, + IFC4X3_ADD1_IfcStructuralItem_type, + IFC4X3_ADD1_IfcStructuralLinearAction_type, + IFC4X3_ADD1_IfcStructuralLoad_type, + IFC4X3_ADD1_IfcStructuralLoadCase_type, + IFC4X3_ADD1_IfcStructuralLoadConfiguration_type, + IFC4X3_ADD1_IfcStructuralLoadGroup_type, + IFC4X3_ADD1_IfcStructuralLoadLinearForce_type, + IFC4X3_ADD1_IfcStructuralLoadOrResult_type, + IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type, + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type, + IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X3_ADD1_IfcStructuralLoadSingleForce_type, + IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type, + IFC4X3_ADD1_IfcStructuralLoadStatic_type, + IFC4X3_ADD1_IfcStructuralLoadTemperature_type, + IFC4X3_ADD1_IfcStructuralMember_type, + IFC4X3_ADD1_IfcStructuralPlanarAction_type, + IFC4X3_ADD1_IfcStructuralPointAction_type, + IFC4X3_ADD1_IfcStructuralPointConnection_type, + IFC4X3_ADD1_IfcStructuralPointReaction_type, + IFC4X3_ADD1_IfcStructuralReaction_type, + IFC4X3_ADD1_IfcStructuralResultGroup_type, + IFC4X3_ADD1_IfcStructuralSurfaceAction_type, + IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X3_ADD1_IfcStructuralSurfaceConnection_type, + IFC4X3_ADD1_IfcStructuralSurfaceMember_type, + IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type, + IFC4X3_ADD1_IfcStructuralSurfaceReaction_type, + IFC4X3_ADD1_IfcStyledItem_type, + IFC4X3_ADD1_IfcStyledRepresentation_type, + IFC4X3_ADD1_IfcStyleModel_type, + IFC4X3_ADD1_IfcSubContractResource_type, + IFC4X3_ADD1_IfcSubContractResourceType_type, + IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type, + IFC4X3_ADD1_IfcSubedge_type, + IFC4X3_ADD1_IfcSurface_type, + IFC4X3_ADD1_IfcSurfaceCurve_type, + IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X3_ADD1_IfcSurfaceFeature_type, + IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type, + IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type, + IFC4X3_ADD1_IfcSurfaceOfRevolution_type, + IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type, + IFC4X3_ADD1_IfcSurfaceReinforcementArea_type, + IFC4X3_ADD1_IfcSurfaceSide_type, + IFC4X3_ADD1_IfcSurfaceStyle_type, + IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type, + IFC4X3_ADD1_IfcSurfaceStyleLighting_type, + IFC4X3_ADD1_IfcSurfaceStyleRefraction_type, + IFC4X3_ADD1_IfcSurfaceStyleRendering_type, + IFC4X3_ADD1_IfcSurfaceStyleShading_type, + IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type, + IFC4X3_ADD1_IfcSurfaceTexture_type, + IFC4X3_ADD1_IfcSweptAreaSolid_type, + IFC4X3_ADD1_IfcSweptDiskSolid_type, + IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type, + IFC4X3_ADD1_IfcSweptSurface_type, + IFC4X3_ADD1_IfcSwitchingDevice_type, + IFC4X3_ADD1_IfcSwitchingDeviceType_type, + IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type, + IFC4X3_ADD1_IfcSystem_type, + IFC4X3_ADD1_IfcSystemFurnitureElement_type, + IFC4X3_ADD1_IfcSystemFurnitureElementType_type, + IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type, + IFC4X3_ADD1_IfcTable_type, + IFC4X3_ADD1_IfcTableColumn_type, + IFC4X3_ADD1_IfcTableRow_type, + IFC4X3_ADD1_IfcTank_type, + IFC4X3_ADD1_IfcTankType_type, + IFC4X3_ADD1_IfcTankTypeEnum_type, + IFC4X3_ADD1_IfcTask_type, + IFC4X3_ADD1_IfcTaskDurationEnum_type, + IFC4X3_ADD1_IfcTaskTime_type, + IFC4X3_ADD1_IfcTaskTimeRecurring_type, + IFC4X3_ADD1_IfcTaskType_type, + IFC4X3_ADD1_IfcTaskTypeEnum_type, + IFC4X3_ADD1_IfcTelecomAddress_type, + IFC4X3_ADD1_IfcTemperatureGradientMeasure_type, + IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_ADD1_IfcTendon_type, + IFC4X3_ADD1_IfcTendonAnchor_type, + IFC4X3_ADD1_IfcTendonAnchorType_type, + IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type, + IFC4X3_ADD1_IfcTendonConduit_type, + IFC4X3_ADD1_IfcTendonConduitType_type, + IFC4X3_ADD1_IfcTendonConduitTypeEnum_type, + IFC4X3_ADD1_IfcTendonType_type, + IFC4X3_ADD1_IfcTendonTypeEnum_type, + IFC4X3_ADD1_IfcTessellatedFaceSet_type, + IFC4X3_ADD1_IfcTessellatedItem_type, + IFC4X3_ADD1_IfcText_type, + IFC4X3_ADD1_IfcTextAlignment_type, + IFC4X3_ADD1_IfcTextDecoration_type, + IFC4X3_ADD1_IfcTextFontName_type, + IFC4X3_ADD1_IfcTextFontSelect_type, + IFC4X3_ADD1_IfcTextLiteral_type, + IFC4X3_ADD1_IfcTextLiteralWithExtent_type, + IFC4X3_ADD1_IfcTextPath_type, + IFC4X3_ADD1_IfcTextStyle_type, + IFC4X3_ADD1_IfcTextStyleFontModel_type, + IFC4X3_ADD1_IfcTextStyleForDefinedFont_type, + IFC4X3_ADD1_IfcTextStyleTextModel_type, + IFC4X3_ADD1_IfcTextTransformation_type, + IFC4X3_ADD1_IfcTextureCoordinate_type, + IFC4X3_ADD1_IfcTextureCoordinateGenerator_type, + IFC4X3_ADD1_IfcTextureCoordinateIndices_type, + IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type, + IFC4X3_ADD1_IfcTextureMap_type, + IFC4X3_ADD1_IfcTextureVertex_type, + IFC4X3_ADD1_IfcTextureVertexList_type, + IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type, + IFC4X3_ADD1_IfcThermalConductivityMeasure_type, + IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_ADD1_IfcThermalResistanceMeasure_type, + IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type, + IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type, + IFC4X3_ADD1_IfcTime_type, + IFC4X3_ADD1_IfcTimeMeasure_type, + IFC4X3_ADD1_IfcTimeOrRatioSelect_type, + IFC4X3_ADD1_IfcTimePeriod_type, + IFC4X3_ADD1_IfcTimeSeries_type, + IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type, + IFC4X3_ADD1_IfcTimeSeriesValue_type, + IFC4X3_ADD1_IfcTimeStamp_type, + IFC4X3_ADD1_IfcTopologicalRepresentationItem_type, + IFC4X3_ADD1_IfcTopologyRepresentation_type, + IFC4X3_ADD1_IfcToroidalSurface_type, + IFC4X3_ADD1_IfcTorqueMeasure_type, + IFC4X3_ADD1_IfcTrackElement_type, + IFC4X3_ADD1_IfcTrackElementType_type, + IFC4X3_ADD1_IfcTrackElementTypeEnum_type, + IFC4X3_ADD1_IfcTransformer_type, + IFC4X3_ADD1_IfcTransformerType_type, + IFC4X3_ADD1_IfcTransformerTypeEnum_type, + IFC4X3_ADD1_IfcTransitionCode_type, + IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type, + IFC4X3_ADD1_IfcTransportationDevice_type, + IFC4X3_ADD1_IfcTransportationDeviceType_type, + IFC4X3_ADD1_IfcTransportElement_type, + IFC4X3_ADD1_IfcTransportElementType_type, + IFC4X3_ADD1_IfcTransportElementTypeEnum_type, + IFC4X3_ADD1_IfcTrapeziumProfileDef_type, + IFC4X3_ADD1_IfcTriangulatedFaceSet_type, + IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type, + IFC4X3_ADD1_IfcTrimmedCurve_type, + IFC4X3_ADD1_IfcTrimmingPreference_type, + IFC4X3_ADD1_IfcTrimmingSelect_type, + IFC4X3_ADD1_IfcTShapeProfileDef_type, + IFC4X3_ADD1_IfcTubeBundle_type, + IFC4X3_ADD1_IfcTubeBundleType_type, + IFC4X3_ADD1_IfcTubeBundleTypeEnum_type, + IFC4X3_ADD1_IfcTypeObject_type, + IFC4X3_ADD1_IfcTypeProcess_type, + IFC4X3_ADD1_IfcTypeProduct_type, + IFC4X3_ADD1_IfcTypeResource_type, + IFC4X3_ADD1_IfcUnit_type, + IFC4X3_ADD1_IfcUnitaryControlElement_type, + IFC4X3_ADD1_IfcUnitaryControlElementType_type, + IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type, + IFC4X3_ADD1_IfcUnitaryEquipment_type, + IFC4X3_ADD1_IfcUnitaryEquipmentType_type, + IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type, + IFC4X3_ADD1_IfcUnitAssignment_type, + IFC4X3_ADD1_IfcUnitEnum_type, + IFC4X3_ADD1_IfcURIReference_type, + IFC4X3_ADD1_IfcUShapeProfileDef_type, + IFC4X3_ADD1_IfcValue_type, + IFC4X3_ADD1_IfcValve_type, + IFC4X3_ADD1_IfcValveType_type, + IFC4X3_ADD1_IfcValveTypeEnum_type, + IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type, + IFC4X3_ADD1_IfcVector_type, + IFC4X3_ADD1_IfcVectorOrDirection_type, + IFC4X3_ADD1_IfcVehicle_type, + IFC4X3_ADD1_IfcVehicleType_type, + IFC4X3_ADD1_IfcVehicleTypeEnum_type, + IFC4X3_ADD1_IfcVertex_type, + IFC4X3_ADD1_IfcVertexLoop_type, + IFC4X3_ADD1_IfcVertexPoint_type, + IFC4X3_ADD1_IfcVibrationDamper_type, + IFC4X3_ADD1_IfcVibrationDamperType_type, + IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type, + IFC4X3_ADD1_IfcVibrationIsolator_type, + IFC4X3_ADD1_IfcVibrationIsolatorType_type, + IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type, + IFC4X3_ADD1_IfcVirtualElement_type, + IFC4X3_ADD1_IfcVirtualElementTypeEnum_type, + IFC4X3_ADD1_IfcVirtualGridIntersection_type, + IFC4X3_ADD1_IfcVoidingFeature_type, + IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type, + IFC4X3_ADD1_IfcVolumeMeasure_type, + IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type, + IFC4X3_ADD1_IfcWall_type, + IFC4X3_ADD1_IfcWallStandardCase_type, + IFC4X3_ADD1_IfcWallType_type, + IFC4X3_ADD1_IfcWallTypeEnum_type, + IFC4X3_ADD1_IfcWarpingConstantMeasure_type, + IFC4X3_ADD1_IfcWarpingMomentMeasure_type, + IFC4X3_ADD1_IfcWarpingStiffnessSelect_type, + IFC4X3_ADD1_IfcWasteTerminal_type, + IFC4X3_ADD1_IfcWasteTerminalType_type, + IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type, + IFC4X3_ADD1_IfcWellKnownText_type, + IFC4X3_ADD1_IfcWellKnownTextLiteral_type, + IFC4X3_ADD1_IfcWindow_type, + IFC4X3_ADD1_IfcWindowLiningProperties_type, + IFC4X3_ADD1_IfcWindowPanelOperationEnum_type, + IFC4X3_ADD1_IfcWindowPanelPositionEnum_type, + IFC4X3_ADD1_IfcWindowPanelProperties_type, + IFC4X3_ADD1_IfcWindowType_type, + IFC4X3_ADD1_IfcWindowTypeEnum_type, + IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type, + IFC4X3_ADD1_IfcWorkCalendar_type, + IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type, + IFC4X3_ADD1_IfcWorkControl_type, + IFC4X3_ADD1_IfcWorkPlan_type, + IFC4X3_ADD1_IfcWorkPlanTypeEnum_type, + IFC4X3_ADD1_IfcWorkSchedule_type, + IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type, + IFC4X3_ADD1_IfcWorkTime_type, + IFC4X3_ADD1_IfcZone_type, + IFC4X3_ADD1_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3909], declarations, new IFC4X3_ADD1_instance_factory()); } diff --git a/src/ifcparse/Ifc4x3_add1.cpp b/src/ifcparse/Ifc4x3_add1.cpp index a30b67c589..16a311511a 100644 --- a/src/ifcparse/Ifc4x3_add1.cpp +++ b/src/ifcparse/Ifc4x3_add1.cpp @@ -1373,20 +1373,11 @@ Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcActionRequestTypeEnum::Value Ifc4x3_add1::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcActionRequestTypeEnum::Value) IFC4X3_ADD1_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcActionRequestTypeEnum::operator Ifc4x3_add1::IfcActionRequestTypeEnum::Value() const { @@ -1415,40 +1406,11 @@ Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRAKES", "BUOYANCY", "COMPLETION_G1", "CREEP", "CURRENT", "DEAD_LOAD_G", "EARTHQUAKE_E", "ERECTION", "FIRE", "ICE", "IMPACT", "IMPULSE", "LACK_OF_FIT", "LIVE_LOAD_Q", "PRESTRESSING_P", "PROPPING", "RAIN", "SETTLEMENT_U", "SHRINKAGE", "SNOW_S", "SYSTEM_IMPERFECTION", "TEMPERATURE_T", "TRANSPORT", "WAVE", "WIND_W", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcActionSourceTypeEnum::Value Ifc4x3_add1::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "BRAKES") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "BUOYANCY") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "COMPLETION_G1") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "CREEP") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "CURRENT") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "DEAD_LOAD_G") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "EARTHQUAKE_E") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "ERECTION") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "FIRE") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "ICE") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "IMPACT") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "IMPULSE") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "LACK_OF_FIT") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "LIVE_LOAD_Q") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "PRESTRESSING_P") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "PROPPING") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "RAIN") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "SETTLEMENT_U") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "SHRINKAGE") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "SNOW_S") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "TEMPERATURE_T") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "TRANSPORT") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "WAVE") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "WIND_W") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcActionSourceTypeEnum::Value) IFC4X3_ADD1_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcActionSourceTypeEnum::operator Ifc4x3_add1::IfcActionSourceTypeEnum::Value() const { @@ -1477,18 +1439,11 @@ Ifc4x3_add1::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTRAORDINARY_A", "PERMANENT_G", "VARIABLE_Q", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcActionTypeEnum::Value Ifc4x3_add1::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "EXTRAORDINARY_A") return ::Ifc4x3_add1::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "PERMANENT_G") return ::Ifc4x3_add1::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x3_add1::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcActionTypeEnum::Value) IFC4X3_ADD1_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcActionTypeEnum::operator Ifc4x3_add1::IfcActionTypeEnum::Value() const { @@ -1517,20 +1472,11 @@ Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcActuatorTypeEnum::Value Ifc4x3_add1::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcActuatorTypeEnum::Value) IFC4X3_ADD1_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcActuatorTypeEnum::operator Ifc4x3_add1::IfcActuatorTypeEnum::Value() const { @@ -1559,18 +1505,11 @@ Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISTRIBUTIONPOINT", "HOME", "OFFICE", "SITE", "USERDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAddressTypeEnum::Value Ifc4x3_add1::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "HOME") return ::Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "OFFICE") return ::Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAddressTypeEnum::Value) IFC4X3_ADD1_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAddressTypeEnum::operator Ifc4x3_add1::IfcAddressTypeEnum::Value() const { @@ -1599,18 +1538,11 @@ Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::str } const char* Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Value Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Value) IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::operator Ifc4x3_add1::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1639,19 +1571,11 @@ Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAirTerminalTypeEnum::Value Ifc4x3_add1::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAirTerminalTypeEnum::Value) IFC4X3_ADD1_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAirTerminalTypeEnum::operator Ifc4x3_add1::IfcAirTerminalTypeEnum::Value() const { @@ -1680,24 +1604,11 @@ Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(co } const char* Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "HEATPIPE", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "TWINTOWERENTHALPYRECOVERYLOOPS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "HEATPIPE") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "ROTARYWHEEL") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1726,23 +1637,11 @@ Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "RAILWAYCROCODILE", "RAILWAYDETONATOR", "SIREN", "WHISTLE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAlarmTypeEnum::Value Ifc4x3_add1::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "RAILWAYCROCODILE") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYCROCODILE; - if (s == "RAILWAYDETONATOR") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYDETONATOR; - if (s == "SIREN") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAlarmTypeEnum::Value) IFC4X3_ADD1_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAlarmTypeEnum::operator Ifc4x3_add1::IfcAlarmTypeEnum::Value() const { @@ -1771,20 +1670,11 @@ Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(co } const char* Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLOSSCURVE", "CONSTANTCANT", "COSINECURVE", "HELMERTCURVE", "LINEARTRANSITION", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::Value Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BLOSSCURVE") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_BLOSSCURVE; - if (s == "CONSTANTCANT") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_CONSTANTCANT; - if (s == "COSINECURVE") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_COSINECURVE; - if (s == "HELMERTCURVE") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_HELMERTCURVE; - if (s == "LINEARTRANSITION") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_LINEARTRANSITION; - if (s == "SINECURVE") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::Value) IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::operator Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum::Value() const { @@ -1813,22 +1703,11 @@ Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmen } const char* Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLOSSCURVE", "CIRCULARARC", "CLOTHOID", "COSINECURVE", "CUBIC", "HELMERTCURVE", "LINE", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::Value Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BLOSSCURVE") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_BLOSSCURVE; - if (s == "CIRCULARARC") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CIRCULARARC; - if (s == "CLOTHOID") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CLOTHOID; - if (s == "COSINECURVE") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_COSINECURVE; - if (s == "CUBIC") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CUBIC; - if (s == "HELMERTCURVE") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_HELMERTCURVE; - if (s == "LINE") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_LINE; - if (s == "SINECURVE") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::Value) IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::operator Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum::Value() const { @@ -1857,15 +1736,11 @@ Ifc4x3_add1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAlignmentTypeEnum::Value Ifc4x3_add1::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAlignmentTypeEnum::Value) IFC4X3_ADD1_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAlignmentTypeEnum::operator Ifc4x3_add1::IfcAlignmentTypeEnum::Value() const { @@ -1894,17 +1769,11 @@ Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentTyp } const char* Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULARARC", "CLOTHOID", "CONSTANTGRADIENT", "PARABOLICARC" }; - return names[v]; + return IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::Value Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULARARC") return ::Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CIRCULARARC; - if (s == "CLOTHOID") return ::Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CLOTHOID; - if (s == "CONSTANTGRADIENT") return ::Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT; - if (s == "PARABOLICARC") return ::Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_PARABOLICARC; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::Value) IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::operator Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum::Value() const { @@ -1933,18 +1802,11 @@ Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "LOADING_3D", "OUT_PLANE_LOADING_2D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value Ifc4x3_add1::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value) IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAnalysisModelTypeEnum::operator Ifc4x3_add1::IfcAnalysisModelTypeEnum::Value() const { @@ -1973,19 +1835,11 @@ Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::str } const char* Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Value) IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::operator Ifc4x3_add1::IfcAnalysisTheoryTypeEnum::Value() const { @@ -2014,24 +1868,11 @@ Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcAnnotationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASBUILTAREA", "ASBUILTLINE", "ASBUILTPOINT", "ASSUMEDAREA", "ASSUMEDLINE", "ASSUMEDPOINT", "NON_PHYSICAL_SIGNAL", "SUPERELEVATIONEVENT", "WIDTHEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAnnotationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAnnotationTypeEnum::Value Ifc4x3_add1::IfcAnnotationTypeEnum::FromString(const std::string& s) { - if (s == "ASBUILTAREA") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTAREA; - if (s == "ASBUILTLINE") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTLINE; - if (s == "ASBUILTPOINT") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTPOINT; - if (s == "ASSUMEDAREA") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDAREA; - if (s == "ASSUMEDLINE") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDLINE; - if (s == "ASSUMEDPOINT") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDPOINT; - if (s == "NON_PHYSICAL_SIGNAL") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_NON_PHYSICAL_SIGNAL; - if (s == "SUPERELEVATIONEVENT") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_SUPERELEVATIONEVENT; - if (s == "WIDTHEVENT") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_WIDTHEVENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAnnotationTypeEnum::IfcAnnotationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAnnotationTypeEnum::Value) IFC4X3_ADD1_IfcAnnotationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAnnotationTypeEnum::operator Ifc4x3_add1::IfcAnnotationTypeEnum::Value() const { @@ -2060,17 +1901,11 @@ Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::str } const char* Ifc4x3_add1::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X3_ADD1_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcArithmeticOperatorEnum::Value Ifc4x3_add1::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x3_add1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcArithmeticOperatorEnum::Value) IFC4X3_ADD1_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcArithmeticOperatorEnum::operator Ifc4x3_add1::IfcArithmeticOperatorEnum::Value() const { @@ -2099,16 +1934,11 @@ Ifc4x3_add1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FACTORY", "SITE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAssemblyPlaceEnum::Value Ifc4x3_add1::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "FACTORY") return ::Ifc4x3_add1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "SITE") return ::Ifc4x3_add1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAssemblyPlaceEnum::Value) IFC4X3_ADD1_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAssemblyPlaceEnum::operator Ifc4x3_add1::IfcAssemblyPlaceEnum::Value() const { @@ -2137,28 +1967,11 @@ Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(co } const char* Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "COMMUNICATIONTERMINAL", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "RECORDINGEQUIPMENT", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Value Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "COMMUNICATIONTERMINAL") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_COMMUNICATIONTERMINAL; - if (s == "DISPLAY") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "RECORDINGEQUIPMENT") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECORDINGEQUIPMENT; - if (s == "SPEAKER") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Value) IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::operator Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -2187,19 +2000,11 @@ Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x3_add1::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULAR_ARC", "ELLIPTIC_ARC", "HYPERBOLIC_ARC", "PARABOLIC_ARC", "POLYLINE_FORM", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_ADD1_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBSplineCurveForm::Value Ifc4x3_add1::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "CIRCULAR_ARC") return ::Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "POLYLINE_FORM") return ::Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "UNSPECIFIED") return ::Ifc4x3_add1::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBSplineCurveForm::Value) IFC4X3_ADD1_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBSplineCurveForm::operator Ifc4x3_add1::IfcBSplineCurveForm::Value() const { @@ -2228,24 +2033,11 @@ Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) } const char* Ifc4x3_add1::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONICAL_SURF", "CYLINDRICAL_SURF", "GENERALISED_CONE", "PLANE_SURF", "QUADRIC_SURF", "RULED_SURF", "SPHERICAL_SURF", "SURF_OF_LINEAR_EXTRUSION", "SURF_OF_REVOLUTION", "TOROIDAL_SURF", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_ADD1_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBSplineSurfaceForm::Value Ifc4x3_add1::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "CONICAL_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "PLANE_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "QUADRIC_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "RULED_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "TOROIDAL_SURF") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "UNSPECIFIED") return ::Ifc4x3_add1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBSplineSurfaceForm::Value) IFC4X3_ADD1_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBSplineSurfaceForm::operator Ifc4x3_add1::IfcBSplineSurfaceForm::Value() const { @@ -2274,27 +2066,11 @@ Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "CORNICE", "DIAPHRAGM", "EDGEBEAM", "GIRDER_SEGMENT", "HATSTONE", "HOLLOWCORE", "JOIST", "LINTEL", "PIERCAP", "SPANDREL", "T_BEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBeamTypeEnum::Value Ifc4x3_add1::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "CORNICE") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_CORNICE; - if (s == "DIAPHRAGM") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_DIAPHRAGM; - if (s == "EDGEBEAM") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_EDGEBEAM; - if (s == "GIRDER_SEGMENT") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_GIRDER_SEGMENT; - if (s == "HATSTONE") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_HATSTONE; - if (s == "HOLLOWCORE") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "JOIST") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "LINTEL") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "PIERCAP") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_PIERCAP; - if (s == "SPANDREL") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBeamTypeEnum::Value) IFC4X3_ADD1_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBeamTypeEnum::operator Ifc4x3_add1::IfcBeamTypeEnum::Value() const { @@ -2323,23 +2099,11 @@ Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcBearingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYLINDRICAL", "DISK", "ELASTOMERIC", "GUIDE", "POT", "ROCKER", "ROLLER", "SPHERICAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBearingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBearingTypeEnum::Value Ifc4x3_add1::IfcBearingTypeEnum::FromString(const std::string& s) { - if (s == "CYLINDRICAL") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_CYLINDRICAL; - if (s == "DISK") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_DISK; - if (s == "ELASTOMERIC") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_ELASTOMERIC; - if (s == "GUIDE") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_GUIDE; - if (s == "POT") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_POT; - if (s == "ROCKER") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_ROCKER; - if (s == "ROLLER") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_ROLLER; - if (s == "SPHERICAL") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_SPHERICAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBearingTypeEnum::IfcBearingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBearingTypeEnum::Value) IFC4X3_ADD1_IfcBearingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBearingTypeEnum::operator Ifc4x3_add1::IfcBearingTypeEnum::Value() const { @@ -2368,23 +2132,11 @@ Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EQUALTO", "GREATERTHAN", "GREATERTHANOREQUALTO", "INCLUDEDIN", "INCLUDES", "LESSTHAN", "LESSTHANOREQUALTO", "NOTEQUALTO", "NOTINCLUDEDIN", "NOTINCLUDES" }; - return names[v]; + return IFC4X3_ADD1_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBenchmarkEnum::Value Ifc4x3_add1::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "EQUALTO") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "GREATERTHAN") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "INCLUDEDIN") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "INCLUDES") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "LESSTHAN") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "NOTINCLUDEDIN") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - if (s == "NOTINCLUDES") return ::Ifc4x3_add1::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBenchmarkEnum::Value) IFC4X3_ADD1_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBenchmarkEnum::operator Ifc4x3_add1::IfcBenchmarkEnum::Value() const { @@ -2413,17 +2165,11 @@ Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAM", "WATER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBoilerTypeEnum::Value Ifc4x3_add1::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "STEAM") return ::Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "WATER") return ::Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBoilerTypeEnum::Value) IFC4X3_ADD1_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBoilerTypeEnum::operator Ifc4x3_add1::IfcBoilerTypeEnum::Value() const { @@ -2452,16 +2198,11 @@ Ifc4x3_add1::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x3_add1::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFERENCE", "INTERSECTION", "UNION" }; - return names[v]; + return IFC4X3_ADD1_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBooleanOperator::Value Ifc4x3_add1::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "DIFFERENCE") return ::Ifc4x3_add1::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - if (s == "INTERSECTION") return ::Ifc4x3_add1::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "UNION") return ::Ifc4x3_add1::IfcBooleanOperator::IfcBooleanOperator_UNION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBooleanOperator::Value) IFC4X3_ADD1_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBooleanOperator::operator Ifc4x3_add1::IfcBooleanOperator::Value() const { @@ -2490,25 +2231,11 @@ Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcBridgePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "DECK", "DECK_SEGMENT", "FOUNDATION", "PIER", "PIER_SEGMENT", "PYLON", "SUBSTRUCTURE", "SUPERSTRUCTURE", "SURFACESTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBridgePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBridgePartTypeEnum::Value Ifc4x3_add1::IfcBridgePartTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_ABUTMENT; - if (s == "DECK") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_DECK; - if (s == "DECK_SEGMENT") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_DECK_SEGMENT; - if (s == "FOUNDATION") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_FOUNDATION; - if (s == "PIER") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_PIER; - if (s == "PIER_SEGMENT") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_PIER_SEGMENT; - if (s == "PYLON") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_PYLON; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_SUPERSTRUCTURE; - if (s == "SURFACESTRUCTURE") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_SURFACESTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBridgePartTypeEnum::IfcBridgePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBridgePartTypeEnum::Value) IFC4X3_ADD1_IfcBridgePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBridgePartTypeEnum::operator Ifc4x3_add1::IfcBridgePartTypeEnum::Value() const { @@ -2537,23 +2264,11 @@ Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcBridgeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHED", "CABLE_STAYED", "CANTILEVER", "CULVERT", "FRAMEWORK", "GIRDER", "SUSPENSION", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBridgeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBridgeTypeEnum::Value Ifc4x3_add1::IfcBridgeTypeEnum::FromString(const std::string& s) { - if (s == "ARCHED") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_ARCHED; - if (s == "CABLE_STAYED") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_CABLE_STAYED; - if (s == "CANTILEVER") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_CANTILEVER; - if (s == "CULVERT") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_CULVERT; - if (s == "FRAMEWORK") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_FRAMEWORK; - if (s == "GIRDER") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_GIRDER; - if (s == "SUSPENSION") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_SUSPENSION; - if (s == "TRUSS") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBridgeTypeEnum::IfcBridgeType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBridgeTypeEnum::Value) IFC4X3_ADD1_IfcBridgeTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBridgeTypeEnum::operator Ifc4x3_add1::IfcBridgeTypeEnum::Value() const { @@ -2582,20 +2297,11 @@ Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(cons } const char* Ifc4x3_add1::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "APRON", "ARMOURUNIT", "INSULATION", "PRECASTPANEL", "SAFETYCAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Value Ifc4x3_add1::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "APRON") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_APRON; - if (s == "ARMOURUNIT") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_ARMOURUNIT; - if (s == "INSULATION") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "SAFETYCAGE") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_SAFETYCAGE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Value) IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBuildingElementPartTypeEnum::operator Ifc4x3_add1::IfcBuildingElementPartTypeEnum::Value() const { @@ -2624,20 +2330,11 @@ Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(co } const char* Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORSPACE", "PROVISIONFORVOID", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Value Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORSPACE") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "PROVISIONFORVOID") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Value) IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::operator Ifc4x3_add1::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2666,21 +2363,11 @@ Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::str } const char* Ifc4x3_add1::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBuildingSystemTypeEnum::Value Ifc4x3_add1::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBuildingSystemTypeEnum::Value) IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBuildingSystemTypeEnum::operator Ifc4x3_add1::IfcBuildingSystemTypeEnum::Value() const { @@ -2709,28 +2396,11 @@ Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcBuiltSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EROSIONPREVENTION", "FENESTRATION", "FOUNDATION", "LOADBEARING", "MOORING", "OUTERSHELL", "PRESTRESSING", "RAILWAYLINE", "RAILWAYTRACK", "REINFORCING", "SHADING", "TRACKCIRCUIT", "TRANSPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBuiltSystemTypeEnum::Value Ifc4x3_add1::IfcBuiltSystemTypeEnum::FromString(const std::string& s) { - if (s == "EROSIONPREVENTION") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_EROSIONPREVENTION; - if (s == "FENESTRATION") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_LOADBEARING; - if (s == "MOORING") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORING; - if (s == "OUTERSHELL") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_OUTERSHELL; - if (s == "PRESTRESSING") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_PRESTRESSING; - if (s == "RAILWAYLINE") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_RAILWAYLINE; - if (s == "RAILWAYTRACK") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_RAILWAYTRACK; - if (s == "REINFORCING") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_REINFORCING; - if (s == "SHADING") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_SHADING; - if (s == "TRACKCIRCUIT") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRACKCIRCUIT; - if (s == "TRANSPORT") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRANSPORT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBuiltSystemTypeEnum::Value) IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBuiltSystemTypeEnum::operator Ifc4x3_add1::IfcBuiltSystemTypeEnum::Value() const { @@ -2759,15 +2429,11 @@ Ifc4x3_add1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcBurnerTypeEnum::Value Ifc4x3_add1::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcBurnerTypeEnum::Value) IFC4X3_ADD1_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcBurnerTypeEnum::operator Ifc4x3_add1::IfcBurnerTypeEnum::Value() const { @@ -2796,22 +2462,11 @@ Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(cons } const char* Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "CROSS", "JUNCTION", "REDUCER", "TEE", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Value Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CONNECTOR; - if (s == "CROSS") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "JUNCTION") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_JUNCTION; - if (s == "REDUCER") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "TRANSITION") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Value) IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::operator Ifc4x3_add1::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2840,22 +2495,11 @@ Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(cons } const char* Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLEBRACKET", "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CATENARYWIRE", "CONDUITSEGMENT", "DROPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Value Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLEBRACKET") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLEBRACKET; - if (s == "CABLELADDERSEGMENT") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CATENARYWIRE") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CATENARYWIRE; - if (s == "CONDUITSEGMENT") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "DROPPER") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_DROPPER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Value) IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::operator Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2884,21 +2528,11 @@ Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "FANOUT", "JUNCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCableFittingTypeEnum::Value Ifc4x3_add1::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "FANOUT") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_FANOUT; - if (s == "JUNCTION") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCableFittingTypeEnum::Value) IFC4X3_ADD1_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCableFittingTypeEnum::operator Ifc4x3_add1::IfcCableFittingTypeEnum::Value() const { @@ -2927,25 +2561,11 @@ Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CONTACTWIRESEGMENT", "CORESEGMENT", "FIBERSEGMENT", "FIBERTUBE", "OPTICALCABLESEGMENT", "STITCHWIRE", "WIREPAIRSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCableSegmentTypeEnum::Value Ifc4x3_add1::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CONTACTWIRESEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONTACTWIRESEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "FIBERSEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERSEGMENT; - if (s == "FIBERTUBE") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERTUBE; - if (s == "OPTICALCABLESEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_OPTICALCABLESEGMENT; - if (s == "STITCHWIRE") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_STITCHWIRE; - if (s == "WIREPAIRSEGMENT") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_WIREPAIRSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCableSegmentTypeEnum::Value) IFC4X3_ADD1_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCableSegmentTypeEnum::operator Ifc4x3_add1::IfcCableSegmentTypeEnum::Value() const { @@ -2974,17 +2594,11 @@ Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const st } const char* Ifc4x3_add1::IfcCaissonFoundationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON", "WELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Value Ifc4x3_add1::IfcCaissonFoundationTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON") return ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_CAISSON; - if (s == "WELL") return ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_WELL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Value) IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCaissonFoundationTypeEnum::operator Ifc4x3_add1::IfcCaissonFoundationTypeEnum::Value() const { @@ -3013,18 +2627,11 @@ Ifc4x3_add1::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADDED", "DELETED", "MODIFIED", "NOCHANGE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcChangeActionEnum::Value Ifc4x3_add1::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "ADDED") return ::Ifc4x3_add1::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x3_add1::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "MODIFIED") return ::Ifc4x3_add1::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "NOCHANGE") return ::Ifc4x3_add1::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcChangeActionEnum::Value) IFC4X3_ADD1_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcChangeActionEnum::operator Ifc4x3_add1::IfcChangeActionEnum::Value() const { @@ -3053,18 +2660,11 @@ Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "HEATRECOVERY", "WATERCOOLED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcChillerTypeEnum::Value Ifc4x3_add1::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "WATERCOOLED") return ::Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcChillerTypeEnum::Value) IFC4X3_ADD1_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcChillerTypeEnum::operator Ifc4x3_add1::IfcChillerTypeEnum::Value() const { @@ -3093,15 +2693,11 @@ Ifc4x3_add1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcChimneyTypeEnum::Value Ifc4x3_add1::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcChimneyTypeEnum::Value) IFC4X3_ADD1_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcChimneyTypeEnum::operator Ifc4x3_add1::IfcChimneyTypeEnum::Value() const { @@ -3130,22 +2726,11 @@ Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCoilTypeEnum::Value Ifc4x3_add1::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCoilTypeEnum::Value) IFC4X3_ADD1_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCoilTypeEnum::operator Ifc4x3_add1::IfcCoilTypeEnum::Value() const { @@ -3174,20 +2759,11 @@ Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PIERSTEM", "PIERSTEM_SEGMENT", "PILASTER", "STANDCOLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcColumnTypeEnum::Value Ifc4x3_add1::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PIERSTEM") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_PIERSTEM; - if (s == "PIERSTEM_SEGMENT") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_PIERSTEM_SEGMENT; - if (s == "PILASTER") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "STANDCOLUMN") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_STANDCOLUMN; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcColumnTypeEnum::Value) IFC4X3_ADD1_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcColumnTypeEnum::operator Ifc4x3_add1::IfcColumnTypeEnum::Value() const { @@ -3216,39 +2792,11 @@ Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeE } const char* Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "AUTOMATON", "COMPUTER", "FAX", "GATEWAY", "INTELLIGENTPERIPHERAL", "IPNETWORKEQUIPMENT", "LINESIDEELECTRONICUNIT", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "OPTICALLINETERMINAL", "OPTICALNETWORKUNIT", "PRINTER", "RADIOBLOCKCENTER", "REPEATER", "ROUTER", "SCANNER", "TELECOMMAND", "TELEPHONYEXCHANGE", "TRANSITIONCOMPONENT", "TRANSPONDER", "TRANSPORTEQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Value Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "AUTOMATON") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_AUTOMATON; - if (s == "COMPUTER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "INTELLIGENTPERIPHERAL") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_INTELLIGENTPERIPHERAL; - if (s == "IPNETWORKEQUIPMENT") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_IPNETWORKEQUIPMENT; - if (s == "LINESIDEELECTRONICUNIT") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_LINESIDEELECTRONICUNIT; - if (s == "MODEM") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "OPTICALLINETERMINAL") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICALLINETERMINAL; - if (s == "OPTICALNETWORKUNIT") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICALNETWORKUNIT; - if (s == "PRINTER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "RADIOBLOCKCENTER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_RADIOBLOCKCENTER; - if (s == "REPEATER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "TELECOMMAND") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELECOMMAND; - if (s == "TELEPHONYEXCHANGE") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELEPHONYEXCHANGE; - if (s == "TRANSITIONCOMPONENT") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSITIONCOMPONENT; - if (s == "TRANSPONDER") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPONDER; - if (s == "TRANSPORTEQUIPMENT") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Value) IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::operator Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -3277,15 +2825,11 @@ Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeE } const char* Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -3314,30 +2858,11 @@ Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOOSTER", "DYNAMIC", "HERMETIC", "OPENTYPE", "RECIPROCATING", "ROLLINGPISTON", "ROTARY", "ROTARYVANE", "SCROLL", "SEMIHERMETIC", "SINGLESCREW", "SINGLESTAGE", "TROCHOIDAL", "TWINSCREW", "WELDEDSHELLHERMETIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCompressorTypeEnum::Value Ifc4x3_add1::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "BOOSTER") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "DYNAMIC") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "HERMETIC") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "OPENTYPE") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "RECIPROCATING") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROLLINGPISTON") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARY") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "ROTARYVANE") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SCROLL") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "SEMIHERMETIC") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "SINGLESCREW") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "SINGLESTAGE") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "TROCHOIDAL") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "TWINSCREW") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCompressorTypeEnum::Value) IFC4X3_ADD1_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCompressorTypeEnum::operator Ifc4x3_add1::IfcCompressorTypeEnum::Value() const { @@ -3366,22 +2891,11 @@ Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCondenserTypeEnum::Value Ifc4x3_add1::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCondenserTypeEnum::Value) IFC4X3_ADD1_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCondenserTypeEnum::operator Ifc4x3_add1::IfcCondenserTypeEnum::Value() const { @@ -3410,17 +2924,11 @@ Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATEND", "ATPATH", "ATSTART", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcConnectionTypeEnum::Value Ifc4x3_add1::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATEND") return ::Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "ATPATH") return ::Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcConnectionTypeEnum::Value) IFC4X3_ADD1_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcConnectionTypeEnum::operator Ifc4x3_add1::IfcConnectionTypeEnum::Value() const { @@ -3449,18 +2957,11 @@ Ifc4x3_add1::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVISORY", "HARD", "SOFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcConstraintEnum::Value Ifc4x3_add1::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "ADVISORY") return ::Ifc4x3_add1::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "HARD") return ::Ifc4x3_add1::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x3_add1::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcConstraintEnum::Value) IFC4X3_ADD1_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcConstraintEnum::operator Ifc4x3_add1::IfcConstraintEnum::Value() const { @@ -3489,23 +2990,11 @@ Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentR } const char* Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -3534,24 +3023,11 @@ Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialRes } const char* Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3580,17 +3056,11 @@ Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResou } const char* Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value) IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::operator Ifc4x3_add1::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3619,20 +3089,11 @@ Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "MULTIPOSITION", "PROGRAMMABLE", "PROPORTIONAL", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcControllerTypeEnum::Value Ifc4x3_add1::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "MULTIPOSITION") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "PROGRAMMABLE") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "TWOPOSITION") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcControllerTypeEnum::Value) IFC4X3_ADD1_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcControllerTypeEnum::operator Ifc4x3_add1::IfcControllerTypeEnum::Value() const { @@ -3661,19 +3122,11 @@ Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::s } const char* Ifc4x3_add1::IfcConveyorSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTCONVEYOR", "BUCKETCONVEYOR", "CHUTECONVEYOR", "SCREWCONVEYOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Value Ifc4x3_add1::IfcConveyorSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BELTCONVEYOR") return ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BELTCONVEYOR; - if (s == "BUCKETCONVEYOR") return ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BUCKETCONVEYOR; - if (s == "CHUTECONVEYOR") return ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_CHUTECONVEYOR; - if (s == "SCREWCONVEYOR") return ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_SCREWCONVEYOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Value) IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcConveyorSegmentTypeEnum::operator Ifc4x3_add1::IfcConveyorSegmentTypeEnum::Value() const { @@ -3702,17 +3155,11 @@ Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCooledBeamTypeEnum::Value Ifc4x3_add1::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCooledBeamTypeEnum::Value) IFC4X3_ADD1_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCooledBeamTypeEnum::operator Ifc4x3_add1::IfcCooledBeamTypeEnum::Value() const { @@ -3741,18 +3188,11 @@ Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MECHANICALFORCEDDRAFT", "MECHANICALINDUCEDDRAFT", "NATURALDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCoolingTowerTypeEnum::Value Ifc4x3_add1::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "NATURALDRAFT") return ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCoolingTowerTypeEnum::Value) IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCoolingTowerTypeEnum::operator Ifc4x3_add1::IfcCoolingTowerTypeEnum::Value() const { @@ -3781,15 +3221,11 @@ Ifc4x3_add1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCostItemTypeEnum::Value Ifc4x3_add1::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCostItemTypeEnum::Value) IFC4X3_ADD1_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCostItemTypeEnum::operator Ifc4x3_add1::IfcCostItemTypeEnum::Value() const { @@ -3818,22 +3254,11 @@ Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "PRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "TENDER", "UNPRICEDBILLOFQUANTITIES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCostScheduleTypeEnum::Value Ifc4x3_add1::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "TENDER") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCostScheduleTypeEnum::Value) IFC4X3_ADD1_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCostScheduleTypeEnum::operator Ifc4x3_add1::IfcCostScheduleTypeEnum::Value() const { @@ -3862,21 +3287,11 @@ Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcCourseTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARMOUR", "BALLASTBED", "CORE", "FILTER", "PAVEMENT", "PROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCourseTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCourseTypeEnum::Value Ifc4x3_add1::IfcCourseTypeEnum::FromString(const std::string& s) { - if (s == "ARMOUR") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_ARMOUR; - if (s == "BALLASTBED") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_BALLASTBED; - if (s == "CORE") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_CORE; - if (s == "FILTER") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_FILTER; - if (s == "PAVEMENT") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_PAVEMENT; - if (s == "PROTECTION") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_PROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCourseTypeEnum::IfcCourseType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCourseTypeEnum::Value) IFC4X3_ADD1_IfcCourseTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCourseTypeEnum::operator Ifc4x3_add1::IfcCourseTypeEnum::Value() const { @@ -3905,27 +3320,11 @@ Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "CLADDING", "COPING", "FLOORING", "INSULATION", "MEMBRANE", "MOLDING", "ROOFING", "SKIRTINGBOARD", "SLEEVING", "TOPPING", "WRAPPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCoveringTypeEnum::Value Ifc4x3_add1::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "CLADDING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "COPING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_COPING; - if (s == "FLOORING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "INSULATION") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "MOLDING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "ROOFING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "SKIRTINGBOARD") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "SLEEVING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "TOPPING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_TOPPING; - if (s == "WRAPPING") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCoveringTypeEnum::Value) IFC4X3_ADD1_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCoveringTypeEnum::operator Ifc4x3_add1::IfcCoveringTypeEnum::Value() const { @@ -3954,17 +3353,11 @@ Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCrewResourceTypeEnum::Value Ifc4x3_add1::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCrewResourceTypeEnum::Value) IFC4X3_ADD1_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCrewResourceTypeEnum::operator Ifc4x3_add1::IfcCrewResourceTypeEnum::Value() const { @@ -3993,15 +3386,11 @@ Ifc4x3_add1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCurtainWallTypeEnum::Value Ifc4x3_add1::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCurtainWallTypeEnum::Value) IFC4X3_ADD1_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCurtainWallTypeEnum::operator Ifc4x3_add1::IfcCurtainWallTypeEnum::Value() const { @@ -4030,17 +3419,11 @@ Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::str } const char* Ifc4x3_add1::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcCurveInterpolationEnum::Value Ifc4x3_add1::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcCurveInterpolationEnum::Value) IFC4X3_ADD1_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcCurveInterpolationEnum::operator Ifc4x3_add1::IfcCurveInterpolationEnum::Value() const { @@ -4069,26 +3452,11 @@ Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDamperTypeEnum::Value Ifc4x3_add1::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDamperTypeEnum::Value) IFC4X3_ADD1_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDamperTypeEnum::operator Ifc4x3_add1::IfcDamperTypeEnum::Value() const { @@ -4117,18 +3485,11 @@ Ifc4x3_add1::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDataOriginEnum::Value Ifc4x3_add1::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x3_add1::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x3_add1::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x3_add1::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDataOriginEnum::Value) IFC4X3_ADD1_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDataOriginEnum::operator Ifc4x3_add1::IfcDataOriginEnum::Value() const { @@ -4157,66 +3518,11 @@ Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCELERATIONUNIT", "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "CURVATUREUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "HEATINGVALUEUNIT", "INTEGERCOUNTRATEUNIT", "IONCONCENTRATIONUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARFORCEUNIT", "LINEARMOMENTUNIT", "LINEARSTIFFNESSUNIT", "LINEARVELOCITYUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MASSPERLENGTHUNIT", "MODULUSOFELASTICITYUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "MOMENTOFINERTIAUNIT", "PHUNIT", "PLANARFORCEUNIT", "ROTATIONALFREQUENCYUNIT", "ROTATIONALMASSUNIT", "ROTATIONALSTIFFNESSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SHEARMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "SPECIFICHEATCAPACITYUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "TORQUEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDerivedUnitEnum::Value Ifc4x3_add1::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ACCELERATIONUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "PHUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDerivedUnitEnum::Value) IFC4X3_ADD1_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDerivedUnitEnum::operator Ifc4x3_add1::IfcDerivedUnitEnum::Value() const { @@ -4245,15 +3551,11 @@ Ifc4x3_add1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) } const char* Ifc4x3_add1::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NEGATIVE", "POSITIVE" }; - return names[v]; + return IFC4X3_ADD1_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDirectionSenseEnum::Value Ifc4x3_add1::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "NEGATIVE") return ::Ifc4x3_add1::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - if (s == "POSITIVE") return ::Ifc4x3_add1::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDirectionSenseEnum::Value) IFC4X3_ADD1_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDirectionSenseEnum::operator Ifc4x3_add1::IfcDirectionSenseEnum::Value() const { @@ -4282,36 +3584,11 @@ Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const st } const char* Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BIRDPROTECTION", "BRACKET", "CABLEARRANGER", "ELASTIC_CUSHION", "EXPANSION_JOINT_DEVICE", "FILLER", "FLASHING", "INSULATOR", "LOCK", "PANEL_STRENGTHENING", "POINTMACHINEMOUNTINGDEVICE", "POINT_MACHINE_LOCKING_DEVICE", "RAILBRACE", "RAILPAD", "RAIL_LUBRICATION", "RAIL_MECHANICAL_EQUIPMENT", "SHOE", "SLIDINGCHAIR", "SOUNDABSORPTION", "TENSIONINGEQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Value Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BIRDPROTECTION") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BIRDPROTECTION; - if (s == "BRACKET") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "CABLEARRANGER") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_CABLEARRANGER; - if (s == "ELASTIC_CUSHION") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ELASTIC_CUSHION; - if (s == "EXPANSION_JOINT_DEVICE") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_EXPANSION_JOINT_DEVICE; - if (s == "FILLER") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_FILLER; - if (s == "FLASHING") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_FLASHING; - if (s == "INSULATOR") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_INSULATOR; - if (s == "LOCK") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_LOCK; - if (s == "PANEL_STRENGTHENING") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_PANEL_STRENGTHENING; - if (s == "POINTMACHINEMOUNTINGDEVICE") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_POINTMACHINEMOUNTINGDEVICE; - if (s == "POINT_MACHINE_LOCKING_DEVICE") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_POINT_MACHINE_LOCKING_DEVICE; - if (s == "RAILBRACE") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILBRACE; - if (s == "RAILPAD") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILPAD; - if (s == "RAIL_LUBRICATION") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_LUBRICATION; - if (s == "RAIL_MECHANICAL_EQUIPMENT") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_MECHANICAL_EQUIPMENT; - if (s == "SHOE") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "SLIDINGCHAIR") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SLIDINGCHAIR; - if (s == "SOUNDABSORPTION") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SOUNDABSORPTION; - if (s == "TENSIONINGEQUIPMENT") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_TENSIONINGEQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Value) IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::operator Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -4340,21 +3617,11 @@ Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const st } const char* Ifc4x3_add1::IfcDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISPATCHINGBOARD", "DISTRIBUTIONBOARD", "DISTRIBUTIONFRAME", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDistributionBoardTypeEnum::Value Ifc4x3_add1::IfcDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_CONSUMERUNIT; - if (s == "DISPATCHINGBOARD") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISPATCHINGBOARD; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "DISTRIBUTIONFRAME") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONFRAME; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDistributionBoardTypeEnum::Value) IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDistributionBoardTypeEnum::operator Ifc4x3_add1::IfcDistributionBoardTypeEnum::Value() const { @@ -4383,23 +3650,11 @@ Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElemen } const char* Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Value Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Value) IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::operator Ifc4x3_add1::IfcDistributionChamberElementTypeEnum::Value() const { @@ -4428,20 +3683,11 @@ Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std: } const char* Ifc4x3_add1::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "WIRELESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDistributionPortTypeEnum::Value Ifc4x3_add1::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "WIRELESS") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_WIRELESS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDistributionPortTypeEnum::Value) IFC4X3_ADD1_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDistributionPortTypeEnum::operator Ifc4x3_add1::IfcDistributionPortTypeEnum::Value() const { @@ -4470,64 +3716,11 @@ Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::str } const char* Ifc4x3_add1::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 51 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CATENARY_SYSTEM", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FIXEDTRANSMISSIONNETWORK", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MOBILENETWORK", "MONITORINGSYSTEM", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "OPERATIONALTELEPHONYSYSTEM", "OVERHEAD_CONTACTLINE_SYSTEM", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "RETURN_CIRCUIT", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDistributionSystemEnum::Value Ifc4x3_add1::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CATENARY_SYSTEM") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_CATENARY_SYSTEM; - if (s == "CHEMICAL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FIXEDTRANSMISSIONNETWORK") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_FIXEDTRANSMISSIONNETWORK; - if (s == "FUEL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MOBILENETWORK") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_MOBILENETWORK; - if (s == "MONITORINGSYSTEM") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_MONITORINGSYSTEM; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "OPERATIONALTELEPHONYSYSTEM") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONALTELEPHONYSYSTEM; - if (s == "OVERHEAD_CONTACTLINE_SYSTEM") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_OVERHEAD_CONTACTLINE_SYSTEM; - if (s == "POWERGENERATION") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "RETURN_CIRCUIT") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_RETURN_CIRCUIT; - if (s == "SECURITY") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDistributionSystemEnum::Value) IFC4X3_ADD1_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDistributionSystemEnum::operator Ifc4x3_add1::IfcDistributionSystemEnum::Value() const { @@ -4556,19 +3749,11 @@ Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(cons } const char* Ifc4x3_add1::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONFIDENTIAL", "PERSONAL", "PUBLIC", "RESTRICTED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDocumentConfidentialityEnum::Value Ifc4x3_add1::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "CONFIDENTIAL") return ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "PUBLIC") return ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDocumentConfidentialityEnum::Value) IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDocumentConfidentialityEnum::operator Ifc4x3_add1::IfcDocumentConfidentialityEnum::Value() const { @@ -4597,18 +3782,11 @@ Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) } const char* Ifc4x3_add1::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINAL", "FINALDRAFT", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDocumentStatusEnum::Value Ifc4x3_add1::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINAL") return ::Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "FINALDRAFT") return ::Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "REVISION") return ::Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDocumentStatusEnum::Value) IFC4X3_ADD1_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDocumentStatusEnum::operator Ifc4x3_add1::IfcDocumentStatusEnum::Value() const { @@ -4637,22 +3815,11 @@ Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::str } const char* Ifc4x3_add1::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOUBLE_ACTING", "FIXEDPANEL", "FOLDING", "REVOLVING", "ROLLINGUP", "SLIDING", "SWINGING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDoorPanelOperationEnum::Value Ifc4x3_add1::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "DOUBLE_ACTING") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "FIXEDPANEL") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "FOLDING") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "SLIDING") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "SWINGING") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDoorPanelOperationEnum::Value) IFC4X3_ADD1_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDoorPanelOperationEnum::operator Ifc4x3_add1::IfcDoorPanelOperationEnum::Value() const { @@ -4681,17 +3848,11 @@ Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::strin } const char* Ifc4x3_add1::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDoorPanelPositionEnum::Value Ifc4x3_add1::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDoorPanelPositionEnum::Value) IFC4X3_ADD1_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDoorPanelPositionEnum::operator Ifc4x3_add1::IfcDoorPanelPositionEnum::Value() const { @@ -4720,20 +3881,11 @@ Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOOM_BARRIER", "DOOR", "GATE", "TRAPDOOR", "TURNSTILE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDoorTypeEnum::Value Ifc4x3_add1::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "BOOM_BARRIER") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_BOOM_BARRIER; - if (s == "DOOR") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "TURNSTILE") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_TURNSTILE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDoorTypeEnum::Value) IFC4X3_ADD1_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDoorTypeEnum::operator Ifc4x3_add1::IfcDoorTypeEnum::Value() const { @@ -4762,38 +3914,11 @@ Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::strin } const char* Ifc4x3_add1::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 25 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOUBLE_DOOR_DOUBLE_SWING", "DOUBLE_DOOR_FOLDING", "DOUBLE_DOOR_LIFTING_VERTICAL", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_DOOR_SLIDING", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "LIFTING_HORIZONTAL", "LIFTING_VERTICAL_LEFT", "LIFTING_VERTICAL_RIGHT", "REVOLVING", "REVOLVING_VERTICAL", "ROLLINGUP", "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDoorTypeOperationEnum::Value Ifc4x3_add1::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_FOLDING; - if (s == "DOUBLE_DOOR_LIFTING_VERTICAL") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_LIFTING_VERTICAL; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SLIDING; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "LIFTING_HORIZONTAL") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_HORIZONTAL; - if (s == "LIFTING_VERTICAL_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_VERTICAL_LEFT; - if (s == "LIFTING_VERTICAL_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_VERTICAL_RIGHT; - if (s == "REVOLVING") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING; - if (s == "REVOLVING_VERTICAL") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING_VERTICAL; - if (s == "ROLLINGUP") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDoorTypeOperationEnum::Value) IFC4X3_ADD1_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDoorTypeOperationEnum::operator Ifc4x3_add1::IfcDoorTypeOperationEnum::Value() const { @@ -4822,22 +3947,11 @@ Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDuctFittingTypeEnum::Value Ifc4x3_add1::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDuctFittingTypeEnum::Value) IFC4X3_ADD1_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDuctFittingTypeEnum::operator Ifc4x3_add1::IfcDuctFittingTypeEnum::Value() const { @@ -4866,17 +3980,11 @@ Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLEXIBLESEGMENT", "RIGIDSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDuctSegmentTypeEnum::Value Ifc4x3_add1::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDuctSegmentTypeEnum::Value) IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDuctSegmentTypeEnum::operator Ifc4x3_add1::IfcDuctSegmentTypeEnum::Value() const { @@ -4905,18 +4013,11 @@ Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcDuctSilencerTypeEnum::Value Ifc4x3_add1::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcDuctSilencerTypeEnum::Value) IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcDuctSilencerTypeEnum::operator Ifc4x3_add1::IfcDuctSilencerTypeEnum::Value() const { @@ -4945,24 +4046,11 @@ Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcEarthworksCutTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASE_EXCAVATION", "CUT", "DREDGING", "EXCAVATION", "OVEREXCAVATION", "PAVEMENTMILLING", "STEPEXCAVATION", "TOPSOILREMOVAL", "TRENCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEarthworksCutTypeEnum::Value Ifc4x3_add1::IfcEarthworksCutTypeEnum::FromString(const std::string& s) { - if (s == "BASE_EXCAVATION") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_BASE_EXCAVATION; - if (s == "CUT") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_CUT; - if (s == "DREDGING") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_DREDGING; - if (s == "EXCAVATION") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_EXCAVATION; - if (s == "OVEREXCAVATION") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_OVEREXCAVATION; - if (s == "PAVEMENTMILLING") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_PAVEMENTMILLING; - if (s == "STEPEXCAVATION") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_STEPEXCAVATION; - if (s == "TOPSOILREMOVAL") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TOPSOILREMOVAL; - if (s == "TRENCH") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TRENCH; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEarthworksCutTypeEnum::Value) IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEarthworksCutTypeEnum::operator Ifc4x3_add1::IfcEarthworksCutTypeEnum::Value() const { @@ -4991,22 +4079,11 @@ Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::str } const char* Ifc4x3_add1::IfcEarthworksFillTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKFILL", "COUNTERWEIGHT", "EMBANKMENT", "SLOPEFILL", "SUBGRADE", "SUBGRADEBED", "TRANSITIONSECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEarthworksFillTypeEnum::Value Ifc4x3_add1::IfcEarthworksFillTypeEnum::FromString(const std::string& s) { - if (s == "BACKFILL") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_BACKFILL; - if (s == "COUNTERWEIGHT") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_COUNTERWEIGHT; - if (s == "EMBANKMENT") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_EMBANKMENT; - if (s == "SLOPEFILL") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SLOPEFILL; - if (s == "SUBGRADE") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADE; - if (s == "SUBGRADEBED") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADEBED; - if (s == "TRANSITIONSECTION") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_TRANSITIONSECTION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEarthworksFillTypeEnum::Value) IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEarthworksFillTypeEnum::operator Ifc4x3_add1::IfcEarthworksFillTypeEnum::Value() const { @@ -5035,31 +4112,11 @@ Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const st } const char* Ifc4x3_add1::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERCOOLER", "FREESTANDINGWATERHEATER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricApplianceTypeEnum::Value Ifc4x3_add1::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREEZER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricApplianceTypeEnum::Value) IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricApplianceTypeEnum::operator Ifc4x3_add1::IfcElectricApplianceTypeEnum::Value() const { @@ -5088,19 +4145,11 @@ Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardT } const char* Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Value Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Value) IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::operator Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -5129,24 +4178,11 @@ Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceT } const char* Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITOR", "CAPACITORBANK", "COMPENSATOR", "HARMONICFILTER", "INDUCTOR", "INDUCTORBANK", "RECHARGER", "UPS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITOR") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITOR; - if (s == "CAPACITORBANK") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "COMPENSATOR") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_COMPENSATOR; - if (s == "HARMONICFILTER") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTOR") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTOR; - if (s == "INDUCTORBANK") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "RECHARGER") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_RECHARGER; - if (s == "UPS") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -5175,16 +4211,11 @@ Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDev } const char* Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONICFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Value Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONICFILTER") return ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_ELECTRONICFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Value) IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::operator Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum::Value() const { @@ -5213,18 +4244,11 @@ Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const st } const char* Ifc4x3_add1::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Value Ifc4x3_add1::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Value) IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricGeneratorTypeEnum::operator Ifc4x3_add1::IfcElectricGeneratorTypeEnum::Value() const { @@ -5253,20 +4277,11 @@ Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricMotorTypeEnum::Value Ifc4x3_add1::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricMotorTypeEnum::Value) IFC4X3_ADD1_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricMotorTypeEnum::operator Ifc4x3_add1::IfcElectricMotorTypeEnum::Value() const { @@ -5295,18 +4310,11 @@ Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(cons } const char* Ifc4x3_add1::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RELAY", "TIMECLOCK", "TIMEDELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Value Ifc4x3_add1::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "RELAY") return ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "TIMECLOCK") return ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Value) IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElectricTimeControlTypeEnum::operator Ifc4x3_add1::IfcElectricTimeControlTypeEnum::Value() const { @@ -5335,43 +4343,11 @@ Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::s } const char* Ifc4x3_add1::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "CROSS_BRACING", "DECK", "DILATATIONPANEL", "ENTRANCEWORKS", "GIRDER", "GRID", "MAST", "PIER", "PYLON", "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SHELTER", "SIGNALASSEMBLY", "SLAB_FIELD", "SUMPBUSTER", "SUPPORTINGASSEMBLY", "SUSPENSIONASSEMBLY", "TRACKPANEL", "TRACTION_SWITCHING_ASSEMBLY", "TRAFFIC_CALMING_DEVICE", "TRUSS", "TURNOUTPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElementAssemblyTypeEnum::Value Ifc4x3_add1::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ABUTMENT; - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "CROSS_BRACING") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_CROSS_BRACING; - if (s == "DECK") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DECK; - if (s == "DILATATIONPANEL") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DILATATIONPANEL; - if (s == "ENTRANCEWORKS") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ENTRANCEWORKS; - if (s == "GIRDER") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "GRID") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GRID; - if (s == "MAST") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_MAST; - if (s == "PIER") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PIER; - if (s == "PYLON") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PYLON; - if (s == "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SHELTER") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SHELTER; - if (s == "SIGNALASSEMBLY") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SIGNALASSEMBLY; - if (s == "SLAB_FIELD") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "SUMPBUSTER") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUMPBUSTER; - if (s == "SUPPORTINGASSEMBLY") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUPPORTINGASSEMBLY; - if (s == "SUSPENSIONASSEMBLY") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUSPENSIONASSEMBLY; - if (s == "TRACKPANEL") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACKPANEL; - if (s == "TRACTION_SWITCHING_ASSEMBLY") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACTION_SWITCHING_ASSEMBLY; - if (s == "TRAFFIC_CALMING_DEVICE") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRAFFIC_CALMING_DEVICE; - if (s == "TRUSS") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "TURNOUTPANEL") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TURNOUTPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElementAssemblyTypeEnum::Value) IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElementAssemblyTypeEnum::operator Ifc4x3_add1::IfcElementAssemblyTypeEnum::Value() const { @@ -5400,16 +4376,11 @@ Ifc4x3_add1::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::str } const char* Ifc4x3_add1::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X3_ADD1_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcElementCompositionEnum::Value Ifc4x3_add1::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_add1::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_add1::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_add1::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcElementCompositionEnum::Value) IFC4X3_ADD1_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcElementCompositionEnum::operator Ifc4x3_add1::IfcElementCompositionEnum::Value() const { @@ -5438,17 +4409,11 @@ Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEngineTypeEnum::Value Ifc4x3_add1::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEngineTypeEnum::Value) IFC4X3_ADD1_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEngineTypeEnum::operator Ifc4x3_add1::IfcEngineTypeEnum::Value() const { @@ -5477,24 +4442,11 @@ Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const st } const char* Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVEAIRWASHER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "INDIRECTDIRECTCOMBINATION", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Value Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Value) IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::operator Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -5523,21 +4475,11 @@ Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONBRAZEDPLATE", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEvaporatorTypeEnum::Value Ifc4x3_add1::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEvaporatorTypeEnum::Value) IFC4X3_ADD1_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEvaporatorTypeEnum::operator Ifc4x3_add1::IfcEvaporatorTypeEnum::Value() const { @@ -5566,19 +4508,11 @@ Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTCOMPLEX", "EVENTMESSAGE", "EVENTRULE", "EVENTTIME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEventTriggerTypeEnum::Value Ifc4x3_add1::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTCOMPLEX") return ::Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "EVENTMESSAGE") return ::Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTRULE") return ::Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTTIME") return ::Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEventTriggerTypeEnum::Value) IFC4X3_ADD1_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEventTriggerTypeEnum::operator Ifc4x3_add1::IfcEventTriggerTypeEnum::Value() const { @@ -5607,18 +4541,11 @@ Ifc4x3_add1::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENDEVENT", "INTERMEDIATEEVENT", "STARTEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcEventTypeEnum::Value Ifc4x3_add1::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "ENDEVENT") return ::Ifc4x3_add1::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x3_add1::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "STARTEVENT") return ::Ifc4x3_add1::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcEventTypeEnum::Value) IFC4X3_ADD1_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcEventTypeEnum::operator Ifc4x3_add1::IfcEventTypeEnum::Value() const { @@ -5647,19 +4574,11 @@ Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnu } const char* Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_FIRE", "EXTERNAL_WATER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::Value Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::Value) IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::operator Ifc4x3_add1::IfcExternalSpatialElementTypeEnum::Value() const { @@ -5688,23 +4607,11 @@ Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const } const char* Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABOVEGROUND", "BELOWGROUND", "JUNCTION", "LEVELCROSSING", "SEGMENT", "SUBSTRUCTURE", "SUPERSTRUCTURE", "TERMINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::Value Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::FromString(const std::string& s) { - if (s == "ABOVEGROUND") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_ABOVEGROUND; - if (s == "BELOWGROUND") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_BELOWGROUND; - if (s == "JUNCTION") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_JUNCTION; - if (s == "LEVELCROSSING") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_LEVELCROSSING; - if (s == "SEGMENT") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SEGMENT; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUPERSTRUCTURE; - if (s == "TERMINAL") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_TERMINAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::Value) IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::operator Ifc4x3_add1::IfcFacilityPartCommonTypeEnum::Value() const { @@ -5733,19 +4640,11 @@ Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFacilityUsageEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LATERAL", "LONGITUDINAL", "REGION", "VERTICAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFacilityUsageEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFacilityUsageEnum::Value Ifc4x3_add1::IfcFacilityUsageEnum::FromString(const std::string& s) { - if (s == "LATERAL") return ::Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsage_LATERAL; - if (s == "LONGITUDINAL") return ::Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsage_LONGITUDINAL; - if (s == "REGION") return ::Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsage_REGION; - if (s == "VERTICAL") return ::Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsage_VERTICAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsage_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFacilityUsageEnum::IfcFacilityUsage_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFacilityUsageEnum::Value) IFC4X3_ADD1_IfcFacilityUsageEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFacilityUsageEnum::operator Ifc4x3_add1::IfcFacilityUsageEnum::Value() const { @@ -5774,22 +4673,11 @@ Ifc4x3_add1::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALAIRFOIL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "PROPELLORAXIAL", "TUBEAXIAL", "VANEAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFanTypeEnum::Value Ifc4x3_add1::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "TUBEAXIAL") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFanTypeEnum::Value) IFC4X3_ADD1_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFanTypeEnum::operator Ifc4x3_add1::IfcFanTypeEnum::Value() const { @@ -5818,18 +4706,11 @@ Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFastenerTypeEnum::Value Ifc4x3_add1::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFastenerTypeEnum::Value) IFC4X3_ADD1_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFastenerTypeEnum::operator Ifc4x3_add1::IfcFastenerTypeEnum::Value() const { @@ -5858,21 +4739,11 @@ Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFilterTypeEnum::Value Ifc4x3_add1::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFilterTypeEnum::Value) IFC4X3_ADD1_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFilterTypeEnum::operator Ifc4x3_add1::IfcFilterTypeEnum::Value() const { @@ -5901,21 +4772,11 @@ Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeE } const char* Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "FIREMONITOR", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "FIREMONITOR") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREMONITOR; - if (s == "HOSEREEL") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -5944,17 +4805,11 @@ Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINK", "SOURCE", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFlowDirectionEnum::Value Ifc4x3_add1::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SINK") return ::Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCE") return ::Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SOURCEANDSINK") return ::Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFlowDirectionEnum::Value) IFC4X3_ADD1_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFlowDirectionEnum::operator Ifc4x3_add1::IfcFlowDirectionEnum::Value() const { @@ -5983,25 +4838,11 @@ Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::str } const char* Ifc4x3_add1::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMMETER", "COMBINED", "FREQUENCYMETER", "PHASEANGLEMETER", "POWERFACTORMETER", "PRESSUREGAUGE", "THERMOMETER", "VOLTMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Value Ifc4x3_add1::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "AMMETER") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "COMBINED") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_COMBINED; - if (s == "FREQUENCYMETER") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PRESSUREGAUGE") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "VOLTMETER") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Value) IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFlowInstrumentTypeEnum::operator Ifc4x3_add1::IfcFlowInstrumentTypeEnum::Value() const { @@ -6030,19 +4871,11 @@ Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFlowMeterTypeEnum::Value Ifc4x3_add1::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFlowMeterTypeEnum::Value) IFC4X3_ADD1_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFlowMeterTypeEnum::operator Ifc4x3_add1::IfcFlowMeterTypeEnum::Value() const { @@ -6071,20 +4904,11 @@ Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFootingTypeEnum::Value Ifc4x3_add1::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFootingTypeEnum::Value) IFC4X3_ADD1_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFootingTypeEnum::operator Ifc4x3_add1::IfcFootingTypeEnum::Value() const { @@ -6113,23 +4937,11 @@ Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BED", "CHAIR", "DESK", "FILECABINET", "SHELF", "SOFA", "TABLE", "TECHNICALCABINET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcFurnitureTypeEnum::Value Ifc4x3_add1::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "BED") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "CHAIR") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "DESK") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "FILECABINET") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "TABLE") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "TECHNICALCABINET") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_TECHNICALCABINET; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcFurnitureTypeEnum::Value) IFC4X3_ADD1_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcFurnitureTypeEnum::operator Ifc4x3_add1::IfcFurnitureTypeEnum::Value() const { @@ -6158,18 +4970,11 @@ Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const st } const char* Ifc4x3_add1::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOIL_BORING_POINT", "TERRAIN", "VEGETATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcGeographicElementTypeEnum::Value Ifc4x3_add1::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "SOIL_BORING_POINT") return ::Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementType_SOIL_BORING_POINT; - if (s == "TERRAIN") return ::Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "VEGETATION") return ::Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementType_VEGETATION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcGeographicElementTypeEnum::Value) IFC4X3_ADD1_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcGeographicElementTypeEnum::operator Ifc4x3_add1::IfcGeographicElementTypeEnum::Value() const { @@ -6198,22 +5003,11 @@ Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::s } const char* Ifc4x3_add1::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATION_VIEW", "GRAPH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "SKETCH_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcGeometricProjectionEnum::Value Ifc4x3_add1::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "ELEVATION_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "GRAPH_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcGeometricProjectionEnum::Value) IFC4X3_ADD1_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcGeometricProjectionEnum::operator Ifc4x3_add1::IfcGeometricProjectionEnum::Value() const { @@ -6242,18 +5036,11 @@ Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumTypeEnum(cons } const char* Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLID", "VOID", "WATER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::Value Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::FromString(const std::string& s) { - if (s == "SOLID") return ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumType_SOLID; - if (s == "VOID") return ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumType_VOID; - if (s == "WATER") return ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumType_WATER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::IfcGeotechnicalStratumType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::Value) IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::operator Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum::Value() const { @@ -6282,15 +5069,11 @@ Ifc4x3_add1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X3_ADD1_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcGlobalOrLocalEnum::Value Ifc4x3_add1::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x3_add1::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x3_add1::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcGlobalOrLocalEnum::Value) IFC4X3_ADD1_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcGlobalOrLocalEnum::operator Ifc4x3_add1::IfcGlobalOrLocalEnum::Value() const { @@ -6319,19 +5102,11 @@ Ifc4x3_add1::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IRREGULAR", "RADIAL", "RECTANGULAR", "TRIANGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcGridTypeEnum::Value Ifc4x3_add1::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "IRREGULAR") return ::Ifc4x3_add1::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "RADIAL") return ::Ifc4x3_add1::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "RECTANGULAR") return ::Ifc4x3_add1::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "TRIANGULAR") return ::Ifc4x3_add1::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcGridTypeEnum::Value) IFC4X3_ADD1_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcGridTypeEnum::operator Ifc4x3_add1::IfcGridTypeEnum::Value() const { @@ -6360,18 +5135,11 @@ Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "TURNOUTHEATING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcHeatExchangerTypeEnum::Value Ifc4x3_add1::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "TURNOUTHEATING") return ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_TURNOUTHEATING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcHeatExchangerTypeEnum::Value) IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcHeatExchangerTypeEnum::operator Ifc4x3_add1::IfcHeatExchangerTypeEnum::Value() const { @@ -6400,28 +5168,11 @@ Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADIABATICAIRWASHER", "ADIABATICATOMIZING", "ADIABATICCOMPRESSEDAIRNOZZLE", "ADIABATICPAN", "ADIABATICRIGIDMEDIA", "ADIABATICULTRASONIC", "ADIABATICWETTEDELEMENT", "ASSISTEDBUTANE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDSTEAM", "STEAMINJECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcHumidifierTypeEnum::Value Ifc4x3_add1::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "ADIABATICAIRWASHER") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICATOMIZING") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ADIABATICPAN") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ASSISTEDBUTANE") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "STEAMINJECTION") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcHumidifierTypeEnum::Value) IFC4X3_ADD1_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcHumidifierTypeEnum::operator Ifc4x3_add1::IfcHumidifierTypeEnum::Value() const { @@ -6450,19 +5201,11 @@ Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnu } const char* Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUMPER", "CRASHCUSHION", "DAMPINGSYSTEM", "FENDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Value Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BUMPER") return ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_BUMPER; - if (s == "CRASHCUSHION") return ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_CRASHCUSHION; - if (s == "DAMPINGSYSTEM") return ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_DAMPINGSYSTEM; - if (s == "FENDER") return ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_FENDER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Value) IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::operator Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum::Value() const { @@ -6491,19 +5234,11 @@ Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcInterceptorTypeEnum::Value Ifc4x3_add1::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcInterceptorTypeEnum::Value) IFC4X3_ADD1_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcInterceptorTypeEnum::operator Ifc4x3_add1::IfcInterceptorTypeEnum::Value() const { @@ -6532,19 +5267,11 @@ Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::str } const char* Ifc4x3_add1::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_FIRE", "EXTERNAL_WATER", "INTERNAL", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcInternalOrExternalEnum::Value Ifc4x3_add1::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "INTERNAL") return ::Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcInternalOrExternalEnum::Value) IFC4X3_ADD1_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcInternalOrExternalEnum::operator Ifc4x3_add1::IfcInternalOrExternalEnum::Value() const { @@ -6573,18 +5300,11 @@ Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "FURNITUREINVENTORY", "SPACEINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcInventoryTypeEnum::Value Ifc4x3_add1::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcInventoryTypeEnum::Value) IFC4X3_ADD1_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcInventoryTypeEnum::operator Ifc4x3_add1::IfcInventoryTypeEnum::Value() const { @@ -6613,17 +5333,11 @@ Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcJunctionBoxTypeEnum::Value Ifc4x3_add1::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcJunctionBoxTypeEnum::Value) IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcJunctionBoxTypeEnum::operator Ifc4x3_add1::IfcJunctionBoxTypeEnum::Value() const { @@ -6652,15 +5366,11 @@ Ifc4x3_add1::IfcKerbTypeEnum::IfcKerbTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcKerbTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcKerbTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcKerbTypeEnum::Value Ifc4x3_add1::IfcKerbTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcKerbTypeEnum::IfcKerbType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcKerbTypeEnum::IfcKerbType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcKerbTypeEnum::Value) IFC4X3_ADD1_IfcKerbTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcKerbTypeEnum::operator Ifc4x3_add1::IfcKerbTypeEnum::Value() const { @@ -6689,17 +5399,11 @@ Ifc4x3_add1::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x3_add1::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PIECEWISE_BEZIER_KNOTS", "QUASI_UNIFORM_KNOTS", "UNIFORM_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_ADD1_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcKnotType::Value Ifc4x3_add1::IfcKnotType::FromString(const std::string& s) { - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x3_add1::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x3_add1::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "UNIFORM_KNOTS") return ::Ifc4x3_add1::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x3_add1::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcKnotType::Value) IFC4X3_ADD1_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcKnotType::operator Ifc4x3_add1::IfcKnotType::Value() const { @@ -6728,34 +5432,11 @@ Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLaborResourceTypeEnum::Value Ifc4x3_add1::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLaborResourceTypeEnum::Value) IFC4X3_ADD1_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLaborResourceTypeEnum::operator Ifc4x3_add1::IfcLaborResourceTypeEnum::Value() const { @@ -6784,24 +5465,11 @@ Ifc4x3_add1::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLampTypeEnum::Value Ifc4x3_add1::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLampTypeEnum::Value) IFC4X3_ADD1_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLampTypeEnum::operator Ifc4x3_add1::IfcLampTypeEnum::Value() const { @@ -6830,16 +5498,11 @@ Ifc4x3_add1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::strin } const char* Ifc4x3_add1::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X3_ADD1_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLayerSetDirectionEnum::Value Ifc4x3_add1::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x3_add1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x3_add1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x3_add1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLayerSetDirectionEnum::Value) IFC4X3_ADD1_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLayerSetDirectionEnum::operator Ifc4x3_add1::IfcLayerSetDirectionEnum::Value() const { @@ -6868,17 +5531,11 @@ Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const } const char* Ifc4x3_add1::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLightDistributionCurveEnum::Value Ifc4x3_add1::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLightDistributionCurveEnum::Value) IFC4X3_ADD1_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLightDistributionCurveEnum::operator Ifc4x3_add1::IfcLightDistributionCurveEnum::Value() const { @@ -6907,24 +5564,11 @@ Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::s } const char* Ifc4x3_add1::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLightEmissionSourceEnum::Value Ifc4x3_add1::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLightEmissionSourceEnum::Value) IFC4X3_ADD1_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLightEmissionSourceEnum::operator Ifc4x3_add1::IfcLightEmissionSourceEnum::Value() const { @@ -6953,18 +5597,11 @@ Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTIONSOURCE", "POINTSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLightFixtureTypeEnum::Value Ifc4x3_add1::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTIONSOURCE") return ::Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "POINTSOURCE") return ::Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLightFixtureTypeEnum::Value) IFC4X3_ADD1_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLightFixtureTypeEnum::operator Ifc4x3_add1::IfcLightFixtureTypeEnum::Value() const { @@ -6993,17 +5630,11 @@ Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::str } const char* Ifc4x3_add1::IfcLiquidTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HOSEREEL", "LOADINGARM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Value Ifc4x3_add1::IfcLiquidTerminalTypeEnum::FromString(const std::string& s) { - if (s == "HOSEREEL") return ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_HOSEREEL; - if (s == "LOADINGARM") return ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_LOADINGARM; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Value) IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLiquidTerminalTypeEnum::operator Ifc4x3_add1::IfcLiquidTerminalTypeEnum::Value() const { @@ -7032,18 +5663,11 @@ Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_CASE", "LOAD_COMBINATION", "LOAD_GROUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLoadGroupTypeEnum::Value Ifc4x3_add1::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_CASE") return ::Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "LOAD_GROUP") return ::Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLoadGroupTypeEnum::Value) IFC4X3_ADD1_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLoadGroupTypeEnum::operator Ifc4x3_add1::IfcLoadGroupTypeEnum::Value() const { @@ -7072,18 +5696,11 @@ Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v } const char* Ifc4x3_add1::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALNOTAND", "LOGICALNOTOR", "LOGICALOR", "LOGICALXOR" }; - return names[v]; + return IFC4X3_ADD1_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcLogicalOperatorEnum::Value Ifc4x3_add1::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALNOTAND") return ::Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - if (s == "LOGICALOR") return ::Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x3_add1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcLogicalOperatorEnum::Value) IFC4X3_ADD1_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcLogicalOperatorEnum::operator Ifc4x3_add1::IfcLogicalOperatorEnum::Value() const { @@ -7112,34 +5729,11 @@ Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::str } const char* Ifc4x3_add1::IfcMarineFacilityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BARRIERBEACH", "BREAKWATER", "CANAL", "DRYDOCK", "FLOATINGDOCK", "HYDROLIFT", "JETTY", "LAUNCHRECOVERY", "MARINEDEFENCE", "NAVIGATIONALCHANNEL", "PORT", "QUAY", "REVETMENT", "SHIPLIFT", "SHIPLOCK", "SHIPYARD", "SLIPWAY", "WATERWAY", "WATERWAYSHIPLIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMarineFacilityTypeEnum::Value Ifc4x3_add1::IfcMarineFacilityTypeEnum::FromString(const std::string& s) { - if (s == "BARRIERBEACH") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BARRIERBEACH; - if (s == "BREAKWATER") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BREAKWATER; - if (s == "CANAL") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_CANAL; - if (s == "DRYDOCK") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_DRYDOCK; - if (s == "FLOATINGDOCK") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_FLOATINGDOCK; - if (s == "HYDROLIFT") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_HYDROLIFT; - if (s == "JETTY") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_JETTY; - if (s == "LAUNCHRECOVERY") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_LAUNCHRECOVERY; - if (s == "MARINEDEFENCE") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_MARINEDEFENCE; - if (s == "NAVIGATIONALCHANNEL") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NAVIGATIONALCHANNEL; - if (s == "PORT") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_PORT; - if (s == "QUAY") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_QUAY; - if (s == "REVETMENT") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_REVETMENT; - if (s == "SHIPLIFT") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLIFT; - if (s == "SHIPLOCK") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLOCK; - if (s == "SHIPYARD") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPYARD; - if (s == "SLIPWAY") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SLIPWAY; - if (s == "WATERWAY") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAY; - if (s == "WATERWAYSHIPLIFT") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAYSHIPLIFT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMarineFacilityTypeEnum::Value) IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMarineFacilityTypeEnum::operator Ifc4x3_add1::IfcMarineFacilityTypeEnum::Value() const { @@ -7168,39 +5762,11 @@ Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcMarinePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABOVEWATERLINE", "ANCHORAGE", "APPROACHCHANNEL", "BELOWWATERLINE", "BERTHINGSTRUCTURE", "CHAMBER", "CILL_LEVEL", "COPELEVEL", "CORE", "CREST", "GATEHEAD", "GUDINGSTRUCTURE", "HIGHWATERLINE", "LANDFIELD", "LEEWARDSIDE", "LOWWATERLINE", "MANUFACTURING", "NAVIGATIONALAREA", "PROTECTION", "SHIPTRANSFER", "STORAGEAREA", "VEHICLESERVICING", "WATERFIELD", "WEATHERSIDE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMarinePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMarinePartTypeEnum::Value Ifc4x3_add1::IfcMarinePartTypeEnum::FromString(const std::string& s) { - if (s == "ABOVEWATERLINE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_ABOVEWATERLINE; - if (s == "ANCHORAGE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_ANCHORAGE; - if (s == "APPROACHCHANNEL") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_APPROACHCHANNEL; - if (s == "BELOWWATERLINE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_BELOWWATERLINE; - if (s == "BERTHINGSTRUCTURE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_BERTHINGSTRUCTURE; - if (s == "CHAMBER") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_CHAMBER; - if (s == "CILL_LEVEL") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_CILL_LEVEL; - if (s == "COPELEVEL") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_COPELEVEL; - if (s == "CORE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_CORE; - if (s == "CREST") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_CREST; - if (s == "GATEHEAD") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_GATEHEAD; - if (s == "GUDINGSTRUCTURE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_GUDINGSTRUCTURE; - if (s == "HIGHWATERLINE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_HIGHWATERLINE; - if (s == "LANDFIELD") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_LANDFIELD; - if (s == "LEEWARDSIDE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_LEEWARDSIDE; - if (s == "LOWWATERLINE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_LOWWATERLINE; - if (s == "MANUFACTURING") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_MANUFACTURING; - if (s == "NAVIGATIONALAREA") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_NAVIGATIONALAREA; - if (s == "PROTECTION") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_PROTECTION; - if (s == "SHIPTRANSFER") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_SHIPTRANSFER; - if (s == "STORAGEAREA") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_STORAGEAREA; - if (s == "VEHICLESERVICING") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_VEHICLESERVICING; - if (s == "WATERFIELD") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_WATERFIELD; - if (s == "WEATHERSIDE") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_WEATHERSIDE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMarinePartTypeEnum::IfcMarinePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMarinePartTypeEnum::Value) IFC4X3_ADD1_IfcMarinePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMarinePartTypeEnum::operator Ifc4x3_add1::IfcMarinePartTypeEnum::Value() const { @@ -7229,30 +5795,11 @@ Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const } const char* Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "CHAIN", "COUPLER", "DOWEL", "NAIL", "NAILPLATE", "RAILFASTENING", "RAILJOINT", "RIVET", "ROPE", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Value Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "CHAIN") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_CHAIN; - if (s == "COUPLER") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_COUPLER; - if (s == "DOWEL") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RAILFASTENING") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILFASTENING; - if (s == "RAILJOINT") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILJOINT; - if (s == "RIVET") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "ROPE") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ROPE; - if (s == "SCREW") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Value) IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::operator Ifc4x3_add1::IfcMechanicalFastenerTypeEnum::Value() const { @@ -7281,20 +5828,11 @@ Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Value Ifc4x3_add1::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Value) IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMedicalDeviceTypeEnum::operator Ifc4x3_add1::IfcMedicalDeviceTypeEnum::Value() const { @@ -7323,34 +5861,11 @@ Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCH_SEGMENT", "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STAY_CABLE", "STIFFENING_RIB", "STRINGER", "STRUCTURALCABLE", "STRUT", "STUD", "SUSPENDER", "SUSPENSION_CABLE", "TIEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMemberTypeEnum::Value Ifc4x3_add1::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "ARCH_SEGMENT") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_ARCH_SEGMENT; - if (s == "BRACE") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STAY_CABLE") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_STAY_CABLE; - if (s == "STIFFENING_RIB") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_STIFFENING_RIB; - if (s == "STRINGER") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUCTURALCABLE") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_STRUCTURALCABLE; - if (s == "STRUT") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "SUSPENDER") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_SUSPENDER; - if (s == "SUSPENSION_CABLE") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_SUSPENSION_CABLE; - if (s == "TIEBAR") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_TIEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMemberTypeEnum::Value) IFC4X3_ADD1_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMemberTypeEnum::operator Ifc4x3_add1::IfcMemberTypeEnum::Value() const { @@ -7379,28 +5894,11 @@ Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunic } const char* Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSPOINT", "BASEBANDUNIT", "BASETRANSCEIVERSTATION", "E_UTRAN_NODE_B", "GATEWAY_GPRS_SUPPORT_NODE", "MASTERUNIT", "MOBILESWITCHINGCENTER", "MSCSERVER", "PACKETCONTROLUNIT", "REMOTERADIOUNIT", "REMOTEUNIT", "SERVICE_GPRS_SUPPORT_NODE", "SUBSCRIBERSERVER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Value Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSPOINT") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_ACCESSPOINT; - if (s == "BASEBANDUNIT") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASEBANDUNIT; - if (s == "BASETRANSCEIVERSTATION") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASETRANSCEIVERSTATION; - if (s == "E_UTRAN_NODE_B") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_E_UTRAN_NODE_B; - if (s == "GATEWAY_GPRS_SUPPORT_NODE") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_GATEWAY_GPRS_SUPPORT_NODE; - if (s == "MASTERUNIT") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MASTERUNIT; - if (s == "MOBILESWITCHINGCENTER") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MOBILESWITCHINGCENTER; - if (s == "MSCSERVER") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MSCSERVER; - if (s == "PACKETCONTROLUNIT") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_PACKETCONTROLUNIT; - if (s == "REMOTERADIOUNIT") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTERADIOUNIT; - if (s == "REMOTEUNIT") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTEUNIT; - if (s == "SERVICE_GPRS_SUPPORT_NODE") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_SERVICE_GPRS_SUPPORT_NODE; - if (s == "SUBSCRIBERSERVER") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_SUBSCRIBERSERVER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Value) IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::operator Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum::Value() const { @@ -7429,20 +5927,11 @@ Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcMooringDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOLLARD", "LINETENSIONER", "MAGNETICDEVICE", "MOORINGHOOKS", "VACUUMDEVICE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMooringDeviceTypeEnum::Value Ifc4x3_add1::IfcMooringDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BOLLARD") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_BOLLARD; - if (s == "LINETENSIONER") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_LINETENSIONER; - if (s == "MAGNETICDEVICE") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MAGNETICDEVICE; - if (s == "MOORINGHOOKS") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MOORINGHOOKS; - if (s == "VACUUMDEVICE") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_VACUUMDEVICE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMooringDeviceTypeEnum::Value) IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMooringDeviceTypeEnum::operator Ifc4x3_add1::IfcMooringDeviceTypeEnum::Value() const { @@ -7471,18 +5960,11 @@ Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::s } const char* Ifc4x3_add1::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcMotorConnectionTypeEnum::Value Ifc4x3_add1::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcMotorConnectionTypeEnum::Value) IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcMotorConnectionTypeEnum::operator Ifc4x3_add1::IfcMotorConnectionTypeEnum::Value() const { @@ -7511,17 +5993,11 @@ Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const st } const char* Ifc4x3_add1::IfcNavigationElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEACON", "BUOY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcNavigationElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcNavigationElementTypeEnum::Value Ifc4x3_add1::IfcNavigationElementTypeEnum::FromString(const std::string& s) { - if (s == "BEACON") return ::Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementType_BEACON; - if (s == "BUOY") return ::Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementType_BUOY; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcNavigationElementTypeEnum::IfcNavigationElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcNavigationElementTypeEnum::Value) IFC4X3_ADD1_IfcNavigationElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcNavigationElementTypeEnum::operator Ifc4x3_add1::IfcNavigationElementTypeEnum::Value() const { @@ -7550,26 +6026,11 @@ Ifc4x3_add1::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcObjectiveEnum::Value Ifc4x3_add1::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcObjectiveEnum::Value) IFC4X3_ADD1_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcObjectiveEnum::operator Ifc4x3_add1::IfcObjectiveEnum::Value() const { @@ -7598,22 +6059,11 @@ Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcOccupantTypeEnum::Value Ifc4x3_add1::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcOccupantTypeEnum::Value) IFC4X3_ADD1_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcOccupantTypeEnum::operator Ifc4x3_add1::IfcOccupantTypeEnum::Value() const { @@ -7642,17 +6092,11 @@ Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::str } const char* Ifc4x3_add1::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcOpeningElementTypeEnum::Value Ifc4x3_add1::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcOpeningElementTypeEnum::Value) IFC4X3_ADD1_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcOpeningElementTypeEnum::operator Ifc4x3_add1::IfcOpeningElementTypeEnum::Value() const { @@ -7681,20 +6125,11 @@ Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "DATAOUTLET", "POWEROUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcOutletTypeEnum::Value Ifc4x3_add1::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "DATAOUTLET") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcOutletTypeEnum::Value) IFC4X3_ADD1_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcOutletTypeEnum::operator Ifc4x3_add1::IfcOutletTypeEnum::Value() const { @@ -7723,17 +6158,11 @@ Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcPavementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLEXIBLE", "RIGID", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPavementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPavementTypeEnum::Value Ifc4x3_add1::IfcPavementTypeEnum::FromString(const std::string& s) { - if (s == "FLEXIBLE") return ::Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementType_FLEXIBLE; - if (s == "RIGID") return ::Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementType_RIGID; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPavementTypeEnum::IfcPavementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPavementTypeEnum::Value) IFC4X3_ADD1_IfcPavementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPavementTypeEnum::operator Ifc4x3_add1::IfcPavementTypeEnum::Value() const { @@ -7762,15 +6191,11 @@ Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const } const char* Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::Value Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::Value) IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::operator Ifc4x3_add1::IfcPerformanceHistoryTypeEnum::Value() const { @@ -7799,18 +6224,11 @@ Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnu } const char* Ifc4x3_add1::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPermeableCoveringOperationEnum::Value Ifc4x3_add1::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPermeableCoveringOperationEnum::Value) IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPermeableCoveringOperationEnum::operator Ifc4x3_add1::IfcPermeableCoveringOperationEnum::Value() const { @@ -7839,18 +6257,11 @@ Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPermitTypeEnum::Value Ifc4x3_add1::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPermitTypeEnum::Value) IFC4X3_ADD1_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPermitTypeEnum::operator Ifc4x3_add1::IfcPermitTypeEnum::Value() const { @@ -7879,16 +6290,11 @@ Ifc4x3_add1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::strin } const char* Ifc4x3_add1::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value Ifc4x3_add1::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value) IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPhysicalOrVirtualEnum::operator Ifc4x3_add1::IfcPhysicalOrVirtualEnum::Value() const { @@ -7917,19 +6323,11 @@ Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& } const char* Ifc4x3_add1::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPileConstructionEnum::Value Ifc4x3_add1::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPileConstructionEnum::Value) IFC4X3_ADD1_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPileConstructionEnum::operator Ifc4x3_add1::IfcPileConstructionEnum::Value() const { @@ -7958,21 +6356,11 @@ Ifc4x3_add1::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "COHESION", "DRIVEN", "FRICTION", "JETGROUTING", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPileTypeEnum::Value Ifc4x3_add1::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "COHESION") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "DRIVEN") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "FRICTION") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "JETGROUTING") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "SUPPORT") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPileTypeEnum::Value) IFC4X3_ADD1_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPileTypeEnum::operator Ifc4x3_add1::IfcPileTypeEnum::Value() const { @@ -8001,22 +6389,11 @@ Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPipeFittingTypeEnum::Value Ifc4x3_add1::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPipeFittingTypeEnum::Value) IFC4X3_ADD1_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPipeFittingTypeEnum::operator Ifc4x3_add1::IfcPipeFittingTypeEnum::Value() const { @@ -8045,20 +6422,11 @@ Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "GUTTER", "RIGIDSEGMENT", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPipeSegmentTypeEnum::Value Ifc4x3_add1::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "GUTTER") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "RIGIDSEGMENT") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "SPOOL") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPipeSegmentTypeEnum::Value) IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPipeSegmentTypeEnum::operator Ifc4x3_add1::IfcPipeSegmentTypeEnum::Value() const { @@ -8087,24 +6455,11 @@ Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASE_PLATE", "COVER_PLATE", "CURTAIN_PANEL", "FLANGE_PLATE", "GUSSET_PLATE", "SHEET", "SPLICE_PLATE", "STIFFENER_PLATE", "WEB_PLATE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPlateTypeEnum::Value Ifc4x3_add1::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "BASE_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_BASE_PLATE; - if (s == "COVER_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_COVER_PLATE; - if (s == "CURTAIN_PANEL") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "FLANGE_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_FLANGE_PLATE; - if (s == "GUSSET_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_GUSSET_PLATE; - if (s == "SHEET") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "SPLICE_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_SPLICE_PLATE; - if (s == "STIFFENER_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_STIFFENER_PLATE; - if (s == "WEB_PLATE") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_WEB_PLATE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPlateTypeEnum::Value) IFC4X3_ADD1_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPlateTypeEnum::operator Ifc4x3_add1::IfcPlateTypeEnum::Value() const { @@ -8133,16 +6488,11 @@ Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRep } const char* Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -8171,22 +6521,11 @@ Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProcedureTypeEnum::Value Ifc4x3_add1::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProcedureTypeEnum::Value) IFC4X3_ADD1_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProcedureTypeEnum::operator Ifc4x3_add1::IfcProcedureTypeEnum::Value() const { @@ -8215,15 +6554,11 @@ Ifc4x3_add1::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AREA", "CURVE" }; - return names[v]; + return IFC4X3_ADD1_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProfileTypeEnum::Value Ifc4x3_add1::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "AREA") return ::Ifc4x3_add1::IfcProfileTypeEnum::IfcProfileType_AREA; - if (s == "CURVE") return ::Ifc4x3_add1::IfcProfileTypeEnum::IfcProfileType_CURVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProfileTypeEnum::Value) IFC4X3_ADD1_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProfileTypeEnum::operator Ifc4x3_add1::IfcProfileTypeEnum::Value() const { @@ -8252,20 +6587,11 @@ Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProjectOrderTypeEnum::Value Ifc4x3_add1::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProjectOrderTypeEnum::Value) IFC4X3_ADD1_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProjectOrderTypeEnum::operator Ifc4x3_add1::IfcProjectOrderTypeEnum::Value() const { @@ -8294,15 +6620,11 @@ Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const st } const char* Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::Value Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::Value) IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::operator Ifc4x3_add1::IfcProjectedOrTrueLengthEnum::Value() const { @@ -8331,17 +6653,11 @@ Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const st } const char* Ifc4x3_add1::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLISTER", "DEVIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProjectionElementTypeEnum::Value Ifc4x3_add1::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "BLISTER") return ::Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementType_BLISTER; - if (s == "DEVIATOR") return ::Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementType_DEVIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProjectionElementTypeEnum::Value) IFC4X3_ADD1_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProjectionElementTypeEnum::operator Ifc4x3_add1::IfcProjectionElementTypeEnum::Value() const { @@ -8370,23 +6686,11 @@ Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(cons } const char* Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_MATERIALDRIVEN", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "PSET_PROFILEDRIVEN", "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_MATERIALDRIVEN") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_MATERIALDRIVEN; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "PSET_PROFILEDRIVEN") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PROFILEDRIVEN; - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value) IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::operator Ifc4x3_add1::IfcPropertySetTemplateTypeEnum::Value() const { @@ -8415,19 +6719,11 @@ Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippin } const char* Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTROMAGNETIC", "ELECTRONIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTROMAGNETIC") return ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "ELECTRONIC") return ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -8456,25 +6752,11 @@ Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std: } const char* Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTI_ARCING_DEVICE", "CIRCUITBREAKER", "EARTHINGSWITCH", "EARTHLEAKAGECIRCUITBREAKER", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "SPARKGAP", "VARISTOR", "VOLTAGELIMITER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "ANTI_ARCING_DEVICE") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_ANTI_ARCING_DEVICE; - if (s == "CIRCUITBREAKER") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "SPARKGAP") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_SPARKGAP; - if (s == "VARISTOR") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "VOLTAGELIMITER") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VOLTAGELIMITER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Value) IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::operator Ifc4x3_add1::IfcProtectiveDeviceTypeEnum::Value() const { @@ -8503,22 +6785,11 @@ Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcPumpTypeEnum::Value Ifc4x3_add1::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcPumpTypeEnum::Value) IFC4X3_ADD1_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcPumpTypeEnum::operator Ifc4x3_add1::IfcPumpTypeEnum::Value() const { @@ -8547,21 +6818,11 @@ Ifc4x3_add1::IfcRailTypeEnum::IfcRailTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRailTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLADE", "CHECKRAIL", "GUARDRAIL", "RACKRAIL", "RAIL", "STOCKRAIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRailTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRailTypeEnum::Value Ifc4x3_add1::IfcRailTypeEnum::FromString(const std::string& s) { - if (s == "BLADE") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_BLADE; - if (s == "CHECKRAIL") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_CHECKRAIL; - if (s == "GUARDRAIL") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_GUARDRAIL; - if (s == "RACKRAIL") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_RACKRAIL; - if (s == "RAIL") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_RAIL; - if (s == "STOCKRAIL") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_STOCKRAIL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRailTypeEnum::IfcRailType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRailTypeEnum::Value) IFC4X3_ADD1_IfcRailTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRailTypeEnum::operator Ifc4x3_add1::IfcRailTypeEnum::Value() const { @@ -8590,19 +6851,11 @@ Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BALUSTRADE", "FENCE", "GUARDRAIL", "HANDRAIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRailingTypeEnum::Value Ifc4x3_add1::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "BALUSTRADE") return ::Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "FENCE") return ::Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingType_FENCE; - if (s == "GUARDRAIL") return ::Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "HANDRAIL") return ::Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRailingTypeEnum::Value) IFC4X3_ADD1_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRailingTypeEnum::operator Ifc4x3_add1::IfcRailingTypeEnum::Value() const { @@ -8631,23 +6884,11 @@ Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcRailwayPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DILATATIONSUPERSTRUCTURE", "LINESIDESTRUCTURE", "LINESIDESTRUCTUREPART", "PLAINTRACKSUPERSTRUCTURE", "SUPERSTRUCTURE", "TRACKSTRUCTURE", "TRACKSTRUCTUREPART", "TURNOUTSUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRailwayPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRailwayPartTypeEnum::Value Ifc4x3_add1::IfcRailwayPartTypeEnum::FromString(const std::string& s) { - if (s == "DILATATIONSUPERSTRUCTURE") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_DILATATIONSUPERSTRUCTURE; - if (s == "LINESIDESTRUCTURE") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTURE; - if (s == "LINESIDESTRUCTUREPART") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTUREPART; - if (s == "PLAINTRACKSUPERSTRUCTURE") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_PLAINTRACKSUPERSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_SUPERSTRUCTURE; - if (s == "TRACKSTRUCTURE") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTURE; - if (s == "TRACKSTRUCTUREPART") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTUREPART; - if (s == "TURNOUTSUPERSTRUCTURE") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_TURNOUTSUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRailwayPartTypeEnum::IfcRailwayPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRailwayPartTypeEnum::Value) IFC4X3_ADD1_IfcRailwayPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRailwayPartTypeEnum::operator Ifc4x3_add1::IfcRailwayPartTypeEnum::Value() const { @@ -8676,15 +6917,11 @@ Ifc4x3_add1::IfcRailwayTypeEnum::IfcRailwayTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRailwayTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRailwayTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRailwayTypeEnum::Value Ifc4x3_add1::IfcRailwayTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRailwayTypeEnum::IfcRailwayType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRailwayTypeEnum::IfcRailwayType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRailwayTypeEnum::Value) IFC4X3_ADD1_IfcRailwayTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRailwayTypeEnum::operator Ifc4x3_add1::IfcRailwayTypeEnum::Value() const { @@ -8713,17 +6950,11 @@ Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPIRAL", "STRAIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRampFlightTypeEnum::Value Ifc4x3_add1::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "SPIRAL") return ::Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "STRAIGHT") return ::Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRampFlightTypeEnum::Value) IFC4X3_ADD1_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRampFlightTypeEnum::operator Ifc4x3_add1::IfcRampFlightTypeEnum::Value() const { @@ -8752,21 +6983,11 @@ Ifc4x3_add1::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HALF_TURN_RAMP", "QUARTER_TURN_RAMP", "SPIRAL_RAMP", "STRAIGHT_RUN_RAMP", "TWO_QUARTER_TURN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRampTypeEnum::Value Ifc4x3_add1::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "HALF_TURN_RAMP") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRampTypeEnum::Value) IFC4X3_ADD1_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRampTypeEnum::operator Ifc4x3_add1::IfcRampTypeEnum::Value() const { @@ -8795,21 +7016,11 @@ Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "DAILY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "WEEKLY", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X3_ADD1_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRecurrenceTypeEnum::Value Ifc4x3_add1::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "BY_DAY_COUNT") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "DAILY") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "WEEKLY") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x3_add1::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRecurrenceTypeEnum::Value) IFC4X3_ADD1_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRecurrenceTypeEnum::operator Ifc4x3_add1::IfcRecurrenceTypeEnum::Value() const { @@ -8838,23 +7049,11 @@ Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOUNDARY", "INTERSECTION", "KILOPOINT", "LANDMARK", "MILEPOINT", "POSITION", "REFERENCEMARKER", "STATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReferentTypeEnum::Value Ifc4x3_add1::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "BOUNDARY") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_BOUNDARY; - if (s == "INTERSECTION") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_INTERSECTION; - if (s == "KILOPOINT") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "LANDMARK") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_LANDMARK; - if (s == "MILEPOINT") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "POSITION") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_POSITION; - if (s == "REFERENCEMARKER") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_REFERENCEMARKER; - if (s == "STATION") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReferentTypeEnum::Value) IFC4X3_ADD1_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReferentTypeEnum::operator Ifc4x3_add1::IfcReferentTypeEnum::Value() const { @@ -8883,24 +7082,11 @@ Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::strin } const char* Ifc4x3_add1::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PHYSICAL", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReflectanceMethodEnum::Value Ifc4x3_add1::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PHYSICAL") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHYSICAL; - if (s == "PLASTIC") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReflectanceMethodEnum::Value) IFC4X3_ADD1_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReflectanceMethodEnum::operator Ifc4x3_add1::IfcReflectanceMethodEnum::Value() const { @@ -8929,21 +7115,11 @@ Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::str } const char* Ifc4x3_add1::IfcReinforcedSoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMICALLYCOMPACTED", "GROUTED", "REPLACED", "ROLLERCOMPACTED", "SURCHARGEPRELOADED", "VERTICALLYDRAINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReinforcedSoilTypeEnum::Value Ifc4x3_add1::IfcReinforcedSoilTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMICALLYCOMPACTED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_DYNAMICALLYCOMPACTED; - if (s == "GROUTED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_GROUTED; - if (s == "REPLACED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_REPLACED; - if (s == "ROLLERCOMPACTED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_ROLLERCOMPACTED; - if (s == "SURCHARGEPRELOADED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_SURCHARGEPRELOADED; - if (s == "VERTICALLYDRAINED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_VERTICALLYDRAINED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReinforcedSoilTypeEnum::Value) IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReinforcedSoilTypeEnum::operator Ifc4x3_add1::IfcReinforcedSoilTypeEnum::Value() const { @@ -8972,23 +7148,11 @@ Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::str } const char* Ifc4x3_add1::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value Ifc4x3_add1::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "EDGE") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "LIGATURE") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "MAIN") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "PUNCHING") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "RING") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "SHEAR") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "STUD") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value) IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReinforcingBarRoleEnum::operator Ifc4x3_add1::IfcReinforcingBarRoleEnum::Value() const { @@ -9017,15 +7181,11 @@ Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const st } const char* Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value) IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::operator Ifc4x3_add1::IfcReinforcingBarSurfaceEnum::Value() const { @@ -9054,24 +7214,11 @@ Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::str } const char* Ifc4x3_add1::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "SPACEBAR", "STUD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReinforcingBarTypeEnum::Value Ifc4x3_add1::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "SPACEBAR") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SPACEBAR; - if (s == "STUD") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReinforcingBarTypeEnum::Value) IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReinforcingBarTypeEnum::operator Ifc4x3_add1::IfcReinforcingBarTypeEnum::Value() const { @@ -9100,15 +7247,11 @@ Ifc4x3_add1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::s } const char* Ifc4x3_add1::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Value Ifc4x3_add1::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Value) IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcReinforcingMeshTypeEnum::operator Ifc4x3_add1::IfcReinforcingMeshTypeEnum::Value() const { @@ -9137,39 +7280,11 @@ Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRoadPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BICYCLECROSSING", "BUS_STOP", "CARRIAGEWAY", "CENTRALISLAND", "CENTRALRESERVE", "HARDSHOULDER", "INTERSECTION", "LAYBY", "PARKINGBAY", "PASSINGBAY", "PEDESTRIAN_CROSSING", "RAILWAYCROSSING", "REFUGEISLAND", "ROADSEGMENT", "ROADSIDE", "ROADSIDEPART", "ROADWAYPLATEAU", "ROUNDABOUT", "SHOULDER", "SIDEWALK", "SOFTSHOULDER", "TOLLPLAZA", "TRAFFICISLAND", "TRAFFICLANE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRoadPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRoadPartTypeEnum::Value Ifc4x3_add1::IfcRoadPartTypeEnum::FromString(const std::string& s) { - if (s == "BICYCLECROSSING") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_BICYCLECROSSING; - if (s == "BUS_STOP") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_BUS_STOP; - if (s == "CARRIAGEWAY") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_CARRIAGEWAY; - if (s == "CENTRALISLAND") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALISLAND; - if (s == "CENTRALRESERVE") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALRESERVE; - if (s == "HARDSHOULDER") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_HARDSHOULDER; - if (s == "INTERSECTION") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_INTERSECTION; - if (s == "LAYBY") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_LAYBY; - if (s == "PARKINGBAY") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_PARKINGBAY; - if (s == "PASSINGBAY") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_PASSINGBAY; - if (s == "PEDESTRIAN_CROSSING") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_PEDESTRIAN_CROSSING; - if (s == "RAILWAYCROSSING") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_RAILWAYCROSSING; - if (s == "REFUGEISLAND") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_REFUGEISLAND; - if (s == "ROADSEGMENT") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSEGMENT; - if (s == "ROADSIDE") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDE; - if (s == "ROADSIDEPART") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDEPART; - if (s == "ROADWAYPLATEAU") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADWAYPLATEAU; - if (s == "ROUNDABOUT") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_ROUNDABOUT; - if (s == "SHOULDER") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_SHOULDER; - if (s == "SIDEWALK") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_SIDEWALK; - if (s == "SOFTSHOULDER") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_SOFTSHOULDER; - if (s == "TOLLPLAZA") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_TOLLPLAZA; - if (s == "TRAFFICISLAND") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICISLAND; - if (s == "TRAFFICLANE") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICLANE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRoadPartTypeEnum::IfcRoadPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRoadPartTypeEnum::Value) IFC4X3_ADD1_IfcRoadPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRoadPartTypeEnum::operator Ifc4x3_add1::IfcRoadPartTypeEnum::Value() const { @@ -9198,15 +7313,11 @@ Ifc4x3_add1::IfcRoadTypeEnum::IfcRoadTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRoadTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRoadTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRoadTypeEnum::Value Ifc4x3_add1::IfcRoadTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRoadTypeEnum::IfcRoadType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRoadTypeEnum::IfcRoadType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRoadTypeEnum::Value) IFC4X3_ADD1_IfcRoadTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRoadTypeEnum::operator Ifc4x3_add1::IfcRoadTypeEnum::Value() const { @@ -9235,36 +7346,11 @@ Ifc4x3_add1::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHITECT", "BUILDINGOPERATOR", "BUILDINGOWNER", "CIVILENGINEER", "CLIENT", "COMMISSIONINGENGINEER", "CONSTRUCTIONMANAGER", "CONSULTANT", "CONTRACTOR", "COSTENGINEER", "ELECTRICALENGINEER", "ENGINEER", "FACILITIESMANAGER", "FIELDCONSTRUCTIONMANAGER", "MANUFACTURER", "MECHANICALENGINEER", "OWNER", "PROJECTMANAGER", "RESELLER", "STRUCTURALENGINEER", "SUBCONTRACTOR", "SUPPLIER", "USERDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRoleEnum::Value Ifc4x3_add1::IfcRoleEnum::FromString(const std::string& s) { - if (s == "ARCHITECT") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "BUILDINGOPERATOR") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "BUILDINGOWNER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "CIVILENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "CLIENT") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_CLIENT; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "CONSULTANT") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONTRACTOR") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "COSTENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "ENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "FACILITIESMANAGER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "MANUFACTURER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "MECHANICALENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "OWNER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_OWNER; - if (s == "PROJECTMANAGER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "RESELLER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_RESELLER; - if (s == "STRUCTURALENGINEER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "SUBCONTRACTOR") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "SUPPLIER") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRoleEnum::Value) IFC4X3_ADD1_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRoleEnum::operator Ifc4x3_add1::IfcRoleEnum::Value() const { @@ -9293,28 +7379,11 @@ Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BARREL_ROOF", "BUTTERFLY_ROOF", "DOME_ROOF", "FLAT_ROOF", "FREEFORM", "GABLE_ROOF", "GAMBREL_ROOF", "HIPPED_GABLE_ROOF", "HIP_ROOF", "MANSARD_ROOF", "PAVILION_ROOF", "RAINBOW_ROOF", "SHED_ROOF", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcRoofTypeEnum::Value Ifc4x3_add1::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "BARREL_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FLAT_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "FREEFORM") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "GABLE_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcRoofTypeEnum::Value) IFC4X3_ADD1_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcRoofTypeEnum::operator Ifc4x3_add1::IfcRoofTypeEnum::Value() const { @@ -9343,29 +7412,11 @@ Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x3_add1::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTO", "CENTI", "DECA", "DECI", "EXA", "FEMTO", "GIGA", "HECTO", "KILO", "MEGA", "MICRO", "MILLI", "NANO", "PETA", "PICO", "TERA" }; - return names[v]; + return IFC4X3_ADD1_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSIPrefix::Value Ifc4x3_add1::IfcSIPrefix::FromString(const std::string& s) { - if (s == "ATTO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_ATTO; - if (s == "CENTI") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "DECA") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "EXA") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "FEMTO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "GIGA") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "HECTO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "KILO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "MEGA") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "MICRO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "MILLI") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "NANO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PETA") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "PICO") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "TERA") return ::Ifc4x3_add1::IfcSIPrefix::IfcSIPrefix_TERA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSIPrefix::Value) IFC4X3_ADD1_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSIPrefix::operator Ifc4x3_add1::IfcSIPrefix::Value() const { @@ -9394,43 +7445,11 @@ Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x3_add1::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X3_ADD1_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSIUnitName::Value Ifc4x3_add1::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x3_add1::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSIUnitName::Value) IFC4X3_ADD1_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSIUnitName::operator Ifc4x3_add1::IfcSIUnitName::Value() const { @@ -9459,25 +7478,11 @@ Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std: } const char* Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SANITARYFOUNTAIN", "SHOWER", "SINK", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Value Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "SHOWER") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "TOILETPAN") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Value) IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::operator Ifc4x3_add1::IfcSanitaryTerminalTypeEnum::Value() const { @@ -9506,15 +7511,11 @@ Ifc4x3_add1::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TAPERED", "UNIFORM" }; - return names[v]; + return IFC4X3_ADD1_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSectionTypeEnum::Value Ifc4x3_add1::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "TAPERED") return ::Ifc4x3_add1::IfcSectionTypeEnum::IfcSectionType_TAPERED; - if (s == "UNIFORM") return ::Ifc4x3_add1::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSectionTypeEnum::Value) IFC4X3_ADD1_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSectionTypeEnum::operator Ifc4x3_add1::IfcSectionTypeEnum::Value() const { @@ -9543,47 +7544,11 @@ Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 34 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "COSENSOR", "EARTHQUAKESENSOR", "FIRESENSOR", "FLOWSENSOR", "FOREIGNOBJECTDETECTIONSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "OBSTACLESENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "RAINSENSOR", "SMOKESENSOR", "SNOWDEPTHSENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "TRAINSENSOR", "TURNOUTCLOSURESENSOR", "WHEELSENSOR", "WINDSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSensorTypeEnum::Value Ifc4x3_add1::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "CO2SENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "COSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "EARTHQUAKESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_EARTHQUAKESENSOR; - if (s == "FIRESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FOREIGNOBJECTDETECTIONSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_FOREIGNOBJECTDETECTIONSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "OBSTACLESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_OBSTACLESENSOR; - if (s == "PHSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "RAINSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_RAINSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SNOWDEPTHSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_SNOWDEPTHSENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "TRAINSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_TRAINSENSOR; - if (s == "TURNOUTCLOSURESENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_TURNOUTCLOSURESENSOR; - if (s == "WHEELSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_WHEELSENSOR; - if (s == "WINDSENSOR") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSensorTypeEnum::Value) IFC4X3_ADD1_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSensorTypeEnum::operator Ifc4x3_add1::IfcSensorTypeEnum::Value() const { @@ -9612,19 +7577,11 @@ Ifc4x3_add1::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINISH_FINISH", "FINISH_START", "START_FINISH", "START_START", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSequenceEnum::Value Ifc4x3_add1::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "FINISH_FINISH") return ::Ifc4x3_add1::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "FINISH_START") return ::Ifc4x3_add1::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "START_FINISH") return ::Ifc4x3_add1::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "START_START") return ::Ifc4x3_add1::IfcSequenceEnum::IfcSequence_START_START; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSequenceEnum::Value) IFC4X3_ADD1_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSequenceEnum::operator Ifc4x3_add1::IfcSequenceEnum::Value() const { @@ -9653,18 +7610,11 @@ Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AWNING", "JALOUSIE", "SHUTTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcShadingDeviceTypeEnum::Value Ifc4x3_add1::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AWNING") return ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "JALOUSIE") return ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcShadingDeviceTypeEnum::Value) IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcShadingDeviceTypeEnum::operator Ifc4x3_add1::IfcShadingDeviceTypeEnum::Value() const { @@ -9693,18 +7643,11 @@ Ifc4x3_add1::IfcSignTypeEnum::IfcSignTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSignTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARKER", "MIRROR", "PICTORAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSignTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSignTypeEnum::Value Ifc4x3_add1::IfcSignTypeEnum::FromString(const std::string& s) { - if (s == "MARKER") return ::Ifc4x3_add1::IfcSignTypeEnum::IfcSignType_MARKER; - if (s == "MIRROR") return ::Ifc4x3_add1::IfcSignTypeEnum::IfcSignType_MIRROR; - if (s == "PICTORAL") return ::Ifc4x3_add1::IfcSignTypeEnum::IfcSignType_PICTORAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSignTypeEnum::IfcSignType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSignTypeEnum::IfcSignType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSignTypeEnum::Value) IFC4X3_ADD1_IfcSignTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSignTypeEnum::operator Ifc4x3_add1::IfcSignTypeEnum::Value() const { @@ -9733,18 +7676,11 @@ Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSignalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIO", "MIXED", "VISUAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSignalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSignalTypeEnum::Value Ifc4x3_add1::IfcSignalTypeEnum::FromString(const std::string& s) { - if (s == "AUDIO") return ::Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalType_AUDIO; - if (s == "MIXED") return ::Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalType_MIXED; - if (s == "VISUAL") return ::Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalType_VISUAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSignalTypeEnum::IfcSignalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSignalTypeEnum::Value) IFC4X3_ADD1_IfcSignalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSignalTypeEnum::operator Ifc4x3_add1::IfcSignalTypeEnum::Value() const { @@ -9773,26 +7709,11 @@ Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnu } const char* Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_BOUNDEDVALUE", "P_ENUMERATEDVALUE", "P_LISTVALUE", "P_REFERENCEVALUE", "P_SINGLEVALUE", "P_TABLEVALUE", "Q_AREA", "Q_COUNT", "Q_LENGTH", "Q_NUMBER", "Q_TIME", "Q_VOLUME", "Q_WEIGHT" }; - return names[v]; + return IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_BOUNDEDVALUE") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "P_SINGLEVALUE") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "Q_AREA") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_COUNT") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_LENGTH") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_NUMBER") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_NUMBER; - if (s == "Q_TIME") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - if (s == "Q_VOLUME") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_WEIGHT") return ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -9821,24 +7742,11 @@ Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "APPROACH_SLAB", "BASESLAB", "FLOOR", "LANDING", "PAVING", "ROOF", "SIDEWALK", "TRACKSLAB", "WEARING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSlabTypeEnum::Value Ifc4x3_add1::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "APPROACH_SLAB") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_APPROACH_SLAB; - if (s == "BASESLAB") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "FLOOR") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "LANDING") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "PAVING") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_PAVING; - if (s == "ROOF") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "SIDEWALK") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_SIDEWALK; - if (s == "TRACKSLAB") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_TRACKSLAB; - if (s == "WEARING") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_WEARING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSlabTypeEnum::Value) IFC4X3_ADD1_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSlabTypeEnum::operator Ifc4x3_add1::IfcSlabTypeEnum::Value() const { @@ -9867,17 +7775,11 @@ Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSolarDeviceTypeEnum::Value Ifc4x3_add1::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSolarDeviceTypeEnum::Value) IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSolarDeviceTypeEnum::operator Ifc4x3_add1::IfcSolarDeviceTypeEnum::Value() const { @@ -9906,17 +7808,11 @@ Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Value Ifc4x3_add1::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Value) IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSpaceHeaterTypeEnum::operator Ifc4x3_add1::IfcSpaceHeaterTypeEnum::Value() const { @@ -9945,21 +7841,11 @@ Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BERTH", "EXTERNAL", "GFA", "INTERNAL", "PARKING", "SPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSpaceTypeEnum::Value Ifc4x3_add1::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "BERTH") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_BERTH; - if (s == "EXTERNAL") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "GFA") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "PARKING") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "SPACE") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSpaceTypeEnum::Value) IFC4X3_ADD1_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSpaceTypeEnum::operator Ifc4x3_add1::IfcSpaceTypeEnum::Value() const { @@ -9988,25 +7874,11 @@ Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "INTERFERENCE", "LIGHTING", "OCCUPANCY", "RESERVATION", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSpatialZoneTypeEnum::Value Ifc4x3_add1::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "INTERFERENCE") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_INTERFERENCE; - if (s == "LIGHTING") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "RESERVATION") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_RESERVATION; - if (s == "SECURITY") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSpatialZoneTypeEnum::Value) IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSpatialZoneTypeEnum::operator Ifc4x3_add1::IfcSpatialZoneTypeEnum::Value() const { @@ -10035,18 +7907,11 @@ Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStackTerminalTypeEnum::Value Ifc4x3_add1::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStackTerminalTypeEnum::Value) IFC4X3_ADD1_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStackTerminalTypeEnum::operator Ifc4x3_add1::IfcStackTerminalTypeEnum::Value() const { @@ -10075,20 +7940,11 @@ Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVED", "FREEFORM", "SPIRAL", "STRAIGHT", "WINDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStairFlightTypeEnum::Value Ifc4x3_add1::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "CURVED") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "SPIRAL") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "STRAIGHT") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStairFlightTypeEnum::Value) IFC4X3_ADD1_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStairFlightTypeEnum::operator Ifc4x3_add1::IfcStairFlightTypeEnum::Value() const { @@ -10117,30 +7973,11 @@ Ifc4x3_add1::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVED_RUN_STAIR", "DOUBLE_RETURN_STAIR", "HALF_TURN_STAIR", "HALF_WINDING_STAIR", "LADDER", "QUARTER_TURN_STAIR", "QUARTER_WINDING_STAIR", "SPIRAL_STAIR", "STRAIGHT_RUN_STAIR", "THREE_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "TWO_CURVED_RUN_STAIR", "TWO_QUARTER_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_STRAIGHT_RUN_STAIR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStairTypeEnum::Value Ifc4x3_add1::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "CURVED_RUN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "LADDER") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_LADDER; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStairTypeEnum::Value) IFC4X3_ADD1_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStairTypeEnum::operator Ifc4x3_add1::IfcStairTypeEnum::Value() const { @@ -10169,18 +8006,11 @@ Ifc4x3_add1::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOCKED", "READONLY", "READONLYLOCKED", "READWRITE", "READWRITELOCKED" }; - return names[v]; + return IFC4X3_ADD1_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStateEnum::Value Ifc4x3_add1::IfcStateEnum::FromString(const std::string& s) { - if (s == "LOCKED") return ::Ifc4x3_add1::IfcStateEnum::IfcState_LOCKED; - if (s == "READONLY") return ::Ifc4x3_add1::IfcStateEnum::IfcState_READONLY; - if (s == "READONLYLOCKED") return ::Ifc4x3_add1::IfcStateEnum::IfcState_READONLYLOCKED; - if (s == "READWRITE") return ::Ifc4x3_add1::IfcStateEnum::IfcState_READWRITE; - if (s == "READWRITELOCKED") return ::Ifc4x3_add1::IfcStateEnum::IfcState_READWRITELOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStateEnum::Value) IFC4X3_ADD1_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStateEnum::operator Ifc4x3_add1::IfcStateEnum::Value() const { @@ -10209,22 +8039,11 @@ Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeE } const char* Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "DISCRETE", "EQUIDISTANT", "LINEAR", "PARABOLA", "POLYGONAL", "SINUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::Value Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "DISCRETE") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "EQUIDISTANT") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "LINEAR") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "PARABOLA") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "POLYGONAL") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "SINUS") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::Value) IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::operator Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -10253,20 +8072,11 @@ Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum( } const char* Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "COMPRESSION_MEMBER", "PIN_JOINED_MEMBER", "RIGID_JOINED_MEMBER", "TENSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "TENSION_MEMBER") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::Value) IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::operator Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -10295,19 +8105,11 @@ Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityT } const char* Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BILINEAR", "CONST", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "BILINEAR") return ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "CONST") return ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "DISCRETE") return ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -10336,18 +8138,11 @@ Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeE } const char* Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -10376,17 +8171,11 @@ Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(cons } const char* Ifc4x3_add1::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value Ifc4x3_add1::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value) IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSubContractResourceTypeEnum::operator Ifc4x3_add1::IfcSubContractResourceTypeEnum::Value() const { @@ -10415,26 +8204,11 @@ Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::str } const char* Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEFECT", "HATCHMARKING", "LINEMARKING", "MARK", "NONSKIDSURFACING", "PAVEMENTSURFACEMARKING", "RUMBLESTRIP", "SYMBOLMARKING", "TAG", "TRANSVERSERUMBLESTRIP", "TREATMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::Value Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "DEFECT") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_DEFECT; - if (s == "HATCHMARKING") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_HATCHMARKING; - if (s == "LINEMARKING") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_LINEMARKING; - if (s == "MARK") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "NONSKIDSURFACING") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NONSKIDSURFACING; - if (s == "PAVEMENTSURFACEMARKING") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_PAVEMENTSURFACEMARKING; - if (s == "RUMBLESTRIP") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_RUMBLESTRIP; - if (s == "SYMBOLMARKING") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_SYMBOLMARKING; - if (s == "TAG") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TRANSVERSERUMBLESTRIP") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TRANSVERSERUMBLESTRIP; - if (s == "TREATMENT") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::Value) IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::operator Ifc4x3_add1::IfcSurfaceFeatureTypeEnum::Value() const { @@ -10463,16 +8237,11 @@ Ifc4x3_add1::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x3_add1::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOTH", "NEGATIVE", "POSITIVE" }; - return names[v]; + return IFC4X3_ADD1_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSurfaceSide::Value Ifc4x3_add1::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "BOTH") return ::Ifc4x3_add1::IfcSurfaceSide::IfcSurfaceSide_BOTH; - if (s == "NEGATIVE") return ::Ifc4x3_add1::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "POSITIVE") return ::Ifc4x3_add1::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSurfaceSide::Value) IFC4X3_ADD1_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSurfaceSide::operator Ifc4x3_add1::IfcSurfaceSide::Value() const { @@ -10501,26 +8270,11 @@ Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::s } const char* Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "RELAY", "SELECTORSWITCH", "STARTER", "START_AND_STOP_EQUIPMENT", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Value Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "RELAY") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_RELAY; - if (s == "SELECTORSWITCH") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "START_AND_STOP_EQUIPMENT") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_START_AND_STOP_EQUIPMENT; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Value) IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::operator Ifc4x3_add1::IfcSwitchingDeviceTypeEnum::Value() const { @@ -10549,18 +8303,11 @@ Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnu } const char* Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "SUBRACK", "WORKSURFACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Value Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "SUBRACK") return ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_SUBRACK; - if (s == "WORKSURFACE") return ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Value) IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::operator Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -10589,23 +8336,11 @@ Ifc4x3_add1::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "OILRETENTIONTRAY", "PRESSUREVESSEL", "STORAGE", "VESSEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTankTypeEnum::Value Ifc4x3_add1::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "OILRETENTIONTRAY") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_OILRETENTIONTRAY; - if (s == "PRESSUREVESSEL") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTankTypeEnum::Value) IFC4X3_ADD1_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTankTypeEnum::operator Ifc4x3_add1::IfcTankTypeEnum::Value() const { @@ -10634,16 +8369,11 @@ Ifc4x3_add1::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTaskDurationEnum::Value Ifc4x3_add1::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x3_add1::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x3_add1::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTaskDurationEnum::Value) IFC4X3_ADD1_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTaskDurationEnum::operator Ifc4x3_add1::IfcTaskDurationEnum::Value() const { @@ -10672,36 +8402,11 @@ Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADJUSTMENT", "ATTENDANCE", "CALIBRATION", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "EMERGENCY", "INSPECTION", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "SAFETY", "SHUTDOWN", "STARTUP", "TESTING", "TROUBLESHOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTaskTypeEnum::Value Ifc4x3_add1::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ADJUSTMENT") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_ADJUSTMENT; - if (s == "ATTENDANCE") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CALIBRATION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_CALIBRATION; - if (s == "CONSTRUCTION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "EMERGENCY") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_EMERGENCY; - if (s == "INSPECTION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_INSPECTION; - if (s == "INSTALLATION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "SAFETY") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_SAFETY; - if (s == "SHUTDOWN") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_STARTUP; - if (s == "TESTING") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_TESTING; - if (s == "TROUBLESHOOTING") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_TROUBLESHOOTING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTaskTypeEnum::Value) IFC4X3_ADD1_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTaskTypeEnum::operator Ifc4x3_add1::IfcTaskTypeEnum::Value() const { @@ -10730,18 +8435,11 @@ Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTendonAnchorTypeEnum::Value Ifc4x3_add1::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTendonAnchorTypeEnum::Value) IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTendonAnchorTypeEnum::operator Ifc4x3_add1::IfcTendonAnchorTypeEnum::Value() const { @@ -10770,20 +8468,11 @@ Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcTendonConduitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "DIABOLO", "DUCT", "GROUTING_DUCT", "TRUMPET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTendonConduitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTendonConduitTypeEnum::Value Ifc4x3_add1::IfcTendonConduitTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_COUPLER; - if (s == "DIABOLO") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_DIABOLO; - if (s == "DUCT") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_DUCT; - if (s == "GROUTING_DUCT") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_GROUTING_DUCT; - if (s == "TRUMPET") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_TRUMPET; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTendonConduitTypeEnum::IfcTendonConduitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTendonConduitTypeEnum::Value) IFC4X3_ADD1_IfcTendonConduitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTendonConduitTypeEnum::operator Ifc4x3_add1::IfcTendonConduitTypeEnum::Value() const { @@ -10812,19 +8501,11 @@ Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTendonTypeEnum::Value Ifc4x3_add1::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTendonTypeEnum::Value) IFC4X3_ADD1_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTendonTypeEnum::operator Ifc4x3_add1::IfcTendonTypeEnum::Value() const { @@ -10853,17 +8534,11 @@ Ifc4x3_add1::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x3_add1::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOWN", "LEFT", "RIGHT", "UP" }; - return names[v]; + return IFC4X3_ADD1_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTextPath::Value Ifc4x3_add1::IfcTextPath::FromString(const std::string& s) { - if (s == "DOWN") return ::Ifc4x3_add1::IfcTextPath::IfcTextPath_DOWN; - if (s == "LEFT") return ::Ifc4x3_add1::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x3_add1::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x3_add1::IfcTextPath::IfcTextPath_UP; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTextPath::Value) IFC4X3_ADD1_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTextPath::operator Ifc4x3_add1::IfcTextPath::Value() const { @@ -10892,20 +8567,11 @@ Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::str } const char* Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value) IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::operator Ifc4x3_add1::IfcTimeSeriesDataTypeEnum::Value() const { @@ -10934,23 +8600,11 @@ Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcTrackElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLOCKINGDEVICE", "DERAILER", "FROG", "HALF_SET_OF_BLADES", "SLEEPER", "SPEEDREGULATOR", "TRACKENDOFALIGNMENT", "VEHICLESTOP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTrackElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTrackElementTypeEnum::Value Ifc4x3_add1::IfcTrackElementTypeEnum::FromString(const std::string& s) { - if (s == "BLOCKINGDEVICE") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_BLOCKINGDEVICE; - if (s == "DERAILER") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_DERAILER; - if (s == "FROG") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_FROG; - if (s == "HALF_SET_OF_BLADES") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_HALF_SET_OF_BLADES; - if (s == "SLEEPER") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_SLEEPER; - if (s == "SPEEDREGULATOR") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_SPEEDREGULATOR; - if (s == "TRACKENDOFALIGNMENT") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_TRACKENDOFALIGNMENT; - if (s == "VEHICLESTOP") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_VEHICLESTOP; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTrackElementTypeEnum::IfcTrackElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTrackElementTypeEnum::Value) IFC4X3_ADD1_IfcTrackElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTrackElementTypeEnum::operator Ifc4x3_add1::IfcTrackElementTypeEnum::Value() const { @@ -10979,22 +8633,11 @@ Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v } const char* Ifc4x3_add1::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHOPPER", "COMBINED", "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTransformerTypeEnum::Value Ifc4x3_add1::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CHOPPER") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_CHOPPER; - if (s == "COMBINED") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_COMBINED; - if (s == "CURRENT") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTransformerTypeEnum::Value) IFC4X3_ADD1_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTransformerTypeEnum::operator Ifc4x3_add1::IfcTransformerTypeEnum::Value() const { @@ -11023,17 +8666,11 @@ Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x3_add1::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE", "DISCONTINUOUS" }; - return names[v]; + return IFC4X3_ADD1_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTransitionCode::Value Ifc4x3_add1::IfcTransitionCode::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - if (s == "DISCONTINUOUS") return ::Ifc4x3_add1::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTransitionCode::Value) IFC4X3_ADD1_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTransitionCode::operator Ifc4x3_add1::IfcTransitionCode::Value() const { @@ -11062,21 +8699,11 @@ Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementTypeEnum(const std: } const char* Ifc4x3_add1::IfcTransportElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CRANEWAY", "ELEVATOR", "ESCALATOR", "HAULINGGEAR", "LIFTINGGEAR", "MOVINGWALKWAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTransportElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTransportElementTypeEnum::Value Ifc4x3_add1::IfcTransportElementTypeEnum::FromString(const std::string& s) { - if (s == "CRANEWAY") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_CRANEWAY; - if (s == "ELEVATOR") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_ESCALATOR; - if (s == "HAULINGGEAR") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_HAULINGGEAR; - if (s == "LIFTINGGEAR") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_LIFTINGGEAR; - if (s == "MOVINGWALKWAY") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_MOVINGWALKWAY; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTransportElementTypeEnum::IfcTransportElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTransportElementTypeEnum::Value) IFC4X3_ADD1_IfcTransportElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTransportElementTypeEnum::operator Ifc4x3_add1::IfcTransportElementTypeEnum::Value() const { @@ -11105,16 +8732,11 @@ Ifc4x3_add1::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) } const char* Ifc4x3_add1::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_ADD1_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTrimmingPreference::Value Ifc4x3_add1::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x3_add1::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x3_add1::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x3_add1::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTrimmingPreference::Value) IFC4X3_ADD1_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTrimmingPreference::operator Ifc4x3_add1::IfcTrimmingPreference::Value() const { @@ -11143,16 +8765,11 @@ Ifc4x3_add1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) } const char* Ifc4x3_add1::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcTubeBundleTypeEnum::Value Ifc4x3_add1::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x3_add1::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcTubeBundleTypeEnum::Value) IFC4X3_ADD1_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcTubeBundleTypeEnum::operator Ifc4x3_add1::IfcTubeBundleTypeEnum::Value() const { @@ -11181,43 +8798,11 @@ Ifc4x3_add1::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcUnitEnum::Value Ifc4x3_add1::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcUnitEnum::Value) IFC4X3_ADD1_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcUnitEnum::operator Ifc4x3_add1::IfcUnitEnum::Value() const { @@ -11246,25 +8831,11 @@ Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum( } const char* Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "BASESTATIONCONTROLLER", "COMBINED", "CONTROLPANEL", "GASDETECTIONPANEL", "HUMIDISTAT", "INDICATORPANEL", "MIMICPANEL", "THERMOSTAT", "WEATHERSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Value Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "BASESTATIONCONTROLLER") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_BASESTATIONCONTROLLER; - if (s == "COMBINED") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_COMBINED; - if (s == "CONTROLPANEL") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "INDICATORPANEL") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "THERMOSTAT") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Value) IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::operator Ifc4x3_add1::IfcUnitaryControlElementTypeEnum::Value() const { @@ -11293,20 +8864,11 @@ Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std: } const char* Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONINGUNIT", "AIRHANDLER", "DEHUMIDIFIER", "ROOFTOPUNIT", "SPLITSYSTEM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Value Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "AIRHANDLER") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "DEHUMIDIFIER") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "ROOFTOPUNIT") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "SPLITSYSTEM") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Value) IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::operator Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -11335,36 +8897,11 @@ Ifc4x3_add1::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DOUBLECHECK", "DOUBLEREGULATING", "DRAWOFFCOCK", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcValveTypeEnum::Value Ifc4x3_add1::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DOUBLECHECK") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "DRAWOFFCOCK") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "FAUCET") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcValveTypeEnum::Value) IFC4X3_ADD1_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcValveTypeEnum::operator Ifc4x3_add1::IfcValveTypeEnum::Value() const { @@ -11393,22 +8930,11 @@ Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcVehicleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARGO", "ROLLINGSTOCK", "VEHICLE", "VEHICLEAIR", "VEHICLEMARINE", "VEHICLETRACKED", "VEHICLEWHEELED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcVehicleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcVehicleTypeEnum::Value Ifc4x3_add1::IfcVehicleTypeEnum::FromString(const std::string& s) { - if (s == "CARGO") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_CARGO; - if (s == "ROLLINGSTOCK") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_ROLLINGSTOCK; - if (s == "VEHICLE") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_VEHICLE; - if (s == "VEHICLEAIR") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_VEHICLEAIR; - if (s == "VEHICLEMARINE") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_VEHICLEMARINE; - if (s == "VEHICLETRACKED") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_VEHICLETRACKED; - if (s == "VEHICLEWHEELED") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_VEHICLEWHEELED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcVehicleTypeEnum::IfcVehicleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcVehicleTypeEnum::Value) IFC4X3_ADD1_IfcVehicleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcVehicleTypeEnum::operator Ifc4x3_add1::IfcVehicleTypeEnum::Value() const { @@ -11437,21 +8963,11 @@ Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::s } const char* Ifc4x3_add1::IfcVibrationDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIAL_YIELD", "BENDING_YIELD", "FRICTION", "RUBBER", "SHEAR_YIELD", "VISCOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcVibrationDamperTypeEnum::Value Ifc4x3_add1::IfcVibrationDamperTypeEnum::FromString(const std::string& s) { - if (s == "AXIAL_YIELD") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_AXIAL_YIELD; - if (s == "BENDING_YIELD") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_BENDING_YIELD; - if (s == "FRICTION") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_FRICTION; - if (s == "RUBBER") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_RUBBER; - if (s == "SHEAR_YIELD") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_SHEAR_YIELD; - if (s == "VISCOUS") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_VISCOUS; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcVibrationDamperTypeEnum::Value) IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcVibrationDamperTypeEnum::operator Ifc4x3_add1::IfcVibrationDamperTypeEnum::Value() const { @@ -11480,18 +8996,11 @@ Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const st } const char* Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASE", "COMPRESSION", "SPRING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Value Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "BASE") return ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_BASE; - if (s == "COMPRESSION") return ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Value) IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::operator Ifc4x3_add1::IfcVibrationIsolatorTypeEnum::Value() const { @@ -11520,18 +9029,11 @@ Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementTypeEnum(const std::str } const char* Ifc4x3_add1::IfcVirtualElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOUNDARY", "CLEARANCE", "PROVISIONFORVOID", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcVirtualElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcVirtualElementTypeEnum::Value Ifc4x3_add1::IfcVirtualElementTypeEnum::FromString(const std::string& s) { - if (s == "BOUNDARY") return ::Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementType_BOUNDARY; - if (s == "CLEARANCE") return ::Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementType_CLEARANCE; - if (s == "PROVISIONFORVOID") return ::Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementType_PROVISIONFORVOID; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcVirtualElementTypeEnum::IfcVirtualElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcVirtualElementTypeEnum::Value) IFC4X3_ADD1_IfcVirtualElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcVirtualElementTypeEnum::operator Ifc4x3_add1::IfcVirtualElementTypeEnum::Value() const { @@ -11560,21 +9062,11 @@ Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::str } const char* Ifc4x3_add1::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAMFER", "CUTOUT", "EDGE", "HOLE", "MITER", "NOTCH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcVoidingFeatureTypeEnum::Value Ifc4x3_add1::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CHAMFER") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "CUTOUT") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "EDGE") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "HOLE") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "NOTCH") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcVoidingFeatureTypeEnum::Value) IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcVoidingFeatureTypeEnum::operator Ifc4x3_add1::IfcVoidingFeatureTypeEnum::Value() const { @@ -11603,26 +9095,11 @@ Ifc4x3_add1::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEMENTEDWALL", "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "POLYGONAL", "RETAININGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "WAVEWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWallTypeEnum::Value Ifc4x3_add1::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "ELEMENTEDWALL") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "MOVABLE") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "POLYGONAL") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "RETAININGWALL") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_RETAININGWALL; - if (s == "SHEAR") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "WAVEWALL") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_WAVEWALL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWallTypeEnum::Value) IFC4X3_ADD1_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWallTypeEnum::operator Ifc4x3_add1::IfcWallTypeEnum::Value() const { @@ -11651,22 +9128,11 @@ Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::strin } const char* Ifc4x3_add1::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWasteTerminalTypeEnum::Value Ifc4x3_add1::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWasteTerminalTypeEnum::Value) IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWasteTerminalTypeEnum::operator Ifc4x3_add1::IfcWasteTerminalTypeEnum::Value() const { @@ -11695,27 +9161,11 @@ Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std: } const char* Ifc4x3_add1::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOTTOMHUNG", "FIXEDCASEMENT", "OTHEROPERATION", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "REMOVABLECASEMENT", "SIDEHUNGLEFTHAND", "SIDEHUNGRIGHTHAND", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "TILTANDTURNLEFTHAND", "TILTANDTURNRIGHTHAND", "TOPHUNG", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWindowPanelOperationEnum::Value Ifc4x3_add1::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "BOTTOMHUNG") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "FIXEDCASEMENT") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TOPHUNG") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWindowPanelOperationEnum::Value) IFC4X3_ADD1_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWindowPanelOperationEnum::operator Ifc4x3_add1::IfcWindowPanelOperationEnum::Value() const { @@ -11744,19 +9194,11 @@ Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::s } const char* Ifc4x3_add1::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BOTTOM", "LEFT", "MIDDLE", "RIGHT", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWindowPanelPositionEnum::Value Ifc4x3_add1::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "BOTTOM") return ::Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "LEFT") return ::Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "TOP") return ::Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWindowPanelPositionEnum::Value) IFC4X3_ADD1_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWindowPanelPositionEnum::operator Ifc4x3_add1::IfcWindowPanelPositionEnum::Value() const { @@ -11785,18 +9227,11 @@ Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LIGHTDOME", "SKYLIGHT", "WINDOW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWindowTypeEnum::Value Ifc4x3_add1::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "LIGHTDOME") return ::Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "SKYLIGHT") return ::Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "WINDOW") return ::Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWindowTypeEnum::Value) IFC4X3_ADD1_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWindowTypeEnum::operator Ifc4x3_add1::IfcWindowTypeEnum::Value() const { @@ -11825,24 +9260,11 @@ Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const } const char* Ifc4x3_add1::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOUBLE_PANEL_HORIZONTAL", "DOUBLE_PANEL_VERTICAL", "SINGLE_PANEL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_VERTICAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWindowTypePartitioningEnum::Value Ifc4x3_add1::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "SINGLE_PANEL") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWindowTypePartitioningEnum::Value) IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWindowTypePartitioningEnum::operator Ifc4x3_add1::IfcWindowTypePartitioningEnum::Value() const { @@ -11871,18 +9293,11 @@ Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value Ifc4x3_add1::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value) IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWorkCalendarTypeEnum::operator Ifc4x3_add1::IfcWorkCalendarTypeEnum::Value() const { @@ -11911,18 +9326,11 @@ Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x3_add1::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWorkPlanTypeEnum::Value Ifc4x3_add1::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWorkPlanTypeEnum::Value) IFC4X3_ADD1_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWorkPlanTypeEnum::operator Ifc4x3_add1::IfcWorkPlanTypeEnum::Value() const { @@ -11951,18 +9359,11 @@ Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& } const char* Ifc4x3_add1::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_add1::IfcWorkScheduleTypeEnum::Value Ifc4x3_add1::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_add1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_add1::IfcWorkScheduleTypeEnum::Value) IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_add1::IfcWorkScheduleTypeEnum::operator Ifc4x3_add1::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x3_rc1-schema.cpp b/src/ifcparse/Ifc4x3_rc1-schema.cpp index 01fc5d876b..a261baa7b9 100644 --- a/src/ifcparse/Ifc4x3_rc1-schema.cpp +++ b/src/ifcparse/Ifc4x3_rc1-schema.cpp @@ -2607,6 +2607,3867 @@ class IFC4X3_RC1_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"RAILWAYCROCODILE"s, +"RAILWAYDETONATOR"s, +"IfcAlignmentTypeEnum"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAnnotationTypeEnum"s, +"ASSUMEDPOINT"s, +"ASBUILTAREA"s, +"ASBUILTLINE"s, +"NON_PHYSICAL_SIGNAL"s, +"ASSUMEDLINE"s, +"WIDTHEVENT"s, +"ASSUMEDAREA"s, +"SUPERELEVATIONEVENT"s, +"ASBUILTPOINT"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"RAILWAY_COMMUNICATION_TERMINAL"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"GIRDER_SEGMENT"s, +"DIAPHRAGM"s, +"PIERCAP"s, +"HATSTONE"s, +"CORNICE"s, +"EDGEBEAM"s, +"IfcBearingTypeDisplacementEnum"s, +"FIXED_MOVEMENT"s, +"GUIDED_LONGITUDINAL"s, +"GUIDED_TRANSVERSAL"s, +"FREE_MOVEMENT"s, +"IfcBearingTypeEnum"s, +"CYLINDRICAL"s, +"SPHERICAL"s, +"ELASTOMERIC"s, +"POT"s, +"GUIDE"s, +"ROCKER"s, +"ROLLER"s, +"DISK"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBridgePartTypeEnum"s, +"ABUTMENT"s, +"DECK"s, +"DECK_SEGMENT"s, +"FOUNDATION"s, +"PIER"s, +"PIER_SEGMENT"s, +"PYLON"s, +"SUBSTRUCTURE"s, +"SUPERSTRUCTURE"s, +"SURFACESTRUCTURE"s, +"IfcBridgeTypeEnum"s, +"ARCHED"s, +"CABLE_STAYED"s, +"CANTILEVER"s, +"CULVERT"s, +"FRAMEWORK"s, +"GIRDER"s, +"SUSPENSION"s, +"TRUSS"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"APRON"s, +"ARMOURUNIT"s, +"SAFETYCAGE"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"REINFORCING"s, +"PRESTRESSING"s, +"EROSIONPREVENTION"s, +"IfcBuiltSystemTypeEnum"s, +"MOORING"s, +"TRACKCIRCUIT"s, +"MOORINGSYSTEM"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"CABLEBRACKET"s, +"CATENARYWIRE"s, +"DROPPER"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"FANOUT"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"CONTACTWIRESEGMENT"s, +"FIBERSEGMENT"s, +"FIBERTUBE"s, +"OPTICALCABLESEGMENT"s, +"STITCHWIRE"s, +"WIREPAIRSEGMENT"s, +"IfcCaissonFoundationTypeEnum"s, +"WELL"s, +"CAISSON"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"PIERSTEM"s, +"PIERSTEM_SEGMENT"s, +"STANDCOLUMN"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"AUTOMATON"s, +"INTELLIGENT_PERIPHERAL"s, +"IP_NETWORK_EQUIPMENT"s, +"OPTICAL_NETWORK_UNIT"s, +"TELECOMMAND"s, +"TELEPHONYEXCHANGE"s, +"TRANSITIONCOMPONENT"s, +"TRANSPONDER"s, +"TRANSPORTEQUIPMENT"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcConveyorSegmentTypeEnum"s, +"CHUTECONVEYOR"s, +"BELTCONVEYOR"s, +"SCREWCONVEYOR"s, +"BUCKETCONVEYOR"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCourseTypeEnum"s, +"ARMOUR"s, +"FILTER"s, +"BALLASTBED"s, +"CORE"s, +"PAVEMENT"s, +"PROTECTION"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"COPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"EXPANSION_JOINT_DEVICE"s, +"BIRDPROTECTION"s, +"CABLEARRANGER"s, +"INSULATOR"s, +"LOCK"s, +"TENSIONINGEQUIPMENT"s, +"RAILPAD"s, +"SLIDINGCHAIR"s, +"PANEL_STRENGTHENING"s, +"RAILBRACE"s, +"ELASTIC_CUSHION"s, +"SOUNDABSORPTION"s, +"RAIL_LUBRICATION"s, +"RAIL_MECHANICAL_EQUIPMENT"s, +"IfcDistributionBoardTypeEnum"s, +"SWITCHBOARD"s, +"CONSUMERUNIT"s, +"MOTORCONTROLCENTRE"s, +"DISTRIBUTIONFRAME"s, +"DISTRIBUTIONBOARD"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"WIRELESS"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"CATENARY_SYSTEM"s, +"OVERHEAD_CONTACTLINE_SYSTEM"s, +"RETURN_CIRCUIT"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"BOOM_BARRIER"s, +"TURNSTILE"s, +"IfcDoorTypeOperationEnum"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcEarthworksCutTypeEnum"s, +"DREDGING"s, +"EXCAVATION"s, +"OVEREXCAVATION"s, +"TOPSOILREMOVAL"s, +"STEPEXCAVATION"s, +"PAVEMENTMILLING"s, +"CUT"s, +"BASE_EXCAVATION"s, +"IfcEarthworksFillTypeEnum"s, +"BACKFILL"s, +"COUNTERWEIGHT"s, +"SUBGRADE"s, +"EMBANKMENT"s, +"TRANSITIONSECTION"s, +"SUBGRADEBED"s, +"SLOPEFILL"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"CAPACITOR"s, +"COMPENSATOR"s, +"INDUCTOR"s, +"RECHARGER"s, +"IfcElectricFlowTreatmentDeviceTypeEnum"s, +"ELECTRONICFILTER"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"CROSS_BRACING"s, +"MAST"s, +"SIGNALASSEMBLY"s, +"GRID"s, +"SHELTER"s, +"SUPPORTINGASSEMBLY"s, +"SUSPENSIONASSEMBLY"s, +"TRACTION_SWITCHING_ASSEMBLY"s, +"TRACKPANEL"s, +"TURNOUTPANEL"s, +"DILATATIONPANEL"s, +"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"s, +"ENTRANCEWORKS"s, +"SUMPBUSTER"s, +"TRAFFIC_CALMING_DEVICE"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFacilityPartCommonTypeEnum"s, +"SEGMENT"s, +"ABOVEGROUND"s, +"LEVELCROSSING"s, +"BELOWGROUND"s, +"TERMINAL"s, +"IfcFacilityUsageEnum"s, +"LATERAL"s, +"REGION"s, +"VERTICAL"s, +"LONGITUDINAL"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"COMBINED"s, +"VOLTMETER"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"TECHNICALCABINET"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"SOIL_BORING_POINT"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"TURNOUTHEATING"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcImpactProtectionDeviceTypeEnum"s, +"CRASHCUSHION"s, +"DAMPINGSYSTEM"s, +"FENDER"s, +"BUMPER"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLiquidTerminalTypeEnum"s, +"LOADINGARM"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMarineFacilityTypeEnum"s, +"CANAL"s, +"WATERWAYSHIPLIFT"s, +"LAUNCHRECOVERY"s, +"MARINEDEFENCE"s, +"HYDROLIFT"s, +"SHIPYARD"s, +"SHIPLIFT"s, +"PORT"s, +"QUAY"s, +"FLOATINGDOCK"s, +"NAVIGATIONALCHANNEL"s, +"BREAKWATER"s, +"DRYDOCK"s, +"JETTY"s, +"SHIPLOCK"s, +"BARRIERBEACH"s, +"SLIPWAY"s, +"WATERWAY"s, +"IfcMarinePartTypeEnum"s, +"CREST"s, +"MANUFACTURING"s, +"LOWWATERLINE"s, +"WATERFIELD"s, +"CILL_LEVEL"s, +"BERTHINGSTRUCTURE"s, +"COPELEVEL"s, +"CHAMBER"s, +"STORAGE"s, +"APPROACHCHANNEL"s, +"VEHICLESERVICING"s, +"SHIPTRANSFER"s, +"GATEHEAD"s, +"GUDINGSTRUCTURE"s, +"BELOWWATERLINE"s, +"WEATHERSIDE"s, +"LANDFIELD"s, +"LEEWARDSIDE"s, +"ABOVEWATERLINE"s, +"ANCHORAGE"s, +"NAVIGATIONALAREA"s, +"HIGHWATERLINE"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"COUPLER"s, +"RAILJOINT"s, +"RAILFASTENING"s, +"CHAIN"s, +"ROPE"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"STIFFENING_RIB"s, +"ARCH_SEGMENT"s, +"SUSPENSION_CABLE"s, +"SUSPENDER"s, +"STAY_CABLE"s, +"STRUCTURALCABLE"s, +"TIEBAR"s, +"IfcMobileTelecommunicationsApplianceTypeEnum"s, +"E_UTRAN_NODE_B"s, +"REMOTE_RADIO_UNIT"s, +"ACCESSPOINT"s, +"BASETRANSCEIVERSTATION"s, +"REMOTEUNIT"s, +"BASEBANDUNIT"s, +"MASTERUNIT"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMooringDeviceTypeEnum"s, +"LINETENSIONER"s, +"MAGNETICDEVICE"s, +"MOORINGHOOKS"s, +"VACUUMDEVICE"s, +"BOLLARD"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNavigationElementTypeEnum"s, +"BEACON"s, +"BUOY"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNullStyle"s, +"NULL"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"FLANGE_PLATE"s, +"WEB_PLATE"s, +"STIFFENER_PLATE"s, +"GUSSET_PLATE"s, +"COVER_PLATE"s, +"SPLICE_PLATE"s, +"BASE_PLATE"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"BLISTER"s, +"DEVIATOR"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"ANTI_ARCING_DEVICE"s, +"SPARKGAP"s, +"VOLTAGELIMITER"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailTypeEnum"s, +"RACKRAIL"s, +"BLADE"s, +"GUARDRAIL"s, +"STOCKRAIL"s, +"CHECKRAIL"s, +"RAIL"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"BALUSTRADE"s, +"FENCE"s, +"IfcRailwayPartTypeEnum"s, +"TRACKSTRUCTURE"s, +"TRACKSTRUCTUREPART"s, +"LINESIDESTRUCTUREPART"s, +"DILATATIONSUPERSTRUCTURE"s, +"PLAINTRACKSUPESTRUCTURE"s, +"LINESIDESTRUCTURE"s, +"TURNOUTSUPERSTRUCTURE"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"KILOPOINT"s, +"MILEPOINT"s, +"STATION"s, +"REFERENCEMARKER"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcedSoilTypeEnum"s, +"SURCHARGEPRELOADED"s, +"VERTICALLYDRAINED"s, +"DYNAMICALLYCOMPACTED"s, +"REPLACED"s, +"ROLLERCOMPACTED"s, +"GROUTED"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"SPACEBAR"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoadPartTypeEnum"s, +"ROADSIDEPART"s, +"BUS_STOP"s, +"HARDSHOULDER"s, +"PASSINGBAY"s, +"ROADWAYPLATEAU"s, +"ROADSIDE"s, +"REFUGEISLAND"s, +"TOLLPLAZA"s, +"CENTRALRESERVE"s, +"SIDEWALK"s, +"PARKINGBAY"s, +"RAILWAYCROSSING"s, +"PEDESTRIAN_CROSSING"s, +"SOFTSHOULDER"s, +"BICYCLECROSSING"s, +"CENTRALISLAND"s, +"SHOULDER"s, +"TRAFFICLANE"s, +"ROADSEGMENT"s, +"ROUNDABOUT"s, +"LAYBY"s, +"CARRIAGEWAY"s, +"TRAFFICISLAND"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"EARTHQUAKESENSOR"s, +"FOREIGNOBJECTDETECTIONSENSOR"s, +"OBSTACLESENSOR"s, +"RAINSENSOR"s, +"SNOWDEPTHSENSOR"s, +"TRAINSENSOR"s, +"TURNOUTCLOSURESENSOR"s, +"WHEELSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSignTypeEnum"s, +"MARKER"s, +"PICTORAL"s, +"IfcSignalTypeEnum"s, +"VISUAL"s, +"AUDIO"s, +"MIXED"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"APPROACH_SLAB"s, +"WEARING"s, +"TRACKSLAB"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"RESERVATION"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"LADDER"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"DEFECT"s, +"HATCHMARKING"s, +"LINEMARKING"s, +"PAVEMENTSURFACEMARKING"s, +"SYMBOLMARKING"s, +"NONSKIDSURFACING"s, +"RUMBLESTRIP"s, +"TRANSVERSERUMBLESTRIP"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"START_AND_STOP_EQUIPMENT"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"SUBRACK"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"VESSEL"s, +"OILRETENTIONTRAY"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonConduitTypeEnum"s, +"GROUTING_DUCT"s, +"TRUMPET"s, +"DIABOLO"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTrackElementTypeEnum"s, +"TRACKENDOFALIGNMENT"s, +"BLOCKINGDEVICE"s, +"VEHICLESTOP"s, +"SLEEPER"s, +"HALF_SET_OF_BLADES"s, +"SPEEDREGULATOR"s, +"DERAILER"s, +"FROG"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"CHOPPER"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTransitionCurveType"s, +"BIQUADRATICPARABOLA"s, +"BLOSSCURVE"s, +"CLOTHOIDCURVE"s, +"COSINECURVE"s, +"CUBICPARABOLA"s, +"SINECURVE"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementFixedTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"IfcTransportElementNonFixedTypeEnum"s, +"VEHICLE"s, +"VEHICLETRACKED"s, +"ROLLINGSTOCK"s, +"VEHICLEWHEELED"s, +"VEHICLEAIR"s, +"CARGO"s, +"VEHICLEMARINE"s, +"IfcTransportElementTypeSelect"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationDamperTypeEnum"s, +"BENDING_YIELD"s, +"SHEAR_YIELD"s, +"AXIAL_YIELD"s, +"VISCOUS"s, +"RUBBER"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"BASE"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"RETAININGWALL"s, +"WAVEWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcPresentationStyleAssignment"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcDerivedMeasureValue"s, +"IfcFacilityPartTypeSelect"s, +"IfcImpactProtectionDeviceTypeSelect"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcStyleAssignmentSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearAxisWithInclination"s, +"IfcLinearPlacement"s, +"IfcLinearPlacementWithInclination"s, +"IfcLinearSpanPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenCrossProfileDef"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientationExpression"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcPresentationStyleSelect"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAlignment2DHorizontal"s, +"IfcAlignment2DSegment"s, +"IfcAlignment2DVertical"s, +"IfcAlignment2DVerticalSegment"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcAxisLateralInclination"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcDirection"s, +"IfcDirectrixCurveSweptAreaSolid"s, +"IfcDirectrixDistanceSweptAreaSolid"s, +"IfcDistanceExpression"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcInclinedReferenceSweptAreaSolid"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelAssociatesProfileDef"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelPositions"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSectionedSurface"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcLinearAxisSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAlignment2DCant"s, +"IfcAlignment2DCantSegment"s, +"IfcAlignment2DHorizontalSegment"s, +"IfcAlignment2DVerSegCircularArc"s, +"IfcAlignment2DVerSegLine"s, +"IfcAlignment2DVerSegParabolicArc"s, +"IfcAlignment2DVerSegTransition"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuildingStorey"s, +"IfcBuiltElementType"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCourseType"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCurveSegment2D"s, +"IfcCylindricalSurface"s, +"IfcDeepFoundationType"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFacility"s, +"IfcFacilityPart"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGeotechnicalElement"s, +"IfcGeotechnicalStratum"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcImpactProtectionDevice"s, +"IfcImpactProtectionDeviceType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcKerbType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLineSegment2D"s, +"IfcLiquidTerminalType"s, +"IfcMarineFacility"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMobileTelecommunicationsApplianceType"s, +"IfcMooringDeviceType"s, +"IfcMotorConnectionType"s, +"IfcNavigationElementType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPavementType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlant"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailType"s, +"IfcRailingType"s, +"IfcRailway"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAggregates"s, +"IfcRoad"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcShadingDeviceType"s, +"IfcSign"s, +"IfcSignType"s, +"IfcSignalType"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSolidStratum"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonConduit"s, +"IfcTendonConduitType"s, +"IfcTendonType"s, +"IfcTrackElementType"s, +"IfcTransformerType"s, +"IfcTransitionCurveSegment2D"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationDamper"s, +"IfcVibrationDamperType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidStratum"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWaterStratum"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcInterferenceSelect"s, +"IfcSpatialReferenceSelect"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignment2DCantSegLine"s, +"IfcAlignment2DCantSegTransition"s, +"IfcAlignmentCurve"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBearingType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBridge"s, +"IfcBridgePart"s, +"IfcBuilding"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBuiltElement"s, +"IfcBuiltSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcCaissonFoundationType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCircularArcSegment2D"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcConveyorSegmentType"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCourse"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDeepFoundation"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionBoardType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcEarthworksCut"s, +"IfcEarthworksElement"s, +"IfcEarthworksFill"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricFlowTreatmentDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGeotechnicalAssembly"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcKerb"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcLiquidTerminal"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMobileTelecommunicationsAppliance"s, +"IfcMooringDevice"s, +"IfcMotorConnection"s, +"IfcNavigationElement"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPavement"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRail"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcedSoil"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSignal"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTrackElement"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBearing"s, +"IfcBoiler"s, +"IfcBorehole"s, +"IfcBuildingElementProxy"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcCaissonFoundation"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcConveyorSegment"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionBoard"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricFlowTreatmentDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcGeomodel"s, +"IfcGeoslice"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"Segments"s, +"RailHeadDistance"s, +"StartRadius"s, +"EndRadius"s, +"IsStartRadiusCCW"s, +"IsEndRadiusCCW"s, +"TransitionCurveType"s, +"StartDistAlong"s, +"HorizontalLength"s, +"StartCantLeft"s, +"EndCantLeft"s, +"StartCantRight"s, +"EndCantRight"s, +"CurveGeometry"s, +"TangentialContinuity"s, +"StartTag"s, +"EndTag"s, +"Radius"s, +"IsConvex"s, +"ParabolaConstant"s, +"StartHeight"s, +"StartGradient"s, +"Horizontal"s, +"Vertical"s, +"Tag"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"IsCCW"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Transition"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"StartPoint"s, +"StartDirection"s, +"SegmentLength"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"StartDistance"s, +"EndDistance"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"AlongHorizontal"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"UsageType"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"ModelorDraughting"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"FixedAxisVertical"s, +"Inclinating"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"Mountable"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"PlacementMeasuredAlong"s, +"Distance"s, +"CartesianPosition"s, +"Span"s, +"RelativePlacement"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"PlacementRelTo"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"HorizontalWidths"s, +"Widths"s, +"Slopes"s, +"Tags"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"LateralAxisDirection"s, +"VerticalAxisDirection"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"Flexible"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"Placement"s, +"SizeInX"s, +"SizeInY"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"Styles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"RestartDistance"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"RelatingProfileDef"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatingPositioningElement"s, +"RelatedProducts"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"SpineCurve"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ToCant"s, +"ToAlignmentCurve"s, +"ToHorizontal"s, +"ToVertical"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ToLinearAxis"s, +"PositioningElement"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"UsingCurves"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"Positions"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"PositionedRelativeTo"s, +"ReferencedInStructures"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"ServicesFacilities"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4X3_RC1"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2618,14521 +6479,11506 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4X3_RC1_populate_schema() { - IFC4X3_RC1_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_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"); - IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BELL"); - items.push_back("BREAKGLASSBUTTON"); - items.push_back("LIGHT"); - items.push_back("MANUALPULLBOX"); - items.push_back("NOTDEFINED"); - items.push_back("RAILWAYCROCODILE"); - items.push_back("RAILWAYDETONATOR"); - items.push_back("SIREN"); - items.push_back("USERDEFINED"); - items.push_back("WHISTLE"); - IFC4X3_RC1_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 44, items); - } - IFC4X3_RC1_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 45, 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"); - IFC4X3_RC1_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 46, 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"); - IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 47, items); - } - IFC4X3_RC1_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 48, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ASBUILTAREA"); - items.push_back("ASBUILTLINE"); - items.push_back("ASBUILTPOINT"); - items.push_back("ASSUMEDAREA"); - items.push_back("ASSUMEDLINE"); - items.push_back("ASSUMEDPOINT"); - items.push_back("NON_PHYSICAL_SIGNAL"); - items.push_back("NOTDEFINED"); - items.push_back("SUPERELEVATIONEVENT"); - items.push_back("USERDEFINED"); - items.push_back("WIDTHEVENT"); - IFC4X3_RC1_IfcAnnotationTypeEnum_type = new enumeration_type("IfcAnnotationTypeEnum", 51, items); - } - IFC4X3_RC1_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 61, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 62, 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"); - IFC4X3_RC1_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 63, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC4X3_RC1_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 64, items); - } - { - std::vector items; items.reserve(14); - 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("RAILWAY_COMMUNICATION_TERMINAL"); - items.push_back("RECEIVER"); - items.push_back("SPEAKER"); - items.push_back("SWITCHER"); - items.push_back("TELEPHONE"); - items.push_back("TUNER"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 69, 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"); - IFC4X3_RC1_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 113, 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"); - IFC4X3_RC1_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 116, 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"); - IFC4X3_RC1_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 78, 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"); - IFC4X3_RC1_IfcBearingTypeDisplacementEnum_type = new enumeration_type("IfcBearingTypeDisplacementEnum", 81, 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"); - IFC4X3_RC1_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 82, 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"); - IFC4X3_RC1_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 83, items); - } - IFC4X3_RC1_IfcBinary_type = new type_declaration("IfcBinary", 85, 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"); - IFC4X3_RC1_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 90, items); - } - IFC4X3_RC1_IfcBoolean_type = new type_declaration("IfcBoolean", 91, 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"); - IFC4X3_RC1_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 94, 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"); - IFC4X3_RC1_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 110, 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"); - IFC4X3_RC1_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 111, items); - } - { - std::vector items; items.reserve(7); - items.push_back("APRON"); - items.push_back("ARMOURUNIT"); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("SAFETYCAGE"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 121, 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"); - IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 124, items); - } - { - std::vector items; items.reserve(11); - items.push_back("EROSIONPREVENTION"); - 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"); - IFC4X3_RC1_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 127, items); - } - { - std::vector items; items.reserve(14); - items.push_back("EROSIONPREVENTION"); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("MOORING"); - items.push_back("MOORINGSYSTEM"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("PRESTRESSING"); - items.push_back("REINFORCING"); - items.push_back("SHADING"); - items.push_back("TRACKCIRCUIT"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcBuiltSystemTypeEnum_type = new enumeration_type("IfcBuiltSystemTypeEnum", 131, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 134, 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"); - IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 137, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CABLEBRACKET"); - items.push_back("CABLELADDERSEGMENT"); - items.push_back("CABLETRAYSEGMENT"); - items.push_back("CABLETRUNKINGSEGMENT"); - items.push_back("CATENARYWIRE"); - items.push_back("CONDUITSEGMENT"); - items.push_back("DROPPER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 140, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONNECTOR"); - items.push_back("ENTRY"); - items.push_back("EXIT"); - items.push_back("FANOUT"); - items.push_back("JUNCTION"); - items.push_back("NOTDEFINED"); - items.push_back("TRANSITION"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 143, items); - } - { - std::vector items; items.reserve(12); - items.push_back("BUSBARSEGMENT"); - items.push_back("CABLESEGMENT"); - items.push_back("CONDUCTORSEGMENT"); - items.push_back("CONTACTWIRESEGMENT"); - items.push_back("CORESEGMENT"); - items.push_back("FIBERSEGMENT"); - items.push_back("FIBERTUBE"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALCABLESEGMENT"); - items.push_back("STITCHWIRE"); - items.push_back("USERDEFINED"); - items.push_back("WIREPAIRSEGMENT"); - IFC4X3_RC1_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 146, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CAISSON"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WELL"); - IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 149, items); - } - IFC4X3_RC1_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 150, 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"); - IFC4X3_RC1_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 161, 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"); - IFC4X3_RC1_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 164, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 167, 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"); - IFC4X3_RC1_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 181, 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"); - IFC4X3_RC1_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 190, items); - } - { - std::vector items; items.reserve(23); - items.push_back("ANTENNA"); - items.push_back("AUTOMATON"); - items.push_back("COMPUTER"); - items.push_back("FAX"); - items.push_back("GATEWAY"); - items.push_back("INTELLIGENT_PERIPHERAL"); - items.push_back("IP_NETWORK_EQUIPMENT"); - items.push_back("MODEM"); - items.push_back("NETWORKAPPLIANCE"); - items.push_back("NETWORKBRIDGE"); - items.push_back("NETWORKHUB"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICAL_NETWORK_UNIT"); - items.push_back("PRINTER"); - items.push_back("REPEATER"); - items.push_back("ROUTER"); - items.push_back("SCANNER"); - items.push_back("TELECOMMAND"); - items.push_back("TELEPHONYEXCHANGE"); - items.push_back("TRANSITIONCOMPONENT"); - items.push_back("TRANSPONDER"); - items.push_back("TRANSPORTEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 193, items); - } - IFC4X3_RC1_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 194, 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"); - IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 197, items); - } - IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 202, 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"); - IFC4X3_RC1_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 205, 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"); - IFC4X3_RC1_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 208, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4X3_RC1_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 216, 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"); - IFC4X3_RC1_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 219, 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"); - IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 222, 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"); - IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 225, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 228, items); - } - IFC4X3_RC1_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 232, 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"); - IFC4X3_RC1_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 237, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BELTCONVEYOR"); - items.push_back("BUCKETCONVEYOR"); - items.push_back("CHUTECONVEYOR"); - items.push_back("NOTDEFINED"); - items.push_back("SCREWCONVEYOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type = new enumeration_type("IfcConveyorSegmentTypeEnum", 242, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 245, 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"); - IFC4X3_RC1_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 248, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 253, 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"); - IFC4X3_RC1_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 255, items); - } - IFC4X3_RC1_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 257, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(8); - items.push_back("ARMOUR"); - items.push_back("BALLASTBED"); - items.push_back("CORE"); - items.push_back("FILTER"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENT"); - items.push_back("PROTECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCourseTypeEnum_type = new enumeration_type("IfcCourseTypeEnum", 260, items); - } - { - 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"); - IFC4X3_RC1_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 263, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 266, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 274, items); - } - IFC4X3_RC1_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 275, 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"); - IFC4X3_RC1_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 280, 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"); - IFC4X3_RC1_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 292, 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"); - IFC4X3_RC1_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 293, items); - } - IFC4X3_RC1_IfcDate_type = new type_declaration("IfcDate", 294, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcDateTime_type = new type_declaration("IfcDateTime", 295, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 296, new simple_type(simple_type::integer_type)); - IFC4X3_RC1_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 297, 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"); - IFC4X3_RC1_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 305, items); - } - IFC4X3_RC1_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 306, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 308, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC1_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 310, items); - } - { - std::vector items; items.reserve(19); - items.push_back("ANCHORPLATE"); - items.push_back("BIRDPROTECTION"); - items.push_back("BRACKET"); - items.push_back("CABLEARRANGER"); - items.push_back("ELASTIC_CUSHION"); - items.push_back("EXPANSION_JOINT_DEVICE"); - items.push_back("INSULATOR"); - items.push_back("LOCK"); - items.push_back("NOTDEFINED"); - items.push_back("PANEL_STRENGTHENING"); - items.push_back("RAILBRACE"); - items.push_back("RAILPAD"); - items.push_back("RAIL_LUBRICATION"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT"); - items.push_back("SHOE"); - items.push_back("SLIDINGCHAIR"); - items.push_back("SOUNDABSORPTION"); - items.push_back("TENSIONINGEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 315, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CONSUMERUNIT"); - items.push_back("DISTRIBUTIONBOARD"); - items.push_back("DISTRIBUTIONFRAME"); - items.push_back("MOTORCONTROLCENTRE"); - items.push_back("NOTDEFINED"); - items.push_back("SWITCHBOARD"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcDistributionBoardTypeEnum_type = new enumeration_type("IfcDistributionBoardTypeEnum", 319, 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"); - IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 322, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CABLE"); - items.push_back("CABLECARRIER"); - items.push_back("DUCT"); - items.push_back("NOTDEFINED"); - items.push_back("PIPE"); - items.push_back("USERDEFINED"); - items.push_back("WIRELESS"); - IFC4X3_RC1_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 331, items); - } - { - std::vector items; items.reserve(47); - items.push_back("AIRCONDITIONING"); - items.push_back("AUDIOVISUAL"); - items.push_back("CATENARY_SYSTEM"); - 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("OVERHEAD_CONTACTLINE_SYSTEM"); - items.push_back("POWERGENERATION"); - items.push_back("RAINWATER"); - items.push_back("REFRIGERATION"); - items.push_back("RETURN_CIRCUIT"); - 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"); - IFC4X3_RC1_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 333, 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"); - IFC4X3_RC1_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 334, 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"); - IFC4X3_RC1_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 339, 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"); - IFC4X3_RC1_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 342, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4X3_RC1_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 343, 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"); - IFC4X3_RC1_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 347, 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"); - IFC4X3_RC1_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 348, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BOOM_BARRIER"); - items.push_back("DOOR"); - items.push_back("GATE"); - items.push_back("NOTDEFINED"); - items.push_back("TRAPDOOR"); - items.push_back("TURNSTILE"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 350, 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"); - IFC4X3_RC1_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 351, items); - } - IFC4X3_RC1_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 352, 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"); - IFC4X3_RC1_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 357, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 360, 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"); - IFC4X3_RC1_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 363, items); - } - IFC4X3_RC1_IfcDuration_type = new type_declaration("IfcDuration", 364, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 365, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("BASE_EXCAVATION"); - items.push_back("CUT"); - items.push_back("DREDGING"); - items.push_back("EXCAVATION"); - items.push_back("NOTDEFINED"); - items.push_back("OVEREXCAVATION"); - items.push_back("PAVEMENTMILLING"); - items.push_back("STEPEXCAVATION"); - items.push_back("TOPSOILREMOVAL"); - items.push_back("TRENCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcEarthworksCutTypeEnum_type = new enumeration_type("IfcEarthworksCutTypeEnum", 367, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BACKFILL"); - items.push_back("COUNTERWEIGHT"); - items.push_back("EMBANKMENT"); - items.push_back("NOTDEFINED"); - items.push_back("SLOPEFILL"); - items.push_back("SUBGRADE"); - items.push_back("SUBGRADEBED"); - items.push_back("TRANSITIONSECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcEarthworksFillTypeEnum_type = new enumeration_type("IfcEarthworksFillTypeEnum", 370, items); - } - { - 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"); - IFC4X3_RC1_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 376, items); - } - IFC4X3_RC1_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 377, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 378, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 379, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 380, 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"); - IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 383, items); - } - { - std::vector items; items.reserve(11); - items.push_back("BATTERY"); - items.push_back("CAPACITOR"); - items.push_back("CAPACITORBANK"); - items.push_back("COMPENSATOR"); - items.push_back("HARMONICFILTER"); - items.push_back("INDUCTOR"); - items.push_back("INDUCTORBANK"); - items.push_back("NOTDEFINED"); - items.push_back("RECHARGER"); - items.push_back("UPS"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 386, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELECTRONICFILTER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowTreatmentDeviceTypeEnum", 389, 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"); - IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 392, 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"); - IFC4X3_RC1_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 395, items); - } - IFC4X3_RC1_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 396, 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"); - IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 399, items); - } - IFC4X3_RC1_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 400, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(30); - 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("DILATATIONPANEL"); - items.push_back("ENTRANCEWORKS"); - items.push_back("GIRDER"); - items.push_back("GRID"); - items.push_back("MAST"); - items.push_back("NOTDEFINED"); - items.push_back("PIER"); - items.push_back("PYLON"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SHELTER"); - items.push_back("SIGNALASSEMBLY"); - items.push_back("SLAB_FIELD"); - items.push_back("SUMPBUSTER"); - items.push_back("SUPPORTINGASSEMBLY"); - items.push_back("SUSPENSIONASSEMBLY"); - items.push_back("TRACKPANEL"); - items.push_back("TRACTION_SWITCHING_ASSEMBLY"); - items.push_back("TRAFFIC_CALMING_DEVICE"); - items.push_back("TRUSS"); - items.push_back("TURNOUTPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 405, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4X3_RC1_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 408, items); - } - IFC4X3_RC1_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 415, 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"); - IFC4X3_RC1_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 418, 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"); - IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 421, 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"); - IFC4X3_RC1_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 424, 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"); - IFC4X3_RC1_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 427, 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"); - IFC4X3_RC1_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 429, 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"); - IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 438, items); - } - { - std::vector items; items.reserve(10); - items.push_back("ABOVEGROUND"); - items.push_back("BELOWGROUND"); - items.push_back("JUNCTION"); - items.push_back("LEVELCROSSING"); - items.push_back("NOTDEFINED"); - items.push_back("SEGMENT"); - items.push_back("SUBSTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TERMINAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type = new enumeration_type("IfcFacilityPartCommonTypeEnum", 451, items); - } - { - std::vector items; items.reserve(6); - items.push_back("LATERAL"); - items.push_back("LONGITUDINAL"); - items.push_back("NOTDEFINED"); - items.push_back("REGION"); - items.push_back("USERDEFINED"); - items.push_back("VERTICAL"); - IFC4X3_RC1_IfcFacilityUsageEnum_type = new enumeration_type("IfcFacilityUsageEnum", 453, 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"); - IFC4X3_RC1_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 457, 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"); - IFC4X3_RC1_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 460, 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"); - IFC4X3_RC1_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 470, 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"); - IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 473, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4X3_RC1_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 477, items); - } - { - std::vector items; items.reserve(12); - items.push_back("AMMETER"); - items.push_back("COMBINED"); - 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"); - items.push_back("VOLTMETER_PEAK"); - items.push_back("VOLTMETER_RMS"); - IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 482, 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"); - IFC4X3_RC1_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 485, items); - } - IFC4X3_RC1_IfcFontStyle_type = new type_declaration("IfcFontStyle", 496, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcFontVariant_type = new type_declaration("IfcFontVariant", 497, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcFontWeight_type = new type_declaration("IfcFontWeight", 498, 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"); - IFC4X3_RC1_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 501, items); - } - IFC4X3_RC1_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 502, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 503, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - 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("TECHNICALCABINET"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 508, 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"); - IFC4X3_RC1_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 511, 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"); - IFC4X3_RC1_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 513, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4X3_RC1_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 525, items); - } - IFC4X3_RC1_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 524, 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"); - IFC4X3_RC1_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 530, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("TURNOUTHEATING"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 536, items); - } - IFC4X3_RC1_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 537, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 538, 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"); - IFC4X3_RC1_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 541, items); - } - IFC4X3_RC1_IfcIdentifier_type = new type_declaration("IfcIdentifier", 542, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 543, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("BUMPER"); - items.push_back("CRASHCUSHION"); - items.push_back("DAMPINGSYSTEM"); - items.push_back("FENDER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type("IfcImpactProtectionDeviceTypeEnum", 547, items); - } - IFC4X3_RC1_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 556, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcInteger_type = new type_declaration("IfcInteger", 557, new simple_type(simple_type::integer_type)); - IFC4X3_RC1_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 558, 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"); - IFC4X3_RC1_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 561, 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"); - IFC4X3_RC1_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 563, 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"); - IFC4X3_RC1_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 566, items); - } - IFC4X3_RC1_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 567, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 571, 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"); - IFC4X3_RC1_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 574, items); - } - IFC4X3_RC1_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 577, 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"); - IFC4X3_RC1_IfcKnotType_type = new enumeration_type("IfcKnotType", 578, items); - } - IFC4X3_RC1_IfcLabel_type = new type_declaration("IfcLabel", 579, 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"); - IFC4X3_RC1_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 582, 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"); - IFC4X3_RC1_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 586, items); - } - IFC4X3_RC1_IfcLanguageId_type = new type_declaration("IfcLanguageId", 587, new named_type(IFC4X3_RC1_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4X3_RC1_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 589, items); - } - IFC4X3_RC1_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 590, 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"); - IFC4X3_RC1_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 594, 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"); - IFC4X3_RC1_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 597, 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"); - IFC4X3_RC1_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 600, items); - } - IFC4X3_RC1_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 611, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 612, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 617, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 618, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("HOSEREEL"); - items.push_back("LOADINGARM"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type = new enumeration_type("IfcLiquidTerminalTypeEnum", 623, items); - } - { - 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"); - IFC4X3_RC1_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 624, items); - } - IFC4X3_RC1_IfcLogical_type = new type_declaration("IfcLogical", 626, 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"); - IFC4X3_RC1_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 627, items); - } - IFC4X3_RC1_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 630, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 631, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 632, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 633, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 634, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(21); - items.push_back("BARRIERBEACH"); - items.push_back("BREAKWATER"); - items.push_back("CANAL"); - items.push_back("DRYDOCK"); - items.push_back("EMBANKMENT"); - items.push_back("FLOATINGDOCK"); - items.push_back("HYDROLIFT"); - items.push_back("JETTY"); - items.push_back("LAUNCHRECOVERY"); - items.push_back("MARINEDEFENCE"); - items.push_back("NAVIGATIONALCHANNEL"); - items.push_back("NOTDEFINED"); - items.push_back("PORT"); - items.push_back("QUAY"); - items.push_back("SHIPLIFT"); - items.push_back("SHIPLOCK"); - items.push_back("SHIPYARD"); - items.push_back("SLIPWAY"); - items.push_back("USERDEFINED"); - items.push_back("WATERWAY"); - items.push_back("WATERWAYSHIPLIFT"); - IFC4X3_RC1_IfcMarineFacilityTypeEnum_type = new enumeration_type("IfcMarineFacilityTypeEnum", 639, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ABOVEWATERLINE"); - items.push_back("ANCHORAGE"); - items.push_back("APPROACHCHANNEL"); - items.push_back("BELOWWATERLINE"); - items.push_back("BERTHINGSTRUCTURE"); - items.push_back("CHAMBER"); - items.push_back("CILL_LEVEL"); - items.push_back("COPELEVEL"); - items.push_back("CORE"); - items.push_back("CREST"); - items.push_back("GATEHEAD"); - items.push_back("GUDINGSTRUCTURE"); - items.push_back("HIGHWATERLINE"); - items.push_back("LANDFIELD"); - items.push_back("LEEWARDSIDE"); - items.push_back("LOWWATERLINE"); - items.push_back("MANUFACTURING"); - items.push_back("NAVIGATIONALAREA"); - items.push_back("NOTDEFINED"); - items.push_back("PROTECTION"); - items.push_back("SHIPTRANSFER"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESERVICING"); - items.push_back("WATERFIELD"); - items.push_back("WEATHERSIDE"); - IFC4X3_RC1_IfcMarinePartTypeEnum_type = new enumeration_type("IfcMarinePartTypeEnum", 640, items); - } - IFC4X3_RC1_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 641, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 642, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 643, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 644, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(17); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - items.push_back("CHAIN"); - items.push_back("COUPLER"); - items.push_back("DOWEL"); - items.push_back("NAIL"); - items.push_back("NAILPLATE"); - items.push_back("NOTDEFINED"); - items.push_back("RAILFASTENING"); - items.push_back("RAILJOINT"); - items.push_back("RIVET"); - items.push_back("ROPE"); - items.push_back("SCREW"); - items.push_back("SHEARCONNECTOR"); - items.push_back("STAPLE"); - items.push_back("STUDSHEARCONNECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 669, 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"); - IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 672, items); - } - { - std::vector items; items.reserve(21); - 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("STRUCTURALCABLE"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("SUSPENDER"); - items.push_back("SUSPENSION_CABLE"); - items.push_back("TIEBAR"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 676, items); - } - { - std::vector items; items.reserve(9); - items.push_back("ACCESSPOINT"); - items.push_back("BASEBANDUNIT"); - items.push_back("BASETRANSCEIVERSTATION"); - items.push_back("E_UTRAN_NODE_B"); - items.push_back("MASTERUNIT"); - items.push_back("NOTDEFINED"); - items.push_back("REMOTEUNIT"); - items.push_back("REMOTE_RADIO_UNIT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type("IfcMobileTelecommunicationsApplianceTypeEnum", 682, items); - } - IFC4X3_RC1_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 683, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 684, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 685, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 686, items); - } - IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 687, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type); - IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 688, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 689, items); - } - IFC4X3_RC1_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 690, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 691, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 692, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 693, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 695, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(7); - items.push_back("BOLLARD"); - items.push_back("LINETENSIONER"); - items.push_back("MAGNETICDEVICE"); - items.push_back("MOORINGHOOKS"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VACUUMDEVICE"); - IFC4X3_RC1_IfcMooringDeviceTypeEnum_type = new enumeration_type("IfcMooringDeviceTypeEnum", 698, items); - } - { - 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"); - IFC4X3_RC1_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 701, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BEACON"); - items.push_back("BUOY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcNavigationElementTypeEnum_type = new enumeration_type("IfcNavigationElementTypeEnum", 705, items); - } - IFC4X3_RC1_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 706, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)); - { - std::vector items; items.reserve(1); - items.push_back("NULL"); - IFC4X3_RC1_IfcNullStyle_type = new enumeration_type("IfcNullStyle", 708, items); - } - IFC4X3_RC1_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 709, 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"); - IFC4X3_RC1_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 716, 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"); - IFC4X3_RC1_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 713, 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"); - IFC4X3_RC1_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 718, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 725, 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"); - IFC4X3_RC1_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 735, items); - } - IFC4X3_RC1_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 751, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcParameterValue_type = new type_declaration("IfcParameterValue", 738, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 744, 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"); - IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 745, 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"); - IFC4X3_RC1_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 748, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 753, 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"); - IFC4X3_RC1_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 757, 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"); - IFC4X3_RC1_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 759, 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"); - IFC4X3_RC1_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 762, 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"); - IFC4X3_RC1_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 765, items); - } - IFC4X3_RC1_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 770, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 772, 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"); - IFC4X3_RC1_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 777, items); - } - IFC4X3_RC1_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 788, new named_type(IFC4X3_RC1_IfcInteger_type)); - IFC4X3_RC1_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 789, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)); - IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 790, new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type)); - IFC4X3_RC1_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 793, 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"); - IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 800, items); - } - IFC4X3_RC1_IfcPresentableText_type = new type_declaration("IfcPresentableText", 801, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 808, 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"); - IFC4X3_RC1_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 811, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4X3_RC1_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 821, 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"); - IFC4X3_RC1_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 829, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 824, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BLISTER"); - items.push_back("DEVIATOR"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 826, 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"); - IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 844, 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"); - IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 852, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ANTI_ARCING_DEVICE"); - 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("SPARKGAP"); - items.push_back("USERDEFINED"); - items.push_back("VARISTOR"); - items.push_back("VOLTAGELIMITER"); - IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 854, 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"); - IFC4X3_RC1_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 858, items); - } - IFC4X3_RC1_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 866, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(8); - items.push_back("BLADE"); - items.push_back("CHECKRAIL"); - items.push_back("GUARDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("RACKRAIL"); - items.push_back("RAIL"); - items.push_back("STOCKRAIL"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcRailTypeEnum_type = new enumeration_type("IfcRailTypeEnum", 872, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BALUSTRADE"); - items.push_back("FENCE"); - items.push_back("GUARDRAIL"); - items.push_back("HANDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 870, items); - } - { - std::vector items; items.reserve(10); - items.push_back("DILATATIONSUPERSTRUCTURE"); - items.push_back("LINESIDESTRUCTURE"); - items.push_back("LINESIDESTRUCTUREPART"); - items.push_back("NOTDEFINED"); - items.push_back("PLAINTRACKSUPESTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TRACKSTRUCTURE"); - items.push_back("TRACKSTRUCTUREPART"); - items.push_back("TURNOUTSUPERSTRUCTURE"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcRailwayPartTypeEnum_type = new enumeration_type("IfcRailwayPartTypeEnum", 874, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 878, 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"); - IFC4X3_RC1_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 880, items); - } - IFC4X3_RC1_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 881, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcReal_type = new type_declaration("IfcReal", 884, 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"); - IFC4X3_RC1_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 890, items); - } - { - std::vector items; items.reserve(6); - items.push_back("KILOPOINT"); - items.push_back("MILEPOINT"); - items.push_back("NOTDEFINED"); - items.push_back("REFERENCEMARKER"); - items.push_back("STATION"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 893, 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"); - IFC4X3_RC1_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 894, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DYNAMICALLYCOMPACTED"); - items.push_back("GROUTED"); - items.push_back("NOTDEFINED"); - items.push_back("REPLACED"); - items.push_back("ROLLERCOMPACTED"); - items.push_back("SURCHARGEPRELOADED"); - items.push_back("USERDEFINED"); - items.push_back("VERTICALLYDRAINED"); - IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type = new enumeration_type("IfcReinforcedSoilTypeEnum", 897, 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"); - IFC4X3_RC1_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 901, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 902, 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"); - IFC4X3_RC1_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 904, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 909, items); - } - { - std::vector items; items.reserve(26); - items.push_back("BICYCLECROSSING"); - items.push_back("BUS_STOP"); - items.push_back("CARRIAGEWAY"); - items.push_back("CENTRALISLAND"); - items.push_back("CENTRALRESERVE"); - items.push_back("HARDSHOULDER"); - items.push_back("INTERSECTION"); - items.push_back("LAYBY"); - items.push_back("NOTDEFINED"); - items.push_back("PARKINGBAY"); - items.push_back("PASSINGBAY"); - items.push_back("PEDESTRIAN_CROSSING"); - items.push_back("RAILWAYCROSSING"); - items.push_back("REFUGEISLAND"); - items.push_back("ROADSEGMENT"); - items.push_back("ROADSIDE"); - items.push_back("ROADSIDEPART"); - items.push_back("ROADWAYPLATEAU"); - items.push_back("ROUNDABOUT"); - items.push_back("SHOULDER"); - items.push_back("SIDEWALK"); - items.push_back("SOFTSHOULDER"); - items.push_back("TOLLPLAZA"); - items.push_back("TRAFFICISLAND"); - items.push_back("TRAFFICLANE"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcRoadPartTypeEnum_type = new enumeration_type("IfcRoadPartTypeEnum", 977, 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"); - IFC4X3_RC1_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 978, 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"); - IFC4X3_RC1_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 981, items); - } - IFC4X3_RC1_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 983, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 984, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 985, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcRotationalStiffnessMeasure_type); - IFC4X3_RC1_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 986, 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"); - IFC4X3_RC1_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 1026, 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"); - IFC4X3_RC1_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 1029, 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"); - IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 990, items); - } - IFC4X3_RC1_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 998, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4X3_RC1_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 1001, items); - } - IFC4X3_RC1_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 993, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(34); - items.push_back("CO2SENSOR"); - items.push_back("CONDUCTANCESENSOR"); - items.push_back("CONTACTSENSOR"); - items.push_back("COSENSOR"); - items.push_back("EARTHQUAKESENSOR"); - items.push_back("FIRESENSOR"); - items.push_back("FLOWSENSOR"); - items.push_back("FOREIGNOBJECTDETECTIONSENSOR"); - 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("OBSTACLESENSOR"); - items.push_back("PHSENSOR"); - items.push_back("PRESSURESENSOR"); - items.push_back("RADIATIONSENSOR"); - items.push_back("RADIOACTIVITYSENSOR"); - items.push_back("RAINSENSOR"); - items.push_back("SMOKESENSOR"); - items.push_back("SNOWDEPTHSENSOR"); - items.push_back("SOUNDSENSOR"); - items.push_back("TEMPERATURESENSOR"); - items.push_back("TRAINSENSOR"); - items.push_back("TURNOUTCLOSURESENSOR"); - items.push_back("USERDEFINED"); - items.push_back("WHEELSENSOR"); - items.push_back("WINDSENSOR"); - IFC4X3_RC1_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 1005, 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"); - IFC4X3_RC1_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 1006, 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"); - IFC4X3_RC1_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 1009, items); - } - IFC4X3_RC1_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 1013, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("MARKER"); - items.push_back("MIRROR"); - items.push_back("NOTDEFINED"); - items.push_back("PICTORAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcSignTypeEnum_type = new enumeration_type("IfcSignTypeEnum", 1021, items); - } - { - std::vector items; items.reserve(5); - items.push_back("AUDIO"); - items.push_back("MIXED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VISUAL"); - IFC4X3_RC1_IfcSignalTypeEnum_type = new enumeration_type("IfcSignalTypeEnum", 1019, items); - } - { - 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"); - IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 1024, items); - } - { - std::vector items; items.reserve(11); - 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("TRACKSLAB"); - items.push_back("USERDEFINED"); - items.push_back("WEARING"); - IFC4X3_RC1_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 1035, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 1039, items); - } - IFC4X3_RC1_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 1040, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 1044, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 1045, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 1046, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 1047, 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"); - IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 1052, 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"); - IFC4X3_RC1_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 1054, items); - } - { - std::vector items; items.reserve(11); - items.push_back("CONSTRUCTION"); - items.push_back("FIRESAFETY"); - items.push_back("LIGHTING"); - items.push_back("NOTDEFINED"); - items.push_back("OCCUPANCY"); - items.push_back("RESERVATION"); - items.push_back("SECURITY"); - items.push_back("THERMAL"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - items.push_back("VENTILATION"); - IFC4X3_RC1_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 1062, items); - } - IFC4X3_RC1_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 1063, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 1064, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 1066, 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"); - IFC4X3_RC1_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 1071, 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"); - IFC4X3_RC1_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 1075, items); - } - { - std::vector items; items.reserve(17); - 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("LADDER"); - 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"); - IFC4X3_RC1_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 1077, 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"); - IFC4X3_RC1_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 1078, 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"); - IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 1086, 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"); - IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1089, 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"); - IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1115, 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"); - IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1118, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4X3_RC1_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1127, items); - } - { - std::vector items; items.reserve(13); - items.push_back("DEFECT"); - items.push_back("HATCHMARKING"); - items.push_back("LINEMARKING"); - items.push_back("MARK"); - items.push_back("NONSKIDSURFACING"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENTSURFACEMARKING"); - items.push_back("RUMBLESTRIP"); - items.push_back("SYMBOLMARKING"); - items.push_back("TAG"); - items.push_back("TRANSVERSERUMBLESTRIP"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1133, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC1_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1138, items); - } - { - std::vector items; items.reserve(13); - 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("RELAY"); - items.push_back("SELECTORSWITCH"); - items.push_back("STARTER"); - items.push_back("START_AND_STOP_EQUIPMENT"); - items.push_back("SWITCHDISCONNECTOR"); - items.push_back("TOGGLESWITCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1153, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("SUBRACK"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1157, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BASIN"); - items.push_back("BREAKPRESSURE"); - items.push_back("EXPANSION"); - items.push_back("FEEDANDEXPANSION"); - items.push_back("NOTDEFINED"); - items.push_back("OILRETENTIONTRAY"); - items.push_back("PRESSUREVESSEL"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VESSEL"); - IFC4X3_RC1_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1163, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4X3_RC1_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1165, 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"); - IFC4X3_RC1_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1169, items); - } - IFC4X3_RC1_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1171, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1172, 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"); - IFC4X3_RC1_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1176, 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"); - IFC4X3_RC1_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1179, 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"); - IFC4X3_RC1_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1181, items); - } - IFC4X3_RC1_IfcText_type = new type_declaration("IfcText", 1184, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1185, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1186, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1187, 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"); - IFC4X3_RC1_IfcTextPath_type = new enumeration_type("IfcTextPath", 1191, items); - } - IFC4X3_RC1_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1196, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1202, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1203, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1204, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1205, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1206, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1207, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcTime_type = new type_declaration("IfcTime", 1208, new simple_type(simple_type::string_type)); - IFC4X3_RC1_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1209, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcDuration_type); - items.push_back(IFC4X3_RC1_IfcRatioMeasure_type); - IFC4X3_RC1_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1210, 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"); - IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1213, items); - } - IFC4X3_RC1_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1215, new simple_type(simple_type::integer_type)); - IFC4X3_RC1_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1219, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - items.push_back("BLOCKINGDEVICE"); - items.push_back("DERAILER"); - items.push_back("FROG"); - items.push_back("HALF_SET_OF_BLADES"); - items.push_back("NOTDEFINED"); - items.push_back("SLEEPER"); - items.push_back("SPEEDREGULATOR"); - items.push_back("TRACKENDOFALIGNMENT"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESTOP"); - IFC4X3_RC1_IfcTrackElementTypeEnum_type = new enumeration_type("IfcTrackElementTypeEnum", 1222, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CHOPPER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC1_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1225, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4X3_RC1_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1226, 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"); - IFC4X3_RC1_IfcTransitionCurveType_type = new enumeration_type("IfcTransitionCurveType", 1228, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcLinearStiffnessMeasure_type); - IFC4X3_RC1_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1229, 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"); - IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type = new enumeration_type("IfcTransportElementFixedTypeEnum", 1231, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CARGO"); - items.push_back("NOTDEFINED"); - items.push_back("ROLLINGSTOCK"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLE"); - items.push_back("VEHICLEAIR"); - items.push_back("VEHICLEMARINE"); - items.push_back("VEHICLETRACKED"); - items.push_back("VEHICLEWHEELED"); - IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type("IfcTransportElementNonFixedTypeEnum", 1232, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type); - IFC4X3_RC1_IfcTransportElementTypeSelect_type = new select_type("IfcTransportElementTypeSelect", 1234, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4X3_RC1_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1239, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC1_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1244, items); - } - IFC4X3_RC1_IfcURIReference_type = new type_declaration("IfcURIReference", 1258, 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"); - IFC4X3_RC1_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1257, items); - } - { - std::vector items; items.reserve(11); - items.push_back("ALARMPANEL"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1252, 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"); - IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1255, 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"); - IFC4X3_RC1_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1263, items); - } - IFC4X3_RC1_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1264, 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"); - IFC4X3_RC1_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1272, 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"); - IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1275, 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"); - IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1279, items); - } - IFC4X3_RC1_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1281, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1282, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(13); - 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"); - items.push_back("WAVEWALL"); - IFC4X3_RC1_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1287, items); - } - IFC4X3_RC1_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1288, new simple_type(simple_type::real_type)); - IFC4X3_RC1_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1289, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcWarpingMomentMeasure_type); - IFC4X3_RC1_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1290, 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"); - IFC4X3_RC1_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1293, 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"); - IFC4X3_RC1_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1297, 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"); - IFC4X3_RC1_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1298, 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"); - IFC4X3_RC1_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1302, 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"); - IFC4X3_RC1_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1303, 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"); - IFC4X3_RC1_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1305, 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"); - IFC4X3_RC1_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1306, 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"); - IFC4X3_RC1_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1308, 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"); - IFC4X3_RC1_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1311, 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"); - IFC4X3_RC1_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1313, items); - } - IFC4X3_RC1_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4X3_RC1_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4X3_RC1_IfcApplication_type = new entity("IfcApplication", false, 52, 0); - IFC4X3_RC1_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 53, 0); - IFC4X3_RC1_IfcApproval_type = new entity("IfcApproval", false, 55, 0); - IFC4X3_RC1_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 97, 0); - IFC4X3_RC1_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 99, IFC4X3_RC1_IfcBoundaryCondition_type); - IFC4X3_RC1_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 100, IFC4X3_RC1_IfcBoundaryCondition_type); - IFC4X3_RC1_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 101, IFC4X3_RC1_IfcBoundaryCondition_type); - IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 102, IFC4X3_RC1_IfcBoundaryNodeCondition_type); - IFC4X3_RC1_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 212, 0); - IFC4X3_RC1_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 214, IFC4X3_RC1_IfcConnectionGeometry_type); - IFC4X3_RC1_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 215, IFC4X3_RC1_IfcConnectionGeometry_type); - IFC4X3_RC1_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 217, IFC4X3_RC1_IfcConnectionGeometry_type); - IFC4X3_RC1_IfcConstraint_type = new entity("IfcConstraint", true, 218, 0); - IFC4X3_RC1_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 249, 0); - IFC4X3_RC1_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 250, 0); - IFC4X3_RC1_IfcCostValue_type = new entity("IfcCostValue", false, 256, IFC4X3_RC1_IfcAppliedValue_type); - IFC4X3_RC1_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 303, 0); - IFC4X3_RC1_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 304, 0); - IFC4X3_RC1_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 307, 0); - IFC4X3_RC1_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 431, 0); - IFC4X3_RC1_IfcExternalReference_type = new entity("IfcExternalReference", true, 435, 0); - IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 432, IFC4X3_RC1_IfcExternalReference_type); - IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 433, IFC4X3_RC1_IfcExternalReference_type); - IFC4X3_RC1_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 434, IFC4X3_RC1_IfcExternalReference_type); - IFC4X3_RC1_IfcGridAxis_type = new entity("IfcGridAxis", false, 527, 0); - IFC4X3_RC1_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 569, 0); - IFC4X3_RC1_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 591, IFC4X3_RC1_IfcExternalInformation_type); - IFC4X3_RC1_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 592, IFC4X3_RC1_IfcExternalReference_type); - IFC4X3_RC1_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 595, 0); - IFC4X3_RC1_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 601, 0); - IFC4X3_RC1_IfcMapConversion_type = new entity("IfcMapConversion", false, 636, IFC4X3_RC1_IfcCoordinateOperation_type); - IFC4X3_RC1_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 646, 0); - IFC4X3_RC1_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 649, 0); - IFC4X3_RC1_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 651, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 652, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 654, IFC4X3_RC1_IfcMaterialLayer_type); - IFC4X3_RC1_IfcMaterialList_type = new entity("IfcMaterialList", false, 655, 0); - IFC4X3_RC1_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 656, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 657, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 660, IFC4X3_RC1_IfcMaterialProfile_type); - IFC4X3_RC1_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 664, 0); - IFC4X3_RC1_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 666, 0); - IFC4X3_RC1_IfcMetric_type = new entity("IfcMetric", false, 677, IFC4X3_RC1_IfcConstraint_type); - IFC4X3_RC1_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 694, 0); - IFC4X3_RC1_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 702, 0); - IFC4X3_RC1_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 714, 0); - IFC4X3_RC1_IfcObjective_type = new entity("IfcObjective", false, 712, IFC4X3_RC1_IfcConstraint_type); - IFC4X3_RC1_IfcOrganization_type = new entity("IfcOrganization", false, 728, 0); - IFC4X3_RC1_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 736, 0); - IFC4X3_RC1_IfcPerson_type = new entity("IfcPerson", false, 749, 0); - IFC4X3_RC1_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 750, 0); - IFC4X3_RC1_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 754, 0); - IFC4X3_RC1_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 755, IFC4X3_RC1_IfcPhysicalQuantity_type); - IFC4X3_RC1_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 792, IFC4X3_RC1_IfcAddress_type); - IFC4X3_RC1_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 802, 0); - IFC4X3_RC1_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 803, 0); - IFC4X3_RC1_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 804, IFC4X3_RC1_IfcPresentationLayerAssignment_type); - IFC4X3_RC1_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 805, 0); - IFC4X3_RC1_IfcPresentationStyleAssignment_type = new entity("IfcPresentationStyleAssignment", false, 806, 0); - IFC4X3_RC1_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 816, 0); - IFC4X3_RC1_IfcProfileDef_type = new entity("IfcProfileDef", false, 819, 0); - IFC4X3_RC1_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 823, IFC4X3_RC1_IfcCoordinateReferenceSystem_type); - IFC4X3_RC1_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 831, 0); - IFC4X3_RC1_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 836, IFC4X3_RC1_IfcPropertyAbstraction_type); - IFC4X3_RC1_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 859, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 860, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 861, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 863, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 864, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 865, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 889, 0); - IFC4X3_RC1_IfcReference_type = new entity("IfcReference", false, 891, 0); - IFC4X3_RC1_IfcRepresentation_type = new entity("IfcRepresentation", true, 961, 0); - IFC4X3_RC1_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 962, 0); - IFC4X3_RC1_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 963, 0); - IFC4X3_RC1_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 964, 0); - IFC4X3_RC1_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 968, 0); - IFC4X3_RC1_IfcRoot_type = new entity("IfcRoot", true, 982, 0); - IFC4X3_RC1_IfcSIUnit_type = new entity("IfcSIUnit", false, 1028, IFC4X3_RC1_IfcNamedUnit_type); - IFC4X3_RC1_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 991, 0); - IFC4X3_RC1_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 1010, 0); - IFC4X3_RC1_IfcShapeModel_type = new entity("IfcShapeModel", true, 1011, IFC4X3_RC1_IfcRepresentation_type); - IFC4X3_RC1_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 1012, IFC4X3_RC1_IfcShapeModel_type); - IFC4X3_RC1_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 1084, 0); - IFC4X3_RC1_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1094, 0); - IFC4X3_RC1_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1096, IFC4X3_RC1_IfcStructuralLoad_type); - IFC4X3_RC1_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1099, IFC4X3_RC1_IfcStructuralLoad_type); - IFC4X3_RC1_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1105, IFC4X3_RC1_IfcStructuralLoadOrResult_type); - IFC4X3_RC1_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1106, IFC4X3_RC1_IfcStructuralLoadStatic_type); - IFC4X3_RC1_IfcStyleModel_type = new entity("IfcStyleModel", true, 1124, IFC4X3_RC1_IfcRepresentation_type); - IFC4X3_RC1_IfcStyledItem_type = new entity("IfcStyledItem", false, 1122, IFC4X3_RC1_IfcRepresentationItem_type); - IFC4X3_RC1_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1123, IFC4X3_RC1_IfcStyleModel_type); - IFC4X3_RC1_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1137, IFC4X3_RC1_IfcStructuralLoadOrResult_type); - IFC4X3_RC1_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1139, IFC4X3_RC1_IfcPresentationStyle_type); - IFC4X3_RC1_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1141, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1142, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1144, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1145, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1146, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcTable_type = new entity("IfcTable", false, 1158, 0); - IFC4X3_RC1_IfcTableColumn_type = new entity("IfcTableColumn", false, 1159, 0); - IFC4X3_RC1_IfcTableRow_type = new entity("IfcTableRow", false, 1160, 0); - IFC4X3_RC1_IfcTaskTime_type = new entity("IfcTaskTime", false, 1166, IFC4X3_RC1_IfcSchedulingTime_type); - IFC4X3_RC1_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1167, IFC4X3_RC1_IfcTaskTime_type); - IFC4X3_RC1_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1170, IFC4X3_RC1_IfcAddress_type); - IFC4X3_RC1_IfcTextStyle_type = new entity("IfcTextStyle", false, 1192, IFC4X3_RC1_IfcPresentationStyle_type); - IFC4X3_RC1_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1194, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1195, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1197, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1198, IFC4X3_RC1_IfcTextureCoordinate_type); - IFC4X3_RC1_IfcTextureMap_type = new entity("IfcTextureMap", false, 1199, IFC4X3_RC1_IfcTextureCoordinate_type); - IFC4X3_RC1_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1200, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1201, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1211, 0); - IFC4X3_RC1_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1212, 0); - IFC4X3_RC1_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1214, 0); - IFC4X3_RC1_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1216, IFC4X3_RC1_IfcRepresentationItem_type); - IFC4X3_RC1_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1217, IFC4X3_RC1_IfcShapeModel_type); - IFC4X3_RC1_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1256, 0); - IFC4X3_RC1_IfcVertex_type = new entity("IfcVertex", false, 1267, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1269, IFC4X3_RC1_IfcVertex_type); - IFC4X3_RC1_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1277, 0); - IFC4X3_RC1_IfcWorkTime_type = new entity("IfcWorkTime", false, 1314, IFC4X3_RC1_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcOrganization_type); - items.push_back(IFC4X3_RC1_IfcPerson_type); - items.push_back(IFC4X3_RC1_IfcPersonAndOrganization_type); - IFC4X3_RC1_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4X3_RC1_IfcArcIndex_type = new type_declaration("IfcArcIndex", 60, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcPlaneAngleMeasure_type); - IFC4X3_RC1_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 84, items); - } - IFC4X3_RC1_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 106, new named_type(IFC4X3_RC1_IfcLabel_type)); - { - std::vector items; items.reserve(71); - items.push_back(IFC4X3_RC1_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4X3_RC1_IfcAccelerationMeasure_type); - items.push_back(IFC4X3_RC1_IfcAngularVelocityMeasure_type); - items.push_back(IFC4X3_RC1_IfcAreaDensityMeasure_type); - items.push_back(IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC1_IfcCurvatureMeasure_type); - items.push_back(IFC4X3_RC1_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4X3_RC1_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4X3_RC1_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcElectricChargeMeasure_type); - items.push_back(IFC4X3_RC1_IfcElectricConductanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcElectricResistanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcElectricVoltageMeasure_type); - items.push_back(IFC4X3_RC1_IfcEnergyMeasure_type); - items.push_back(IFC4X3_RC1_IfcForceMeasure_type); - items.push_back(IFC4X3_RC1_IfcFrequencyMeasure_type); - items.push_back(IFC4X3_RC1_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4X3_RC1_IfcHeatingValueMeasure_type); - items.push_back(IFC4X3_RC1_IfcIlluminanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcInductanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4X3_RC1_IfcIonConcentrationMeasure_type); - items.push_back(IFC4X3_RC1_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4X3_RC1_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4X3_RC1_IfcLinearForceMeasure_type); - items.push_back(IFC4X3_RC1_IfcLinearMomentMeasure_type); - items.push_back(IFC4X3_RC1_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4X3_RC1_IfcLinearVelocityMeasure_type); - items.push_back(IFC4X3_RC1_IfcLuminousFluxMeasure_type); - items.push_back(IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4X3_RC1_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4X3_RC1_IfcMagneticFluxMeasure_type); - items.push_back(IFC4X3_RC1_IfcMassDensityMeasure_type); - items.push_back(IFC4X3_RC1_IfcMassFlowRateMeasure_type); - items.push_back(IFC4X3_RC1_IfcMassPerLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC1_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4X3_RC1_IfcMolecularWeightMeasure_type); - items.push_back(IFC4X3_RC1_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4X3_RC1_IfcMonetaryMeasure_type); - items.push_back(IFC4X3_RC1_IfcPHMeasure_type); - items.push_back(IFC4X3_RC1_IfcPlanarForceMeasure_type); - items.push_back(IFC4X3_RC1_IfcPowerMeasure_type); - items.push_back(IFC4X3_RC1_IfcPressureMeasure_type); - items.push_back(IFC4X3_RC1_IfcRadioActivityMeasure_type); - items.push_back(IFC4X3_RC1_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4X3_RC1_IfcRotationalMassMeasure_type); - items.push_back(IFC4X3_RC1_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4X3_RC1_IfcSectionModulusMeasure_type); - items.push_back(IFC4X3_RC1_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4X3_RC1_IfcShearModulusMeasure_type); - items.push_back(IFC4X3_RC1_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4X3_RC1_IfcSoundPowerMeasure_type); - items.push_back(IFC4X3_RC1_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4X3_RC1_IfcSoundPressureMeasure_type); - items.push_back(IFC4X3_RC1_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4X3_RC1_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4X3_RC1_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4X3_RC1_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcThermalConductivityMeasure_type); - items.push_back(IFC4X3_RC1_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4X3_RC1_IfcThermalResistanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcTorqueMeasure_type); - items.push_back(IFC4X3_RC1_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4X3_RC1_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4X3_RC1_IfcWarpingConstantMeasure_type); - items.push_back(IFC4X3_RC1_IfcWarpingMomentMeasure_type); - IFC4X3_RC1_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 301, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC1_IfcBridgePartTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcMarinePartTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcRailwayPartTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcRoadPartTypeEnum_type); - IFC4X3_RC1_IfcFacilityPartTypeSelect_type = new select_type("IfcFacilityPartTypeSelect", 452, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcVibrationDamperTypeEnum_type); - items.push_back(IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type); - IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type = new select_type("IfcImpactProtectionDeviceTypeSelect", 548, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcRepresentation_type); - items.push_back(IFC4X3_RC1_IfcRepresentationItem_type); - IFC4X3_RC1_IfcLayeredItem_type = new select_type("IfcLayeredItem", 588, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcLibraryInformation_type); - items.push_back(IFC4X3_RC1_IfcLibraryReference_type); - IFC4X3_RC1_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 593, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcExternalReference_type); - items.push_back(IFC4X3_RC1_IfcLightIntensityDistribution_type); - IFC4X3_RC1_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 596, items); - } - IFC4X3_RC1_IfcLineIndex_type = new type_declaration("IfcLineIndex", 619, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC1_IfcMaterialList_type); - items.push_back(IFC4X3_RC1_IfcMaterialUsageDefinition_type); - IFC4X3_RC1_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 663, items); - } - IFC4X3_RC1_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 707, new named_type(IFC4X3_RC1_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4X3_RC1_IfcAddress_type); - items.push_back(IFC4X3_RC1_IfcAppliedValue_type); - items.push_back(IFC4X3_RC1_IfcExternalReference_type); - items.push_back(IFC4X3_RC1_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC1_IfcOrganization_type); - items.push_back(IFC4X3_RC1_IfcPerson_type); - items.push_back(IFC4X3_RC1_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC1_IfcTable_type); - items.push_back(IFC4X3_RC1_IfcTimeSeries_type); - IFC4X3_RC1_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 715, items); - } - IFC4X3_RC1_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 791, new named_type(IFC4X3_RC1_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcArcIndex_type); - items.push_back(IFC4X3_RC1_IfcLineIndex_type); - IFC4X3_RC1_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 1002, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4X3_RC1_IfcBinary_type); - items.push_back(IFC4X3_RC1_IfcBoolean_type); - items.push_back(IFC4X3_RC1_IfcDate_type); - items.push_back(IFC4X3_RC1_IfcDateTime_type); - items.push_back(IFC4X3_RC1_IfcDuration_type); - items.push_back(IFC4X3_RC1_IfcIdentifier_type); - items.push_back(IFC4X3_RC1_IfcInteger_type); - items.push_back(IFC4X3_RC1_IfcLabel_type); - items.push_back(IFC4X3_RC1_IfcLogical_type); - items.push_back(IFC4X3_RC1_IfcPositiveInteger_type); - items.push_back(IFC4X3_RC1_IfcReal_type); - items.push_back(IFC4X3_RC1_IfcText_type); - items.push_back(IFC4X3_RC1_IfcTime_type); - items.push_back(IFC4X3_RC1_IfcTimeStamp_type); - IFC4X3_RC1_IfcSimpleValue_type = new select_type("IfcSimpleValue", 1025, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC1_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC1_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC1_IfcRatioMeasure_type); - IFC4X3_RC1_IfcSizeSelect_type = new select_type("IfcSizeSelect", 1030, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcSpecularExponent_type); - items.push_back(IFC4X3_RC1_IfcSpecularRoughness_type); - IFC4X3_RC1_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 1065, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcPresentationStyle_type); - items.push_back(IFC4X3_RC1_IfcPresentationStyleAssignment_type); - IFC4X3_RC1_IfcStyleAssignmentSelect_type = new select_type("IfcStyleAssignmentSelect", 1121, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4X3_RC1_IfcSurfaceStyleLighting_type); - items.push_back(IFC4X3_RC1_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4X3_RC1_IfcSurfaceStyleShading_type); - items.push_back(IFC4X3_RC1_IfcSurfaceStyleWithTextures_type); - IFC4X3_RC1_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1140, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcDerivedUnit_type); - items.push_back(IFC4X3_RC1_IfcMonetaryUnit_type); - items.push_back(IFC4X3_RC1_IfcNamedUnit_type); - IFC4X3_RC1_IfcUnit_type = new select_type("IfcUnit", 1249, items); - } - IFC4X3_RC1_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 56, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 57, IFC4X3_RC1_IfcProfileDef_type); - IFC4X3_RC1_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 58, IFC4X3_RC1_IfcProfileDef_type); - IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 59, IFC4X3_RC1_IfcArbitraryClosedProfileDef_type); - IFC4X3_RC1_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 86, IFC4X3_RC1_IfcSurfaceTexture_type); - IFC4X3_RC1_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 160, IFC4X3_RC1_IfcArbitraryOpenProfileDef_type); - IFC4X3_RC1_IfcClassification_type = new entity("IfcClassification", false, 174, IFC4X3_RC1_IfcExternalInformation_type); - IFC4X3_RC1_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 175, IFC4X3_RC1_IfcExternalReference_type); - IFC4X3_RC1_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 185, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 186, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 201, IFC4X3_RC1_IfcProfileDef_type); - IFC4X3_RC1_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 210, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 211, IFC4X3_RC1_IfcConnectionGeometry_type); - IFC4X3_RC1_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 213, IFC4X3_RC1_IfcConnectionPointGeometry_type); - IFC4X3_RC1_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 233, IFC4X3_RC1_IfcNamedUnit_type); - IFC4X3_RC1_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 238, IFC4X3_RC1_IfcNamedUnit_type); - IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 239, IFC4X3_RC1_IfcConversionBasedUnit_type); - IFC4X3_RC1_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 271, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 284, IFC4X3_RC1_IfcPresentationStyle_type); - IFC4X3_RC1_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 285, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 286, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 287, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 302, IFC4X3_RC1_IfcProfileDef_type); - IFC4X3_RC1_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 335, IFC4X3_RC1_IfcExternalInformation_type); - IFC4X3_RC1_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 336, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 337, IFC4X3_RC1_IfcExternalReference_type); - IFC4X3_RC1_IfcEdge_type = new entity("IfcEdge", false, 371, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 372, IFC4X3_RC1_IfcEdge_type); - IFC4X3_RC1_IfcEventTime_type = new entity("IfcEventTime", false, 426, IFC4X3_RC1_IfcSchedulingTime_type); - IFC4X3_RC1_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 430, IFC4X3_RC1_IfcPropertyAbstraction_type); - IFC4X3_RC1_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 436, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcFace_type = new entity("IfcFace", false, 442, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcFaceBound_type = new entity("IfcFaceBound", false, 444, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 445, IFC4X3_RC1_IfcFaceBound_type); - IFC4X3_RC1_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 446, IFC4X3_RC1_IfcFace_type); - IFC4X3_RC1_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 454, IFC4X3_RC1_IfcStructuralConnectionCondition_type); - IFC4X3_RC1_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 464, IFC4X3_RC1_IfcPresentationStyle_type); - IFC4X3_RC1_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 514, IFC4X3_RC1_IfcRepresentationContext_type); - IFC4X3_RC1_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 515, IFC4X3_RC1_IfcRepresentationItem_type); - IFC4X3_RC1_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 516, IFC4X3_RC1_IfcGeometricRepresentationContext_type); - IFC4X3_RC1_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 517, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 528, IFC4X3_RC1_IfcObjectPlacement_type); - IFC4X3_RC1_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 532, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcImageTexture_type = new entity("IfcImageTexture", false, 544, IFC4X3_RC1_IfcSurfaceTexture_type); - IFC4X3_RC1_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 550, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 554, IFC4X3_RC1_IfcTextureCoordinate_type); - IFC4X3_RC1_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 555, IFC4X3_RC1_IfcIndexedTextureMap_type); - IFC4X3_RC1_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 568, IFC4X3_RC1_IfcTimeSeries_type); - IFC4X3_RC1_IfcLagTime_type = new entity("IfcLagTime", false, 583, IFC4X3_RC1_IfcSchedulingTime_type); - IFC4X3_RC1_IfcLightSource_type = new entity("IfcLightSource", true, 602, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 603, IFC4X3_RC1_IfcLightSource_type); - IFC4X3_RC1_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 604, IFC4X3_RC1_IfcLightSource_type); - IFC4X3_RC1_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 605, IFC4X3_RC1_IfcLightSource_type); - IFC4X3_RC1_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 606, IFC4X3_RC1_IfcLightSource_type); - IFC4X3_RC1_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 607, IFC4X3_RC1_IfcLightSourcePositional_type); - IFC4X3_RC1_IfcLinearAxisWithInclination_type = new entity("IfcLinearAxisWithInclination", false, 610, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 613, IFC4X3_RC1_IfcObjectPlacement_type); - IFC4X3_RC1_IfcLinearPlacementWithInclination_type = new entity("IfcLinearPlacementWithInclination", false, 614, IFC4X3_RC1_IfcLinearPlacement_type); - IFC4X3_RC1_IfcLinearSpanPlacement_type = new entity("IfcLinearSpanPlacement", false, 616, IFC4X3_RC1_IfcLinearPlacement_type); - IFC4X3_RC1_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 625, IFC4X3_RC1_IfcObjectPlacement_type); - IFC4X3_RC1_IfcLoop_type = new entity("IfcLoop", false, 628, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcMappedItem_type = new entity("IfcMappedItem", false, 637, IFC4X3_RC1_IfcRepresentationItem_type); - IFC4X3_RC1_IfcMaterial_type = new entity("IfcMaterial", false, 645, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 647, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 648, IFC4X3_RC1_IfcMaterialDefinition_type); - IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 650, IFC4X3_RC1_IfcProductRepresentation_type); - IFC4X3_RC1_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 653, IFC4X3_RC1_IfcMaterialUsageDefinition_type); - IFC4X3_RC1_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 658, IFC4X3_RC1_IfcMaterialUsageDefinition_type); - IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 659, IFC4X3_RC1_IfcMaterialProfileSetUsage_type); - IFC4X3_RC1_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 661, IFC4X3_RC1_IfcExtendedProperties_type); - IFC4X3_RC1_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 662, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 679, IFC4X3_RC1_IfcDerivedProfileDef_type); - IFC4X3_RC1_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 711, IFC4X3_RC1_IfcRoot_type); - IFC4X3_RC1_IfcOpenCrossProfileDef_type = new entity("IfcOpenCrossProfileDef", false, 723, IFC4X3_RC1_IfcProfileDef_type); - IFC4X3_RC1_IfcOpenShell_type = new entity("IfcOpenShell", false, 727, IFC4X3_RC1_IfcConnectedFaceSet_type); - IFC4X3_RC1_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 729, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcOrientationExpression_type = new entity("IfcOrientationExpression", false, 730, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 731, IFC4X3_RC1_IfcEdge_type); - IFC4X3_RC1_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 737, IFC4X3_RC1_IfcProfileDef_type); - IFC4X3_RC1_IfcPath_type = new entity("IfcPath", false, 739, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 752, IFC4X3_RC1_IfcPhysicalQuantity_type); - IFC4X3_RC1_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 766, IFC4X3_RC1_IfcSurfaceTexture_type); - IFC4X3_RC1_IfcPlacement_type = new entity("IfcPlacement", true, 767, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 769, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcPoint_type = new entity("IfcPoint", true, 778, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 779, IFC4X3_RC1_IfcPoint_type); - IFC4X3_RC1_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 780, IFC4X3_RC1_IfcPoint_type); - IFC4X3_RC1_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 785, IFC4X3_RC1_IfcLoop_type); - IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 782, IFC4X3_RC1_IfcHalfSpaceSolid_type); - IFC4X3_RC1_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 796, IFC4X3_RC1_IfcPresentationItem_type); - IFC4X3_RC1_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 797, IFC4X3_RC1_IfcPropertyAbstraction_type); - IFC4X3_RC1_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 799, IFC4X3_RC1_IfcPreDefinedItem_type); - IFC4X3_RC1_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 815, IFC4X3_RC1_IfcProductRepresentation_type); - IFC4X3_RC1_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 820, IFC4X3_RC1_IfcExtendedProperties_type); - IFC4X3_RC1_IfcProperty_type = new entity("IfcProperty", true, 830, IFC4X3_RC1_IfcPropertyAbstraction_type); - IFC4X3_RC1_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 833, IFC4X3_RC1_IfcRoot_type); - IFC4X3_RC1_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 834, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 840, IFC4X3_RC1_IfcPropertyDefinition_type); - IFC4X3_RC1_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 848, IFC4X3_RC1_IfcPropertyDefinition_type); - IFC4X3_RC1_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 862, IFC4X3_RC1_IfcPropertySetDefinition_type); - IFC4X3_RC1_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 886, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 895, IFC4X3_RC1_IfcTimeSeries_type); - IFC4X3_RC1_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 898, IFC4X3_RC1_IfcPreDefinedProperties_type); - IFC4X3_RC1_IfcRelationship_type = new entity("IfcRelationship", true, 927, IFC4X3_RC1_IfcRoot_type); - IFC4X3_RC1_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 966, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 967, IFC4X3_RC1_IfcResourceLevelRelationship_type); - IFC4X3_RC1_IfcResourceTime_type = new entity("IfcResourceTime", false, 971, IFC4X3_RC1_IfcSchedulingTime_type); - IFC4X3_RC1_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 987, IFC4X3_RC1_IfcRectangleProfileDef_type); - IFC4X3_RC1_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 999, IFC4X3_RC1_IfcPreDefinedProperties_type); - IFC4X3_RC1_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 1000, IFC4X3_RC1_IfcPreDefinedProperties_type); - IFC4X3_RC1_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 996, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 1015, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 1022, IFC4X3_RC1_IfcProperty_type); - IFC4X3_RC1_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 1036, IFC4X3_RC1_IfcStructuralConnectionCondition_type); - IFC4X3_RC1_IfcSolidModel_type = new entity("IfcSolidModel", true, 1041, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 1098, IFC4X3_RC1_IfcStructuralLoadStatic_type); - IFC4X3_RC1_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 1100, IFC4X3_RC1_IfcStructuralLoadStatic_type); - IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 1101, IFC4X3_RC1_IfcStructuralLoadStatic_type); - IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 1102, IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type); - IFC4X3_RC1_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1103, IFC4X3_RC1_IfcStructuralLoadStatic_type); - IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1104, IFC4X3_RC1_IfcStructuralLoadSingleForce_type); - IFC4X3_RC1_IfcSubedge_type = new entity("IfcSubedge", false, 1128, IFC4X3_RC1_IfcEdge_type); - IFC4X3_RC1_IfcSurface_type = new entity("IfcSurface", true, 1129, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1143, IFC4X3_RC1_IfcSurfaceStyleShading_type); - IFC4X3_RC1_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1147, IFC4X3_RC1_IfcSolidModel_type); - IFC4X3_RC1_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1148, IFC4X3_RC1_IfcSolidModel_type); - IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1149, IFC4X3_RC1_IfcSweptDiskSolid_type); - IFC4X3_RC1_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1150, IFC4X3_RC1_IfcSurface_type); - IFC4X3_RC1_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1241, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1183, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1189, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1190, IFC4X3_RC1_IfcTextLiteral_type); - IFC4X3_RC1_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1193, IFC4X3_RC1_IfcPreDefinedTextFont_type); - IFC4X3_RC1_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1235, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcTypeObject_type = new entity("IfcTypeObject", false, 1245, IFC4X3_RC1_IfcObjectDefinition_type); - IFC4X3_RC1_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1246, IFC4X3_RC1_IfcTypeObject_type); - IFC4X3_RC1_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1247, IFC4X3_RC1_IfcTypeObject_type); - IFC4X3_RC1_IfcTypeResource_type = new entity("IfcTypeResource", true, 1248, IFC4X3_RC1_IfcTypeObject_type); - IFC4X3_RC1_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1259, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcVector_type = new entity("IfcVector", false, 1265, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1268, IFC4X3_RC1_IfcLoop_type); - IFC4X3_RC1_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1301, IFC4X3_RC1_IfcTypeProduct_type); - IFC4X3_RC1_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1316, IFC4X3_RC1_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcClassification_type); - items.push_back(IFC4X3_RC1_IfcClassificationReference_type); - IFC4X3_RC1_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 176, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcClassification_type); - items.push_back(IFC4X3_RC1_IfcClassificationReference_type); - IFC4X3_RC1_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 177, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4X3_RC1_IfcGeometricRepresentationContext_type); - IFC4X3_RC1_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 251, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcObjectDefinition_type); - items.push_back(IFC4X3_RC1_IfcPropertyDefinition_type); - IFC4X3_RC1_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 300, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcDocumentInformation_type); - items.push_back(IFC4X3_RC1_IfcDocumentReference_type); - IFC4X3_RC1_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 338, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcVector_type); - IFC4X3_RC1_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 533, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4X3_RC1_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4X3_RC1_IfcAreaMeasure_type); - items.push_back(IFC4X3_RC1_IfcComplexNumber_type); - items.push_back(IFC4X3_RC1_IfcContextDependentMeasure_type); - items.push_back(IFC4X3_RC1_IfcCountMeasure_type); - items.push_back(IFC4X3_RC1_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC1_IfcElectricCurrentMeasure_type); - items.push_back(IFC4X3_RC1_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4X3_RC1_IfcMassMeasure_type); - items.push_back(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC1_IfcNumericMeasure_type); - items.push_back(IFC4X3_RC1_IfcParameterValue_type); - items.push_back(IFC4X3_RC1_IfcPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC1_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4X3_RC1_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC1_IfcRatioMeasure_type); - items.push_back(IFC4X3_RC1_IfcSolidAngleMeasure_type); - items.push_back(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4X3_RC1_IfcTimeMeasure_type); - items.push_back(IFC4X3_RC1_IfcVolumeMeasure_type); - IFC4X3_RC1_IfcMeasureValue_type = new select_type("IfcMeasureValue", 665, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcPoint_type); - items.push_back(IFC4X3_RC1_IfcVertexPoint_type); - IFC4X3_RC1_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 781, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC1_IfcCurveStyle_type); - items.push_back(IFC4X3_RC1_IfcFillAreaStyle_type); - items.push_back(IFC4X3_RC1_IfcNullStyle_type); - items.push_back(IFC4X3_RC1_IfcSurfaceStyle_type); - items.push_back(IFC4X3_RC1_IfcTextStyle_type); - IFC4X3_RC1_IfcPresentationStyleSelect_type = new select_type("IfcPresentationStyleSelect", 807, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcProductDefinitionShape_type); - items.push_back(IFC4X3_RC1_IfcRepresentationMap_type); - IFC4X3_RC1_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 817, items); - } - IFC4X3_RC1_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 842, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(17); - items.push_back(IFC4X3_RC1_IfcActorRole_type); - items.push_back(IFC4X3_RC1_IfcAppliedValue_type); - items.push_back(IFC4X3_RC1_IfcApproval_type); - items.push_back(IFC4X3_RC1_IfcConstraint_type); - items.push_back(IFC4X3_RC1_IfcContextDependentUnit_type); - items.push_back(IFC4X3_RC1_IfcConversionBasedUnit_type); - items.push_back(IFC4X3_RC1_IfcExternalInformation_type); - items.push_back(IFC4X3_RC1_IfcExternalReference_type); - items.push_back(IFC4X3_RC1_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC1_IfcOrganization_type); - items.push_back(IFC4X3_RC1_IfcPerson_type); - items.push_back(IFC4X3_RC1_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC1_IfcPhysicalQuantity_type); - items.push_back(IFC4X3_RC1_IfcProfileDef_type); - items.push_back(IFC4X3_RC1_IfcPropertyAbstraction_type); - items.push_back(IFC4X3_RC1_IfcShapeAspect_type); - items.push_back(IFC4X3_RC1_IfcTimeSeries_type); - IFC4X3_RC1_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 969, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4X3_RC1_IfcPreDefinedTextFont_type); - IFC4X3_RC1_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1188, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcDerivedMeasureValue_type); - items.push_back(IFC4X3_RC1_IfcMeasureValue_type); - items.push_back(IFC4X3_RC1_IfcSimpleValue_type); - IFC4X3_RC1_IfcValue_type = new select_type("IfcValue", 1260, items); - } - IFC4X3_RC1_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X3_RC1_IfcFaceSurface_type); - IFC4X3_RC1_IfcAlignment2DHorizontal_type = new entity("IfcAlignment2DHorizontal", false, 34, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcAlignment2DSegment_type = new entity("IfcAlignment2DSegment", true, 36, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcAlignment2DVertical_type = new entity("IfcAlignment2DVertical", false, 41, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcAlignment2DVerticalSegment_type = new entity("IfcAlignment2DVerticalSegment", true, 42, IFC4X3_RC1_IfcAlignment2DSegment_type); - IFC4X3_RC1_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 50, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 66, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 70, IFC4X3_RC1_IfcPlacement_type); - IFC4X3_RC1_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 72, IFC4X3_RC1_IfcPlacement_type); - IFC4X3_RC1_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 73, IFC4X3_RC1_IfcPlacement_type); - IFC4X3_RC1_IfcAxisLateralInclination_type = new entity("IfcAxisLateralInclination", true, 74, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 95, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 104, IFC4X3_RC1_IfcSurface_type); - IFC4X3_RC1_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 105, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 107, IFC4X3_RC1_IfcHalfSpaceSolid_type); - IFC4X3_RC1_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 270, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 151, IFC4X3_RC1_IfcPoint_type); - IFC4X3_RC1_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 152, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 153, IFC4X3_RC1_IfcCartesianPointList_type); - IFC4X3_RC1_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 154, IFC4X3_RC1_IfcCartesianPointList_type); - IFC4X3_RC1_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 155, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 156, IFC4X3_RC1_IfcCartesianTransformationOperator_type); - IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 157, IFC4X3_RC1_IfcCartesianTransformationOperator2D_type); - IFC4X3_RC1_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 158, IFC4X3_RC1_IfcCartesianTransformationOperator_type); - IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 159, IFC4X3_RC1_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC1_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 170, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcClosedShell_type = new entity("IfcClosedShell", false, 178, IFC4X3_RC1_IfcConnectedFaceSet_type); - IFC4X3_RC1_IfcColourRgb_type = new entity("IfcColourRgb", false, 184, IFC4X3_RC1_IfcColourSpecification_type); - IFC4X3_RC1_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 195, IFC4X3_RC1_IfcProperty_type); - IFC4X3_RC1_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 200, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 230, IFC4X3_RC1_IfcTypeResource_type); - IFC4X3_RC1_IfcContext_type = new entity("IfcContext", true, 231, IFC4X3_RC1_IfcObjectDefinition_type); - IFC4X3_RC1_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 265, IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 267, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 269, IFC4X3_RC1_IfcSolidModel_type); - IFC4X3_RC1_IfcCurve_type = new entity("IfcCurve", true, 276, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 277, IFC4X3_RC1_IfcBoundedSurface_type); - IFC4X3_RC1_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 278, IFC4X3_RC1_IfcBoundedSurface_type); - IFC4X3_RC1_IfcDirection_type = new entity("IfcDirection", false, 309, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type = new entity("IfcDirectrixCurveSweptAreaSolid", true, 311, IFC4X3_RC1_IfcSweptAreaSolid_type); - IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type = new entity("IfcDirectrixDistanceSweptAreaSolid", true, 312, IFC4X3_RC1_IfcSweptAreaSolid_type); - IFC4X3_RC1_IfcDistanceExpression_type = new entity("IfcDistanceExpression", false, 316, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 346, IFC4X3_RC1_IfcTypeProduct_type); - IFC4X3_RC1_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 373, IFC4X3_RC1_IfcLoop_type); - IFC4X3_RC1_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 409, IFC4X3_RC1_IfcQuantitySet_type); - IFC4X3_RC1_IfcElementType_type = new entity("IfcElementType", true, 410, IFC4X3_RC1_IfcTypeProduct_type); - IFC4X3_RC1_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 402, IFC4X3_RC1_IfcSurface_type); - IFC4X3_RC1_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 412, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcEventType_type = new entity("IfcEventType", false, 428, IFC4X3_RC1_IfcTypeProcess_type); - IFC4X3_RC1_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 440, IFC4X3_RC1_IfcSweptAreaSolid_type); - IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 441, IFC4X3_RC1_IfcExtrudedAreaSolid_type); - IFC4X3_RC1_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 443, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 465, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 466, IFC4X3_RC1_IfcGeometricRepresentationItem_type); - IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 474, IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC1_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 505, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 507, IFC4X3_RC1_IfcFurnishingElementType_type); - IFC4X3_RC1_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 510, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 512, IFC4X3_RC1_IfcGeometricSet_type); - IFC4X3_RC1_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 570, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type = new entity("IfcInclinedReferenceSweptAreaSolid", false, 549, IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type); - IFC4X3_RC1_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 552, IFC4X3_RC1_IfcTessellatedItem_type); - IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 553, IFC4X3_RC1_IfcIndexedPolygonalFace_type); - IFC4X3_RC1_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 629, IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 581, IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcLine_type = new entity("IfcLine", false, 608, IFC4X3_RC1_IfcCurve_type); - IFC4X3_RC1_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 635, IFC4X3_RC1_IfcSolidModel_type); - IFC4X3_RC1_IfcObject_type = new entity("IfcObject", true, 710, IFC4X3_RC1_IfcObjectDefinition_type); - IFC4X3_RC1_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 719, IFC4X3_RC1_IfcCurve_type); - IFC4X3_RC1_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 720, IFC4X3_RC1_IfcOffsetCurve_type); - IFC4X3_RC1_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 721, IFC4X3_RC1_IfcOffsetCurve_type); - IFC4X3_RC1_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 722, IFC4X3_RC1_IfcOffsetCurve_type); - IFC4X3_RC1_IfcPcurve_type = new entity("IfcPcurve", false, 742, IFC4X3_RC1_IfcCurve_type); - IFC4X3_RC1_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 768, IFC4X3_RC1_IfcPlanarExtent_type); - IFC4X3_RC1_IfcPlane_type = new entity("IfcPlane", false, 771, IFC4X3_RC1_IfcElementarySurface_type); - IFC4X3_RC1_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 794, IFC4X3_RC1_IfcPreDefinedItem_type); - IFC4X3_RC1_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 795, IFC4X3_RC1_IfcPreDefinedItem_type); - IFC4X3_RC1_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 798, IFC4X3_RC1_IfcPropertySetDefinition_type); - IFC4X3_RC1_IfcProcedureType_type = new entity("IfcProcedureType", false, 810, IFC4X3_RC1_IfcTypeProcess_type); - IFC4X3_RC1_IfcProcess_type = new entity("IfcProcess", true, 812, IFC4X3_RC1_IfcObject_type); - IFC4X3_RC1_IfcProduct_type = new entity("IfcProduct", true, 814, IFC4X3_RC1_IfcObject_type); - IFC4X3_RC1_IfcProject_type = new entity("IfcProject", false, 822, IFC4X3_RC1_IfcContext_type); - IFC4X3_RC1_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 827, IFC4X3_RC1_IfcContext_type); - IFC4X3_RC1_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 832, IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 835, IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 837, IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 838, IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcPropertySet_type = new entity("IfcPropertySet", false, 839, IFC4X3_RC1_IfcPropertySetDefinition_type); - IFC4X3_RC1_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 843, IFC4X3_RC1_IfcPropertyTemplateDefinition_type); - IFC4X3_RC1_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 845, IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 846, IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 847, IFC4X3_RC1_IfcPropertyTemplateDefinition_type); - IFC4X3_RC1_IfcProxy_type = new entity("IfcProxy", false, 855, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 885, IFC4X3_RC1_IfcRectangleProfileDef_type); - IFC4X3_RC1_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 887, IFC4X3_RC1_IfcCsgPrimitive3D_type); - IFC4X3_RC1_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 888, IFC4X3_RC1_IfcBoundedSurface_type); - IFC4X3_RC1_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 899, IFC4X3_RC1_IfcPreDefinedPropertySet_type); - IFC4X3_RC1_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 911, IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 912, IFC4X3_RC1_IfcRelAssigns_type); - IFC4X3_RC1_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 913, IFC4X3_RC1_IfcRelAssigns_type); - IFC4X3_RC1_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 914, IFC4X3_RC1_IfcRelAssigns_type); - IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 915, IFC4X3_RC1_IfcRelAssignsToGroup_type); - IFC4X3_RC1_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 916, IFC4X3_RC1_IfcRelAssigns_type); - IFC4X3_RC1_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 917, IFC4X3_RC1_IfcRelAssigns_type); - IFC4X3_RC1_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 918, IFC4X3_RC1_IfcRelAssigns_type); - IFC4X3_RC1_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 919, IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 920, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 921, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 922, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 923, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 924, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 925, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelAssociatesProfileDef_type = new entity("IfcRelAssociatesProfileDef", false, 926, IFC4X3_RC1_IfcRelAssociates_type); - IFC4X3_RC1_IfcRelConnects_type = new entity("IfcRelConnects", true, 928, IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 929, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 930, IFC4X3_RC1_IfcRelConnectsElements_type); - IFC4X3_RC1_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 932, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 931, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 933, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 934, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 935, IFC4X3_RC1_IfcRelConnectsStructuralMember_type); - IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 936, IFC4X3_RC1_IfcRelConnectsElements_type); - IFC4X3_RC1_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 937, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 938, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 939, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 940, IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 941, IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRelDefines_type = new entity("IfcRelDefines", true, 942, IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 943, IFC4X3_RC1_IfcRelDefines_type); - IFC4X3_RC1_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 944, IFC4X3_RC1_IfcRelDefines_type); - IFC4X3_RC1_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 945, IFC4X3_RC1_IfcRelDefines_type); - IFC4X3_RC1_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 946, IFC4X3_RC1_IfcRelDefines_type); - IFC4X3_RC1_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 947, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 948, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 949, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelNests_type = new entity("IfcRelNests", false, 950, IFC4X3_RC1_IfcRelDecomposes_type); - IFC4X3_RC1_IfcRelPositions_type = new entity("IfcRelPositions", false, 951, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 952, IFC4X3_RC1_IfcRelDecomposes_type); - IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 953, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelSequence_type = new entity("IfcRelSequence", false, 954, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 955, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 956, IFC4X3_RC1_IfcRelConnects_type); - IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 957, IFC4X3_RC1_IfcRelSpaceBoundary_type); - IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 958, IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC1_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 959, IFC4X3_RC1_IfcRelDecomposes_type); - IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 960, IFC4X3_RC1_IfcCompositeCurveSegment_type); - IFC4X3_RC1_IfcResource_type = new entity("IfcResource", true, 965, IFC4X3_RC1_IfcObject_type); - IFC4X3_RC1_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 972, IFC4X3_RC1_IfcSweptAreaSolid_type); - IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 973, IFC4X3_RC1_IfcRevolvedAreaSolid_type); - IFC4X3_RC1_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 974, IFC4X3_RC1_IfcCsgPrimitive3D_type); - IFC4X3_RC1_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 975, IFC4X3_RC1_IfcCsgPrimitive3D_type); - IFC4X3_RC1_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 994, IFC4X3_RC1_IfcSolidModel_type); - IFC4X3_RC1_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 995, IFC4X3_RC1_IfcSectionedSolid_type); - IFC4X3_RC1_IfcSectionedSurface_type = new entity("IfcSectionedSurface", false, 997, IFC4X3_RC1_IfcSurface_type); - IFC4X3_RC1_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 1023, IFC4X3_RC1_IfcPropertyTemplate_type); - IFC4X3_RC1_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 1055, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 1056, IFC4X3_RC1_IfcTypeProduct_type); - IFC4X3_RC1_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 1058, IFC4X3_RC1_IfcSpatialElement_type); - IFC4X3_RC1_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 1059, IFC4X3_RC1_IfcSpatialElementType_type); - IFC4X3_RC1_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 1060, IFC4X3_RC1_IfcSpatialElement_type); - IFC4X3_RC1_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 1061, IFC4X3_RC1_IfcSpatialElementType_type); - IFC4X3_RC1_IfcSphere_type = new entity("IfcSphere", false, 1067, IFC4X3_RC1_IfcCsgPrimitive3D_type); - IFC4X3_RC1_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 1068, IFC4X3_RC1_IfcElementarySurface_type); - IFC4X3_RC1_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 1080, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 1092, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1107, IFC4X3_RC1_IfcStructuralItem_type); - IFC4X3_RC1_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1112, IFC4X3_RC1_IfcStructuralActivity_type); - IFC4X3_RC1_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1117, IFC4X3_RC1_IfcStructuralMember_type); - IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1119, IFC4X3_RC1_IfcStructuralSurfaceMember_type); - IFC4X3_RC1_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1120, IFC4X3_RC1_IfcStructuralReaction_type); - IFC4X3_RC1_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1126, IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1130, IFC4X3_RC1_IfcCurve_type); - IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1131, IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1134, IFC4X3_RC1_IfcSweptSurface_type); - IFC4X3_RC1_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1135, IFC4X3_RC1_IfcSweptSurface_type); - IFC4X3_RC1_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1156, IFC4X3_RC1_IfcFurnishingElementType_type); - IFC4X3_RC1_IfcTask_type = new entity("IfcTask", false, 1164, IFC4X3_RC1_IfcProcess_type); - IFC4X3_RC1_IfcTaskType_type = new entity("IfcTaskType", false, 1168, IFC4X3_RC1_IfcTypeProcess_type); - IFC4X3_RC1_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1182, IFC4X3_RC1_IfcTessellatedItem_type); - IFC4X3_RC1_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1218, IFC4X3_RC1_IfcElementarySurface_type); - IFC4X3_RC1_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1233, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1236, IFC4X3_RC1_IfcTessellatedFaceSet_type); - IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1237, IFC4X3_RC1_IfcTriangulatedFaceSet_type); - IFC4X3_RC1_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1296, IFC4X3_RC1_IfcPreDefinedPropertySet_type); - IFC4X3_RC1_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1299, IFC4X3_RC1_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC1_IfcReference_type); - items.push_back(IFC4X3_RC1_IfcValue_type); - IFC4X3_RC1_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 54, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcAxis2Placement2D_type); - items.push_back(IFC4X3_RC1_IfcAxis2Placement3D_type); - IFC4X3_RC1_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 71, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC1_IfcBooleanResult_type); - items.push_back(IFC4X3_RC1_IfcCsgPrimitive3D_type); - items.push_back(IFC4X3_RC1_IfcHalfSpaceSolid_type); - items.push_back(IFC4X3_RC1_IfcSolidModel_type); - items.push_back(IFC4X3_RC1_IfcTessellatedFaceSet_type); - IFC4X3_RC1_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 93, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcColourSpecification_type); - items.push_back(IFC4X3_RC1_IfcPreDefinedColour_type); - IFC4X3_RC1_IfcColour_type = new select_type("IfcColour", 182, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcColourRgb_type); - items.push_back(IFC4X3_RC1_IfcNormalisedRatioMeasure_type); - IFC4X3_RC1_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 183, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBooleanResult_type); - items.push_back(IFC4X3_RC1_IfcCsgPrimitive3D_type); - IFC4X3_RC1_IfcCsgSelect_type = new select_type("IfcCsgSelect", 268, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcCurveStyleFont_type); - items.push_back(IFC4X3_RC1_IfcPreDefinedCurveFont_type); - IFC4X3_RC1_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 288, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X3_RC1_IfcColour_type); - items.push_back(IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X3_RC1_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X3_RC1_IfcFillAreaStyleTiles_type); - IFC4X3_RC1_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 467, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcCurve_type); - items.push_back(IFC4X3_RC1_IfcPoint_type); - items.push_back(IFC4X3_RC1_IfcSurface_type); - IFC4X3_RC1_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 518, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcDirection_type); - items.push_back(IFC4X3_RC1_IfcVirtualGridIntersection_type); - IFC4X3_RC1_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 529, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcCurve_type); - items.push_back(IFC4X3_RC1_IfcLinearAxisWithInclination_type); - IFC4X3_RC1_IfcLinearAxisSelect_type = new select_type("IfcLinearAxisSelect", 609, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC1_IfcAppliedValue_type); - items.push_back(IFC4X3_RC1_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC1_IfcReference_type); - items.push_back(IFC4X3_RC1_IfcTable_type); - items.push_back(IFC4X3_RC1_IfcTimeSeries_type); - items.push_back(IFC4X3_RC1_IfcValue_type); - IFC4X3_RC1_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 678, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcProcess_type); - items.push_back(IFC4X3_RC1_IfcTypeProcess_type); - IFC4X3_RC1_IfcProcessSelect_type = new select_type("IfcProcessSelect", 813, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcProduct_type); - items.push_back(IFC4X3_RC1_IfcTypeProduct_type); - IFC4X3_RC1_IfcProductSelect_type = new select_type("IfcProductSelect", 818, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcPropertySetDefinition_type); - items.push_back(IFC4X3_RC1_IfcPropertySetDefinitionSet_type); - IFC4X3_RC1_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 841, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcResource_type); - items.push_back(IFC4X3_RC1_IfcTypeResource_type); - IFC4X3_RC1_IfcResourceSelect_type = new select_type("IfcResourceSelect", 970, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcClosedShell_type); - items.push_back(IFC4X3_RC1_IfcOpenShell_type); - IFC4X3_RC1_IfcShell_type = new select_type("IfcShell", 1014, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcClosedShell_type); - items.push_back(IFC4X3_RC1_IfcSolidModel_type); - IFC4X3_RC1_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 1042, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X3_RC1_IfcFaceSurface_type); - items.push_back(IFC4X3_RC1_IfcSurface_type); - IFC4X3_RC1_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1136, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcCartesianPoint_type); - items.push_back(IFC4X3_RC1_IfcParameterValue_type); - IFC4X3_RC1_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1240, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcDirection_type); - items.push_back(IFC4X3_RC1_IfcVector_type); - IFC4X3_RC1_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1266, items); - } - IFC4X3_RC1_IfcActor_type = new entity("IfcActor", false, 6, IFC4X3_RC1_IfcObject_type); - IFC4X3_RC1_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X3_RC1_IfcManifoldSolidBrep_type); - IFC4X3_RC1_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X3_RC1_IfcAdvancedBrep_type); - IFC4X3_RC1_IfcAlignment2DCant_type = new entity("IfcAlignment2DCant", false, 30, IFC4X3_RC1_IfcAxisLateralInclination_type); - IFC4X3_RC1_IfcAlignment2DCantSegment_type = new entity("IfcAlignment2DCantSegment", true, 32, IFC4X3_RC1_IfcAlignment2DSegment_type); - IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type = new entity("IfcAlignment2DHorizontalSegment", false, 35, IFC4X3_RC1_IfcAlignment2DSegment_type); - IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type = new entity("IfcAlignment2DVerSegCircularArc", false, 37, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); - IFC4X3_RC1_IfcAlignment2DVerSegLine_type = new entity("IfcAlignment2DVerSegLine", false, 38, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); - IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type = new entity("IfcAlignment2DVerSegParabolicArc", false, 39, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); - IFC4X3_RC1_IfcAlignment2DVerSegTransition_type = new entity("IfcAlignment2DVerSegTransition", false, 40, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); - IFC4X3_RC1_IfcAnnotation_type = new entity("IfcAnnotation", false, 49, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 115, IFC4X3_RC1_IfcBoundedSurface_type); - IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 117, IFC4X3_RC1_IfcBSplineSurface_type); - IFC4X3_RC1_IfcBlock_type = new entity("IfcBlock", false, 87, IFC4X3_RC1_IfcCsgPrimitive3D_type); - IFC4X3_RC1_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 92, IFC4X3_RC1_IfcBooleanResult_type); - IFC4X3_RC1_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 103, IFC4X3_RC1_IfcCurve_type); - IFC4X3_RC1_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 125, IFC4X3_RC1_IfcSpatialStructureElement_type); - IFC4X3_RC1_IfcBuiltElementType_type = new entity("IfcBuiltElementType", false, 129, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcChimneyType_type = new entity("IfcChimneyType", false, 166, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 169, IFC4X3_RC1_IfcCircleProfileDef_type); - IFC4X3_RC1_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 173, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcColumnType_type = new entity("IfcColumnType", false, 189, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 196, IFC4X3_RC1_IfcPropertyTemplate_type); - IFC4X3_RC1_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 198, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 199, IFC4X3_RC1_IfcCompositeCurve_type); - IFC4X3_RC1_IfcConic_type = new entity("IfcConic", true, 209, IFC4X3_RC1_IfcCurve_type); - IFC4X3_RC1_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 221, IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 224, IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 227, IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 229, IFC4X3_RC1_IfcResource_type); - IFC4X3_RC1_IfcControl_type = new entity("IfcControl", true, 234, IFC4X3_RC1_IfcObject_type); - IFC4X3_RC1_IfcCostItem_type = new entity("IfcCostItem", false, 252, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 254, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcCourseType_type = new entity("IfcCourseType", false, 259, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcCoveringType_type = new entity("IfcCoveringType", false, 262, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcCrewResource_type = new entity("IfcCrewResource", false, 264, IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 273, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcCurveSegment2D_type = new entity("IfcCurveSegment2D", true, 283, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 289, IFC4X3_RC1_IfcElementarySurface_type); - IFC4X3_RC1_IfcDeepFoundationType_type = new entity("IfcDeepFoundationType", false, 299, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 327, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 329, IFC4X3_RC1_IfcDistributionElementType_type); - IFC4X3_RC1_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 341, IFC4X3_RC1_IfcPreDefinedPropertySet_type); - IFC4X3_RC1_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 344, IFC4X3_RC1_IfcPreDefinedPropertySet_type); - IFC4X3_RC1_IfcDoorType_type = new entity("IfcDoorType", false, 349, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 353, IFC4X3_RC1_IfcPreDefinedColour_type); - IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 354, IFC4X3_RC1_IfcPreDefinedCurveFont_type); - IFC4X3_RC1_IfcElement_type = new entity("IfcElement", true, 401, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 403, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 404, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcElementComponent_type = new entity("IfcElementComponent", true, 406, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 407, IFC4X3_RC1_IfcElementType_type); - IFC4X3_RC1_IfcEllipse_type = new entity("IfcEllipse", false, 411, IFC4X3_RC1_IfcConic_type); - IFC4X3_RC1_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 414, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcEngineType_type = new entity("IfcEngineType", false, 417, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 420, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 423, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcEvent_type = new entity("IfcEvent", false, 425, IFC4X3_RC1_IfcProcess_type); - IFC4X3_RC1_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 439, IFC4X3_RC1_IfcSpatialElement_type); - IFC4X3_RC1_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 447, IFC4X3_RC1_IfcManifoldSolidBrep_type); - IFC4X3_RC1_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 448, IFC4X3_RC1_IfcFacetedBrep_type); - IFC4X3_RC1_IfcFacility_type = new entity("IfcFacility", false, 449, IFC4X3_RC1_IfcSpatialStructureElement_type); - IFC4X3_RC1_IfcFacilityPart_type = new entity("IfcFacilityPart", false, 450, IFC4X3_RC1_IfcSpatialStructureElement_type); - IFC4X3_RC1_IfcFastener_type = new entity("IfcFastener", false, 458, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcFastenerType_type = new entity("IfcFastenerType", false, 459, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 461, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 462, IFC4X3_RC1_IfcFeatureElement_type); - IFC4X3_RC1_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 463, IFC4X3_RC1_IfcFeatureElement_type); - IFC4X3_RC1_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 476, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 479, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 484, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 487, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 489, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 491, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 493, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 495, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcFootingType_type = new entity("IfcFootingType", false, 500, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 504, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcFurniture_type = new entity("IfcFurniture", false, 506, IFC4X3_RC1_IfcFurnishingElement_type); - IFC4X3_RC1_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 509, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcGeotechnicalElement_type = new entity("IfcGeotechnicalElement", true, 522, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcGeotechnicalStratum_type = new entity("IfcGeotechnicalStratum", true, 523, IFC4X3_RC1_IfcGeotechnicalElement_type); - IFC4X3_RC1_IfcGroup_type = new entity("IfcGroup", false, 531, IFC4X3_RC1_IfcObject_type); - IFC4X3_RC1_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 535, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 540, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcImpactProtectionDevice_type = new entity("IfcImpactProtectionDevice", false, 545, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcImpactProtectionDeviceType_type = new entity("IfcImpactProtectionDeviceType", false, 546, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 551, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 560, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC1_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 564, IFC4X3_RC1_IfcSurfaceCurve_type); - IFC4X3_RC1_IfcInventory_type = new entity("IfcInventory", false, 565, IFC4X3_RC1_IfcGroup_type); - IFC4X3_RC1_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 573, IFC4X3_RC1_IfcFlowFittingType_type); - IFC4X3_RC1_IfcKerbType_type = new entity("IfcKerbType", false, 576, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcLaborResource_type = new entity("IfcLaborResource", false, 580, IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcLampType_type = new entity("IfcLampType", false, 585, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 599, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcLineSegment2D_type = new entity("IfcLineSegment2D", false, 620, IFC4X3_RC1_IfcCurveSegment2D_type); - IFC4X3_RC1_IfcLiquidTerminalType_type = new entity("IfcLiquidTerminalType", false, 622, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcMarineFacility_type = new entity("IfcMarineFacility", false, 638, IFC4X3_RC1_IfcFacility_type); - IFC4X3_RC1_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 667, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 668, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 671, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcMemberType_type = new entity("IfcMemberType", false, 675, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type = new entity("IfcMobileTelecommunicationsApplianceType", false, 681, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcMooringDeviceType_type = new entity("IfcMooringDeviceType", false, 697, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 700, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcNavigationElementType_type = new entity("IfcNavigationElementType", false, 704, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcOccupant_type = new entity("IfcOccupant", false, 717, IFC4X3_RC1_IfcActor_type); - IFC4X3_RC1_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 724, IFC4X3_RC1_IfcFeatureElementSubtraction_type); - IFC4X3_RC1_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 726, IFC4X3_RC1_IfcOpeningElement_type); - IFC4X3_RC1_IfcOutletType_type = new entity("IfcOutletType", false, 734, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcPavementType_type = new entity("IfcPavementType", false, 741, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 743, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 746, IFC4X3_RC1_IfcPreDefinedPropertySet_type); - IFC4X3_RC1_IfcPermit_type = new entity("IfcPermit", false, 747, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcPileType_type = new entity("IfcPileType", false, 758, IFC4X3_RC1_IfcDeepFoundationType_type); - IFC4X3_RC1_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 761, IFC4X3_RC1_IfcFlowFittingType_type); - IFC4X3_RC1_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 764, IFC4X3_RC1_IfcFlowSegmentType_type); - IFC4X3_RC1_IfcPlant_type = new entity("IfcPlant", false, 773, IFC4X3_RC1_IfcGeographicElement_type); - IFC4X3_RC1_IfcPlateType_type = new entity("IfcPlateType", false, 776, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 783, IFC4X3_RC1_IfcTessellatedFaceSet_type); - IFC4X3_RC1_IfcPolyline_type = new entity("IfcPolyline", false, 784, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcPort_type = new entity("IfcPort", true, 786, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 787, IFC4X3_RC1_IfcProduct_type); - IFC4X3_RC1_IfcProcedure_type = new entity("IfcProcedure", false, 809, IFC4X3_RC1_IfcProcess_type); - IFC4X3_RC1_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 828, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 825, IFC4X3_RC1_IfcFeatureElementAddition_type); - IFC4X3_RC1_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 853, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcPumpType_type = new entity("IfcPumpType", false, 857, IFC4X3_RC1_IfcFlowMovingDeviceType_type); - IFC4X3_RC1_IfcRailType_type = new entity("IfcRailType", false, 871, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcRailingType_type = new entity("IfcRailingType", false, 869, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcRailway_type = new entity("IfcRailway", false, 873, IFC4X3_RC1_IfcFacility_type); - IFC4X3_RC1_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 877, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcRampType_type = new entity("IfcRampType", false, 879, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 883, IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC1_IfcReferent_type = new entity("IfcReferent", false, 892, IFC4X3_RC1_IfcPositioningElement_type); - IFC4X3_RC1_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 905, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 906, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 907, IFC4X3_RC1_IfcReinforcingElement_type); - IFC4X3_RC1_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 908, IFC4X3_RC1_IfcReinforcingElementType_type); - IFC4X3_RC1_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 910, IFC4X3_RC1_IfcRelDecomposes_type); - IFC4X3_RC1_IfcRoad_type = new entity("IfcRoad", false, 976, IFC4X3_RC1_IfcFacility_type); - IFC4X3_RC1_IfcRoofType_type = new entity("IfcRoofType", false, 980, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 989, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 992, IFC4X3_RC1_IfcSurfaceCurve_type); - IFC4X3_RC1_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 1008, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcSign_type = new entity("IfcSign", false, 1016, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcSignType_type = new entity("IfcSignType", false, 1020, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcSignalType_type = new entity("IfcSignalType", false, 1018, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcSite_type = new entity("IfcSite", false, 1027, IFC4X3_RC1_IfcSpatialStructureElement_type); - IFC4X3_RC1_IfcSlabType_type = new entity("IfcSlabType", false, 1034, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 1038, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcSolidStratum_type = new entity("IfcSolidStratum", false, 1043, IFC4X3_RC1_IfcGeotechnicalStratum_type); - IFC4X3_RC1_IfcSpace_type = new entity("IfcSpace", false, 1048, IFC4X3_RC1_IfcSpatialStructureElement_type); - IFC4X3_RC1_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 1051, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcSpaceType_type = new entity("IfcSpaceType", false, 1053, IFC4X3_RC1_IfcSpatialStructureElementType_type); - IFC4X3_RC1_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 1070, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 1074, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcStairType_type = new entity("IfcStairType", false, 1076, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 1079, IFC4X3_RC1_IfcStructuralActivity_type); - IFC4X3_RC1_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 1083, IFC4X3_RC1_IfcStructuralItem_type); - IFC4X3_RC1_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 1085, IFC4X3_RC1_IfcStructuralAction_type); - IFC4X3_RC1_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 1087, IFC4X3_RC1_IfcStructuralConnection_type); - IFC4X3_RC1_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 1088, IFC4X3_RC1_IfcStructuralMember_type); - IFC4X3_RC1_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 1090, IFC4X3_RC1_IfcStructuralCurveMember_type); - IFC4X3_RC1_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 1091, IFC4X3_RC1_IfcStructuralReaction_type); - IFC4X3_RC1_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 1093, IFC4X3_RC1_IfcStructuralCurveAction_type); - IFC4X3_RC1_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 1097, IFC4X3_RC1_IfcGroup_type); - IFC4X3_RC1_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1109, IFC4X3_RC1_IfcStructuralAction_type); - IFC4X3_RC1_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1110, IFC4X3_RC1_IfcStructuralConnection_type); - IFC4X3_RC1_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1111, IFC4X3_RC1_IfcStructuralReaction_type); - IFC4X3_RC1_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1113, IFC4X3_RC1_IfcGroup_type); - IFC4X3_RC1_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1114, IFC4X3_RC1_IfcStructuralAction_type); - IFC4X3_RC1_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1116, IFC4X3_RC1_IfcStructuralConnection_type); - IFC4X3_RC1_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1125, IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1132, IFC4X3_RC1_IfcFeatureElement_type); - IFC4X3_RC1_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1152, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcSystem_type = new entity("IfcSystem", false, 1154, IFC4X3_RC1_IfcGroup_type); - IFC4X3_RC1_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1155, IFC4X3_RC1_IfcFurnishingElement_type); - IFC4X3_RC1_IfcTankType_type = new entity("IfcTankType", false, 1162, IFC4X3_RC1_IfcFlowStorageDeviceType_type); - IFC4X3_RC1_IfcTendon_type = new entity("IfcTendon", false, 1173, IFC4X3_RC1_IfcReinforcingElement_type); - IFC4X3_RC1_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1174, IFC4X3_RC1_IfcReinforcingElement_type); - IFC4X3_RC1_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1175, IFC4X3_RC1_IfcReinforcingElementType_type); - IFC4X3_RC1_IfcTendonConduit_type = new entity("IfcTendonConduit", false, 1177, IFC4X3_RC1_IfcReinforcingElement_type); - IFC4X3_RC1_IfcTendonConduitType_type = new entity("IfcTendonConduitType", false, 1178, IFC4X3_RC1_IfcReinforcingElementType_type); - IFC4X3_RC1_IfcTendonType_type = new entity("IfcTendonType", false, 1180, IFC4X3_RC1_IfcReinforcingElementType_type); - IFC4X3_RC1_IfcTrackElementType_type = new entity("IfcTrackElementType", false, 1221, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcTransformerType_type = new entity("IfcTransformerType", false, 1224, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcTransitionCurveSegment2D_type = new entity("IfcTransitionCurveSegment2D", false, 1227, IFC4X3_RC1_IfcCurveSegment2D_type); - IFC4X3_RC1_IfcTransportElement_type = new entity("IfcTransportElement", false, 1230, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1238, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1243, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1254, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcValveType_type = new entity("IfcValveType", false, 1262, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcVibrationDamper_type = new entity("IfcVibrationDamper", false, 1270, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcVibrationDamperType_type = new entity("IfcVibrationDamperType", false, 1271, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1273, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1274, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1276, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcVoidStratum_type = new entity("IfcVoidStratum", false, 1280, IFC4X3_RC1_IfcGeotechnicalStratum_type); - IFC4X3_RC1_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1278, IFC4X3_RC1_IfcFeatureElementSubtraction_type); - IFC4X3_RC1_IfcWallType_type = new entity("IfcWallType", false, 1286, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1292, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcWaterStratum_type = new entity("IfcWaterStratum", false, 1294, IFC4X3_RC1_IfcGeotechnicalStratum_type); - IFC4X3_RC1_IfcWindowType_type = new entity("IfcWindowType", false, 1304, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1307, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcWorkControl_type = new entity("IfcWorkControl", true, 1309, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1310, IFC4X3_RC1_IfcWorkControl_type); - IFC4X3_RC1_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1312, IFC4X3_RC1_IfcWorkControl_type); - IFC4X3_RC1_IfcZone_type = new entity("IfcZone", false, 1315, IFC4X3_RC1_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X3_RC1_IfcCurveStyleFontSelect_type); - IFC4X3_RC1_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 279, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC1_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X3_RC1_IfcPcurve_type); - items.push_back(IFC4X3_RC1_IfcSurfaceCurve_type); - IFC4X3_RC1_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 281, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcBoundedCurve_type); - items.push_back(IFC4X3_RC1_IfcEdgeCurve_type); - IFC4X3_RC1_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 282, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcElement_type); - items.push_back(IFC4X3_RC1_IfcSpatialElement_type); - IFC4X3_RC1_IfcInterferenceSelect_type = new select_type("IfcInterferenceSelect", 562, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcProduct_type); - items.push_back(IFC4X3_RC1_IfcSystem_type); - IFC4X3_RC1_IfcSpatialReferenceSelect_type = new select_type("IfcSpatialReferenceSelect", 1057, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcElement_type); - items.push_back(IFC4X3_RC1_IfcStructuralItem_type); - IFC4X3_RC1_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 1081, items); - } - IFC4X3_RC1_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X3_RC1_IfcControl_type); - IFC4X3_RC1_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcAlignment2DCantSegLine_type = new entity("IfcAlignment2DCantSegLine", false, 31, IFC4X3_RC1_IfcAlignment2DCantSegment_type); - IFC4X3_RC1_IfcAlignment2DCantSegTransition_type = new entity("IfcAlignment2DCantSegTransition", false, 33, IFC4X3_RC1_IfcAlignment2DCantSegment_type); - IFC4X3_RC1_IfcAlignmentCurve_type = new entity("IfcAlignmentCurve", false, 43, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcAsset_type = new entity("IfcAsset", false, 65, IFC4X3_RC1_IfcGroup_type); - IFC4X3_RC1_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 68, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 112, IFC4X3_RC1_IfcBoundedCurve_type); - IFC4X3_RC1_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 114, IFC4X3_RC1_IfcBSplineCurve_type); - IFC4X3_RC1_IfcBeamType_type = new entity("IfcBeamType", false, 77, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcBearingType_type = new entity("IfcBearingType", false, 80, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcBoilerType_type = new entity("IfcBoilerType", false, 89, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 98, IFC4X3_RC1_IfcCompositeCurveOnSurface_type); - IFC4X3_RC1_IfcBridge_type = new entity("IfcBridge", false, 108, IFC4X3_RC1_IfcFacility_type); - IFC4X3_RC1_IfcBridgePart_type = new entity("IfcBridgePart", false, 109, IFC4X3_RC1_IfcFacilityPart_type); - IFC4X3_RC1_IfcBuilding_type = new entity("IfcBuilding", false, 118, IFC4X3_RC1_IfcFacility_type); - IFC4X3_RC1_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 119, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 120, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 123, IFC4X3_RC1_IfcBuiltElementType_type); - IFC4X3_RC1_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 126, IFC4X3_RC1_IfcSystem_type); - IFC4X3_RC1_IfcBuiltElement_type = new entity("IfcBuiltElement", false, 128, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcBuiltSystem_type = new entity("IfcBuiltSystem", false, 130, IFC4X3_RC1_IfcSystem_type); - IFC4X3_RC1_IfcBurnerType_type = new entity("IfcBurnerType", false, 133, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 136, IFC4X3_RC1_IfcFlowFittingType_type); - IFC4X3_RC1_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 139, IFC4X3_RC1_IfcFlowSegmentType_type); - IFC4X3_RC1_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 142, IFC4X3_RC1_IfcFlowFittingType_type); - IFC4X3_RC1_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 145, IFC4X3_RC1_IfcFlowSegmentType_type); - IFC4X3_RC1_IfcCaissonFoundationType_type = new entity("IfcCaissonFoundationType", false, 148, IFC4X3_RC1_IfcDeepFoundationType_type); - IFC4X3_RC1_IfcChillerType_type = new entity("IfcChillerType", false, 163, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcChimney_type = new entity("IfcChimney", false, 165, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcCircle_type = new entity("IfcCircle", false, 168, IFC4X3_RC1_IfcConic_type); - IFC4X3_RC1_IfcCircularArcSegment2D_type = new entity("IfcCircularArcSegment2D", false, 171, IFC4X3_RC1_IfcCurveSegment2D_type); - IFC4X3_RC1_IfcCivilElement_type = new entity("IfcCivilElement", false, 172, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcCoilType_type = new entity("IfcCoilType", false, 180, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcColumn_type = new entity("IfcColumn", false, 187, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 188, IFC4X3_RC1_IfcColumn_type); - IFC4X3_RC1_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 192, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcCompressorType_type = new entity("IfcCompressorType", false, 204, IFC4X3_RC1_IfcFlowMovingDeviceType_type); - IFC4X3_RC1_IfcCondenserType_type = new entity("IfcCondenserType", false, 207, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 220, IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 223, IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 226, IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcConveyorSegmentType_type = new entity("IfcConveyorSegmentType", false, 241, IFC4X3_RC1_IfcFlowSegmentType_type); - IFC4X3_RC1_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 244, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 247, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcCourse_type = new entity("IfcCourse", false, 258, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcCovering_type = new entity("IfcCovering", false, 261, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 272, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcDamperType_type = new entity("IfcDamperType", false, 291, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcDeepFoundation_type = new entity("IfcDeepFoundation", false, 298, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 313, IFC4X3_RC1_IfcElementComponent_type); - IFC4X3_RC1_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 314, IFC4X3_RC1_IfcElementComponentType_type); - IFC4X3_RC1_IfcDistributionBoardType_type = new entity("IfcDistributionBoardType", false, 318, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 321, IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 325, IFC4X3_RC1_IfcDistributionElementType_type); - IFC4X3_RC1_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 326, IFC4X3_RC1_IfcElement_type); - IFC4X3_RC1_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 328, IFC4X3_RC1_IfcDistributionElement_type); - IFC4X3_RC1_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 330, IFC4X3_RC1_IfcPort_type); - IFC4X3_RC1_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 332, IFC4X3_RC1_IfcSystem_type); - IFC4X3_RC1_IfcDoor_type = new entity("IfcDoor", false, 340, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 345, IFC4X3_RC1_IfcDoor_type); - IFC4X3_RC1_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 356, IFC4X3_RC1_IfcFlowFittingType_type); - IFC4X3_RC1_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 359, IFC4X3_RC1_IfcFlowSegmentType_type); - IFC4X3_RC1_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 362, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC1_IfcEarthworksCut_type = new entity("IfcEarthworksCut", false, 366, IFC4X3_RC1_IfcFeatureElementSubtraction_type); - IFC4X3_RC1_IfcEarthworksElement_type = new entity("IfcEarthworksElement", false, 368, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcEarthworksFill_type = new entity("IfcEarthworksFill", false, 369, IFC4X3_RC1_IfcEarthworksElement_type); - IFC4X3_RC1_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 375, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 382, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 385, IFC4X3_RC1_IfcFlowStorageDeviceType_type); - IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type = new entity("IfcElectricFlowTreatmentDeviceType", false, 388, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC1_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 391, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 394, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - IFC4X3_RC1_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 398, IFC4X3_RC1_IfcFlowControllerType_type); - IFC4X3_RC1_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 413, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcEngine_type = new entity("IfcEngine", false, 416, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 419, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcEvaporator_type = new entity("IfcEvaporator", false, 422, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 437, IFC4X3_RC1_IfcExternalSpatialStructureElement_type); - IFC4X3_RC1_IfcFanType_type = new entity("IfcFanType", false, 456, IFC4X3_RC1_IfcFlowMovingDeviceType_type); - IFC4X3_RC1_IfcFilterType_type = new entity("IfcFilterType", false, 469, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC1_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 472, IFC4X3_RC1_IfcFlowTerminalType_type); - IFC4X3_RC1_IfcFlowController_type = new entity("IfcFlowController", false, 475, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 478, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 481, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 483, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 486, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 488, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 490, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 492, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 494, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcFooting_type = new entity("IfcFooting", false, 499, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcGeotechnicalAssembly_type = new entity("IfcGeotechnicalAssembly", true, 521, IFC4X3_RC1_IfcGeotechnicalElement_type); - IFC4X3_RC1_IfcGrid_type = new entity("IfcGrid", false, 526, IFC4X3_RC1_IfcPositioningElement_type); - IFC4X3_RC1_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 534, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcHumidifier_type = new entity("IfcHumidifier", false, 539, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcInterceptor_type = new entity("IfcInterceptor", false, 559, IFC4X3_RC1_IfcFlowTreatmentDevice_type); - IFC4X3_RC1_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 572, IFC4X3_RC1_IfcFlowFitting_type); - IFC4X3_RC1_IfcKerb_type = new entity("IfcKerb", false, 575, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcLamp_type = new entity("IfcLamp", false, 584, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcLightFixture_type = new entity("IfcLightFixture", false, 598, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", false, 615, IFC4X3_RC1_IfcPositioningElement_type); - IFC4X3_RC1_IfcLiquidTerminal_type = new entity("IfcLiquidTerminal", false, 621, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 670, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcMember_type = new entity("IfcMember", false, 673, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 674, IFC4X3_RC1_IfcMember_type); - IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type = new entity("IfcMobileTelecommunicationsAppliance", false, 680, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcMooringDevice_type = new entity("IfcMooringDevice", false, 696, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 699, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcNavigationElement_type = new entity("IfcNavigationElement", false, 703, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 732, IFC4X3_RC1_IfcBoundaryCurve_type); - IFC4X3_RC1_IfcOutlet_type = new entity("IfcOutlet", false, 733, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcPavement_type = new entity("IfcPavement", false, 740, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcPile_type = new entity("IfcPile", false, 756, IFC4X3_RC1_IfcDeepFoundation_type); - IFC4X3_RC1_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 760, IFC4X3_RC1_IfcFlowFitting_type); - IFC4X3_RC1_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 763, IFC4X3_RC1_IfcFlowSegment_type); - IFC4X3_RC1_IfcPlate_type = new entity("IfcPlate", false, 774, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 775, IFC4X3_RC1_IfcPlate_type); - IFC4X3_RC1_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 849, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 851, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcPump_type = new entity("IfcPump", false, 856, IFC4X3_RC1_IfcFlowMovingDevice_type); - IFC4X3_RC1_IfcRail_type = new entity("IfcRail", false, 867, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcRailing_type = new entity("IfcRailing", false, 868, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcRamp_type = new entity("IfcRamp", false, 875, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcRampFlight_type = new entity("IfcRampFlight", false, 876, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 882, IFC4X3_RC1_IfcBSplineCurveWithKnots_type); - IFC4X3_RC1_IfcReinforcedSoil_type = new entity("IfcReinforcedSoil", false, 896, IFC4X3_RC1_IfcEarthworksElement_type); - IFC4X3_RC1_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 900, IFC4X3_RC1_IfcReinforcingElement_type); - IFC4X3_RC1_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 903, IFC4X3_RC1_IfcReinforcingElementType_type); - IFC4X3_RC1_IfcRoof_type = new entity("IfcRoof", false, 979, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 988, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcSensorType_type = new entity("IfcSensorType", false, 1004, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 1007, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcSignal_type = new entity("IfcSignal", false, 1017, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcSlab_type = new entity("IfcSlab", false, 1031, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 1032, IFC4X3_RC1_IfcSlab_type); - IFC4X3_RC1_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 1033, IFC4X3_RC1_IfcSlab_type); - IFC4X3_RC1_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 1037, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 1050, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 1069, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcStair_type = new entity("IfcStair", false, 1072, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcStairFlight_type = new entity("IfcStairFlight", false, 1073, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 1082, IFC4X3_RC1_IfcSystem_type); - IFC4X3_RC1_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 1095, IFC4X3_RC1_IfcStructuralLoadGroup_type); - IFC4X3_RC1_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1108, IFC4X3_RC1_IfcStructuralSurfaceAction_type); - IFC4X3_RC1_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1151, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcTank_type = new entity("IfcTank", false, 1161, IFC4X3_RC1_IfcFlowStorageDevice_type); - IFC4X3_RC1_IfcTrackElement_type = new entity("IfcTrackElement", false, 1220, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcTransformer_type = new entity("IfcTransformer", false, 1223, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1242, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1251, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1253, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcValve_type = new entity("IfcValve", false, 1261, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcWall_type = new entity("IfcWall", false, 1283, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1284, IFC4X3_RC1_IfcWall_type); - IFC4X3_RC1_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1285, IFC4X3_RC1_IfcWall_type); - IFC4X3_RC1_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1291, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcWindow_type = new entity("IfcWindow", false, 1295, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1300, IFC4X3_RC1_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC1_IfcExternalSpatialElement_type); - items.push_back(IFC4X3_RC1_IfcSpace_type); - IFC4X3_RC1_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 1049, items); - } - IFC4X3_RC1_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X3_RC1_IfcLinearPositioningElement_type); - IFC4X3_RC1_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 67, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcBeam_type = new entity("IfcBeam", false, 75, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 76, IFC4X3_RC1_IfcBeam_type); - IFC4X3_RC1_IfcBearing_type = new entity("IfcBearing", false, 79, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcBoiler_type = new entity("IfcBoiler", false, 88, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcBorehole_type = new entity("IfcBorehole", false, 96, IFC4X3_RC1_IfcGeotechnicalAssembly_type); - IFC4X3_RC1_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 122, IFC4X3_RC1_IfcBuiltElement_type); - IFC4X3_RC1_IfcBurner_type = new entity("IfcBurner", false, 132, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 135, IFC4X3_RC1_IfcFlowFitting_type); - IFC4X3_RC1_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 138, IFC4X3_RC1_IfcFlowSegment_type); - IFC4X3_RC1_IfcCableFitting_type = new entity("IfcCableFitting", false, 141, IFC4X3_RC1_IfcFlowFitting_type); - IFC4X3_RC1_IfcCableSegment_type = new entity("IfcCableSegment", false, 144, IFC4X3_RC1_IfcFlowSegment_type); - IFC4X3_RC1_IfcCaissonFoundation_type = new entity("IfcCaissonFoundation", false, 147, IFC4X3_RC1_IfcDeepFoundation_type); - IFC4X3_RC1_IfcChiller_type = new entity("IfcChiller", false, 162, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcCoil_type = new entity("IfcCoil", false, 179, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 191, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcCompressor_type = new entity("IfcCompressor", false, 203, IFC4X3_RC1_IfcFlowMovingDevice_type); - IFC4X3_RC1_IfcCondenser_type = new entity("IfcCondenser", false, 206, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcControllerType_type = new entity("IfcControllerType", false, 236, IFC4X3_RC1_IfcDistributionControlElementType_type); - IFC4X3_RC1_IfcConveyorSegment_type = new entity("IfcConveyorSegment", false, 240, IFC4X3_RC1_IfcFlowSegment_type); - IFC4X3_RC1_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 243, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 246, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcDamper_type = new entity("IfcDamper", false, 290, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcDistributionBoard_type = new entity("IfcDistributionBoard", false, 317, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 320, IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 323, IFC4X3_RC1_IfcDistributionSystem_type); - IFC4X3_RC1_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 324, IFC4X3_RC1_IfcDistributionElement_type); - IFC4X3_RC1_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 355, IFC4X3_RC1_IfcFlowFitting_type); - IFC4X3_RC1_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 358, IFC4X3_RC1_IfcFlowSegment_type); - IFC4X3_RC1_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 361, IFC4X3_RC1_IfcFlowTreatmentDevice_type); - IFC4X3_RC1_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 374, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 381, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 384, IFC4X3_RC1_IfcFlowStorageDevice_type); - IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type = new entity("IfcElectricFlowTreatmentDevice", false, 387, IFC4X3_RC1_IfcFlowTreatmentDevice_type); - IFC4X3_RC1_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 390, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 393, IFC4X3_RC1_IfcEnergyConversionDevice_type); - IFC4X3_RC1_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 397, IFC4X3_RC1_IfcFlowController_type); - IFC4X3_RC1_IfcFan_type = new entity("IfcFan", false, 455, IFC4X3_RC1_IfcFlowMovingDevice_type); - IFC4X3_RC1_IfcFilter_type = new entity("IfcFilter", false, 468, IFC4X3_RC1_IfcFlowTreatmentDevice_type); - IFC4X3_RC1_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 471, IFC4X3_RC1_IfcFlowTerminal_type); - IFC4X3_RC1_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 480, IFC4X3_RC1_IfcDistributionControlElement_type); - IFC4X3_RC1_IfcGeomodel_type = new entity("IfcGeomodel", false, 519, IFC4X3_RC1_IfcGeotechnicalAssembly_type); - IFC4X3_RC1_IfcGeoslice_type = new entity("IfcGeoslice", false, 520, IFC4X3_RC1_IfcGeotechnicalAssembly_type); - IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 850, IFC4X3_RC1_IfcDistributionControlElement_type); - IFC4X3_RC1_IfcSensor_type = new entity("IfcSensor", false, 1003, IFC4X3_RC1_IfcDistributionControlElement_type); - IFC4X3_RC1_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1250, IFC4X3_RC1_IfcDistributionControlElement_type); - IFC4X3_RC1_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X3_RC1_IfcDistributionControlElement_type); - IFC4X3_RC1_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X3_RC1_IfcDistributionControlElement_type); - IFC4X3_RC1_IfcController_type = new entity("IfcController", false, 235, IFC4X3_RC1_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X3_RC1_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X3_RC1_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC1_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAlignment2DCantSegment_type)), false)); - attributes.push_back(new attribute("RailHeadDistance", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DCant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DCantSegLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("StartRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EndRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("IsStartRadiusCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("IsEndRadiusCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("TransitionCurveType", new named_type(IFC4X3_RC1_IfcTransitionCurveType_type), false)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DCantSegTransition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartCantLeft", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantLeft", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("StartCantRight", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantRight", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DCantSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CurveGeometry", new named_type(IFC4X3_RC1_IfcCurveSegment2D_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TangentialContinuity", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DVerSegLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ParabolaConstant", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("StartRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EndRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("IsStartRadiusCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("IsEndRadiusCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("TransitionCurveType", new named_type(IFC4X3_RC1_IfcTransitionCurveType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DVerSegTransition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAlignment2DVerticalSegment_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X3_RC1_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignment2DVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Horizontal", new named_type(IFC4X3_RC1_IfcAlignment2DHorizontal_type), false)); - attributes.push_back(new attribute("Vertical", new named_type(IFC4X3_RC1_IfcAlignment2DVertical_type), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAlignmentCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAnnotationTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X3_RC1_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X3_RC1_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X3_RC1_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X3_RC1_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X3_RC1_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC1_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X3_RC1_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC1_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC1_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X3_RC1_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X3_RC1_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X3_RC1_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcAxisLateralInclination_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X3_RC1_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X3_RC1_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC1_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X3_RC1_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X3_RC1_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X3_RC1_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC1_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBearingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBearing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBearingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBearingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X3_RC1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X3_RC1_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC1_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X3_RC1_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X3_RC1_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBorehole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X3_RC1_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X3_RC1_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X3_RC1_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X3_RC1_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X3_RC1_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBridgeTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBridge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBridgePart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X3_RC1_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuiltElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuiltElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBuiltSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBuiltSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCaissonFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCaissonFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC1_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC1_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC1_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X3_RC1_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCircularArcSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC1_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X3_RC1_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcCompositeCurveSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Transition", new named_type(IFC4X3_RC1_IfcTransitionCode_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X3_RC1_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X3_RC1_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X3_RC1_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X3_RC1_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X3_RC1_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X3_RC1_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X3_RC1_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X3_RC1_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X3_RC1_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC1_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X3_RC1_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X3_RC1_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X3_RC1_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConveyorSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcConveyorSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X3_RC1_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X3_RC1_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCourseTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCourse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCourseTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCourseType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X3_RC1_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X3_RC1_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X3_RC1_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X3_RC1_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC1_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC1_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC1_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X3_RC1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X3_RC1_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC1_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDeepFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDeepFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC1_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC1_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC1_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("StartDistance", new named_type(IFC4X3_RC1_IfcDistanceExpression_type), true)); - attributes.push_back(new attribute("EndDistance", new named_type(IFC4X3_RC1_IfcDistanceExpression_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("AlongHorizontal", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X3_RC1_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X3_RC1_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X3_RC1_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC1_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X3_RC1_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC1_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC1_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X3_RC1_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC1_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC1_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC1_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC1_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEarthworksCutTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEarthworksCut_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEarthworksElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEarthworksFillTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEarthworksFill_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X3_RC1_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X3_RC1_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC1_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC1_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X3_RC1_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC1_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X3_RC1_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X3_RC1_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFacilityPartTypeSelect_type), false)); - attributes.push_back(new attribute("UsageType", new named_type(IFC4X3_RC1_IfcFacilityUsageEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFacilityPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelorDraughting", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X3_RC1_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X3_RC1_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC1_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X3_RC1_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X3_RC1_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X3_RC1_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X3_RC1_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X3_RC1_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeomodel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeoslice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeotechnicalAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeotechnicalElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGeotechnicalStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X3_RC1_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X3_RC1_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X3_RC1_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcImpactProtectionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcImpactProtectionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("Inclinating", new named_type(IFC4X3_RC1_IfcAxisLateralInclination_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC1_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X3_RC1_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X3_RC1_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC1_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X3_RC1_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC1_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC1_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X3_RC1_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcKerb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcKerbType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X3_RC1_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC1_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X3_RC1_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC1_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X3_RC1_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X3_RC1_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X3_RC1_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X3_RC1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X3_RC1_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X3_RC1_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X3_RC1_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X3_RC1_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X3_RC1_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X3_RC1_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X3_RC1_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X3_RC1_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X3_RC1_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLineSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("Inclinating", new named_type(IFC4X3_RC1_IfcAxisLateralInclination_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLinearAxisWithInclination_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PlacementMeasuredAlong", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC1_IfcDistanceExpression_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC1_IfcOrientationExpression_type), true)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Inclinating", new named_type(IFC4X3_RC1_IfcAxisLateralInclination_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLinearPlacementWithInclination_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Span", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLinearSpanPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLiquidTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLiquidTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X3_RC1_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X3_RC1_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X3_RC1_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC1_IfcReal_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X3_RC1_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X3_RC1_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMarineFacilityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMarineFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X3_RC1_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC1_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X3_RC1_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC1_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X3_RC1_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X3_RC1_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X3_RC1_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X3_RC1_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X3_RC1_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC1_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X3_RC1_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X3_RC1_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X3_RC1_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X3_RC1_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X3_RC1_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC1_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC1_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X3_RC1_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X3_RC1_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X3_RC1_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X3_RC1_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC1_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X3_RC1_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMooringDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMooringDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMooringDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMooringDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X3_RC1_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC1_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcNavigationElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcNavigationElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcNavigationElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcNavigationElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X3_RC1_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X3_RC1_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X3_RC1_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HorizontalWidths", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Widths", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type)), false)); - attributes.push_back(new attribute("Slopes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("Tags", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOpenCrossProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X3_RC1_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LateralAxisDirection", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - attributes.push_back(new attribute("VerticalAxisDirection", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOrientationExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X3_RC1_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X3_RC1_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X3_RC1_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X3_RC1_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X3_RC1_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X3_RC1_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X3_RC1_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X3_RC1_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC1_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flexible", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPavement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flexible", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPavementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC1_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X3_RC1_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X3_RC1_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC1_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC1_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC1_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X3_RC1_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPlant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X3_RC1_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC1_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcPresentationStyleAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X3_RC1_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X3_RC1_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X3_RC1_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X3_RC1_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X3_RC1_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X3_RC1_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X3_RC1_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X3_RC1_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X3_RC1_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X3_RC1_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X3_RC1_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X3_RC1_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X3_RC1_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4X3_RC1_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X3_RC1_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X3_RC1_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X3_RC1_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X3_RC1_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRailTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRail_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRailTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRailType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRailway_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X3_RC1_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X3_RC1_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcReferentTypeEnum_type), true)); - attributes.push_back(new attribute("RestartDistance", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X3_RC1_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcedSoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X3_RC1_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC1_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X3_RC1_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X3_RC1_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X3_RC1_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X3_RC1_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X3_RC1_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X3_RC1_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC1_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X3_RC1_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X3_RC1_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X3_RC1_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC1_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X3_RC1_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC1_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC1_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X3_RC1_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC1_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProfileDef", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelAssociatesProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X3_RC1_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X3_RC1_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC1_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC1_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC1_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X3_RC1_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X3_RC1_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC1_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X3_RC1_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X3_RC1_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X3_RC1_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC1_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X3_RC1_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC1_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC1_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X3_RC1_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC1_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X3_RC1_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X3_RC1_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X3_RC1_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X3_RC1_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X3_RC1_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC1_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC1_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC1_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPositioningElement", new named_type(IFC4X3_RC1_IfcPositioningElement_type), false)); - attributes.push_back(new attribute("RelatedProducts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProduct_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelPositions_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X3_RC1_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcSpatialReferenceSelect_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC1_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC1_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X3_RC1_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X3_RC1_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X3_RC1_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X3_RC1_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC1_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X3_RC1_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC1_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X3_RC1_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X3_RC1_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X3_RC1_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X3_RC1_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC1_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC1_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC1_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X3_RC1_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X3_RC1_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X3_RC1_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC1_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X3_RC1_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X3_RC1_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X3_RC1_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X3_RC1_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X3_RC1_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcDistanceExpression_type)), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSectionedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X3_RC1_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X3_RC1_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSignTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSign_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSignTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSignType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSignalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSignal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSignalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSignalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X3_RC1_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X3_RC1_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X3_RC1_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSolidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X3_RC1_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X3_RC1_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X3_RC1_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X3_RC1_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC1_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X3_RC1_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X3_RC1_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X3_RC1_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X3_RC1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X3_RC1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X3_RC1_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X3_RC1_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X3_RC1_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X3_RC1_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X3_RC1_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X3_RC1_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X3_RC1_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X3_RC1_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X3_RC1_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X3_RC1_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X3_RC1_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X3_RC1_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X3_RC1_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X3_RC1_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStyleAssignmentSelect_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X3_RC1_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC1_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X3_RC1_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X3_RC1_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X3_RC1_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X3_RC1_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC1_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X3_RC1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X3_RC1_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X3_RC1_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X3_RC1_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X3_RC1_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X3_RC1_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X3_RC1_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X3_RC1_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC1_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC1_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X3_RC1_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC1_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC1_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X3_RC1_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC1_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X3_RC1_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X3_RC1_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X3_RC1_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X3_RC1_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTendonConduit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTendonConduitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X3_RC1_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X3_RC1_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X3_RC1_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X3_RC1_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X3_RC1_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X3_RC1_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X3_RC1_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X3_RC1_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X3_RC1_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X3_RC1_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X3_RC1_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X3_RC1_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X3_RC1_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X3_RC1_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X3_RC1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X3_RC1_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X3_RC1_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X3_RC1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X3_RC1_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X3_RC1_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X3_RC1_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC1_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC1_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC1_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC1_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC1_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC1_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC1_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC1_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTrackElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTrackElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTrackElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTrackElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("StartRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EndRadius", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("IsStartRadiusCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("IsEndRadiusCCW", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("TransitionCurveType", new named_type(IFC4X3_RC1_IfcTransitionCurveType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTransitionCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTransportElementTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTransportElementTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC1_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC1_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC1_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC1_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC1_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC1_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC1_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC1_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X3_RC1_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X3_RC1_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC1_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVibrationDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVibrationDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVoidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWaterStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC1_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC1_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC1_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC1_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC1_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC1_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC1_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC1_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC1_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC1_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC1_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC1_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC1_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X3_RC1_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC1_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X3_RC1_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4X3_RC1_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4X3_RC1_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC1_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC1_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToActor_type, IFC4X3_RC1_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X3_RC1_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPerson_type, IFC4X3_RC1_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcOrganization_type, IFC4X3_RC1_IfcOrganization_type->attributes()[4])); - IFC4X3_RC1_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToCant", inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignment2DCant_type, IFC4X3_RC1_IfcAlignment2DCant_type->attributes()[0])); - IFC4X3_RC1_IfcAlignment2DCantSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToAlignmentCurve", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcAlignmentCurve_type, IFC4X3_RC1_IfcAlignmentCurve_type->attributes()[0])); - IFC4X3_RC1_IfcAlignment2DHorizontal_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToHorizontal", inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignment2DHorizontal_type, IFC4X3_RC1_IfcAlignment2DHorizontal_type->attributes()[1])); - IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToAlignmentCurve", inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignmentCurve_type, IFC4X3_RC1_IfcAlignmentCurve_type->attributes()[1])); - IFC4X3_RC1_IfcAlignment2DVertical_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToVertical", inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignment2DVertical_type, IFC4X3_RC1_IfcAlignment2DVertical_type->attributes()[0])); - IFC4X3_RC1_IfcAlignment2DVerticalSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC1_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesApproval_type, IFC4X3_RC1_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceApprovalRelationship_type, IFC4X3_RC1_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcApprovalRelationship_type, IFC4X3_RC1_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcApprovalRelationship_type, IFC4X3_RC1_IfcApprovalRelationship_type->attributes()[0])); - IFC4X3_RC1_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToLinearAxis", inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcLinearAxisWithInclination_type, IFC4X3_RC1_IfcLinearAxisWithInclination_type->attributes()[1])); - IFC4X3_RC1_IfcAxisLateralInclination_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PositioningElement", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcLinearPositioningElement_type, IFC4X3_RC1_IfcLinearPositioningElement_type->attributes()[0])); - IFC4X3_RC1_IfcBoundedCurve_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesClassification_type, IFC4X3_RC1_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcClassificationReference_type, IFC4X3_RC1_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC1_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesClassification_type, IFC4X3_RC1_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcClassificationReference_type, IFC4X3_RC1_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC1_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcCompositeCurve_type, IFC4X3_RC1_IfcCompositeCurve_type->attributes()[0])); - IFC4X3_RC1_IfcCompositeCurveSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceConstraintRelationship_type, IFC4X3_RC1_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X3_RC1_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByProperties_type, IFC4X3_RC1_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDeclares_type, IFC4X3_RC1_IfcRelDeclares_type->attributes()[0])); - IFC4X3_RC1_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToControl_type, IFC4X3_RC1_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X3_RC1_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcCoordinateOperation_type, IFC4X3_RC1_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC1_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelCoversSpaces_type, IFC4X3_RC1_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelCoversBldgElements_type, IFC4X3_RC1_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X3_RC1_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelFlowControlElements_type, IFC4X3_RC1_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X3_RC1_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsPortToElement_type, IFC4X3_RC1_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X3_RC1_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelFlowControlElements_type, IFC4X3_RC1_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X3_RC1_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesDocument_type, IFC4X3_RC1_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcDocumentReference_type, IFC4X3_RC1_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcDocumentInformationRelationship_type, IFC4X3_RC1_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcDocumentInformationRelationship_type, IFC4X3_RC1_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X3_RC1_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesDocument_type, IFC4X3_RC1_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X3_RC1_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelFillsElement_type, IFC4X3_RC1_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsElements_type, IFC4X3_RC1_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelInterferesElements_type, IFC4X3_RC1_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelInterferesElements_type, IFC4X3_RC1_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelProjectsElement_type, IFC4X3_RC1_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelVoidsElement_type, IFC4X3_RC1_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary_type, IFC4X3_RC1_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsElements_type, IFC4X3_RC1_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelCoversBldgElements_type, IFC4X3_RC1_IfcRelCoversBldgElements_type->attributes()[0])); - IFC4X3_RC1_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X3_RC1_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary_type, IFC4X3_RC1_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC1_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcTextureMap_type, IFC4X3_RC1_IfcTextureMap_type->attributes()[1])); - IFC4X3_RC1_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcRelProjectsElement_type, IFC4X3_RC1_IfcRelProjectsElement_type->attributes()[1])); - IFC4X3_RC1_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcRelVoidsElement_type, IFC4X3_RC1_IfcRelVoidsElement_type->attributes()[1])); - IFC4X3_RC1_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcGeometricRepresentationSubContext_type, IFC4X3_RC1_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcCoordinateOperation_type, IFC4X3_RC1_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC1_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcGrid_type, IFC4X3_RC1_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcGrid_type, IFC4X3_RC1_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcGrid_type, IFC4X3_RC1_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcVirtualGridIntersection_type, IFC4X3_RC1_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X3_RC1_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToGroup_type, IFC4X3_RC1_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4X3_RC1_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcPolygonalFaceSet_type, IFC4X3_RC1_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4X3_RC1_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesLibrary_type, IFC4X3_RC1_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcLibraryReference_type, IFC4X3_RC1_IfcLibraryReference_type->attributes()[2])); - IFC4X3_RC1_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesLibrary_type, IFC4X3_RC1_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X3_RC1_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcMaterialRelationship_type, IFC4X3_RC1_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcMaterialRelationship_type, IFC4X3_RC1_IfcMaterialRelationship_type->attributes()[0])); - IFC4X3_RC1_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcMaterialConstituentSet_type, IFC4X3_RC1_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X3_RC1_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesMaterial_type, IFC4X3_RC1_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcMaterialProperties_type, IFC4X3_RC1_IfcMaterialProperties_type->attributes()[0])); - IFC4X3_RC1_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcMaterialLayerSet_type, IFC4X3_RC1_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X3_RC1_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcMaterialProfileSet_type, IFC4X3_RC1_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X3_RC1_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcRelAssociatesMaterial_type, IFC4X3_RC1_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X3_RC1_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDefinesByObject_type, IFC4X3_RC1_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByObject_type, IFC4X3_RC1_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDefinesByType_type, IFC4X3_RC1_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByProperties_type, IFC4X3_RC1_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X3_RC1_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssigns_type, IFC4X3_RC1_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelNests_type, IFC4X3_RC1_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelNests_type, IFC4X3_RC1_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDeclares_type, IFC4X3_RC1_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAggregates_type, IFC4X3_RC1_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelAggregates_type, IFC4X3_RC1_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociates_type, IFC4X3_RC1_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC1_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcProduct_type, IFC4X3_RC1_IfcProduct_type->attributes()[0])); - IFC4X3_RC1_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelFillsElement_type, IFC4X3_RC1_IfcRelFillsElement_type->attributes()[0])); - IFC4X3_RC1_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcOrganizationRelationship_type, IFC4X3_RC1_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcOrganizationRelationship_type, IFC4X3_RC1_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPersonAndOrganization_type, IFC4X3_RC1_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X3_RC1_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPersonAndOrganization_type, IFC4X3_RC1_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X3_RC1_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcPhysicalComplexQuantity_type, IFC4X3_RC1_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X3_RC1_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsPortToElement_type, IFC4X3_RC1_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsPorts_type, IFC4X3_RC1_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsPorts_type, IFC4X3_RC1_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X3_RC1_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Positions", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelPositions_type, IFC4X3_RC1_IfcRelPositions_type->attributes()[0])); - IFC4X3_RC1_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSequence_type, IFC4X3_RC1_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSequence_type, IFC4X3_RC1_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProcess_type, IFC4X3_RC1_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC1_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProduct_type, IFC4X3_RC1_IfcRelAssignsToProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PositionedRelativeTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelPositions_type, IFC4X3_RC1_IfcRelPositions_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC1_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcProduct_type, IFC4X3_RC1_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcShapeAspect_type, IFC4X3_RC1_IfcShapeAspect_type->attributes()[4])); - IFC4X3_RC1_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcProfileProperties_type, IFC4X3_RC1_IfcProfileProperties_type->attributes()[0])); - IFC4X3_RC1_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertySet_type, IFC4X3_RC1_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertyDependencyRelationship_type, IFC4X3_RC1_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertyDependencyRelationship_type, IFC4X3_RC1_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcComplexProperty_type, IFC4X3_RC1_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceConstraintRelationship_type, IFC4X3_RC1_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceApprovalRelationship_type, IFC4X3_RC1_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X3_RC1_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDeclares_type, IFC4X3_RC1_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociates_type, IFC4X3_RC1_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC1_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcTypeObject_type, IFC4X3_RC1_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByTemplate_type, IFC4X3_RC1_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByProperties_type, IFC4X3_RC1_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X3_RC1_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByTemplate_type, IFC4X3_RC1_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X3_RC1_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcComplexPropertyTemplate_type, IFC4X3_RC1_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertySetTemplate_type, IFC4X3_RC1_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X3_RC1_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRepresentationMap_type, IFC4X3_RC1_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPresentationLayerAssignment_type, IFC4X3_RC1_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcProductRepresentation_type, IFC4X3_RC1_IfcProductRepresentation_type->attributes()[2])); - IFC4X3_RC1_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRepresentation_type, IFC4X3_RC1_IfcRepresentation_type->attributes()[0])); - IFC4X3_RC1_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcPresentationLayerAssignment_type, IFC4X3_RC1_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcStyledItem_type, IFC4X3_RC1_IfcStyledItem_type->attributes()[0])); - IFC4X3_RC1_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcShapeAspect_type, IFC4X3_RC1_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcMappedItem_type, IFC4X3_RC1_IfcMappedItem_type->attributes()[0])); - IFC4X3_RC1_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToResource_type, IFC4X3_RC1_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC1_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcShapeAspect_type, IFC4X3_RC1_IfcShapeAspect_type->attributes()[0])); - IFC4X3_RC1_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelCoversSpaces_type, IFC4X3_RC1_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary_type, IFC4X3_RC1_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC1_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelServicesBuildings_type, IFC4X3_RC1_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4X3_RC1_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X3_RC1_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcRelConnectsStructuralMember_type, IFC4X3_RC1_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X3_RC1_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X3_RC1_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcStructuralResultGroup_type, IFC4X3_RC1_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcStructuralAnalysisModel_type, IFC4X3_RC1_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X3_RC1_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsStructuralMember_type, IFC4X3_RC1_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X3_RC1_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcStructuralAnalysisModel_type, IFC4X3_RC1_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X3_RC1_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcTextureCoordinate_type, IFC4X3_RC1_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcSurfaceStyleWithTextures_type, IFC4X3_RC1_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X3_RC1_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelServicesBuildings_type, IFC4X3_RC1_IfcRelServicesBuildings_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ServicesFacilities", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC1_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcIndexedColourMap_type, IFC4X3_RC1_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcIndexedTextureMap_type, IFC4X3_RC1_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X3_RC1_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC1_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDefinesByType_type, IFC4X3_RC1_IfcRelDefinesByType_type->attributes()[1])); - IFC4X3_RC1_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProcess_type, IFC4X3_RC1_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC1_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProduct_type, IFC4X3_RC1_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X3_RC1_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToResource_type, IFC4X3_RC1_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC1_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC1_IfcActionRequest_type);defs.push_back(IFC4X3_RC1_IfcCostItem_type);defs.push_back(IFC4X3_RC1_IfcCostSchedule_type);defs.push_back(IFC4X3_RC1_IfcPerformanceHistory_type);defs.push_back(IFC4X3_RC1_IfcPermit_type);defs.push_back(IFC4X3_RC1_IfcProjectOrder_type);defs.push_back(IFC4X3_RC1_IfcWorkCalendar_type);defs.push_back(IFC4X3_RC1_IfcWorkControl_type); - IFC4X3_RC1_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcActor_type);defs.push_back(IFC4X3_RC1_IfcControl_type);defs.push_back(IFC4X3_RC1_IfcGroup_type);defs.push_back(IFC4X3_RC1_IfcProcess_type);defs.push_back(IFC4X3_RC1_IfcProduct_type);defs.push_back(IFC4X3_RC1_IfcResource_type); - IFC4X3_RC1_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC1_IfcActuator_type);defs.push_back(IFC4X3_RC1_IfcAlarm_type);defs.push_back(IFC4X3_RC1_IfcController_type);defs.push_back(IFC4X3_RC1_IfcFlowInstrument_type);defs.push_back(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X3_RC1_IfcSensor_type);defs.push_back(IFC4X3_RC1_IfcUnitaryControlElement_type); - IFC4X3_RC1_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC1_IfcActuatorType_type);defs.push_back(IFC4X3_RC1_IfcAlarmType_type);defs.push_back(IFC4X3_RC1_IfcControllerType_type);defs.push_back(IFC4X3_RC1_IfcFlowInstrumentType_type);defs.push_back(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X3_RC1_IfcSensorType_type);defs.push_back(IFC4X3_RC1_IfcUnitaryControlElementType_type); - IFC4X3_RC1_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcAdvancedBrep_type);defs.push_back(IFC4X3_RC1_IfcFacetedBrep_type); - IFC4X3_RC1_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcAdvancedBrepWithVoids_type); - IFC4X3_RC1_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcAdvancedFace_type); - IFC4X3_RC1_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC1_IfcAirTerminal_type);defs.push_back(IFC4X3_RC1_IfcAudioVisualAppliance_type);defs.push_back(IFC4X3_RC1_IfcCommunicationsAppliance_type);defs.push_back(IFC4X3_RC1_IfcElectricAppliance_type);defs.push_back(IFC4X3_RC1_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X3_RC1_IfcLamp_type);defs.push_back(IFC4X3_RC1_IfcLightFixture_type);defs.push_back(IFC4X3_RC1_IfcLiquidTerminal_type);defs.push_back(IFC4X3_RC1_IfcMedicalDevice_type);defs.push_back(IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type);defs.push_back(IFC4X3_RC1_IfcOutlet_type);defs.push_back(IFC4X3_RC1_IfcSanitaryTerminal_type);defs.push_back(IFC4X3_RC1_IfcSignal_type);defs.push_back(IFC4X3_RC1_IfcSpaceHeater_type);defs.push_back(IFC4X3_RC1_IfcStackTerminal_type);defs.push_back(IFC4X3_RC1_IfcWasteTerminal_type); - IFC4X3_RC1_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcAirTerminalBox_type);defs.push_back(IFC4X3_RC1_IfcDamper_type);defs.push_back(IFC4X3_RC1_IfcDistributionBoard_type);defs.push_back(IFC4X3_RC1_IfcElectricDistributionBoard_type);defs.push_back(IFC4X3_RC1_IfcElectricTimeControl_type);defs.push_back(IFC4X3_RC1_IfcFlowMeter_type);defs.push_back(IFC4X3_RC1_IfcProtectiveDevice_type);defs.push_back(IFC4X3_RC1_IfcSwitchingDevice_type);defs.push_back(IFC4X3_RC1_IfcValve_type); - IFC4X3_RC1_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcAirTerminalBoxType_type);defs.push_back(IFC4X3_RC1_IfcDamperType_type);defs.push_back(IFC4X3_RC1_IfcDistributionBoardType_type);defs.push_back(IFC4X3_RC1_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X3_RC1_IfcElectricTimeControlType_type);defs.push_back(IFC4X3_RC1_IfcFlowMeterType_type);defs.push_back(IFC4X3_RC1_IfcProtectiveDeviceType_type);defs.push_back(IFC4X3_RC1_IfcSwitchingDeviceType_type);defs.push_back(IFC4X3_RC1_IfcValveType_type); - IFC4X3_RC1_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC1_IfcAirTerminalType_type);defs.push_back(IFC4X3_RC1_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X3_RC1_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X3_RC1_IfcElectricApplianceType_type);defs.push_back(IFC4X3_RC1_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X3_RC1_IfcLampType_type);defs.push_back(IFC4X3_RC1_IfcLightFixtureType_type);defs.push_back(IFC4X3_RC1_IfcLiquidTerminalType_type);defs.push_back(IFC4X3_RC1_IfcMedicalDeviceType_type);defs.push_back(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type);defs.push_back(IFC4X3_RC1_IfcOutletType_type);defs.push_back(IFC4X3_RC1_IfcSanitaryTerminalType_type);defs.push_back(IFC4X3_RC1_IfcSignalType_type);defs.push_back(IFC4X3_RC1_IfcSpaceHeaterType_type);defs.push_back(IFC4X3_RC1_IfcStackTerminalType_type);defs.push_back(IFC4X3_RC1_IfcWasteTerminalType_type); - IFC4X3_RC1_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC1_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X3_RC1_IfcBoiler_type);defs.push_back(IFC4X3_RC1_IfcBurner_type);defs.push_back(IFC4X3_RC1_IfcChiller_type);defs.push_back(IFC4X3_RC1_IfcCoil_type);defs.push_back(IFC4X3_RC1_IfcCondenser_type);defs.push_back(IFC4X3_RC1_IfcCooledBeam_type);defs.push_back(IFC4X3_RC1_IfcCoolingTower_type);defs.push_back(IFC4X3_RC1_IfcElectricGenerator_type);defs.push_back(IFC4X3_RC1_IfcElectricMotor_type);defs.push_back(IFC4X3_RC1_IfcEngine_type);defs.push_back(IFC4X3_RC1_IfcEvaporativeCooler_type);defs.push_back(IFC4X3_RC1_IfcEvaporator_type);defs.push_back(IFC4X3_RC1_IfcHeatExchanger_type);defs.push_back(IFC4X3_RC1_IfcHumidifier_type);defs.push_back(IFC4X3_RC1_IfcMotorConnection_type);defs.push_back(IFC4X3_RC1_IfcSolarDevice_type);defs.push_back(IFC4X3_RC1_IfcTransformer_type);defs.push_back(IFC4X3_RC1_IfcTubeBundle_type);defs.push_back(IFC4X3_RC1_IfcUnitaryEquipment_type); - IFC4X3_RC1_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X3_RC1_IfcBoilerType_type);defs.push_back(IFC4X3_RC1_IfcBurnerType_type);defs.push_back(IFC4X3_RC1_IfcChillerType_type);defs.push_back(IFC4X3_RC1_IfcCoilType_type);defs.push_back(IFC4X3_RC1_IfcCondenserType_type);defs.push_back(IFC4X3_RC1_IfcCooledBeamType_type);defs.push_back(IFC4X3_RC1_IfcCoolingTowerType_type);defs.push_back(IFC4X3_RC1_IfcElectricGeneratorType_type);defs.push_back(IFC4X3_RC1_IfcElectricMotorType_type);defs.push_back(IFC4X3_RC1_IfcEngineType_type);defs.push_back(IFC4X3_RC1_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X3_RC1_IfcEvaporatorType_type);defs.push_back(IFC4X3_RC1_IfcHeatExchangerType_type);defs.push_back(IFC4X3_RC1_IfcHumidifierType_type);defs.push_back(IFC4X3_RC1_IfcMotorConnectionType_type);defs.push_back(IFC4X3_RC1_IfcSolarDeviceType_type);defs.push_back(IFC4X3_RC1_IfcTransformerType_type);defs.push_back(IFC4X3_RC1_IfcTubeBundleType_type);defs.push_back(IFC4X3_RC1_IfcUnitaryEquipmentType_type); - IFC4X3_RC1_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcAlignment_type); - IFC4X3_RC1_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcAlignment2DCant_type); - IFC4X3_RC1_IfcAxisLateralInclination_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcAlignment2DCantSegLine_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DCantSegTransition_type); - IFC4X3_RC1_IfcAlignment2DCantSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcAlignment2DCantSegment_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); - IFC4X3_RC1_IfcAlignment2DSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(32); - defs.push_back(IFC4X3_RC1_IfcAlignment2DHorizontal_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DSegment_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DVertical_type);defs.push_back(IFC4X3_RC1_IfcAnnotationFillArea_type);defs.push_back(IFC4X3_RC1_IfcAxisLateralInclination_type);defs.push_back(IFC4X3_RC1_IfcBooleanResult_type);defs.push_back(IFC4X3_RC1_IfcBoundingBox_type);defs.push_back(IFC4X3_RC1_IfcCartesianPointList_type);defs.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X3_RC1_IfcCompositeCurveSegment_type);defs.push_back(IFC4X3_RC1_IfcCsgPrimitive3D_type);defs.push_back(IFC4X3_RC1_IfcCurve_type);defs.push_back(IFC4X3_RC1_IfcDirection_type);defs.push_back(IFC4X3_RC1_IfcDistanceExpression_type);defs.push_back(IFC4X3_RC1_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X3_RC1_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X3_RC1_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X3_RC1_IfcGeometricSet_type);defs.push_back(IFC4X3_RC1_IfcHalfSpaceSolid_type);defs.push_back(IFC4X3_RC1_IfcLightSource_type);defs.push_back(IFC4X3_RC1_IfcLinearAxisWithInclination_type);defs.push_back(IFC4X3_RC1_IfcOrientationExpression_type);defs.push_back(IFC4X3_RC1_IfcPlacement_type);defs.push_back(IFC4X3_RC1_IfcPlanarExtent_type);defs.push_back(IFC4X3_RC1_IfcPoint_type);defs.push_back(IFC4X3_RC1_IfcSectionedSpine_type);defs.push_back(IFC4X3_RC1_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X3_RC1_IfcSolidModel_type);defs.push_back(IFC4X3_RC1_IfcSurface_type);defs.push_back(IFC4X3_RC1_IfcTessellatedItem_type);defs.push_back(IFC4X3_RC1_IfcTextLiteral_type);defs.push_back(IFC4X3_RC1_IfcVector_type); - IFC4X3_RC1_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DVerSegLine_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type);defs.push_back(IFC4X3_RC1_IfcAlignment2DVerSegTransition_type); - IFC4X3_RC1_IfcAlignment2DVerticalSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC1_IfcAlignmentCurve_type);defs.push_back(IFC4X3_RC1_IfcBSplineCurve_type);defs.push_back(IFC4X3_RC1_IfcCompositeCurve_type);defs.push_back(IFC4X3_RC1_IfcCurveSegment2D_type);defs.push_back(IFC4X3_RC1_IfcIndexedPolyCurve_type);defs.push_back(IFC4X3_RC1_IfcPolyline_type);defs.push_back(IFC4X3_RC1_IfcTrimmedCurve_type); - IFC4X3_RC1_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC1_IfcAnnotation_type);defs.push_back(IFC4X3_RC1_IfcElement_type);defs.push_back(IFC4X3_RC1_IfcPort_type);defs.push_back(IFC4X3_RC1_IfcPositioningElement_type);defs.push_back(IFC4X3_RC1_IfcProxy_type);defs.push_back(IFC4X3_RC1_IfcSpatialElement_type);defs.push_back(IFC4X3_RC1_IfcStructuralActivity_type);defs.push_back(IFC4X3_RC1_IfcStructuralItem_type); - IFC4X3_RC1_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcApprovalRelationship_type);defs.push_back(IFC4X3_RC1_IfcCurrencyRelationship_type);defs.push_back(IFC4X3_RC1_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X3_RC1_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X3_RC1_IfcMaterialRelationship_type);defs.push_back(IFC4X3_RC1_IfcOrganizationRelationship_type);defs.push_back(IFC4X3_RC1_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X3_RC1_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X3_RC1_IfcResourceConstraintRelationship_type); - IFC4X3_RC1_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X3_RC1_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X3_RC1_IfcCompositeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcDerivedProfileDef_type);defs.push_back(IFC4X3_RC1_IfcOpenCrossProfileDef_type);defs.push_back(IFC4X3_RC1_IfcParameterizedProfileDef_type); - IFC4X3_RC1_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type); - IFC4X3_RC1_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcAsset_type);defs.push_back(IFC4X3_RC1_IfcInventory_type);defs.push_back(IFC4X3_RC1_IfcStructuralLoadGroup_type);defs.push_back(IFC4X3_RC1_IfcStructuralResultGroup_type);defs.push_back(IFC4X3_RC1_IfcSystem_type); - IFC4X3_RC1_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcCShapeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcCircleProfileDef_type);defs.push_back(IFC4X3_RC1_IfcEllipseProfileDef_type);defs.push_back(IFC4X3_RC1_IfcIShapeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcLShapeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcRectangleProfileDef_type);defs.push_back(IFC4X3_RC1_IfcTShapeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X3_RC1_IfcUShapeProfileDef_type);defs.push_back(IFC4X3_RC1_IfcZShapeProfileDef_type); - IFC4X3_RC1_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcAxis1Placement_type);defs.push_back(IFC4X3_RC1_IfcAxis2Placement2D_type);defs.push_back(IFC4X3_RC1_IfcAxis2Placement3D_type); - IFC4X3_RC1_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBSplineCurveWithKnots_type); - IFC4X3_RC1_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcBSplineSurface_type);defs.push_back(IFC4X3_RC1_IfcCurveBoundedPlane_type);defs.push_back(IFC4X3_RC1_IfcCurveBoundedSurface_type);defs.push_back(IFC4X3_RC1_IfcRectangularTrimmedSurface_type); - IFC4X3_RC1_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC1_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X3_RC1_IfcBeam_type);defs.push_back(IFC4X3_RC1_IfcBearing_type);defs.push_back(IFC4X3_RC1_IfcBuildingElementProxy_type);defs.push_back(IFC4X3_RC1_IfcChimney_type);defs.push_back(IFC4X3_RC1_IfcColumn_type);defs.push_back(IFC4X3_RC1_IfcCourse_type);defs.push_back(IFC4X3_RC1_IfcCovering_type);defs.push_back(IFC4X3_RC1_IfcCurtainWall_type);defs.push_back(IFC4X3_RC1_IfcDeepFoundation_type);defs.push_back(IFC4X3_RC1_IfcDoor_type);defs.push_back(IFC4X3_RC1_IfcEarthworksElement_type);defs.push_back(IFC4X3_RC1_IfcFooting_type);defs.push_back(IFC4X3_RC1_IfcKerb_type);defs.push_back(IFC4X3_RC1_IfcMember_type);defs.push_back(IFC4X3_RC1_IfcMooringDevice_type);defs.push_back(IFC4X3_RC1_IfcNavigationElement_type);defs.push_back(IFC4X3_RC1_IfcPavement_type);defs.push_back(IFC4X3_RC1_IfcPlate_type);defs.push_back(IFC4X3_RC1_IfcRail_type);defs.push_back(IFC4X3_RC1_IfcRailing_type);defs.push_back(IFC4X3_RC1_IfcRamp_type);defs.push_back(IFC4X3_RC1_IfcRampFlight_type);defs.push_back(IFC4X3_RC1_IfcRoof_type);defs.push_back(IFC4X3_RC1_IfcShadingDevice_type);defs.push_back(IFC4X3_RC1_IfcSlab_type);defs.push_back(IFC4X3_RC1_IfcStair_type);defs.push_back(IFC4X3_RC1_IfcStairFlight_type);defs.push_back(IFC4X3_RC1_IfcTrackElement_type);defs.push_back(IFC4X3_RC1_IfcWall_type);defs.push_back(IFC4X3_RC1_IfcWindow_type); - IFC4X3_RC1_IfcBuiltElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBeamStandardCase_type); - IFC4X3_RC1_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(29); - defs.push_back(IFC4X3_RC1_IfcBeamType_type);defs.push_back(IFC4X3_RC1_IfcBearingType_type);defs.push_back(IFC4X3_RC1_IfcBuildingElementProxyType_type);defs.push_back(IFC4X3_RC1_IfcChimneyType_type);defs.push_back(IFC4X3_RC1_IfcColumnType_type);defs.push_back(IFC4X3_RC1_IfcCourseType_type);defs.push_back(IFC4X3_RC1_IfcCoveringType_type);defs.push_back(IFC4X3_RC1_IfcCurtainWallType_type);defs.push_back(IFC4X3_RC1_IfcDeepFoundationType_type);defs.push_back(IFC4X3_RC1_IfcDoorType_type);defs.push_back(IFC4X3_RC1_IfcFootingType_type);defs.push_back(IFC4X3_RC1_IfcKerbType_type);defs.push_back(IFC4X3_RC1_IfcMemberType_type);defs.push_back(IFC4X3_RC1_IfcMooringDeviceType_type);defs.push_back(IFC4X3_RC1_IfcNavigationElementType_type);defs.push_back(IFC4X3_RC1_IfcPavementType_type);defs.push_back(IFC4X3_RC1_IfcPlateType_type);defs.push_back(IFC4X3_RC1_IfcRailType_type);defs.push_back(IFC4X3_RC1_IfcRailingType_type);defs.push_back(IFC4X3_RC1_IfcRampFlightType_type);defs.push_back(IFC4X3_RC1_IfcRampType_type);defs.push_back(IFC4X3_RC1_IfcRoofType_type);defs.push_back(IFC4X3_RC1_IfcShadingDeviceType_type);defs.push_back(IFC4X3_RC1_IfcSlabType_type);defs.push_back(IFC4X3_RC1_IfcStairFlightType_type);defs.push_back(IFC4X3_RC1_IfcStairType_type);defs.push_back(IFC4X3_RC1_IfcTrackElementType_type);defs.push_back(IFC4X3_RC1_IfcWallType_type);defs.push_back(IFC4X3_RC1_IfcWindowType_type); - IFC4X3_RC1_IfcBuiltElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcBlobTexture_type);defs.push_back(IFC4X3_RC1_IfcImageTexture_type);defs.push_back(IFC4X3_RC1_IfcPixelTexture_type); - IFC4X3_RC1_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcBlock_type);defs.push_back(IFC4X3_RC1_IfcRectangularPyramid_type);defs.push_back(IFC4X3_RC1_IfcRightCircularCone_type);defs.push_back(IFC4X3_RC1_IfcRightCircularCylinder_type);defs.push_back(IFC4X3_RC1_IfcSphere_type); - IFC4X3_RC1_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBooleanClippingResult_type); - IFC4X3_RC1_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcBorehole_type);defs.push_back(IFC4X3_RC1_IfcGeomodel_type);defs.push_back(IFC4X3_RC1_IfcGeoslice_type); - IFC4X3_RC1_IfcGeotechnicalAssembly_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBoundaryCurve_type); - IFC4X3_RC1_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X3_RC1_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X3_RC1_IfcBoundaryNodeCondition_type); - IFC4X3_RC1_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type); - IFC4X3_RC1_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcBoundedCurve_type);defs.push_back(IFC4X3_RC1_IfcConic_type);defs.push_back(IFC4X3_RC1_IfcLine_type);defs.push_back(IFC4X3_RC1_IfcOffsetCurve_type);defs.push_back(IFC4X3_RC1_IfcPcurve_type);defs.push_back(IFC4X3_RC1_IfcSurfaceCurve_type); - IFC4X3_RC1_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcBoundedSurface_type);defs.push_back(IFC4X3_RC1_IfcElementarySurface_type);defs.push_back(IFC4X3_RC1_IfcSectionedSurface_type);defs.push_back(IFC4X3_RC1_IfcSweptSurface_type); - IFC4X3_RC1_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcBoxedHalfSpace_type);defs.push_back(IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type); - IFC4X3_RC1_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcBridge_type);defs.push_back(IFC4X3_RC1_IfcBuilding_type);defs.push_back(IFC4X3_RC1_IfcMarineFacility_type);defs.push_back(IFC4X3_RC1_IfcRailway_type);defs.push_back(IFC4X3_RC1_IfcRoad_type); - IFC4X3_RC1_IfcFacility_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcBridgePart_type); - IFC4X3_RC1_IfcFacilityPart_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcBuildingElementPart_type);defs.push_back(IFC4X3_RC1_IfcDiscreteAccessory_type);defs.push_back(IFC4X3_RC1_IfcFastener_type);defs.push_back(IFC4X3_RC1_IfcImpactProtectionDevice_type);defs.push_back(IFC4X3_RC1_IfcMechanicalFastener_type);defs.push_back(IFC4X3_RC1_IfcReinforcingElement_type);defs.push_back(IFC4X3_RC1_IfcSign_type);defs.push_back(IFC4X3_RC1_IfcVibrationDamper_type);defs.push_back(IFC4X3_RC1_IfcVibrationIsolator_type); - IFC4X3_RC1_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcBuildingElementPartType_type);defs.push_back(IFC4X3_RC1_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X3_RC1_IfcFastenerType_type);defs.push_back(IFC4X3_RC1_IfcImpactProtectionDeviceType_type);defs.push_back(IFC4X3_RC1_IfcMechanicalFastenerType_type);defs.push_back(IFC4X3_RC1_IfcReinforcingElementType_type);defs.push_back(IFC4X3_RC1_IfcSignType_type);defs.push_back(IFC4X3_RC1_IfcVibrationDamperType_type);defs.push_back(IFC4X3_RC1_IfcVibrationIsolatorType_type); - IFC4X3_RC1_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcBuildingStorey_type);defs.push_back(IFC4X3_RC1_IfcFacility_type);defs.push_back(IFC4X3_RC1_IfcFacilityPart_type);defs.push_back(IFC4X3_RC1_IfcSite_type);defs.push_back(IFC4X3_RC1_IfcSpace_type); - IFC4X3_RC1_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcBuildingSystem_type);defs.push_back(IFC4X3_RC1_IfcBuiltSystem_type);defs.push_back(IFC4X3_RC1_IfcDistributionSystem_type);defs.push_back(IFC4X3_RC1_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X3_RC1_IfcZone_type); - IFC4X3_RC1_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC1_IfcBuiltElement_type);defs.push_back(IFC4X3_RC1_IfcCivilElement_type);defs.push_back(IFC4X3_RC1_IfcDistributionElement_type);defs.push_back(IFC4X3_RC1_IfcElementAssembly_type);defs.push_back(IFC4X3_RC1_IfcElementComponent_type);defs.push_back(IFC4X3_RC1_IfcFeatureElement_type);defs.push_back(IFC4X3_RC1_IfcFurnishingElement_type);defs.push_back(IFC4X3_RC1_IfcGeographicElement_type);defs.push_back(IFC4X3_RC1_IfcGeotechnicalElement_type);defs.push_back(IFC4X3_RC1_IfcTransportElement_type);defs.push_back(IFC4X3_RC1_IfcVirtualElement_type); - IFC4X3_RC1_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC1_IfcBuiltElementType_type);defs.push_back(IFC4X3_RC1_IfcCivilElementType_type);defs.push_back(IFC4X3_RC1_IfcDistributionElementType_type);defs.push_back(IFC4X3_RC1_IfcElementAssemblyType_type);defs.push_back(IFC4X3_RC1_IfcElementComponentType_type);defs.push_back(IFC4X3_RC1_IfcFurnishingElementType_type);defs.push_back(IFC4X3_RC1_IfcGeographicElementType_type);defs.push_back(IFC4X3_RC1_IfcTransportElementType_type); - IFC4X3_RC1_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcCableCarrierFitting_type);defs.push_back(IFC4X3_RC1_IfcCableFitting_type);defs.push_back(IFC4X3_RC1_IfcDuctFitting_type);defs.push_back(IFC4X3_RC1_IfcJunctionBox_type);defs.push_back(IFC4X3_RC1_IfcPipeFitting_type); - IFC4X3_RC1_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcCableCarrierFittingType_type);defs.push_back(IFC4X3_RC1_IfcCableFittingType_type);defs.push_back(IFC4X3_RC1_IfcDuctFittingType_type);defs.push_back(IFC4X3_RC1_IfcJunctionBoxType_type);defs.push_back(IFC4X3_RC1_IfcPipeFittingType_type); - IFC4X3_RC1_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcCableCarrierSegment_type);defs.push_back(IFC4X3_RC1_IfcCableSegment_type);defs.push_back(IFC4X3_RC1_IfcConveyorSegment_type);defs.push_back(IFC4X3_RC1_IfcDuctSegment_type);defs.push_back(IFC4X3_RC1_IfcPipeSegment_type); - IFC4X3_RC1_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X3_RC1_IfcCableSegmentType_type);defs.push_back(IFC4X3_RC1_IfcConveyorSegmentType_type);defs.push_back(IFC4X3_RC1_IfcDuctSegmentType_type);defs.push_back(IFC4X3_RC1_IfcPipeSegmentType_type); - IFC4X3_RC1_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcCaissonFoundation_type);defs.push_back(IFC4X3_RC1_IfcPile_type); - IFC4X3_RC1_IfcDeepFoundation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcCaissonFoundationType_type);defs.push_back(IFC4X3_RC1_IfcPileType_type); - IFC4X3_RC1_IfcDeepFoundationType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcCartesianPoint_type);defs.push_back(IFC4X3_RC1_IfcPointOnCurve_type);defs.push_back(IFC4X3_RC1_IfcPointOnSurface_type); - IFC4X3_RC1_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcCartesianPointList2D_type);defs.push_back(IFC4X3_RC1_IfcCartesianPointList3D_type); - IFC4X3_RC1_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC1_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X3_RC1_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X3_RC1_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcCenterLineProfileDef_type); - IFC4X3_RC1_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcCircle_type);defs.push_back(IFC4X3_RC1_IfcEllipse_type); - IFC4X3_RC1_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcCircleHollowProfileDef_type); - IFC4X3_RC1_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcCircularArcSegment2D_type);defs.push_back(IFC4X3_RC1_IfcLineSegment2D_type);defs.push_back(IFC4X3_RC1_IfcTransitionCurveSegment2D_type); - IFC4X3_RC1_IfcCurveSegment2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcClassification_type);defs.push_back(IFC4X3_RC1_IfcDocumentInformation_type);defs.push_back(IFC4X3_RC1_IfcLibraryInformation_type); - IFC4X3_RC1_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcClassificationReference_type);defs.push_back(IFC4X3_RC1_IfcDocumentReference_type);defs.push_back(IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X3_RC1_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X3_RC1_IfcLibraryReference_type); - IFC4X3_RC1_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcClosedShell_type);defs.push_back(IFC4X3_RC1_IfcOpenShell_type); - IFC4X3_RC1_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcColourRgb_type); - IFC4X3_RC1_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X3_RC1_IfcColourRgbList_type);defs.push_back(IFC4X3_RC1_IfcColourSpecification_type);defs.push_back(IFC4X3_RC1_IfcCurveStyleFont_type);defs.push_back(IFC4X3_RC1_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X3_RC1_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X3_RC1_IfcIndexedColourMap_type);defs.push_back(IFC4X3_RC1_IfcPreDefinedItem_type);defs.push_back(IFC4X3_RC1_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X3_RC1_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X3_RC1_IfcSurfaceStyleShading_type);defs.push_back(IFC4X3_RC1_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X3_RC1_IfcSurfaceTexture_type);defs.push_back(IFC4X3_RC1_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X3_RC1_IfcTextStyleTextModel_type);defs.push_back(IFC4X3_RC1_IfcTextureCoordinate_type);defs.push_back(IFC4X3_RC1_IfcTextureVertex_type);defs.push_back(IFC4X3_RC1_IfcTextureVertexList_type); - IFC4X3_RC1_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcColumnStandardCase_type); - IFC4X3_RC1_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcComplexProperty_type);defs.push_back(IFC4X3_RC1_IfcSimpleProperty_type); - IFC4X3_RC1_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X3_RC1_IfcSimplePropertyTemplate_type); - IFC4X3_RC1_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcCompositeCurveOnSurface_type); - IFC4X3_RC1_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcCompressor_type);defs.push_back(IFC4X3_RC1_IfcFan_type);defs.push_back(IFC4X3_RC1_IfcPump_type); - IFC4X3_RC1_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcCompressorType_type);defs.push_back(IFC4X3_RC1_IfcFanType_type);defs.push_back(IFC4X3_RC1_IfcPumpType_type); - IFC4X3_RC1_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC1_IfcConnectedFaceSet_type);defs.push_back(IFC4X3_RC1_IfcEdge_type);defs.push_back(IFC4X3_RC1_IfcFace_type);defs.push_back(IFC4X3_RC1_IfcFaceBound_type);defs.push_back(IFC4X3_RC1_IfcLoop_type);defs.push_back(IFC4X3_RC1_IfcPath_type);defs.push_back(IFC4X3_RC1_IfcVertex_type); - IFC4X3_RC1_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X3_RC1_IfcConnectionPointGeometry_type);defs.push_back(IFC4X3_RC1_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X3_RC1_IfcConnectionVolumeGeometry_type); - IFC4X3_RC1_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcConnectionPointEccentricity_type); - IFC4X3_RC1_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X3_RC1_IfcConstructionMaterialResource_type);defs.push_back(IFC4X3_RC1_IfcConstructionProductResource_type);defs.push_back(IFC4X3_RC1_IfcCrewResource_type);defs.push_back(IFC4X3_RC1_IfcLaborResource_type);defs.push_back(IFC4X3_RC1_IfcSubContractResource_type); - IFC4X3_RC1_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X3_RC1_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X3_RC1_IfcConstructionProductResourceType_type);defs.push_back(IFC4X3_RC1_IfcCrewResourceType_type);defs.push_back(IFC4X3_RC1_IfcLaborResourceType_type);defs.push_back(IFC4X3_RC1_IfcSubContractResourceType_type); - IFC4X3_RC1_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcConstructionResource_type); - IFC4X3_RC1_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcConstructionResourceType_type); - IFC4X3_RC1_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcContext_type);defs.push_back(IFC4X3_RC1_IfcObject_type);defs.push_back(IFC4X3_RC1_IfcTypeObject_type); - IFC4X3_RC1_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcContextDependentUnit_type);defs.push_back(IFC4X3_RC1_IfcConversionBasedUnit_type);defs.push_back(IFC4X3_RC1_IfcSIUnit_type); - IFC4X3_RC1_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type); - IFC4X3_RC1_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcCostValue_type); - IFC4X3_RC1_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcCsgSolid_type);defs.push_back(IFC4X3_RC1_IfcManifoldSolidBrep_type);defs.push_back(IFC4X3_RC1_IfcSectionedSolid_type);defs.push_back(IFC4X3_RC1_IfcSweptAreaSolid_type);defs.push_back(IFC4X3_RC1_IfcSweptDiskSolid_type); - IFC4X3_RC1_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcCurveStyle_type);defs.push_back(IFC4X3_RC1_IfcFillAreaStyle_type);defs.push_back(IFC4X3_RC1_IfcSurfaceStyle_type);defs.push_back(IFC4X3_RC1_IfcTextStyle_type); - IFC4X3_RC1_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcCylindricalSurface_type);defs.push_back(IFC4X3_RC1_IfcPlane_type);defs.push_back(IFC4X3_RC1_IfcSphericalSurface_type);defs.push_back(IFC4X3_RC1_IfcToroidalSurface_type); - IFC4X3_RC1_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type);defs.push_back(IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type);defs.push_back(IFC4X3_RC1_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X3_RC1_IfcRevolvedAreaSolid_type); - IFC4X3_RC1_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcDistributionChamberElement_type);defs.push_back(IFC4X3_RC1_IfcEnergyConversionDevice_type);defs.push_back(IFC4X3_RC1_IfcFlowController_type);defs.push_back(IFC4X3_RC1_IfcFlowFitting_type);defs.push_back(IFC4X3_RC1_IfcFlowMovingDevice_type);defs.push_back(IFC4X3_RC1_IfcFlowSegment_type);defs.push_back(IFC4X3_RC1_IfcFlowStorageDevice_type);defs.push_back(IFC4X3_RC1_IfcFlowTerminal_type);defs.push_back(IFC4X3_RC1_IfcFlowTreatmentDevice_type); - IFC4X3_RC1_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC1_IfcDistributionChamberElementType_type);defs.push_back(IFC4X3_RC1_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X3_RC1_IfcFlowControllerType_type);defs.push_back(IFC4X3_RC1_IfcFlowFittingType_type);defs.push_back(IFC4X3_RC1_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X3_RC1_IfcFlowSegmentType_type);defs.push_back(IFC4X3_RC1_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC1_IfcFlowTerminalType_type);defs.push_back(IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC1_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcDistributionCircuit_type); - IFC4X3_RC1_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcDistributionControlElement_type);defs.push_back(IFC4X3_RC1_IfcDistributionFlowElement_type); - IFC4X3_RC1_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcDistributionControlElementType_type);defs.push_back(IFC4X3_RC1_IfcDistributionFlowElementType_type); - IFC4X3_RC1_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcDistributionPort_type); - IFC4X3_RC1_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcDoorLiningProperties_type);defs.push_back(IFC4X3_RC1_IfcDoorPanelProperties_type);defs.push_back(IFC4X3_RC1_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X3_RC1_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X3_RC1_IfcWindowLiningProperties_type);defs.push_back(IFC4X3_RC1_IfcWindowPanelProperties_type); - IFC4X3_RC1_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcDoorStandardCase_type); - IFC4X3_RC1_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcDoorStyle_type);defs.push_back(IFC4X3_RC1_IfcElementType_type);defs.push_back(IFC4X3_RC1_IfcSpatialElementType_type);defs.push_back(IFC4X3_RC1_IfcWindowStyle_type); - IFC4X3_RC1_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcDraughtingPreDefinedColour_type); - IFC4X3_RC1_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type); - IFC4X3_RC1_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcDuctSilencer_type);defs.push_back(IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type);defs.push_back(IFC4X3_RC1_IfcFilter_type);defs.push_back(IFC4X3_RC1_IfcInterceptor_type); - IFC4X3_RC1_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcDuctSilencerType_type);defs.push_back(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type);defs.push_back(IFC4X3_RC1_IfcFilterType_type);defs.push_back(IFC4X3_RC1_IfcInterceptorType_type); - IFC4X3_RC1_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcEarthworksCut_type);defs.push_back(IFC4X3_RC1_IfcOpeningElement_type);defs.push_back(IFC4X3_RC1_IfcVoidingFeature_type); - IFC4X3_RC1_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcEarthworksFill_type);defs.push_back(IFC4X3_RC1_IfcReinforcedSoil_type); - IFC4X3_RC1_IfcEarthworksElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcEdgeCurve_type);defs.push_back(IFC4X3_RC1_IfcOrientedEdge_type);defs.push_back(IFC4X3_RC1_IfcSubedge_type); - IFC4X3_RC1_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcEdgeLoop_type);defs.push_back(IFC4X3_RC1_IfcPolyLoop_type);defs.push_back(IFC4X3_RC1_IfcVertexLoop_type); - IFC4X3_RC1_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X3_RC1_IfcTank_type); - IFC4X3_RC1_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC1_IfcTankType_type); - IFC4X3_RC1_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcElementQuantity_type); - IFC4X3_RC1_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcEvent_type);defs.push_back(IFC4X3_RC1_IfcProcedure_type);defs.push_back(IFC4X3_RC1_IfcTask_type); - IFC4X3_RC1_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcEventTime_type);defs.push_back(IFC4X3_RC1_IfcLagTime_type);defs.push_back(IFC4X3_RC1_IfcResourceTime_type);defs.push_back(IFC4X3_RC1_IfcTaskTime_type);defs.push_back(IFC4X3_RC1_IfcWorkTime_type); - IFC4X3_RC1_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcEventType_type);defs.push_back(IFC4X3_RC1_IfcProcedureType_type);defs.push_back(IFC4X3_RC1_IfcTaskType_type); - IFC4X3_RC1_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcExtendedProperties_type);defs.push_back(IFC4X3_RC1_IfcPreDefinedProperties_type);defs.push_back(IFC4X3_RC1_IfcProperty_type);defs.push_back(IFC4X3_RC1_IfcPropertyEnumeration_type); - IFC4X3_RC1_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcExternalSpatialElement_type); - IFC4X3_RC1_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X3_RC1_IfcSpatialStructureElement_type);defs.push_back(IFC4X3_RC1_IfcSpatialZone_type); - IFC4X3_RC1_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type); - IFC4X3_RC1_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcFaceOuterBound_type); - IFC4X3_RC1_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcFaceSurface_type); - IFC4X3_RC1_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcFacetedBrepWithVoids_type); - IFC4X3_RC1_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcFailureConnectionCondition_type);defs.push_back(IFC4X3_RC1_IfcSlippageConnectionCondition_type); - IFC4X3_RC1_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcFeatureElementAddition_type);defs.push_back(IFC4X3_RC1_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X3_RC1_IfcSurfaceFeature_type); - IFC4X3_RC1_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcFurniture_type);defs.push_back(IFC4X3_RC1_IfcSystemFurnitureElement_type); - IFC4X3_RC1_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcFurnitureType_type);defs.push_back(IFC4X3_RC1_IfcSystemFurnitureElementType_type); - IFC4X3_RC1_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcGeometricCurveSet_type); - IFC4X3_RC1_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcGeometricRepresentationContext_type); - IFC4X3_RC1_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X3_RC1_IfcMappedItem_type);defs.push_back(IFC4X3_RC1_IfcStyledItem_type);defs.push_back(IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - IFC4X3_RC1_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcGeometricRepresentationSubContext_type); - IFC4X3_RC1_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcGeotechnicalAssembly_type);defs.push_back(IFC4X3_RC1_IfcGeotechnicalStratum_type); - IFC4X3_RC1_IfcGeotechnicalElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcGrid_type);defs.push_back(IFC4X3_RC1_IfcLinearPositioningElement_type);defs.push_back(IFC4X3_RC1_IfcReferent_type); - IFC4X3_RC1_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcGridPlacement_type);defs.push_back(IFC4X3_RC1_IfcLinearPlacement_type);defs.push_back(IFC4X3_RC1_IfcLocalPlacement_type); - IFC4X3_RC1_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type); - IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X3_RC1_IfcTessellatedFaceSet_type); - IFC4X3_RC1_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X3_RC1_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcIndexedTextureMap_type);defs.push_back(IFC4X3_RC1_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X3_RC1_IfcTextureMap_type); - IFC4X3_RC1_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcIndexedTriangleTextureMap_type); - IFC4X3_RC1_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcIntersectionCurve_type);defs.push_back(IFC4X3_RC1_IfcSeamCurve_type); - IFC4X3_RC1_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcIrregularTimeSeries_type);defs.push_back(IFC4X3_RC1_IfcRegularTimeSeries_type); - IFC4X3_RC1_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcLightSourceAmbient_type);defs.push_back(IFC4X3_RC1_IfcLightSourceDirectional_type);defs.push_back(IFC4X3_RC1_IfcLightSourceGoniometric_type);defs.push_back(IFC4X3_RC1_IfcLightSourcePositional_type); - IFC4X3_RC1_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcLightSourceSpot_type); - IFC4X3_RC1_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcLinearPlacementWithInclination_type);defs.push_back(IFC4X3_RC1_IfcLinearSpanPlacement_type); - IFC4X3_RC1_IfcLinearPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcMapConversion_type); - IFC4X3_RC1_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC1_IfcMaterial_type);defs.push_back(IFC4X3_RC1_IfcMaterialConstituent_type);defs.push_back(IFC4X3_RC1_IfcMaterialConstituentSet_type);defs.push_back(IFC4X3_RC1_IfcMaterialLayer_type);defs.push_back(IFC4X3_RC1_IfcMaterialLayerSet_type);defs.push_back(IFC4X3_RC1_IfcMaterialProfile_type);defs.push_back(IFC4X3_RC1_IfcMaterialProfileSet_type); - IFC4X3_RC1_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X3_RC1_IfcProductDefinitionShape_type); - IFC4X3_RC1_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X3_RC1_IfcMaterialProfileSetUsage_type); - IFC4X3_RC1_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcMaterialLayerWithOffsets_type); - IFC4X3_RC1_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type); - IFC4X3_RC1_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcMaterialProfileWithOffsets_type); - IFC4X3_RC1_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcMaterialProperties_type);defs.push_back(IFC4X3_RC1_IfcProfileProperties_type); - IFC4X3_RC1_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcMemberStandardCase_type); - IFC4X3_RC1_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcMetric_type);defs.push_back(IFC4X3_RC1_IfcObjective_type); - IFC4X3_RC1_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcMirroredProfileDef_type); - IFC4X3_RC1_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcObjectDefinition_type);defs.push_back(IFC4X3_RC1_IfcPropertyDefinition_type);defs.push_back(IFC4X3_RC1_IfcRelationship_type); - IFC4X3_RC1_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcOccupant_type); - IFC4X3_RC1_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcOffsetCurve2D_type);defs.push_back(IFC4X3_RC1_IfcOffsetCurve3D_type);defs.push_back(IFC4X3_RC1_IfcOffsetCurveByDistances_type); - IFC4X3_RC1_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcOpeningStandardCase_type); - IFC4X3_RC1_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcOuterBoundaryCurve_type); - IFC4X3_RC1_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC1_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcPlanarBox_type); - IFC4X3_RC1_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcPlant_type); - IFC4X3_RC1_IfcGeographicElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcPlateStandardCase_type); - IFC4X3_RC1_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcPolygonalFaceSet_type);defs.push_back(IFC4X3_RC1_IfcTriangulatedFaceSet_type); - IFC4X3_RC1_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcPostalAddress_type);defs.push_back(IFC4X3_RC1_IfcTelecomAddress_type); - IFC4X3_RC1_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcPreDefinedColour_type);defs.push_back(IFC4X3_RC1_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X3_RC1_IfcPreDefinedTextFont_type); - IFC4X3_RC1_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X3_RC1_IfcPropertySet_type);defs.push_back(IFC4X3_RC1_IfcQuantitySet_type); - IFC4X3_RC1_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcPresentationLayerWithStyle_type); - IFC4X3_RC1_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcProject_type);defs.push_back(IFC4X3_RC1_IfcProjectLibrary_type); - IFC4X3_RC1_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcProjectedCRS_type); - IFC4X3_RC1_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcProjectionElement_type); - IFC4X3_RC1_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcPropertyBoundedValue_type);defs.push_back(IFC4X3_RC1_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X3_RC1_IfcPropertyListValue_type);defs.push_back(IFC4X3_RC1_IfcPropertyReferenceValue_type);defs.push_back(IFC4X3_RC1_IfcPropertySingleValue_type);defs.push_back(IFC4X3_RC1_IfcPropertyTableValue_type); - IFC4X3_RC1_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcPropertySetDefinition_type);defs.push_back(IFC4X3_RC1_IfcPropertyTemplateDefinition_type); - IFC4X3_RC1_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcPropertySetTemplate_type);defs.push_back(IFC4X3_RC1_IfcPropertyTemplate_type); - IFC4X3_RC1_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcQuantityArea_type);defs.push_back(IFC4X3_RC1_IfcQuantityCount_type);defs.push_back(IFC4X3_RC1_IfcQuantityLength_type);defs.push_back(IFC4X3_RC1_IfcQuantityTime_type);defs.push_back(IFC4X3_RC1_IfcQuantityVolume_type);defs.push_back(IFC4X3_RC1_IfcQuantityWeight_type); - IFC4X3_RC1_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type); - IFC4X3_RC1_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X3_RC1_IfcRoundedRectangleProfileDef_type); - IFC4X3_RC1_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcReinforcementBarProperties_type);defs.push_back(IFC4X3_RC1_IfcSectionProperties_type);defs.push_back(IFC4X3_RC1_IfcSectionReinforcementProperties_type); - IFC4X3_RC1_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcReinforcingBar_type);defs.push_back(IFC4X3_RC1_IfcReinforcingMesh_type);defs.push_back(IFC4X3_RC1_IfcTendon_type);defs.push_back(IFC4X3_RC1_IfcTendonAnchor_type);defs.push_back(IFC4X3_RC1_IfcTendonConduit_type); - IFC4X3_RC1_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcReinforcingBarType_type);defs.push_back(IFC4X3_RC1_IfcReinforcingMeshType_type);defs.push_back(IFC4X3_RC1_IfcTendonAnchorType_type);defs.push_back(IFC4X3_RC1_IfcTendonConduitType_type);defs.push_back(IFC4X3_RC1_IfcTendonType_type); - IFC4X3_RC1_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcRelAggregates_type);defs.push_back(IFC4X3_RC1_IfcRelNests_type);defs.push_back(IFC4X3_RC1_IfcRelProjectsElement_type);defs.push_back(IFC4X3_RC1_IfcRelVoidsElement_type); - IFC4X3_RC1_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcRelAssigns_type);defs.push_back(IFC4X3_RC1_IfcRelAssociates_type);defs.push_back(IFC4X3_RC1_IfcRelConnects_type);defs.push_back(IFC4X3_RC1_IfcRelDeclares_type);defs.push_back(IFC4X3_RC1_IfcRelDecomposes_type);defs.push_back(IFC4X3_RC1_IfcRelDefines_type); - IFC4X3_RC1_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC1_IfcRelAssignsToActor_type);defs.push_back(IFC4X3_RC1_IfcRelAssignsToControl_type);defs.push_back(IFC4X3_RC1_IfcRelAssignsToGroup_type);defs.push_back(IFC4X3_RC1_IfcRelAssignsToProcess_type);defs.push_back(IFC4X3_RC1_IfcRelAssignsToProduct_type);defs.push_back(IFC4X3_RC1_IfcRelAssignsToResource_type); - IFC4X3_RC1_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type); - IFC4X3_RC1_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC1_IfcRelAssociatesApproval_type);defs.push_back(IFC4X3_RC1_IfcRelAssociatesClassification_type);defs.push_back(IFC4X3_RC1_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X3_RC1_IfcRelAssociatesDocument_type);defs.push_back(IFC4X3_RC1_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X3_RC1_IfcRelAssociatesMaterial_type);defs.push_back(IFC4X3_RC1_IfcRelAssociatesProfileDef_type); - IFC4X3_RC1_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC1_IfcRelConnectsElements_type);defs.push_back(IFC4X3_RC1_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X3_RC1_IfcRelConnectsPorts_type);defs.push_back(IFC4X3_RC1_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X3_RC1_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X3_RC1_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X3_RC1_IfcRelCoversBldgElements_type);defs.push_back(IFC4X3_RC1_IfcRelCoversSpaces_type);defs.push_back(IFC4X3_RC1_IfcRelFillsElement_type);defs.push_back(IFC4X3_RC1_IfcRelFlowControlElements_type);defs.push_back(IFC4X3_RC1_IfcRelInterferesElements_type);defs.push_back(IFC4X3_RC1_IfcRelPositions_type);defs.push_back(IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X3_RC1_IfcRelSequence_type);defs.push_back(IFC4X3_RC1_IfcRelServicesBuildings_type);defs.push_back(IFC4X3_RC1_IfcRelSpaceBoundary_type); - IFC4X3_RC1_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcRelConnectsPathElements_type);defs.push_back(IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type); - IFC4X3_RC1_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRelConnectsWithEccentricity_type); - IFC4X3_RC1_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC1_IfcRelDefinesByObject_type);defs.push_back(IFC4X3_RC1_IfcRelDefinesByProperties_type);defs.push_back(IFC4X3_RC1_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X3_RC1_IfcRelDefinesByType_type); - IFC4X3_RC1_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC1_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type); - IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type); - IFC4X3_RC1_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type); - IFC4X3_RC1_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcSectionedSolidHorizontal_type); - IFC4X3_RC1_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcShapeModel_type);defs.push_back(IFC4X3_RC1_IfcStyleModel_type); - IFC4X3_RC1_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcShapeRepresentation_type);defs.push_back(IFC4X3_RC1_IfcTopologyRepresentation_type); - IFC4X3_RC1_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcSlabElementedCase_type);defs.push_back(IFC4X3_RC1_IfcSlabStandardCase_type); - IFC4X3_RC1_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcSolidStratum_type);defs.push_back(IFC4X3_RC1_IfcVoidStratum_type);defs.push_back(IFC4X3_RC1_IfcWaterStratum_type); - IFC4X3_RC1_IfcGeotechnicalStratum_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcSpaceType_type); - IFC4X3_RC1_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcSpatialStructureElementType_type);defs.push_back(IFC4X3_RC1_IfcSpatialZoneType_type); - IFC4X3_RC1_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcStructuralAction_type);defs.push_back(IFC4X3_RC1_IfcStructuralReaction_type); - IFC4X3_RC1_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcStructuralConnection_type);defs.push_back(IFC4X3_RC1_IfcStructuralMember_type); - IFC4X3_RC1_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcStructuralCurveAction_type);defs.push_back(IFC4X3_RC1_IfcStructuralPointAction_type);defs.push_back(IFC4X3_RC1_IfcStructuralSurfaceAction_type); - IFC4X3_RC1_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcStructuralCurveConnection_type);defs.push_back(IFC4X3_RC1_IfcStructuralPointConnection_type);defs.push_back(IFC4X3_RC1_IfcStructuralSurfaceConnection_type); - IFC4X3_RC1_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcStructuralCurveMember_type);defs.push_back(IFC4X3_RC1_IfcStructuralSurfaceMember_type); - IFC4X3_RC1_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralCurveMemberVarying_type); - IFC4X3_RC1_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcStructuralCurveReaction_type);defs.push_back(IFC4X3_RC1_IfcStructuralPointReaction_type);defs.push_back(IFC4X3_RC1_IfcStructuralSurfaceReaction_type); - IFC4X3_RC1_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralLinearAction_type); - IFC4X3_RC1_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralLoadCase_type); - IFC4X3_RC1_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X3_RC1_IfcStructuralLoadOrResult_type); - IFC4X3_RC1_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC1_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X3_RC1_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X3_RC1_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X3_RC1_IfcStructuralLoadTemperature_type); - IFC4X3_RC1_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type); - IFC4X3_RC1_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcStructuralLoadStatic_type);defs.push_back(IFC4X3_RC1_IfcSurfaceReinforcementArea_type); - IFC4X3_RC1_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralPlanarAction_type); - IFC4X3_RC1_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type); - IFC4X3_RC1_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcStyledRepresentation_type); - IFC4X3_RC1_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X3_RC1_IfcSurfaceOfRevolution_type); - IFC4X3_RC1_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcSurfaceStyleRendering_type); - IFC4X3_RC1_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type); - IFC4X3_RC1_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcTaskTimeRecurring_type); - IFC4X3_RC1_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcTextLiteralWithExtent_type); - IFC4X3_RC1_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcTextStyleFontModel_type); - IFC4X3_RC1_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type); - IFC4X3_RC1_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC1_IfcTypeProcess_type);defs.push_back(IFC4X3_RC1_IfcTypeProduct_type);defs.push_back(IFC4X3_RC1_IfcTypeResource_type); - IFC4X3_RC1_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcVertexPoint_type); - IFC4X3_RC1_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcWallElementedCase_type);defs.push_back(IFC4X3_RC1_IfcWallStandardCase_type); - IFC4X3_RC1_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC1_IfcWindowStandardCase_type); - IFC4X3_RC1_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC1_IfcWorkPlan_type);defs.push_back(IFC4X3_RC1_IfcWorkSchedule_type); - IFC4X3_RC1_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X3_RC1_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[77], + strings[78], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAlignmentTypeEnum_type = new enumeration_type(strings[79], 44, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[80], 45, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[81], 46, { + strings[82], + strings[83], + strings[84], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[85], 47, { + strings[86], + strings[87], + strings[88], + strings[89], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAngularVelocityMeasure_type = new type_declaration(strings[90], 48, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcAnnotationTypeEnum_type = new enumeration_type(strings[91], 51, { + strings[92], + strings[93], + strings[94], + strings[95], + strings[96], + strings[97], + strings[98], + strings[99], + strings[100], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcAreaDensityMeasure_type = new type_declaration(strings[101], 61, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcAreaMeasure_type = new type_declaration(strings[102], 62, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[103], 63, { + strings[104], + strings[105], + strings[106], + strings[107] + }); + IFC4X3_RC1_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[108], 64, { + strings[48], + strings[109], + strings[9] + }); + IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[110], 69, { + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116], + strings[117], + strings[118], + strings[119], + strings[120], + strings[121], + strings[122], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBSplineCurveForm_type = new enumeration_type(strings[123], 113, { + strings[124], + strings[125], + strings[126], + strings[127], + strings[128], + strings[129] + }); + IFC4X3_RC1_IfcBSplineSurfaceForm_type = new enumeration_type(strings[130], 116, { + strings[131], + strings[132], + strings[133], + strings[134], + strings[135], + strings[136], + strings[137], + strings[138], + strings[139], + strings[140], + strings[129] + }); + IFC4X3_RC1_IfcBeamTypeEnum_type = new enumeration_type(strings[141], 78, { + strings[142], + strings[143], + strings[144], + strings[145], + strings[146], + strings[147], + strings[148], + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBearingTypeDisplacementEnum_type = new enumeration_type(strings[154], 81, { + strings[155], + strings[156], + strings[157], + strings[158], + strings[9] + }); + IFC4X3_RC1_IfcBearingTypeEnum_type = new enumeration_type(strings[159], 82, { + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165], + strings[166], + strings[167], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBenchmarkEnum_type = new enumeration_type(strings[168], 83, { + strings[169], + strings[170], + strings[171], + strings[172], + strings[173], + strings[174], + strings[175], + strings[176], + strings[177], + strings[178] + }); + IFC4X3_RC1_IfcBinary_type = new type_declaration(strings[179], 85, new simple_type(simple_type::binary_type)); + IFC4X3_RC1_IfcBoilerTypeEnum_type = new enumeration_type(strings[180], 90, { + strings[181], + strings[182], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBoolean_type = new type_declaration(strings[183], 91, new simple_type(simple_type::boolean_type)); + IFC4X3_RC1_IfcBooleanOperator_type = new enumeration_type(strings[184], 94, { + strings[185], + strings[186], + strings[187] + }); + IFC4X3_RC1_IfcBridgePartTypeEnum_type = new enumeration_type(strings[188], 110, { + strings[189], + strings[190], + strings[191], + strings[192], + strings[193], + strings[194], + strings[195], + strings[196], + strings[197], + strings[198], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBridgeTypeEnum_type = new enumeration_type(strings[199], 111, { + strings[200], + strings[201], + strings[202], + strings[203], + strings[204], + strings[205], + strings[206], + strings[207], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[208], 121, { + strings[209], + strings[210], + strings[211], + strings[212], + strings[213], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[214], 124, { + strings[215], + strings[216], + strings[217], + strings[218], + strings[219], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[220], 127, { + strings[221], + strings[192], + strings[222], + strings[223], + strings[224], + strings[23], + strings[225], + strings[226], + strings[227], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBuiltSystemTypeEnum_type = new enumeration_type(strings[228], 131, { + strings[225], + strings[229], + strings[223], + strings[230], + strings[227], + strings[192], + strings[222], + strings[224], + strings[221], + strings[231], + strings[23], + strings[226], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcBurnerTypeEnum_type = new enumeration_type(strings[232], 134, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[233], 137, { + strings[234], + strings[235], + strings[236], + strings[237], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[238], 140, { + strings[239], + strings[240], + strings[241], + strings[242], + strings[243], + strings[244], + strings[245], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCableFittingTypeEnum_type = new enumeration_type(strings[246], 143, { + strings[247], + strings[248], + strings[249], + strings[250], + strings[251], + strings[252], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[253], 146, { + strings[254], + strings[255], + strings[256], + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[262], + strings[263], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type = new enumeration_type(strings[264], 149, { + strings[265], + strings[266], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCardinalPointReference_type = new type_declaration(strings[267], 150, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcChangeActionEnum_type = new enumeration_type(strings[268], 161, { + strings[269], + strings[270], + strings[271], + strings[272], + strings[9] + }); + IFC4X3_RC1_IfcChillerTypeEnum_type = new enumeration_type(strings[273], 164, { + strings[274], + strings[275], + strings[276], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcChimneyTypeEnum_type = new enumeration_type(strings[277], 167, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCoilTypeEnum_type = new enumeration_type(strings[278], 181, { + strings[279], + strings[280], + strings[281], + strings[282], + strings[283], + strings[284], + strings[285], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcColumnTypeEnum_type = new enumeration_type(strings[286], 190, { + strings[287], + strings[288], + strings[289], + strings[290], + strings[291], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[292], 193, { + strings[293], + strings[294], + strings[4], + strings[295], + strings[296], + strings[297], + strings[298], + strings[299], + strings[300], + strings[301], + strings[302], + strings[303], + strings[304], + strings[305], + strings[306], + strings[307], + strings[308], + strings[309], + strings[310], + strings[311], + strings[312], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcComplexNumber_type = new type_declaration(strings[313], 194, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[314], 197, { + strings[315], + strings[316] + }); + IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[317], 202, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X3_RC1_IfcCompressorTypeEnum_type = new enumeration_type(strings[318], 205, { + strings[319], + strings[320], + strings[321], + strings[322], + strings[323], + strings[324], + strings[325], + strings[326], + strings[327], + strings[328], + strings[329], + strings[330], + strings[331], + strings[332], + strings[333], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCondenserTypeEnum_type = new enumeration_type(strings[334], 208, { + strings[274], + strings[335], + strings[275], + strings[336], + strings[337], + strings[338], + strings[339], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcConnectionTypeEnum_type = new enumeration_type(strings[340], 216, { + strings[341], + strings[342], + strings[343], + strings[9] + }); + IFC4X3_RC1_IfcConstraintEnum_type = new enumeration_type(strings[344], 219, { + strings[345], + strings[346], + strings[347], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[348], 222, { + strings[349], + strings[350], + strings[351], + strings[352], + strings[353], + strings[354], + strings[355], + strings[356], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[357], 225, { + strings[358], + strings[359], + strings[360], + strings[361], + strings[362], + strings[363], + strings[364], + strings[365], + strings[366], + strings[9], + strings[8] + }); + IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[367], 228, { + strings[368], + strings[369], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcContextDependentMeasure_type = new type_declaration(strings[370], 232, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcControllerTypeEnum_type = new enumeration_type(strings[371], 237, { + strings[372], + strings[373], + strings[374], + strings[375], + strings[376], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type = new enumeration_type(strings[377], 242, { + strings[378], + strings[379], + strings[380], + strings[381], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[382], 245, { + strings[383], + strings[384], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[385], 248, { + strings[386], + strings[387], + strings[388], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCostItemTypeEnum_type = new enumeration_type(strings[389], 253, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[390], 255, { + strings[391], + strings[392], + strings[393], + strings[394], + strings[395], + strings[396], + strings[397], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCountMeasure_type = new type_declaration(strings[398], 257, new simple_type(simple_type::number_type)); + IFC4X3_RC1_IfcCourseTypeEnum_type = new enumeration_type(strings[399], 260, { + strings[400], + strings[401], + strings[402], + strings[403], + strings[404], + strings[405], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCoveringTypeEnum_type = new enumeration_type(strings[406], 263, { + strings[407], + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[209], + strings[413], + strings[414], + strings[415], + strings[416], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[417], 266, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[418], 274, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcCurvatureMeasure_type = new type_declaration(strings[419], 275, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcCurveInterpolationEnum_type = new enumeration_type(strings[420], 280, { + strings[421], + strings[422], + strings[423], + strings[9] + }); + IFC4X3_RC1_IfcDamperTypeEnum_type = new enumeration_type(strings[424], 292, { + strings[425], + strings[426], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[432], + strings[433], + strings[434], + strings[435], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDataOriginEnum_type = new enumeration_type(strings[436], 293, { + strings[437], + strings[438], + strings[439], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDate_type = new type_declaration(strings[440], 294, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcDateTime_type = new type_declaration(strings[441], 295, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcDayInMonthNumber_type = new type_declaration(strings[442], 296, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcDayInWeekNumber_type = new type_declaration(strings[443], 297, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcDerivedUnitEnum_type = new enumeration_type(strings[444], 305, { + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[452], + strings[453], + strings[454], + strings[455], + strings[456], + strings[457], + strings[458], + strings[459], + strings[460], + strings[461], + strings[462], + strings[463], + strings[464], + strings[465], + strings[466], + strings[467], + strings[468], + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[477], + strings[478], + strings[479], + strings[480], + strings[481], + strings[482], + strings[483], + strings[484], + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[8] + }); + IFC4X3_RC1_IfcDescriptiveMeasure_type = new type_declaration(strings[497], 306, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcDimensionCount_type = new type_declaration(strings[498], 308, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcDirectionSenseEnum_type = new enumeration_type(strings[499], 310, { + strings[500], + strings[501] + }); + IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[502], 315, { + strings[503], + strings[504], + strings[505], + strings[506], + strings[507], + strings[508], + strings[509], + strings[510], + strings[511], + strings[512], + strings[513], + strings[514], + strings[515], + strings[516], + strings[517], + strings[518], + strings[519], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDistributionBoardTypeEnum_type = new enumeration_type(strings[520], 319, { + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[526], 322, { + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[535], 331, { + strings[536], + strings[537], + strings[538], + strings[539], + strings[540], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDistributionSystemEnum_type = new enumeration_type(strings[541], 333, { + strings[542], + strings[543], + strings[544], + strings[545], + strings[546], + strings[547], + strings[548], + strings[549], + strings[550], + strings[551], + strings[552], + strings[553], + strings[554], + strings[555], + strings[556], + strings[557], + strings[558], + strings[559], + strings[560], + strings[361], + strings[561], + strings[562], + strings[352], + strings[353], + strings[563], + strings[564], + strings[565], + strings[566], + strings[567], + strings[568], + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[120], + strings[574], + strings[575], + strings[576], + strings[577], + strings[578], + strings[579], + strings[580], + strings[581], + strings[582], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[583], 334, { + strings[584], + strings[585], + strings[586], + strings[587], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDocumentStatusEnum_type = new enumeration_type(strings[588], 339, { + strings[589], + strings[590], + strings[591], + strings[592], + strings[9] + }); + IFC4X3_RC1_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[593], 342, { + strings[594], + strings[595], + strings[596], + strings[597], + strings[598], + strings[599], + strings[600], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[601], 343, { + strings[602], + strings[603], + strings[604], + strings[9] + }); + IFC4X3_RC1_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[605], 347, { + strings[606], + strings[607], + strings[608], + strings[366], + strings[609], + strings[610], + strings[365], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[611], 348, { + strings[612], + strings[613], + strings[614], + strings[615], + strings[616], + strings[617], + strings[618], + strings[619], + strings[620], + strings[621], + strings[622], + strings[623], + strings[624], + strings[625], + strings[598], + strings[599], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDoorTypeEnum_type = new enumeration_type(strings[626], 350, { + strings[627], + strings[628], + strings[629], + strings[630], + strings[631], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[632], 351, { + strings[612], + strings[613], + strings[614], + strings[615], + strings[616], + strings[617], + strings[618], + strings[619], + strings[620], + strings[621], + strings[622], + strings[623], + strings[624], + strings[625], + strings[598], + strings[599], + strings[633], + strings[634], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDoseEquivalentMeasure_type = new type_declaration(strings[635], 352, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[636], 357, { + strings[234], + strings[247], + strings[248], + strings[249], + strings[250], + strings[637], + strings[251], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[638], 360, { + strings[639], + strings[640], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[641], 363, { + strings[642], + strings[643], + strings[644], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcDuration_type = new type_declaration(strings[645], 364, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcDynamicViscosityMeasure_type = new type_declaration(strings[646], 365, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcEarthworksCutTypeEnum_type = new enumeration_type(strings[647], 367, { + strings[533], + strings[648], + strings[649], + strings[650], + strings[651], + strings[652], + strings[653], + strings[654], + strings[655], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcEarthworksFillTypeEnum_type = new enumeration_type(strings[656], 370, { + strings[657], + strings[658], + strings[659], + strings[660], + strings[661], + strings[662], + strings[663], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[664], 376, { + strings[665], + strings[666], + strings[667], + strings[668], + strings[669], + strings[670], + strings[671], + strings[672], + strings[673], + strings[674], + strings[675], + strings[676], + strings[677], + strings[678], + strings[679], + strings[680], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[681], 377, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcElectricChargeMeasure_type = new type_declaration(strings[682], 378, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcElectricConductanceMeasure_type = new type_declaration(strings[683], 379, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcElectricCurrentMeasure_type = new type_declaration(strings[684], 380, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[685], 383, { + strings[522], + strings[525], + strings[523], + strings[521], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[686], 386, { + strings[687], + strings[688], + strings[689], + strings[690], + strings[691], + strings[692], + strings[693], + strings[694], + strings[695], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type(strings[696], 389, { + strings[697], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[698], 392, { + strings[699], + strings[700], + strings[701], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[702], 395, { + strings[703], + strings[704], + strings[705], + strings[706], + strings[707], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricResistanceMeasure_type = new type_declaration(strings[708], 396, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[709], 399, { + strings[710], + strings[711], + strings[712], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElectricVoltageMeasure_type = new type_declaration(strings[713], 400, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[714], 405, { + strings[715], + strings[716], + strings[717], + strings[718], + strings[205], + strings[719], + strings[720], + strings[721], + strings[207], + strings[189], + strings[193], + strings[195], + strings[722], + strings[190], + strings[723], + strings[724], + strings[725], + strings[726], + strings[727], + strings[728], + strings[729], + strings[730], + strings[731], + strings[732], + strings[733], + strings[734], + strings[735], + strings[736], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcElementCompositionEnum_type = new enumeration_type(strings[737], 408, { + strings[215], + strings[216], + strings[217] + }); + IFC4X3_RC1_IfcEnergyMeasure_type = new type_declaration(strings[738], 415, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcEngineTypeEnum_type = new enumeration_type(strings[739], 418, { + strings[740], + strings[741], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[742], 421, { + strings[743], + strings[744], + strings[745], + strings[746], + strings[747], + strings[748], + strings[749], + strings[750], + strings[751], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[752], 424, { + strings[753], + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[759], 427, { + strings[760], + strings[761], + strings[762], + strings[763], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcEventTypeEnum_type = new enumeration_type(strings[764], 429, { + strings[765], + strings[766], + strings[767], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[768], 438, { + strings[769], + strings[770], + strings[771], + strings[772], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type = new enumeration_type(strings[773], 451, { + strings[774], + strings[775], + strings[250], + strings[776], + strings[777], + strings[196], + strings[778], + strings[197], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFacilityUsageEnum_type = new enumeration_type(strings[779], 453, { + strings[780], + strings[781], + strings[782], + strings[783], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFanTypeEnum_type = new enumeration_type(strings[784], 457, { + strings[785], + strings[786], + strings[787], + strings[788], + strings[789], + strings[790], + strings[791], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFastenerTypeEnum_type = new enumeration_type(strings[792], 460, { + strings[793], + strings[794], + strings[795], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFilterTypeEnum_type = new enumeration_type(strings[796], 470, { + strings[797], + strings[798], + strings[799], + strings[800], + strings[801], + strings[802], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[803], 473, { + strings[804], + strings[805], + strings[806], + strings[807], + strings[808], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFlowDirectionEnum_type = new enumeration_type(strings[809], 477, { + strings[810], + strings[811], + strings[812], + strings[9] + }); + IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[813], 482, { + strings[814], + strings[815], + strings[816], + strings[817], + strings[818], + strings[819], + strings[820], + strings[821], + strings[822], + strings[823], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[824], 485, { + strings[825], + strings[826], + strings[827], + strings[828], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcFontStyle_type = new type_declaration(strings[829], 496, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcFontVariant_type = new type_declaration(strings[830], 497, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcFontWeight_type = new type_declaration(strings[831], 498, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcFootingTypeEnum_type = new enumeration_type(strings[832], 501, { + strings[833], + strings[834], + strings[835], + strings[836], + strings[837], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcForceMeasure_type = new type_declaration(strings[838], 502, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcFrequencyMeasure_type = new type_declaration(strings[839], 503, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcFurnitureTypeEnum_type = new enumeration_type(strings[840], 508, { + strings[841], + strings[842], + strings[843], + strings[844], + strings[845], + strings[846], + strings[847], + strings[848], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[849], 511, { + strings[850], + strings[851], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcGeometricProjectionEnum_type = new enumeration_type(strings[852], 513, { + strings[853], + strings[854], + strings[855], + strings[856], + strings[857], + strings[858], + strings[859], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[860], 525, { + strings[861], + strings[862] + }); + IFC4X3_RC1_IfcGloballyUniqueId_type = new type_declaration(strings[863], 524, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcGridTypeEnum_type = new enumeration_type(strings[864], 530, { + strings[643], + strings[865], + strings[866], + strings[867], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[868], 536, { + strings[869], + strings[870], + strings[871], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[872], 537, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcHeatingValueMeasure_type = new type_declaration(strings[873], 538, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcHumidifierTypeEnum_type = new enumeration_type(strings[874], 541, { + strings[875], + strings[876], + strings[877], + strings[878], + strings[879], + strings[880], + strings[881], + strings[882], + strings[883], + strings[884], + strings[885], + strings[886], + strings[887], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcIdentifier_type = new type_declaration(strings[888], 542, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcIlluminanceMeasure_type = new type_declaration(strings[889], 543, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type(strings[890], 547, { + strings[891], + strings[892], + strings[893], + strings[894], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcInductanceMeasure_type = new type_declaration(strings[895], 556, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcInteger_type = new type_declaration(strings[896], 557, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcIntegerCountRateMeasure_type = new type_declaration(strings[897], 558, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcInterceptorTypeEnum_type = new enumeration_type(strings[898], 561, { + strings[899], + strings[900], + strings[565], + strings[901], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcInternalOrExternalEnum_type = new enumeration_type(strings[902], 563, { + strings[903], + strings[769], + strings[770], + strings[771], + strings[772], + strings[9] + }); + IFC4X3_RC1_IfcInventoryTypeEnum_type = new enumeration_type(strings[904], 566, { + strings[905], + strings[906], + strings[907], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcIonConcentrationMeasure_type = new type_declaration(strings[908], 567, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[909], 571, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[910], 574, { + strings[551], + strings[911], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcKinematicViscosityMeasure_type = new type_declaration(strings[912], 577, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcKnotType_type = new enumeration_type(strings[913], 578, { + strings[914], + strings[915], + strings[916], + strings[129] + }); + IFC4X3_RC1_IfcLabel_type = new type_declaration(strings[917], 579, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[918], 582, { + strings[919], + strings[920], + strings[921], + strings[359], + strings[360], + strings[922], + strings[923], + strings[408], + strings[924], + strings[925], + strings[926], + strings[363], + strings[927], + strings[354], + strings[928], + strings[410], + strings[929], + strings[930], + strings[931], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcLampTypeEnum_type = new enumeration_type(strings[932], 586, { + strings[933], + strings[934], + strings[935], + strings[936], + strings[937], + strings[938], + strings[939], + strings[940], + strings[941], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcLanguageId_type = new type_declaration(strings[942], 587, new named_type(IFC4X3_RC1_IfcIdentifier_type)); + IFC4X3_RC1_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[943], 589, { + strings[944], + strings[945], + strings[946] + }); + IFC4X3_RC1_IfcLengthMeasure_type = new type_declaration(strings[947], 590, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[948], 594, { + strings[949], + strings[950], + strings[951], + strings[9] + }); + IFC4X3_RC1_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[952], 597, { + strings[933], + strings[934], + strings[936], + strings[937], + strings[953], + strings[954], + strings[955], + strings[956], + strings[939], + strings[941], + strings[9] + }); + IFC4X3_RC1_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[957], 600, { + strings[958], + strings[959], + strings[960], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcLinearForceMeasure_type = new type_declaration(strings[961], 611, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLinearMomentMeasure_type = new type_declaration(strings[962], 612, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLinearStiffnessMeasure_type = new type_declaration(strings[963], 617, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLinearVelocityMeasure_type = new type_declaration(strings[964], 618, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type = new enumeration_type(strings[965], 623, { + strings[966], + strings[806], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[967], 624, { + strings[968], + strings[969], + strings[970], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcLogical_type = new type_declaration(strings[971], 626, new simple_type(simple_type::logical_type)); + IFC4X3_RC1_IfcLogicalOperatorEnum_type = new enumeration_type(strings[972], 627, { + strings[973], + strings[974], + strings[975], + strings[976], + strings[977] + }); + IFC4X3_RC1_IfcLuminousFluxMeasure_type = new type_declaration(strings[978], 630, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[979], 631, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcLuminousIntensityMeasure_type = new type_declaration(strings[980], 632, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[981], 633, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMagneticFluxMeasure_type = new type_declaration(strings[982], 634, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMarineFacilityTypeEnum_type = new enumeration_type(strings[983], 639, { + strings[984], + strings[985], + strings[660], + strings[986], + strings[987], + strings[988], + strings[989], + strings[990], + strings[991], + strings[992], + strings[993], + strings[994], + strings[995], + strings[996], + strings[997], + strings[998], + strings[999], + strings[1000], + strings[1001], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcMarinePartTypeEnum_type = new enumeration_type(strings[1002], 640, { + strings[1003], + strings[1004], + strings[1005], + strings[403], + strings[1006], + strings[1007], + strings[1008], + strings[1009], + strings[1010], + strings[1011], + strings[1012], + strings[1013], + strings[1014], + strings[1015], + strings[1016], + strings[1017], + strings[1018], + strings[1019], + strings[405], + strings[1020], + strings[1021], + strings[1022], + strings[1023], + strings[1024], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcMassDensityMeasure_type = new type_declaration(strings[1025], 641, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMassFlowRateMeasure_type = new type_declaration(strings[1026], 642, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMassMeasure_type = new type_declaration(strings[1027], 643, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMassPerLengthMeasure_type = new type_declaration(strings[1028], 644, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[1029], 669, { + strings[1030], + strings[1031], + strings[1032], + strings[1033], + strings[1034], + strings[1035], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[1041], + strings[1042], + strings[1043], + strings[1044], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[1045], 672, { + strings[1046], + strings[1047], + strings[1048], + strings[1049], + strings[1050], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcMemberTypeEnum_type = new enumeration_type(strings[1051], 676, { + strings[1052], + strings[1053], + strings[1054], + strings[1055], + strings[1056], + strings[869], + strings[6], + strings[1057], + strings[1058], + strings[1059], + strings[1060], + strings[1061], + strings[1062], + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[1067], + strings[1068], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type(strings[1069], 682, { + strings[1070], + strings[1071], + strings[1072], + strings[1073], + strings[1074], + strings[1075], + strings[1076], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[1077], 683, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[1078], 684, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[1079], 685, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[1080], 686, { + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[1081], 687, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[1082], 688, { + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[1083], 689, { + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X3_RC1_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[1084], 690, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMolecularWeightMeasure_type = new type_declaration(strings[1085], 691, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[1086], 692, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMonetaryMeasure_type = new type_declaration(strings[1087], 693, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcMonthInYearNumber_type = new type_declaration(strings[1088], 695, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcMooringDeviceTypeEnum_type = new enumeration_type(strings[1089], 698, { + strings[1090], + strings[1091], + strings[1092], + strings[1093], + strings[1094], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[1095], 701, { + strings[1096], + strings[1097], + strings[1098], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcNavigationElementTypeEnum_type = new enumeration_type(strings[1099], 705, { + strings[1100], + strings[1101], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[1102], 706, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)); + IFC4X3_RC1_IfcNullStyle_type = new enumeration_type(strings[1103], 708, { + strings[1104] + }); + IFC4X3_RC1_IfcNumericMeasure_type = new type_declaration(strings[1105], 709, new simple_type(simple_type::number_type)); + IFC4X3_RC1_IfcObjectTypeEnum_type = new enumeration_type(strings[1106], 716, { + strings[1107], + strings[1108], + strings[549], + strings[1109], + strings[1110], + strings[1111], + strings[1112], + strings[9] + }); + IFC4X3_RC1_IfcObjectiveEnum_type = new enumeration_type(strings[1113], 713, { + strings[1114], + strings[1115], + strings[1116], + strings[769], + strings[1117], + strings[1118], + strings[1119], + strings[1120], + strings[1121], + strings[1122], + strings[1123], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcOccupantTypeEnum_type = new enumeration_type(strings[1124], 718, { + strings[1125], + strings[1126], + strings[1127], + strings[1128], + strings[1129], + strings[1130], + strings[1131], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[1132], 725, { + strings[1133], + strings[1134], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcOutletTypeEnum_type = new enumeration_type(strings[1135], 735, { + strings[1136], + strings[1137], + strings[1138], + strings[1139], + strings[1140], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPHMeasure_type = new type_declaration(strings[1141], 751, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcParameterValue_type = new type_declaration(strings[1142], 738, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[1143], 744, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[1144], 745, { + strings[1145], + strings[1146], + strings[1147], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPermitTypeEnum_type = new enumeration_type(strings[1148], 748, { + strings[1149], + strings[1150], + strings[1151], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[1152], 753, { + strings[1153], + strings[1154], + strings[9] + }); + IFC4X3_RC1_IfcPileConstructionEnum_type = new enumeration_type(strings[1155], 757, { + strings[1156], + strings[1157], + strings[1158], + strings[1159], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPileTypeEnum_type = new enumeration_type(strings[1160], 759, { + strings[1161], + strings[1162], + strings[1163], + strings[1164], + strings[1165], + strings[1166], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[1167], 762, { + strings[234], + strings[247], + strings[248], + strings[249], + strings[250], + strings[637], + strings[251], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[1168], 765, { + strings[203], + strings[640], + strings[639], + strings[1169], + strings[1170], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPlanarForceMeasure_type = new type_declaration(strings[1171], 770, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcPlaneAngleMeasure_type = new type_declaration(strings[1172], 772, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcPlateTypeEnum_type = new enumeration_type(strings[1173], 777, { + strings[1174], + strings[1175], + strings[1176], + strings[1177], + strings[1178], + strings[1179], + strings[1180], + strings[1181], + strings[1182], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPositiveInteger_type = new type_declaration(strings[1183], 788, new named_type(IFC4X3_RC1_IfcInteger_type)); + IFC4X3_RC1_IfcPositiveLengthMeasure_type = new type_declaration(strings[1184], 789, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)); + IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[1185], 790, new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type)); + IFC4X3_RC1_IfcPowerMeasure_type = new type_declaration(strings[1186], 793, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[1187], 800, { + strings[1188], + strings[1189], + strings[1190] + }); + IFC4X3_RC1_IfcPresentableText_type = new type_declaration(strings[1191], 801, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcPressureMeasure_type = new type_declaration(strings[1192], 808, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcProcedureTypeEnum_type = new enumeration_type(strings[1193], 811, { + strings[1194], + strings[1195], + strings[1196], + strings[1197], + strings[1198], + strings[1199], + strings[1200], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcProfileTypeEnum_type = new enumeration_type(strings[1201], 821, { + strings[1202], + strings[1203] + }); + IFC4X3_RC1_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[1204], 829, { + strings[1205], + strings[1206], + strings[1207], + strings[1208], + strings[1209], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[1210], 824, { + strings[1211], + strings[1212] + }); + IFC4X3_RC1_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[1213], 826, { + strings[1214], + strings[1215], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[1216], 844, { + strings[1217], + strings[1218], + strings[1219], + strings[1220], + strings[1221], + strings[1222], + strings[1223], + strings[9] + }); + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[1224], 852, { + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[1229], 854, { + strings[1230], + strings[1231], + strings[1232], + strings[1233], + strings[1234], + strings[1235], + strings[1236], + strings[1237], + strings[1238], + strings[1239], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcPumpTypeEnum_type = new enumeration_type(strings[1240], 858, { + strings[1241], + strings[1242], + strings[1243], + strings[1244], + strings[1245], + strings[1246], + strings[1247], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRadioActivityMeasure_type = new type_declaration(strings[1248], 866, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcRailTypeEnum_type = new enumeration_type(strings[1249], 872, { + strings[1250], + strings[1251], + strings[1252], + strings[1253], + strings[1254], + strings[1255], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRailingTypeEnum_type = new enumeration_type(strings[1256], 870, { + strings[1257], + strings[1252], + strings[1258], + strings[1259], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRailwayPartTypeEnum_type = new enumeration_type(strings[1260], 874, { + strings[1261], + strings[1262], + strings[1263], + strings[1264], + strings[1265], + strings[1266], + strings[197], + strings[1267], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRampFlightTypeEnum_type = new enumeration_type(strings[1268], 878, { + strings[1269], + strings[1270], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRampTypeEnum_type = new enumeration_type(strings[1271], 880, { + strings[1272], + strings[1273], + strings[1274], + strings[1275], + strings[1276], + strings[1277], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRatioMeasure_type = new type_declaration(strings[1278], 881, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcReal_type = new type_declaration(strings[1279], 884, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1280], 890, { + strings[1281], + strings[1282], + strings[1283], + strings[1284], + strings[1285], + strings[1286], + strings[1287], + strings[1288] + }); + IFC4X3_RC1_IfcReferentTypeEnum_type = new enumeration_type(strings[1289], 893, { + strings[1290], + strings[1291], + strings[1292], + strings[1293], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1294], 894, { + strings[1295], + strings[1296], + strings[1297], + strings[1298], + strings[364], + strings[1299], + strings[1300], + strings[365], + strings[1301], + strings[9] + }); + IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type = new enumeration_type(strings[1302], 897, { + strings[1303], + strings[1304], + strings[1305], + strings[1306], + strings[1307], + strings[1308], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1309], 901, { + strings[1310], + strings[1311], + strings[1312], + strings[1061], + strings[1313], + strings[1314], + strings[1315], + strings[1316], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1317], 902, { + strings[1318], + strings[1319] + }); + IFC4X3_RC1_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1320], 904, { + strings[1316], + strings[1314], + strings[1312], + strings[1310], + strings[1313], + strings[1315], + strings[1311], + strings[1061], + strings[1321], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1322], 909, { + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRoadPartTypeEnum_type = new enumeration_type(strings[1323], 977, { + strings[1324], + strings[1325], + strings[1326], + strings[186], + strings[1327], + strings[1328], + strings[1329], + strings[1330], + strings[1331], + strings[1332], + strings[1333], + strings[1334], + strings[1335], + strings[1336], + strings[1337], + strings[1338], + strings[1339], + strings[1340], + strings[1341], + strings[1342], + strings[1343], + strings[1344], + strings[1345], + strings[1346], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRoleEnum_type = new enumeration_type(strings[1347], 978, { + strings[1348], + strings[1349], + strings[1350], + strings[1351], + strings[1352], + strings[1353], + strings[1354], + strings[1355], + strings[1356], + strings[1357], + strings[1358], + strings[1359], + strings[1360], + strings[1361], + strings[1362], + strings[1363], + strings[1364], + strings[1130], + strings[1365], + strings[1366], + strings[1367], + strings[1368], + strings[8] + }); + IFC4X3_RC1_IfcRoofTypeEnum_type = new enumeration_type(strings[1369], 981, { + strings[1370], + strings[1371], + strings[1372], + strings[1373], + strings[1374], + strings[1375], + strings[1376], + strings[1377], + strings[1378], + strings[1379], + strings[1380], + strings[1381], + strings[1382], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1383], 983, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcRotationalMassMeasure_type = new type_declaration(strings[1384], 984, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1385], 985, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcRotationalStiffnessSelect_type = new select_type(strings[1386], 986, { + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcRotationalStiffnessMeasure_type + }); + IFC4X3_RC1_IfcSIPrefix_type = new enumeration_type(strings[1387], 1026, { + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[1395], + strings[1396], + strings[1397], + strings[1398], + strings[1399], + strings[1400], + strings[1401], + strings[1402], + strings[1403] + }); + IFC4X3_RC1_IfcSIUnitName_type = new enumeration_type(strings[1404], 1029, { + strings[1405], + strings[1406], + strings[1407], + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[1417], + strings[1418], + strings[1419], + strings[1420], + strings[1421], + strings[1422], + strings[1423], + strings[1424], + strings[1425], + strings[1426], + strings[1427], + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434] + }); + IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1435], 990, { + strings[1436], + strings[1437], + strings[1438], + strings[1439], + strings[811], + strings[1440], + strings[1441], + strings[1442], + strings[1443], + strings[1444], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSectionModulusMeasure_type = new type_declaration(strings[1445], 998, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSectionTypeEnum_type = new enumeration_type(strings[1446], 1001, { + strings[1447], + strings[1448] + }); + IFC4X3_RC1_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1449], 993, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSensorTypeEnum_type = new enumeration_type(strings[1450], 1005, { + strings[1451], + strings[1452], + strings[1453], + strings[1454], + strings[1455], + strings[1456], + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[1466], + strings[1467], + strings[1468], + strings[1469], + strings[1470], + strings[1471], + strings[1472], + strings[1473], + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[1480], + strings[1481], + strings[1482], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSequenceEnum_type = new enumeration_type(strings[1483], 1006, { + strings[1484], + strings[1485], + strings[1486], + strings[1487], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1488], 1009, { + strings[1489], + strings[1490], + strings[1491], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcShearModulusMeasure_type = new type_declaration(strings[1492], 1013, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSignTypeEnum_type = new enumeration_type(strings[1493], 1021, { + strings[1494], + strings[1495], + strings[1299], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSignalTypeEnum_type = new enumeration_type(strings[1496], 1019, { + strings[1497], + strings[1498], + strings[1499], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1500], 1024, { + strings[1501], + strings[1502], + strings[1503], + strings[1504], + strings[1505], + strings[1506], + strings[1507], + strings[1508], + strings[1509], + strings[1510], + strings[1511], + strings[1512] + }); + IFC4X3_RC1_IfcSlabTypeEnum_type = new enumeration_type(strings[1513], 1035, { + strings[1514], + strings[1515], + strings[1516], + strings[1517], + strings[1518], + strings[354], + strings[1519], + strings[1333], + strings[1520], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1521], 1039, { + strings[1522], + strings[1523], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSolidAngleMeasure_type = new type_declaration(strings[1524], 1040, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1525], 1044, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSoundPowerMeasure_type = new type_declaration(strings[1526], 1045, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1527], 1046, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSoundPressureMeasure_type = new type_declaration(strings[1528], 1047, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1529], 1052, { + strings[1530], + strings[1531], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSpaceTypeEnum_type = new enumeration_type(strings[1532], 1054, { + strings[1533], + strings[1534], + strings[1535], + strings[903], + strings[769], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1536], 1062, { + strings[1537], + strings[1538], + strings[353], + strings[1539], + strings[570], + strings[1228], + strings[23], + strings[577], + strings[1540], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1541], 1063, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSpecularExponent_type = new type_declaration(strings[1542], 1064, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcSpecularRoughness_type = new type_declaration(strings[1543], 1066, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1544], 1071, { + strings[1545], + strings[1546], + strings[1547], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1548], 1075, { + strings[1269], + strings[1549], + strings[1270], + strings[1550], + strings[1382], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcStairTypeEnum_type = new enumeration_type(strings[1551], 1077, { + strings[1552], + strings[1553], + strings[1554], + strings[1555], + strings[1556], + strings[1557], + strings[1558], + strings[1559], + strings[1560], + strings[1561], + strings[1562], + strings[1563], + strings[1564], + strings[1565], + strings[1566], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcStateEnum_type = new enumeration_type(strings[1567], 1078, { + strings[1568], + strings[1569], + strings[1570], + strings[1571], + strings[1572] + }); + IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1573], 1086, { + strings[1574], + strings[421], + strings[1575], + strings[1576], + strings[1577], + strings[1578], + strings[1579], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1580], 1089, { + strings[1581], + strings[1582], + strings[536], + strings[1583], + strings[1584], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1585], 1115, { + strings[1574], + strings[1586], + strings[1579], + strings[1587], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1588], 1118, { + strings[1589], + strings[1590], + strings[1591], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1592], 1127, { + strings[1593], + strings[1151], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1594], 1133, { + strings[1595], + strings[1596], + strings[1597], + strings[1598], + strings[1599], + strings[1600], + strings[1601], + strings[1602], + strings[1603], + strings[1604], + strings[1605], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSurfaceSide_type = new enumeration_type(strings[1606], 1138, { + strings[500], + strings[501], + strings[1607] + }); + IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1608], 1153, { + strings[1609], + strings[1610], + strings[1611], + strings[1612], + strings[1613], + strings[1614], + strings[1615], + strings[1616], + strings[1617], + strings[712], + strings[1618], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1619], 1157, { + strings[1620], + strings[1621], + strings[1622], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTankTypeEnum_type = new enumeration_type(strings[1623], 1163, { + strings[1624], + strings[1625], + strings[1626], + strings[1627], + strings[1628], + strings[1011], + strings[1629], + strings[1630], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTaskDurationEnum_type = new enumeration_type(strings[1631], 1165, { + strings[1632], + strings[1633], + strings[9] + }); + IFC4X3_RC1_IfcTaskTypeEnum_type = new enumeration_type(strings[1634], 1169, { + strings[1635], + strings[1537], + strings[1636], + strings[1637], + strings[552], + strings[1638], + strings[1639], + strings[1640], + strings[1641], + strings[1642], + strings[1643], + strings[1644], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1645], 1171, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1646], 1172, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1647], 1176, { + strings[1040], + strings[1648], + strings[1649], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTendonConduitTypeEnum_type = new enumeration_type(strings[1650], 1179, { + strings[538], + strings[1040], + strings[1651], + strings[1652], + strings[1653], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTendonTypeEnum_type = new enumeration_type(strings[1654], 1181, { + strings[1655], + strings[1656], + strings[1657], + strings[1658], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcText_type = new type_declaration(strings[1659], 1184, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcTextAlignment_type = new type_declaration(strings[1660], 1185, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcTextDecoration_type = new type_declaration(strings[1661], 1186, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcTextFontName_type = new type_declaration(strings[1662], 1187, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcTextPath_type = new enumeration_type(strings[1663], 1191, { + strings[602], + strings[604], + strings[1664], + strings[1665] + }); + IFC4X3_RC1_IfcTextTransformation_type = new type_declaration(strings[1666], 1196, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1667], 1202, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcThermalConductivityMeasure_type = new type_declaration(strings[1668], 1203, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1669], 1204, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcThermalResistanceMeasure_type = new type_declaration(strings[1670], 1205, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1671], 1206, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1672], 1207, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcTime_type = new type_declaration(strings[1673], 1208, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcTimeMeasure_type = new type_declaration(strings[1674], 1209, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcTimeOrRatioSelect_type = new select_type(strings[1675], 1210, { + IFC4X3_RC1_IfcDuration_type, + IFC4X3_RC1_IfcRatioMeasure_type + }); + IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1676], 1213, { + strings[1677], + strings[1579], + strings[1678], + strings[1679], + strings[1680], + strings[1681], + strings[9] + }); + IFC4X3_RC1_IfcTimeStamp_type = new type_declaration(strings[1682], 1215, new simple_type(simple_type::integer_type)); + IFC4X3_RC1_IfcTorqueMeasure_type = new type_declaration(strings[1683], 1219, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcTrackElementTypeEnum_type = new enumeration_type(strings[1684], 1222, { + strings[1685], + strings[1686], + strings[1687], + strings[1688], + strings[1689], + strings[1690], + strings[1691], + strings[1692], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTransformerTypeEnum_type = new enumeration_type(strings[1693], 1225, { + strings[32], + strings[1694], + strings[1695], + strings[1696], + strings[1697], + strings[1698], + strings[822], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTransitionCode_type = new enumeration_type(strings[1699], 1226, { + strings[1700], + strings[1677], + strings[1701], + strings[1702] + }); + IFC4X3_RC1_IfcTransitionCurveType_type = new enumeration_type(strings[1703], 1228, { + strings[1704], + strings[1705], + strings[1706], + strings[1707], + strings[1708], + strings[1709] + }); + IFC4X3_RC1_IfcTranslationalStiffnessSelect_type = new select_type(strings[1710], 1229, { + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcLinearStiffnessMeasure_type + }); + IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type = new enumeration_type(strings[1711], 1231, { + strings[1712], + strings[1713], + strings[1714], + strings[1715], + strings[1716], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type(strings[1717], 1232, { + strings[1718], + strings[1719], + strings[1720], + strings[1721], + strings[1722], + strings[1723], + strings[1724], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcTransportElementTypeSelect_type = new select_type(strings[1725], 1234, { + IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type + }); + IFC4X3_RC1_IfcTrimmingPreference_type = new enumeration_type(strings[1726], 1239, { + strings[1727], + strings[1120], + strings[129] + }); + IFC4X3_RC1_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1728], 1244, { + strings[1729], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcURIReference_type = new type_declaration(strings[1730], 1258, new simple_type(simple_type::string_type)); + IFC4X3_RC1_IfcUnitEnum_type = new enumeration_type(strings[1731], 1257, { + strings[1732], + strings[1733], + strings[1734], + strings[1735], + strings[1736], + strings[1737], + strings[1738], + strings[1739], + strings[1740], + strings[1741], + strings[1742], + strings[1743], + strings[1744], + strings[1745], + strings[1746], + strings[1747], + strings[1748], + strings[1749], + strings[1750], + strings[1751], + strings[1752], + strings[1753], + strings[1754], + strings[1755], + strings[1756], + strings[1757], + strings[1758], + strings[1759], + strings[1760], + strings[8] + }); + IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1761], 1252, { + strings[1762], + strings[1763], + strings[1764], + strings[1765], + strings[1766], + strings[1767], + strings[1768], + strings[1769], + strings[822], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1770], 1255, { + strings[1771], + strings[1772], + strings[1773], + strings[1774], + strings[1775], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcValveTypeEnum_type = new enumeration_type(strings[1776], 1263, { + strings[1777], + strings[1778], + strings[1779], + strings[1780], + strings[1781], + strings[1782], + strings[1783], + strings[1784], + strings[1785], + strings[1786], + strings[1787], + strings[1788], + strings[1789], + strings[1790], + strings[1791], + strings[1792], + strings[1793], + strings[1794], + strings[1795], + strings[1796], + strings[1797], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1798], 1264, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcVibrationDamperTypeEnum_type = new enumeration_type(strings[1799], 1272, { + strings[1800], + strings[1801], + strings[1802], + strings[1165], + strings[1803], + strings[1804], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1805], 1275, { + strings[1806], + strings[1807], + strings[1808], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1809], 1279, { + strings[1810], + strings[1811], + strings[1812], + strings[1813], + strings[1814], + strings[1314], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcVolumeMeasure_type = new type_declaration(strings[1815], 1281, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1816], 1282, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcWallTypeEnum_type = new enumeration_type(strings[1817], 1287, { + strings[1818], + strings[1819], + strings[1820], + strings[1821], + strings[1311], + strings[1822], + strings[1823], + strings[1575], + strings[1824], + strings[1825], + strings[1826], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWarpingConstantMeasure_type = new type_declaration(strings[1827], 1288, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcWarpingMomentMeasure_type = new type_declaration(strings[1828], 1289, new simple_type(simple_type::real_type)); + IFC4X3_RC1_IfcWarpingStiffnessSelect_type = new select_type(strings[1829], 1290, { + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC1_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1830], 1293, { + strings[1831], + strings[1832], + strings[1833], + strings[1834], + strings[1835], + strings[1836], + strings[1837], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1838], 1297, { + strings[1839], + strings[1840], + strings[1841], + strings[1842], + strings[1843], + strings[1844], + strings[1845], + strings[1846], + strings[1847], + strings[1848], + strings[1849], + strings[1850], + strings[1851], + strings[9] + }); + IFC4X3_RC1_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1852], 1298, { + strings[602], + strings[603], + strings[604], + strings[1853], + strings[1854], + strings[9] + }); + IFC4X3_RC1_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1855], 1302, { + strings[606], + strings[607], + strings[608], + strings[366], + strings[609], + strings[365], + strings[1856], + strings[9] + }); + IFC4X3_RC1_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1857], 1303, { + strings[1858], + strings[1859], + strings[1860], + strings[1861], + strings[1862], + strings[1863], + strings[1864], + strings[1865], + strings[1866], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWindowTypeEnum_type = new enumeration_type(strings[1867], 1305, { + strings[1868], + strings[1869], + strings[1870], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1871], 1306, { + strings[1858], + strings[1859], + strings[1860], + strings[1861], + strings[1862], + strings[1863], + strings[1864], + strings[1865], + strings[1866], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1872], 1308, { + strings[1873], + strings[1874], + strings[1875], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1876], 1311, { + strings[1877], + strings[1878], + strings[1879], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1880], 1313, { + strings[1877], + strings[1878], + strings[1879], + strings[8], + strings[9] + }); + IFC4X3_RC1_IfcActorRole_type = new entity(strings[1881], false, 7, 0); + IFC4X3_RC1_IfcAddress_type = new entity(strings[1882], true, 12, 0); + IFC4X3_RC1_IfcApplication_type = new entity(strings[1883], false, 52, 0); + IFC4X3_RC1_IfcAppliedValue_type = new entity(strings[1884], false, 53, 0); + IFC4X3_RC1_IfcApproval_type = new entity(strings[1885], false, 55, 0); + IFC4X3_RC1_IfcBoundaryCondition_type = new entity(strings[1886], true, 97, 0); + IFC4X3_RC1_IfcBoundaryEdgeCondition_type = new entity(strings[1887], false, 99, IFC4X3_RC1_IfcBoundaryCondition_type); + IFC4X3_RC1_IfcBoundaryFaceCondition_type = new entity(strings[1888], false, 100, IFC4X3_RC1_IfcBoundaryCondition_type); + IFC4X3_RC1_IfcBoundaryNodeCondition_type = new entity(strings[1889], false, 101, IFC4X3_RC1_IfcBoundaryCondition_type); + IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type = new entity(strings[1890], false, 102, IFC4X3_RC1_IfcBoundaryNodeCondition_type); + IFC4X3_RC1_IfcConnectionGeometry_type = new entity(strings[1891], true, 212, 0); + IFC4X3_RC1_IfcConnectionPointGeometry_type = new entity(strings[1892], false, 214, IFC4X3_RC1_IfcConnectionGeometry_type); + IFC4X3_RC1_IfcConnectionSurfaceGeometry_type = new entity(strings[1893], false, 215, IFC4X3_RC1_IfcConnectionGeometry_type); + IFC4X3_RC1_IfcConnectionVolumeGeometry_type = new entity(strings[1894], false, 217, IFC4X3_RC1_IfcConnectionGeometry_type); + IFC4X3_RC1_IfcConstraint_type = new entity(strings[1895], true, 218, 0); + IFC4X3_RC1_IfcCoordinateOperation_type = new entity(strings[1896], true, 249, 0); + IFC4X3_RC1_IfcCoordinateReferenceSystem_type = new entity(strings[1897], true, 250, 0); + IFC4X3_RC1_IfcCostValue_type = new entity(strings[1898], false, 256, IFC4X3_RC1_IfcAppliedValue_type); + IFC4X3_RC1_IfcDerivedUnit_type = new entity(strings[1899], false, 303, 0); + IFC4X3_RC1_IfcDerivedUnitElement_type = new entity(strings[1900], false, 304, 0); + IFC4X3_RC1_IfcDimensionalExponents_type = new entity(strings[1901], false, 307, 0); + IFC4X3_RC1_IfcExternalInformation_type = new entity(strings[1902], true, 431, 0); + IFC4X3_RC1_IfcExternalReference_type = new entity(strings[1903], true, 435, 0); + IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type = new entity(strings[1904], false, 432, IFC4X3_RC1_IfcExternalReference_type); + IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1905], false, 433, IFC4X3_RC1_IfcExternalReference_type); + IFC4X3_RC1_IfcExternallyDefinedTextFont_type = new entity(strings[1906], false, 434, IFC4X3_RC1_IfcExternalReference_type); + IFC4X3_RC1_IfcGridAxis_type = new entity(strings[1907], false, 527, 0); + IFC4X3_RC1_IfcIrregularTimeSeriesValue_type = new entity(strings[1908], false, 569, 0); + IFC4X3_RC1_IfcLibraryInformation_type = new entity(strings[1909], false, 591, IFC4X3_RC1_IfcExternalInformation_type); + IFC4X3_RC1_IfcLibraryReference_type = new entity(strings[1910], false, 592, IFC4X3_RC1_IfcExternalReference_type); + IFC4X3_RC1_IfcLightDistributionData_type = new entity(strings[1911], false, 595, 0); + IFC4X3_RC1_IfcLightIntensityDistribution_type = new entity(strings[1912], false, 601, 0); + IFC4X3_RC1_IfcMapConversion_type = new entity(strings[1913], false, 636, IFC4X3_RC1_IfcCoordinateOperation_type); + IFC4X3_RC1_IfcMaterialClassificationRelationship_type = new entity(strings[1914], false, 646, 0); + IFC4X3_RC1_IfcMaterialDefinition_type = new entity(strings[1915], true, 649, 0); + IFC4X3_RC1_IfcMaterialLayer_type = new entity(strings[1916], false, 651, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialLayerSet_type = new entity(strings[1917], false, 652, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialLayerWithOffsets_type = new entity(strings[1918], false, 654, IFC4X3_RC1_IfcMaterialLayer_type); + IFC4X3_RC1_IfcMaterialList_type = new entity(strings[1919], false, 655, 0); + IFC4X3_RC1_IfcMaterialProfile_type = new entity(strings[1920], false, 656, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialProfileSet_type = new entity(strings[1921], false, 657, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialProfileWithOffsets_type = new entity(strings[1922], false, 660, IFC4X3_RC1_IfcMaterialProfile_type); + IFC4X3_RC1_IfcMaterialUsageDefinition_type = new entity(strings[1923], true, 664, 0); + IFC4X3_RC1_IfcMeasureWithUnit_type = new entity(strings[1924], false, 666, 0); + IFC4X3_RC1_IfcMetric_type = new entity(strings[1925], false, 677, IFC4X3_RC1_IfcConstraint_type); + IFC4X3_RC1_IfcMonetaryUnit_type = new entity(strings[1926], false, 694, 0); + IFC4X3_RC1_IfcNamedUnit_type = new entity(strings[1927], true, 702, 0); + IFC4X3_RC1_IfcObjectPlacement_type = new entity(strings[1928], true, 714, 0); + IFC4X3_RC1_IfcObjective_type = new entity(strings[1929], false, 712, IFC4X3_RC1_IfcConstraint_type); + IFC4X3_RC1_IfcOrganization_type = new entity(strings[1930], false, 728, 0); + IFC4X3_RC1_IfcOwnerHistory_type = new entity(strings[1931], false, 736, 0); + IFC4X3_RC1_IfcPerson_type = new entity(strings[1932], false, 749, 0); + IFC4X3_RC1_IfcPersonAndOrganization_type = new entity(strings[1933], false, 750, 0); + IFC4X3_RC1_IfcPhysicalQuantity_type = new entity(strings[1934], true, 754, 0); + IFC4X3_RC1_IfcPhysicalSimpleQuantity_type = new entity(strings[1935], true, 755, IFC4X3_RC1_IfcPhysicalQuantity_type); + IFC4X3_RC1_IfcPostalAddress_type = new entity(strings[1936], false, 792, IFC4X3_RC1_IfcAddress_type); + IFC4X3_RC1_IfcPresentationItem_type = new entity(strings[1937], true, 802, 0); + IFC4X3_RC1_IfcPresentationLayerAssignment_type = new entity(strings[1938], false, 803, 0); + IFC4X3_RC1_IfcPresentationLayerWithStyle_type = new entity(strings[1939], false, 804, IFC4X3_RC1_IfcPresentationLayerAssignment_type); + IFC4X3_RC1_IfcPresentationStyle_type = new entity(strings[1940], true, 805, 0); + IFC4X3_RC1_IfcPresentationStyleAssignment_type = new entity(strings[1941], false, 806, 0); + IFC4X3_RC1_IfcProductRepresentation_type = new entity(strings[1942], true, 816, 0); + IFC4X3_RC1_IfcProfileDef_type = new entity(strings[1943], false, 819, 0); + IFC4X3_RC1_IfcProjectedCRS_type = new entity(strings[1944], false, 823, IFC4X3_RC1_IfcCoordinateReferenceSystem_type); + IFC4X3_RC1_IfcPropertyAbstraction_type = new entity(strings[1945], true, 831, 0); + IFC4X3_RC1_IfcPropertyEnumeration_type = new entity(strings[1946], false, 836, IFC4X3_RC1_IfcPropertyAbstraction_type); + IFC4X3_RC1_IfcQuantityArea_type = new entity(strings[1947], false, 859, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC1_IfcQuantityCount_type = new entity(strings[1948], false, 860, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC1_IfcQuantityLength_type = new entity(strings[1949], false, 861, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC1_IfcQuantityTime_type = new entity(strings[1950], false, 863, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC1_IfcQuantityVolume_type = new entity(strings[1951], false, 864, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC1_IfcQuantityWeight_type = new entity(strings[1952], false, 865, IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC1_IfcRecurrencePattern_type = new entity(strings[1953], false, 889, 0); + IFC4X3_RC1_IfcReference_type = new entity(strings[1954], false, 891, 0); + IFC4X3_RC1_IfcRepresentation_type = new entity(strings[1955], true, 961, 0); + IFC4X3_RC1_IfcRepresentationContext_type = new entity(strings[1956], true, 962, 0); + IFC4X3_RC1_IfcRepresentationItem_type = new entity(strings[1957], true, 963, 0); + IFC4X3_RC1_IfcRepresentationMap_type = new entity(strings[1958], false, 964, 0); + IFC4X3_RC1_IfcResourceLevelRelationship_type = new entity(strings[1959], true, 968, 0); + IFC4X3_RC1_IfcRoot_type = new entity(strings[1960], true, 982, 0); + IFC4X3_RC1_IfcSIUnit_type = new entity(strings[1961], false, 1028, IFC4X3_RC1_IfcNamedUnit_type); + IFC4X3_RC1_IfcSchedulingTime_type = new entity(strings[1962], true, 991, 0); + IFC4X3_RC1_IfcShapeAspect_type = new entity(strings[1963], false, 1010, 0); + IFC4X3_RC1_IfcShapeModel_type = new entity(strings[1964], true, 1011, IFC4X3_RC1_IfcRepresentation_type); + IFC4X3_RC1_IfcShapeRepresentation_type = new entity(strings[1965], false, 1012, IFC4X3_RC1_IfcShapeModel_type); + IFC4X3_RC1_IfcStructuralConnectionCondition_type = new entity(strings[1966], true, 1084, 0); + IFC4X3_RC1_IfcStructuralLoad_type = new entity(strings[1967], true, 1094, 0); + IFC4X3_RC1_IfcStructuralLoadConfiguration_type = new entity(strings[1968], false, 1096, IFC4X3_RC1_IfcStructuralLoad_type); + IFC4X3_RC1_IfcStructuralLoadOrResult_type = new entity(strings[1969], true, 1099, IFC4X3_RC1_IfcStructuralLoad_type); + IFC4X3_RC1_IfcStructuralLoadStatic_type = new entity(strings[1970], true, 1105, IFC4X3_RC1_IfcStructuralLoadOrResult_type); + IFC4X3_RC1_IfcStructuralLoadTemperature_type = new entity(strings[1971], false, 1106, IFC4X3_RC1_IfcStructuralLoadStatic_type); + IFC4X3_RC1_IfcStyleModel_type = new entity(strings[1972], true, 1124, IFC4X3_RC1_IfcRepresentation_type); + IFC4X3_RC1_IfcStyledItem_type = new entity(strings[1973], false, 1122, IFC4X3_RC1_IfcRepresentationItem_type); + IFC4X3_RC1_IfcStyledRepresentation_type = new entity(strings[1974], false, 1123, IFC4X3_RC1_IfcStyleModel_type); + IFC4X3_RC1_IfcSurfaceReinforcementArea_type = new entity(strings[1975], false, 1137, IFC4X3_RC1_IfcStructuralLoadOrResult_type); + IFC4X3_RC1_IfcSurfaceStyle_type = new entity(strings[1976], false, 1139, IFC4X3_RC1_IfcPresentationStyle_type); + IFC4X3_RC1_IfcSurfaceStyleLighting_type = new entity(strings[1977], false, 1141, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcSurfaceStyleRefraction_type = new entity(strings[1978], false, 1142, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcSurfaceStyleShading_type = new entity(strings[1979], false, 1144, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcSurfaceStyleWithTextures_type = new entity(strings[1980], false, 1145, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcSurfaceTexture_type = new entity(strings[1981], true, 1146, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcTable_type = new entity(strings[1982], false, 1158, 0); + IFC4X3_RC1_IfcTableColumn_type = new entity(strings[1983], false, 1159, 0); + IFC4X3_RC1_IfcTableRow_type = new entity(strings[1984], false, 1160, 0); + IFC4X3_RC1_IfcTaskTime_type = new entity(strings[1985], false, 1166, IFC4X3_RC1_IfcSchedulingTime_type); + IFC4X3_RC1_IfcTaskTimeRecurring_type = new entity(strings[1986], false, 1167, IFC4X3_RC1_IfcTaskTime_type); + IFC4X3_RC1_IfcTelecomAddress_type = new entity(strings[1987], false, 1170, IFC4X3_RC1_IfcAddress_type); + IFC4X3_RC1_IfcTextStyle_type = new entity(strings[1988], false, 1192, IFC4X3_RC1_IfcPresentationStyle_type); + IFC4X3_RC1_IfcTextStyleForDefinedFont_type = new entity(strings[1989], false, 1194, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcTextStyleTextModel_type = new entity(strings[1990], false, 1195, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcTextureCoordinate_type = new entity(strings[1991], true, 1197, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcTextureCoordinateGenerator_type = new entity(strings[1992], false, 1198, IFC4X3_RC1_IfcTextureCoordinate_type); + IFC4X3_RC1_IfcTextureMap_type = new entity(strings[1993], false, 1199, IFC4X3_RC1_IfcTextureCoordinate_type); + IFC4X3_RC1_IfcTextureVertex_type = new entity(strings[1994], false, 1200, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcTextureVertexList_type = new entity(strings[1995], false, 1201, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcTimePeriod_type = new entity(strings[1996], false, 1211, 0); + IFC4X3_RC1_IfcTimeSeries_type = new entity(strings[1997], true, 1212, 0); + IFC4X3_RC1_IfcTimeSeriesValue_type = new entity(strings[1998], false, 1214, 0); + IFC4X3_RC1_IfcTopologicalRepresentationItem_type = new entity(strings[1999], true, 1216, IFC4X3_RC1_IfcRepresentationItem_type); + IFC4X3_RC1_IfcTopologyRepresentation_type = new entity(strings[2000], false, 1217, IFC4X3_RC1_IfcShapeModel_type); + IFC4X3_RC1_IfcUnitAssignment_type = new entity(strings[2001], false, 1256, 0); + IFC4X3_RC1_IfcVertex_type = new entity(strings[2002], false, 1267, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcVertexPoint_type = new entity(strings[2003], false, 1269, IFC4X3_RC1_IfcVertex_type); + IFC4X3_RC1_IfcVirtualGridIntersection_type = new entity(strings[2004], false, 1277, 0); + IFC4X3_RC1_IfcWorkTime_type = new entity(strings[2005], false, 1314, IFC4X3_RC1_IfcSchedulingTime_type); + IFC4X3_RC1_IfcActorSelect_type = new select_type(strings[2006], 8, { + IFC4X3_RC1_IfcOrganization_type, + IFC4X3_RC1_IfcPerson_type, + IFC4X3_RC1_IfcPersonAndOrganization_type + }); + IFC4X3_RC1_IfcArcIndex_type = new type_declaration(strings[2007], 60, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))); + IFC4X3_RC1_IfcBendingParameterSelect_type = new select_type(strings[2008], 84, { + IFC4X3_RC1_IfcLengthMeasure_type, + IFC4X3_RC1_IfcPlaneAngleMeasure_type + }); + IFC4X3_RC1_IfcBoxAlignment_type = new type_declaration(strings[2009], 106, new named_type(IFC4X3_RC1_IfcLabel_type)); + IFC4X3_RC1_IfcDerivedMeasureValue_type = new select_type(strings[2010], 301, { + IFC4X3_RC1_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC1_IfcAccelerationMeasure_type, + IFC4X3_RC1_IfcAngularVelocityMeasure_type, + IFC4X3_RC1_IfcAreaDensityMeasure_type, + IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC1_IfcCurvatureMeasure_type, + IFC4X3_RC1_IfcDoseEquivalentMeasure_type, + IFC4X3_RC1_IfcDynamicViscosityMeasure_type, + IFC4X3_RC1_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC1_IfcElectricChargeMeasure_type, + IFC4X3_RC1_IfcElectricConductanceMeasure_type, + IFC4X3_RC1_IfcElectricResistanceMeasure_type, + IFC4X3_RC1_IfcElectricVoltageMeasure_type, + IFC4X3_RC1_IfcEnergyMeasure_type, + IFC4X3_RC1_IfcForceMeasure_type, + IFC4X3_RC1_IfcFrequencyMeasure_type, + IFC4X3_RC1_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC1_IfcHeatingValueMeasure_type, + IFC4X3_RC1_IfcIlluminanceMeasure_type, + IFC4X3_RC1_IfcInductanceMeasure_type, + IFC4X3_RC1_IfcIntegerCountRateMeasure_type, + IFC4X3_RC1_IfcIonConcentrationMeasure_type, + IFC4X3_RC1_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC1_IfcKinematicViscosityMeasure_type, + IFC4X3_RC1_IfcLinearForceMeasure_type, + IFC4X3_RC1_IfcLinearMomentMeasure_type, + IFC4X3_RC1_IfcLinearStiffnessMeasure_type, + IFC4X3_RC1_IfcLinearVelocityMeasure_type, + IFC4X3_RC1_IfcLuminousFluxMeasure_type, + IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC1_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC1_IfcMagneticFluxMeasure_type, + IFC4X3_RC1_IfcMassDensityMeasure_type, + IFC4X3_RC1_IfcMassFlowRateMeasure_type, + IFC4X3_RC1_IfcMassPerLengthMeasure_type, + IFC4X3_RC1_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC1_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC1_IfcMolecularWeightMeasure_type, + IFC4X3_RC1_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC1_IfcMonetaryMeasure_type, + IFC4X3_RC1_IfcPHMeasure_type, + IFC4X3_RC1_IfcPlanarForceMeasure_type, + IFC4X3_RC1_IfcPowerMeasure_type, + IFC4X3_RC1_IfcPressureMeasure_type, + IFC4X3_RC1_IfcRadioActivityMeasure_type, + IFC4X3_RC1_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC1_IfcRotationalMassMeasure_type, + IFC4X3_RC1_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC1_IfcSectionModulusMeasure_type, + IFC4X3_RC1_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC1_IfcShearModulusMeasure_type, + IFC4X3_RC1_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC1_IfcSoundPowerMeasure_type, + IFC4X3_RC1_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC1_IfcSoundPressureMeasure_type, + IFC4X3_RC1_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC1_IfcTemperatureGradientMeasure_type, + IFC4X3_RC1_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC1_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC1_IfcThermalConductivityMeasure_type, + IFC4X3_RC1_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC1_IfcThermalResistanceMeasure_type, + IFC4X3_RC1_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC1_IfcTorqueMeasure_type, + IFC4X3_RC1_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC1_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC1_IfcWarpingConstantMeasure_type, + IFC4X3_RC1_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC1_IfcFacilityPartTypeSelect_type = new select_type(strings[2011], 452, { + IFC4X3_RC1_IfcBridgePartTypeEnum_type, + IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC1_IfcMarinePartTypeEnum_type, + IFC4X3_RC1_IfcRailwayPartTypeEnum_type, + IFC4X3_RC1_IfcRoadPartTypeEnum_type + }); + IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type = new select_type(strings[2012], 548, { + IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC1_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type + }); + IFC4X3_RC1_IfcLayeredItem_type = new select_type(strings[2013], 588, { + IFC4X3_RC1_IfcRepresentation_type, + IFC4X3_RC1_IfcRepresentationItem_type + }); + IFC4X3_RC1_IfcLibrarySelect_type = new select_type(strings[2014], 593, { + IFC4X3_RC1_IfcLibraryInformation_type, + IFC4X3_RC1_IfcLibraryReference_type + }); + IFC4X3_RC1_IfcLightDistributionDataSourceSelect_type = new select_type(strings[2015], 596, { + IFC4X3_RC1_IfcExternalReference_type, + IFC4X3_RC1_IfcLightIntensityDistribution_type + }); + IFC4X3_RC1_IfcLineIndex_type = new type_declaration(strings[2016], 619, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))); + IFC4X3_RC1_IfcMaterialSelect_type = new select_type(strings[2017], 663, { + IFC4X3_RC1_IfcMaterialDefinition_type, + IFC4X3_RC1_IfcMaterialList_type, + IFC4X3_RC1_IfcMaterialUsageDefinition_type + }); + IFC4X3_RC1_IfcNormalisedRatioMeasure_type = new type_declaration(strings[2018], 707, new named_type(IFC4X3_RC1_IfcRatioMeasure_type)); + IFC4X3_RC1_IfcObjectReferenceSelect_type = new select_type(strings[2019], 715, { + IFC4X3_RC1_IfcAddress_type, + IFC4X3_RC1_IfcAppliedValue_type, + IFC4X3_RC1_IfcExternalReference_type, + IFC4X3_RC1_IfcMaterialDefinition_type, + IFC4X3_RC1_IfcOrganization_type, + IFC4X3_RC1_IfcPerson_type, + IFC4X3_RC1_IfcPersonAndOrganization_type, + IFC4X3_RC1_IfcTable_type, + IFC4X3_RC1_IfcTimeSeries_type + }); + IFC4X3_RC1_IfcPositiveRatioMeasure_type = new type_declaration(strings[2020], 791, new named_type(IFC4X3_RC1_IfcRatioMeasure_type)); + IFC4X3_RC1_IfcSegmentIndexSelect_type = new select_type(strings[2021], 1002, { + IFC4X3_RC1_IfcArcIndex_type, + IFC4X3_RC1_IfcLineIndex_type + }); + IFC4X3_RC1_IfcSimpleValue_type = new select_type(strings[2022], 1025, { + IFC4X3_RC1_IfcBinary_type, + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcDate_type, + IFC4X3_RC1_IfcDateTime_type, + IFC4X3_RC1_IfcDuration_type, + IFC4X3_RC1_IfcIdentifier_type, + IFC4X3_RC1_IfcInteger_type, + IFC4X3_RC1_IfcLabel_type, + IFC4X3_RC1_IfcLogical_type, + IFC4X3_RC1_IfcPositiveInteger_type, + IFC4X3_RC1_IfcReal_type, + IFC4X3_RC1_IfcText_type, + IFC4X3_RC1_IfcTime_type, + IFC4X3_RC1_IfcTimeStamp_type + }); + IFC4X3_RC1_IfcSizeSelect_type = new select_type(strings[2023], 1030, { + IFC4X3_RC1_IfcDescriptiveMeasure_type, + IFC4X3_RC1_IfcLengthMeasure_type, + IFC4X3_RC1_IfcNormalisedRatioMeasure_type, + IFC4X3_RC1_IfcPositiveLengthMeasure_type, + IFC4X3_RC1_IfcPositiveRatioMeasure_type, + IFC4X3_RC1_IfcRatioMeasure_type + }); + IFC4X3_RC1_IfcSpecularHighlightSelect_type = new select_type(strings[2024], 1065, { + IFC4X3_RC1_IfcSpecularExponent_type, + IFC4X3_RC1_IfcSpecularRoughness_type + }); + IFC4X3_RC1_IfcStyleAssignmentSelect_type = new select_type(strings[2025], 1121, { + IFC4X3_RC1_IfcPresentationStyle_type, + IFC4X3_RC1_IfcPresentationStyleAssignment_type + }); + IFC4X3_RC1_IfcSurfaceStyleElementSelect_type = new select_type(strings[2026], 1140, { + IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC1_IfcSurfaceStyleLighting_type, + IFC4X3_RC1_IfcSurfaceStyleRefraction_type, + IFC4X3_RC1_IfcSurfaceStyleShading_type, + IFC4X3_RC1_IfcSurfaceStyleWithTextures_type + }); + IFC4X3_RC1_IfcUnit_type = new select_type(strings[2027], 1249, { + IFC4X3_RC1_IfcDerivedUnit_type, + IFC4X3_RC1_IfcMonetaryUnit_type, + IFC4X3_RC1_IfcNamedUnit_type + }); + IFC4X3_RC1_IfcApprovalRelationship_type = new entity(strings[2028], false, 56, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcArbitraryClosedProfileDef_type = new entity(strings[2029], false, 57, IFC4X3_RC1_IfcProfileDef_type); + IFC4X3_RC1_IfcArbitraryOpenProfileDef_type = new entity(strings[2030], false, 58, IFC4X3_RC1_IfcProfileDef_type); + IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type = new entity(strings[2031], false, 59, IFC4X3_RC1_IfcArbitraryClosedProfileDef_type); + IFC4X3_RC1_IfcBlobTexture_type = new entity(strings[2032], false, 86, IFC4X3_RC1_IfcSurfaceTexture_type); + IFC4X3_RC1_IfcCenterLineProfileDef_type = new entity(strings[2033], false, 160, IFC4X3_RC1_IfcArbitraryOpenProfileDef_type); + IFC4X3_RC1_IfcClassification_type = new entity(strings[2034], false, 174, IFC4X3_RC1_IfcExternalInformation_type); + IFC4X3_RC1_IfcClassificationReference_type = new entity(strings[2035], false, 175, IFC4X3_RC1_IfcExternalReference_type); + IFC4X3_RC1_IfcColourRgbList_type = new entity(strings[2036], false, 185, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcColourSpecification_type = new entity(strings[2037], true, 186, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcCompositeProfileDef_type = new entity(strings[2038], false, 201, IFC4X3_RC1_IfcProfileDef_type); + IFC4X3_RC1_IfcConnectedFaceSet_type = new entity(strings[2039], false, 210, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcConnectionCurveGeometry_type = new entity(strings[2040], false, 211, IFC4X3_RC1_IfcConnectionGeometry_type); + IFC4X3_RC1_IfcConnectionPointEccentricity_type = new entity(strings[2041], false, 213, IFC4X3_RC1_IfcConnectionPointGeometry_type); + IFC4X3_RC1_IfcContextDependentUnit_type = new entity(strings[2042], false, 233, IFC4X3_RC1_IfcNamedUnit_type); + IFC4X3_RC1_IfcConversionBasedUnit_type = new entity(strings[2043], false, 238, IFC4X3_RC1_IfcNamedUnit_type); + IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type = new entity(strings[2044], false, 239, IFC4X3_RC1_IfcConversionBasedUnit_type); + IFC4X3_RC1_IfcCurrencyRelationship_type = new entity(strings[2045], false, 271, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcCurveStyle_type = new entity(strings[2046], false, 284, IFC4X3_RC1_IfcPresentationStyle_type); + IFC4X3_RC1_IfcCurveStyleFont_type = new entity(strings[2047], false, 285, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcCurveStyleFontAndScaling_type = new entity(strings[2048], false, 286, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcCurveStyleFontPattern_type = new entity(strings[2049], false, 287, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcDerivedProfileDef_type = new entity(strings[2050], false, 302, IFC4X3_RC1_IfcProfileDef_type); + IFC4X3_RC1_IfcDocumentInformation_type = new entity(strings[2051], false, 335, IFC4X3_RC1_IfcExternalInformation_type); + IFC4X3_RC1_IfcDocumentInformationRelationship_type = new entity(strings[2052], false, 336, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcDocumentReference_type = new entity(strings[2053], false, 337, IFC4X3_RC1_IfcExternalReference_type); + IFC4X3_RC1_IfcEdge_type = new entity(strings[2054], false, 371, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcEdgeCurve_type = new entity(strings[2055], false, 372, IFC4X3_RC1_IfcEdge_type); + IFC4X3_RC1_IfcEventTime_type = new entity(strings[2056], false, 426, IFC4X3_RC1_IfcSchedulingTime_type); + IFC4X3_RC1_IfcExtendedProperties_type = new entity(strings[2057], true, 430, IFC4X3_RC1_IfcPropertyAbstraction_type); + IFC4X3_RC1_IfcExternalReferenceRelationship_type = new entity(strings[2058], false, 436, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcFace_type = new entity(strings[2059], false, 442, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcFaceBound_type = new entity(strings[2060], false, 444, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcFaceOuterBound_type = new entity(strings[2061], false, 445, IFC4X3_RC1_IfcFaceBound_type); + IFC4X3_RC1_IfcFaceSurface_type = new entity(strings[2062], false, 446, IFC4X3_RC1_IfcFace_type); + IFC4X3_RC1_IfcFailureConnectionCondition_type = new entity(strings[2063], false, 454, IFC4X3_RC1_IfcStructuralConnectionCondition_type); + IFC4X3_RC1_IfcFillAreaStyle_type = new entity(strings[2064], false, 464, IFC4X3_RC1_IfcPresentationStyle_type); + IFC4X3_RC1_IfcGeometricRepresentationContext_type = new entity(strings[2065], false, 514, IFC4X3_RC1_IfcRepresentationContext_type); + IFC4X3_RC1_IfcGeometricRepresentationItem_type = new entity(strings[2066], true, 515, IFC4X3_RC1_IfcRepresentationItem_type); + IFC4X3_RC1_IfcGeometricRepresentationSubContext_type = new entity(strings[2067], false, 516, IFC4X3_RC1_IfcGeometricRepresentationContext_type); + IFC4X3_RC1_IfcGeometricSet_type = new entity(strings[2068], false, 517, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcGridPlacement_type = new entity(strings[2069], false, 528, IFC4X3_RC1_IfcObjectPlacement_type); + IFC4X3_RC1_IfcHalfSpaceSolid_type = new entity(strings[2070], false, 532, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcImageTexture_type = new entity(strings[2071], false, 544, IFC4X3_RC1_IfcSurfaceTexture_type); + IFC4X3_RC1_IfcIndexedColourMap_type = new entity(strings[2072], false, 550, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcIndexedTextureMap_type = new entity(strings[2073], true, 554, IFC4X3_RC1_IfcTextureCoordinate_type); + IFC4X3_RC1_IfcIndexedTriangleTextureMap_type = new entity(strings[2074], false, 555, IFC4X3_RC1_IfcIndexedTextureMap_type); + IFC4X3_RC1_IfcIrregularTimeSeries_type = new entity(strings[2075], false, 568, IFC4X3_RC1_IfcTimeSeries_type); + IFC4X3_RC1_IfcLagTime_type = new entity(strings[2076], false, 583, IFC4X3_RC1_IfcSchedulingTime_type); + IFC4X3_RC1_IfcLightSource_type = new entity(strings[2077], true, 602, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcLightSourceAmbient_type = new entity(strings[2078], false, 603, IFC4X3_RC1_IfcLightSource_type); + IFC4X3_RC1_IfcLightSourceDirectional_type = new entity(strings[2079], false, 604, IFC4X3_RC1_IfcLightSource_type); + IFC4X3_RC1_IfcLightSourceGoniometric_type = new entity(strings[2080], false, 605, IFC4X3_RC1_IfcLightSource_type); + IFC4X3_RC1_IfcLightSourcePositional_type = new entity(strings[2081], false, 606, IFC4X3_RC1_IfcLightSource_type); + IFC4X3_RC1_IfcLightSourceSpot_type = new entity(strings[2082], false, 607, IFC4X3_RC1_IfcLightSourcePositional_type); + IFC4X3_RC1_IfcLinearAxisWithInclination_type = new entity(strings[2083], false, 610, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcLinearPlacement_type = new entity(strings[2084], false, 613, IFC4X3_RC1_IfcObjectPlacement_type); + IFC4X3_RC1_IfcLinearPlacementWithInclination_type = new entity(strings[2085], false, 614, IFC4X3_RC1_IfcLinearPlacement_type); + IFC4X3_RC1_IfcLinearSpanPlacement_type = new entity(strings[2086], false, 616, IFC4X3_RC1_IfcLinearPlacement_type); + IFC4X3_RC1_IfcLocalPlacement_type = new entity(strings[2087], false, 625, IFC4X3_RC1_IfcObjectPlacement_type); + IFC4X3_RC1_IfcLoop_type = new entity(strings[2088], false, 628, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcMappedItem_type = new entity(strings[2089], false, 637, IFC4X3_RC1_IfcRepresentationItem_type); + IFC4X3_RC1_IfcMaterial_type = new entity(strings[2090], false, 645, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialConstituent_type = new entity(strings[2091], false, 647, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialConstituentSet_type = new entity(strings[2092], false, 648, IFC4X3_RC1_IfcMaterialDefinition_type); + IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type = new entity(strings[2093], false, 650, IFC4X3_RC1_IfcProductRepresentation_type); + IFC4X3_RC1_IfcMaterialLayerSetUsage_type = new entity(strings[2094], false, 653, IFC4X3_RC1_IfcMaterialUsageDefinition_type); + IFC4X3_RC1_IfcMaterialProfileSetUsage_type = new entity(strings[2095], false, 658, IFC4X3_RC1_IfcMaterialUsageDefinition_type); + IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type = new entity(strings[2096], false, 659, IFC4X3_RC1_IfcMaterialProfileSetUsage_type); + IFC4X3_RC1_IfcMaterialProperties_type = new entity(strings[2097], false, 661, IFC4X3_RC1_IfcExtendedProperties_type); + IFC4X3_RC1_IfcMaterialRelationship_type = new entity(strings[2098], false, 662, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcMirroredProfileDef_type = new entity(strings[2099], false, 679, IFC4X3_RC1_IfcDerivedProfileDef_type); + IFC4X3_RC1_IfcObjectDefinition_type = new entity(strings[2100], true, 711, IFC4X3_RC1_IfcRoot_type); + IFC4X3_RC1_IfcOpenCrossProfileDef_type = new entity(strings[2101], false, 723, IFC4X3_RC1_IfcProfileDef_type); + IFC4X3_RC1_IfcOpenShell_type = new entity(strings[2102], false, 727, IFC4X3_RC1_IfcConnectedFaceSet_type); + IFC4X3_RC1_IfcOrganizationRelationship_type = new entity(strings[2103], false, 729, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcOrientationExpression_type = new entity(strings[2104], false, 730, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcOrientedEdge_type = new entity(strings[2105], false, 731, IFC4X3_RC1_IfcEdge_type); + IFC4X3_RC1_IfcParameterizedProfileDef_type = new entity(strings[2106], true, 737, IFC4X3_RC1_IfcProfileDef_type); + IFC4X3_RC1_IfcPath_type = new entity(strings[2107], false, 739, IFC4X3_RC1_IfcTopologicalRepresentationItem_type); + IFC4X3_RC1_IfcPhysicalComplexQuantity_type = new entity(strings[2108], false, 752, IFC4X3_RC1_IfcPhysicalQuantity_type); + IFC4X3_RC1_IfcPixelTexture_type = new entity(strings[2109], false, 766, IFC4X3_RC1_IfcSurfaceTexture_type); + IFC4X3_RC1_IfcPlacement_type = new entity(strings[2110], true, 767, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcPlanarExtent_type = new entity(strings[2111], false, 769, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcPoint_type = new entity(strings[2112], true, 778, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcPointOnCurve_type = new entity(strings[2113], false, 779, IFC4X3_RC1_IfcPoint_type); + IFC4X3_RC1_IfcPointOnSurface_type = new entity(strings[2114], false, 780, IFC4X3_RC1_IfcPoint_type); + IFC4X3_RC1_IfcPolyLoop_type = new entity(strings[2115], false, 785, IFC4X3_RC1_IfcLoop_type); + IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type = new entity(strings[2116], false, 782, IFC4X3_RC1_IfcHalfSpaceSolid_type); + IFC4X3_RC1_IfcPreDefinedItem_type = new entity(strings[2117], true, 796, IFC4X3_RC1_IfcPresentationItem_type); + IFC4X3_RC1_IfcPreDefinedProperties_type = new entity(strings[2118], true, 797, IFC4X3_RC1_IfcPropertyAbstraction_type); + IFC4X3_RC1_IfcPreDefinedTextFont_type = new entity(strings[2119], true, 799, IFC4X3_RC1_IfcPreDefinedItem_type); + IFC4X3_RC1_IfcProductDefinitionShape_type = new entity(strings[2120], false, 815, IFC4X3_RC1_IfcProductRepresentation_type); + IFC4X3_RC1_IfcProfileProperties_type = new entity(strings[2121], false, 820, IFC4X3_RC1_IfcExtendedProperties_type); + IFC4X3_RC1_IfcProperty_type = new entity(strings[2122], true, 830, IFC4X3_RC1_IfcPropertyAbstraction_type); + IFC4X3_RC1_IfcPropertyDefinition_type = new entity(strings[2123], true, 833, IFC4X3_RC1_IfcRoot_type); + IFC4X3_RC1_IfcPropertyDependencyRelationship_type = new entity(strings[2124], false, 834, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcPropertySetDefinition_type = new entity(strings[2125], true, 840, IFC4X3_RC1_IfcPropertyDefinition_type); + IFC4X3_RC1_IfcPropertyTemplateDefinition_type = new entity(strings[2126], true, 848, IFC4X3_RC1_IfcPropertyDefinition_type); + IFC4X3_RC1_IfcQuantitySet_type = new entity(strings[2127], true, 862, IFC4X3_RC1_IfcPropertySetDefinition_type); + IFC4X3_RC1_IfcRectangleProfileDef_type = new entity(strings[2128], false, 886, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcRegularTimeSeries_type = new entity(strings[2129], false, 895, IFC4X3_RC1_IfcTimeSeries_type); + IFC4X3_RC1_IfcReinforcementBarProperties_type = new entity(strings[2130], false, 898, IFC4X3_RC1_IfcPreDefinedProperties_type); + IFC4X3_RC1_IfcRelationship_type = new entity(strings[2131], true, 927, IFC4X3_RC1_IfcRoot_type); + IFC4X3_RC1_IfcResourceApprovalRelationship_type = new entity(strings[2132], false, 966, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcResourceConstraintRelationship_type = new entity(strings[2133], false, 967, IFC4X3_RC1_IfcResourceLevelRelationship_type); + IFC4X3_RC1_IfcResourceTime_type = new entity(strings[2134], false, 971, IFC4X3_RC1_IfcSchedulingTime_type); + IFC4X3_RC1_IfcRoundedRectangleProfileDef_type = new entity(strings[2135], false, 987, IFC4X3_RC1_IfcRectangleProfileDef_type); + IFC4X3_RC1_IfcSectionProperties_type = new entity(strings[2136], false, 999, IFC4X3_RC1_IfcPreDefinedProperties_type); + IFC4X3_RC1_IfcSectionReinforcementProperties_type = new entity(strings[2137], false, 1000, IFC4X3_RC1_IfcPreDefinedProperties_type); + IFC4X3_RC1_IfcSectionedSpine_type = new entity(strings[2138], false, 996, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcShellBasedSurfaceModel_type = new entity(strings[2139], false, 1015, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcSimpleProperty_type = new entity(strings[2140], true, 1022, IFC4X3_RC1_IfcProperty_type); + IFC4X3_RC1_IfcSlippageConnectionCondition_type = new entity(strings[2141], false, 1036, IFC4X3_RC1_IfcStructuralConnectionCondition_type); + IFC4X3_RC1_IfcSolidModel_type = new entity(strings[2142], true, 1041, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcStructuralLoadLinearForce_type = new entity(strings[2143], false, 1098, IFC4X3_RC1_IfcStructuralLoadStatic_type); + IFC4X3_RC1_IfcStructuralLoadPlanarForce_type = new entity(strings[2144], false, 1100, IFC4X3_RC1_IfcStructuralLoadStatic_type); + IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type = new entity(strings[2145], false, 1101, IFC4X3_RC1_IfcStructuralLoadStatic_type); + IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[2146], false, 1102, IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type); + IFC4X3_RC1_IfcStructuralLoadSingleForce_type = new entity(strings[2147], false, 1103, IFC4X3_RC1_IfcStructuralLoadStatic_type); + IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type = new entity(strings[2148], false, 1104, IFC4X3_RC1_IfcStructuralLoadSingleForce_type); + IFC4X3_RC1_IfcSubedge_type = new entity(strings[2149], false, 1128, IFC4X3_RC1_IfcEdge_type); + IFC4X3_RC1_IfcSurface_type = new entity(strings[2150], true, 1129, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcSurfaceStyleRendering_type = new entity(strings[2151], false, 1143, IFC4X3_RC1_IfcSurfaceStyleShading_type); + IFC4X3_RC1_IfcSweptAreaSolid_type = new entity(strings[2152], true, 1147, IFC4X3_RC1_IfcSolidModel_type); + IFC4X3_RC1_IfcSweptDiskSolid_type = new entity(strings[2153], false, 1148, IFC4X3_RC1_IfcSolidModel_type); + IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type = new entity(strings[2154], false, 1149, IFC4X3_RC1_IfcSweptDiskSolid_type); + IFC4X3_RC1_IfcSweptSurface_type = new entity(strings[2155], true, 1150, IFC4X3_RC1_IfcSurface_type); + IFC4X3_RC1_IfcTShapeProfileDef_type = new entity(strings[2156], false, 1241, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcTessellatedItem_type = new entity(strings[2157], true, 1183, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcTextLiteral_type = new entity(strings[2158], false, 1189, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcTextLiteralWithExtent_type = new entity(strings[2159], false, 1190, IFC4X3_RC1_IfcTextLiteral_type); + IFC4X3_RC1_IfcTextStyleFontModel_type = new entity(strings[2160], false, 1193, IFC4X3_RC1_IfcPreDefinedTextFont_type); + IFC4X3_RC1_IfcTrapeziumProfileDef_type = new entity(strings[2161], false, 1235, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcTypeObject_type = new entity(strings[2162], false, 1245, IFC4X3_RC1_IfcObjectDefinition_type); + IFC4X3_RC1_IfcTypeProcess_type = new entity(strings[2163], true, 1246, IFC4X3_RC1_IfcTypeObject_type); + IFC4X3_RC1_IfcTypeProduct_type = new entity(strings[2164], false, 1247, IFC4X3_RC1_IfcTypeObject_type); + IFC4X3_RC1_IfcTypeResource_type = new entity(strings[2165], true, 1248, IFC4X3_RC1_IfcTypeObject_type); + IFC4X3_RC1_IfcUShapeProfileDef_type = new entity(strings[2166], false, 1259, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcVector_type = new entity(strings[2167], false, 1265, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcVertexLoop_type = new entity(strings[2168], false, 1268, IFC4X3_RC1_IfcLoop_type); + IFC4X3_RC1_IfcWindowStyle_type = new entity(strings[2169], false, 1301, IFC4X3_RC1_IfcTypeProduct_type); + IFC4X3_RC1_IfcZShapeProfileDef_type = new entity(strings[2170], false, 1316, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcClassificationReferenceSelect_type = new select_type(strings[2171], 176, { + IFC4X3_RC1_IfcClassification_type, + IFC4X3_RC1_IfcClassificationReference_type + }); + IFC4X3_RC1_IfcClassificationSelect_type = new select_type(strings[2172], 177, { + IFC4X3_RC1_IfcClassification_type, + IFC4X3_RC1_IfcClassificationReference_type + }); + IFC4X3_RC1_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[2173], 251, { + IFC4X3_RC1_IfcCoordinateReferenceSystem_type, + IFC4X3_RC1_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC1_IfcDefinitionSelect_type = new select_type(strings[2174], 300, { + IFC4X3_RC1_IfcObjectDefinition_type, + IFC4X3_RC1_IfcPropertyDefinition_type + }); + IFC4X3_RC1_IfcDocumentSelect_type = new select_type(strings[2175], 338, { + IFC4X3_RC1_IfcDocumentInformation_type, + IFC4X3_RC1_IfcDocumentReference_type + }); + IFC4X3_RC1_IfcHatchLineDistanceSelect_type = new select_type(strings[2176], 533, { + IFC4X3_RC1_IfcPositiveLengthMeasure_type, + IFC4X3_RC1_IfcVector_type + }); + IFC4X3_RC1_IfcMeasureValue_type = new select_type(strings[2177], 665, { + IFC4X3_RC1_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC1_IfcAreaMeasure_type, + IFC4X3_RC1_IfcComplexNumber_type, + IFC4X3_RC1_IfcContextDependentMeasure_type, + IFC4X3_RC1_IfcCountMeasure_type, + IFC4X3_RC1_IfcDescriptiveMeasure_type, + IFC4X3_RC1_IfcElectricCurrentMeasure_type, + IFC4X3_RC1_IfcLengthMeasure_type, + IFC4X3_RC1_IfcLuminousIntensityMeasure_type, + IFC4X3_RC1_IfcMassMeasure_type, + IFC4X3_RC1_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC1_IfcNormalisedRatioMeasure_type, + IFC4X3_RC1_IfcNumericMeasure_type, + IFC4X3_RC1_IfcParameterValue_type, + IFC4X3_RC1_IfcPlaneAngleMeasure_type, + IFC4X3_RC1_IfcPositiveLengthMeasure_type, + IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC1_IfcPositiveRatioMeasure_type, + IFC4X3_RC1_IfcRatioMeasure_type, + IFC4X3_RC1_IfcSolidAngleMeasure_type, + IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC1_IfcTimeMeasure_type, + IFC4X3_RC1_IfcVolumeMeasure_type + }); + IFC4X3_RC1_IfcPointOrVertexPoint_type = new select_type(strings[2178], 781, { + IFC4X3_RC1_IfcPoint_type, + IFC4X3_RC1_IfcVertexPoint_type + }); + IFC4X3_RC1_IfcPresentationStyleSelect_type = new select_type(strings[2179], 807, { + IFC4X3_RC1_IfcCurveStyle_type, + IFC4X3_RC1_IfcFillAreaStyle_type, + IFC4X3_RC1_IfcNullStyle_type, + IFC4X3_RC1_IfcSurfaceStyle_type, + IFC4X3_RC1_IfcTextStyle_type + }); + IFC4X3_RC1_IfcProductRepresentationSelect_type = new select_type(strings[2180], 817, { + IFC4X3_RC1_IfcProductDefinitionShape_type, + IFC4X3_RC1_IfcRepresentationMap_type + }); + IFC4X3_RC1_IfcPropertySetDefinitionSet_type = new type_declaration(strings[2181], 842, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertySetDefinition_type))); + IFC4X3_RC1_IfcResourceObjectSelect_type = new select_type(strings[2182], 969, { + IFC4X3_RC1_IfcActorRole_type, + IFC4X3_RC1_IfcAppliedValue_type, + IFC4X3_RC1_IfcApproval_type, + IFC4X3_RC1_IfcConstraint_type, + IFC4X3_RC1_IfcContextDependentUnit_type, + IFC4X3_RC1_IfcConversionBasedUnit_type, + IFC4X3_RC1_IfcExternalInformation_type, + IFC4X3_RC1_IfcExternalReference_type, + IFC4X3_RC1_IfcMaterialDefinition_type, + IFC4X3_RC1_IfcOrganization_type, + IFC4X3_RC1_IfcPerson_type, + IFC4X3_RC1_IfcPersonAndOrganization_type, + IFC4X3_RC1_IfcPhysicalQuantity_type, + IFC4X3_RC1_IfcProfileDef_type, + IFC4X3_RC1_IfcPropertyAbstraction_type, + IFC4X3_RC1_IfcShapeAspect_type, + IFC4X3_RC1_IfcTimeSeries_type + }); + IFC4X3_RC1_IfcTextFontSelect_type = new select_type(strings[2183], 1188, { + IFC4X3_RC1_IfcExternallyDefinedTextFont_type, + IFC4X3_RC1_IfcPreDefinedTextFont_type + }); + IFC4X3_RC1_IfcValue_type = new select_type(strings[2184], 1260, { + IFC4X3_RC1_IfcDerivedMeasureValue_type, + IFC4X3_RC1_IfcMeasureValue_type, + IFC4X3_RC1_IfcSimpleValue_type + }); + IFC4X3_RC1_IfcAdvancedFace_type = new entity(strings[2185], false, 16, IFC4X3_RC1_IfcFaceSurface_type); + IFC4X3_RC1_IfcAlignment2DHorizontal_type = new entity(strings[2186], false, 34, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcAlignment2DSegment_type = new entity(strings[2187], true, 36, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcAlignment2DVertical_type = new entity(strings[2188], false, 41, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcAlignment2DVerticalSegment_type = new entity(strings[2189], true, 42, IFC4X3_RC1_IfcAlignment2DSegment_type); + IFC4X3_RC1_IfcAnnotationFillArea_type = new entity(strings[2190], false, 50, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type = new entity(strings[2191], false, 66, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcAxis1Placement_type = new entity(strings[2192], false, 70, IFC4X3_RC1_IfcPlacement_type); + IFC4X3_RC1_IfcAxis2Placement2D_type = new entity(strings[2193], false, 72, IFC4X3_RC1_IfcPlacement_type); + IFC4X3_RC1_IfcAxis2Placement3D_type = new entity(strings[2194], false, 73, IFC4X3_RC1_IfcPlacement_type); + IFC4X3_RC1_IfcAxisLateralInclination_type = new entity(strings[2195], true, 74, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcBooleanResult_type = new entity(strings[2196], false, 95, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcBoundedSurface_type = new entity(strings[2197], true, 104, IFC4X3_RC1_IfcSurface_type); + IFC4X3_RC1_IfcBoundingBox_type = new entity(strings[2198], false, 105, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcBoxedHalfSpace_type = new entity(strings[2199], false, 107, IFC4X3_RC1_IfcHalfSpaceSolid_type); + IFC4X3_RC1_IfcCShapeProfileDef_type = new entity(strings[2200], false, 270, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcCartesianPoint_type = new entity(strings[2201], false, 151, IFC4X3_RC1_IfcPoint_type); + IFC4X3_RC1_IfcCartesianPointList_type = new entity(strings[2202], true, 152, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcCartesianPointList2D_type = new entity(strings[2203], false, 153, IFC4X3_RC1_IfcCartesianPointList_type); + IFC4X3_RC1_IfcCartesianPointList3D_type = new entity(strings[2204], false, 154, IFC4X3_RC1_IfcCartesianPointList_type); + IFC4X3_RC1_IfcCartesianTransformationOperator_type = new entity(strings[2205], true, 155, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcCartesianTransformationOperator2D_type = new entity(strings[2206], false, 156, IFC4X3_RC1_IfcCartesianTransformationOperator_type); + IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[2207], false, 157, IFC4X3_RC1_IfcCartesianTransformationOperator2D_type); + IFC4X3_RC1_IfcCartesianTransformationOperator3D_type = new entity(strings[2208], false, 158, IFC4X3_RC1_IfcCartesianTransformationOperator_type); + IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[2209], false, 159, IFC4X3_RC1_IfcCartesianTransformationOperator3D_type); + IFC4X3_RC1_IfcCircleProfileDef_type = new entity(strings[2210], false, 170, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcClosedShell_type = new entity(strings[2211], false, 178, IFC4X3_RC1_IfcConnectedFaceSet_type); + IFC4X3_RC1_IfcColourRgb_type = new entity(strings[2212], false, 184, IFC4X3_RC1_IfcColourSpecification_type); + IFC4X3_RC1_IfcComplexProperty_type = new entity(strings[2213], false, 195, IFC4X3_RC1_IfcProperty_type); + IFC4X3_RC1_IfcCompositeCurveSegment_type = new entity(strings[2214], false, 200, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcConstructionResourceType_type = new entity(strings[2215], true, 230, IFC4X3_RC1_IfcTypeResource_type); + IFC4X3_RC1_IfcContext_type = new entity(strings[2216], true, 231, IFC4X3_RC1_IfcObjectDefinition_type); + IFC4X3_RC1_IfcCrewResourceType_type = new entity(strings[2217], false, 265, IFC4X3_RC1_IfcConstructionResourceType_type); + IFC4X3_RC1_IfcCsgPrimitive3D_type = new entity(strings[2218], true, 267, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcCsgSolid_type = new entity(strings[2219], false, 269, IFC4X3_RC1_IfcSolidModel_type); + IFC4X3_RC1_IfcCurve_type = new entity(strings[2220], true, 276, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcCurveBoundedPlane_type = new entity(strings[2221], false, 277, IFC4X3_RC1_IfcBoundedSurface_type); + IFC4X3_RC1_IfcCurveBoundedSurface_type = new entity(strings[2222], false, 278, IFC4X3_RC1_IfcBoundedSurface_type); + IFC4X3_RC1_IfcDirection_type = new entity(strings[2223], false, 309, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type = new entity(strings[2224], true, 311, IFC4X3_RC1_IfcSweptAreaSolid_type); + IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type = new entity(strings[2225], true, 312, IFC4X3_RC1_IfcSweptAreaSolid_type); + IFC4X3_RC1_IfcDistanceExpression_type = new entity(strings[2226], false, 316, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcDoorStyle_type = new entity(strings[2227], false, 346, IFC4X3_RC1_IfcTypeProduct_type); + IFC4X3_RC1_IfcEdgeLoop_type = new entity(strings[2228], false, 373, IFC4X3_RC1_IfcLoop_type); + IFC4X3_RC1_IfcElementQuantity_type = new entity(strings[2229], false, 409, IFC4X3_RC1_IfcQuantitySet_type); + IFC4X3_RC1_IfcElementType_type = new entity(strings[2230], true, 410, IFC4X3_RC1_IfcTypeProduct_type); + IFC4X3_RC1_IfcElementarySurface_type = new entity(strings[2231], true, 402, IFC4X3_RC1_IfcSurface_type); + IFC4X3_RC1_IfcEllipseProfileDef_type = new entity(strings[2232], false, 412, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcEventType_type = new entity(strings[2233], false, 428, IFC4X3_RC1_IfcTypeProcess_type); + IFC4X3_RC1_IfcExtrudedAreaSolid_type = new entity(strings[2234], false, 440, IFC4X3_RC1_IfcSweptAreaSolid_type); + IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type = new entity(strings[2235], false, 441, IFC4X3_RC1_IfcExtrudedAreaSolid_type); + IFC4X3_RC1_IfcFaceBasedSurfaceModel_type = new entity(strings[2236], false, 443, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcFillAreaStyleHatching_type = new entity(strings[2237], false, 465, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcFillAreaStyleTiles_type = new entity(strings[2238], false, 466, IFC4X3_RC1_IfcGeometricRepresentationItem_type); + IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[2239], false, 474, IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC1_IfcFurnishingElementType_type = new entity(strings[2240], false, 505, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcFurnitureType_type = new entity(strings[2241], false, 507, IFC4X3_RC1_IfcFurnishingElementType_type); + IFC4X3_RC1_IfcGeographicElementType_type = new entity(strings[2242], false, 510, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcGeometricCurveSet_type = new entity(strings[2243], false, 512, IFC4X3_RC1_IfcGeometricSet_type); + IFC4X3_RC1_IfcIShapeProfileDef_type = new entity(strings[2244], false, 570, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type = new entity(strings[2245], false, 549, IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type); + IFC4X3_RC1_IfcIndexedPolygonalFace_type = new entity(strings[2246], false, 552, IFC4X3_RC1_IfcTessellatedItem_type); + IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[2247], false, 553, IFC4X3_RC1_IfcIndexedPolygonalFace_type); + IFC4X3_RC1_IfcLShapeProfileDef_type = new entity(strings[2248], false, 629, IFC4X3_RC1_IfcParameterizedProfileDef_type); + IFC4X3_RC1_IfcLaborResourceType_type = new entity(strings[2249], false, 581, IFC4X3_RC1_IfcConstructionResourceType_type); + IFC4X3_RC1_IfcLine_type = new entity(strings[2250], false, 608, IFC4X3_RC1_IfcCurve_type); + IFC4X3_RC1_IfcManifoldSolidBrep_type = new entity(strings[2251], true, 635, IFC4X3_RC1_IfcSolidModel_type); + IFC4X3_RC1_IfcObject_type = new entity(strings[2252], true, 710, IFC4X3_RC1_IfcObjectDefinition_type); + IFC4X3_RC1_IfcOffsetCurve_type = new entity(strings[2253], true, 719, IFC4X3_RC1_IfcCurve_type); + IFC4X3_RC1_IfcOffsetCurve2D_type = new entity(strings[2254], false, 720, IFC4X3_RC1_IfcOffsetCurve_type); + IFC4X3_RC1_IfcOffsetCurve3D_type = new entity(strings[2255], false, 721, IFC4X3_RC1_IfcOffsetCurve_type); + IFC4X3_RC1_IfcOffsetCurveByDistances_type = new entity(strings[2256], false, 722, IFC4X3_RC1_IfcOffsetCurve_type); + IFC4X3_RC1_IfcPcurve_type = new entity(strings[2257], false, 742, IFC4X3_RC1_IfcCurve_type); + IFC4X3_RC1_IfcPlanarBox_type = new entity(strings[2258], false, 768, IFC4X3_RC1_IfcPlanarExtent_type); + IFC4X3_RC1_IfcPlane_type = new entity(strings[2259], false, 771, IFC4X3_RC1_IfcElementarySurface_type); + IFC4X3_RC1_IfcPreDefinedColour_type = new entity(strings[2260], true, 794, IFC4X3_RC1_IfcPreDefinedItem_type); + IFC4X3_RC1_IfcPreDefinedCurveFont_type = new entity(strings[2261], true, 795, IFC4X3_RC1_IfcPreDefinedItem_type); + IFC4X3_RC1_IfcPreDefinedPropertySet_type = new entity(strings[2262], true, 798, IFC4X3_RC1_IfcPropertySetDefinition_type); + IFC4X3_RC1_IfcProcedureType_type = new entity(strings[2263], false, 810, IFC4X3_RC1_IfcTypeProcess_type); + IFC4X3_RC1_IfcProcess_type = new entity(strings[2264], true, 812, IFC4X3_RC1_IfcObject_type); + IFC4X3_RC1_IfcProduct_type = new entity(strings[2265], true, 814, IFC4X3_RC1_IfcObject_type); + IFC4X3_RC1_IfcProject_type = new entity(strings[2266], false, 822, IFC4X3_RC1_IfcContext_type); + IFC4X3_RC1_IfcProjectLibrary_type = new entity(strings[2267], false, 827, IFC4X3_RC1_IfcContext_type); + IFC4X3_RC1_IfcPropertyBoundedValue_type = new entity(strings[2268], false, 832, IFC4X3_RC1_IfcSimpleProperty_type); + IFC4X3_RC1_IfcPropertyEnumeratedValue_type = new entity(strings[2269], false, 835, IFC4X3_RC1_IfcSimpleProperty_type); + IFC4X3_RC1_IfcPropertyListValue_type = new entity(strings[2270], false, 837, IFC4X3_RC1_IfcSimpleProperty_type); + IFC4X3_RC1_IfcPropertyReferenceValue_type = new entity(strings[2271], false, 838, IFC4X3_RC1_IfcSimpleProperty_type); + IFC4X3_RC1_IfcPropertySet_type = new entity(strings[2272], false, 839, IFC4X3_RC1_IfcPropertySetDefinition_type); + IFC4X3_RC1_IfcPropertySetTemplate_type = new entity(strings[2273], false, 843, IFC4X3_RC1_IfcPropertyTemplateDefinition_type); + IFC4X3_RC1_IfcPropertySingleValue_type = new entity(strings[2274], false, 845, IFC4X3_RC1_IfcSimpleProperty_type); + IFC4X3_RC1_IfcPropertyTableValue_type = new entity(strings[2275], false, 846, IFC4X3_RC1_IfcSimpleProperty_type); + IFC4X3_RC1_IfcPropertyTemplate_type = new entity(strings[2276], true, 847, IFC4X3_RC1_IfcPropertyTemplateDefinition_type); + IFC4X3_RC1_IfcProxy_type = new entity(strings[2277], false, 855, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcRectangleHollowProfileDef_type = new entity(strings[2278], false, 885, IFC4X3_RC1_IfcRectangleProfileDef_type); + IFC4X3_RC1_IfcRectangularPyramid_type = new entity(strings[2279], false, 887, IFC4X3_RC1_IfcCsgPrimitive3D_type); + IFC4X3_RC1_IfcRectangularTrimmedSurface_type = new entity(strings[2280], false, 888, IFC4X3_RC1_IfcBoundedSurface_type); + IFC4X3_RC1_IfcReinforcementDefinitionProperties_type = new entity(strings[2281], false, 899, IFC4X3_RC1_IfcPreDefinedPropertySet_type); + IFC4X3_RC1_IfcRelAssigns_type = new entity(strings[2282], true, 911, IFC4X3_RC1_IfcRelationship_type); + IFC4X3_RC1_IfcRelAssignsToActor_type = new entity(strings[2283], false, 912, IFC4X3_RC1_IfcRelAssigns_type); + IFC4X3_RC1_IfcRelAssignsToControl_type = new entity(strings[2284], false, 913, IFC4X3_RC1_IfcRelAssigns_type); + IFC4X3_RC1_IfcRelAssignsToGroup_type = new entity(strings[2285], false, 914, IFC4X3_RC1_IfcRelAssigns_type); + IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type = new entity(strings[2286], false, 915, IFC4X3_RC1_IfcRelAssignsToGroup_type); + IFC4X3_RC1_IfcRelAssignsToProcess_type = new entity(strings[2287], false, 916, IFC4X3_RC1_IfcRelAssigns_type); + IFC4X3_RC1_IfcRelAssignsToProduct_type = new entity(strings[2288], false, 917, IFC4X3_RC1_IfcRelAssigns_type); + IFC4X3_RC1_IfcRelAssignsToResource_type = new entity(strings[2289], false, 918, IFC4X3_RC1_IfcRelAssigns_type); + IFC4X3_RC1_IfcRelAssociates_type = new entity(strings[2290], true, 919, IFC4X3_RC1_IfcRelationship_type); + IFC4X3_RC1_IfcRelAssociatesApproval_type = new entity(strings[2291], false, 920, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelAssociatesClassification_type = new entity(strings[2292], false, 921, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelAssociatesConstraint_type = new entity(strings[2293], false, 922, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelAssociatesDocument_type = new entity(strings[2294], false, 923, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelAssociatesLibrary_type = new entity(strings[2295], false, 924, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelAssociatesMaterial_type = new entity(strings[2296], false, 925, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelAssociatesProfileDef_type = new entity(strings[2297], false, 926, IFC4X3_RC1_IfcRelAssociates_type); + IFC4X3_RC1_IfcRelConnects_type = new entity(strings[2298], true, 928, IFC4X3_RC1_IfcRelationship_type); + IFC4X3_RC1_IfcRelConnectsElements_type = new entity(strings[2299], false, 929, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelConnectsPathElements_type = new entity(strings[2300], false, 930, IFC4X3_RC1_IfcRelConnectsElements_type); + IFC4X3_RC1_IfcRelConnectsPortToElement_type = new entity(strings[2301], false, 932, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelConnectsPorts_type = new entity(strings[2302], false, 931, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelConnectsStructuralActivity_type = new entity(strings[2303], false, 933, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelConnectsStructuralMember_type = new entity(strings[2304], false, 934, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelConnectsWithEccentricity_type = new entity(strings[2305], false, 935, IFC4X3_RC1_IfcRelConnectsStructuralMember_type); + IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type = new entity(strings[2306], false, 936, IFC4X3_RC1_IfcRelConnectsElements_type); + IFC4X3_RC1_IfcRelContainedInSpatialStructure_type = new entity(strings[2307], false, 937, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelCoversBldgElements_type = new entity(strings[2308], false, 938, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelCoversSpaces_type = new entity(strings[2309], false, 939, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelDeclares_type = new entity(strings[2310], false, 940, IFC4X3_RC1_IfcRelationship_type); + IFC4X3_RC1_IfcRelDecomposes_type = new entity(strings[2311], true, 941, IFC4X3_RC1_IfcRelationship_type); + IFC4X3_RC1_IfcRelDefines_type = new entity(strings[2312], true, 942, IFC4X3_RC1_IfcRelationship_type); + IFC4X3_RC1_IfcRelDefinesByObject_type = new entity(strings[2313], false, 943, IFC4X3_RC1_IfcRelDefines_type); + IFC4X3_RC1_IfcRelDefinesByProperties_type = new entity(strings[2314], false, 944, IFC4X3_RC1_IfcRelDefines_type); + IFC4X3_RC1_IfcRelDefinesByTemplate_type = new entity(strings[2315], false, 945, IFC4X3_RC1_IfcRelDefines_type); + IFC4X3_RC1_IfcRelDefinesByType_type = new entity(strings[2316], false, 946, IFC4X3_RC1_IfcRelDefines_type); + IFC4X3_RC1_IfcRelFillsElement_type = new entity(strings[2317], false, 947, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelFlowControlElements_type = new entity(strings[2318], false, 948, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelInterferesElements_type = new entity(strings[2319], false, 949, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelNests_type = new entity(strings[2320], false, 950, IFC4X3_RC1_IfcRelDecomposes_type); + IFC4X3_RC1_IfcRelPositions_type = new entity(strings[2321], false, 951, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelProjectsElement_type = new entity(strings[2322], false, 952, IFC4X3_RC1_IfcRelDecomposes_type); + IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type = new entity(strings[2323], false, 953, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelSequence_type = new entity(strings[2324], false, 954, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelServicesBuildings_type = new entity(strings[2325], false, 955, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelSpaceBoundary_type = new entity(strings[2326], false, 956, IFC4X3_RC1_IfcRelConnects_type); + IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type = new entity(strings[2327], false, 957, IFC4X3_RC1_IfcRelSpaceBoundary_type); + IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[2328], false, 958, IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type); + IFC4X3_RC1_IfcRelVoidsElement_type = new entity(strings[2329], false, 959, IFC4X3_RC1_IfcRelDecomposes_type); + IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[2330], false, 960, IFC4X3_RC1_IfcCompositeCurveSegment_type); + IFC4X3_RC1_IfcResource_type = new entity(strings[2331], true, 965, IFC4X3_RC1_IfcObject_type); + IFC4X3_RC1_IfcRevolvedAreaSolid_type = new entity(strings[2332], false, 972, IFC4X3_RC1_IfcSweptAreaSolid_type); + IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type = new entity(strings[2333], false, 973, IFC4X3_RC1_IfcRevolvedAreaSolid_type); + IFC4X3_RC1_IfcRightCircularCone_type = new entity(strings[2334], false, 974, IFC4X3_RC1_IfcCsgPrimitive3D_type); + IFC4X3_RC1_IfcRightCircularCylinder_type = new entity(strings[2335], false, 975, IFC4X3_RC1_IfcCsgPrimitive3D_type); + IFC4X3_RC1_IfcSectionedSolid_type = new entity(strings[2336], true, 994, IFC4X3_RC1_IfcSolidModel_type); + IFC4X3_RC1_IfcSectionedSolidHorizontal_type = new entity(strings[2337], false, 995, IFC4X3_RC1_IfcSectionedSolid_type); + IFC4X3_RC1_IfcSectionedSurface_type = new entity(strings[2338], false, 997, IFC4X3_RC1_IfcSurface_type); + IFC4X3_RC1_IfcSimplePropertyTemplate_type = new entity(strings[2339], false, 1023, IFC4X3_RC1_IfcPropertyTemplate_type); + IFC4X3_RC1_IfcSpatialElement_type = new entity(strings[2340], true, 1055, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcSpatialElementType_type = new entity(strings[2341], true, 1056, IFC4X3_RC1_IfcTypeProduct_type); + IFC4X3_RC1_IfcSpatialStructureElement_type = new entity(strings[2342], true, 1058, IFC4X3_RC1_IfcSpatialElement_type); + IFC4X3_RC1_IfcSpatialStructureElementType_type = new entity(strings[2343], true, 1059, IFC4X3_RC1_IfcSpatialElementType_type); + IFC4X3_RC1_IfcSpatialZone_type = new entity(strings[2344], false, 1060, IFC4X3_RC1_IfcSpatialElement_type); + IFC4X3_RC1_IfcSpatialZoneType_type = new entity(strings[2345], false, 1061, IFC4X3_RC1_IfcSpatialElementType_type); + IFC4X3_RC1_IfcSphere_type = new entity(strings[2346], false, 1067, IFC4X3_RC1_IfcCsgPrimitive3D_type); + IFC4X3_RC1_IfcSphericalSurface_type = new entity(strings[2347], false, 1068, IFC4X3_RC1_IfcElementarySurface_type); + IFC4X3_RC1_IfcStructuralActivity_type = new entity(strings[2348], true, 1080, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcStructuralItem_type = new entity(strings[2349], true, 1092, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcStructuralMember_type = new entity(strings[2350], true, 1107, IFC4X3_RC1_IfcStructuralItem_type); + IFC4X3_RC1_IfcStructuralReaction_type = new entity(strings[2351], true, 1112, IFC4X3_RC1_IfcStructuralActivity_type); + IFC4X3_RC1_IfcStructuralSurfaceMember_type = new entity(strings[2352], false, 1117, IFC4X3_RC1_IfcStructuralMember_type); + IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type = new entity(strings[2353], false, 1119, IFC4X3_RC1_IfcStructuralSurfaceMember_type); + IFC4X3_RC1_IfcStructuralSurfaceReaction_type = new entity(strings[2354], false, 1120, IFC4X3_RC1_IfcStructuralReaction_type); + IFC4X3_RC1_IfcSubContractResourceType_type = new entity(strings[2355], false, 1126, IFC4X3_RC1_IfcConstructionResourceType_type); + IFC4X3_RC1_IfcSurfaceCurve_type = new entity(strings[2356], false, 1130, IFC4X3_RC1_IfcCurve_type); + IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[2357], false, 1131, IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type = new entity(strings[2358], false, 1134, IFC4X3_RC1_IfcSweptSurface_type); + IFC4X3_RC1_IfcSurfaceOfRevolution_type = new entity(strings[2359], false, 1135, IFC4X3_RC1_IfcSweptSurface_type); + IFC4X3_RC1_IfcSystemFurnitureElementType_type = new entity(strings[2360], false, 1156, IFC4X3_RC1_IfcFurnishingElementType_type); + IFC4X3_RC1_IfcTask_type = new entity(strings[2361], false, 1164, IFC4X3_RC1_IfcProcess_type); + IFC4X3_RC1_IfcTaskType_type = new entity(strings[2362], false, 1168, IFC4X3_RC1_IfcTypeProcess_type); + IFC4X3_RC1_IfcTessellatedFaceSet_type = new entity(strings[2363], true, 1182, IFC4X3_RC1_IfcTessellatedItem_type); + IFC4X3_RC1_IfcToroidalSurface_type = new entity(strings[2364], false, 1218, IFC4X3_RC1_IfcElementarySurface_type); + IFC4X3_RC1_IfcTransportElementType_type = new entity(strings[2365], false, 1233, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcTriangulatedFaceSet_type = new entity(strings[2366], false, 1236, IFC4X3_RC1_IfcTessellatedFaceSet_type); + IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type = new entity(strings[2367], false, 1237, IFC4X3_RC1_IfcTriangulatedFaceSet_type); + IFC4X3_RC1_IfcWindowLiningProperties_type = new entity(strings[2368], false, 1296, IFC4X3_RC1_IfcPreDefinedPropertySet_type); + IFC4X3_RC1_IfcWindowPanelProperties_type = new entity(strings[2369], false, 1299, IFC4X3_RC1_IfcPreDefinedPropertySet_type); + IFC4X3_RC1_IfcAppliedValueSelect_type = new select_type(strings[2370], 54, { + IFC4X3_RC1_IfcMeasureWithUnit_type, + IFC4X3_RC1_IfcReference_type, + IFC4X3_RC1_IfcValue_type + }); + IFC4X3_RC1_IfcAxis2Placement_type = new select_type(strings[2371], 71, { + IFC4X3_RC1_IfcAxis2Placement2D_type, + IFC4X3_RC1_IfcAxis2Placement3D_type + }); + IFC4X3_RC1_IfcBooleanOperand_type = new select_type(strings[2372], 93, { + IFC4X3_RC1_IfcBooleanResult_type, + IFC4X3_RC1_IfcCsgPrimitive3D_type, + IFC4X3_RC1_IfcHalfSpaceSolid_type, + IFC4X3_RC1_IfcSolidModel_type, + IFC4X3_RC1_IfcTessellatedFaceSet_type + }); + IFC4X3_RC1_IfcColour_type = new select_type(strings[2373], 182, { + IFC4X3_RC1_IfcColourSpecification_type, + IFC4X3_RC1_IfcPreDefinedColour_type + }); + IFC4X3_RC1_IfcColourOrFactor_type = new select_type(strings[2374], 183, { + IFC4X3_RC1_IfcColourRgb_type, + IFC4X3_RC1_IfcNormalisedRatioMeasure_type + }); + IFC4X3_RC1_IfcCsgSelect_type = new select_type(strings[2375], 268, { + IFC4X3_RC1_IfcBooleanResult_type, + IFC4X3_RC1_IfcCsgPrimitive3D_type + }); + IFC4X3_RC1_IfcCurveStyleFontSelect_type = new select_type(strings[2376], 288, { + IFC4X3_RC1_IfcCurveStyleFont_type, + IFC4X3_RC1_IfcPreDefinedCurveFont_type + }); + IFC4X3_RC1_IfcFillStyleSelect_type = new select_type(strings[2377], 467, { + IFC4X3_RC1_IfcColour_type, + IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC1_IfcFillAreaStyleHatching_type, + IFC4X3_RC1_IfcFillAreaStyleTiles_type + }); + IFC4X3_RC1_IfcGeometricSetSelect_type = new select_type(strings[2378], 518, { + IFC4X3_RC1_IfcCurve_type, + IFC4X3_RC1_IfcPoint_type, + IFC4X3_RC1_IfcSurface_type + }); + IFC4X3_RC1_IfcGridPlacementDirectionSelect_type = new select_type(strings[2379], 529, { + IFC4X3_RC1_IfcDirection_type, + IFC4X3_RC1_IfcVirtualGridIntersection_type + }); + IFC4X3_RC1_IfcLinearAxisSelect_type = new select_type(strings[2380], 609, { + IFC4X3_RC1_IfcCurve_type, + IFC4X3_RC1_IfcLinearAxisWithInclination_type + }); + IFC4X3_RC1_IfcMetricValueSelect_type = new select_type(strings[2381], 678, { + IFC4X3_RC1_IfcAppliedValue_type, + IFC4X3_RC1_IfcMeasureWithUnit_type, + IFC4X3_RC1_IfcReference_type, + IFC4X3_RC1_IfcTable_type, + IFC4X3_RC1_IfcTimeSeries_type, + IFC4X3_RC1_IfcValue_type + }); + IFC4X3_RC1_IfcProcessSelect_type = new select_type(strings[2382], 813, { + IFC4X3_RC1_IfcProcess_type, + IFC4X3_RC1_IfcTypeProcess_type + }); + IFC4X3_RC1_IfcProductSelect_type = new select_type(strings[2383], 818, { + IFC4X3_RC1_IfcProduct_type, + IFC4X3_RC1_IfcTypeProduct_type + }); + IFC4X3_RC1_IfcPropertySetDefinitionSelect_type = new select_type(strings[2384], 841, { + IFC4X3_RC1_IfcPropertySetDefinition_type, + IFC4X3_RC1_IfcPropertySetDefinitionSet_type + }); + IFC4X3_RC1_IfcResourceSelect_type = new select_type(strings[2385], 970, { + IFC4X3_RC1_IfcResource_type, + IFC4X3_RC1_IfcTypeResource_type + }); + IFC4X3_RC1_IfcShell_type = new select_type(strings[2386], 1014, { + IFC4X3_RC1_IfcClosedShell_type, + IFC4X3_RC1_IfcOpenShell_type + }); + IFC4X3_RC1_IfcSolidOrShell_type = new select_type(strings[2387], 1042, { + IFC4X3_RC1_IfcClosedShell_type, + IFC4X3_RC1_IfcSolidModel_type + }); + IFC4X3_RC1_IfcSurfaceOrFaceSurface_type = new select_type(strings[2388], 1136, { + IFC4X3_RC1_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC1_IfcFaceSurface_type, + IFC4X3_RC1_IfcSurface_type + }); + IFC4X3_RC1_IfcTrimmingSelect_type = new select_type(strings[2389], 1240, { + IFC4X3_RC1_IfcCartesianPoint_type, + IFC4X3_RC1_IfcParameterValue_type + }); + IFC4X3_RC1_IfcVectorOrDirection_type = new select_type(strings[2390], 1266, { + IFC4X3_RC1_IfcDirection_type, + IFC4X3_RC1_IfcVector_type + }); + IFC4X3_RC1_IfcActor_type = new entity(strings[2391], false, 6, IFC4X3_RC1_IfcObject_type); + IFC4X3_RC1_IfcAdvancedBrep_type = new entity(strings[2392], false, 14, IFC4X3_RC1_IfcManifoldSolidBrep_type); + IFC4X3_RC1_IfcAdvancedBrepWithVoids_type = new entity(strings[2393], false, 15, IFC4X3_RC1_IfcAdvancedBrep_type); + IFC4X3_RC1_IfcAlignment2DCant_type = new entity(strings[2394], false, 30, IFC4X3_RC1_IfcAxisLateralInclination_type); + IFC4X3_RC1_IfcAlignment2DCantSegment_type = new entity(strings[2395], true, 32, IFC4X3_RC1_IfcAlignment2DSegment_type); + IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type = new entity(strings[2396], false, 35, IFC4X3_RC1_IfcAlignment2DSegment_type); + IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type = new entity(strings[2397], false, 37, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); + IFC4X3_RC1_IfcAlignment2DVerSegLine_type = new entity(strings[2398], false, 38, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); + IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type = new entity(strings[2399], false, 39, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); + IFC4X3_RC1_IfcAlignment2DVerSegTransition_type = new entity(strings[2400], false, 40, IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); + IFC4X3_RC1_IfcAnnotation_type = new entity(strings[2401], false, 49, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcBSplineSurface_type = new entity(strings[2402], true, 115, IFC4X3_RC1_IfcBoundedSurface_type); + IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type = new entity(strings[2403], false, 117, IFC4X3_RC1_IfcBSplineSurface_type); + IFC4X3_RC1_IfcBlock_type = new entity(strings[2404], false, 87, IFC4X3_RC1_IfcCsgPrimitive3D_type); + IFC4X3_RC1_IfcBooleanClippingResult_type = new entity(strings[2405], false, 92, IFC4X3_RC1_IfcBooleanResult_type); + IFC4X3_RC1_IfcBoundedCurve_type = new entity(strings[2406], true, 103, IFC4X3_RC1_IfcCurve_type); + IFC4X3_RC1_IfcBuildingStorey_type = new entity(strings[2407], false, 125, IFC4X3_RC1_IfcSpatialStructureElement_type); + IFC4X3_RC1_IfcBuiltElementType_type = new entity(strings[2408], false, 129, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcChimneyType_type = new entity(strings[2409], false, 166, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcCircleHollowProfileDef_type = new entity(strings[2410], false, 169, IFC4X3_RC1_IfcCircleProfileDef_type); + IFC4X3_RC1_IfcCivilElementType_type = new entity(strings[2411], false, 173, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcColumnType_type = new entity(strings[2412], false, 189, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcComplexPropertyTemplate_type = new entity(strings[2413], false, 196, IFC4X3_RC1_IfcPropertyTemplate_type); + IFC4X3_RC1_IfcCompositeCurve_type = new entity(strings[2414], false, 198, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcCompositeCurveOnSurface_type = new entity(strings[2415], false, 199, IFC4X3_RC1_IfcCompositeCurve_type); + IFC4X3_RC1_IfcConic_type = new entity(strings[2416], true, 209, IFC4X3_RC1_IfcCurve_type); + IFC4X3_RC1_IfcConstructionEquipmentResourceType_type = new entity(strings[2417], false, 221, IFC4X3_RC1_IfcConstructionResourceType_type); + IFC4X3_RC1_IfcConstructionMaterialResourceType_type = new entity(strings[2418], false, 224, IFC4X3_RC1_IfcConstructionResourceType_type); + IFC4X3_RC1_IfcConstructionProductResourceType_type = new entity(strings[2419], false, 227, IFC4X3_RC1_IfcConstructionResourceType_type); + IFC4X3_RC1_IfcConstructionResource_type = new entity(strings[2420], true, 229, IFC4X3_RC1_IfcResource_type); + IFC4X3_RC1_IfcControl_type = new entity(strings[2421], true, 234, IFC4X3_RC1_IfcObject_type); + IFC4X3_RC1_IfcCostItem_type = new entity(strings[2422], false, 252, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcCostSchedule_type = new entity(strings[2423], false, 254, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcCourseType_type = new entity(strings[2424], false, 259, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcCoveringType_type = new entity(strings[2425], false, 262, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcCrewResource_type = new entity(strings[2426], false, 264, IFC4X3_RC1_IfcConstructionResource_type); + IFC4X3_RC1_IfcCurtainWallType_type = new entity(strings[2427], false, 273, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcCurveSegment2D_type = new entity(strings[2428], true, 283, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcCylindricalSurface_type = new entity(strings[2429], false, 289, IFC4X3_RC1_IfcElementarySurface_type); + IFC4X3_RC1_IfcDeepFoundationType_type = new entity(strings[2430], false, 299, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcDistributionElementType_type = new entity(strings[2431], false, 327, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcDistributionFlowElementType_type = new entity(strings[2432], true, 329, IFC4X3_RC1_IfcDistributionElementType_type); + IFC4X3_RC1_IfcDoorLiningProperties_type = new entity(strings[2433], false, 341, IFC4X3_RC1_IfcPreDefinedPropertySet_type); + IFC4X3_RC1_IfcDoorPanelProperties_type = new entity(strings[2434], false, 344, IFC4X3_RC1_IfcPreDefinedPropertySet_type); + IFC4X3_RC1_IfcDoorType_type = new entity(strings[2435], false, 349, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcDraughtingPreDefinedColour_type = new entity(strings[2436], false, 353, IFC4X3_RC1_IfcPreDefinedColour_type); + IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2437], false, 354, IFC4X3_RC1_IfcPreDefinedCurveFont_type); + IFC4X3_RC1_IfcElement_type = new entity(strings[2438], true, 401, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcElementAssembly_type = new entity(strings[2439], false, 403, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcElementAssemblyType_type = new entity(strings[2440], false, 404, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcElementComponent_type = new entity(strings[2441], true, 406, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcElementComponentType_type = new entity(strings[2442], true, 407, IFC4X3_RC1_IfcElementType_type); + IFC4X3_RC1_IfcEllipse_type = new entity(strings[2443], false, 411, IFC4X3_RC1_IfcConic_type); + IFC4X3_RC1_IfcEnergyConversionDeviceType_type = new entity(strings[2444], true, 414, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcEngineType_type = new entity(strings[2445], false, 417, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcEvaporativeCoolerType_type = new entity(strings[2446], false, 420, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcEvaporatorType_type = new entity(strings[2447], false, 423, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcEvent_type = new entity(strings[2448], false, 425, IFC4X3_RC1_IfcProcess_type); + IFC4X3_RC1_IfcExternalSpatialStructureElement_type = new entity(strings[2449], true, 439, IFC4X3_RC1_IfcSpatialElement_type); + IFC4X3_RC1_IfcFacetedBrep_type = new entity(strings[2450], false, 447, IFC4X3_RC1_IfcManifoldSolidBrep_type); + IFC4X3_RC1_IfcFacetedBrepWithVoids_type = new entity(strings[2451], false, 448, IFC4X3_RC1_IfcFacetedBrep_type); + IFC4X3_RC1_IfcFacility_type = new entity(strings[2452], false, 449, IFC4X3_RC1_IfcSpatialStructureElement_type); + IFC4X3_RC1_IfcFacilityPart_type = new entity(strings[2453], false, 450, IFC4X3_RC1_IfcSpatialStructureElement_type); + IFC4X3_RC1_IfcFastener_type = new entity(strings[2454], false, 458, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcFastenerType_type = new entity(strings[2455], false, 459, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcFeatureElement_type = new entity(strings[2456], true, 461, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcFeatureElementAddition_type = new entity(strings[2457], true, 462, IFC4X3_RC1_IfcFeatureElement_type); + IFC4X3_RC1_IfcFeatureElementSubtraction_type = new entity(strings[2458], true, 463, IFC4X3_RC1_IfcFeatureElement_type); + IFC4X3_RC1_IfcFlowControllerType_type = new entity(strings[2459], true, 476, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFlowFittingType_type = new entity(strings[2460], true, 479, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFlowMeterType_type = new entity(strings[2461], false, 484, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcFlowMovingDeviceType_type = new entity(strings[2462], true, 487, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFlowSegmentType_type = new entity(strings[2463], true, 489, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFlowStorageDeviceType_type = new entity(strings[2464], true, 491, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFlowTerminalType_type = new entity(strings[2465], true, 493, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFlowTreatmentDeviceType_type = new entity(strings[2466], true, 495, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcFootingType_type = new entity(strings[2467], false, 500, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcFurnishingElement_type = new entity(strings[2468], false, 504, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcFurniture_type = new entity(strings[2469], false, 506, IFC4X3_RC1_IfcFurnishingElement_type); + IFC4X3_RC1_IfcGeographicElement_type = new entity(strings[2470], false, 509, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcGeotechnicalElement_type = new entity(strings[2471], true, 522, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcGeotechnicalStratum_type = new entity(strings[2472], true, 523, IFC4X3_RC1_IfcGeotechnicalElement_type); + IFC4X3_RC1_IfcGroup_type = new entity(strings[2473], false, 531, IFC4X3_RC1_IfcObject_type); + IFC4X3_RC1_IfcHeatExchangerType_type = new entity(strings[2474], false, 535, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcHumidifierType_type = new entity(strings[2475], false, 540, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcImpactProtectionDevice_type = new entity(strings[2476], false, 545, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcImpactProtectionDeviceType_type = new entity(strings[2477], false, 546, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcIndexedPolyCurve_type = new entity(strings[2478], false, 551, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcInterceptorType_type = new entity(strings[2479], false, 560, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC1_IfcIntersectionCurve_type = new entity(strings[2480], false, 564, IFC4X3_RC1_IfcSurfaceCurve_type); + IFC4X3_RC1_IfcInventory_type = new entity(strings[2481], false, 565, IFC4X3_RC1_IfcGroup_type); + IFC4X3_RC1_IfcJunctionBoxType_type = new entity(strings[2482], false, 573, IFC4X3_RC1_IfcFlowFittingType_type); + IFC4X3_RC1_IfcKerbType_type = new entity(strings[2483], false, 576, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcLaborResource_type = new entity(strings[2484], false, 580, IFC4X3_RC1_IfcConstructionResource_type); + IFC4X3_RC1_IfcLampType_type = new entity(strings[2485], false, 585, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcLightFixtureType_type = new entity(strings[2486], false, 599, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcLineSegment2D_type = new entity(strings[2487], false, 620, IFC4X3_RC1_IfcCurveSegment2D_type); + IFC4X3_RC1_IfcLiquidTerminalType_type = new entity(strings[2488], false, 622, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcMarineFacility_type = new entity(strings[2489], false, 638, IFC4X3_RC1_IfcFacility_type); + IFC4X3_RC1_IfcMechanicalFastener_type = new entity(strings[2490], false, 667, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcMechanicalFastenerType_type = new entity(strings[2491], false, 668, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcMedicalDeviceType_type = new entity(strings[2492], false, 671, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcMemberType_type = new entity(strings[2493], false, 675, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type = new entity(strings[2494], false, 681, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcMooringDeviceType_type = new entity(strings[2495], false, 697, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcMotorConnectionType_type = new entity(strings[2496], false, 700, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcNavigationElementType_type = new entity(strings[2497], false, 704, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcOccupant_type = new entity(strings[2498], false, 717, IFC4X3_RC1_IfcActor_type); + IFC4X3_RC1_IfcOpeningElement_type = new entity(strings[2499], false, 724, IFC4X3_RC1_IfcFeatureElementSubtraction_type); + IFC4X3_RC1_IfcOpeningStandardCase_type = new entity(strings[2500], false, 726, IFC4X3_RC1_IfcOpeningElement_type); + IFC4X3_RC1_IfcOutletType_type = new entity(strings[2501], false, 734, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcPavementType_type = new entity(strings[2502], false, 741, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcPerformanceHistory_type = new entity(strings[2503], false, 743, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcPermeableCoveringProperties_type = new entity(strings[2504], false, 746, IFC4X3_RC1_IfcPreDefinedPropertySet_type); + IFC4X3_RC1_IfcPermit_type = new entity(strings[2505], false, 747, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcPileType_type = new entity(strings[2506], false, 758, IFC4X3_RC1_IfcDeepFoundationType_type); + IFC4X3_RC1_IfcPipeFittingType_type = new entity(strings[2507], false, 761, IFC4X3_RC1_IfcFlowFittingType_type); + IFC4X3_RC1_IfcPipeSegmentType_type = new entity(strings[2508], false, 764, IFC4X3_RC1_IfcFlowSegmentType_type); + IFC4X3_RC1_IfcPlant_type = new entity(strings[2509], false, 773, IFC4X3_RC1_IfcGeographicElement_type); + IFC4X3_RC1_IfcPlateType_type = new entity(strings[2510], false, 776, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcPolygonalFaceSet_type = new entity(strings[2511], false, 783, IFC4X3_RC1_IfcTessellatedFaceSet_type); + IFC4X3_RC1_IfcPolyline_type = new entity(strings[2512], false, 784, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcPort_type = new entity(strings[2513], true, 786, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcPositioningElement_type = new entity(strings[2514], true, 787, IFC4X3_RC1_IfcProduct_type); + IFC4X3_RC1_IfcProcedure_type = new entity(strings[2515], false, 809, IFC4X3_RC1_IfcProcess_type); + IFC4X3_RC1_IfcProjectOrder_type = new entity(strings[2516], false, 828, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcProjectionElement_type = new entity(strings[2517], false, 825, IFC4X3_RC1_IfcFeatureElementAddition_type); + IFC4X3_RC1_IfcProtectiveDeviceType_type = new entity(strings[2518], false, 853, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcPumpType_type = new entity(strings[2519], false, 857, IFC4X3_RC1_IfcFlowMovingDeviceType_type); + IFC4X3_RC1_IfcRailType_type = new entity(strings[2520], false, 871, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcRailingType_type = new entity(strings[2521], false, 869, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcRailway_type = new entity(strings[2522], false, 873, IFC4X3_RC1_IfcFacility_type); + IFC4X3_RC1_IfcRampFlightType_type = new entity(strings[2523], false, 877, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcRampType_type = new entity(strings[2524], false, 879, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2525], false, 883, IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type); + IFC4X3_RC1_IfcReferent_type = new entity(strings[2526], false, 892, IFC4X3_RC1_IfcPositioningElement_type); + IFC4X3_RC1_IfcReinforcingElement_type = new entity(strings[2527], true, 905, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcReinforcingElementType_type = new entity(strings[2528], true, 906, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcReinforcingMesh_type = new entity(strings[2529], false, 907, IFC4X3_RC1_IfcReinforcingElement_type); + IFC4X3_RC1_IfcReinforcingMeshType_type = new entity(strings[2530], false, 908, IFC4X3_RC1_IfcReinforcingElementType_type); + IFC4X3_RC1_IfcRelAggregates_type = new entity(strings[2531], false, 910, IFC4X3_RC1_IfcRelDecomposes_type); + IFC4X3_RC1_IfcRoad_type = new entity(strings[2532], false, 976, IFC4X3_RC1_IfcFacility_type); + IFC4X3_RC1_IfcRoofType_type = new entity(strings[2533], false, 980, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcSanitaryTerminalType_type = new entity(strings[2534], false, 989, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcSeamCurve_type = new entity(strings[2535], false, 992, IFC4X3_RC1_IfcSurfaceCurve_type); + IFC4X3_RC1_IfcShadingDeviceType_type = new entity(strings[2536], false, 1008, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcSign_type = new entity(strings[2537], false, 1016, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcSignType_type = new entity(strings[2538], false, 1020, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcSignalType_type = new entity(strings[2539], false, 1018, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcSite_type = new entity(strings[2540], false, 1027, IFC4X3_RC1_IfcSpatialStructureElement_type); + IFC4X3_RC1_IfcSlabType_type = new entity(strings[2541], false, 1034, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcSolarDeviceType_type = new entity(strings[2542], false, 1038, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcSolidStratum_type = new entity(strings[2543], false, 1043, IFC4X3_RC1_IfcGeotechnicalStratum_type); + IFC4X3_RC1_IfcSpace_type = new entity(strings[2544], false, 1048, IFC4X3_RC1_IfcSpatialStructureElement_type); + IFC4X3_RC1_IfcSpaceHeaterType_type = new entity(strings[2545], false, 1051, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcSpaceType_type = new entity(strings[2546], false, 1053, IFC4X3_RC1_IfcSpatialStructureElementType_type); + IFC4X3_RC1_IfcStackTerminalType_type = new entity(strings[2547], false, 1070, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcStairFlightType_type = new entity(strings[2548], false, 1074, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcStairType_type = new entity(strings[2549], false, 1076, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcStructuralAction_type = new entity(strings[2550], true, 1079, IFC4X3_RC1_IfcStructuralActivity_type); + IFC4X3_RC1_IfcStructuralConnection_type = new entity(strings[2551], true, 1083, IFC4X3_RC1_IfcStructuralItem_type); + IFC4X3_RC1_IfcStructuralCurveAction_type = new entity(strings[2552], false, 1085, IFC4X3_RC1_IfcStructuralAction_type); + IFC4X3_RC1_IfcStructuralCurveConnection_type = new entity(strings[2553], false, 1087, IFC4X3_RC1_IfcStructuralConnection_type); + IFC4X3_RC1_IfcStructuralCurveMember_type = new entity(strings[2554], false, 1088, IFC4X3_RC1_IfcStructuralMember_type); + IFC4X3_RC1_IfcStructuralCurveMemberVarying_type = new entity(strings[2555], false, 1090, IFC4X3_RC1_IfcStructuralCurveMember_type); + IFC4X3_RC1_IfcStructuralCurveReaction_type = new entity(strings[2556], false, 1091, IFC4X3_RC1_IfcStructuralReaction_type); + IFC4X3_RC1_IfcStructuralLinearAction_type = new entity(strings[2557], false, 1093, IFC4X3_RC1_IfcStructuralCurveAction_type); + IFC4X3_RC1_IfcStructuralLoadGroup_type = new entity(strings[2558], false, 1097, IFC4X3_RC1_IfcGroup_type); + IFC4X3_RC1_IfcStructuralPointAction_type = new entity(strings[2559], false, 1109, IFC4X3_RC1_IfcStructuralAction_type); + IFC4X3_RC1_IfcStructuralPointConnection_type = new entity(strings[2560], false, 1110, IFC4X3_RC1_IfcStructuralConnection_type); + IFC4X3_RC1_IfcStructuralPointReaction_type = new entity(strings[2561], false, 1111, IFC4X3_RC1_IfcStructuralReaction_type); + IFC4X3_RC1_IfcStructuralResultGroup_type = new entity(strings[2562], false, 1113, IFC4X3_RC1_IfcGroup_type); + IFC4X3_RC1_IfcStructuralSurfaceAction_type = new entity(strings[2563], false, 1114, IFC4X3_RC1_IfcStructuralAction_type); + IFC4X3_RC1_IfcStructuralSurfaceConnection_type = new entity(strings[2564], false, 1116, IFC4X3_RC1_IfcStructuralConnection_type); + IFC4X3_RC1_IfcSubContractResource_type = new entity(strings[2565], false, 1125, IFC4X3_RC1_IfcConstructionResource_type); + IFC4X3_RC1_IfcSurfaceFeature_type = new entity(strings[2566], false, 1132, IFC4X3_RC1_IfcFeatureElement_type); + IFC4X3_RC1_IfcSwitchingDeviceType_type = new entity(strings[2567], false, 1152, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcSystem_type = new entity(strings[2568], false, 1154, IFC4X3_RC1_IfcGroup_type); + IFC4X3_RC1_IfcSystemFurnitureElement_type = new entity(strings[2569], false, 1155, IFC4X3_RC1_IfcFurnishingElement_type); + IFC4X3_RC1_IfcTankType_type = new entity(strings[2570], false, 1162, IFC4X3_RC1_IfcFlowStorageDeviceType_type); + IFC4X3_RC1_IfcTendon_type = new entity(strings[2571], false, 1173, IFC4X3_RC1_IfcReinforcingElement_type); + IFC4X3_RC1_IfcTendonAnchor_type = new entity(strings[2572], false, 1174, IFC4X3_RC1_IfcReinforcingElement_type); + IFC4X3_RC1_IfcTendonAnchorType_type = new entity(strings[2573], false, 1175, IFC4X3_RC1_IfcReinforcingElementType_type); + IFC4X3_RC1_IfcTendonConduit_type = new entity(strings[2574], false, 1177, IFC4X3_RC1_IfcReinforcingElement_type); + IFC4X3_RC1_IfcTendonConduitType_type = new entity(strings[2575], false, 1178, IFC4X3_RC1_IfcReinforcingElementType_type); + IFC4X3_RC1_IfcTendonType_type = new entity(strings[2576], false, 1180, IFC4X3_RC1_IfcReinforcingElementType_type); + IFC4X3_RC1_IfcTrackElementType_type = new entity(strings[2577], false, 1221, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcTransformerType_type = new entity(strings[2578], false, 1224, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcTransitionCurveSegment2D_type = new entity(strings[2579], false, 1227, IFC4X3_RC1_IfcCurveSegment2D_type); + IFC4X3_RC1_IfcTransportElement_type = new entity(strings[2580], false, 1230, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcTrimmedCurve_type = new entity(strings[2581], false, 1238, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcTubeBundleType_type = new entity(strings[2582], false, 1243, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcUnitaryEquipmentType_type = new entity(strings[2583], false, 1254, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcValveType_type = new entity(strings[2584], false, 1262, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcVibrationDamper_type = new entity(strings[2585], false, 1270, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcVibrationDamperType_type = new entity(strings[2586], false, 1271, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcVibrationIsolator_type = new entity(strings[2587], false, 1273, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcVibrationIsolatorType_type = new entity(strings[2588], false, 1274, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcVirtualElement_type = new entity(strings[2589], false, 1276, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcVoidStratum_type = new entity(strings[2590], false, 1280, IFC4X3_RC1_IfcGeotechnicalStratum_type); + IFC4X3_RC1_IfcVoidingFeature_type = new entity(strings[2591], false, 1278, IFC4X3_RC1_IfcFeatureElementSubtraction_type); + IFC4X3_RC1_IfcWallType_type = new entity(strings[2592], false, 1286, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcWasteTerminalType_type = new entity(strings[2593], false, 1292, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcWaterStratum_type = new entity(strings[2594], false, 1294, IFC4X3_RC1_IfcGeotechnicalStratum_type); + IFC4X3_RC1_IfcWindowType_type = new entity(strings[2595], false, 1304, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcWorkCalendar_type = new entity(strings[2596], false, 1307, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcWorkControl_type = new entity(strings[2597], true, 1309, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcWorkPlan_type = new entity(strings[2598], false, 1310, IFC4X3_RC1_IfcWorkControl_type); + IFC4X3_RC1_IfcWorkSchedule_type = new entity(strings[2599], false, 1312, IFC4X3_RC1_IfcWorkControl_type); + IFC4X3_RC1_IfcZone_type = new entity(strings[2600], false, 1315, IFC4X3_RC1_IfcSystem_type); + IFC4X3_RC1_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2601], 279, { + IFC4X3_RC1_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC1_IfcCurveStyleFontSelect_type + }); + IFC4X3_RC1_IfcCurveOnSurface_type = new select_type(strings[2602], 281, { + IFC4X3_RC1_IfcCompositeCurveOnSurface_type, + IFC4X3_RC1_IfcPcurve_type, + IFC4X3_RC1_IfcSurfaceCurve_type + }); + IFC4X3_RC1_IfcCurveOrEdgeCurve_type = new select_type(strings[2603], 282, { + IFC4X3_RC1_IfcBoundedCurve_type, + IFC4X3_RC1_IfcEdgeCurve_type + }); + IFC4X3_RC1_IfcInterferenceSelect_type = new select_type(strings[2604], 562, { + IFC4X3_RC1_IfcElement_type, + IFC4X3_RC1_IfcSpatialElement_type + }); + IFC4X3_RC1_IfcSpatialReferenceSelect_type = new select_type(strings[2605], 1057, { + IFC4X3_RC1_IfcProduct_type, + IFC4X3_RC1_IfcSystem_type + }); + IFC4X3_RC1_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2606], 1081, { + IFC4X3_RC1_IfcElement_type, + IFC4X3_RC1_IfcStructuralItem_type + }); + IFC4X3_RC1_IfcActionRequest_type = new entity(strings[2607], false, 2, IFC4X3_RC1_IfcControl_type); + IFC4X3_RC1_IfcAirTerminalBoxType_type = new entity(strings[2608], false, 19, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcAirTerminalType_type = new entity(strings[2609], false, 21, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type = new entity(strings[2610], false, 24, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcAlignment2DCantSegLine_type = new entity(strings[2611], false, 31, IFC4X3_RC1_IfcAlignment2DCantSegment_type); + IFC4X3_RC1_IfcAlignment2DCantSegTransition_type = new entity(strings[2612], false, 33, IFC4X3_RC1_IfcAlignment2DCantSegment_type); + IFC4X3_RC1_IfcAlignmentCurve_type = new entity(strings[2613], false, 43, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcAsset_type = new entity(strings[2614], false, 65, IFC4X3_RC1_IfcGroup_type); + IFC4X3_RC1_IfcAudioVisualApplianceType_type = new entity(strings[2615], false, 68, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcBSplineCurve_type = new entity(strings[2616], true, 112, IFC4X3_RC1_IfcBoundedCurve_type); + IFC4X3_RC1_IfcBSplineCurveWithKnots_type = new entity(strings[2617], false, 114, IFC4X3_RC1_IfcBSplineCurve_type); + IFC4X3_RC1_IfcBeamType_type = new entity(strings[2618], false, 77, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcBearingType_type = new entity(strings[2619], false, 80, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcBoilerType_type = new entity(strings[2620], false, 89, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcBoundaryCurve_type = new entity(strings[2621], false, 98, IFC4X3_RC1_IfcCompositeCurveOnSurface_type); + IFC4X3_RC1_IfcBridge_type = new entity(strings[2622], false, 108, IFC4X3_RC1_IfcFacility_type); + IFC4X3_RC1_IfcBridgePart_type = new entity(strings[2623], false, 109, IFC4X3_RC1_IfcFacilityPart_type); + IFC4X3_RC1_IfcBuilding_type = new entity(strings[2624], false, 118, IFC4X3_RC1_IfcFacility_type); + IFC4X3_RC1_IfcBuildingElementPart_type = new entity(strings[2625], false, 119, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcBuildingElementPartType_type = new entity(strings[2626], false, 120, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcBuildingElementProxyType_type = new entity(strings[2627], false, 123, IFC4X3_RC1_IfcBuiltElementType_type); + IFC4X3_RC1_IfcBuildingSystem_type = new entity(strings[2628], false, 126, IFC4X3_RC1_IfcSystem_type); + IFC4X3_RC1_IfcBuiltElement_type = new entity(strings[2629], false, 128, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcBuiltSystem_type = new entity(strings[2630], false, 130, IFC4X3_RC1_IfcSystem_type); + IFC4X3_RC1_IfcBurnerType_type = new entity(strings[2631], false, 133, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcCableCarrierFittingType_type = new entity(strings[2632], false, 136, IFC4X3_RC1_IfcFlowFittingType_type); + IFC4X3_RC1_IfcCableCarrierSegmentType_type = new entity(strings[2633], false, 139, IFC4X3_RC1_IfcFlowSegmentType_type); + IFC4X3_RC1_IfcCableFittingType_type = new entity(strings[2634], false, 142, IFC4X3_RC1_IfcFlowFittingType_type); + IFC4X3_RC1_IfcCableSegmentType_type = new entity(strings[2635], false, 145, IFC4X3_RC1_IfcFlowSegmentType_type); + IFC4X3_RC1_IfcCaissonFoundationType_type = new entity(strings[2636], false, 148, IFC4X3_RC1_IfcDeepFoundationType_type); + IFC4X3_RC1_IfcChillerType_type = new entity(strings[2637], false, 163, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcChimney_type = new entity(strings[2638], false, 165, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcCircle_type = new entity(strings[2639], false, 168, IFC4X3_RC1_IfcConic_type); + IFC4X3_RC1_IfcCircularArcSegment2D_type = new entity(strings[2640], false, 171, IFC4X3_RC1_IfcCurveSegment2D_type); + IFC4X3_RC1_IfcCivilElement_type = new entity(strings[2641], false, 172, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcCoilType_type = new entity(strings[2642], false, 180, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcColumn_type = new entity(strings[2643], false, 187, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcColumnStandardCase_type = new entity(strings[2644], false, 188, IFC4X3_RC1_IfcColumn_type); + IFC4X3_RC1_IfcCommunicationsApplianceType_type = new entity(strings[2645], false, 192, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcCompressorType_type = new entity(strings[2646], false, 204, IFC4X3_RC1_IfcFlowMovingDeviceType_type); + IFC4X3_RC1_IfcCondenserType_type = new entity(strings[2647], false, 207, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcConstructionEquipmentResource_type = new entity(strings[2648], false, 220, IFC4X3_RC1_IfcConstructionResource_type); + IFC4X3_RC1_IfcConstructionMaterialResource_type = new entity(strings[2649], false, 223, IFC4X3_RC1_IfcConstructionResource_type); + IFC4X3_RC1_IfcConstructionProductResource_type = new entity(strings[2650], false, 226, IFC4X3_RC1_IfcConstructionResource_type); + IFC4X3_RC1_IfcConveyorSegmentType_type = new entity(strings[2651], false, 241, IFC4X3_RC1_IfcFlowSegmentType_type); + IFC4X3_RC1_IfcCooledBeamType_type = new entity(strings[2652], false, 244, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcCoolingTowerType_type = new entity(strings[2653], false, 247, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcCourse_type = new entity(strings[2654], false, 258, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcCovering_type = new entity(strings[2655], false, 261, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcCurtainWall_type = new entity(strings[2656], false, 272, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcDamperType_type = new entity(strings[2657], false, 291, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcDeepFoundation_type = new entity(strings[2658], false, 298, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcDiscreteAccessory_type = new entity(strings[2659], false, 313, IFC4X3_RC1_IfcElementComponent_type); + IFC4X3_RC1_IfcDiscreteAccessoryType_type = new entity(strings[2660], false, 314, IFC4X3_RC1_IfcElementComponentType_type); + IFC4X3_RC1_IfcDistributionBoardType_type = new entity(strings[2661], false, 318, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcDistributionChamberElementType_type = new entity(strings[2662], false, 321, IFC4X3_RC1_IfcDistributionFlowElementType_type); + IFC4X3_RC1_IfcDistributionControlElementType_type = new entity(strings[2663], true, 325, IFC4X3_RC1_IfcDistributionElementType_type); + IFC4X3_RC1_IfcDistributionElement_type = new entity(strings[2664], false, 326, IFC4X3_RC1_IfcElement_type); + IFC4X3_RC1_IfcDistributionFlowElement_type = new entity(strings[2665], false, 328, IFC4X3_RC1_IfcDistributionElement_type); + IFC4X3_RC1_IfcDistributionPort_type = new entity(strings[2666], false, 330, IFC4X3_RC1_IfcPort_type); + IFC4X3_RC1_IfcDistributionSystem_type = new entity(strings[2667], false, 332, IFC4X3_RC1_IfcSystem_type); + IFC4X3_RC1_IfcDoor_type = new entity(strings[2668], false, 340, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcDoorStandardCase_type = new entity(strings[2669], false, 345, IFC4X3_RC1_IfcDoor_type); + IFC4X3_RC1_IfcDuctFittingType_type = new entity(strings[2670], false, 356, IFC4X3_RC1_IfcFlowFittingType_type); + IFC4X3_RC1_IfcDuctSegmentType_type = new entity(strings[2671], false, 359, IFC4X3_RC1_IfcFlowSegmentType_type); + IFC4X3_RC1_IfcDuctSilencerType_type = new entity(strings[2672], false, 362, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC1_IfcEarthworksCut_type = new entity(strings[2673], false, 366, IFC4X3_RC1_IfcFeatureElementSubtraction_type); + IFC4X3_RC1_IfcEarthworksElement_type = new entity(strings[2674], false, 368, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcEarthworksFill_type = new entity(strings[2675], false, 369, IFC4X3_RC1_IfcEarthworksElement_type); + IFC4X3_RC1_IfcElectricApplianceType_type = new entity(strings[2676], false, 375, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcElectricDistributionBoardType_type = new entity(strings[2677], false, 382, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type = new entity(strings[2678], false, 385, IFC4X3_RC1_IfcFlowStorageDeviceType_type); + IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type = new entity(strings[2679], false, 388, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC1_IfcElectricGeneratorType_type = new entity(strings[2680], false, 391, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcElectricMotorType_type = new entity(strings[2681], false, 394, IFC4X3_RC1_IfcEnergyConversionDeviceType_type); + IFC4X3_RC1_IfcElectricTimeControlType_type = new entity(strings[2682], false, 398, IFC4X3_RC1_IfcFlowControllerType_type); + IFC4X3_RC1_IfcEnergyConversionDevice_type = new entity(strings[2683], false, 413, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcEngine_type = new entity(strings[2684], false, 416, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcEvaporativeCooler_type = new entity(strings[2685], false, 419, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcEvaporator_type = new entity(strings[2686], false, 422, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcExternalSpatialElement_type = new entity(strings[2687], false, 437, IFC4X3_RC1_IfcExternalSpatialStructureElement_type); + IFC4X3_RC1_IfcFanType_type = new entity(strings[2688], false, 456, IFC4X3_RC1_IfcFlowMovingDeviceType_type); + IFC4X3_RC1_IfcFilterType_type = new entity(strings[2689], false, 469, IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC1_IfcFireSuppressionTerminalType_type = new entity(strings[2690], false, 472, IFC4X3_RC1_IfcFlowTerminalType_type); + IFC4X3_RC1_IfcFlowController_type = new entity(strings[2691], false, 475, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFlowFitting_type = new entity(strings[2692], false, 478, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFlowInstrumentType_type = new entity(strings[2693], false, 481, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcFlowMeter_type = new entity(strings[2694], false, 483, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcFlowMovingDevice_type = new entity(strings[2695], false, 486, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFlowSegment_type = new entity(strings[2696], false, 488, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFlowStorageDevice_type = new entity(strings[2697], false, 490, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFlowTerminal_type = new entity(strings[2698], false, 492, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFlowTreatmentDevice_type = new entity(strings[2699], false, 494, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcFooting_type = new entity(strings[2700], false, 499, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcGeotechnicalAssembly_type = new entity(strings[2701], true, 521, IFC4X3_RC1_IfcGeotechnicalElement_type); + IFC4X3_RC1_IfcGrid_type = new entity(strings[2702], false, 526, IFC4X3_RC1_IfcPositioningElement_type); + IFC4X3_RC1_IfcHeatExchanger_type = new entity(strings[2703], false, 534, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcHumidifier_type = new entity(strings[2704], false, 539, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcInterceptor_type = new entity(strings[2705], false, 559, IFC4X3_RC1_IfcFlowTreatmentDevice_type); + IFC4X3_RC1_IfcJunctionBox_type = new entity(strings[2706], false, 572, IFC4X3_RC1_IfcFlowFitting_type); + IFC4X3_RC1_IfcKerb_type = new entity(strings[2707], false, 575, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcLamp_type = new entity(strings[2708], false, 584, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcLightFixture_type = new entity(strings[2709], false, 598, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcLinearPositioningElement_type = new entity(strings[2710], false, 615, IFC4X3_RC1_IfcPositioningElement_type); + IFC4X3_RC1_IfcLiquidTerminal_type = new entity(strings[2711], false, 621, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcMedicalDevice_type = new entity(strings[2712], false, 670, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcMember_type = new entity(strings[2713], false, 673, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcMemberStandardCase_type = new entity(strings[2714], false, 674, IFC4X3_RC1_IfcMember_type); + IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type = new entity(strings[2715], false, 680, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcMooringDevice_type = new entity(strings[2716], false, 696, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcMotorConnection_type = new entity(strings[2717], false, 699, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcNavigationElement_type = new entity(strings[2718], false, 703, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcOuterBoundaryCurve_type = new entity(strings[2719], false, 732, IFC4X3_RC1_IfcBoundaryCurve_type); + IFC4X3_RC1_IfcOutlet_type = new entity(strings[2720], false, 733, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcPavement_type = new entity(strings[2721], false, 740, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcPile_type = new entity(strings[2722], false, 756, IFC4X3_RC1_IfcDeepFoundation_type); + IFC4X3_RC1_IfcPipeFitting_type = new entity(strings[2723], false, 760, IFC4X3_RC1_IfcFlowFitting_type); + IFC4X3_RC1_IfcPipeSegment_type = new entity(strings[2724], false, 763, IFC4X3_RC1_IfcFlowSegment_type); + IFC4X3_RC1_IfcPlate_type = new entity(strings[2725], false, 774, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcPlateStandardCase_type = new entity(strings[2726], false, 775, IFC4X3_RC1_IfcPlate_type); + IFC4X3_RC1_IfcProtectiveDevice_type = new entity(strings[2727], false, 849, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2728], false, 851, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcPump_type = new entity(strings[2729], false, 856, IFC4X3_RC1_IfcFlowMovingDevice_type); + IFC4X3_RC1_IfcRail_type = new entity(strings[2730], false, 867, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcRailing_type = new entity(strings[2731], false, 868, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcRamp_type = new entity(strings[2732], false, 875, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcRampFlight_type = new entity(strings[2733], false, 876, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2734], false, 882, IFC4X3_RC1_IfcBSplineCurveWithKnots_type); + IFC4X3_RC1_IfcReinforcedSoil_type = new entity(strings[2735], false, 896, IFC4X3_RC1_IfcEarthworksElement_type); + IFC4X3_RC1_IfcReinforcingBar_type = new entity(strings[2736], false, 900, IFC4X3_RC1_IfcReinforcingElement_type); + IFC4X3_RC1_IfcReinforcingBarType_type = new entity(strings[2737], false, 903, IFC4X3_RC1_IfcReinforcingElementType_type); + IFC4X3_RC1_IfcRoof_type = new entity(strings[2738], false, 979, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcSanitaryTerminal_type = new entity(strings[2739], false, 988, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcSensorType_type = new entity(strings[2740], false, 1004, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcShadingDevice_type = new entity(strings[2741], false, 1007, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcSignal_type = new entity(strings[2742], false, 1017, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcSlab_type = new entity(strings[2743], false, 1031, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcSlabElementedCase_type = new entity(strings[2744], false, 1032, IFC4X3_RC1_IfcSlab_type); + IFC4X3_RC1_IfcSlabStandardCase_type = new entity(strings[2745], false, 1033, IFC4X3_RC1_IfcSlab_type); + IFC4X3_RC1_IfcSolarDevice_type = new entity(strings[2746], false, 1037, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcSpaceHeater_type = new entity(strings[2747], false, 1050, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcStackTerminal_type = new entity(strings[2748], false, 1069, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcStair_type = new entity(strings[2749], false, 1072, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcStairFlight_type = new entity(strings[2750], false, 1073, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcStructuralAnalysisModel_type = new entity(strings[2751], false, 1082, IFC4X3_RC1_IfcSystem_type); + IFC4X3_RC1_IfcStructuralLoadCase_type = new entity(strings[2752], false, 1095, IFC4X3_RC1_IfcStructuralLoadGroup_type); + IFC4X3_RC1_IfcStructuralPlanarAction_type = new entity(strings[2753], false, 1108, IFC4X3_RC1_IfcStructuralSurfaceAction_type); + IFC4X3_RC1_IfcSwitchingDevice_type = new entity(strings[2754], false, 1151, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcTank_type = new entity(strings[2755], false, 1161, IFC4X3_RC1_IfcFlowStorageDevice_type); + IFC4X3_RC1_IfcTrackElement_type = new entity(strings[2756], false, 1220, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcTransformer_type = new entity(strings[2757], false, 1223, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcTubeBundle_type = new entity(strings[2758], false, 1242, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcUnitaryControlElementType_type = new entity(strings[2759], false, 1251, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcUnitaryEquipment_type = new entity(strings[2760], false, 1253, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcValve_type = new entity(strings[2761], false, 1261, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcWall_type = new entity(strings[2762], false, 1283, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcWallElementedCase_type = new entity(strings[2763], false, 1284, IFC4X3_RC1_IfcWall_type); + IFC4X3_RC1_IfcWallStandardCase_type = new entity(strings[2764], false, 1285, IFC4X3_RC1_IfcWall_type); + IFC4X3_RC1_IfcWasteTerminal_type = new entity(strings[2765], false, 1291, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcWindow_type = new entity(strings[2766], false, 1295, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcWindowStandardCase_type = new entity(strings[2767], false, 1300, IFC4X3_RC1_IfcWindow_type); + IFC4X3_RC1_IfcSpaceBoundarySelect_type = new select_type(strings[2768], 1049, { + IFC4X3_RC1_IfcExternalSpatialElement_type, + IFC4X3_RC1_IfcSpace_type + }); + IFC4X3_RC1_IfcActuatorType_type = new entity(strings[2769], false, 10, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcAirTerminal_type = new entity(strings[2770], false, 17, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcAirTerminalBox_type = new entity(strings[2771], false, 18, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcAirToAirHeatRecovery_type = new entity(strings[2772], false, 23, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcAlarmType_type = new entity(strings[2773], false, 27, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcAlignment_type = new entity(strings[2774], false, 29, IFC4X3_RC1_IfcLinearPositioningElement_type); + IFC4X3_RC1_IfcAudioVisualAppliance_type = new entity(strings[2775], false, 67, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcBeam_type = new entity(strings[2776], false, 75, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcBeamStandardCase_type = new entity(strings[2777], false, 76, IFC4X3_RC1_IfcBeam_type); + IFC4X3_RC1_IfcBearing_type = new entity(strings[2778], false, 79, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcBoiler_type = new entity(strings[2779], false, 88, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcBorehole_type = new entity(strings[2780], false, 96, IFC4X3_RC1_IfcGeotechnicalAssembly_type); + IFC4X3_RC1_IfcBuildingElementProxy_type = new entity(strings[2781], false, 122, IFC4X3_RC1_IfcBuiltElement_type); + IFC4X3_RC1_IfcBurner_type = new entity(strings[2782], false, 132, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcCableCarrierFitting_type = new entity(strings[2783], false, 135, IFC4X3_RC1_IfcFlowFitting_type); + IFC4X3_RC1_IfcCableCarrierSegment_type = new entity(strings[2784], false, 138, IFC4X3_RC1_IfcFlowSegment_type); + IFC4X3_RC1_IfcCableFitting_type = new entity(strings[2785], false, 141, IFC4X3_RC1_IfcFlowFitting_type); + IFC4X3_RC1_IfcCableSegment_type = new entity(strings[2786], false, 144, IFC4X3_RC1_IfcFlowSegment_type); + IFC4X3_RC1_IfcCaissonFoundation_type = new entity(strings[2787], false, 147, IFC4X3_RC1_IfcDeepFoundation_type); + IFC4X3_RC1_IfcChiller_type = new entity(strings[2788], false, 162, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcCoil_type = new entity(strings[2789], false, 179, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcCommunicationsAppliance_type = new entity(strings[2790], false, 191, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcCompressor_type = new entity(strings[2791], false, 203, IFC4X3_RC1_IfcFlowMovingDevice_type); + IFC4X3_RC1_IfcCondenser_type = new entity(strings[2792], false, 206, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcControllerType_type = new entity(strings[2793], false, 236, IFC4X3_RC1_IfcDistributionControlElementType_type); + IFC4X3_RC1_IfcConveyorSegment_type = new entity(strings[2794], false, 240, IFC4X3_RC1_IfcFlowSegment_type); + IFC4X3_RC1_IfcCooledBeam_type = new entity(strings[2795], false, 243, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcCoolingTower_type = new entity(strings[2796], false, 246, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcDamper_type = new entity(strings[2797], false, 290, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcDistributionBoard_type = new entity(strings[2798], false, 317, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcDistributionChamberElement_type = new entity(strings[2799], false, 320, IFC4X3_RC1_IfcDistributionFlowElement_type); + IFC4X3_RC1_IfcDistributionCircuit_type = new entity(strings[2800], false, 323, IFC4X3_RC1_IfcDistributionSystem_type); + IFC4X3_RC1_IfcDistributionControlElement_type = new entity(strings[2801], false, 324, IFC4X3_RC1_IfcDistributionElement_type); + IFC4X3_RC1_IfcDuctFitting_type = new entity(strings[2802], false, 355, IFC4X3_RC1_IfcFlowFitting_type); + IFC4X3_RC1_IfcDuctSegment_type = new entity(strings[2803], false, 358, IFC4X3_RC1_IfcFlowSegment_type); + IFC4X3_RC1_IfcDuctSilencer_type = new entity(strings[2804], false, 361, IFC4X3_RC1_IfcFlowTreatmentDevice_type); + IFC4X3_RC1_IfcElectricAppliance_type = new entity(strings[2805], false, 374, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcElectricDistributionBoard_type = new entity(strings[2806], false, 381, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcElectricFlowStorageDevice_type = new entity(strings[2807], false, 384, IFC4X3_RC1_IfcFlowStorageDevice_type); + IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type = new entity(strings[2808], false, 387, IFC4X3_RC1_IfcFlowTreatmentDevice_type); + IFC4X3_RC1_IfcElectricGenerator_type = new entity(strings[2809], false, 390, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcElectricMotor_type = new entity(strings[2810], false, 393, IFC4X3_RC1_IfcEnergyConversionDevice_type); + IFC4X3_RC1_IfcElectricTimeControl_type = new entity(strings[2811], false, 397, IFC4X3_RC1_IfcFlowController_type); + IFC4X3_RC1_IfcFan_type = new entity(strings[2812], false, 455, IFC4X3_RC1_IfcFlowMovingDevice_type); + IFC4X3_RC1_IfcFilter_type = new entity(strings[2813], false, 468, IFC4X3_RC1_IfcFlowTreatmentDevice_type); + IFC4X3_RC1_IfcFireSuppressionTerminal_type = new entity(strings[2814], false, 471, IFC4X3_RC1_IfcFlowTerminal_type); + IFC4X3_RC1_IfcFlowInstrument_type = new entity(strings[2815], false, 480, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcGeomodel_type = new entity(strings[2816], false, 519, IFC4X3_RC1_IfcGeotechnicalAssembly_type); + IFC4X3_RC1_IfcGeoslice_type = new entity(strings[2817], false, 520, IFC4X3_RC1_IfcGeotechnicalAssembly_type); + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2818], false, 850, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcSensor_type = new entity(strings[2819], false, 1003, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcUnitaryControlElement_type = new entity(strings[2820], false, 1250, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcActuator_type = new entity(strings[2821], false, 9, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcAlarm_type = new entity(strings[2822], false, 26, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcController_type = new entity(strings[2823], false, 235, IFC4X3_RC1_IfcDistributionControlElement_type); + IFC4X3_RC1_IfcActionRequest_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcActor_type->set_attributes({ + new attribute(strings[2827], new named_type(IFC4X3_RC1_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcActorRole_type->set_attributes({ + new attribute(strings[2828], new named_type(IFC4X3_RC1_IfcRoleEnum_type), false), + new attribute(strings[2829], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcActuator_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcActuatorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAddress_type->set_attributes({ + new attribute(strings[2831], new named_type(IFC4X3_RC1_IfcAddressTypeEnum_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2832], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2833], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlarm_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlarmType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DCant_type->set_attributes({ + new attribute(strings[2834], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAlignment2DCantSegment_type)), false), + new attribute(strings[2835], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcAlignment2DCantSegLine_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DCantSegTransition_type->set_attributes({ + new attribute(strings[2836], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2837], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2838], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2839], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2840], new named_type(IFC4X3_RC1_IfcTransitionCurveType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DCantSegment_type->set_attributes({ + new attribute(strings[2841], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2842], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2843], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[2844], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[2846], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DHorizontal_type->set_attributes({ + new attribute(strings[2841], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[2834], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type->set_attributes({ + new attribute(strings[2847], new named_type(IFC4X3_RC1_IfcCurveSegment2D_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DSegment_type->set_attributes({ + new attribute(strings[2848], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2850], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2852], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DVerSegLine_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2852], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DVerSegTransition_type->set_attributes({ + new attribute(strings[2836], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2837], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2838], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2839], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2840], new named_type(IFC4X3_RC1_IfcTransitionCurveType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignment2DVertical_type->set_attributes({ + new attribute(strings[2834], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAlignment2DVerticalSegment_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcAlignment2DVerticalSegment_type->set_attributes({ + new attribute(strings[2841], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[2842], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2854], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[2855], new named_type(IFC4X3_RC1_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAlignmentCurve_type->set_attributes({ + new attribute(strings[2856], new named_type(IFC4X3_RC1_IfcAlignment2DHorizontal_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC1_IfcAlignment2DVertical_type), true), + new attribute(strings[2858], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcAnnotation_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAnnotationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2859], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[2860], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X3_RC1_IfcApplication_type->set_attributes({ + new attribute(strings[2861], new named_type(IFC4X3_RC1_IfcOrganization_type), false), + new attribute(strings[2862], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2863], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2864], new named_type(IFC4X3_RC1_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2866], new named_type(IFC4X3_RC1_IfcAppliedValueSelect_type), true), + new attribute(strings[2867], new named_type(IFC4X3_RC1_IfcMeasureWithUnit_type), true), + new attribute(strings[2868], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2872], new named_type(IFC4X3_RC1_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2873], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcApproval_type->set_attributes({ + new attribute(strings[2874], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2876], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2877], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2878], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[2879], new named_type(IFC4X3_RC1_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2880], new named_type(IFC4X3_RC1_IfcApproval_type), false), + new attribute(strings[2881], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2882], new named_type(IFC4X3_RC1_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2883], new named_type(IFC4X3_RC1_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2884], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcAsset_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2886], new named_type(IFC4X3_RC1_IfcCostValue_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC1_IfcCostValue_type), true), + new attribute(strings[2888], new named_type(IFC4X3_RC1_IfcCostValue_type), true), + new attribute(strings[2889], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[2890], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[2891], new named_type(IFC4X3_RC1_IfcPerson_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[2893], new named_type(IFC4X3_RC1_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2894], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2895], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2897], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2898], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2899], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2900], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2901], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2902], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2903], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2904], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2906], new named_type(IFC4X3_RC1_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC1_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2906], new named_type(IFC4X3_RC1_IfcDirection_type), true), + new attribute(strings[2907], new named_type(IFC4X3_RC1_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcAxisLateralInclination_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2908], new named_type(IFC4X3_RC1_IfcInteger_type), false), + new attribute(strings[2909], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type)), false), + new attribute(strings[2910], new named_type(IFC4X3_RC1_IfcBSplineCurveForm_type), false), + new attribute(strings[2911], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[2912], new named_type(IFC4X3_RC1_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2913], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false), + new attribute(strings[2914], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false), + new attribute(strings[2915], new named_type(IFC4X3_RC1_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_RC1_IfcInteger_type), false), + new attribute(strings[2917], new named_type(IFC4X3_RC1_IfcInteger_type), false), + new attribute(strings[2909], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type))), false), + new attribute(strings[2918], new named_type(IFC4X3_RC1_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2919], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[2920], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[2912], new named_type(IFC4X3_RC1_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2921], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false), + new attribute(strings[2922], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false), + new attribute(strings[2923], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false), + new attribute(strings[2924], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false), + new attribute(strings[2915], new named_type(IFC4X3_RC1_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBeam_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBeamType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBearing_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBearingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBearingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBearingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC1_IfcIdentifier_type), false), + new attribute(strings[2926], new named_type(IFC4X3_RC1_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBlock_type->set_attributes({ + new attribute(strings[2927], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2928], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2929], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcBoiler_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBoilerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2930], new named_type(IFC4X3_RC1_IfcBooleanOperator_type), false), + new attribute(strings[2931], new named_type(IFC4X3_RC1_IfcBooleanOperand_type), false), + new attribute(strings[2932], new named_type(IFC4X3_RC1_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcBorehole_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC1_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC1_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2933], new named_type(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2934], new named_type(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2935], new named_type(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2936], new named_type(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2937], new named_type(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2938], new named_type(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2939], new named_type(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2940], new named_type(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2941], new named_type(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2942], new named_type(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2943], new named_type(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2944], new named_type(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2945], new named_type(IFC4X3_RC1_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2946], new named_type(IFC4X3_RC1_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2947], new named_type(IFC4X3_RC1_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2948], new named_type(IFC4X3_RC1_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2949], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false), + new attribute(strings[2950], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2951], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2953], new named_type(IFC4X3_RC1_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcBridge_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBridgeTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBridgePart_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuilding_type->set_attributes({ + new attribute(strings[2954], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[2955], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[2956], new named_type(IFC4X3_RC1_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2957], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuiltElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuiltElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBuiltSystem_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBuiltSystemTypeEnum_type), true), + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBurner_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcBurnerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2960], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2961], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2962], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2963], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableFitting_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableSegment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCaissonFoundation_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCaissonFoundationType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2964], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2965], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type))), false), + new attribute(strings[2966], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC1_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2965], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type))), false), + new attribute(strings[2966], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC1_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2967], new named_type(IFC4X3_RC1_IfcDirection_type), true), + new attribute(strings[2968], new named_type(IFC4X3_RC1_IfcDirection_type), true), + new attribute(strings[2969], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false), + new attribute(strings[2970], new named_type(IFC4X3_RC1_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2971], new named_type(IFC4X3_RC1_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2972], new named_type(IFC4X3_RC1_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2971], new named_type(IFC4X3_RC1_IfcReal_type), true), + new attribute(strings[2973], new named_type(IFC4X3_RC1_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2974], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcChiller_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcChillerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcChimney_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcChimneyType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCircle_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2961], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcCircularArcSegment2D_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2975], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcClassification_type->set_attributes({ + new attribute(strings[2976], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2977], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2978], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2979], new named_type(IFC4X3_RC1_IfcURIReference_type), true), + new attribute(strings[2980], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcClassificationReference_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC1_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2982], new named_type(IFC4X3_RC1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcCoil_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCoilType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcColourRgb_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2984], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[2985], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcColourRgbList_type->set_attributes({ + new attribute(strings[2986], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X3_RC1_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC1_IfcColumn_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcColumnType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcComplexProperty_type->set_attributes({ + new attribute(strings[2987], new named_type(IFC4X3_RC1_IfcIdentifier_type), false), + new attribute(strings[2988], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[2987], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2989], new named_type(IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[2990], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[2834], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcCompositeCurveSegment_type)), false), + new attribute(strings[2912], new named_type(IFC4X3_RC1_IfcLogical_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC1_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[2991], new named_type(IFC4X3_RC1_IfcTransitionCode_type), false), + new attribute(strings[2992], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2993], new named_type(IFC4X3_RC1_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[2994], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false), + new attribute(strings[2995], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcCompressor_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCompressorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCondenser_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCondenserType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConic_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X3_RC1_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[2997], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcFace_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_RC1_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[2999], new named_type(IFC4X3_RC1_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[3000], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3001], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3002], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[3003], new named_type(IFC4X3_RC1_IfcPointOrVertexPoint_type), false), + new attribute(strings[3004], new named_type(IFC4X3_RC1_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[3005], new named_type(IFC4X3_RC1_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[3006], new named_type(IFC4X3_RC1_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[3007], new named_type(IFC4X3_RC1_IfcSolidOrShell_type), false), + new attribute(strings[3008], new named_type(IFC4X3_RC1_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcConstraint_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3009], new named_type(IFC4X3_RC1_IfcConstraintEnum_type), false), + new attribute(strings[3010], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3011], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[3012], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3013], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionResource_type->set_attributes({ + new attribute(strings[3014], new named_type(IFC4X3_RC1_IfcResourceTime_type), true), + new attribute(strings[3015], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAppliedValue_type)), true), + new attribute(strings[3016], new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[3015], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAppliedValue_type)), true), + new attribute(strings[3016], new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcContext_type->set_attributes({ + new attribute(strings[3017], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3018], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3019], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentationContext_type)), true), + new attribute(strings[3020], new named_type(IFC4X3_RC1_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcControl_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcController_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcControllerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[3021], new named_type(IFC4X3_RC1_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[3022], new named_type(IFC4X3_RC1_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcConveyorSegment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcConveyorSegmentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[3023], new named_type(IFC4X3_RC1_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[3024], new named_type(IFC4X3_RC1_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3025], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3026], new named_type(IFC4X3_RC1_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcCostItem_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCostItemTypeEnum_type), true), + new attribute(strings[3027], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcCostValue_type)), true), + new attribute(strings[3028], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3029], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3030], new named_type(IFC4X3_RC1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCourse_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCourseTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCourseType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCourseTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCovering_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCoveringType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCrewResource_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC1_IfcCsgSolid_type->set_attributes({ + new attribute(strings[3031], new named_type(IFC4X3_RC1_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X3_RC1_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[3032], new named_type(IFC4X3_RC1_IfcMonetaryUnit_type), false), + new attribute(strings[3033], new named_type(IFC4X3_RC1_IfcMonetaryUnit_type), false), + new attribute(strings[3034], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), false), + new attribute(strings[3035], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3036], new named_type(IFC4X3_RC1_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC1_IfcPlane_type), false), + new attribute(strings[2859], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[2860], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC1_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC1_IfcSurface_type), false), + new attribute(strings[3038], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcBoundaryCurve_type)), false), + new attribute(strings[3039], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcCurveSegment2D_type->set_attributes({ + new attribute(strings[3040], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false), + new attribute(strings[3041], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false), + new attribute(strings[3042], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcCurveStyle_type->set_attributes({ + new attribute(strings[3043], new named_type(IFC4X3_RC1_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[3044], new named_type(IFC4X3_RC1_IfcSizeSelect_type), true), + new attribute(strings[3045], new named_type(IFC4X3_RC1_IfcColour_type), true), + new attribute(strings[3046], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3047], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3043], new named_type(IFC4X3_RC1_IfcCurveStyleFontSelect_type), false), + new attribute(strings[3048], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[3049], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3050], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcDamper_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDamperType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDeepFoundation_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDeepFoundationType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[3051], new named_type(IFC4X3_RC1_IfcProfileDef_type), false), + new attribute(strings[2930], new named_type(IFC4X3_RC1_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[2995], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[3052], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDerivedUnitElement_type)), false), + new attribute(strings[3053], new named_type(IFC4X3_RC1_IfcDerivedUnitEnum_type), false), + new attribute(strings[3054], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcNamedUnit_type), false), + new attribute(strings[3056], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[3057], new simple_type(simple_type::integer_type), false), + new attribute(strings[3058], new simple_type(simple_type::integer_type), false), + new attribute(strings[3059], new simple_type(simple_type::integer_type), false), + new attribute(strings[3060], new simple_type(simple_type::integer_type), false), + new attribute(strings[3061], new simple_type(simple_type::integer_type), false), + new attribute(strings[3062], new simple_type(simple_type::integer_type), false), + new attribute(strings[3063], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDirection_type->set_attributes({ + new attribute(strings[3064], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcReal_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3066], new named_type(IFC4X3_RC1_IfcParameterValue_type), true), + new attribute(strings[3067], new named_type(IFC4X3_RC1_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3068], new named_type(IFC4X3_RC1_IfcDistanceExpression_type), true), + new attribute(strings[3069], new named_type(IFC4X3_RC1_IfcDistanceExpression_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistanceExpression_type->set_attributes({ + new attribute(strings[3070], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3071], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3072], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3073], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3074], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionBoard_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionBoardType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionPort_type->set_attributes({ + new attribute(strings[3075], new named_type(IFC4X3_RC1_IfcFlowDirectionEnum_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[3076], new named_type(IFC4X3_RC1_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), false), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2979], new named_type(IFC4X3_RC1_IfcURIReference_type), true), + new attribute(strings[2831], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3077], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3078], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3079], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3080], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[3081], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorSelect_type)), true), + new attribute(strings[3012], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3082], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3083], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3084], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[3085], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[3086], new named_type(IFC4X3_RC1_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[3087], new named_type(IFC4X3_RC1_IfcDocumentInformation_type), false), + new attribute(strings[3088], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDocumentInformation_type)), false), + new attribute(strings[3089], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3090], new named_type(IFC4X3_RC1_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcDoor_type->set_attributes({ + new attribute(strings[3091], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3092], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDoorTypeEnum_type), true), + new attribute(strings[3093], new named_type(IFC4X3_RC1_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[3094], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[3095], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3096], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3097], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3098], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3099], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3100], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3101], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3102], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3103], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3104], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3105], new named_type(IFC4X3_RC1_IfcShapeAspect_type), true), + new attribute(strings[3106], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3107], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[3108], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3109], new named_type(IFC4X3_RC1_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[3110], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3111], new named_type(IFC4X3_RC1_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[3105], new named_type(IFC4X3_RC1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDoorStyle_type->set_attributes({ + new attribute(strings[3093], new named_type(IFC4X3_RC1_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[3112], new named_type(IFC4X3_RC1_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[3113], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3114], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDoorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDoorTypeEnum_type), false), + new attribute(strings[3093], new named_type(IFC4X3_RC1_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[3113], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3094], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEarthworksCut_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEarthworksCutTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEarthworksElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEarthworksFill_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEarthworksFillTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEdge_type->set_attributes({ + new attribute(strings[3115], new named_type(IFC4X3_RC1_IfcVertex_type), false), + new attribute(strings[3116], new named_type(IFC4X3_RC1_IfcVertex_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[3117], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[2992], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[3118], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElement_type->set_attributes({ + new attribute(strings[2858], new named_type(IFC4X3_RC1_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementAssembly_type->set_attributes({ + new attribute(strings[3119], new named_type(IFC4X3_RC1_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementQuantity_type->set_attributes({ + new attribute(strings[3120], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3121], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementType_type->set_attributes({ + new attribute(strings[3122], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcElementarySurface_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC1_IfcEllipse_type->set_attributes({ + new attribute(strings[3123], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3124], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[3123], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3124], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEngine_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEngineType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEvaporator_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEvent_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEventTypeEnum_type), true), + new attribute(strings[3125], new named_type(IFC4X3_RC1_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[3126], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3127], new named_type(IFC4X3_RC1_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEventTime_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3129], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3130], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3131], new named_type(IFC4X3_RC1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcEventType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcEventTypeEnum_type), false), + new attribute(strings[3125], new named_type(IFC4X3_RC1_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[3126], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3132], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcExternalReference_type->set_attributes({ + new attribute(strings[2979], new named_type(IFC4X3_RC1_IfcURIReference_type), true), + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[3133], new named_type(IFC4X3_RC1_IfcExternalReference_type), false), + new attribute(strings[3134], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[3135], new named_type(IFC4X3_RC1_IfcDirection_type), false), + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3136], new named_type(IFC4X3_RC1_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcFace_type->set_attributes({ + new attribute(strings[3137], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3138], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcFaceBound_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X3_RC1_IfcLoop_type), false), + new attribute(strings[3140], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC1_IfcFaceSurface_type->set_attributes({ + new attribute(strings[3141], new named_type(IFC4X3_RC1_IfcSurface_type), false), + new attribute(strings[2992], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2833], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcFacility_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFacilityPart_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFacilityPartTypeSelect_type), false), + new attribute(strings[3142], new named_type(IFC4X3_RC1_IfcFacilityUsageEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[3143], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3144], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3145], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3146], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3147], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3148], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFan_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFanType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFastener_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFastenerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[3149], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcFillStyleSelect_type)), false), + new attribute(strings[3150], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[3151], new named_type(IFC4X3_RC1_IfcCurveStyle_type), false), + new attribute(strings[3152], new named_type(IFC4X3_RC1_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[3153], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), true), + new attribute(strings[3154], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), true), + new attribute(strings[3155], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[3156], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcVector_type)), false), + new attribute(strings[3157], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStyledItem_type)), false), + new attribute(strings[3158], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcFilter_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFilterType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3159], new named_type(IFC4X3_RC1_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFooting_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFootingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFurniture_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcFurnitureType_type->set_attributes({ + new attribute(strings[3119], new named_type(IFC4X3_RC1_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4X3_RC1_IfcDimensionCount_type), false), + new attribute(strings[3161], new named_type(IFC4X3_RC1_IfcReal_type), true), + new attribute(strings[3162], new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false), + new attribute(strings[3163], new named_type(IFC4X3_RC1_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[3164], new named_type(IFC4X3_RC1_IfcGeometricRepresentationContext_type), false), + new attribute(strings[3165], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3166], new named_type(IFC4X3_RC1_IfcGeometricProjectionEnum_type), false), + new attribute(strings[3167], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X3_RC1_IfcGeometricSet_type->set_attributes({ + new attribute(strings[3052], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcGeomodel_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeoslice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeotechnicalAssembly_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeotechnicalElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGeotechnicalStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGrid_type->set_attributes({ + new attribute(strings[3168], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcGridAxis_type)), false), + new attribute(strings[3169], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcGridAxis_type)), false), + new attribute(strings[3170], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcGridAxis_type)), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcGridAxis_type->set_attributes({ + new attribute(strings[3171], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3172], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[2992], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcGridPlacement_type->set_attributes({ + new attribute(strings[3173], new named_type(IFC4X3_RC1_IfcVirtualGridIntersection_type), false), + new attribute(strings[3174], new named_type(IFC4X3_RC1_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[3175], new named_type(IFC4X3_RC1_IfcSurface_type), false), + new attribute(strings[3176], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcHumidifier_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[3092], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2895], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3177], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3179], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3180], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcImageTexture_type->set_attributes({ + new attribute(strings[3181], new named_type(IFC4X3_RC1_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcImpactProtectionDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcImpactProtectionDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3182], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3183], new named_type(IFC4X3_RC1_IfcAxisLateralInclination_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[3184], new named_type(IFC4X3_RC1_IfcTessellatedFaceSet_type), false), + new attribute(strings[3185], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3186], new named_type(IFC4X3_RC1_IfcColourRgbList_type), false), + new attribute(strings[3187], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[3188], new named_type(IFC4X3_RC1_IfcCartesianPointList_type), false), + new attribute(strings[2834], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2912], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[3189], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[3190], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X3_RC1_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[3184], new named_type(IFC4X3_RC1_IfcTessellatedFaceSet_type), false), + new attribute(strings[3191], new named_type(IFC4X3_RC1_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[3192], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcInterceptor_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcInventory_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcInventoryTypeEnum_type), true), + new attribute(strings[3193], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[3194], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPerson_type)), true), + new attribute(strings[3195], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC1_IfcCostValue_type), true), + new attribute(strings[2886], new named_type(IFC4X3_RC1_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[3196], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[3197], new named_type(IFC4X3_RC1_IfcDateTime_type), false), + new attribute(strings[3198], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcKerb_type->set_attributes({ + new attribute(strings[3199], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcKerbType_type->set_attributes({ + new attribute(strings[3199], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2960], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2974], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3200], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3201], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLaborResource_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLagTime_type->set_attributes({ + new attribute(strings[3202], new named_type(IFC4X3_RC1_IfcTimeOrRatioSelect_type), false), + new attribute(strings[3203], new named_type(IFC4X3_RC1_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcLamp_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLampType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2862], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3204], new named_type(IFC4X3_RC1_IfcActorSelect_type), true), + new attribute(strings[3205], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[2979], new named_type(IFC4X3_RC1_IfcURIReference_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3206], new named_type(IFC4X3_RC1_IfcLanguageId_type), true), + new attribute(strings[3207], new named_type(IFC4X3_RC1_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[3208], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false), + new attribute(strings[3209], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3210], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcLightFixture_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[3211], new named_type(IFC4X3_RC1_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[3212], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcLightSource_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3213], new named_type(IFC4X3_RC1_IfcColourRgb_type), false), + new attribute(strings[3214], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3215], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[3140], new named_type(IFC4X3_RC1_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false), + new attribute(strings[3216], new named_type(IFC4X3_RC1_IfcColourRgb_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[3218], new named_type(IFC4X3_RC1_IfcLuminousFluxMeasure_type), false), + new attribute(strings[3219], new named_type(IFC4X3_RC1_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[3220], new named_type(IFC4X3_RC1_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false), + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3221], new named_type(IFC4X3_RC1_IfcReal_type), false), + new attribute(strings[3222], new named_type(IFC4X3_RC1_IfcReal_type), false), + new attribute(strings[3223], new named_type(IFC4X3_RC1_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[3140], new named_type(IFC4X3_RC1_IfcDirection_type), false), + new attribute(strings[3224], new named_type(IFC4X3_RC1_IfcReal_type), true), + new attribute(strings[3225], new named_type(IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[3226], new named_type(IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLine_type->set_attributes({ + new attribute(strings[3227], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false), + new attribute(strings[3228], new named_type(IFC4X3_RC1_IfcVector_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcLineSegment2D_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcLinearAxisWithInclination_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3183], new named_type(IFC4X3_RC1_IfcAxisLateralInclination_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[3229], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3230], new named_type(IFC4X3_RC1_IfcDistanceExpression_type), false), + new attribute(strings[3140], new named_type(IFC4X3_RC1_IfcOrientationExpression_type), true), + new attribute(strings[3231], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcLinearPlacementWithInclination_type->set_attributes({ + new attribute(strings[3183], new named_type(IFC4X3_RC1_IfcAxisLateralInclination_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLinearPositioningElement_type->set_attributes({ + new attribute(strings[2906], new named_type(IFC4X3_RC1_IfcCurve_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLinearSpanPlacement_type->set_attributes({ + new attribute(strings[3232], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLiquidTerminal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLiquidTerminalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[3233], new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[3234], new named_type(IFC4X3_RC1_IfcClosedShell_type), false) + },{ + false + }); + IFC4X3_RC1_IfcMapConversion_type->set_attributes({ + new attribute(strings[3235], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3236], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3237], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3238], new named_type(IFC4X3_RC1_IfcReal_type), true), + new attribute(strings[3239], new named_type(IFC4X3_RC1_IfcReal_type), true), + new attribute(strings[2970], new named_type(IFC4X3_RC1_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMappedItem_type->set_attributes({ + new attribute(strings[3240], new named_type(IFC4X3_RC1_IfcRepresentationMap_type), false), + new attribute(strings[3241], new named_type(IFC4X3_RC1_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcMarineFacility_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMarineFacilityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterial_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[3242], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcClassificationSelect_type)), false), + new attribute(strings[3243], new named_type(IFC4X3_RC1_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3244], new named_type(IFC4X3_RC1_IfcMaterial_type), false), + new attribute(strings[3245], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3246], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[3247], new named_type(IFC4X3_RC1_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[3244], new named_type(IFC4X3_RC1_IfcMaterial_type), true), + new attribute(strings[3248], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[3249], new named_type(IFC4X3_RC1_IfcLogical_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3250], new named_type(IFC4X3_RC1_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[3251], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterialLayer_type)), false), + new attribute(strings[3252], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[3253], new named_type(IFC4X3_RC1_IfcMaterialLayerSet_type), false), + new attribute(strings[3254], new named_type(IFC4X3_RC1_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3255], new named_type(IFC4X3_RC1_IfcDirectionSenseEnum_type), false), + new attribute(strings[3256], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3257], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[3258], new named_type(IFC4X3_RC1_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3259], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialList_type->set_attributes({ + new attribute(strings[3260], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterial_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3244], new named_type(IFC4X3_RC1_IfcMaterial_type), true), + new attribute(strings[3261], new named_type(IFC4X3_RC1_IfcProfileDef_type), false), + new attribute(strings[3250], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3262], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterialProfile_type)), false), + new attribute(strings[3263], new named_type(IFC4X3_RC1_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[3264], new named_type(IFC4X3_RC1_IfcMaterialProfileSet_type), false), + new attribute(strings[3265], new named_type(IFC4X3_RC1_IfcCardinalPointReference_type), true), + new attribute(strings[3257], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[3266], new named_type(IFC4X3_RC1_IfcMaterialProfileSet_type), false), + new attribute(strings[3267], new named_type(IFC4X3_RC1_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[3259], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[3244], new named_type(IFC4X3_RC1_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[3268], new named_type(IFC4X3_RC1_IfcMaterial_type), false), + new attribute(strings[3269], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcMaterial_type)), false), + new attribute(strings[3270], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[3271], new named_type(IFC4X3_RC1_IfcValue_type), false), + new attribute(strings[3272], new named_type(IFC4X3_RC1_IfcUnit_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[3273], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3274], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[3273], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3274], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMember_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMemberType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMetric_type->set_attributes({ + new attribute(strings[3275], new named_type(IFC4X3_RC1_IfcBenchmarkEnum_type), false), + new attribute(strings[3276], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3277], new named_type(IFC4X3_RC1_IfcMetricValueSelect_type), true), + new attribute(strings[3278], new named_type(IFC4X3_RC1_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[3279], new named_type(IFC4X3_RC1_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC1_IfcMooringDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMooringDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMooringDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMooringDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcNamedUnit_type->set_attributes({ + new attribute(strings[3280], new named_type(IFC4X3_RC1_IfcDimensionalExponents_type), false), + new attribute(strings[3053], new named_type(IFC4X3_RC1_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcNavigationElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcNavigationElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcNavigationElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcNavigationElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcObject_type->set_attributes({ + new attribute(strings[3017], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcObjectPlacement_type->set_attributes({ + new attribute(strings[3281], new named_type(IFC4X3_RC1_IfcObjectPlacement_type), true) + },{ + false + }); + IFC4X3_RC1_IfcObjective_type->set_attributes({ + new attribute(strings[3282], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcConstraint_type)), true), + new attribute(strings[3283], new named_type(IFC4X3_RC1_IfcLogicalOperatorEnum_type), true), + new attribute(strings[3284], new named_type(IFC4X3_RC1_IfcObjectiveEnum_type), false), + new attribute(strings[3285], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOccupant_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[3286], new named_type(IFC4X3_RC1_IfcCurve_type), false) + },{ + false + }); + IFC4X3_RC1_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[3230], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[2912], new named_type(IFC4X3_RC1_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[3230], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[2912], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[2907], new named_type(IFC4X3_RC1_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[3259], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcDistanceExpression_type)), false), + new attribute(strings[2858], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcOpenCrossProfileDef_type->set_attributes({ + new attribute(strings[3287], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3288], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type)), false), + new attribute(strings[3289], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3290], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOrganization_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3291], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorRole_type)), true), + new attribute(strings[3292], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[3293], new named_type(IFC4X3_RC1_IfcOrganization_type), false), + new attribute(strings[3294], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcOrientationExpression_type->set_attributes({ + new attribute(strings[3295], new named_type(IFC4X3_RC1_IfcDirection_type), false), + new attribute(strings[3296], new named_type(IFC4X3_RC1_IfcDirection_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[3297], new named_type(IFC4X3_RC1_IfcEdge_type), false), + new attribute(strings[3140], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X3_RC1_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC1_IfcOutlet_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOutletType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[3298], new named_type(IFC4X3_RC1_IfcPersonAndOrganization_type), false), + new attribute(strings[3299], new named_type(IFC4X3_RC1_IfcApplication_type), false), + new attribute(strings[3300], new named_type(IFC4X3_RC1_IfcStateEnum_type), true), + new attribute(strings[3301], new named_type(IFC4X3_RC1_IfcChangeActionEnum_type), true), + new attribute(strings[3302], new named_type(IFC4X3_RC1_IfcTimeStamp_type), true), + new attribute(strings[3303], new named_type(IFC4X3_RC1_IfcPersonAndOrganization_type), true), + new attribute(strings[3304], new named_type(IFC4X3_RC1_IfcApplication_type), true), + new attribute(strings[3305], new named_type(IFC4X3_RC1_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcPath_type->set_attributes({ + new attribute(strings[3118], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcPavement_type->set_attributes({ + new attribute(strings[3306], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPavementType_type->set_attributes({ + new attribute(strings[3306], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPcurve_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC1_IfcSurface_type), false), + new attribute(strings[3307], new named_type(IFC4X3_RC1_IfcCurve_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[3308], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[3093], new named_type(IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[3111], new named_type(IFC4X3_RC1_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3309], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3310], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3105], new named_type(IFC4X3_RC1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPermit_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPermitTypeEnum_type), true), + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPerson_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3311], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3312], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3313], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3314], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3315], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3291], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorRole_type)), true), + new attribute(strings[3292], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[3316], new named_type(IFC4X3_RC1_IfcPerson_type), false), + new attribute(strings[3317], new named_type(IFC4X3_RC1_IfcOrganization_type), false), + new attribute(strings[3291], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[3318], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPhysicalQuantity_type)), false), + new attribute(strings[3319], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[3320], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3014], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcPile_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPileTypeEnum_type), true), + new attribute(strings[3112], new named_type(IFC4X3_RC1_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPileType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2960], new named_type(IFC4X3_RC1_IfcInteger_type), false), + new attribute(strings[3321], new named_type(IFC4X3_RC1_IfcInteger_type), false), + new attribute(strings[3322], new named_type(IFC4X3_RC1_IfcInteger_type), false), + new attribute(strings[3323], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPlacement_type->set_attributes({ + new attribute(strings[2979], new named_type(IFC4X3_RC1_IfcCartesianPoint_type), false) + },{ + false + }); + IFC4X3_RC1_IfcPlanarBox_type->set_attributes({ + new attribute(strings[3324], new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[3325], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3326], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcPlant_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPlate_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPlateType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[3286], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3327], new named_type(IFC4X3_RC1_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC1_IfcSurface_type), false), + new attribute(strings[3328], new named_type(IFC4X3_RC1_IfcParameterValue_type), false), + new attribute(strings[3329], new named_type(IFC4X3_RC1_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcPolyLoop_type->set_attributes({ + new attribute(strings[3330], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), false), + new attribute(strings[3331], new named_type(IFC4X3_RC1_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[3332], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3333], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[3334], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPolyline_type->set_attributes({ + new attribute(strings[3188], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPostalAddress_type->set_attributes({ + new attribute(strings[3335], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3336], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3337], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3338], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3339], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3340], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3341], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC1_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3342], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcLayeredItem_type)), false), + new attribute(strings[2874], new named_type(IFC4X3_RC1_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[3343], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[3344], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[3345], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[3346], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC1_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC1_IfcPresentationStyleAssignment_type->set_attributes({ + new attribute(strings[3347], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPresentationStyleSelect_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcProcedure_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProcedureType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProcess_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProduct_type->set_attributes({ + new attribute(strings[3348], new named_type(IFC4X3_RC1_IfcObjectPlacement_type), true), + new attribute(strings[3349], new named_type(IFC4X3_RC1_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3350], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcProfileDef_type->set_attributes({ + new attribute(strings[3351], new named_type(IFC4X3_RC1_IfcProfileTypeEnum_type), false), + new attribute(strings[3352], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcProfileProperties_type->set_attributes({ + new attribute(strings[3353], new named_type(IFC4X3_RC1_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[3354], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3355], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3356], new named_type(IFC4X3_RC1_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProperty_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcIdentifier_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[3357], new named_type(IFC4X3_RC1_IfcValue_type), true), + new attribute(strings[3358], new named_type(IFC4X3_RC1_IfcValue_type), true), + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcUnit_type), true), + new attribute(strings[3359], new named_type(IFC4X3_RC1_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[3360], new named_type(IFC4X3_RC1_IfcProperty_type), false), + new attribute(strings[3361], new named_type(IFC4X3_RC1_IfcProperty_type), false), + new attribute(strings[3270], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[3362], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true), + new attribute(strings[3363], new named_type(IFC4X3_RC1_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[3362], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), false), + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[3198], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true), + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[2987], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3364], new named_type(IFC4X3_RC1_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertySet_type->set_attributes({ + new attribute(strings[2988], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[3365], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2990], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[3366], new named_type(IFC4X3_RC1_IfcValue_type), true), + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[3367], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true), + new attribute(strings[3368], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true), + new attribute(strings[3270], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3369], new named_type(IFC4X3_RC1_IfcUnit_type), true), + new attribute(strings[3370], new named_type(IFC4X3_RC1_IfcUnit_type), true), + new attribute(strings[3371], new named_type(IFC4X3_RC1_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcProxy_type->set_attributes({ + new attribute(strings[3372], new named_type(IFC4X3_RC1_IfcObjectTypeEnum_type), false), + new attribute(strings[2858], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPump_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcPumpType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcQuantityArea_type->set_attributes({ + new attribute(strings[3373], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcQuantityCount_type->set_attributes({ + new attribute(strings[3375], new named_type(IFC4X3_RC1_IfcCountMeasure_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcQuantityLength_type->set_attributes({ + new attribute(strings[3376], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcQuantityTime_type->set_attributes({ + new attribute(strings[3377], new named_type(IFC4X3_RC1_IfcTimeMeasure_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[3378], new named_type(IFC4X3_RC1_IfcVolumeMeasure_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[3379], new named_type(IFC4X3_RC1_IfcMassMeasure_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcRail_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRailTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRailType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRailTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRailing_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRailingType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRailway_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRamp_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRampFlight_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRampType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[3380], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[3380], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2961], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3381], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3382], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2950], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2951], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2927], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2928], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3321], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC1_IfcSurface_type), false), + new attribute(strings[3383], new named_type(IFC4X3_RC1_IfcParameterValue_type), false), + new attribute(strings[3384], new named_type(IFC4X3_RC1_IfcParameterValue_type), false), + new attribute(strings[3385], new named_type(IFC4X3_RC1_IfcParameterValue_type), false), + new attribute(strings[3386], new named_type(IFC4X3_RC1_IfcParameterValue_type), false), + new attribute(strings[3387], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3388], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[3389], new named_type(IFC4X3_RC1_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[3390], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDayInMonthNumber_type)), true), + new attribute(strings[3391], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDayInWeekNumber_type)), true), + new attribute(strings[3392], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcMonthInYearNumber_type)), true), + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[3393], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[3394], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[3395], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReference_type->set_attributes({ + new attribute(strings[3396], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3397], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3398], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3399], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), true), + new attribute(strings[3400], new named_type(IFC4X3_RC1_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcReferent_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcReferentTypeEnum_type), true), + new attribute(strings[3401], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[3402], new named_type(IFC4X3_RC1_IfcTimeMeasure_type), false), + new attribute(strings[3196], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcedSoil_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[3403], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), false), + new attribute(strings[3404], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[3405], new named_type(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3406], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3407], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3408], new named_type(IFC4X3_RC1_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[3409], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3410], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[3273], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3411], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3412], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[3405], new named_type(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[3273], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3411], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3412], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3405], new named_type(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3413], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3414], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[3404], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[3415], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3416], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3417], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3418], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3419], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3420], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3421], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3422], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[3415], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3416], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3417], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3418], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3419], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3420], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3421], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3422], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3413], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3414], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAggregates_type->set_attributes({ + new attribute(strings[3423], new named_type(IFC4X3_RC1_IfcObjectDefinition_type), false), + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssigns_type->set_attributes({ + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false), + new attribute(strings[3425], new named_type(IFC4X3_RC1_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[3426], new named_type(IFC4X3_RC1_IfcActor_type), false), + new attribute(strings[3427], new named_type(IFC4X3_RC1_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[3428], new named_type(IFC4X3_RC1_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[3429], new named_type(IFC4X3_RC1_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[3430], new named_type(IFC4X3_RC1_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[3431], new named_type(IFC4X3_RC1_IfcProcessSelect_type), false), + new attribute(strings[3432], new named_type(IFC4X3_RC1_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[3433], new named_type(IFC4X3_RC1_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[3434], new named_type(IFC4X3_RC1_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociates_type->set_attributes({ + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2880], new named_type(IFC4X3_RC1_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[3435], new named_type(IFC4X3_RC1_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[3436], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3437], new named_type(IFC4X3_RC1_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[3087], new named_type(IFC4X3_RC1_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[3438], new named_type(IFC4X3_RC1_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[3268], new named_type(IFC4X3_RC1_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelAssociatesProfileDef_type->set_attributes({ + new attribute(strings[3439], new named_type(IFC4X3_RC1_IfcProfileDef_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[3440], new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), true), + new attribute(strings[3441], new named_type(IFC4X3_RC1_IfcElement_type), false), + new attribute(strings[3442], new named_type(IFC4X3_RC1_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[3443], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false), + new attribute(strings[3444], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false), + new attribute(strings[3445], new named_type(IFC4X3_RC1_IfcConnectionTypeEnum_type), false), + new attribute(strings[3446], new named_type(IFC4X3_RC1_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[3447], new named_type(IFC4X3_RC1_IfcPort_type), false), + new attribute(strings[3442], new named_type(IFC4X3_RC1_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[3447], new named_type(IFC4X3_RC1_IfcPort_type), false), + new attribute(strings[3448], new named_type(IFC4X3_RC1_IfcPort_type), false), + new attribute(strings[3449], new named_type(IFC4X3_RC1_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[3441], new named_type(IFC4X3_RC1_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[3450], new named_type(IFC4X3_RC1_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[3451], new named_type(IFC4X3_RC1_IfcStructuralMember_type), false), + new attribute(strings[3452], new named_type(IFC4X3_RC1_IfcStructuralConnection_type), false), + new attribute(strings[3453], new named_type(IFC4X3_RC1_IfcBoundaryCondition_type), true), + new attribute(strings[3454], new named_type(IFC4X3_RC1_IfcStructuralConnectionCondition_type), true), + new attribute(strings[3455], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3456], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[3457], new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[3458], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcElement_type)), false), + new attribute(strings[3459], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[3460], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProduct_type)), false), + new attribute(strings[3461], new named_type(IFC4X3_RC1_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[3462], new named_type(IFC4X3_RC1_IfcElement_type), false), + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[3464], new named_type(IFC4X3_RC1_IfcSpace_type), false), + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelDeclares_type->set_attributes({ + new attribute(strings[3465], new named_type(IFC4X3_RC1_IfcContext_type), false), + new attribute(strings[3466], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObject_type)), false), + new attribute(strings[3423], new named_type(IFC4X3_RC1_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false), + new attribute(strings[3467], new named_type(IFC4X3_RC1_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[3468], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertySetDefinition_type)), false), + new attribute(strings[3469], new named_type(IFC4X3_RC1_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[3424], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcObject_type)), false), + new attribute(strings[3470], new named_type(IFC4X3_RC1_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[3471], new named_type(IFC4X3_RC1_IfcOpeningElement_type), false), + new attribute(strings[3472], new named_type(IFC4X3_RC1_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[3473], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcDistributionControlElement_type)), false), + new attribute(strings[3474], new named_type(IFC4X3_RC1_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[3441], new named_type(IFC4X3_RC1_IfcInterferenceSelect_type), false), + new attribute(strings[3442], new named_type(IFC4X3_RC1_IfcInterferenceSelect_type), false), + new attribute(strings[3475], new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), true), + new attribute(strings[3476], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3477], new named_type(IFC4X3_RC1_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelNests_type->set_attributes({ + new attribute(strings[3423], new named_type(IFC4X3_RC1_IfcObjectDefinition_type), false), + new attribute(strings[3424], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelPositions_type->set_attributes({ + new attribute(strings[3478], new named_type(IFC4X3_RC1_IfcPositioningElement_type), false), + new attribute(strings[3479], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcProduct_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[3441], new named_type(IFC4X3_RC1_IfcElement_type), false), + new attribute(strings[3480], new named_type(IFC4X3_RC1_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[3460], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcSpatialReferenceSelect_type)), false), + new attribute(strings[3461], new named_type(IFC4X3_RC1_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelSequence_type->set_attributes({ + new attribute(strings[3431], new named_type(IFC4X3_RC1_IfcProcess_type), false), + new attribute(strings[3481], new named_type(IFC4X3_RC1_IfcProcess_type), false), + new attribute(strings[3482], new named_type(IFC4X3_RC1_IfcLagTime_type), true), + new attribute(strings[3483], new named_type(IFC4X3_RC1_IfcSequenceEnum_type), true), + new attribute(strings[3484], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3485], new named_type(IFC4X3_RC1_IfcSystem_type), false), + new attribute(strings[3486], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[3464], new named_type(IFC4X3_RC1_IfcSpaceBoundarySelect_type), false), + new attribute(strings[3472], new named_type(IFC4X3_RC1_IfcElement_type), false), + new attribute(strings[3440], new named_type(IFC4X3_RC1_IfcConnectionGeometry_type), true), + new attribute(strings[3487], new named_type(IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3488], new named_type(IFC4X3_RC1_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3489], new named_type(IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3490], new named_type(IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[3462], new named_type(IFC4X3_RC1_IfcElement_type), false), + new attribute(strings[3491], new named_type(IFC4X3_RC1_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3492], new named_type(IFC4X3_RC1_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRepresentation_type->set_attributes({ + new attribute(strings[3493], new named_type(IFC4X3_RC1_IfcRepresentationContext_type), false), + new attribute(strings[3494], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3495], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3496], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3497], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3498], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3499], new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false), + new attribute(strings[3500], new named_type(IFC4X3_RC1_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcResource_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[3134], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcResourceObjectSelect_type)), false), + new attribute(strings[2880], new named_type(IFC4X3_RC1_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[3437], new named_type(IFC4X3_RC1_IfcConstraint_type), false), + new attribute(strings[3134], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcResourceTime_type->set_attributes({ + new attribute(strings[3501], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3502], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3503], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3504], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3505], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3506], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3507], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3508], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3509], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3510], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3511], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3512], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3513], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3514], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3515], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2906], new named_type(IFC4X3_RC1_IfcAxis1Placement_type), false), + new attribute(strings[3516], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3136], new named_type(IFC4X3_RC1_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3517], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcRoad_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRoof_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRoofType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcRoot_type->set_attributes({ + new attribute(strings[3518], new named_type(IFC4X3_RC1_IfcGloballyUniqueId_type), false), + new attribute(strings[3519], new named_type(IFC4X3_RC1_IfcOwnerHistory_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3520], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSIUnit_type->set_attributes({ + new attribute(strings[3521], new named_type(IFC4X3_RC1_IfcSIPrefix_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X3_RC1_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3522], new named_type(IFC4X3_RC1_IfcDataOriginEnum_type), true), + new attribute(strings[3523], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC1_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3524], new named_type(IFC4X3_RC1_IfcSectionTypeEnum_type), false), + new attribute(strings[3525], new named_type(IFC4X3_RC1_IfcProfileDef_type), false), + new attribute(strings[3526], new named_type(IFC4X3_RC1_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3527], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3528], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false), + new attribute(strings[3529], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3530], new named_type(IFC4X3_RC1_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3531], new named_type(IFC4X3_RC1_IfcSectionProperties_type), false), + new attribute(strings[3532], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3533], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3534], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcDistanceExpression_type)), false), + new attribute(strings[3182], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3535], new named_type(IFC4X3_RC1_IfcCompositeCurve_type), false), + new attribute(strings[3533], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false), + new attribute(strings[3534], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSectionedSurface_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3534], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcDistanceExpression_type)), false), + new attribute(strings[3533], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC1_IfcProfileDef_type)), false), + new attribute(strings[3182], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSensor_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSensorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3536], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcShapeModel_type)), false), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3537], new named_type(IFC4X3_RC1_IfcLogical_type), false), + new attribute(strings[3538], new named_type(IFC4X3_RC1_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3539], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcShell_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcSign_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSignTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSignType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSignTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSignal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSignalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSignalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSignalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC1_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3540], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3541], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3542], new named_type(IFC4X3_RC1_IfcPropertyEnumeration_type), true), + new attribute(strings[3543], new named_type(IFC4X3_RC1_IfcUnit_type), true), + new attribute(strings[3544], new named_type(IFC4X3_RC1_IfcUnit_type), true), + new attribute(strings[3270], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3545], new named_type(IFC4X3_RC1_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSite_type->set_attributes({ + new attribute(strings[3546], new named_type(IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3547], new named_type(IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3548], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3549], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3550], new named_type(IFC4X3_RC1_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSlab_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSlabType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3551], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3552], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3553], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcSolidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpace_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSpaceTypeEnum_type), true), + new attribute(strings[3554], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpaceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSpaceTypeEnum_type), false), + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[3122], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3555], new named_type(IFC4X3_RC1_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSphere_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStair_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStairFlight_type->set_attributes({ + new attribute(strings[3556], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[3557], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[3558], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3559], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStairType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3560], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3561], new named_type(IFC4X3_RC1_IfcStructuralLoad_type), false), + new attribute(strings[3562], new named_type(IFC4X3_RC1_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3563], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true), + new attribute(strings[3564], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3565], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStructuralResultGroup_type)), true), + new attribute(strings[3566], new named_type(IFC4X3_RC1_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[3453], new named_type(IFC4X3_RC1_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC1_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3567], new named_type(IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2906], new named_type(IFC4X3_RC1_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2906], new named_type(IFC4X3_RC1_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC1_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3568], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[3196], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3569], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC1_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3570], new named_type(IFC4X3_RC1_IfcActionTypeEnum_type), false), + new attribute(strings[3571], new named_type(IFC4X3_RC1_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3572], new named_type(IFC4X3_RC1_IfcRatioMeasure_type), true), + new attribute(strings[2831], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3573], new named_type(IFC4X3_RC1_IfcLinearForceMeasure_type), true), + new attribute(strings[3574], new named_type(IFC4X3_RC1_IfcLinearForceMeasure_type), true), + new attribute(strings[3575], new named_type(IFC4X3_RC1_IfcLinearForceMeasure_type), true), + new attribute(strings[3576], new named_type(IFC4X3_RC1_IfcLinearMomentMeasure_type), true), + new attribute(strings[3577], new named_type(IFC4X3_RC1_IfcLinearMomentMeasure_type), true), + new attribute(strings[3578], new named_type(IFC4X3_RC1_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3579], new named_type(IFC4X3_RC1_IfcPlanarForceMeasure_type), true), + new attribute(strings[3580], new named_type(IFC4X3_RC1_IfcPlanarForceMeasure_type), true), + new attribute(strings[3581], new named_type(IFC4X3_RC1_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3582], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3583], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3584], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3585], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3586], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3587], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3588], new named_type(IFC4X3_RC1_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3589], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3590], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3591], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3592], new named_type(IFC4X3_RC1_IfcTorqueMeasure_type), true), + new attribute(strings[3593], new named_type(IFC4X3_RC1_IfcTorqueMeasure_type), true), + new attribute(strings[3594], new named_type(IFC4X3_RC1_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3595], new named_type(IFC4X3_RC1_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X3_RC1_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3596], new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3597], new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3598], new named_type(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[3456], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3599], new named_type(IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3600], new named_type(IFC4X3_RC1_IfcStructuralLoadGroup_type), true), + new attribute(strings[3601], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3567], new named_type(IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[2974], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcStyledItem_type->set_attributes({ + new attribute(strings[3602], new named_type(IFC4X3_RC1_IfcRepresentationItem_type), true), + new attribute(strings[3347], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcStyleAssignmentSelect_type)), false), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSubedge_type->set_attributes({ + new attribute(strings[3603], new named_type(IFC4X3_RC1_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3604], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3605], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC1_IfcPcurve_type)), false), + new attribute(strings[3606], new named_type(IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3607], new named_type(IFC4X3_RC1_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[3135], new named_type(IFC4X3_RC1_IfcDirection_type), false), + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3608], new named_type(IFC4X3_RC1_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3609], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), true), + new attribute(strings[3610], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), true), + new attribute(strings[3611], new named_type(IFC4X3_RC1_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3612], new named_type(IFC4X3_RC1_IfcSurfaceSide_type), false), + new attribute(strings[3347], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC1_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3613], new named_type(IFC4X3_RC1_IfcColourRgb_type), false), + new attribute(strings[3614], new named_type(IFC4X3_RC1_IfcColourRgb_type), false), + new attribute(strings[3615], new named_type(IFC4X3_RC1_IfcColourRgb_type), false), + new attribute(strings[3616], new named_type(IFC4X3_RC1_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3617], new named_type(IFC4X3_RC1_IfcReal_type), true), + new attribute(strings[3618], new named_type(IFC4X3_RC1_IfcReal_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3619], new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true), + new attribute(strings[3615], new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true), + new attribute(strings[3613], new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true), + new attribute(strings[3620], new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true), + new attribute(strings[3621], new named_type(IFC4X3_RC1_IfcColourOrFactor_type), true), + new attribute(strings[3622], new named_type(IFC4X3_RC1_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3623], new named_type(IFC4X3_RC1_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3624], new named_type(IFC4X3_RC1_IfcColourRgb_type), false), + new attribute(strings[3625], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3626], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3627], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3628], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3629], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3630], new named_type(IFC4X3_RC1_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3631], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3632], new named_type(IFC4X3_RC1_IfcProfileDef_type), false), + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[2851], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3633], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3066], new named_type(IFC4X3_RC1_IfcParameterValue_type), true), + new attribute(strings[3067], new named_type(IFC4X3_RC1_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[3178], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3634], new named_type(IFC4X3_RC1_IfcProfileDef_type), false), + new attribute(strings[2996], new named_type(IFC4X3_RC1_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3635], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3177], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3179], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3636], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3637], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3180], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTable_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3638], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTableRow_type)), true), + new attribute(strings[3639], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcTableColumn_type->set_attributes({ + new attribute(strings[2874], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcUnit_type), true), + new attribute(strings[3278], new named_type(IFC4X3_RC1_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcTableRow_type->set_attributes({ + new attribute(strings[3640], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), true), + new attribute(strings[3641], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcTank_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTankType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTask_type->set_attributes({ + new attribute(strings[2825], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3642], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3643], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3250], new named_type(IFC4X3_RC1_IfcInteger_type), true), + new attribute(strings[3644], new named_type(IFC4X3_RC1_IfcTaskTime_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTaskTime_type->set_attributes({ + new attribute(strings[3203], new named_type(IFC4X3_RC1_IfcTaskDurationEnum_type), true), + new attribute(strings[3645], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3503], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3504], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3646], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3647], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3648], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3649], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3650], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3651], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3652], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3508], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3653], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3511], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3512], new named_type(IFC4X3_RC1_IfcDateTime_type), true), + new attribute(strings[3654], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3515], new named_type(IFC4X3_RC1_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3655], new named_type(IFC4X3_RC1_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTaskType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTaskTypeEnum_type), false), + new attribute(strings[3642], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3656], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3657], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3658], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3659], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcLabel_type)), true), + new attribute(strings[3660], new named_type(IFC4X3_RC1_IfcURIReference_type), true), + new attribute(strings[3661], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTendon_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTendonTypeEnum_type), true), + new attribute(strings[3273], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3411], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3662], new named_type(IFC4X3_RC1_IfcForceMeasure_type), true), + new attribute(strings[3663], new named_type(IFC4X3_RC1_IfcPressureMeasure_type), true), + new attribute(strings[3664], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3665], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3666], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTendonConduit_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTendonConduitType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTendonType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTendonTypeEnum_type), false), + new attribute(strings[3273], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3411], new named_type(IFC4X3_RC1_IfcAreaMeasure_type), true), + new attribute(strings[3667], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2964], new named_type(IFC4X3_RC1_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X3_RC1_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3668], new named_type(IFC4X3_RC1_IfcPresentableText_type), false), + new attribute(strings[3324], new named_type(IFC4X3_RC1_IfcAxis2Placement_type), false), + new attribute(strings[3669], new named_type(IFC4X3_RC1_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3670], new named_type(IFC4X3_RC1_IfcPlanarExtent_type), false), + new attribute(strings[3671], new named_type(IFC4X3_RC1_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcTextStyle_type->set_attributes({ + new attribute(strings[3672], new named_type(IFC4X3_RC1_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3673], new named_type(IFC4X3_RC1_IfcTextStyleTextModel_type), true), + new attribute(strings[3674], new named_type(IFC4X3_RC1_IfcTextFontSelect_type), false), + new attribute(strings[3046], new named_type(IFC4X3_RC1_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3675], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcTextFontName_type)), false), + new attribute(strings[3676], new named_type(IFC4X3_RC1_IfcFontStyle_type), true), + new attribute(strings[3677], new named_type(IFC4X3_RC1_IfcFontVariant_type), true), + new attribute(strings[3678], new named_type(IFC4X3_RC1_IfcFontWeight_type), true), + new attribute(strings[3679], new named_type(IFC4X3_RC1_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3680], new named_type(IFC4X3_RC1_IfcColour_type), false), + new attribute(strings[3681], new named_type(IFC4X3_RC1_IfcColour_type), true) + },{ + false, false + }); + IFC4X3_RC1_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3682], new named_type(IFC4X3_RC1_IfcSizeSelect_type), true), + new attribute(strings[3683], new named_type(IFC4X3_RC1_IfcTextAlignment_type), true), + new attribute(strings[3684], new named_type(IFC4X3_RC1_IfcTextDecoration_type), true), + new attribute(strings[3685], new named_type(IFC4X3_RC1_IfcSizeSelect_type), true), + new attribute(strings[3686], new named_type(IFC4X3_RC1_IfcSizeSelect_type), true), + new attribute(strings[3687], new named_type(IFC4X3_RC1_IfcTextTransformation_type), true), + new attribute(strings[3688], new named_type(IFC4X3_RC1_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3689], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3629], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[3631], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X3_RC1_IfcTextureMap_type->set_attributes({ + new attribute(strings[3690], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC1_IfcTextureVertex_type)), false), + new attribute(strings[3184], new named_type(IFC4X3_RC1_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2964], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3691], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X3_RC1_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3692], new named_type(IFC4X3_RC1_IfcTime_type), false), + new attribute(strings[3693], new named_type(IFC4X3_RC1_IfcTime_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC1_IfcLabel_type), false), + new attribute(strings[2830], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3692], new named_type(IFC4X3_RC1_IfcDateTime_type), false), + new attribute(strings[3693], new named_type(IFC4X3_RC1_IfcDateTime_type), false), + new attribute(strings[3694], new named_type(IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3522], new named_type(IFC4X3_RC1_IfcDataOriginEnum_type), false), + new attribute(strings[3523], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3055], new named_type(IFC4X3_RC1_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[3198], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcValue_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC1_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3695], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3696], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC1_IfcTrackElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTrackElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTrackElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTrackElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTransformer_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTransformerType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTransitionCurveSegment2D_type->set_attributes({ + new attribute(strings[2836], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2837], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2838], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2839], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[2840], new named_type(IFC4X3_RC1_IfcTransitionCurveType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTransportElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTransportElementTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTransportElementTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3697], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3698], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2951], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3699], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3700], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcParameterValue_type))), true), + new attribute(strings[3332], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3189], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC1_IfcPositiveInteger_type))), false), + new attribute(strings[3334], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3701], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[3286], new named_type(IFC4X3_RC1_IfcCurve_type), false), + new attribute(strings[3702], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC1_IfcTrimmingSelect_type)), false), + new attribute(strings[3703], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC1_IfcTrimmingSelect_type)), false), + new attribute(strings[3704], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3606], new named_type(IFC4X3_RC1_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC1_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTypeObject_type->set_attributes({ + new attribute(strings[3705], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[3706], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3707], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3708], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC1_IfcRepresentationMap_type)), true), + new attribute(strings[2858], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcTypeResource_type->set_attributes({ + new attribute(strings[2885], new named_type(IFC4X3_RC1_IfcIdentifier_type), true), + new attribute(strings[2826], new named_type(IFC4X3_RC1_IfcText_type), true), + new attribute(strings[3709], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3635], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3177], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3200], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3180], new named_type(IFC4X3_RC1_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3710], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcUnit_type)), false) + },{ + false + }); + IFC4X3_RC1_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcValve_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcValveType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVector_type->set_attributes({ + new attribute(strings[3140], new named_type(IFC4X3_RC1_IfcDirection_type), false), + new attribute(strings[3711], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC1_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X3_RC1_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3712], new named_type(IFC4X3_RC1_IfcVertex_type), false) + },{ + false + }); + IFC4X3_RC1_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3713], new named_type(IFC4X3_RC1_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC1_IfcVibrationDamper_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVibrationDamperType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3714], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC1_IfcGridAxis_type)), false), + new attribute(strings[3715], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC1_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X3_RC1_IfcVoidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWall_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWallType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWaterStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWindow_type->set_attributes({ + new attribute(strings[3091], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3092], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWindowTypeEnum_type), true), + new attribute(strings[3716], new named_type(IFC4X3_RC1_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3717], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[3095], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3096], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3099], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3718], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3719], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3720], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3721], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3722], new named_type(IFC4X3_RC1_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3105], new named_type(IFC4X3_RC1_IfcShapeAspect_type), true), + new attribute(strings[3101], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3106], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true), + new attribute(strings[3107], new named_type(IFC4X3_RC1_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[3093], new named_type(IFC4X3_RC1_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[3111], new named_type(IFC4X3_RC1_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3309], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3310], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3105], new named_type(IFC4X3_RC1_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWindowStyle_type->set_attributes({ + new attribute(strings[3112], new named_type(IFC4X3_RC1_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[3093], new named_type(IFC4X3_RC1_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[3113], new named_type(IFC4X3_RC1_IfcBoolean_type), false), + new attribute(strings[3114], new named_type(IFC4X3_RC1_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWindowType_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWindowTypeEnum_type), false), + new attribute(strings[3716], new named_type(IFC4X3_RC1_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[3113], new named_type(IFC4X3_RC1_IfcBoolean_type), true), + new attribute(strings[3717], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3723], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcWorkTime_type)), true), + new attribute(strings[3724], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcWorkTime_type)), true), + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWorkControl_type->set_attributes({ + new attribute(strings[3305], new named_type(IFC4X3_RC1_IfcDateTime_type), false), + new attribute(strings[3725], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC1_IfcPerson_type)), true), + new attribute(strings[2831], new named_type(IFC4X3_RC1_IfcLabel_type), true), + new attribute(strings[3726], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3651], new named_type(IFC4X3_RC1_IfcDuration_type), true), + new attribute(strings[3692], new named_type(IFC4X3_RC1_IfcDateTime_type), false), + new attribute(strings[3727], new named_type(IFC4X3_RC1_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2824], new named_type(IFC4X3_RC1_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcWorkTime_type->set_attributes({ + new attribute(strings[3728], new named_type(IFC4X3_RC1_IfcRecurrencePattern_type), true), + new attribute(strings[3729], new named_type(IFC4X3_RC1_IfcDate_type), true), + new attribute(strings[3730], new named_type(IFC4X3_RC1_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2959], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3635], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3177], new named_type(IFC4X3_RC1_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3200], new named_type(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC1_IfcZone_type->set_attributes({ + new attribute(strings[2958], new named_type(IFC4X3_RC1_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC1_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3731], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToActor_type, IFC4X3_RC1_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X3_RC1_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3732], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3733], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPerson_type, IFC4X3_RC1_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3734], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcOrganization_type, IFC4X3_RC1_IfcOrganization_type->attributes()[4]) + }); + IFC4X3_RC1_IfcAlignment2DCantSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3735], inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignment2DCant_type, IFC4X3_RC1_IfcAlignment2DCant_type->attributes()[0]) + }); + IFC4X3_RC1_IfcAlignment2DHorizontal_type->set_inverse_attributes({ + new inverse_attribute(strings[3736], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcAlignmentCurve_type, IFC4X3_RC1_IfcAlignmentCurve_type->attributes()[0]) + }); + IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3737], inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignment2DHorizontal_type, IFC4X3_RC1_IfcAlignment2DHorizontal_type->attributes()[1]) + }); + IFC4X3_RC1_IfcAlignment2DVertical_type->set_inverse_attributes({ + new inverse_attribute(strings[3736], inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignmentCurve_type, IFC4X3_RC1_IfcAlignmentCurve_type->attributes()[1]) + }); + IFC4X3_RC1_IfcAlignment2DVerticalSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3738], inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcAlignment2DVertical_type, IFC4X3_RC1_IfcAlignment2DVertical_type->attributes()[0]) + }); + IFC4X3_RC1_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3739], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC1_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3732], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3740], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3741], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesApproval_type, IFC4X3_RC1_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3742], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceApprovalRelationship_type, IFC4X3_RC1_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3743], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcApprovalRelationship_type, IFC4X3_RC1_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3744], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcApprovalRelationship_type, IFC4X3_RC1_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC1_IfcAxisLateralInclination_type->set_inverse_attributes({ + new inverse_attribute(strings[3745], inverse_attribute::set_type, 1, 1, IFC4X3_RC1_IfcLinearAxisWithInclination_type, IFC4X3_RC1_IfcLinearAxisWithInclination_type->attributes()[1]) + }); + IFC4X3_RC1_IfcBoundedCurve_type->set_inverse_attributes({ + new inverse_attribute(strings[3746], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcLinearPositioningElement_type, IFC4X3_RC1_IfcLinearPositioningElement_type->attributes()[0]) + }); + IFC4X3_RC1_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3747], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesClassification_type, IFC4X3_RC1_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3748], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcClassificationReference_type, IFC4X3_RC1_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC1_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3749], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesClassification_type, IFC4X3_RC1_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3748], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcClassificationReference_type, IFC4X3_RC1_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC1_IfcCompositeCurveSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3750], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcCompositeCurve_type, IFC4X3_RC1_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X3_RC1_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3740], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3751], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceConstraintRelationship_type, IFC4X3_RC1_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X3_RC1_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3752], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByProperties_type, IFC4X3_RC1_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3753], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDeclares_type, IFC4X3_RC1_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X3_RC1_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3732], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3754], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToControl_type, IFC4X3_RC1_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X3_RC1_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3732], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3755], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcCoordinateOperation_type, IFC4X3_RC1_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC1_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3756], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelCoversSpaces_type, IFC4X3_RC1_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3757], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelCoversBldgElements_type, IFC4X3_RC1_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X3_RC1_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3758], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelFlowControlElements_type, IFC4X3_RC1_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X3_RC1_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsPortToElement_type, IFC4X3_RC1_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X3_RC1_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3760], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelFlowControlElements_type, IFC4X3_RC1_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X3_RC1_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3761], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesDocument_type, IFC4X3_RC1_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3762], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcDocumentReference_type, IFC4X3_RC1_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcDocumentInformationRelationship_type, IFC4X3_RC1_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3764], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcDocumentInformationRelationship_type, IFC4X3_RC1_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X3_RC1_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3765], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesDocument_type, IFC4X3_RC1_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X3_RC1_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3766], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelFillsElement_type, IFC4X3_RC1_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsElements_type, IFC4X3_RC1_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3768], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelInterferesElements_type, IFC4X3_RC1_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3769], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelInterferesElements_type, IFC4X3_RC1_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3770], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelProjectsElement_type, IFC4X3_RC1_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3771], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelVoidsElement_type, IFC4X3_RC1_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3772], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3773], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary_type, IFC4X3_RC1_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3774], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsElements_type, IFC4X3_RC1_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3739], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3775], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelCoversBldgElements_type, IFC4X3_RC1_IfcRelCoversBldgElements_type->attributes()[0]) + }); + IFC4X3_RC1_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3776], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X3_RC1_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3777], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary_type, IFC4X3_RC1_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC1_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3778], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcTextureMap_type, IFC4X3_RC1_IfcTextureMap_type->attributes()[1]) + }); + IFC4X3_RC1_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3779], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcRelProjectsElement_type, IFC4X3_RC1_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X3_RC1_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3780], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcRelVoidsElement_type, IFC4X3_RC1_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X3_RC1_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3781], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcGeometricRepresentationSubContext_type, IFC4X3_RC1_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3755], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcCoordinateOperation_type, IFC4X3_RC1_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC1_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcGrid_type, IFC4X3_RC1_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcGrid_type, IFC4X3_RC1_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3784], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcGrid_type, IFC4X3_RC1_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcVirtualGridIntersection_type, IFC4X3_RC1_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X3_RC1_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToGroup_type, IFC4X3_RC1_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4X3_RC1_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3787], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcPolygonalFaceSet_type, IFC4X3_RC1_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4X3_RC1_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3788], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesLibrary_type, IFC4X3_RC1_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3789], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcLibraryReference_type, IFC4X3_RC1_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X3_RC1_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesLibrary_type, IFC4X3_RC1_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X3_RC1_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3743], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcMaterialRelationship_type, IFC4X3_RC1_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3792], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcMaterialRelationship_type, IFC4X3_RC1_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X3_RC1_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3793], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcMaterialConstituentSet_type, IFC4X3_RC1_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X3_RC1_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3794], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociatesMaterial_type, IFC4X3_RC1_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3740], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2988], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcMaterialProperties_type, IFC4X3_RC1_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X3_RC1_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3795], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcMaterialLayerSet_type, IFC4X3_RC1_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X3_RC1_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3796], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC1_IfcMaterialProfileSet_type, IFC4X3_RC1_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X3_RC1_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3794], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcRelAssociatesMaterial_type, IFC4X3_RC1_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X3_RC1_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDefinesByObject_type, IFC4X3_RC1_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3753], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByObject_type, IFC4X3_RC1_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDefinesByType_type, IFC4X3_RC1_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3752], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByProperties_type, IFC4X3_RC1_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X3_RC1_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssigns_type, IFC4X3_RC1_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3800], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelNests_type, IFC4X3_RC1_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3801], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelNests_type, IFC4X3_RC1_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3802], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDeclares_type, IFC4X3_RC1_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3803], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAggregates_type, IFC4X3_RC1_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3804], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelAggregates_type, IFC4X3_RC1_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3805], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociates_type, IFC4X3_RC1_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC1_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3806], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcProduct_type, IFC4X3_RC1_IfcProduct_type->attributes()[0]) + }); + IFC4X3_RC1_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3807], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelFillsElement_type, IFC4X3_RC1_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X3_RC1_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3808], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcOrganizationRelationship_type, IFC4X3_RC1_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3744], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcOrganizationRelationship_type, IFC4X3_RC1_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3809], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPersonAndOrganization_type, IFC4X3_RC1_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X3_RC1_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3810], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPersonAndOrganization_type, IFC4X3_RC1_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X3_RC1_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3740], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3811], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcPhysicalComplexQuantity_type, IFC4X3_RC1_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X3_RC1_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3812], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsPortToElement_type, IFC4X3_RC1_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3774], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsPorts_type, IFC4X3_RC1_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsPorts_type, IFC4X3_RC1_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X3_RC1_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3739], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3813], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelPositions_type, IFC4X3_RC1_IfcRelPositions_type->attributes()[0]) + }); + IFC4X3_RC1_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3814], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSequence_type, IFC4X3_RC1_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3815], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSequence_type, IFC4X3_RC1_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3816], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProcess_type, IFC4X3_RC1_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC1_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3817], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProduct_type, IFC4X3_RC1_IfcRelAssignsToProduct_type->attributes()[0]), + new inverse_attribute(strings[3818], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelPositions_type, IFC4X3_RC1_IfcRelPositions_type->attributes()[1]), + new inverse_attribute(strings[3819], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC1_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3820], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcProduct_type, IFC4X3_RC1_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcShapeAspect_type, IFC4X3_RC1_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X3_RC1_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3732], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[2988], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcProfileProperties_type, IFC4X3_RC1_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X3_RC1_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3822], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertySet_type, IFC4X3_RC1_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3823], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertyDependencyRelationship_type, IFC4X3_RC1_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3824], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertyDependencyRelationship_type, IFC4X3_RC1_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3811], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcComplexProperty_type, IFC4X3_RC1_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3825], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceConstraintRelationship_type, IFC4X3_RC1_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3826], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcResourceApprovalRelationship_type, IFC4X3_RC1_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC1_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3740], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3802], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDeclares_type, IFC4X3_RC1_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3805], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssociates_type, IFC4X3_RC1_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC1_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3827], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcTypeObject_type, IFC4X3_RC1_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3752], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByTemplate_type, IFC4X3_RC1_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3828], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByProperties_type, IFC4X3_RC1_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X3_RC1_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3829], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelDefinesByTemplate_type, IFC4X3_RC1_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X3_RC1_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3830], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcComplexPropertyTemplate_type, IFC4X3_RC1_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3831], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPropertySetTemplate_type, IFC4X3_RC1_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2860], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3832], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X3_RC1_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3833], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRepresentationMap_type, IFC4X3_RC1_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3834], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcPresentationLayerAssignment_type, IFC4X3_RC1_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3835], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcProductRepresentation_type, IFC4X3_RC1_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X3_RC1_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3836], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRepresentation_type, IFC4X3_RC1_IfcRepresentation_type->attributes()[0]) + }); + IFC4X3_RC1_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3837], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcPresentationLayerAssignment_type, IFC4X3_RC1_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3838], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcStyledItem_type, IFC4X3_RC1_IfcStyledItem_type->attributes()[0]) + }); + IFC4X3_RC1_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcShapeAspect_type, IFC4X3_RC1_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3839], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcMappedItem_type, IFC4X3_RC1_IfcMappedItem_type->attributes()[0]) + }); + IFC4X3_RC1_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToResource_type, IFC4X3_RC1_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC1_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3740], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3841], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcShapeAspect_type, IFC4X3_RC1_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X3_RC1_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3775], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelCoversSpaces_type, IFC4X3_RC1_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3777], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelSpaceBoundary_type, IFC4X3_RC1_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC1_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3842], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, IFC4X3_RC1_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3843], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelServicesBuildings_type, IFC4X3_RC1_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3844], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4X3_RC1_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3845], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X3_RC1_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3846], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcRelConnectsStructuralMember_type, IFC4X3_RC1_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X3_RC1_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3847], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type, IFC4X3_RC1_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X3_RC1_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3848], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcStructuralResultGroup_type, IFC4X3_RC1_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcStructuralAnalysisModel_type, IFC4X3_RC1_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X3_RC1_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3850], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelConnectsStructuralMember_type, IFC4X3_RC1_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X3_RC1_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3851], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcStructuralAnalysisModel_type, IFC4X3_RC1_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X3_RC1_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3852], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcTextureCoordinate_type, IFC4X3_RC1_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3853], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcSurfaceStyleWithTextures_type, IFC4X3_RC1_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X3_RC1_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3854], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelServicesBuildings_type, IFC4X3_RC1_IfcRelServicesBuildings_type->attributes()[0]), + new inverse_attribute(strings[3855], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC1_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3856], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcIndexedColourMap_type, IFC4X3_RC1_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3857], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcIndexedTextureMap_type, IFC4X3_RC1_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X3_RC1_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3732], inverse_attribute::set_type, 1, -1, IFC4X3_RC1_IfcExternalReferenceRelationship_type, IFC4X3_RC1_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC1_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3858], inverse_attribute::set_type, 0, 1, IFC4X3_RC1_IfcRelDefinesByType_type, IFC4X3_RC1_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X3_RC1_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3816], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProcess_type, IFC4X3_RC1_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC1_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3817], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToProduct_type, IFC4X3_RC1_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X3_RC1_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::set_type, 0, -1, IFC4X3_RC1_IfcRelAssignsToResource_type, IFC4X3_RC1_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC1_IfcControl_type->set_subtypes({ + IFC4X3_RC1_IfcActionRequest_type,IFC4X3_RC1_IfcCostItem_type,IFC4X3_RC1_IfcCostSchedule_type,IFC4X3_RC1_IfcPerformanceHistory_type,IFC4X3_RC1_IfcPermit_type,IFC4X3_RC1_IfcProjectOrder_type,IFC4X3_RC1_IfcWorkCalendar_type,IFC4X3_RC1_IfcWorkControl_type + }); + IFC4X3_RC1_IfcObject_type->set_subtypes({ + IFC4X3_RC1_IfcActor_type,IFC4X3_RC1_IfcControl_type,IFC4X3_RC1_IfcGroup_type,IFC4X3_RC1_IfcProcess_type,IFC4X3_RC1_IfcProduct_type,IFC4X3_RC1_IfcResource_type + }); + IFC4X3_RC1_IfcDistributionControlElement_type->set_subtypes({ + IFC4X3_RC1_IfcActuator_type,IFC4X3_RC1_IfcAlarm_type,IFC4X3_RC1_IfcController_type,IFC4X3_RC1_IfcFlowInstrument_type,IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type,IFC4X3_RC1_IfcSensor_type,IFC4X3_RC1_IfcUnitaryControlElement_type + }); + IFC4X3_RC1_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X3_RC1_IfcActuatorType_type,IFC4X3_RC1_IfcAlarmType_type,IFC4X3_RC1_IfcControllerType_type,IFC4X3_RC1_IfcFlowInstrumentType_type,IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type,IFC4X3_RC1_IfcSensorType_type,IFC4X3_RC1_IfcUnitaryControlElementType_type + }); + IFC4X3_RC1_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X3_RC1_IfcAdvancedBrep_type,IFC4X3_RC1_IfcFacetedBrep_type + }); + IFC4X3_RC1_IfcAdvancedBrep_type->set_subtypes({ + IFC4X3_RC1_IfcAdvancedBrepWithVoids_type + }); + IFC4X3_RC1_IfcFaceSurface_type->set_subtypes({ + IFC4X3_RC1_IfcAdvancedFace_type + }); + IFC4X3_RC1_IfcFlowTerminal_type->set_subtypes({ + IFC4X3_RC1_IfcAirTerminal_type,IFC4X3_RC1_IfcAudioVisualAppliance_type,IFC4X3_RC1_IfcCommunicationsAppliance_type,IFC4X3_RC1_IfcElectricAppliance_type,IFC4X3_RC1_IfcFireSuppressionTerminal_type,IFC4X3_RC1_IfcLamp_type,IFC4X3_RC1_IfcLightFixture_type,IFC4X3_RC1_IfcLiquidTerminal_type,IFC4X3_RC1_IfcMedicalDevice_type,IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type,IFC4X3_RC1_IfcOutlet_type,IFC4X3_RC1_IfcSanitaryTerminal_type,IFC4X3_RC1_IfcSignal_type,IFC4X3_RC1_IfcSpaceHeater_type,IFC4X3_RC1_IfcStackTerminal_type,IFC4X3_RC1_IfcWasteTerminal_type + }); + IFC4X3_RC1_IfcFlowController_type->set_subtypes({ + IFC4X3_RC1_IfcAirTerminalBox_type,IFC4X3_RC1_IfcDamper_type,IFC4X3_RC1_IfcDistributionBoard_type,IFC4X3_RC1_IfcElectricDistributionBoard_type,IFC4X3_RC1_IfcElectricTimeControl_type,IFC4X3_RC1_IfcFlowMeter_type,IFC4X3_RC1_IfcProtectiveDevice_type,IFC4X3_RC1_IfcSwitchingDevice_type,IFC4X3_RC1_IfcValve_type + }); + IFC4X3_RC1_IfcFlowControllerType_type->set_subtypes({ + IFC4X3_RC1_IfcAirTerminalBoxType_type,IFC4X3_RC1_IfcDamperType_type,IFC4X3_RC1_IfcDistributionBoardType_type,IFC4X3_RC1_IfcElectricDistributionBoardType_type,IFC4X3_RC1_IfcElectricTimeControlType_type,IFC4X3_RC1_IfcFlowMeterType_type,IFC4X3_RC1_IfcProtectiveDeviceType_type,IFC4X3_RC1_IfcSwitchingDeviceType_type,IFC4X3_RC1_IfcValveType_type + }); + IFC4X3_RC1_IfcFlowTerminalType_type->set_subtypes({ + IFC4X3_RC1_IfcAirTerminalType_type,IFC4X3_RC1_IfcAudioVisualApplianceType_type,IFC4X3_RC1_IfcCommunicationsApplianceType_type,IFC4X3_RC1_IfcElectricApplianceType_type,IFC4X3_RC1_IfcFireSuppressionTerminalType_type,IFC4X3_RC1_IfcLampType_type,IFC4X3_RC1_IfcLightFixtureType_type,IFC4X3_RC1_IfcLiquidTerminalType_type,IFC4X3_RC1_IfcMedicalDeviceType_type,IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type,IFC4X3_RC1_IfcOutletType_type,IFC4X3_RC1_IfcSanitaryTerminalType_type,IFC4X3_RC1_IfcSignalType_type,IFC4X3_RC1_IfcSpaceHeaterType_type,IFC4X3_RC1_IfcStackTerminalType_type,IFC4X3_RC1_IfcWasteTerminalType_type + }); + IFC4X3_RC1_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X3_RC1_IfcAirToAirHeatRecovery_type,IFC4X3_RC1_IfcBoiler_type,IFC4X3_RC1_IfcBurner_type,IFC4X3_RC1_IfcChiller_type,IFC4X3_RC1_IfcCoil_type,IFC4X3_RC1_IfcCondenser_type,IFC4X3_RC1_IfcCooledBeam_type,IFC4X3_RC1_IfcCoolingTower_type,IFC4X3_RC1_IfcElectricGenerator_type,IFC4X3_RC1_IfcElectricMotor_type,IFC4X3_RC1_IfcEngine_type,IFC4X3_RC1_IfcEvaporativeCooler_type,IFC4X3_RC1_IfcEvaporator_type,IFC4X3_RC1_IfcHeatExchanger_type,IFC4X3_RC1_IfcHumidifier_type,IFC4X3_RC1_IfcMotorConnection_type,IFC4X3_RC1_IfcSolarDevice_type,IFC4X3_RC1_IfcTransformer_type,IFC4X3_RC1_IfcTubeBundle_type,IFC4X3_RC1_IfcUnitaryEquipment_type + }); + IFC4X3_RC1_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type,IFC4X3_RC1_IfcBoilerType_type,IFC4X3_RC1_IfcBurnerType_type,IFC4X3_RC1_IfcChillerType_type,IFC4X3_RC1_IfcCoilType_type,IFC4X3_RC1_IfcCondenserType_type,IFC4X3_RC1_IfcCooledBeamType_type,IFC4X3_RC1_IfcCoolingTowerType_type,IFC4X3_RC1_IfcElectricGeneratorType_type,IFC4X3_RC1_IfcElectricMotorType_type,IFC4X3_RC1_IfcEngineType_type,IFC4X3_RC1_IfcEvaporativeCoolerType_type,IFC4X3_RC1_IfcEvaporatorType_type,IFC4X3_RC1_IfcHeatExchangerType_type,IFC4X3_RC1_IfcHumidifierType_type,IFC4X3_RC1_IfcMotorConnectionType_type,IFC4X3_RC1_IfcSolarDeviceType_type,IFC4X3_RC1_IfcTransformerType_type,IFC4X3_RC1_IfcTubeBundleType_type,IFC4X3_RC1_IfcUnitaryEquipmentType_type + }); + IFC4X3_RC1_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X3_RC1_IfcAlignment_type + }); + IFC4X3_RC1_IfcAxisLateralInclination_type->set_subtypes({ + IFC4X3_RC1_IfcAlignment2DCant_type + }); + IFC4X3_RC1_IfcAlignment2DCantSegment_type->set_subtypes({ + IFC4X3_RC1_IfcAlignment2DCantSegLine_type,IFC4X3_RC1_IfcAlignment2DCantSegTransition_type + }); + IFC4X3_RC1_IfcAlignment2DSegment_type->set_subtypes({ + IFC4X3_RC1_IfcAlignment2DCantSegment_type,IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type,IFC4X3_RC1_IfcAlignment2DVerticalSegment_type + }); + IFC4X3_RC1_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X3_RC1_IfcAlignment2DHorizontal_type,IFC4X3_RC1_IfcAlignment2DSegment_type,IFC4X3_RC1_IfcAlignment2DVertical_type,IFC4X3_RC1_IfcAnnotationFillArea_type,IFC4X3_RC1_IfcAxisLateralInclination_type,IFC4X3_RC1_IfcBooleanResult_type,IFC4X3_RC1_IfcBoundingBox_type,IFC4X3_RC1_IfcCartesianPointList_type,IFC4X3_RC1_IfcCartesianTransformationOperator_type,IFC4X3_RC1_IfcCompositeCurveSegment_type,IFC4X3_RC1_IfcCsgPrimitive3D_type,IFC4X3_RC1_IfcCurve_type,IFC4X3_RC1_IfcDirection_type,IFC4X3_RC1_IfcDistanceExpression_type,IFC4X3_RC1_IfcFaceBasedSurfaceModel_type,IFC4X3_RC1_IfcFillAreaStyleHatching_type,IFC4X3_RC1_IfcFillAreaStyleTiles_type,IFC4X3_RC1_IfcGeometricSet_type,IFC4X3_RC1_IfcHalfSpaceSolid_type,IFC4X3_RC1_IfcLightSource_type,IFC4X3_RC1_IfcLinearAxisWithInclination_type,IFC4X3_RC1_IfcOrientationExpression_type,IFC4X3_RC1_IfcPlacement_type,IFC4X3_RC1_IfcPlanarExtent_type,IFC4X3_RC1_IfcPoint_type,IFC4X3_RC1_IfcSectionedSpine_type,IFC4X3_RC1_IfcShellBasedSurfaceModel_type,IFC4X3_RC1_IfcSolidModel_type,IFC4X3_RC1_IfcSurface_type,IFC4X3_RC1_IfcTessellatedItem_type,IFC4X3_RC1_IfcTextLiteral_type,IFC4X3_RC1_IfcVector_type + }); + IFC4X3_RC1_IfcAlignment2DVerticalSegment_type->set_subtypes({ + IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type,IFC4X3_RC1_IfcAlignment2DVerSegLine_type,IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type,IFC4X3_RC1_IfcAlignment2DVerSegTransition_type + }); + IFC4X3_RC1_IfcBoundedCurve_type->set_subtypes({ + IFC4X3_RC1_IfcAlignmentCurve_type,IFC4X3_RC1_IfcBSplineCurve_type,IFC4X3_RC1_IfcCompositeCurve_type,IFC4X3_RC1_IfcCurveSegment2D_type,IFC4X3_RC1_IfcIndexedPolyCurve_type,IFC4X3_RC1_IfcPolyline_type,IFC4X3_RC1_IfcTrimmedCurve_type + }); + IFC4X3_RC1_IfcProduct_type->set_subtypes({ + IFC4X3_RC1_IfcAnnotation_type,IFC4X3_RC1_IfcElement_type,IFC4X3_RC1_IfcPort_type,IFC4X3_RC1_IfcPositioningElement_type,IFC4X3_RC1_IfcProxy_type,IFC4X3_RC1_IfcSpatialElement_type,IFC4X3_RC1_IfcStructuralActivity_type,IFC4X3_RC1_IfcStructuralItem_type + }); + IFC4X3_RC1_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X3_RC1_IfcApprovalRelationship_type,IFC4X3_RC1_IfcCurrencyRelationship_type,IFC4X3_RC1_IfcDocumentInformationRelationship_type,IFC4X3_RC1_IfcExternalReferenceRelationship_type,IFC4X3_RC1_IfcMaterialRelationship_type,IFC4X3_RC1_IfcOrganizationRelationship_type,IFC4X3_RC1_IfcPropertyDependencyRelationship_type,IFC4X3_RC1_IfcResourceApprovalRelationship_type,IFC4X3_RC1_IfcResourceConstraintRelationship_type + }); + IFC4X3_RC1_IfcProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcArbitraryClosedProfileDef_type,IFC4X3_RC1_IfcArbitraryOpenProfileDef_type,IFC4X3_RC1_IfcCompositeProfileDef_type,IFC4X3_RC1_IfcDerivedProfileDef_type,IFC4X3_RC1_IfcOpenCrossProfileDef_type,IFC4X3_RC1_IfcParameterizedProfileDef_type + }); + IFC4X3_RC1_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X3_RC1_IfcGroup_type->set_subtypes({ + IFC4X3_RC1_IfcAsset_type,IFC4X3_RC1_IfcInventory_type,IFC4X3_RC1_IfcStructuralLoadGroup_type,IFC4X3_RC1_IfcStructuralResultGroup_type,IFC4X3_RC1_IfcSystem_type + }); + IFC4X3_RC1_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type,IFC4X3_RC1_IfcCShapeProfileDef_type,IFC4X3_RC1_IfcCircleProfileDef_type,IFC4X3_RC1_IfcEllipseProfileDef_type,IFC4X3_RC1_IfcIShapeProfileDef_type,IFC4X3_RC1_IfcLShapeProfileDef_type,IFC4X3_RC1_IfcRectangleProfileDef_type,IFC4X3_RC1_IfcTShapeProfileDef_type,IFC4X3_RC1_IfcTrapeziumProfileDef_type,IFC4X3_RC1_IfcUShapeProfileDef_type,IFC4X3_RC1_IfcZShapeProfileDef_type + }); + IFC4X3_RC1_IfcPlacement_type->set_subtypes({ + IFC4X3_RC1_IfcAxis1Placement_type,IFC4X3_RC1_IfcAxis2Placement2D_type,IFC4X3_RC1_IfcAxis2Placement3D_type + }); + IFC4X3_RC1_IfcBSplineCurve_type->set_subtypes({ + IFC4X3_RC1_IfcBSplineCurveWithKnots_type + }); + IFC4X3_RC1_IfcBoundedSurface_type->set_subtypes({ + IFC4X3_RC1_IfcBSplineSurface_type,IFC4X3_RC1_IfcCurveBoundedPlane_type,IFC4X3_RC1_IfcCurveBoundedSurface_type,IFC4X3_RC1_IfcRectangularTrimmedSurface_type + }); + IFC4X3_RC1_IfcBSplineSurface_type->set_subtypes({ + IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type + }); + IFC4X3_RC1_IfcBuiltElement_type->set_subtypes({ + IFC4X3_RC1_IfcBeam_type,IFC4X3_RC1_IfcBearing_type,IFC4X3_RC1_IfcBuildingElementProxy_type,IFC4X3_RC1_IfcChimney_type,IFC4X3_RC1_IfcColumn_type,IFC4X3_RC1_IfcCourse_type,IFC4X3_RC1_IfcCovering_type,IFC4X3_RC1_IfcCurtainWall_type,IFC4X3_RC1_IfcDeepFoundation_type,IFC4X3_RC1_IfcDoor_type,IFC4X3_RC1_IfcEarthworksElement_type,IFC4X3_RC1_IfcFooting_type,IFC4X3_RC1_IfcKerb_type,IFC4X3_RC1_IfcMember_type,IFC4X3_RC1_IfcMooringDevice_type,IFC4X3_RC1_IfcNavigationElement_type,IFC4X3_RC1_IfcPavement_type,IFC4X3_RC1_IfcPlate_type,IFC4X3_RC1_IfcRail_type,IFC4X3_RC1_IfcRailing_type,IFC4X3_RC1_IfcRamp_type,IFC4X3_RC1_IfcRampFlight_type,IFC4X3_RC1_IfcRoof_type,IFC4X3_RC1_IfcShadingDevice_type,IFC4X3_RC1_IfcSlab_type,IFC4X3_RC1_IfcStair_type,IFC4X3_RC1_IfcStairFlight_type,IFC4X3_RC1_IfcTrackElement_type,IFC4X3_RC1_IfcWall_type,IFC4X3_RC1_IfcWindow_type + }); + IFC4X3_RC1_IfcBeam_type->set_subtypes({ + IFC4X3_RC1_IfcBeamStandardCase_type + }); + IFC4X3_RC1_IfcBuiltElementType_type->set_subtypes({ + IFC4X3_RC1_IfcBeamType_type,IFC4X3_RC1_IfcBearingType_type,IFC4X3_RC1_IfcBuildingElementProxyType_type,IFC4X3_RC1_IfcChimneyType_type,IFC4X3_RC1_IfcColumnType_type,IFC4X3_RC1_IfcCourseType_type,IFC4X3_RC1_IfcCoveringType_type,IFC4X3_RC1_IfcCurtainWallType_type,IFC4X3_RC1_IfcDeepFoundationType_type,IFC4X3_RC1_IfcDoorType_type,IFC4X3_RC1_IfcFootingType_type,IFC4X3_RC1_IfcKerbType_type,IFC4X3_RC1_IfcMemberType_type,IFC4X3_RC1_IfcMooringDeviceType_type,IFC4X3_RC1_IfcNavigationElementType_type,IFC4X3_RC1_IfcPavementType_type,IFC4X3_RC1_IfcPlateType_type,IFC4X3_RC1_IfcRailType_type,IFC4X3_RC1_IfcRailingType_type,IFC4X3_RC1_IfcRampFlightType_type,IFC4X3_RC1_IfcRampType_type,IFC4X3_RC1_IfcRoofType_type,IFC4X3_RC1_IfcShadingDeviceType_type,IFC4X3_RC1_IfcSlabType_type,IFC4X3_RC1_IfcStairFlightType_type,IFC4X3_RC1_IfcStairType_type,IFC4X3_RC1_IfcTrackElementType_type,IFC4X3_RC1_IfcWallType_type,IFC4X3_RC1_IfcWindowType_type + }); + IFC4X3_RC1_IfcSurfaceTexture_type->set_subtypes({ + IFC4X3_RC1_IfcBlobTexture_type,IFC4X3_RC1_IfcImageTexture_type,IFC4X3_RC1_IfcPixelTexture_type + }); + IFC4X3_RC1_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X3_RC1_IfcBlock_type,IFC4X3_RC1_IfcRectangularPyramid_type,IFC4X3_RC1_IfcRightCircularCone_type,IFC4X3_RC1_IfcRightCircularCylinder_type,IFC4X3_RC1_IfcSphere_type + }); + IFC4X3_RC1_IfcBooleanResult_type->set_subtypes({ + IFC4X3_RC1_IfcBooleanClippingResult_type + }); + IFC4X3_RC1_IfcGeotechnicalAssembly_type->set_subtypes({ + IFC4X3_RC1_IfcBorehole_type,IFC4X3_RC1_IfcGeomodel_type,IFC4X3_RC1_IfcGeoslice_type + }); + IFC4X3_RC1_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X3_RC1_IfcBoundaryCurve_type + }); + IFC4X3_RC1_IfcBoundaryCondition_type->set_subtypes({ + IFC4X3_RC1_IfcBoundaryEdgeCondition_type,IFC4X3_RC1_IfcBoundaryFaceCondition_type,IFC4X3_RC1_IfcBoundaryNodeCondition_type + }); + IFC4X3_RC1_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type + }); + IFC4X3_RC1_IfcCurve_type->set_subtypes({ + IFC4X3_RC1_IfcBoundedCurve_type,IFC4X3_RC1_IfcConic_type,IFC4X3_RC1_IfcLine_type,IFC4X3_RC1_IfcOffsetCurve_type,IFC4X3_RC1_IfcPcurve_type,IFC4X3_RC1_IfcSurfaceCurve_type + }); + IFC4X3_RC1_IfcSurface_type->set_subtypes({ + IFC4X3_RC1_IfcBoundedSurface_type,IFC4X3_RC1_IfcElementarySurface_type,IFC4X3_RC1_IfcSectionedSurface_type,IFC4X3_RC1_IfcSweptSurface_type + }); + IFC4X3_RC1_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X3_RC1_IfcBoxedHalfSpace_type,IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X3_RC1_IfcFacility_type->set_subtypes({ + IFC4X3_RC1_IfcBridge_type,IFC4X3_RC1_IfcBuilding_type,IFC4X3_RC1_IfcMarineFacility_type,IFC4X3_RC1_IfcRailway_type,IFC4X3_RC1_IfcRoad_type + }); + IFC4X3_RC1_IfcFacilityPart_type->set_subtypes({ + IFC4X3_RC1_IfcBridgePart_type + }); + IFC4X3_RC1_IfcElementComponent_type->set_subtypes({ + IFC4X3_RC1_IfcBuildingElementPart_type,IFC4X3_RC1_IfcDiscreteAccessory_type,IFC4X3_RC1_IfcFastener_type,IFC4X3_RC1_IfcImpactProtectionDevice_type,IFC4X3_RC1_IfcMechanicalFastener_type,IFC4X3_RC1_IfcReinforcingElement_type,IFC4X3_RC1_IfcSign_type,IFC4X3_RC1_IfcVibrationDamper_type,IFC4X3_RC1_IfcVibrationIsolator_type + }); + IFC4X3_RC1_IfcElementComponentType_type->set_subtypes({ + IFC4X3_RC1_IfcBuildingElementPartType_type,IFC4X3_RC1_IfcDiscreteAccessoryType_type,IFC4X3_RC1_IfcFastenerType_type,IFC4X3_RC1_IfcImpactProtectionDeviceType_type,IFC4X3_RC1_IfcMechanicalFastenerType_type,IFC4X3_RC1_IfcReinforcingElementType_type,IFC4X3_RC1_IfcSignType_type,IFC4X3_RC1_IfcVibrationDamperType_type,IFC4X3_RC1_IfcVibrationIsolatorType_type + }); + IFC4X3_RC1_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC1_IfcBuildingStorey_type,IFC4X3_RC1_IfcFacility_type,IFC4X3_RC1_IfcFacilityPart_type,IFC4X3_RC1_IfcSite_type,IFC4X3_RC1_IfcSpace_type + }); + IFC4X3_RC1_IfcSystem_type->set_subtypes({ + IFC4X3_RC1_IfcBuildingSystem_type,IFC4X3_RC1_IfcBuiltSystem_type,IFC4X3_RC1_IfcDistributionSystem_type,IFC4X3_RC1_IfcStructuralAnalysisModel_type,IFC4X3_RC1_IfcZone_type + }); + IFC4X3_RC1_IfcElement_type->set_subtypes({ + IFC4X3_RC1_IfcBuiltElement_type,IFC4X3_RC1_IfcCivilElement_type,IFC4X3_RC1_IfcDistributionElement_type,IFC4X3_RC1_IfcElementAssembly_type,IFC4X3_RC1_IfcElementComponent_type,IFC4X3_RC1_IfcFeatureElement_type,IFC4X3_RC1_IfcFurnishingElement_type,IFC4X3_RC1_IfcGeographicElement_type,IFC4X3_RC1_IfcGeotechnicalElement_type,IFC4X3_RC1_IfcTransportElement_type,IFC4X3_RC1_IfcVirtualElement_type + }); + IFC4X3_RC1_IfcElementType_type->set_subtypes({ + IFC4X3_RC1_IfcBuiltElementType_type,IFC4X3_RC1_IfcCivilElementType_type,IFC4X3_RC1_IfcDistributionElementType_type,IFC4X3_RC1_IfcElementAssemblyType_type,IFC4X3_RC1_IfcElementComponentType_type,IFC4X3_RC1_IfcFurnishingElementType_type,IFC4X3_RC1_IfcGeographicElementType_type,IFC4X3_RC1_IfcTransportElementType_type + }); + IFC4X3_RC1_IfcFlowFitting_type->set_subtypes({ + IFC4X3_RC1_IfcCableCarrierFitting_type,IFC4X3_RC1_IfcCableFitting_type,IFC4X3_RC1_IfcDuctFitting_type,IFC4X3_RC1_IfcJunctionBox_type,IFC4X3_RC1_IfcPipeFitting_type + }); + IFC4X3_RC1_IfcFlowFittingType_type->set_subtypes({ + IFC4X3_RC1_IfcCableCarrierFittingType_type,IFC4X3_RC1_IfcCableFittingType_type,IFC4X3_RC1_IfcDuctFittingType_type,IFC4X3_RC1_IfcJunctionBoxType_type,IFC4X3_RC1_IfcPipeFittingType_type + }); + IFC4X3_RC1_IfcFlowSegment_type->set_subtypes({ + IFC4X3_RC1_IfcCableCarrierSegment_type,IFC4X3_RC1_IfcCableSegment_type,IFC4X3_RC1_IfcConveyorSegment_type,IFC4X3_RC1_IfcDuctSegment_type,IFC4X3_RC1_IfcPipeSegment_type + }); + IFC4X3_RC1_IfcFlowSegmentType_type->set_subtypes({ + IFC4X3_RC1_IfcCableCarrierSegmentType_type,IFC4X3_RC1_IfcCableSegmentType_type,IFC4X3_RC1_IfcConveyorSegmentType_type,IFC4X3_RC1_IfcDuctSegmentType_type,IFC4X3_RC1_IfcPipeSegmentType_type + }); + IFC4X3_RC1_IfcDeepFoundation_type->set_subtypes({ + IFC4X3_RC1_IfcCaissonFoundation_type,IFC4X3_RC1_IfcPile_type + }); + IFC4X3_RC1_IfcDeepFoundationType_type->set_subtypes({ + IFC4X3_RC1_IfcCaissonFoundationType_type,IFC4X3_RC1_IfcPileType_type + }); + IFC4X3_RC1_IfcPoint_type->set_subtypes({ + IFC4X3_RC1_IfcCartesianPoint_type,IFC4X3_RC1_IfcPointOnCurve_type,IFC4X3_RC1_IfcPointOnSurface_type + }); + IFC4X3_RC1_IfcCartesianPointList_type->set_subtypes({ + IFC4X3_RC1_IfcCartesianPointList2D_type,IFC4X3_RC1_IfcCartesianPointList3D_type + }); + IFC4X3_RC1_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X3_RC1_IfcCartesianTransformationOperator2D_type,IFC4X3_RC1_IfcCartesianTransformationOperator3D_type + }); + IFC4X3_RC1_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X3_RC1_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X3_RC1_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcCenterLineProfileDef_type + }); + IFC4X3_RC1_IfcConic_type->set_subtypes({ + IFC4X3_RC1_IfcCircle_type,IFC4X3_RC1_IfcEllipse_type + }); + IFC4X3_RC1_IfcCircleProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcCircleHollowProfileDef_type + }); + IFC4X3_RC1_IfcCurveSegment2D_type->set_subtypes({ + IFC4X3_RC1_IfcCircularArcSegment2D_type,IFC4X3_RC1_IfcLineSegment2D_type,IFC4X3_RC1_IfcTransitionCurveSegment2D_type + }); + IFC4X3_RC1_IfcExternalInformation_type->set_subtypes({ + IFC4X3_RC1_IfcClassification_type,IFC4X3_RC1_IfcDocumentInformation_type,IFC4X3_RC1_IfcLibraryInformation_type + }); + IFC4X3_RC1_IfcExternalReference_type->set_subtypes({ + IFC4X3_RC1_IfcClassificationReference_type,IFC4X3_RC1_IfcDocumentReference_type,IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type,IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type,IFC4X3_RC1_IfcExternallyDefinedTextFont_type,IFC4X3_RC1_IfcLibraryReference_type + }); + IFC4X3_RC1_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X3_RC1_IfcClosedShell_type,IFC4X3_RC1_IfcOpenShell_type + }); + IFC4X3_RC1_IfcColourSpecification_type->set_subtypes({ + IFC4X3_RC1_IfcColourRgb_type + }); + IFC4X3_RC1_IfcPresentationItem_type->set_subtypes({ + IFC4X3_RC1_IfcColourRgbList_type,IFC4X3_RC1_IfcColourSpecification_type,IFC4X3_RC1_IfcCurveStyleFont_type,IFC4X3_RC1_IfcCurveStyleFontAndScaling_type,IFC4X3_RC1_IfcCurveStyleFontPattern_type,IFC4X3_RC1_IfcIndexedColourMap_type,IFC4X3_RC1_IfcPreDefinedItem_type,IFC4X3_RC1_IfcSurfaceStyleLighting_type,IFC4X3_RC1_IfcSurfaceStyleRefraction_type,IFC4X3_RC1_IfcSurfaceStyleShading_type,IFC4X3_RC1_IfcSurfaceStyleWithTextures_type,IFC4X3_RC1_IfcSurfaceTexture_type,IFC4X3_RC1_IfcTextStyleForDefinedFont_type,IFC4X3_RC1_IfcTextStyleTextModel_type,IFC4X3_RC1_IfcTextureCoordinate_type,IFC4X3_RC1_IfcTextureVertex_type,IFC4X3_RC1_IfcTextureVertexList_type + }); + IFC4X3_RC1_IfcColumn_type->set_subtypes({ + IFC4X3_RC1_IfcColumnStandardCase_type + }); + IFC4X3_RC1_IfcProperty_type->set_subtypes({ + IFC4X3_RC1_IfcComplexProperty_type,IFC4X3_RC1_IfcSimpleProperty_type + }); + IFC4X3_RC1_IfcPropertyTemplate_type->set_subtypes({ + IFC4X3_RC1_IfcComplexPropertyTemplate_type,IFC4X3_RC1_IfcSimplePropertyTemplate_type + }); + IFC4X3_RC1_IfcCompositeCurve_type->set_subtypes({ + IFC4X3_RC1_IfcCompositeCurveOnSurface_type + }); + IFC4X3_RC1_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X3_RC1_IfcCompressor_type,IFC4X3_RC1_IfcFan_type,IFC4X3_RC1_IfcPump_type + }); + IFC4X3_RC1_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X3_RC1_IfcCompressorType_type,IFC4X3_RC1_IfcFanType_type,IFC4X3_RC1_IfcPumpType_type + }); + IFC4X3_RC1_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X3_RC1_IfcConnectedFaceSet_type,IFC4X3_RC1_IfcEdge_type,IFC4X3_RC1_IfcFace_type,IFC4X3_RC1_IfcFaceBound_type,IFC4X3_RC1_IfcLoop_type,IFC4X3_RC1_IfcPath_type,IFC4X3_RC1_IfcVertex_type + }); + IFC4X3_RC1_IfcConnectionGeometry_type->set_subtypes({ + IFC4X3_RC1_IfcConnectionCurveGeometry_type,IFC4X3_RC1_IfcConnectionPointGeometry_type,IFC4X3_RC1_IfcConnectionSurfaceGeometry_type,IFC4X3_RC1_IfcConnectionVolumeGeometry_type + }); + IFC4X3_RC1_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X3_RC1_IfcConnectionPointEccentricity_type + }); + IFC4X3_RC1_IfcConstructionResource_type->set_subtypes({ + IFC4X3_RC1_IfcConstructionEquipmentResource_type,IFC4X3_RC1_IfcConstructionMaterialResource_type,IFC4X3_RC1_IfcConstructionProductResource_type,IFC4X3_RC1_IfcCrewResource_type,IFC4X3_RC1_IfcLaborResource_type,IFC4X3_RC1_IfcSubContractResource_type + }); + IFC4X3_RC1_IfcConstructionResourceType_type->set_subtypes({ + IFC4X3_RC1_IfcConstructionEquipmentResourceType_type,IFC4X3_RC1_IfcConstructionMaterialResourceType_type,IFC4X3_RC1_IfcConstructionProductResourceType_type,IFC4X3_RC1_IfcCrewResourceType_type,IFC4X3_RC1_IfcLaborResourceType_type,IFC4X3_RC1_IfcSubContractResourceType_type + }); + IFC4X3_RC1_IfcResource_type->set_subtypes({ + IFC4X3_RC1_IfcConstructionResource_type + }); + IFC4X3_RC1_IfcTypeResource_type->set_subtypes({ + IFC4X3_RC1_IfcConstructionResourceType_type + }); + IFC4X3_RC1_IfcObjectDefinition_type->set_subtypes({ + IFC4X3_RC1_IfcContext_type,IFC4X3_RC1_IfcObject_type,IFC4X3_RC1_IfcTypeObject_type + }); + IFC4X3_RC1_IfcNamedUnit_type->set_subtypes({ + IFC4X3_RC1_IfcContextDependentUnit_type,IFC4X3_RC1_IfcConversionBasedUnit_type,IFC4X3_RC1_IfcSIUnit_type + }); + IFC4X3_RC1_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type + }); + IFC4X3_RC1_IfcAppliedValue_type->set_subtypes({ + IFC4X3_RC1_IfcCostValue_type + }); + IFC4X3_RC1_IfcSolidModel_type->set_subtypes({ + IFC4X3_RC1_IfcCsgSolid_type,IFC4X3_RC1_IfcManifoldSolidBrep_type,IFC4X3_RC1_IfcSectionedSolid_type,IFC4X3_RC1_IfcSweptAreaSolid_type,IFC4X3_RC1_IfcSweptDiskSolid_type + }); + IFC4X3_RC1_IfcPresentationStyle_type->set_subtypes({ + IFC4X3_RC1_IfcCurveStyle_type,IFC4X3_RC1_IfcFillAreaStyle_type,IFC4X3_RC1_IfcSurfaceStyle_type,IFC4X3_RC1_IfcTextStyle_type + }); + IFC4X3_RC1_IfcElementarySurface_type->set_subtypes({ + IFC4X3_RC1_IfcCylindricalSurface_type,IFC4X3_RC1_IfcPlane_type,IFC4X3_RC1_IfcSphericalSurface_type,IFC4X3_RC1_IfcToroidalSurface_type + }); + IFC4X3_RC1_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type,IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type,IFC4X3_RC1_IfcExtrudedAreaSolid_type,IFC4X3_RC1_IfcRevolvedAreaSolid_type + }); + IFC4X3_RC1_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X3_RC1_IfcDistributionChamberElement_type,IFC4X3_RC1_IfcEnergyConversionDevice_type,IFC4X3_RC1_IfcFlowController_type,IFC4X3_RC1_IfcFlowFitting_type,IFC4X3_RC1_IfcFlowMovingDevice_type,IFC4X3_RC1_IfcFlowSegment_type,IFC4X3_RC1_IfcFlowStorageDevice_type,IFC4X3_RC1_IfcFlowTerminal_type,IFC4X3_RC1_IfcFlowTreatmentDevice_type + }); + IFC4X3_RC1_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X3_RC1_IfcDistributionChamberElementType_type,IFC4X3_RC1_IfcEnergyConversionDeviceType_type,IFC4X3_RC1_IfcFlowControllerType_type,IFC4X3_RC1_IfcFlowFittingType_type,IFC4X3_RC1_IfcFlowMovingDeviceType_type,IFC4X3_RC1_IfcFlowSegmentType_type,IFC4X3_RC1_IfcFlowStorageDeviceType_type,IFC4X3_RC1_IfcFlowTerminalType_type,IFC4X3_RC1_IfcFlowTreatmentDeviceType_type + }); + IFC4X3_RC1_IfcDistributionSystem_type->set_subtypes({ + IFC4X3_RC1_IfcDistributionCircuit_type + }); + IFC4X3_RC1_IfcDistributionElement_type->set_subtypes({ + IFC4X3_RC1_IfcDistributionControlElement_type,IFC4X3_RC1_IfcDistributionFlowElement_type + }); + IFC4X3_RC1_IfcDistributionElementType_type->set_subtypes({ + IFC4X3_RC1_IfcDistributionControlElementType_type,IFC4X3_RC1_IfcDistributionFlowElementType_type + }); + IFC4X3_RC1_IfcPort_type->set_subtypes({ + IFC4X3_RC1_IfcDistributionPort_type + }); + IFC4X3_RC1_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X3_RC1_IfcDoorLiningProperties_type,IFC4X3_RC1_IfcDoorPanelProperties_type,IFC4X3_RC1_IfcPermeableCoveringProperties_type,IFC4X3_RC1_IfcReinforcementDefinitionProperties_type,IFC4X3_RC1_IfcWindowLiningProperties_type,IFC4X3_RC1_IfcWindowPanelProperties_type + }); + IFC4X3_RC1_IfcDoor_type->set_subtypes({ + IFC4X3_RC1_IfcDoorStandardCase_type + }); + IFC4X3_RC1_IfcTypeProduct_type->set_subtypes({ + IFC4X3_RC1_IfcDoorStyle_type,IFC4X3_RC1_IfcElementType_type,IFC4X3_RC1_IfcSpatialElementType_type,IFC4X3_RC1_IfcWindowStyle_type + }); + IFC4X3_RC1_IfcPreDefinedColour_type->set_subtypes({ + IFC4X3_RC1_IfcDraughtingPreDefinedColour_type + }); + IFC4X3_RC1_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X3_RC1_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X3_RC1_IfcDuctSilencer_type,IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type,IFC4X3_RC1_IfcFilter_type,IFC4X3_RC1_IfcInterceptor_type + }); + IFC4X3_RC1_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X3_RC1_IfcDuctSilencerType_type,IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type,IFC4X3_RC1_IfcFilterType_type,IFC4X3_RC1_IfcInterceptorType_type + }); + IFC4X3_RC1_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X3_RC1_IfcEarthworksCut_type,IFC4X3_RC1_IfcOpeningElement_type,IFC4X3_RC1_IfcVoidingFeature_type + }); + IFC4X3_RC1_IfcEarthworksElement_type->set_subtypes({ + IFC4X3_RC1_IfcEarthworksFill_type,IFC4X3_RC1_IfcReinforcedSoil_type + }); + IFC4X3_RC1_IfcEdge_type->set_subtypes({ + IFC4X3_RC1_IfcEdgeCurve_type,IFC4X3_RC1_IfcOrientedEdge_type,IFC4X3_RC1_IfcSubedge_type + }); + IFC4X3_RC1_IfcLoop_type->set_subtypes({ + IFC4X3_RC1_IfcEdgeLoop_type,IFC4X3_RC1_IfcPolyLoop_type,IFC4X3_RC1_IfcVertexLoop_type + }); + IFC4X3_RC1_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X3_RC1_IfcElectricFlowStorageDevice_type,IFC4X3_RC1_IfcTank_type + }); + IFC4X3_RC1_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type,IFC4X3_RC1_IfcTankType_type + }); + IFC4X3_RC1_IfcQuantitySet_type->set_subtypes({ + IFC4X3_RC1_IfcElementQuantity_type + }); + IFC4X3_RC1_IfcProcess_type->set_subtypes({ + IFC4X3_RC1_IfcEvent_type,IFC4X3_RC1_IfcProcedure_type,IFC4X3_RC1_IfcTask_type + }); + IFC4X3_RC1_IfcSchedulingTime_type->set_subtypes({ + IFC4X3_RC1_IfcEventTime_type,IFC4X3_RC1_IfcLagTime_type,IFC4X3_RC1_IfcResourceTime_type,IFC4X3_RC1_IfcTaskTime_type,IFC4X3_RC1_IfcWorkTime_type + }); + IFC4X3_RC1_IfcTypeProcess_type->set_subtypes({ + IFC4X3_RC1_IfcEventType_type,IFC4X3_RC1_IfcProcedureType_type,IFC4X3_RC1_IfcTaskType_type + }); + IFC4X3_RC1_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X3_RC1_IfcExtendedProperties_type,IFC4X3_RC1_IfcPreDefinedProperties_type,IFC4X3_RC1_IfcProperty_type,IFC4X3_RC1_IfcPropertyEnumeration_type + }); + IFC4X3_RC1_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC1_IfcExternalSpatialElement_type + }); + IFC4X3_RC1_IfcSpatialElement_type->set_subtypes({ + IFC4X3_RC1_IfcExternalSpatialStructureElement_type,IFC4X3_RC1_IfcSpatialStructureElement_type,IFC4X3_RC1_IfcSpatialZone_type + }); + IFC4X3_RC1_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type + }); + IFC4X3_RC1_IfcFaceBound_type->set_subtypes({ + IFC4X3_RC1_IfcFaceOuterBound_type + }); + IFC4X3_RC1_IfcFace_type->set_subtypes({ + IFC4X3_RC1_IfcFaceSurface_type + }); + IFC4X3_RC1_IfcFacetedBrep_type->set_subtypes({ + IFC4X3_RC1_IfcFacetedBrepWithVoids_type + }); + IFC4X3_RC1_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X3_RC1_IfcFailureConnectionCondition_type,IFC4X3_RC1_IfcSlippageConnectionCondition_type + }); + IFC4X3_RC1_IfcFeatureElement_type->set_subtypes({ + IFC4X3_RC1_IfcFeatureElementAddition_type,IFC4X3_RC1_IfcFeatureElementSubtraction_type,IFC4X3_RC1_IfcSurfaceFeature_type + }); + IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type,IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X3_RC1_IfcFurnishingElement_type->set_subtypes({ + IFC4X3_RC1_IfcFurniture_type,IFC4X3_RC1_IfcSystemFurnitureElement_type + }); + IFC4X3_RC1_IfcFurnishingElementType_type->set_subtypes({ + IFC4X3_RC1_IfcFurnitureType_type,IFC4X3_RC1_IfcSystemFurnitureElementType_type + }); + IFC4X3_RC1_IfcGeometricSet_type->set_subtypes({ + IFC4X3_RC1_IfcGeometricCurveSet_type + }); + IFC4X3_RC1_IfcRepresentationContext_type->set_subtypes({ + IFC4X3_RC1_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC1_IfcRepresentationItem_type->set_subtypes({ + IFC4X3_RC1_IfcGeometricRepresentationItem_type,IFC4X3_RC1_IfcMappedItem_type,IFC4X3_RC1_IfcStyledItem_type,IFC4X3_RC1_IfcTopologicalRepresentationItem_type + }); + IFC4X3_RC1_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X3_RC1_IfcGeometricRepresentationSubContext_type + }); + IFC4X3_RC1_IfcGeotechnicalElement_type->set_subtypes({ + IFC4X3_RC1_IfcGeotechnicalAssembly_type,IFC4X3_RC1_IfcGeotechnicalStratum_type + }); + IFC4X3_RC1_IfcPositioningElement_type->set_subtypes({ + IFC4X3_RC1_IfcGrid_type,IFC4X3_RC1_IfcLinearPositioningElement_type,IFC4X3_RC1_IfcReferent_type + }); + IFC4X3_RC1_IfcObjectPlacement_type->set_subtypes({ + IFC4X3_RC1_IfcGridPlacement_type,IFC4X3_RC1_IfcLinearPlacement_type,IFC4X3_RC1_IfcLocalPlacement_type + }); + IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type + }); + IFC4X3_RC1_IfcTessellatedItem_type->set_subtypes({ + IFC4X3_RC1_IfcIndexedPolygonalFace_type,IFC4X3_RC1_IfcTessellatedFaceSet_type + }); + IFC4X3_RC1_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X3_RC1_IfcTextureCoordinate_type->set_subtypes({ + IFC4X3_RC1_IfcIndexedTextureMap_type,IFC4X3_RC1_IfcTextureCoordinateGenerator_type,IFC4X3_RC1_IfcTextureMap_type + }); + IFC4X3_RC1_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X3_RC1_IfcIndexedTriangleTextureMap_type + }); + IFC4X3_RC1_IfcSurfaceCurve_type->set_subtypes({ + IFC4X3_RC1_IfcIntersectionCurve_type,IFC4X3_RC1_IfcSeamCurve_type + }); + IFC4X3_RC1_IfcTimeSeries_type->set_subtypes({ + IFC4X3_RC1_IfcIrregularTimeSeries_type,IFC4X3_RC1_IfcRegularTimeSeries_type + }); + IFC4X3_RC1_IfcLightSource_type->set_subtypes({ + IFC4X3_RC1_IfcLightSourceAmbient_type,IFC4X3_RC1_IfcLightSourceDirectional_type,IFC4X3_RC1_IfcLightSourceGoniometric_type,IFC4X3_RC1_IfcLightSourcePositional_type + }); + IFC4X3_RC1_IfcLightSourcePositional_type->set_subtypes({ + IFC4X3_RC1_IfcLightSourceSpot_type + }); + IFC4X3_RC1_IfcLinearPlacement_type->set_subtypes({ + IFC4X3_RC1_IfcLinearPlacementWithInclination_type,IFC4X3_RC1_IfcLinearSpanPlacement_type + }); + IFC4X3_RC1_IfcCoordinateOperation_type->set_subtypes({ + IFC4X3_RC1_IfcMapConversion_type + }); + IFC4X3_RC1_IfcMaterialDefinition_type->set_subtypes({ + IFC4X3_RC1_IfcMaterial_type,IFC4X3_RC1_IfcMaterialConstituent_type,IFC4X3_RC1_IfcMaterialConstituentSet_type,IFC4X3_RC1_IfcMaterialLayer_type,IFC4X3_RC1_IfcMaterialLayerSet_type,IFC4X3_RC1_IfcMaterialProfile_type,IFC4X3_RC1_IfcMaterialProfileSet_type + }); + IFC4X3_RC1_IfcProductRepresentation_type->set_subtypes({ + IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type,IFC4X3_RC1_IfcProductDefinitionShape_type + }); + IFC4X3_RC1_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X3_RC1_IfcMaterialLayerSetUsage_type,IFC4X3_RC1_IfcMaterialProfileSetUsage_type + }); + IFC4X3_RC1_IfcMaterialLayer_type->set_subtypes({ + IFC4X3_RC1_IfcMaterialLayerWithOffsets_type + }); + IFC4X3_RC1_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X3_RC1_IfcMaterialProfile_type->set_subtypes({ + IFC4X3_RC1_IfcMaterialProfileWithOffsets_type + }); + IFC4X3_RC1_IfcExtendedProperties_type->set_subtypes({ + IFC4X3_RC1_IfcMaterialProperties_type,IFC4X3_RC1_IfcProfileProperties_type + }); + IFC4X3_RC1_IfcMember_type->set_subtypes({ + IFC4X3_RC1_IfcMemberStandardCase_type + }); + IFC4X3_RC1_IfcConstraint_type->set_subtypes({ + IFC4X3_RC1_IfcMetric_type,IFC4X3_RC1_IfcObjective_type + }); + IFC4X3_RC1_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcMirroredProfileDef_type + }); + IFC4X3_RC1_IfcRoot_type->set_subtypes({ + IFC4X3_RC1_IfcObjectDefinition_type,IFC4X3_RC1_IfcPropertyDefinition_type,IFC4X3_RC1_IfcRelationship_type + }); + IFC4X3_RC1_IfcActor_type->set_subtypes({ + IFC4X3_RC1_IfcOccupant_type + }); + IFC4X3_RC1_IfcOffsetCurve_type->set_subtypes({ + IFC4X3_RC1_IfcOffsetCurve2D_type,IFC4X3_RC1_IfcOffsetCurve3D_type,IFC4X3_RC1_IfcOffsetCurveByDistances_type + }); + IFC4X3_RC1_IfcOpeningElement_type->set_subtypes({ + IFC4X3_RC1_IfcOpeningStandardCase_type + }); + IFC4X3_RC1_IfcBoundaryCurve_type->set_subtypes({ + IFC4X3_RC1_IfcOuterBoundaryCurve_type + }); + IFC4X3_RC1_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X3_RC1_IfcPhysicalComplexQuantity_type,IFC4X3_RC1_IfcPhysicalSimpleQuantity_type + }); + IFC4X3_RC1_IfcPlanarExtent_type->set_subtypes({ + IFC4X3_RC1_IfcPlanarBox_type + }); + IFC4X3_RC1_IfcGeographicElement_type->set_subtypes({ + IFC4X3_RC1_IfcPlant_type + }); + IFC4X3_RC1_IfcPlate_type->set_subtypes({ + IFC4X3_RC1_IfcPlateStandardCase_type + }); + IFC4X3_RC1_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X3_RC1_IfcPolygonalFaceSet_type,IFC4X3_RC1_IfcTriangulatedFaceSet_type + }); + IFC4X3_RC1_IfcAddress_type->set_subtypes({ + IFC4X3_RC1_IfcPostalAddress_type,IFC4X3_RC1_IfcTelecomAddress_type + }); + IFC4X3_RC1_IfcPreDefinedItem_type->set_subtypes({ + IFC4X3_RC1_IfcPreDefinedColour_type,IFC4X3_RC1_IfcPreDefinedCurveFont_type,IFC4X3_RC1_IfcPreDefinedTextFont_type + }); + IFC4X3_RC1_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X3_RC1_IfcPreDefinedPropertySet_type,IFC4X3_RC1_IfcPropertySet_type,IFC4X3_RC1_IfcQuantitySet_type + }); + IFC4X3_RC1_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X3_RC1_IfcPresentationLayerWithStyle_type + }); + IFC4X3_RC1_IfcContext_type->set_subtypes({ + IFC4X3_RC1_IfcProject_type,IFC4X3_RC1_IfcProjectLibrary_type + }); + IFC4X3_RC1_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X3_RC1_IfcProjectedCRS_type + }); + IFC4X3_RC1_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X3_RC1_IfcProjectionElement_type + }); + IFC4X3_RC1_IfcSimpleProperty_type->set_subtypes({ + IFC4X3_RC1_IfcPropertyBoundedValue_type,IFC4X3_RC1_IfcPropertyEnumeratedValue_type,IFC4X3_RC1_IfcPropertyListValue_type,IFC4X3_RC1_IfcPropertyReferenceValue_type,IFC4X3_RC1_IfcPropertySingleValue_type,IFC4X3_RC1_IfcPropertyTableValue_type + }); + IFC4X3_RC1_IfcPropertyDefinition_type->set_subtypes({ + IFC4X3_RC1_IfcPropertySetDefinition_type,IFC4X3_RC1_IfcPropertyTemplateDefinition_type + }); + IFC4X3_RC1_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X3_RC1_IfcPropertySetTemplate_type,IFC4X3_RC1_IfcPropertyTemplate_type + }); + IFC4X3_RC1_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X3_RC1_IfcQuantityArea_type,IFC4X3_RC1_IfcQuantityCount_type,IFC4X3_RC1_IfcQuantityLength_type,IFC4X3_RC1_IfcQuantityTime_type,IFC4X3_RC1_IfcQuantityVolume_type,IFC4X3_RC1_IfcQuantityWeight_type + }); + IFC4X3_RC1_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X3_RC1_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X3_RC1_IfcRectangleHollowProfileDef_type,IFC4X3_RC1_IfcRoundedRectangleProfileDef_type + }); + IFC4X3_RC1_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X3_RC1_IfcReinforcementBarProperties_type,IFC4X3_RC1_IfcSectionProperties_type,IFC4X3_RC1_IfcSectionReinforcementProperties_type + }); + IFC4X3_RC1_IfcReinforcingElement_type->set_subtypes({ + IFC4X3_RC1_IfcReinforcingBar_type,IFC4X3_RC1_IfcReinforcingMesh_type,IFC4X3_RC1_IfcTendon_type,IFC4X3_RC1_IfcTendonAnchor_type,IFC4X3_RC1_IfcTendonConduit_type + }); + IFC4X3_RC1_IfcReinforcingElementType_type->set_subtypes({ + IFC4X3_RC1_IfcReinforcingBarType_type,IFC4X3_RC1_IfcReinforcingMeshType_type,IFC4X3_RC1_IfcTendonAnchorType_type,IFC4X3_RC1_IfcTendonConduitType_type,IFC4X3_RC1_IfcTendonType_type + }); + IFC4X3_RC1_IfcRelDecomposes_type->set_subtypes({ + IFC4X3_RC1_IfcRelAggregates_type,IFC4X3_RC1_IfcRelNests_type,IFC4X3_RC1_IfcRelProjectsElement_type,IFC4X3_RC1_IfcRelVoidsElement_type + }); + IFC4X3_RC1_IfcRelationship_type->set_subtypes({ + IFC4X3_RC1_IfcRelAssigns_type,IFC4X3_RC1_IfcRelAssociates_type,IFC4X3_RC1_IfcRelConnects_type,IFC4X3_RC1_IfcRelDeclares_type,IFC4X3_RC1_IfcRelDecomposes_type,IFC4X3_RC1_IfcRelDefines_type + }); + IFC4X3_RC1_IfcRelAssigns_type->set_subtypes({ + IFC4X3_RC1_IfcRelAssignsToActor_type,IFC4X3_RC1_IfcRelAssignsToControl_type,IFC4X3_RC1_IfcRelAssignsToGroup_type,IFC4X3_RC1_IfcRelAssignsToProcess_type,IFC4X3_RC1_IfcRelAssignsToProduct_type,IFC4X3_RC1_IfcRelAssignsToResource_type + }); + IFC4X3_RC1_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type + }); + IFC4X3_RC1_IfcRelAssociates_type->set_subtypes({ + IFC4X3_RC1_IfcRelAssociatesApproval_type,IFC4X3_RC1_IfcRelAssociatesClassification_type,IFC4X3_RC1_IfcRelAssociatesConstraint_type,IFC4X3_RC1_IfcRelAssociatesDocument_type,IFC4X3_RC1_IfcRelAssociatesLibrary_type,IFC4X3_RC1_IfcRelAssociatesMaterial_type,IFC4X3_RC1_IfcRelAssociatesProfileDef_type + }); + IFC4X3_RC1_IfcRelConnects_type->set_subtypes({ + IFC4X3_RC1_IfcRelConnectsElements_type,IFC4X3_RC1_IfcRelConnectsPortToElement_type,IFC4X3_RC1_IfcRelConnectsPorts_type,IFC4X3_RC1_IfcRelConnectsStructuralActivity_type,IFC4X3_RC1_IfcRelConnectsStructuralMember_type,IFC4X3_RC1_IfcRelContainedInSpatialStructure_type,IFC4X3_RC1_IfcRelCoversBldgElements_type,IFC4X3_RC1_IfcRelCoversSpaces_type,IFC4X3_RC1_IfcRelFillsElement_type,IFC4X3_RC1_IfcRelFlowControlElements_type,IFC4X3_RC1_IfcRelInterferesElements_type,IFC4X3_RC1_IfcRelPositions_type,IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type,IFC4X3_RC1_IfcRelSequence_type,IFC4X3_RC1_IfcRelServicesBuildings_type,IFC4X3_RC1_IfcRelSpaceBoundary_type + }); + IFC4X3_RC1_IfcRelConnectsElements_type->set_subtypes({ + IFC4X3_RC1_IfcRelConnectsPathElements_type,IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type + }); + IFC4X3_RC1_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X3_RC1_IfcRelConnectsWithEccentricity_type + }); + IFC4X3_RC1_IfcRelDefines_type->set_subtypes({ + IFC4X3_RC1_IfcRelDefinesByObject_type,IFC4X3_RC1_IfcRelDefinesByProperties_type,IFC4X3_RC1_IfcRelDefinesByTemplate_type,IFC4X3_RC1_IfcRelDefinesByType_type + }); + IFC4X3_RC1_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X3_RC1_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X3_RC1_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type + }); + IFC4X3_RC1_IfcSectionedSolid_type->set_subtypes({ + IFC4X3_RC1_IfcSectionedSolidHorizontal_type + }); + IFC4X3_RC1_IfcRepresentation_type->set_subtypes({ + IFC4X3_RC1_IfcShapeModel_type,IFC4X3_RC1_IfcStyleModel_type + }); + IFC4X3_RC1_IfcShapeModel_type->set_subtypes({ + IFC4X3_RC1_IfcShapeRepresentation_type,IFC4X3_RC1_IfcTopologyRepresentation_type + }); + IFC4X3_RC1_IfcSlab_type->set_subtypes({ + IFC4X3_RC1_IfcSlabElementedCase_type,IFC4X3_RC1_IfcSlabStandardCase_type + }); + IFC4X3_RC1_IfcGeotechnicalStratum_type->set_subtypes({ + IFC4X3_RC1_IfcSolidStratum_type,IFC4X3_RC1_IfcVoidStratum_type,IFC4X3_RC1_IfcWaterStratum_type + }); + IFC4X3_RC1_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X3_RC1_IfcSpaceType_type + }); + IFC4X3_RC1_IfcSpatialElementType_type->set_subtypes({ + IFC4X3_RC1_IfcSpatialStructureElementType_type,IFC4X3_RC1_IfcSpatialZoneType_type + }); + IFC4X3_RC1_IfcStructuralActivity_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralAction_type,IFC4X3_RC1_IfcStructuralReaction_type + }); + IFC4X3_RC1_IfcStructuralItem_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralConnection_type,IFC4X3_RC1_IfcStructuralMember_type + }); + IFC4X3_RC1_IfcStructuralAction_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralCurveAction_type,IFC4X3_RC1_IfcStructuralPointAction_type,IFC4X3_RC1_IfcStructuralSurfaceAction_type + }); + IFC4X3_RC1_IfcStructuralConnection_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralCurveConnection_type,IFC4X3_RC1_IfcStructuralPointConnection_type,IFC4X3_RC1_IfcStructuralSurfaceConnection_type + }); + IFC4X3_RC1_IfcStructuralMember_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralCurveMember_type,IFC4X3_RC1_IfcStructuralSurfaceMember_type + }); + IFC4X3_RC1_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralCurveMemberVarying_type + }); + IFC4X3_RC1_IfcStructuralReaction_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralCurveReaction_type,IFC4X3_RC1_IfcStructuralPointReaction_type,IFC4X3_RC1_IfcStructuralSurfaceReaction_type + }); + IFC4X3_RC1_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLinearAction_type + }); + IFC4X3_RC1_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLoadCase_type + }); + IFC4X3_RC1_IfcStructuralLoad_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLoadConfiguration_type,IFC4X3_RC1_IfcStructuralLoadOrResult_type + }); + IFC4X3_RC1_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLoadLinearForce_type,IFC4X3_RC1_IfcStructuralLoadPlanarForce_type,IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type,IFC4X3_RC1_IfcStructuralLoadSingleForce_type,IFC4X3_RC1_IfcStructuralLoadTemperature_type + }); + IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X3_RC1_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X3_RC1_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralLoadStatic_type,IFC4X3_RC1_IfcSurfaceReinforcementArea_type + }); + IFC4X3_RC1_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralPlanarAction_type + }); + IFC4X3_RC1_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X3_RC1_IfcStyleModel_type->set_subtypes({ + IFC4X3_RC1_IfcStyledRepresentation_type + }); + IFC4X3_RC1_IfcSweptSurface_type->set_subtypes({ + IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type,IFC4X3_RC1_IfcSurfaceOfRevolution_type + }); + IFC4X3_RC1_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X3_RC1_IfcSurfaceStyleRendering_type + }); + IFC4X3_RC1_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type + }); + IFC4X3_RC1_IfcTaskTime_type->set_subtypes({ + IFC4X3_RC1_IfcTaskTimeRecurring_type + }); + IFC4X3_RC1_IfcTextLiteral_type->set_subtypes({ + IFC4X3_RC1_IfcTextLiteralWithExtent_type + }); + IFC4X3_RC1_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X3_RC1_IfcTextStyleFontModel_type + }); + IFC4X3_RC1_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type + }); + IFC4X3_RC1_IfcTypeObject_type->set_subtypes({ + IFC4X3_RC1_IfcTypeProcess_type,IFC4X3_RC1_IfcTypeProduct_type,IFC4X3_RC1_IfcTypeResource_type + }); + IFC4X3_RC1_IfcVertex_type->set_subtypes({ + IFC4X3_RC1_IfcVertexPoint_type + }); + IFC4X3_RC1_IfcWall_type->set_subtypes({ + IFC4X3_RC1_IfcWallElementedCase_type,IFC4X3_RC1_IfcWallStandardCase_type + }); + IFC4X3_RC1_IfcWindow_type->set_subtypes({ + IFC4X3_RC1_IfcWindowStandardCase_type + }); + IFC4X3_RC1_IfcWorkControl_type->set_subtypes({ + IFC4X3_RC1_IfcWorkPlan_type,IFC4X3_RC1_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1317); - declarations.push_back(IFC4X3_RC1_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcActionRequest_type); - declarations.push_back(IFC4X3_RC1_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcActionTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcActor_type); - declarations.push_back(IFC4X3_RC1_IfcActorRole_type); - declarations.push_back(IFC4X3_RC1_IfcActorSelect_type); - declarations.push_back(IFC4X3_RC1_IfcActuator_type); - declarations.push_back(IFC4X3_RC1_IfcActuatorType_type); - declarations.push_back(IFC4X3_RC1_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAddress_type); - declarations.push_back(IFC4X3_RC1_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAdvancedBrep_type); - declarations.push_back(IFC4X3_RC1_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC1_IfcAdvancedFace_type); - declarations.push_back(IFC4X3_RC1_IfcAirTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcAirTerminalBox_type); - declarations.push_back(IFC4X3_RC1_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAirTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAlarm_type); - declarations.push_back(IFC4X3_RC1_IfcAlarmType_type); - declarations.push_back(IFC4X3_RC1_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DCant_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DCantSegLine_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DCantSegment_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DCantSegTransition_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DHorizontal_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DSegment_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DVerSegLine_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DVerSegTransition_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DVertical_type); - declarations.push_back(IFC4X3_RC1_IfcAlignment2DVerticalSegment_type); - declarations.push_back(IFC4X3_RC1_IfcAlignmentCurve_type); - declarations.push_back(IFC4X3_RC1_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcAnnotation_type); - declarations.push_back(IFC4X3_RC1_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X3_RC1_IfcAnnotationTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcApplication_type); - declarations.push_back(IFC4X3_RC1_IfcAppliedValue_type); - declarations.push_back(IFC4X3_RC1_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X3_RC1_IfcApproval_type); - declarations.push_back(IFC4X3_RC1_IfcApprovalRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X3_RC1_IfcArcIndex_type); - declarations.push_back(IFC4X3_RC1_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcAreaMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAsset_type); - declarations.push_back(IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X3_RC1_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcAxis1Placement_type); - declarations.push_back(IFC4X3_RC1_IfcAxis2Placement_type); - declarations.push_back(IFC4X3_RC1_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X3_RC1_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X3_RC1_IfcAxisLateralInclination_type); - declarations.push_back(IFC4X3_RC1_IfcBeam_type); - declarations.push_back(IFC4X3_RC1_IfcBeamStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcBeamType_type); - declarations.push_back(IFC4X3_RC1_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBearing_type); - declarations.push_back(IFC4X3_RC1_IfcBearingType_type); - declarations.push_back(IFC4X3_RC1_IfcBearingTypeDisplacementEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBearingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X3_RC1_IfcBinary_type); - declarations.push_back(IFC4X3_RC1_IfcBlobTexture_type); - declarations.push_back(IFC4X3_RC1_IfcBlock_type); - declarations.push_back(IFC4X3_RC1_IfcBoiler_type); - declarations.push_back(IFC4X3_RC1_IfcBoilerType_type); - declarations.push_back(IFC4X3_RC1_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBoolean_type); - declarations.push_back(IFC4X3_RC1_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X3_RC1_IfcBooleanOperand_type); - declarations.push_back(IFC4X3_RC1_IfcBooleanOperator_type); - declarations.push_back(IFC4X3_RC1_IfcBooleanResult_type); - declarations.push_back(IFC4X3_RC1_IfcBorehole_type); - declarations.push_back(IFC4X3_RC1_IfcBoundaryCondition_type); - declarations.push_back(IFC4X3_RC1_IfcBoundaryCurve_type); - declarations.push_back(IFC4X3_RC1_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X3_RC1_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X3_RC1_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X3_RC1_IfcBoundedCurve_type); - declarations.push_back(IFC4X3_RC1_IfcBoundedSurface_type); - declarations.push_back(IFC4X3_RC1_IfcBoundingBox_type); - declarations.push_back(IFC4X3_RC1_IfcBoxAlignment_type); - declarations.push_back(IFC4X3_RC1_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X3_RC1_IfcBridge_type); - declarations.push_back(IFC4X3_RC1_IfcBridgePart_type); - declarations.push_back(IFC4X3_RC1_IfcBridgePartTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBridgeTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBSplineCurve_type); - declarations.push_back(IFC4X3_RC1_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X3_RC1_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC1_IfcBSplineSurface_type); - declarations.push_back(IFC4X3_RC1_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC1_IfcBuilding_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingElementPart_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingStorey_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingSystem_type); - declarations.push_back(IFC4X3_RC1_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBuiltElement_type); - declarations.push_back(IFC4X3_RC1_IfcBuiltElementType_type); - declarations.push_back(IFC4X3_RC1_IfcBuiltSystem_type); - declarations.push_back(IFC4X3_RC1_IfcBuiltSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcBurner_type); - declarations.push_back(IFC4X3_RC1_IfcBurnerType_type); - declarations.push_back(IFC4X3_RC1_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X3_RC1_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X3_RC1_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCableFitting_type); - declarations.push_back(IFC4X3_RC1_IfcCableFittingType_type); - declarations.push_back(IFC4X3_RC1_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCableSegment_type); - declarations.push_back(IFC4X3_RC1_IfcCableSegmentType_type); - declarations.push_back(IFC4X3_RC1_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCaissonFoundation_type); - declarations.push_back(IFC4X3_RC1_IfcCaissonFoundationType_type); - declarations.push_back(IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCardinalPointReference_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianPoint_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianPointList_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X3_RC1_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcChangeActionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcChiller_type); - declarations.push_back(IFC4X3_RC1_IfcChillerType_type); - declarations.push_back(IFC4X3_RC1_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcChimney_type); - declarations.push_back(IFC4X3_RC1_IfcChimneyType_type); - declarations.push_back(IFC4X3_RC1_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCircle_type); - declarations.push_back(IFC4X3_RC1_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcCircleProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcCircularArcSegment2D_type); - declarations.push_back(IFC4X3_RC1_IfcCivilElement_type); - declarations.push_back(IFC4X3_RC1_IfcCivilElementType_type); - declarations.push_back(IFC4X3_RC1_IfcClassification_type); - declarations.push_back(IFC4X3_RC1_IfcClassificationReference_type); - declarations.push_back(IFC4X3_RC1_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcClassificationSelect_type); - declarations.push_back(IFC4X3_RC1_IfcClosedShell_type); - declarations.push_back(IFC4X3_RC1_IfcCoil_type); - declarations.push_back(IFC4X3_RC1_IfcCoilType_type); - declarations.push_back(IFC4X3_RC1_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcColour_type); - declarations.push_back(IFC4X3_RC1_IfcColourOrFactor_type); - declarations.push_back(IFC4X3_RC1_IfcColourRgb_type); - declarations.push_back(IFC4X3_RC1_IfcColourRgbList_type); - declarations.push_back(IFC4X3_RC1_IfcColourSpecification_type); - declarations.push_back(IFC4X3_RC1_IfcColumn_type); - declarations.push_back(IFC4X3_RC1_IfcColumnStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcColumnType_type); - declarations.push_back(IFC4X3_RC1_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC1_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcComplexNumber_type); - declarations.push_back(IFC4X3_RC1_IfcComplexProperty_type); - declarations.push_back(IFC4X3_RC1_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCompositeCurve_type); - declarations.push_back(IFC4X3_RC1_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X3_RC1_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC1_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcCompressor_type); - declarations.push_back(IFC4X3_RC1_IfcCompressorType_type); - declarations.push_back(IFC4X3_RC1_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCondenser_type); - declarations.push_back(IFC4X3_RC1_IfcCondenserType_type); - declarations.push_back(IFC4X3_RC1_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConic_type); - declarations.push_back(IFC4X3_RC1_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionGeometry_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X3_RC1_IfcConstraint_type); - declarations.push_back(IFC4X3_RC1_IfcConstraintEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionProductResource_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionResource_type); - declarations.push_back(IFC4X3_RC1_IfcConstructionResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcContext_type); - declarations.push_back(IFC4X3_RC1_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcContextDependentUnit_type); - declarations.push_back(IFC4X3_RC1_IfcControl_type); - declarations.push_back(IFC4X3_RC1_IfcController_type); - declarations.push_back(IFC4X3_RC1_IfcControllerType_type); - declarations.push_back(IFC4X3_RC1_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X3_RC1_IfcConveyorSegment_type); - declarations.push_back(IFC4X3_RC1_IfcConveyorSegmentType_type); - declarations.push_back(IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCooledBeam_type); - declarations.push_back(IFC4X3_RC1_IfcCooledBeamType_type); - declarations.push_back(IFC4X3_RC1_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCoolingTower_type); - declarations.push_back(IFC4X3_RC1_IfcCoolingTowerType_type); - declarations.push_back(IFC4X3_RC1_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCoordinateOperation_type); - declarations.push_back(IFC4X3_RC1_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X3_RC1_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X3_RC1_IfcCostItem_type); - declarations.push_back(IFC4X3_RC1_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCostSchedule_type); - declarations.push_back(IFC4X3_RC1_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCostValue_type); - declarations.push_back(IFC4X3_RC1_IfcCountMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcCourse_type); - declarations.push_back(IFC4X3_RC1_IfcCourseType_type); - declarations.push_back(IFC4X3_RC1_IfcCourseTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCovering_type); - declarations.push_back(IFC4X3_RC1_IfcCoveringType_type); - declarations.push_back(IFC4X3_RC1_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCrewResource_type); - declarations.push_back(IFC4X3_RC1_IfcCrewResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X3_RC1_IfcCsgSelect_type); - declarations.push_back(IFC4X3_RC1_IfcCsgSolid_type); - declarations.push_back(IFC4X3_RC1_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcCurtainWall_type); - declarations.push_back(IFC4X3_RC1_IfcCurtainWallType_type); - declarations.push_back(IFC4X3_RC1_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcCurve_type); - declarations.push_back(IFC4X3_RC1_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X3_RC1_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X3_RC1_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X3_RC1_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcCurveOnSurface_type); - declarations.push_back(IFC4X3_RC1_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X3_RC1_IfcCurveSegment2D_type); - declarations.push_back(IFC4X3_RC1_IfcCurveStyle_type); - declarations.push_back(IFC4X3_RC1_IfcCurveStyleFont_type); - declarations.push_back(IFC4X3_RC1_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X3_RC1_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X3_RC1_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X3_RC1_IfcCylindricalSurface_type); - declarations.push_back(IFC4X3_RC1_IfcDamper_type); - declarations.push_back(IFC4X3_RC1_IfcDamperType_type); - declarations.push_back(IFC4X3_RC1_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDataOriginEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDate_type); - declarations.push_back(IFC4X3_RC1_IfcDateTime_type); - declarations.push_back(IFC4X3_RC1_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X3_RC1_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X3_RC1_IfcDeepFoundation_type); - declarations.push_back(IFC4X3_RC1_IfcDeepFoundationType_type); - declarations.push_back(IFC4X3_RC1_IfcDefinitionSelect_type); - declarations.push_back(IFC4X3_RC1_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X3_RC1_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcDerivedUnit_type); - declarations.push_back(IFC4X3_RC1_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X3_RC1_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcDimensionalExponents_type); - declarations.push_back(IFC4X3_RC1_IfcDimensionCount_type); - declarations.push_back(IFC4X3_RC1_IfcDirection_type); - declarations.push_back(IFC4X3_RC1_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X3_RC1_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDistanceExpression_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionBoard_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionBoardType_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionCircuit_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionControlElement_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionElement_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionElementType_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionPort_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionSystem_type); - declarations.push_back(IFC4X3_RC1_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDocumentInformation_type); - declarations.push_back(IFC4X3_RC1_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcDocumentReference_type); - declarations.push_back(IFC4X3_RC1_IfcDocumentSelect_type); - declarations.push_back(IFC4X3_RC1_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoor_type); - declarations.push_back(IFC4X3_RC1_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X3_RC1_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X3_RC1_IfcDoorStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcDoorStyle_type); - declarations.push_back(IFC4X3_RC1_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoorType_type); - declarations.push_back(IFC4X3_RC1_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC1_IfcDuctFitting_type); - declarations.push_back(IFC4X3_RC1_IfcDuctFittingType_type); - declarations.push_back(IFC4X3_RC1_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDuctSegment_type); - declarations.push_back(IFC4X3_RC1_IfcDuctSegmentType_type); - declarations.push_back(IFC4X3_RC1_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDuctSilencer_type); - declarations.push_back(IFC4X3_RC1_IfcDuctSilencerType_type); - declarations.push_back(IFC4X3_RC1_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcDuration_type); - declarations.push_back(IFC4X3_RC1_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcEarthworksCut_type); - declarations.push_back(IFC4X3_RC1_IfcEarthworksCutTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcEarthworksElement_type); - declarations.push_back(IFC4X3_RC1_IfcEarthworksFill_type); - declarations.push_back(IFC4X3_RC1_IfcEarthworksFillTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcEdge_type); - declarations.push_back(IFC4X3_RC1_IfcEdgeCurve_type); - declarations.push_back(IFC4X3_RC1_IfcEdgeLoop_type); - declarations.push_back(IFC4X3_RC1_IfcElectricAppliance_type); - declarations.push_back(IFC4X3_RC1_IfcElectricApplianceType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X3_RC1_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricGenerator_type); - declarations.push_back(IFC4X3_RC1_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricMotor_type); - declarations.push_back(IFC4X3_RC1_IfcElectricMotorType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcElectricTimeControl_type); - declarations.push_back(IFC4X3_RC1_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcElement_type); - declarations.push_back(IFC4X3_RC1_IfcElementarySurface_type); - declarations.push_back(IFC4X3_RC1_IfcElementAssembly_type); - declarations.push_back(IFC4X3_RC1_IfcElementAssemblyType_type); - declarations.push_back(IFC4X3_RC1_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElementComponent_type); - declarations.push_back(IFC4X3_RC1_IfcElementComponentType_type); - declarations.push_back(IFC4X3_RC1_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcElementQuantity_type); - declarations.push_back(IFC4X3_RC1_IfcElementType_type); - declarations.push_back(IFC4X3_RC1_IfcEllipse_type); - declarations.push_back(IFC4X3_RC1_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X3_RC1_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcEnergyMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcEngine_type); - declarations.push_back(IFC4X3_RC1_IfcEngineType_type); - declarations.push_back(IFC4X3_RC1_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X3_RC1_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcEvaporator_type); - declarations.push_back(IFC4X3_RC1_IfcEvaporatorType_type); - declarations.push_back(IFC4X3_RC1_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcEvent_type); - declarations.push_back(IFC4X3_RC1_IfcEventTime_type); - declarations.push_back(IFC4X3_RC1_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcEventType_type); - declarations.push_back(IFC4X3_RC1_IfcEventTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcExtendedProperties_type); - declarations.push_back(IFC4X3_RC1_IfcExternalInformation_type); - declarations.push_back(IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X3_RC1_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X3_RC1_IfcExternalReference_type); - declarations.push_back(IFC4X3_RC1_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC1_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC1_IfcFace_type); - declarations.push_back(IFC4X3_RC1_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC1_IfcFaceBound_type); - declarations.push_back(IFC4X3_RC1_IfcFaceOuterBound_type); - declarations.push_back(IFC4X3_RC1_IfcFaceSurface_type); - declarations.push_back(IFC4X3_RC1_IfcFacetedBrep_type); - declarations.push_back(IFC4X3_RC1_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC1_IfcFacility_type); - declarations.push_back(IFC4X3_RC1_IfcFacilityPart_type); - declarations.push_back(IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFacilityPartTypeSelect_type); - declarations.push_back(IFC4X3_RC1_IfcFacilityUsageEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X3_RC1_IfcFan_type); - declarations.push_back(IFC4X3_RC1_IfcFanType_type); - declarations.push_back(IFC4X3_RC1_IfcFanTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFastener_type); - declarations.push_back(IFC4X3_RC1_IfcFastenerType_type); - declarations.push_back(IFC4X3_RC1_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFeatureElement_type); - declarations.push_back(IFC4X3_RC1_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X3_RC1_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X3_RC1_IfcFillAreaStyle_type); - declarations.push_back(IFC4X3_RC1_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X3_RC1_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X3_RC1_IfcFillStyleSelect_type); - declarations.push_back(IFC4X3_RC1_IfcFilter_type); - declarations.push_back(IFC4X3_RC1_IfcFilterType_type); - declarations.push_back(IFC4X3_RC1_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcFlowController_type); - declarations.push_back(IFC4X3_RC1_IfcFlowControllerType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFlowFitting_type); - declarations.push_back(IFC4X3_RC1_IfcFlowFittingType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowInstrument_type); - declarations.push_back(IFC4X3_RC1_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFlowMeter_type); - declarations.push_back(IFC4X3_RC1_IfcFlowMeterType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X3_RC1_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowSegment_type); - declarations.push_back(IFC4X3_RC1_IfcFlowSegmentType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC1_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcFlowTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC1_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcFontStyle_type); - declarations.push_back(IFC4X3_RC1_IfcFontVariant_type); - declarations.push_back(IFC4X3_RC1_IfcFontWeight_type); - declarations.push_back(IFC4X3_RC1_IfcFooting_type); - declarations.push_back(IFC4X3_RC1_IfcFootingType_type); - declarations.push_back(IFC4X3_RC1_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcForceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcFurnishingElement_type); - declarations.push_back(IFC4X3_RC1_IfcFurnishingElementType_type); - declarations.push_back(IFC4X3_RC1_IfcFurniture_type); - declarations.push_back(IFC4X3_RC1_IfcFurnitureType_type); - declarations.push_back(IFC4X3_RC1_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcGeographicElement_type); - declarations.push_back(IFC4X3_RC1_IfcGeographicElementType_type); - declarations.push_back(IFC4X3_RC1_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricSet_type); - declarations.push_back(IFC4X3_RC1_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X3_RC1_IfcGeomodel_type); - declarations.push_back(IFC4X3_RC1_IfcGeoslice_type); - declarations.push_back(IFC4X3_RC1_IfcGeotechnicalAssembly_type); - declarations.push_back(IFC4X3_RC1_IfcGeotechnicalElement_type); - declarations.push_back(IFC4X3_RC1_IfcGeotechnicalStratum_type); - declarations.push_back(IFC4X3_RC1_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X3_RC1_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X3_RC1_IfcGrid_type); - declarations.push_back(IFC4X3_RC1_IfcGridAxis_type); - declarations.push_back(IFC4X3_RC1_IfcGridPlacement_type); - declarations.push_back(IFC4X3_RC1_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X3_RC1_IfcGridTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcGroup_type); - declarations.push_back(IFC4X3_RC1_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X3_RC1_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcHeatExchanger_type); - declarations.push_back(IFC4X3_RC1_IfcHeatExchangerType_type); - declarations.push_back(IFC4X3_RC1_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcHumidifier_type); - declarations.push_back(IFC4X3_RC1_IfcHumidifierType_type); - declarations.push_back(IFC4X3_RC1_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcIdentifier_type); - declarations.push_back(IFC4X3_RC1_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcImageTexture_type); - declarations.push_back(IFC4X3_RC1_IfcImpactProtectionDevice_type); - declarations.push_back(IFC4X3_RC1_IfcImpactProtectionDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type); - declarations.push_back(IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcIndexedColourMap_type); - declarations.push_back(IFC4X3_RC1_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X3_RC1_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X3_RC1_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X3_RC1_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X3_RC1_IfcInductanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcInteger_type); - declarations.push_back(IFC4X3_RC1_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcInterceptor_type); - declarations.push_back(IFC4X3_RC1_IfcInterceptorType_type); - declarations.push_back(IFC4X3_RC1_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcInterferenceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X3_RC1_IfcIntersectionCurve_type); - declarations.push_back(IFC4X3_RC1_IfcInventory_type); - declarations.push_back(IFC4X3_RC1_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X3_RC1_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC1_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcJunctionBox_type); - declarations.push_back(IFC4X3_RC1_IfcJunctionBoxType_type); - declarations.push_back(IFC4X3_RC1_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcKerb_type); - declarations.push_back(IFC4X3_RC1_IfcKerbType_type); - declarations.push_back(IFC4X3_RC1_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcKnotType_type); - declarations.push_back(IFC4X3_RC1_IfcLabel_type); - declarations.push_back(IFC4X3_RC1_IfcLaborResource_type); - declarations.push_back(IFC4X3_RC1_IfcLaborResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLagTime_type); - declarations.push_back(IFC4X3_RC1_IfcLamp_type); - declarations.push_back(IFC4X3_RC1_IfcLampType_type); - declarations.push_back(IFC4X3_RC1_IfcLampTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLanguageId_type); - declarations.push_back(IFC4X3_RC1_IfcLayeredItem_type); - declarations.push_back(IFC4X3_RC1_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLengthMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLibraryInformation_type); - declarations.push_back(IFC4X3_RC1_IfcLibraryReference_type); - declarations.push_back(IFC4X3_RC1_IfcLibrarySelect_type); - declarations.push_back(IFC4X3_RC1_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLightDistributionData_type); - declarations.push_back(IFC4X3_RC1_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLightFixture_type); - declarations.push_back(IFC4X3_RC1_IfcLightFixtureType_type); - declarations.push_back(IFC4X3_RC1_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X3_RC1_IfcLightSource_type); - declarations.push_back(IFC4X3_RC1_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X3_RC1_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X3_RC1_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X3_RC1_IfcLightSourcePositional_type); - declarations.push_back(IFC4X3_RC1_IfcLightSourceSpot_type); - declarations.push_back(IFC4X3_RC1_IfcLine_type); - declarations.push_back(IFC4X3_RC1_IfcLinearAxisSelect_type); - declarations.push_back(IFC4X3_RC1_IfcLinearAxisWithInclination_type); - declarations.push_back(IFC4X3_RC1_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLinearPlacement_type); - declarations.push_back(IFC4X3_RC1_IfcLinearPlacementWithInclination_type); - declarations.push_back(IFC4X3_RC1_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X3_RC1_IfcLinearSpanPlacement_type); - declarations.push_back(IFC4X3_RC1_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLineIndex_type); - declarations.push_back(IFC4X3_RC1_IfcLineSegment2D_type); - declarations.push_back(IFC4X3_RC1_IfcLiquidTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcLiquidTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLocalPlacement_type); - declarations.push_back(IFC4X3_RC1_IfcLogical_type); - declarations.push_back(IFC4X3_RC1_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X3_RC1_IfcLoop_type); - declarations.push_back(IFC4X3_RC1_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X3_RC1_IfcMapConversion_type); - declarations.push_back(IFC4X3_RC1_IfcMappedItem_type); - declarations.push_back(IFC4X3_RC1_IfcMarineFacility_type); - declarations.push_back(IFC4X3_RC1_IfcMarineFacilityTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcMarinePartTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMassMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMaterial_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialConstituent_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialDefinition_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialLayer_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialList_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialProfile_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialProperties_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialSelect_type); - declarations.push_back(IFC4X3_RC1_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X3_RC1_IfcMeasureValue_type); - declarations.push_back(IFC4X3_RC1_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X3_RC1_IfcMechanicalFastener_type); - declarations.push_back(IFC4X3_RC1_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcMedicalDevice_type); - declarations.push_back(IFC4X3_RC1_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcMember_type); - declarations.push_back(IFC4X3_RC1_IfcMemberStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcMemberType_type); - declarations.push_back(IFC4X3_RC1_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcMetric_type); - declarations.push_back(IFC4X3_RC1_IfcMetricValueSelect_type); - declarations.push_back(IFC4X3_RC1_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC1_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcMonetaryUnit_type); - declarations.push_back(IFC4X3_RC1_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X3_RC1_IfcMooringDevice_type); - declarations.push_back(IFC4X3_RC1_IfcMooringDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcMooringDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcMotorConnection_type); - declarations.push_back(IFC4X3_RC1_IfcMotorConnectionType_type); - declarations.push_back(IFC4X3_RC1_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcNamedUnit_type); - declarations.push_back(IFC4X3_RC1_IfcNavigationElement_type); - declarations.push_back(IFC4X3_RC1_IfcNavigationElementType_type); - declarations.push_back(IFC4X3_RC1_IfcNavigationElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcNullStyle_type); - declarations.push_back(IFC4X3_RC1_IfcNumericMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcObject_type); - declarations.push_back(IFC4X3_RC1_IfcObjectDefinition_type); - declarations.push_back(IFC4X3_RC1_IfcObjective_type); - declarations.push_back(IFC4X3_RC1_IfcObjectiveEnum_type); - declarations.push_back(IFC4X3_RC1_IfcObjectPlacement_type); - declarations.push_back(IFC4X3_RC1_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcObjectTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcOccupant_type); - declarations.push_back(IFC4X3_RC1_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcOffsetCurve_type); - declarations.push_back(IFC4X3_RC1_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X3_RC1_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X3_RC1_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X3_RC1_IfcOpenCrossProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcOpeningElement_type); - declarations.push_back(IFC4X3_RC1_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcOpeningStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcOpenShell_type); - declarations.push_back(IFC4X3_RC1_IfcOrganization_type); - declarations.push_back(IFC4X3_RC1_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcOrientationExpression_type); - declarations.push_back(IFC4X3_RC1_IfcOrientedEdge_type); - declarations.push_back(IFC4X3_RC1_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X3_RC1_IfcOutlet_type); - declarations.push_back(IFC4X3_RC1_IfcOutletType_type); - declarations.push_back(IFC4X3_RC1_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcOwnerHistory_type); - declarations.push_back(IFC4X3_RC1_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcParameterValue_type); - declarations.push_back(IFC4X3_RC1_IfcPath_type); - declarations.push_back(IFC4X3_RC1_IfcPavement_type); - declarations.push_back(IFC4X3_RC1_IfcPavementType_type); - declarations.push_back(IFC4X3_RC1_IfcPcurve_type); - declarations.push_back(IFC4X3_RC1_IfcPerformanceHistory_type); - declarations.push_back(IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X3_RC1_IfcPermit_type); - declarations.push_back(IFC4X3_RC1_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPerson_type); - declarations.push_back(IFC4X3_RC1_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X3_RC1_IfcPHMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X3_RC1_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X3_RC1_IfcPile_type); - declarations.push_back(IFC4X3_RC1_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPileType_type); - declarations.push_back(IFC4X3_RC1_IfcPileTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPipeFitting_type); - declarations.push_back(IFC4X3_RC1_IfcPipeFittingType_type); - declarations.push_back(IFC4X3_RC1_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPipeSegment_type); - declarations.push_back(IFC4X3_RC1_IfcPipeSegmentType_type); - declarations.push_back(IFC4X3_RC1_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPixelTexture_type); - declarations.push_back(IFC4X3_RC1_IfcPlacement_type); - declarations.push_back(IFC4X3_RC1_IfcPlanarBox_type); - declarations.push_back(IFC4X3_RC1_IfcPlanarExtent_type); - declarations.push_back(IFC4X3_RC1_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPlane_type); - declarations.push_back(IFC4X3_RC1_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPlant_type); - declarations.push_back(IFC4X3_RC1_IfcPlate_type); - declarations.push_back(IFC4X3_RC1_IfcPlateStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcPlateType_type); - declarations.push_back(IFC4X3_RC1_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPoint_type); - declarations.push_back(IFC4X3_RC1_IfcPointOnCurve_type); - declarations.push_back(IFC4X3_RC1_IfcPointOnSurface_type); - declarations.push_back(IFC4X3_RC1_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X3_RC1_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X3_RC1_IfcPolyline_type); - declarations.push_back(IFC4X3_RC1_IfcPolyLoop_type); - declarations.push_back(IFC4X3_RC1_IfcPort_type); - declarations.push_back(IFC4X3_RC1_IfcPositioningElement_type); - declarations.push_back(IFC4X3_RC1_IfcPositiveInteger_type); - declarations.push_back(IFC4X3_RC1_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPostalAddress_type); - declarations.push_back(IFC4X3_RC1_IfcPowerMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcPreDefinedColour_type); - declarations.push_back(IFC4X3_RC1_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC1_IfcPreDefinedItem_type); - declarations.push_back(IFC4X3_RC1_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X3_RC1_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X3_RC1_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcPresentableText_type); - declarations.push_back(IFC4X3_RC1_IfcPresentationItem_type); - declarations.push_back(IFC4X3_RC1_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X3_RC1_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X3_RC1_IfcPresentationStyle_type); - declarations.push_back(IFC4X3_RC1_IfcPresentationStyleAssignment_type); - declarations.push_back(IFC4X3_RC1_IfcPresentationStyleSelect_type); - declarations.push_back(IFC4X3_RC1_IfcPressureMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcProcedure_type); - declarations.push_back(IFC4X3_RC1_IfcProcedureType_type); - declarations.push_back(IFC4X3_RC1_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProcess_type); - declarations.push_back(IFC4X3_RC1_IfcProcessSelect_type); - declarations.push_back(IFC4X3_RC1_IfcProduct_type); - declarations.push_back(IFC4X3_RC1_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X3_RC1_IfcProductRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X3_RC1_IfcProductSelect_type); - declarations.push_back(IFC4X3_RC1_IfcProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcProfileProperties_type); - declarations.push_back(IFC4X3_RC1_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProject_type); - declarations.push_back(IFC4X3_RC1_IfcProjectedCRS_type); - declarations.push_back(IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProjectionElement_type); - declarations.push_back(IFC4X3_RC1_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProjectLibrary_type); - declarations.push_back(IFC4X3_RC1_IfcProjectOrder_type); - declarations.push_back(IFC4X3_RC1_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProperty_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyDefinition_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyListValue_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySet_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcPropertySingleValue_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyTableValue_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyTemplate_type); - declarations.push_back(IFC4X3_RC1_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X3_RC1_IfcProtectiveDevice_type); - declarations.push_back(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcProxy_type); - declarations.push_back(IFC4X3_RC1_IfcPump_type); - declarations.push_back(IFC4X3_RC1_IfcPumpType_type); - declarations.push_back(IFC4X3_RC1_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcQuantityArea_type); - declarations.push_back(IFC4X3_RC1_IfcQuantityCount_type); - declarations.push_back(IFC4X3_RC1_IfcQuantityLength_type); - declarations.push_back(IFC4X3_RC1_IfcQuantitySet_type); - declarations.push_back(IFC4X3_RC1_IfcQuantityTime_type); - declarations.push_back(IFC4X3_RC1_IfcQuantityVolume_type); - declarations.push_back(IFC4X3_RC1_IfcQuantityWeight_type); - declarations.push_back(IFC4X3_RC1_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcRail_type); - declarations.push_back(IFC4X3_RC1_IfcRailing_type); - declarations.push_back(IFC4X3_RC1_IfcRailingType_type); - declarations.push_back(IFC4X3_RC1_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRailType_type); - declarations.push_back(IFC4X3_RC1_IfcRailTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRailway_type); - declarations.push_back(IFC4X3_RC1_IfcRailwayPartTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRamp_type); - declarations.push_back(IFC4X3_RC1_IfcRampFlight_type); - declarations.push_back(IFC4X3_RC1_IfcRampFlightType_type); - declarations.push_back(IFC4X3_RC1_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRampType_type); - declarations.push_back(IFC4X3_RC1_IfcRampTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRatioMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC1_IfcReal_type); - declarations.push_back(IFC4X3_RC1_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcRectangularPyramid_type); - declarations.push_back(IFC4X3_RC1_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X3_RC1_IfcRecurrencePattern_type); - declarations.push_back(IFC4X3_RC1_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcReference_type); - declarations.push_back(IFC4X3_RC1_IfcReferent_type); - declarations.push_back(IFC4X3_RC1_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcedSoil_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingBar_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingBarType_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingElement_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingElementType_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingMesh_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRelAggregates_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssigns_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociates_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X3_RC1_IfcRelAssociatesProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnects_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsElements_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X3_RC1_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC1_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X3_RC1_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X3_RC1_IfcRelDeclares_type); - declarations.push_back(IFC4X3_RC1_IfcRelDecomposes_type); - declarations.push_back(IFC4X3_RC1_IfcRelDefines_type); - declarations.push_back(IFC4X3_RC1_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X3_RC1_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X3_RC1_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X3_RC1_IfcRelDefinesByType_type); - declarations.push_back(IFC4X3_RC1_IfcRelFillsElement_type); - declarations.push_back(IFC4X3_RC1_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X3_RC1_IfcRelInterferesElements_type); - declarations.push_back(IFC4X3_RC1_IfcRelNests_type); - declarations.push_back(IFC4X3_RC1_IfcRelPositions_type); - declarations.push_back(IFC4X3_RC1_IfcRelProjectsElement_type); - declarations.push_back(IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC1_IfcRelSequence_type); - declarations.push_back(IFC4X3_RC1_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X3_RC1_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X3_RC1_IfcRelVoidsElement_type); - declarations.push_back(IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC1_IfcRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcRepresentationContext_type); - declarations.push_back(IFC4X3_RC1_IfcRepresentationItem_type); - declarations.push_back(IFC4X3_RC1_IfcRepresentationMap_type); - declarations.push_back(IFC4X3_RC1_IfcResource_type); - declarations.push_back(IFC4X3_RC1_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X3_RC1_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X3_RC1_IfcResourceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcResourceTime_type); - declarations.push_back(IFC4X3_RC1_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC1_IfcRightCircularCone_type); - declarations.push_back(IFC4X3_RC1_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X3_RC1_IfcRoad_type); - declarations.push_back(IFC4X3_RC1_IfcRoadPartTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRoleEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRoof_type); - declarations.push_back(IFC4X3_RC1_IfcRoofType_type); - declarations.push_back(IFC4X3_RC1_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcRoot_type); - declarations.push_back(IFC4X3_RC1_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC1_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSchedulingTime_type); - declarations.push_back(IFC4X3_RC1_IfcSeamCurve_type); - declarations.push_back(IFC4X3_RC1_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSectionedSolid_type); - declarations.push_back(IFC4X3_RC1_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X3_RC1_IfcSectionedSpine_type); - declarations.push_back(IFC4X3_RC1_IfcSectionedSurface_type); - declarations.push_back(IFC4X3_RC1_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSectionProperties_type); - declarations.push_back(IFC4X3_RC1_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X3_RC1_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X3_RC1_IfcSensor_type); - declarations.push_back(IFC4X3_RC1_IfcSensorType_type); - declarations.push_back(IFC4X3_RC1_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSequenceEnum_type); - declarations.push_back(IFC4X3_RC1_IfcShadingDevice_type); - declarations.push_back(IFC4X3_RC1_IfcShadingDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcShapeAspect_type); - declarations.push_back(IFC4X3_RC1_IfcShapeModel_type); - declarations.push_back(IFC4X3_RC1_IfcShapeRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcShell_type); - declarations.push_back(IFC4X3_RC1_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC1_IfcSign_type); - declarations.push_back(IFC4X3_RC1_IfcSignal_type); - declarations.push_back(IFC4X3_RC1_IfcSignalType_type); - declarations.push_back(IFC4X3_RC1_IfcSignalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSignType_type); - declarations.push_back(IFC4X3_RC1_IfcSignTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSimpleProperty_type); - declarations.push_back(IFC4X3_RC1_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSimpleValue_type); - declarations.push_back(IFC4X3_RC1_IfcSIPrefix_type); - declarations.push_back(IFC4X3_RC1_IfcSite_type); - declarations.push_back(IFC4X3_RC1_IfcSIUnit_type); - declarations.push_back(IFC4X3_RC1_IfcSIUnitName_type); - declarations.push_back(IFC4X3_RC1_IfcSizeSelect_type); - declarations.push_back(IFC4X3_RC1_IfcSlab_type); - declarations.push_back(IFC4X3_RC1_IfcSlabElementedCase_type); - declarations.push_back(IFC4X3_RC1_IfcSlabStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcSlabType_type); - declarations.push_back(IFC4X3_RC1_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X3_RC1_IfcSolarDevice_type); - declarations.push_back(IFC4X3_RC1_IfcSolarDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSolidModel_type); - declarations.push_back(IFC4X3_RC1_IfcSolidOrShell_type); - declarations.push_back(IFC4X3_RC1_IfcSolidStratum_type); - declarations.push_back(IFC4X3_RC1_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSpace_type); - declarations.push_back(IFC4X3_RC1_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X3_RC1_IfcSpaceHeater_type); - declarations.push_back(IFC4X3_RC1_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSpaceType_type); - declarations.push_back(IFC4X3_RC1_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialElement_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialElementType_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialReferenceSelect_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialZone_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialZoneType_type); - declarations.push_back(IFC4X3_RC1_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcSpecularExponent_type); - declarations.push_back(IFC4X3_RC1_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X3_RC1_IfcSpecularRoughness_type); - declarations.push_back(IFC4X3_RC1_IfcSphere_type); - declarations.push_back(IFC4X3_RC1_IfcSphericalSurface_type); - declarations.push_back(IFC4X3_RC1_IfcStackTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcStackTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStair_type); - declarations.push_back(IFC4X3_RC1_IfcStairFlight_type); - declarations.push_back(IFC4X3_RC1_IfcStairFlightType_type); - declarations.push_back(IFC4X3_RC1_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStairType_type); - declarations.push_back(IFC4X3_RC1_IfcStairTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStateEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralAction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralActivity_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralConnection_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralItem_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoad_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralMember_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralPointAction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralReaction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X3_RC1_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X3_RC1_IfcStyleAssignmentSelect_type); - declarations.push_back(IFC4X3_RC1_IfcStyledItem_type); - declarations.push_back(IFC4X3_RC1_IfcStyledRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcStyleModel_type); - declarations.push_back(IFC4X3_RC1_IfcSubContractResource_type); - declarations.push_back(IFC4X3_RC1_IfcSubContractResourceType_type); - declarations.push_back(IFC4X3_RC1_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSubedge_type); - declarations.push_back(IFC4X3_RC1_IfcSurface_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceCurve_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceFeature_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceSide_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyle_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X3_RC1_IfcSurfaceTexture_type); - declarations.push_back(IFC4X3_RC1_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC1_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X3_RC1_IfcSweptSurface_type); - declarations.push_back(IFC4X3_RC1_IfcSwitchingDevice_type); - declarations.push_back(IFC4X3_RC1_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcSystem_type); - declarations.push_back(IFC4X3_RC1_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X3_RC1_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTable_type); - declarations.push_back(IFC4X3_RC1_IfcTableColumn_type); - declarations.push_back(IFC4X3_RC1_IfcTableRow_type); - declarations.push_back(IFC4X3_RC1_IfcTank_type); - declarations.push_back(IFC4X3_RC1_IfcTankType_type); - declarations.push_back(IFC4X3_RC1_IfcTankTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTask_type); - declarations.push_back(IFC4X3_RC1_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTaskTime_type); - declarations.push_back(IFC4X3_RC1_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X3_RC1_IfcTaskType_type); - declarations.push_back(IFC4X3_RC1_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTelecomAddress_type); - declarations.push_back(IFC4X3_RC1_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcTendon_type); - declarations.push_back(IFC4X3_RC1_IfcTendonAnchor_type); - declarations.push_back(IFC4X3_RC1_IfcTendonAnchorType_type); - declarations.push_back(IFC4X3_RC1_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTendonConduit_type); - declarations.push_back(IFC4X3_RC1_IfcTendonConduitType_type); - declarations.push_back(IFC4X3_RC1_IfcTendonConduitTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTendonType_type); - declarations.push_back(IFC4X3_RC1_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X3_RC1_IfcTessellatedItem_type); - declarations.push_back(IFC4X3_RC1_IfcText_type); - declarations.push_back(IFC4X3_RC1_IfcTextAlignment_type); - declarations.push_back(IFC4X3_RC1_IfcTextDecoration_type); - declarations.push_back(IFC4X3_RC1_IfcTextFontName_type); - declarations.push_back(IFC4X3_RC1_IfcTextFontSelect_type); - declarations.push_back(IFC4X3_RC1_IfcTextLiteral_type); - declarations.push_back(IFC4X3_RC1_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X3_RC1_IfcTextPath_type); - declarations.push_back(IFC4X3_RC1_IfcTextStyle_type); - declarations.push_back(IFC4X3_RC1_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X3_RC1_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X3_RC1_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X3_RC1_IfcTextTransformation_type); - declarations.push_back(IFC4X3_RC1_IfcTextureCoordinate_type); - declarations.push_back(IFC4X3_RC1_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X3_RC1_IfcTextureMap_type); - declarations.push_back(IFC4X3_RC1_IfcTextureVertex_type); - declarations.push_back(IFC4X3_RC1_IfcTextureVertexList_type); - declarations.push_back(IFC4X3_RC1_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcTime_type); - declarations.push_back(IFC4X3_RC1_IfcTimeMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X3_RC1_IfcTimePeriod_type); - declarations.push_back(IFC4X3_RC1_IfcTimeSeries_type); - declarations.push_back(IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC1_IfcTimeStamp_type); - declarations.push_back(IFC4X3_RC1_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X3_RC1_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X3_RC1_IfcToroidalSurface_type); - declarations.push_back(IFC4X3_RC1_IfcTorqueMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcTrackElement_type); - declarations.push_back(IFC4X3_RC1_IfcTrackElementType_type); - declarations.push_back(IFC4X3_RC1_IfcTrackElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTransformer_type); - declarations.push_back(IFC4X3_RC1_IfcTransformerType_type); - declarations.push_back(IFC4X3_RC1_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTransitionCode_type); - declarations.push_back(IFC4X3_RC1_IfcTransitionCurveSegment2D_type); - declarations.push_back(IFC4X3_RC1_IfcTransitionCurveType_type); - declarations.push_back(IFC4X3_RC1_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC1_IfcTransportElement_type); - declarations.push_back(IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTransportElementType_type); - declarations.push_back(IFC4X3_RC1_IfcTransportElementTypeSelect_type); - declarations.push_back(IFC4X3_RC1_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X3_RC1_IfcTrimmedCurve_type); - declarations.push_back(IFC4X3_RC1_IfcTrimmingPreference_type); - declarations.push_back(IFC4X3_RC1_IfcTrimmingSelect_type); - declarations.push_back(IFC4X3_RC1_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcTubeBundle_type); - declarations.push_back(IFC4X3_RC1_IfcTubeBundleType_type); - declarations.push_back(IFC4X3_RC1_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcTypeObject_type); - declarations.push_back(IFC4X3_RC1_IfcTypeProcess_type); - declarations.push_back(IFC4X3_RC1_IfcTypeProduct_type); - declarations.push_back(IFC4X3_RC1_IfcTypeResource_type); - declarations.push_back(IFC4X3_RC1_IfcUnit_type); - declarations.push_back(IFC4X3_RC1_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X3_RC1_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X3_RC1_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcUnitAssignment_type); - declarations.push_back(IFC4X3_RC1_IfcUnitEnum_type); - declarations.push_back(IFC4X3_RC1_IfcURIReference_type); - declarations.push_back(IFC4X3_RC1_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X3_RC1_IfcValue_type); - declarations.push_back(IFC4X3_RC1_IfcValve_type); - declarations.push_back(IFC4X3_RC1_IfcValveType_type); - declarations.push_back(IFC4X3_RC1_IfcValveTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcVector_type); - declarations.push_back(IFC4X3_RC1_IfcVectorOrDirection_type); - declarations.push_back(IFC4X3_RC1_IfcVertex_type); - declarations.push_back(IFC4X3_RC1_IfcVertexLoop_type); - declarations.push_back(IFC4X3_RC1_IfcVertexPoint_type); - declarations.push_back(IFC4X3_RC1_IfcVibrationDamper_type); - declarations.push_back(IFC4X3_RC1_IfcVibrationDamperType_type); - declarations.push_back(IFC4X3_RC1_IfcVibrationDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcVibrationIsolator_type); - declarations.push_back(IFC4X3_RC1_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcVirtualElement_type); - declarations.push_back(IFC4X3_RC1_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X3_RC1_IfcVoidingFeature_type); - declarations.push_back(IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcVoidStratum_type); - declarations.push_back(IFC4X3_RC1_IfcVolumeMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcWall_type); - declarations.push_back(IFC4X3_RC1_IfcWallElementedCase_type); - declarations.push_back(IFC4X3_RC1_IfcWallStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcWallType_type); - declarations.push_back(IFC4X3_RC1_IfcWallTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X3_RC1_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X3_RC1_IfcWasteTerminal_type); - declarations.push_back(IFC4X3_RC1_IfcWasteTerminalType_type); - declarations.push_back(IFC4X3_RC1_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWaterStratum_type); - declarations.push_back(IFC4X3_RC1_IfcWindow_type); - declarations.push_back(IFC4X3_RC1_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X3_RC1_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X3_RC1_IfcWindowStandardCase_type); - declarations.push_back(IFC4X3_RC1_IfcWindowStyle_type); - declarations.push_back(IFC4X3_RC1_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWindowType_type); - declarations.push_back(IFC4X3_RC1_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWorkCalendar_type); - declarations.push_back(IFC4X3_RC1_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWorkControl_type); - declarations.push_back(IFC4X3_RC1_IfcWorkPlan_type); - declarations.push_back(IFC4X3_RC1_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWorkSchedule_type); - declarations.push_back(IFC4X3_RC1_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC1_IfcWorkTime_type); - declarations.push_back(IFC4X3_RC1_IfcZone_type); - declarations.push_back(IFC4X3_RC1_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X3_RC1", declarations, new IFC4X3_RC1_instance_factory()); + std::vector declarations= { + IFC4X3_RC1_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC1_IfcAccelerationMeasure_type, + IFC4X3_RC1_IfcActionRequest_type, + IFC4X3_RC1_IfcActionRequestTypeEnum_type, + IFC4X3_RC1_IfcActionSourceTypeEnum_type, + IFC4X3_RC1_IfcActionTypeEnum_type, + IFC4X3_RC1_IfcActor_type, + IFC4X3_RC1_IfcActorRole_type, + IFC4X3_RC1_IfcActorSelect_type, + IFC4X3_RC1_IfcActuator_type, + IFC4X3_RC1_IfcActuatorType_type, + IFC4X3_RC1_IfcActuatorTypeEnum_type, + IFC4X3_RC1_IfcAddress_type, + IFC4X3_RC1_IfcAddressTypeEnum_type, + IFC4X3_RC1_IfcAdvancedBrep_type, + IFC4X3_RC1_IfcAdvancedBrepWithVoids_type, + IFC4X3_RC1_IfcAdvancedFace_type, + IFC4X3_RC1_IfcAirTerminal_type, + IFC4X3_RC1_IfcAirTerminalBox_type, + IFC4X3_RC1_IfcAirTerminalBoxType_type, + IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type, + IFC4X3_RC1_IfcAirTerminalType_type, + IFC4X3_RC1_IfcAirTerminalTypeEnum_type, + IFC4X3_RC1_IfcAirToAirHeatRecovery_type, + IFC4X3_RC1_IfcAirToAirHeatRecoveryType_type, + IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X3_RC1_IfcAlarm_type, + IFC4X3_RC1_IfcAlarmType_type, + IFC4X3_RC1_IfcAlarmTypeEnum_type, + IFC4X3_RC1_IfcAlignment_type, + IFC4X3_RC1_IfcAlignment2DCant_type, + IFC4X3_RC1_IfcAlignment2DCantSegLine_type, + IFC4X3_RC1_IfcAlignment2DCantSegment_type, + IFC4X3_RC1_IfcAlignment2DCantSegTransition_type, + IFC4X3_RC1_IfcAlignment2DHorizontal_type, + IFC4X3_RC1_IfcAlignment2DHorizontalSegment_type, + IFC4X3_RC1_IfcAlignment2DSegment_type, + IFC4X3_RC1_IfcAlignment2DVerSegCircularArc_type, + IFC4X3_RC1_IfcAlignment2DVerSegLine_type, + IFC4X3_RC1_IfcAlignment2DVerSegParabolicArc_type, + IFC4X3_RC1_IfcAlignment2DVerSegTransition_type, + IFC4X3_RC1_IfcAlignment2DVertical_type, + IFC4X3_RC1_IfcAlignment2DVerticalSegment_type, + IFC4X3_RC1_IfcAlignmentCurve_type, + IFC4X3_RC1_IfcAlignmentTypeEnum_type, + IFC4X3_RC1_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC1_IfcAnalysisModelTypeEnum_type, + IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type, + IFC4X3_RC1_IfcAngularVelocityMeasure_type, + IFC4X3_RC1_IfcAnnotation_type, + IFC4X3_RC1_IfcAnnotationFillArea_type, + IFC4X3_RC1_IfcAnnotationTypeEnum_type, + IFC4X3_RC1_IfcApplication_type, + IFC4X3_RC1_IfcAppliedValue_type, + IFC4X3_RC1_IfcAppliedValueSelect_type, + IFC4X3_RC1_IfcApproval_type, + IFC4X3_RC1_IfcApprovalRelationship_type, + IFC4X3_RC1_IfcArbitraryClosedProfileDef_type, + IFC4X3_RC1_IfcArbitraryOpenProfileDef_type, + IFC4X3_RC1_IfcArbitraryProfileDefWithVoids_type, + IFC4X3_RC1_IfcArcIndex_type, + IFC4X3_RC1_IfcAreaDensityMeasure_type, + IFC4X3_RC1_IfcAreaMeasure_type, + IFC4X3_RC1_IfcArithmeticOperatorEnum_type, + IFC4X3_RC1_IfcAssemblyPlaceEnum_type, + IFC4X3_RC1_IfcAsset_type, + IFC4X3_RC1_IfcAsymmetricIShapeProfileDef_type, + IFC4X3_RC1_IfcAudioVisualAppliance_type, + IFC4X3_RC1_IfcAudioVisualApplianceType_type, + IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type, + IFC4X3_RC1_IfcAxis1Placement_type, + IFC4X3_RC1_IfcAxis2Placement_type, + IFC4X3_RC1_IfcAxis2Placement2D_type, + IFC4X3_RC1_IfcAxis2Placement3D_type, + IFC4X3_RC1_IfcAxisLateralInclination_type, + IFC4X3_RC1_IfcBeam_type, + IFC4X3_RC1_IfcBeamStandardCase_type, + IFC4X3_RC1_IfcBeamType_type, + IFC4X3_RC1_IfcBeamTypeEnum_type, + IFC4X3_RC1_IfcBearing_type, + IFC4X3_RC1_IfcBearingType_type, + IFC4X3_RC1_IfcBearingTypeDisplacementEnum_type, + IFC4X3_RC1_IfcBearingTypeEnum_type, + IFC4X3_RC1_IfcBenchmarkEnum_type, + IFC4X3_RC1_IfcBendingParameterSelect_type, + IFC4X3_RC1_IfcBinary_type, + IFC4X3_RC1_IfcBlobTexture_type, + IFC4X3_RC1_IfcBlock_type, + IFC4X3_RC1_IfcBoiler_type, + IFC4X3_RC1_IfcBoilerType_type, + IFC4X3_RC1_IfcBoilerTypeEnum_type, + IFC4X3_RC1_IfcBoolean_type, + IFC4X3_RC1_IfcBooleanClippingResult_type, + IFC4X3_RC1_IfcBooleanOperand_type, + IFC4X3_RC1_IfcBooleanOperator_type, + IFC4X3_RC1_IfcBooleanResult_type, + IFC4X3_RC1_IfcBorehole_type, + IFC4X3_RC1_IfcBoundaryCondition_type, + IFC4X3_RC1_IfcBoundaryCurve_type, + IFC4X3_RC1_IfcBoundaryEdgeCondition_type, + IFC4X3_RC1_IfcBoundaryFaceCondition_type, + IFC4X3_RC1_IfcBoundaryNodeCondition_type, + IFC4X3_RC1_IfcBoundaryNodeConditionWarping_type, + IFC4X3_RC1_IfcBoundedCurve_type, + IFC4X3_RC1_IfcBoundedSurface_type, + IFC4X3_RC1_IfcBoundingBox_type, + IFC4X3_RC1_IfcBoxAlignment_type, + IFC4X3_RC1_IfcBoxedHalfSpace_type, + IFC4X3_RC1_IfcBridge_type, + IFC4X3_RC1_IfcBridgePart_type, + IFC4X3_RC1_IfcBridgePartTypeEnum_type, + IFC4X3_RC1_IfcBridgeTypeEnum_type, + IFC4X3_RC1_IfcBSplineCurve_type, + IFC4X3_RC1_IfcBSplineCurveForm_type, + IFC4X3_RC1_IfcBSplineCurveWithKnots_type, + IFC4X3_RC1_IfcBSplineSurface_type, + IFC4X3_RC1_IfcBSplineSurfaceForm_type, + IFC4X3_RC1_IfcBSplineSurfaceWithKnots_type, + IFC4X3_RC1_IfcBuilding_type, + IFC4X3_RC1_IfcBuildingElementPart_type, + IFC4X3_RC1_IfcBuildingElementPartType_type, + IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type, + IFC4X3_RC1_IfcBuildingElementProxy_type, + IFC4X3_RC1_IfcBuildingElementProxyType_type, + IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type, + IFC4X3_RC1_IfcBuildingStorey_type, + IFC4X3_RC1_IfcBuildingSystem_type, + IFC4X3_RC1_IfcBuildingSystemTypeEnum_type, + IFC4X3_RC1_IfcBuiltElement_type, + IFC4X3_RC1_IfcBuiltElementType_type, + IFC4X3_RC1_IfcBuiltSystem_type, + IFC4X3_RC1_IfcBuiltSystemTypeEnum_type, + IFC4X3_RC1_IfcBurner_type, + IFC4X3_RC1_IfcBurnerType_type, + IFC4X3_RC1_IfcBurnerTypeEnum_type, + IFC4X3_RC1_IfcCableCarrierFitting_type, + IFC4X3_RC1_IfcCableCarrierFittingType_type, + IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type, + IFC4X3_RC1_IfcCableCarrierSegment_type, + IFC4X3_RC1_IfcCableCarrierSegmentType_type, + IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type, + IFC4X3_RC1_IfcCableFitting_type, + IFC4X3_RC1_IfcCableFittingType_type, + IFC4X3_RC1_IfcCableFittingTypeEnum_type, + IFC4X3_RC1_IfcCableSegment_type, + IFC4X3_RC1_IfcCableSegmentType_type, + IFC4X3_RC1_IfcCableSegmentTypeEnum_type, + IFC4X3_RC1_IfcCaissonFoundation_type, + IFC4X3_RC1_IfcCaissonFoundationType_type, + IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type, + IFC4X3_RC1_IfcCardinalPointReference_type, + IFC4X3_RC1_IfcCartesianPoint_type, + IFC4X3_RC1_IfcCartesianPointList_type, + IFC4X3_RC1_IfcCartesianPointList2D_type, + IFC4X3_RC1_IfcCartesianPointList3D_type, + IFC4X3_RC1_IfcCartesianTransformationOperator_type, + IFC4X3_RC1_IfcCartesianTransformationOperator2D_type, + IFC4X3_RC1_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X3_RC1_IfcCartesianTransformationOperator3D_type, + IFC4X3_RC1_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X3_RC1_IfcCenterLineProfileDef_type, + IFC4X3_RC1_IfcChangeActionEnum_type, + IFC4X3_RC1_IfcChiller_type, + IFC4X3_RC1_IfcChillerType_type, + IFC4X3_RC1_IfcChillerTypeEnum_type, + IFC4X3_RC1_IfcChimney_type, + IFC4X3_RC1_IfcChimneyType_type, + IFC4X3_RC1_IfcChimneyTypeEnum_type, + IFC4X3_RC1_IfcCircle_type, + IFC4X3_RC1_IfcCircleHollowProfileDef_type, + IFC4X3_RC1_IfcCircleProfileDef_type, + IFC4X3_RC1_IfcCircularArcSegment2D_type, + IFC4X3_RC1_IfcCivilElement_type, + IFC4X3_RC1_IfcCivilElementType_type, + IFC4X3_RC1_IfcClassification_type, + IFC4X3_RC1_IfcClassificationReference_type, + IFC4X3_RC1_IfcClassificationReferenceSelect_type, + IFC4X3_RC1_IfcClassificationSelect_type, + IFC4X3_RC1_IfcClosedShell_type, + IFC4X3_RC1_IfcCoil_type, + IFC4X3_RC1_IfcCoilType_type, + IFC4X3_RC1_IfcCoilTypeEnum_type, + IFC4X3_RC1_IfcColour_type, + IFC4X3_RC1_IfcColourOrFactor_type, + IFC4X3_RC1_IfcColourRgb_type, + IFC4X3_RC1_IfcColourRgbList_type, + IFC4X3_RC1_IfcColourSpecification_type, + IFC4X3_RC1_IfcColumn_type, + IFC4X3_RC1_IfcColumnStandardCase_type, + IFC4X3_RC1_IfcColumnType_type, + IFC4X3_RC1_IfcColumnTypeEnum_type, + IFC4X3_RC1_IfcCommunicationsAppliance_type, + IFC4X3_RC1_IfcCommunicationsApplianceType_type, + IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type, + IFC4X3_RC1_IfcComplexNumber_type, + IFC4X3_RC1_IfcComplexProperty_type, + IFC4X3_RC1_IfcComplexPropertyTemplate_type, + IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X3_RC1_IfcCompositeCurve_type, + IFC4X3_RC1_IfcCompositeCurveOnSurface_type, + IFC4X3_RC1_IfcCompositeCurveSegment_type, + IFC4X3_RC1_IfcCompositeProfileDef_type, + IFC4X3_RC1_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC1_IfcCompressor_type, + IFC4X3_RC1_IfcCompressorType_type, + IFC4X3_RC1_IfcCompressorTypeEnum_type, + IFC4X3_RC1_IfcCondenser_type, + IFC4X3_RC1_IfcCondenserType_type, + IFC4X3_RC1_IfcCondenserTypeEnum_type, + IFC4X3_RC1_IfcConic_type, + IFC4X3_RC1_IfcConnectedFaceSet_type, + IFC4X3_RC1_IfcConnectionCurveGeometry_type, + IFC4X3_RC1_IfcConnectionGeometry_type, + IFC4X3_RC1_IfcConnectionPointEccentricity_type, + IFC4X3_RC1_IfcConnectionPointGeometry_type, + IFC4X3_RC1_IfcConnectionSurfaceGeometry_type, + IFC4X3_RC1_IfcConnectionTypeEnum_type, + IFC4X3_RC1_IfcConnectionVolumeGeometry_type, + IFC4X3_RC1_IfcConstraint_type, + IFC4X3_RC1_IfcConstraintEnum_type, + IFC4X3_RC1_IfcConstructionEquipmentResource_type, + IFC4X3_RC1_IfcConstructionEquipmentResourceType_type, + IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X3_RC1_IfcConstructionMaterialResource_type, + IFC4X3_RC1_IfcConstructionMaterialResourceType_type, + IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X3_RC1_IfcConstructionProductResource_type, + IFC4X3_RC1_IfcConstructionProductResourceType_type, + IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type, + IFC4X3_RC1_IfcConstructionResource_type, + IFC4X3_RC1_IfcConstructionResourceType_type, + IFC4X3_RC1_IfcContext_type, + IFC4X3_RC1_IfcContextDependentMeasure_type, + IFC4X3_RC1_IfcContextDependentUnit_type, + IFC4X3_RC1_IfcControl_type, + IFC4X3_RC1_IfcController_type, + IFC4X3_RC1_IfcControllerType_type, + IFC4X3_RC1_IfcControllerTypeEnum_type, + IFC4X3_RC1_IfcConversionBasedUnit_type, + IFC4X3_RC1_IfcConversionBasedUnitWithOffset_type, + IFC4X3_RC1_IfcConveyorSegment_type, + IFC4X3_RC1_IfcConveyorSegmentType_type, + IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type, + IFC4X3_RC1_IfcCooledBeam_type, + IFC4X3_RC1_IfcCooledBeamType_type, + IFC4X3_RC1_IfcCooledBeamTypeEnum_type, + IFC4X3_RC1_IfcCoolingTower_type, + IFC4X3_RC1_IfcCoolingTowerType_type, + IFC4X3_RC1_IfcCoolingTowerTypeEnum_type, + IFC4X3_RC1_IfcCoordinateOperation_type, + IFC4X3_RC1_IfcCoordinateReferenceSystem_type, + IFC4X3_RC1_IfcCoordinateReferenceSystemSelect_type, + IFC4X3_RC1_IfcCostItem_type, + IFC4X3_RC1_IfcCostItemTypeEnum_type, + IFC4X3_RC1_IfcCostSchedule_type, + IFC4X3_RC1_IfcCostScheduleTypeEnum_type, + IFC4X3_RC1_IfcCostValue_type, + IFC4X3_RC1_IfcCountMeasure_type, + IFC4X3_RC1_IfcCourse_type, + IFC4X3_RC1_IfcCourseType_type, + IFC4X3_RC1_IfcCourseTypeEnum_type, + IFC4X3_RC1_IfcCovering_type, + IFC4X3_RC1_IfcCoveringType_type, + IFC4X3_RC1_IfcCoveringTypeEnum_type, + IFC4X3_RC1_IfcCrewResource_type, + IFC4X3_RC1_IfcCrewResourceType_type, + IFC4X3_RC1_IfcCrewResourceTypeEnum_type, + IFC4X3_RC1_IfcCsgPrimitive3D_type, + IFC4X3_RC1_IfcCsgSelect_type, + IFC4X3_RC1_IfcCsgSolid_type, + IFC4X3_RC1_IfcCShapeProfileDef_type, + IFC4X3_RC1_IfcCurrencyRelationship_type, + IFC4X3_RC1_IfcCurtainWall_type, + IFC4X3_RC1_IfcCurtainWallType_type, + IFC4X3_RC1_IfcCurtainWallTypeEnum_type, + IFC4X3_RC1_IfcCurvatureMeasure_type, + IFC4X3_RC1_IfcCurve_type, + IFC4X3_RC1_IfcCurveBoundedPlane_type, + IFC4X3_RC1_IfcCurveBoundedSurface_type, + IFC4X3_RC1_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X3_RC1_IfcCurveInterpolationEnum_type, + IFC4X3_RC1_IfcCurveOnSurface_type, + IFC4X3_RC1_IfcCurveOrEdgeCurve_type, + IFC4X3_RC1_IfcCurveSegment2D_type, + IFC4X3_RC1_IfcCurveStyle_type, + IFC4X3_RC1_IfcCurveStyleFont_type, + IFC4X3_RC1_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC1_IfcCurveStyleFontPattern_type, + IFC4X3_RC1_IfcCurveStyleFontSelect_type, + IFC4X3_RC1_IfcCylindricalSurface_type, + IFC4X3_RC1_IfcDamper_type, + IFC4X3_RC1_IfcDamperType_type, + IFC4X3_RC1_IfcDamperTypeEnum_type, + IFC4X3_RC1_IfcDataOriginEnum_type, + IFC4X3_RC1_IfcDate_type, + IFC4X3_RC1_IfcDateTime_type, + IFC4X3_RC1_IfcDayInMonthNumber_type, + IFC4X3_RC1_IfcDayInWeekNumber_type, + IFC4X3_RC1_IfcDeepFoundation_type, + IFC4X3_RC1_IfcDeepFoundationType_type, + IFC4X3_RC1_IfcDefinitionSelect_type, + IFC4X3_RC1_IfcDerivedMeasureValue_type, + IFC4X3_RC1_IfcDerivedProfileDef_type, + IFC4X3_RC1_IfcDerivedUnit_type, + IFC4X3_RC1_IfcDerivedUnitElement_type, + IFC4X3_RC1_IfcDerivedUnitEnum_type, + IFC4X3_RC1_IfcDescriptiveMeasure_type, + IFC4X3_RC1_IfcDimensionalExponents_type, + IFC4X3_RC1_IfcDimensionCount_type, + IFC4X3_RC1_IfcDirection_type, + IFC4X3_RC1_IfcDirectionSenseEnum_type, + IFC4X3_RC1_IfcDirectrixCurveSweptAreaSolid_type, + IFC4X3_RC1_IfcDirectrixDistanceSweptAreaSolid_type, + IFC4X3_RC1_IfcDiscreteAccessory_type, + IFC4X3_RC1_IfcDiscreteAccessoryType_type, + IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type, + IFC4X3_RC1_IfcDistanceExpression_type, + IFC4X3_RC1_IfcDistributionBoard_type, + IFC4X3_RC1_IfcDistributionBoardType_type, + IFC4X3_RC1_IfcDistributionBoardTypeEnum_type, + IFC4X3_RC1_IfcDistributionChamberElement_type, + IFC4X3_RC1_IfcDistributionChamberElementType_type, + IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type, + IFC4X3_RC1_IfcDistributionCircuit_type, + IFC4X3_RC1_IfcDistributionControlElement_type, + IFC4X3_RC1_IfcDistributionControlElementType_type, + IFC4X3_RC1_IfcDistributionElement_type, + IFC4X3_RC1_IfcDistributionElementType_type, + IFC4X3_RC1_IfcDistributionFlowElement_type, + IFC4X3_RC1_IfcDistributionFlowElementType_type, + IFC4X3_RC1_IfcDistributionPort_type, + IFC4X3_RC1_IfcDistributionPortTypeEnum_type, + IFC4X3_RC1_IfcDistributionSystem_type, + IFC4X3_RC1_IfcDistributionSystemEnum_type, + IFC4X3_RC1_IfcDocumentConfidentialityEnum_type, + IFC4X3_RC1_IfcDocumentInformation_type, + IFC4X3_RC1_IfcDocumentInformationRelationship_type, + IFC4X3_RC1_IfcDocumentReference_type, + IFC4X3_RC1_IfcDocumentSelect_type, + IFC4X3_RC1_IfcDocumentStatusEnum_type, + IFC4X3_RC1_IfcDoor_type, + IFC4X3_RC1_IfcDoorLiningProperties_type, + IFC4X3_RC1_IfcDoorPanelOperationEnum_type, + IFC4X3_RC1_IfcDoorPanelPositionEnum_type, + IFC4X3_RC1_IfcDoorPanelProperties_type, + IFC4X3_RC1_IfcDoorStandardCase_type, + IFC4X3_RC1_IfcDoorStyle_type, + IFC4X3_RC1_IfcDoorStyleConstructionEnum_type, + IFC4X3_RC1_IfcDoorStyleOperationEnum_type, + IFC4X3_RC1_IfcDoorType_type, + IFC4X3_RC1_IfcDoorTypeEnum_type, + IFC4X3_RC1_IfcDoorTypeOperationEnum_type, + IFC4X3_RC1_IfcDoseEquivalentMeasure_type, + IFC4X3_RC1_IfcDraughtingPreDefinedColour_type, + IFC4X3_RC1_IfcDraughtingPreDefinedCurveFont_type, + IFC4X3_RC1_IfcDuctFitting_type, + IFC4X3_RC1_IfcDuctFittingType_type, + IFC4X3_RC1_IfcDuctFittingTypeEnum_type, + IFC4X3_RC1_IfcDuctSegment_type, + IFC4X3_RC1_IfcDuctSegmentType_type, + IFC4X3_RC1_IfcDuctSegmentTypeEnum_type, + IFC4X3_RC1_IfcDuctSilencer_type, + IFC4X3_RC1_IfcDuctSilencerType_type, + IFC4X3_RC1_IfcDuctSilencerTypeEnum_type, + IFC4X3_RC1_IfcDuration_type, + IFC4X3_RC1_IfcDynamicViscosityMeasure_type, + IFC4X3_RC1_IfcEarthworksCut_type, + IFC4X3_RC1_IfcEarthworksCutTypeEnum_type, + IFC4X3_RC1_IfcEarthworksElement_type, + IFC4X3_RC1_IfcEarthworksFill_type, + IFC4X3_RC1_IfcEarthworksFillTypeEnum_type, + IFC4X3_RC1_IfcEdge_type, + IFC4X3_RC1_IfcEdgeCurve_type, + IFC4X3_RC1_IfcEdgeLoop_type, + IFC4X3_RC1_IfcElectricAppliance_type, + IFC4X3_RC1_IfcElectricApplianceType_type, + IFC4X3_RC1_IfcElectricApplianceTypeEnum_type, + IFC4X3_RC1_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC1_IfcElectricChargeMeasure_type, + IFC4X3_RC1_IfcElectricConductanceMeasure_type, + IFC4X3_RC1_IfcElectricCurrentMeasure_type, + IFC4X3_RC1_IfcElectricDistributionBoard_type, + IFC4X3_RC1_IfcElectricDistributionBoardType_type, + IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type, + IFC4X3_RC1_IfcElectricFlowStorageDevice_type, + IFC4X3_RC1_IfcElectricFlowStorageDeviceType_type, + IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X3_RC1_IfcElectricFlowTreatmentDevice_type, + IFC4X3_RC1_IfcElectricFlowTreatmentDeviceType_type, + IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type, + IFC4X3_RC1_IfcElectricGenerator_type, + IFC4X3_RC1_IfcElectricGeneratorType_type, + IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type, + IFC4X3_RC1_IfcElectricMotor_type, + IFC4X3_RC1_IfcElectricMotorType_type, + IFC4X3_RC1_IfcElectricMotorTypeEnum_type, + IFC4X3_RC1_IfcElectricResistanceMeasure_type, + IFC4X3_RC1_IfcElectricTimeControl_type, + IFC4X3_RC1_IfcElectricTimeControlType_type, + IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type, + IFC4X3_RC1_IfcElectricVoltageMeasure_type, + IFC4X3_RC1_IfcElement_type, + IFC4X3_RC1_IfcElementarySurface_type, + IFC4X3_RC1_IfcElementAssembly_type, + IFC4X3_RC1_IfcElementAssemblyType_type, + IFC4X3_RC1_IfcElementAssemblyTypeEnum_type, + IFC4X3_RC1_IfcElementComponent_type, + IFC4X3_RC1_IfcElementComponentType_type, + IFC4X3_RC1_IfcElementCompositionEnum_type, + IFC4X3_RC1_IfcElementQuantity_type, + IFC4X3_RC1_IfcElementType_type, + IFC4X3_RC1_IfcEllipse_type, + IFC4X3_RC1_IfcEllipseProfileDef_type, + IFC4X3_RC1_IfcEnergyConversionDevice_type, + IFC4X3_RC1_IfcEnergyConversionDeviceType_type, + IFC4X3_RC1_IfcEnergyMeasure_type, + IFC4X3_RC1_IfcEngine_type, + IFC4X3_RC1_IfcEngineType_type, + IFC4X3_RC1_IfcEngineTypeEnum_type, + IFC4X3_RC1_IfcEvaporativeCooler_type, + IFC4X3_RC1_IfcEvaporativeCoolerType_type, + IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type, + IFC4X3_RC1_IfcEvaporator_type, + IFC4X3_RC1_IfcEvaporatorType_type, + IFC4X3_RC1_IfcEvaporatorTypeEnum_type, + IFC4X3_RC1_IfcEvent_type, + IFC4X3_RC1_IfcEventTime_type, + IFC4X3_RC1_IfcEventTriggerTypeEnum_type, + IFC4X3_RC1_IfcEventType_type, + IFC4X3_RC1_IfcEventTypeEnum_type, + IFC4X3_RC1_IfcExtendedProperties_type, + IFC4X3_RC1_IfcExternalInformation_type, + IFC4X3_RC1_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC1_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC1_IfcExternallyDefinedTextFont_type, + IFC4X3_RC1_IfcExternalReference_type, + IFC4X3_RC1_IfcExternalReferenceRelationship_type, + IFC4X3_RC1_IfcExternalSpatialElement_type, + IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type, + IFC4X3_RC1_IfcExternalSpatialStructureElement_type, + IFC4X3_RC1_IfcExtrudedAreaSolid_type, + IFC4X3_RC1_IfcExtrudedAreaSolidTapered_type, + IFC4X3_RC1_IfcFace_type, + IFC4X3_RC1_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC1_IfcFaceBound_type, + IFC4X3_RC1_IfcFaceOuterBound_type, + IFC4X3_RC1_IfcFaceSurface_type, + IFC4X3_RC1_IfcFacetedBrep_type, + IFC4X3_RC1_IfcFacetedBrepWithVoids_type, + IFC4X3_RC1_IfcFacility_type, + IFC4X3_RC1_IfcFacilityPart_type, + IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC1_IfcFacilityPartTypeSelect_type, + IFC4X3_RC1_IfcFacilityUsageEnum_type, + IFC4X3_RC1_IfcFailureConnectionCondition_type, + IFC4X3_RC1_IfcFan_type, + IFC4X3_RC1_IfcFanType_type, + IFC4X3_RC1_IfcFanTypeEnum_type, + IFC4X3_RC1_IfcFastener_type, + IFC4X3_RC1_IfcFastenerType_type, + IFC4X3_RC1_IfcFastenerTypeEnum_type, + IFC4X3_RC1_IfcFeatureElement_type, + IFC4X3_RC1_IfcFeatureElementAddition_type, + IFC4X3_RC1_IfcFeatureElementSubtraction_type, + IFC4X3_RC1_IfcFillAreaStyle_type, + IFC4X3_RC1_IfcFillAreaStyleHatching_type, + IFC4X3_RC1_IfcFillAreaStyleTiles_type, + IFC4X3_RC1_IfcFillStyleSelect_type, + IFC4X3_RC1_IfcFilter_type, + IFC4X3_RC1_IfcFilterType_type, + IFC4X3_RC1_IfcFilterTypeEnum_type, + IFC4X3_RC1_IfcFireSuppressionTerminal_type, + IFC4X3_RC1_IfcFireSuppressionTerminalType_type, + IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X3_RC1_IfcFixedReferenceSweptAreaSolid_type, + IFC4X3_RC1_IfcFlowController_type, + IFC4X3_RC1_IfcFlowControllerType_type, + IFC4X3_RC1_IfcFlowDirectionEnum_type, + IFC4X3_RC1_IfcFlowFitting_type, + IFC4X3_RC1_IfcFlowFittingType_type, + IFC4X3_RC1_IfcFlowInstrument_type, + IFC4X3_RC1_IfcFlowInstrumentType_type, + IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type, + IFC4X3_RC1_IfcFlowMeter_type, + IFC4X3_RC1_IfcFlowMeterType_type, + IFC4X3_RC1_IfcFlowMeterTypeEnum_type, + IFC4X3_RC1_IfcFlowMovingDevice_type, + IFC4X3_RC1_IfcFlowMovingDeviceType_type, + IFC4X3_RC1_IfcFlowSegment_type, + IFC4X3_RC1_IfcFlowSegmentType_type, + IFC4X3_RC1_IfcFlowStorageDevice_type, + IFC4X3_RC1_IfcFlowStorageDeviceType_type, + IFC4X3_RC1_IfcFlowTerminal_type, + IFC4X3_RC1_IfcFlowTerminalType_type, + IFC4X3_RC1_IfcFlowTreatmentDevice_type, + IFC4X3_RC1_IfcFlowTreatmentDeviceType_type, + IFC4X3_RC1_IfcFontStyle_type, + IFC4X3_RC1_IfcFontVariant_type, + IFC4X3_RC1_IfcFontWeight_type, + IFC4X3_RC1_IfcFooting_type, + IFC4X3_RC1_IfcFootingType_type, + IFC4X3_RC1_IfcFootingTypeEnum_type, + IFC4X3_RC1_IfcForceMeasure_type, + IFC4X3_RC1_IfcFrequencyMeasure_type, + IFC4X3_RC1_IfcFurnishingElement_type, + IFC4X3_RC1_IfcFurnishingElementType_type, + IFC4X3_RC1_IfcFurniture_type, + IFC4X3_RC1_IfcFurnitureType_type, + IFC4X3_RC1_IfcFurnitureTypeEnum_type, + IFC4X3_RC1_IfcGeographicElement_type, + IFC4X3_RC1_IfcGeographicElementType_type, + IFC4X3_RC1_IfcGeographicElementTypeEnum_type, + IFC4X3_RC1_IfcGeometricCurveSet_type, + IFC4X3_RC1_IfcGeometricProjectionEnum_type, + IFC4X3_RC1_IfcGeometricRepresentationContext_type, + IFC4X3_RC1_IfcGeometricRepresentationItem_type, + IFC4X3_RC1_IfcGeometricRepresentationSubContext_type, + IFC4X3_RC1_IfcGeometricSet_type, + IFC4X3_RC1_IfcGeometricSetSelect_type, + IFC4X3_RC1_IfcGeomodel_type, + IFC4X3_RC1_IfcGeoslice_type, + IFC4X3_RC1_IfcGeotechnicalAssembly_type, + IFC4X3_RC1_IfcGeotechnicalElement_type, + IFC4X3_RC1_IfcGeotechnicalStratum_type, + IFC4X3_RC1_IfcGloballyUniqueId_type, + IFC4X3_RC1_IfcGlobalOrLocalEnum_type, + IFC4X3_RC1_IfcGrid_type, + IFC4X3_RC1_IfcGridAxis_type, + IFC4X3_RC1_IfcGridPlacement_type, + IFC4X3_RC1_IfcGridPlacementDirectionSelect_type, + IFC4X3_RC1_IfcGridTypeEnum_type, + IFC4X3_RC1_IfcGroup_type, + IFC4X3_RC1_IfcHalfSpaceSolid_type, + IFC4X3_RC1_IfcHatchLineDistanceSelect_type, + IFC4X3_RC1_IfcHeatExchanger_type, + IFC4X3_RC1_IfcHeatExchangerType_type, + IFC4X3_RC1_IfcHeatExchangerTypeEnum_type, + IFC4X3_RC1_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC1_IfcHeatingValueMeasure_type, + IFC4X3_RC1_IfcHumidifier_type, + IFC4X3_RC1_IfcHumidifierType_type, + IFC4X3_RC1_IfcHumidifierTypeEnum_type, + IFC4X3_RC1_IfcIdentifier_type, + IFC4X3_RC1_IfcIlluminanceMeasure_type, + IFC4X3_RC1_IfcImageTexture_type, + IFC4X3_RC1_IfcImpactProtectionDevice_type, + IFC4X3_RC1_IfcImpactProtectionDeviceType_type, + IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC1_IfcImpactProtectionDeviceTypeSelect_type, + IFC4X3_RC1_IfcInclinedReferenceSweptAreaSolid_type, + IFC4X3_RC1_IfcIndexedColourMap_type, + IFC4X3_RC1_IfcIndexedPolyCurve_type, + IFC4X3_RC1_IfcIndexedPolygonalFace_type, + IFC4X3_RC1_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X3_RC1_IfcIndexedTextureMap_type, + IFC4X3_RC1_IfcIndexedTriangleTextureMap_type, + IFC4X3_RC1_IfcInductanceMeasure_type, + IFC4X3_RC1_IfcInteger_type, + IFC4X3_RC1_IfcIntegerCountRateMeasure_type, + IFC4X3_RC1_IfcInterceptor_type, + IFC4X3_RC1_IfcInterceptorType_type, + IFC4X3_RC1_IfcInterceptorTypeEnum_type, + IFC4X3_RC1_IfcInterferenceSelect_type, + IFC4X3_RC1_IfcInternalOrExternalEnum_type, + IFC4X3_RC1_IfcIntersectionCurve_type, + IFC4X3_RC1_IfcInventory_type, + IFC4X3_RC1_IfcInventoryTypeEnum_type, + IFC4X3_RC1_IfcIonConcentrationMeasure_type, + IFC4X3_RC1_IfcIrregularTimeSeries_type, + IFC4X3_RC1_IfcIrregularTimeSeriesValue_type, + IFC4X3_RC1_IfcIShapeProfileDef_type, + IFC4X3_RC1_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC1_IfcJunctionBox_type, + IFC4X3_RC1_IfcJunctionBoxType_type, + IFC4X3_RC1_IfcJunctionBoxTypeEnum_type, + IFC4X3_RC1_IfcKerb_type, + IFC4X3_RC1_IfcKerbType_type, + IFC4X3_RC1_IfcKinematicViscosityMeasure_type, + IFC4X3_RC1_IfcKnotType_type, + IFC4X3_RC1_IfcLabel_type, + IFC4X3_RC1_IfcLaborResource_type, + IFC4X3_RC1_IfcLaborResourceType_type, + IFC4X3_RC1_IfcLaborResourceTypeEnum_type, + IFC4X3_RC1_IfcLagTime_type, + IFC4X3_RC1_IfcLamp_type, + IFC4X3_RC1_IfcLampType_type, + IFC4X3_RC1_IfcLampTypeEnum_type, + IFC4X3_RC1_IfcLanguageId_type, + IFC4X3_RC1_IfcLayeredItem_type, + IFC4X3_RC1_IfcLayerSetDirectionEnum_type, + IFC4X3_RC1_IfcLengthMeasure_type, + IFC4X3_RC1_IfcLibraryInformation_type, + IFC4X3_RC1_IfcLibraryReference_type, + IFC4X3_RC1_IfcLibrarySelect_type, + IFC4X3_RC1_IfcLightDistributionCurveEnum_type, + IFC4X3_RC1_IfcLightDistributionData_type, + IFC4X3_RC1_IfcLightDistributionDataSourceSelect_type, + IFC4X3_RC1_IfcLightEmissionSourceEnum_type, + IFC4X3_RC1_IfcLightFixture_type, + IFC4X3_RC1_IfcLightFixtureType_type, + IFC4X3_RC1_IfcLightFixtureTypeEnum_type, + IFC4X3_RC1_IfcLightIntensityDistribution_type, + IFC4X3_RC1_IfcLightSource_type, + IFC4X3_RC1_IfcLightSourceAmbient_type, + IFC4X3_RC1_IfcLightSourceDirectional_type, + IFC4X3_RC1_IfcLightSourceGoniometric_type, + IFC4X3_RC1_IfcLightSourcePositional_type, + IFC4X3_RC1_IfcLightSourceSpot_type, + IFC4X3_RC1_IfcLine_type, + IFC4X3_RC1_IfcLinearAxisSelect_type, + IFC4X3_RC1_IfcLinearAxisWithInclination_type, + IFC4X3_RC1_IfcLinearForceMeasure_type, + IFC4X3_RC1_IfcLinearMomentMeasure_type, + IFC4X3_RC1_IfcLinearPlacement_type, + IFC4X3_RC1_IfcLinearPlacementWithInclination_type, + IFC4X3_RC1_IfcLinearPositioningElement_type, + IFC4X3_RC1_IfcLinearSpanPlacement_type, + IFC4X3_RC1_IfcLinearStiffnessMeasure_type, + IFC4X3_RC1_IfcLinearVelocityMeasure_type, + IFC4X3_RC1_IfcLineIndex_type, + IFC4X3_RC1_IfcLineSegment2D_type, + IFC4X3_RC1_IfcLiquidTerminal_type, + IFC4X3_RC1_IfcLiquidTerminalType_type, + IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type, + IFC4X3_RC1_IfcLoadGroupTypeEnum_type, + IFC4X3_RC1_IfcLocalPlacement_type, + IFC4X3_RC1_IfcLogical_type, + IFC4X3_RC1_IfcLogicalOperatorEnum_type, + IFC4X3_RC1_IfcLoop_type, + IFC4X3_RC1_IfcLShapeProfileDef_type, + IFC4X3_RC1_IfcLuminousFluxMeasure_type, + IFC4X3_RC1_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC1_IfcLuminousIntensityMeasure_type, + IFC4X3_RC1_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC1_IfcMagneticFluxMeasure_type, + IFC4X3_RC1_IfcManifoldSolidBrep_type, + IFC4X3_RC1_IfcMapConversion_type, + IFC4X3_RC1_IfcMappedItem_type, + IFC4X3_RC1_IfcMarineFacility_type, + IFC4X3_RC1_IfcMarineFacilityTypeEnum_type, + IFC4X3_RC1_IfcMarinePartTypeEnum_type, + IFC4X3_RC1_IfcMassDensityMeasure_type, + IFC4X3_RC1_IfcMassFlowRateMeasure_type, + IFC4X3_RC1_IfcMassMeasure_type, + IFC4X3_RC1_IfcMassPerLengthMeasure_type, + IFC4X3_RC1_IfcMaterial_type, + IFC4X3_RC1_IfcMaterialClassificationRelationship_type, + IFC4X3_RC1_IfcMaterialConstituent_type, + IFC4X3_RC1_IfcMaterialConstituentSet_type, + IFC4X3_RC1_IfcMaterialDefinition_type, + IFC4X3_RC1_IfcMaterialDefinitionRepresentation_type, + IFC4X3_RC1_IfcMaterialLayer_type, + IFC4X3_RC1_IfcMaterialLayerSet_type, + IFC4X3_RC1_IfcMaterialLayerSetUsage_type, + IFC4X3_RC1_IfcMaterialLayerWithOffsets_type, + IFC4X3_RC1_IfcMaterialList_type, + IFC4X3_RC1_IfcMaterialProfile_type, + IFC4X3_RC1_IfcMaterialProfileSet_type, + IFC4X3_RC1_IfcMaterialProfileSetUsage_type, + IFC4X3_RC1_IfcMaterialProfileSetUsageTapering_type, + IFC4X3_RC1_IfcMaterialProfileWithOffsets_type, + IFC4X3_RC1_IfcMaterialProperties_type, + IFC4X3_RC1_IfcMaterialRelationship_type, + IFC4X3_RC1_IfcMaterialSelect_type, + IFC4X3_RC1_IfcMaterialUsageDefinition_type, + IFC4X3_RC1_IfcMeasureValue_type, + IFC4X3_RC1_IfcMeasureWithUnit_type, + IFC4X3_RC1_IfcMechanicalFastener_type, + IFC4X3_RC1_IfcMechanicalFastenerType_type, + IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type, + IFC4X3_RC1_IfcMedicalDevice_type, + IFC4X3_RC1_IfcMedicalDeviceType_type, + IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type, + IFC4X3_RC1_IfcMember_type, + IFC4X3_RC1_IfcMemberStandardCase_type, + IFC4X3_RC1_IfcMemberType_type, + IFC4X3_RC1_IfcMemberTypeEnum_type, + IFC4X3_RC1_IfcMetric_type, + IFC4X3_RC1_IfcMetricValueSelect_type, + IFC4X3_RC1_IfcMirroredProfileDef_type, + IFC4X3_RC1_IfcMobileTelecommunicationsAppliance_type, + IFC4X3_RC1_IfcMobileTelecommunicationsApplianceType_type, + IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type, + IFC4X3_RC1_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC1_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC1_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X3_RC1_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC1_IfcModulusOfSubgradeReactionSelect_type, + IFC4X3_RC1_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X3_RC1_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC1_IfcMolecularWeightMeasure_type, + IFC4X3_RC1_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC1_IfcMonetaryMeasure_type, + IFC4X3_RC1_IfcMonetaryUnit_type, + IFC4X3_RC1_IfcMonthInYearNumber_type, + IFC4X3_RC1_IfcMooringDevice_type, + IFC4X3_RC1_IfcMooringDeviceType_type, + IFC4X3_RC1_IfcMooringDeviceTypeEnum_type, + IFC4X3_RC1_IfcMotorConnection_type, + IFC4X3_RC1_IfcMotorConnectionType_type, + IFC4X3_RC1_IfcMotorConnectionTypeEnum_type, + IFC4X3_RC1_IfcNamedUnit_type, + IFC4X3_RC1_IfcNavigationElement_type, + IFC4X3_RC1_IfcNavigationElementType_type, + IFC4X3_RC1_IfcNavigationElementTypeEnum_type, + IFC4X3_RC1_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC1_IfcNormalisedRatioMeasure_type, + IFC4X3_RC1_IfcNullStyle_type, + IFC4X3_RC1_IfcNumericMeasure_type, + IFC4X3_RC1_IfcObject_type, + IFC4X3_RC1_IfcObjectDefinition_type, + IFC4X3_RC1_IfcObjective_type, + IFC4X3_RC1_IfcObjectiveEnum_type, + IFC4X3_RC1_IfcObjectPlacement_type, + IFC4X3_RC1_IfcObjectReferenceSelect_type, + IFC4X3_RC1_IfcObjectTypeEnum_type, + IFC4X3_RC1_IfcOccupant_type, + IFC4X3_RC1_IfcOccupantTypeEnum_type, + IFC4X3_RC1_IfcOffsetCurve_type, + IFC4X3_RC1_IfcOffsetCurve2D_type, + IFC4X3_RC1_IfcOffsetCurve3D_type, + IFC4X3_RC1_IfcOffsetCurveByDistances_type, + IFC4X3_RC1_IfcOpenCrossProfileDef_type, + IFC4X3_RC1_IfcOpeningElement_type, + IFC4X3_RC1_IfcOpeningElementTypeEnum_type, + IFC4X3_RC1_IfcOpeningStandardCase_type, + IFC4X3_RC1_IfcOpenShell_type, + IFC4X3_RC1_IfcOrganization_type, + IFC4X3_RC1_IfcOrganizationRelationship_type, + IFC4X3_RC1_IfcOrientationExpression_type, + IFC4X3_RC1_IfcOrientedEdge_type, + IFC4X3_RC1_IfcOuterBoundaryCurve_type, + IFC4X3_RC1_IfcOutlet_type, + IFC4X3_RC1_IfcOutletType_type, + IFC4X3_RC1_IfcOutletTypeEnum_type, + IFC4X3_RC1_IfcOwnerHistory_type, + IFC4X3_RC1_IfcParameterizedProfileDef_type, + IFC4X3_RC1_IfcParameterValue_type, + IFC4X3_RC1_IfcPath_type, + IFC4X3_RC1_IfcPavement_type, + IFC4X3_RC1_IfcPavementType_type, + IFC4X3_RC1_IfcPcurve_type, + IFC4X3_RC1_IfcPerformanceHistory_type, + IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type, + IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type, + IFC4X3_RC1_IfcPermeableCoveringProperties_type, + IFC4X3_RC1_IfcPermit_type, + IFC4X3_RC1_IfcPermitTypeEnum_type, + IFC4X3_RC1_IfcPerson_type, + IFC4X3_RC1_IfcPersonAndOrganization_type, + IFC4X3_RC1_IfcPHMeasure_type, + IFC4X3_RC1_IfcPhysicalComplexQuantity_type, + IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type, + IFC4X3_RC1_IfcPhysicalQuantity_type, + IFC4X3_RC1_IfcPhysicalSimpleQuantity_type, + IFC4X3_RC1_IfcPile_type, + IFC4X3_RC1_IfcPileConstructionEnum_type, + IFC4X3_RC1_IfcPileType_type, + IFC4X3_RC1_IfcPileTypeEnum_type, + IFC4X3_RC1_IfcPipeFitting_type, + IFC4X3_RC1_IfcPipeFittingType_type, + IFC4X3_RC1_IfcPipeFittingTypeEnum_type, + IFC4X3_RC1_IfcPipeSegment_type, + IFC4X3_RC1_IfcPipeSegmentType_type, + IFC4X3_RC1_IfcPipeSegmentTypeEnum_type, + IFC4X3_RC1_IfcPixelTexture_type, + IFC4X3_RC1_IfcPlacement_type, + IFC4X3_RC1_IfcPlanarBox_type, + IFC4X3_RC1_IfcPlanarExtent_type, + IFC4X3_RC1_IfcPlanarForceMeasure_type, + IFC4X3_RC1_IfcPlane_type, + IFC4X3_RC1_IfcPlaneAngleMeasure_type, + IFC4X3_RC1_IfcPlant_type, + IFC4X3_RC1_IfcPlate_type, + IFC4X3_RC1_IfcPlateStandardCase_type, + IFC4X3_RC1_IfcPlateType_type, + IFC4X3_RC1_IfcPlateTypeEnum_type, + IFC4X3_RC1_IfcPoint_type, + IFC4X3_RC1_IfcPointOnCurve_type, + IFC4X3_RC1_IfcPointOnSurface_type, + IFC4X3_RC1_IfcPointOrVertexPoint_type, + IFC4X3_RC1_IfcPolygonalBoundedHalfSpace_type, + IFC4X3_RC1_IfcPolygonalFaceSet_type, + IFC4X3_RC1_IfcPolyline_type, + IFC4X3_RC1_IfcPolyLoop_type, + IFC4X3_RC1_IfcPort_type, + IFC4X3_RC1_IfcPositioningElement_type, + IFC4X3_RC1_IfcPositiveInteger_type, + IFC4X3_RC1_IfcPositiveLengthMeasure_type, + IFC4X3_RC1_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC1_IfcPositiveRatioMeasure_type, + IFC4X3_RC1_IfcPostalAddress_type, + IFC4X3_RC1_IfcPowerMeasure_type, + IFC4X3_RC1_IfcPreDefinedColour_type, + IFC4X3_RC1_IfcPreDefinedCurveFont_type, + IFC4X3_RC1_IfcPreDefinedItem_type, + IFC4X3_RC1_IfcPreDefinedProperties_type, + IFC4X3_RC1_IfcPreDefinedPropertySet_type, + IFC4X3_RC1_IfcPreDefinedTextFont_type, + IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X3_RC1_IfcPresentableText_type, + IFC4X3_RC1_IfcPresentationItem_type, + IFC4X3_RC1_IfcPresentationLayerAssignment_type, + IFC4X3_RC1_IfcPresentationLayerWithStyle_type, + IFC4X3_RC1_IfcPresentationStyle_type, + IFC4X3_RC1_IfcPresentationStyleAssignment_type, + IFC4X3_RC1_IfcPresentationStyleSelect_type, + IFC4X3_RC1_IfcPressureMeasure_type, + IFC4X3_RC1_IfcProcedure_type, + IFC4X3_RC1_IfcProcedureType_type, + IFC4X3_RC1_IfcProcedureTypeEnum_type, + IFC4X3_RC1_IfcProcess_type, + IFC4X3_RC1_IfcProcessSelect_type, + IFC4X3_RC1_IfcProduct_type, + IFC4X3_RC1_IfcProductDefinitionShape_type, + IFC4X3_RC1_IfcProductRepresentation_type, + IFC4X3_RC1_IfcProductRepresentationSelect_type, + IFC4X3_RC1_IfcProductSelect_type, + IFC4X3_RC1_IfcProfileDef_type, + IFC4X3_RC1_IfcProfileProperties_type, + IFC4X3_RC1_IfcProfileTypeEnum_type, + IFC4X3_RC1_IfcProject_type, + IFC4X3_RC1_IfcProjectedCRS_type, + IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type, + IFC4X3_RC1_IfcProjectionElement_type, + IFC4X3_RC1_IfcProjectionElementTypeEnum_type, + IFC4X3_RC1_IfcProjectLibrary_type, + IFC4X3_RC1_IfcProjectOrder_type, + IFC4X3_RC1_IfcProjectOrderTypeEnum_type, + IFC4X3_RC1_IfcProperty_type, + IFC4X3_RC1_IfcPropertyAbstraction_type, + IFC4X3_RC1_IfcPropertyBoundedValue_type, + IFC4X3_RC1_IfcPropertyDefinition_type, + IFC4X3_RC1_IfcPropertyDependencyRelationship_type, + IFC4X3_RC1_IfcPropertyEnumeratedValue_type, + IFC4X3_RC1_IfcPropertyEnumeration_type, + IFC4X3_RC1_IfcPropertyListValue_type, + IFC4X3_RC1_IfcPropertyReferenceValue_type, + IFC4X3_RC1_IfcPropertySet_type, + IFC4X3_RC1_IfcPropertySetDefinition_type, + IFC4X3_RC1_IfcPropertySetDefinitionSelect_type, + IFC4X3_RC1_IfcPropertySetDefinitionSet_type, + IFC4X3_RC1_IfcPropertySetTemplate_type, + IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type, + IFC4X3_RC1_IfcPropertySingleValue_type, + IFC4X3_RC1_IfcPropertyTableValue_type, + IFC4X3_RC1_IfcPropertyTemplate_type, + IFC4X3_RC1_IfcPropertyTemplateDefinition_type, + IFC4X3_RC1_IfcProtectiveDevice_type, + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnit_type, + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X3_RC1_IfcProtectiveDeviceType_type, + IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type, + IFC4X3_RC1_IfcProxy_type, + IFC4X3_RC1_IfcPump_type, + IFC4X3_RC1_IfcPumpType_type, + IFC4X3_RC1_IfcPumpTypeEnum_type, + IFC4X3_RC1_IfcQuantityArea_type, + IFC4X3_RC1_IfcQuantityCount_type, + IFC4X3_RC1_IfcQuantityLength_type, + IFC4X3_RC1_IfcQuantitySet_type, + IFC4X3_RC1_IfcQuantityTime_type, + IFC4X3_RC1_IfcQuantityVolume_type, + IFC4X3_RC1_IfcQuantityWeight_type, + IFC4X3_RC1_IfcRadioActivityMeasure_type, + IFC4X3_RC1_IfcRail_type, + IFC4X3_RC1_IfcRailing_type, + IFC4X3_RC1_IfcRailingType_type, + IFC4X3_RC1_IfcRailingTypeEnum_type, + IFC4X3_RC1_IfcRailType_type, + IFC4X3_RC1_IfcRailTypeEnum_type, + IFC4X3_RC1_IfcRailway_type, + IFC4X3_RC1_IfcRailwayPartTypeEnum_type, + IFC4X3_RC1_IfcRamp_type, + IFC4X3_RC1_IfcRampFlight_type, + IFC4X3_RC1_IfcRampFlightType_type, + IFC4X3_RC1_IfcRampFlightTypeEnum_type, + IFC4X3_RC1_IfcRampType_type, + IFC4X3_RC1_IfcRampTypeEnum_type, + IFC4X3_RC1_IfcRatioMeasure_type, + IFC4X3_RC1_IfcRationalBSplineCurveWithKnots_type, + IFC4X3_RC1_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X3_RC1_IfcReal_type, + IFC4X3_RC1_IfcRectangleHollowProfileDef_type, + IFC4X3_RC1_IfcRectangleProfileDef_type, + IFC4X3_RC1_IfcRectangularPyramid_type, + IFC4X3_RC1_IfcRectangularTrimmedSurface_type, + IFC4X3_RC1_IfcRecurrencePattern_type, + IFC4X3_RC1_IfcRecurrenceTypeEnum_type, + IFC4X3_RC1_IfcReference_type, + IFC4X3_RC1_IfcReferent_type, + IFC4X3_RC1_IfcReferentTypeEnum_type, + IFC4X3_RC1_IfcReflectanceMethodEnum_type, + IFC4X3_RC1_IfcRegularTimeSeries_type, + IFC4X3_RC1_IfcReinforcedSoil_type, + IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type, + IFC4X3_RC1_IfcReinforcementBarProperties_type, + IFC4X3_RC1_IfcReinforcementDefinitionProperties_type, + IFC4X3_RC1_IfcReinforcingBar_type, + IFC4X3_RC1_IfcReinforcingBarRoleEnum_type, + IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type, + IFC4X3_RC1_IfcReinforcingBarType_type, + IFC4X3_RC1_IfcReinforcingBarTypeEnum_type, + IFC4X3_RC1_IfcReinforcingElement_type, + IFC4X3_RC1_IfcReinforcingElementType_type, + IFC4X3_RC1_IfcReinforcingMesh_type, + IFC4X3_RC1_IfcReinforcingMeshType_type, + IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type, + IFC4X3_RC1_IfcRelAggregates_type, + IFC4X3_RC1_IfcRelAssigns_type, + IFC4X3_RC1_IfcRelAssignsToActor_type, + IFC4X3_RC1_IfcRelAssignsToControl_type, + IFC4X3_RC1_IfcRelAssignsToGroup_type, + IFC4X3_RC1_IfcRelAssignsToGroupByFactor_type, + IFC4X3_RC1_IfcRelAssignsToProcess_type, + IFC4X3_RC1_IfcRelAssignsToProduct_type, + IFC4X3_RC1_IfcRelAssignsToResource_type, + IFC4X3_RC1_IfcRelAssociates_type, + IFC4X3_RC1_IfcRelAssociatesApproval_type, + IFC4X3_RC1_IfcRelAssociatesClassification_type, + IFC4X3_RC1_IfcRelAssociatesConstraint_type, + IFC4X3_RC1_IfcRelAssociatesDocument_type, + IFC4X3_RC1_IfcRelAssociatesLibrary_type, + IFC4X3_RC1_IfcRelAssociatesMaterial_type, + IFC4X3_RC1_IfcRelAssociatesProfileDef_type, + IFC4X3_RC1_IfcRelationship_type, + IFC4X3_RC1_IfcRelConnects_type, + IFC4X3_RC1_IfcRelConnectsElements_type, + IFC4X3_RC1_IfcRelConnectsPathElements_type, + IFC4X3_RC1_IfcRelConnectsPorts_type, + IFC4X3_RC1_IfcRelConnectsPortToElement_type, + IFC4X3_RC1_IfcRelConnectsStructuralActivity_type, + IFC4X3_RC1_IfcRelConnectsStructuralMember_type, + IFC4X3_RC1_IfcRelConnectsWithEccentricity_type, + IFC4X3_RC1_IfcRelConnectsWithRealizingElements_type, + IFC4X3_RC1_IfcRelContainedInSpatialStructure_type, + IFC4X3_RC1_IfcRelCoversBldgElements_type, + IFC4X3_RC1_IfcRelCoversSpaces_type, + IFC4X3_RC1_IfcRelDeclares_type, + IFC4X3_RC1_IfcRelDecomposes_type, + IFC4X3_RC1_IfcRelDefines_type, + IFC4X3_RC1_IfcRelDefinesByObject_type, + IFC4X3_RC1_IfcRelDefinesByProperties_type, + IFC4X3_RC1_IfcRelDefinesByTemplate_type, + IFC4X3_RC1_IfcRelDefinesByType_type, + IFC4X3_RC1_IfcRelFillsElement_type, + IFC4X3_RC1_IfcRelFlowControlElements_type, + IFC4X3_RC1_IfcRelInterferesElements_type, + IFC4X3_RC1_IfcRelNests_type, + IFC4X3_RC1_IfcRelPositions_type, + IFC4X3_RC1_IfcRelProjectsElement_type, + IFC4X3_RC1_IfcRelReferencedInSpatialStructure_type, + IFC4X3_RC1_IfcRelSequence_type, + IFC4X3_RC1_IfcRelServicesBuildings_type, + IFC4X3_RC1_IfcRelSpaceBoundary_type, + IFC4X3_RC1_IfcRelSpaceBoundary1stLevel_type, + IFC4X3_RC1_IfcRelSpaceBoundary2ndLevel_type, + IFC4X3_RC1_IfcRelVoidsElement_type, + IFC4X3_RC1_IfcReparametrisedCompositeCurveSegment_type, + IFC4X3_RC1_IfcRepresentation_type, + IFC4X3_RC1_IfcRepresentationContext_type, + IFC4X3_RC1_IfcRepresentationItem_type, + IFC4X3_RC1_IfcRepresentationMap_type, + IFC4X3_RC1_IfcResource_type, + IFC4X3_RC1_IfcResourceApprovalRelationship_type, + IFC4X3_RC1_IfcResourceConstraintRelationship_type, + IFC4X3_RC1_IfcResourceLevelRelationship_type, + IFC4X3_RC1_IfcResourceObjectSelect_type, + IFC4X3_RC1_IfcResourceSelect_type, + IFC4X3_RC1_IfcResourceTime_type, + IFC4X3_RC1_IfcRevolvedAreaSolid_type, + IFC4X3_RC1_IfcRevolvedAreaSolidTapered_type, + IFC4X3_RC1_IfcRightCircularCone_type, + IFC4X3_RC1_IfcRightCircularCylinder_type, + IFC4X3_RC1_IfcRoad_type, + IFC4X3_RC1_IfcRoadPartTypeEnum_type, + IFC4X3_RC1_IfcRoleEnum_type, + IFC4X3_RC1_IfcRoof_type, + IFC4X3_RC1_IfcRoofType_type, + IFC4X3_RC1_IfcRoofTypeEnum_type, + IFC4X3_RC1_IfcRoot_type, + IFC4X3_RC1_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC1_IfcRotationalMassMeasure_type, + IFC4X3_RC1_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC1_IfcRotationalStiffnessSelect_type, + IFC4X3_RC1_IfcRoundedRectangleProfileDef_type, + IFC4X3_RC1_IfcSanitaryTerminal_type, + IFC4X3_RC1_IfcSanitaryTerminalType_type, + IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type, + IFC4X3_RC1_IfcSchedulingTime_type, + IFC4X3_RC1_IfcSeamCurve_type, + IFC4X3_RC1_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC1_IfcSectionedSolid_type, + IFC4X3_RC1_IfcSectionedSolidHorizontal_type, + IFC4X3_RC1_IfcSectionedSpine_type, + IFC4X3_RC1_IfcSectionedSurface_type, + IFC4X3_RC1_IfcSectionModulusMeasure_type, + IFC4X3_RC1_IfcSectionProperties_type, + IFC4X3_RC1_IfcSectionReinforcementProperties_type, + IFC4X3_RC1_IfcSectionTypeEnum_type, + IFC4X3_RC1_IfcSegmentIndexSelect_type, + IFC4X3_RC1_IfcSensor_type, + IFC4X3_RC1_IfcSensorType_type, + IFC4X3_RC1_IfcSensorTypeEnum_type, + IFC4X3_RC1_IfcSequenceEnum_type, + IFC4X3_RC1_IfcShadingDevice_type, + IFC4X3_RC1_IfcShadingDeviceType_type, + IFC4X3_RC1_IfcShadingDeviceTypeEnum_type, + IFC4X3_RC1_IfcShapeAspect_type, + IFC4X3_RC1_IfcShapeModel_type, + IFC4X3_RC1_IfcShapeRepresentation_type, + IFC4X3_RC1_IfcShearModulusMeasure_type, + IFC4X3_RC1_IfcShell_type, + IFC4X3_RC1_IfcShellBasedSurfaceModel_type, + IFC4X3_RC1_IfcSign_type, + IFC4X3_RC1_IfcSignal_type, + IFC4X3_RC1_IfcSignalType_type, + IFC4X3_RC1_IfcSignalTypeEnum_type, + IFC4X3_RC1_IfcSignType_type, + IFC4X3_RC1_IfcSignTypeEnum_type, + IFC4X3_RC1_IfcSimpleProperty_type, + IFC4X3_RC1_IfcSimplePropertyTemplate_type, + IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X3_RC1_IfcSimpleValue_type, + IFC4X3_RC1_IfcSIPrefix_type, + IFC4X3_RC1_IfcSite_type, + IFC4X3_RC1_IfcSIUnit_type, + IFC4X3_RC1_IfcSIUnitName_type, + IFC4X3_RC1_IfcSizeSelect_type, + IFC4X3_RC1_IfcSlab_type, + IFC4X3_RC1_IfcSlabElementedCase_type, + IFC4X3_RC1_IfcSlabStandardCase_type, + IFC4X3_RC1_IfcSlabType_type, + IFC4X3_RC1_IfcSlabTypeEnum_type, + IFC4X3_RC1_IfcSlippageConnectionCondition_type, + IFC4X3_RC1_IfcSolarDevice_type, + IFC4X3_RC1_IfcSolarDeviceType_type, + IFC4X3_RC1_IfcSolarDeviceTypeEnum_type, + IFC4X3_RC1_IfcSolidAngleMeasure_type, + IFC4X3_RC1_IfcSolidModel_type, + IFC4X3_RC1_IfcSolidOrShell_type, + IFC4X3_RC1_IfcSolidStratum_type, + IFC4X3_RC1_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC1_IfcSoundPowerMeasure_type, + IFC4X3_RC1_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC1_IfcSoundPressureMeasure_type, + IFC4X3_RC1_IfcSpace_type, + IFC4X3_RC1_IfcSpaceBoundarySelect_type, + IFC4X3_RC1_IfcSpaceHeater_type, + IFC4X3_RC1_IfcSpaceHeaterType_type, + IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type, + IFC4X3_RC1_IfcSpaceType_type, + IFC4X3_RC1_IfcSpaceTypeEnum_type, + IFC4X3_RC1_IfcSpatialElement_type, + IFC4X3_RC1_IfcSpatialElementType_type, + IFC4X3_RC1_IfcSpatialReferenceSelect_type, + IFC4X3_RC1_IfcSpatialStructureElement_type, + IFC4X3_RC1_IfcSpatialStructureElementType_type, + IFC4X3_RC1_IfcSpatialZone_type, + IFC4X3_RC1_IfcSpatialZoneType_type, + IFC4X3_RC1_IfcSpatialZoneTypeEnum_type, + IFC4X3_RC1_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC1_IfcSpecularExponent_type, + IFC4X3_RC1_IfcSpecularHighlightSelect_type, + IFC4X3_RC1_IfcSpecularRoughness_type, + IFC4X3_RC1_IfcSphere_type, + IFC4X3_RC1_IfcSphericalSurface_type, + IFC4X3_RC1_IfcStackTerminal_type, + IFC4X3_RC1_IfcStackTerminalType_type, + IFC4X3_RC1_IfcStackTerminalTypeEnum_type, + IFC4X3_RC1_IfcStair_type, + IFC4X3_RC1_IfcStairFlight_type, + IFC4X3_RC1_IfcStairFlightType_type, + IFC4X3_RC1_IfcStairFlightTypeEnum_type, + IFC4X3_RC1_IfcStairType_type, + IFC4X3_RC1_IfcStairTypeEnum_type, + IFC4X3_RC1_IfcStateEnum_type, + IFC4X3_RC1_IfcStructuralAction_type, + IFC4X3_RC1_IfcStructuralActivity_type, + IFC4X3_RC1_IfcStructuralActivityAssignmentSelect_type, + IFC4X3_RC1_IfcStructuralAnalysisModel_type, + IFC4X3_RC1_IfcStructuralConnection_type, + IFC4X3_RC1_IfcStructuralConnectionCondition_type, + IFC4X3_RC1_IfcStructuralCurveAction_type, + IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type, + IFC4X3_RC1_IfcStructuralCurveConnection_type, + IFC4X3_RC1_IfcStructuralCurveMember_type, + IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type, + IFC4X3_RC1_IfcStructuralCurveMemberVarying_type, + IFC4X3_RC1_IfcStructuralCurveReaction_type, + IFC4X3_RC1_IfcStructuralItem_type, + IFC4X3_RC1_IfcStructuralLinearAction_type, + IFC4X3_RC1_IfcStructuralLoad_type, + IFC4X3_RC1_IfcStructuralLoadCase_type, + IFC4X3_RC1_IfcStructuralLoadConfiguration_type, + IFC4X3_RC1_IfcStructuralLoadGroup_type, + IFC4X3_RC1_IfcStructuralLoadLinearForce_type, + IFC4X3_RC1_IfcStructuralLoadOrResult_type, + IFC4X3_RC1_IfcStructuralLoadPlanarForce_type, + IFC4X3_RC1_IfcStructuralLoadSingleDisplacement_type, + IFC4X3_RC1_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X3_RC1_IfcStructuralLoadSingleForce_type, + IFC4X3_RC1_IfcStructuralLoadSingleForceWarping_type, + IFC4X3_RC1_IfcStructuralLoadStatic_type, + IFC4X3_RC1_IfcStructuralLoadTemperature_type, + IFC4X3_RC1_IfcStructuralMember_type, + IFC4X3_RC1_IfcStructuralPlanarAction_type, + IFC4X3_RC1_IfcStructuralPointAction_type, + IFC4X3_RC1_IfcStructuralPointConnection_type, + IFC4X3_RC1_IfcStructuralPointReaction_type, + IFC4X3_RC1_IfcStructuralReaction_type, + IFC4X3_RC1_IfcStructuralResultGroup_type, + IFC4X3_RC1_IfcStructuralSurfaceAction_type, + IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X3_RC1_IfcStructuralSurfaceConnection_type, + IFC4X3_RC1_IfcStructuralSurfaceMember_type, + IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X3_RC1_IfcStructuralSurfaceMemberVarying_type, + IFC4X3_RC1_IfcStructuralSurfaceReaction_type, + IFC4X3_RC1_IfcStyleAssignmentSelect_type, + IFC4X3_RC1_IfcStyledItem_type, + IFC4X3_RC1_IfcStyledRepresentation_type, + IFC4X3_RC1_IfcStyleModel_type, + IFC4X3_RC1_IfcSubContractResource_type, + IFC4X3_RC1_IfcSubContractResourceType_type, + IFC4X3_RC1_IfcSubContractResourceTypeEnum_type, + IFC4X3_RC1_IfcSubedge_type, + IFC4X3_RC1_IfcSurface_type, + IFC4X3_RC1_IfcSurfaceCurve_type, + IFC4X3_RC1_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X3_RC1_IfcSurfaceFeature_type, + IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type, + IFC4X3_RC1_IfcSurfaceOfLinearExtrusion_type, + IFC4X3_RC1_IfcSurfaceOfRevolution_type, + IFC4X3_RC1_IfcSurfaceOrFaceSurface_type, + IFC4X3_RC1_IfcSurfaceReinforcementArea_type, + IFC4X3_RC1_IfcSurfaceSide_type, + IFC4X3_RC1_IfcSurfaceStyle_type, + IFC4X3_RC1_IfcSurfaceStyleElementSelect_type, + IFC4X3_RC1_IfcSurfaceStyleLighting_type, + IFC4X3_RC1_IfcSurfaceStyleRefraction_type, + IFC4X3_RC1_IfcSurfaceStyleRendering_type, + IFC4X3_RC1_IfcSurfaceStyleShading_type, + IFC4X3_RC1_IfcSurfaceStyleWithTextures_type, + IFC4X3_RC1_IfcSurfaceTexture_type, + IFC4X3_RC1_IfcSweptAreaSolid_type, + IFC4X3_RC1_IfcSweptDiskSolid_type, + IFC4X3_RC1_IfcSweptDiskSolidPolygonal_type, + IFC4X3_RC1_IfcSweptSurface_type, + IFC4X3_RC1_IfcSwitchingDevice_type, + IFC4X3_RC1_IfcSwitchingDeviceType_type, + IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type, + IFC4X3_RC1_IfcSystem_type, + IFC4X3_RC1_IfcSystemFurnitureElement_type, + IFC4X3_RC1_IfcSystemFurnitureElementType_type, + IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type, + IFC4X3_RC1_IfcTable_type, + IFC4X3_RC1_IfcTableColumn_type, + IFC4X3_RC1_IfcTableRow_type, + IFC4X3_RC1_IfcTank_type, + IFC4X3_RC1_IfcTankType_type, + IFC4X3_RC1_IfcTankTypeEnum_type, + IFC4X3_RC1_IfcTask_type, + IFC4X3_RC1_IfcTaskDurationEnum_type, + IFC4X3_RC1_IfcTaskTime_type, + IFC4X3_RC1_IfcTaskTimeRecurring_type, + IFC4X3_RC1_IfcTaskType_type, + IFC4X3_RC1_IfcTaskTypeEnum_type, + IFC4X3_RC1_IfcTelecomAddress_type, + IFC4X3_RC1_IfcTemperatureGradientMeasure_type, + IFC4X3_RC1_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC1_IfcTendon_type, + IFC4X3_RC1_IfcTendonAnchor_type, + IFC4X3_RC1_IfcTendonAnchorType_type, + IFC4X3_RC1_IfcTendonAnchorTypeEnum_type, + IFC4X3_RC1_IfcTendonConduit_type, + IFC4X3_RC1_IfcTendonConduitType_type, + IFC4X3_RC1_IfcTendonConduitTypeEnum_type, + IFC4X3_RC1_IfcTendonType_type, + IFC4X3_RC1_IfcTendonTypeEnum_type, + IFC4X3_RC1_IfcTessellatedFaceSet_type, + IFC4X3_RC1_IfcTessellatedItem_type, + IFC4X3_RC1_IfcText_type, + IFC4X3_RC1_IfcTextAlignment_type, + IFC4X3_RC1_IfcTextDecoration_type, + IFC4X3_RC1_IfcTextFontName_type, + IFC4X3_RC1_IfcTextFontSelect_type, + IFC4X3_RC1_IfcTextLiteral_type, + IFC4X3_RC1_IfcTextLiteralWithExtent_type, + IFC4X3_RC1_IfcTextPath_type, + IFC4X3_RC1_IfcTextStyle_type, + IFC4X3_RC1_IfcTextStyleFontModel_type, + IFC4X3_RC1_IfcTextStyleForDefinedFont_type, + IFC4X3_RC1_IfcTextStyleTextModel_type, + IFC4X3_RC1_IfcTextTransformation_type, + IFC4X3_RC1_IfcTextureCoordinate_type, + IFC4X3_RC1_IfcTextureCoordinateGenerator_type, + IFC4X3_RC1_IfcTextureMap_type, + IFC4X3_RC1_IfcTextureVertex_type, + IFC4X3_RC1_IfcTextureVertexList_type, + IFC4X3_RC1_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC1_IfcThermalConductivityMeasure_type, + IFC4X3_RC1_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC1_IfcThermalResistanceMeasure_type, + IFC4X3_RC1_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC1_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC1_IfcTime_type, + IFC4X3_RC1_IfcTimeMeasure_type, + IFC4X3_RC1_IfcTimeOrRatioSelect_type, + IFC4X3_RC1_IfcTimePeriod_type, + IFC4X3_RC1_IfcTimeSeries_type, + IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type, + IFC4X3_RC1_IfcTimeSeriesValue_type, + IFC4X3_RC1_IfcTimeStamp_type, + IFC4X3_RC1_IfcTopologicalRepresentationItem_type, + IFC4X3_RC1_IfcTopologyRepresentation_type, + IFC4X3_RC1_IfcToroidalSurface_type, + IFC4X3_RC1_IfcTorqueMeasure_type, + IFC4X3_RC1_IfcTrackElement_type, + IFC4X3_RC1_IfcTrackElementType_type, + IFC4X3_RC1_IfcTrackElementTypeEnum_type, + IFC4X3_RC1_IfcTransformer_type, + IFC4X3_RC1_IfcTransformerType_type, + IFC4X3_RC1_IfcTransformerTypeEnum_type, + IFC4X3_RC1_IfcTransitionCode_type, + IFC4X3_RC1_IfcTransitionCurveSegment2D_type, + IFC4X3_RC1_IfcTransitionCurveType_type, + IFC4X3_RC1_IfcTranslationalStiffnessSelect_type, + IFC4X3_RC1_IfcTransportElement_type, + IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type, + IFC4X3_RC1_IfcTransportElementType_type, + IFC4X3_RC1_IfcTransportElementTypeSelect_type, + IFC4X3_RC1_IfcTrapeziumProfileDef_type, + IFC4X3_RC1_IfcTriangulatedFaceSet_type, + IFC4X3_RC1_IfcTriangulatedIrregularNetwork_type, + IFC4X3_RC1_IfcTrimmedCurve_type, + IFC4X3_RC1_IfcTrimmingPreference_type, + IFC4X3_RC1_IfcTrimmingSelect_type, + IFC4X3_RC1_IfcTShapeProfileDef_type, + IFC4X3_RC1_IfcTubeBundle_type, + IFC4X3_RC1_IfcTubeBundleType_type, + IFC4X3_RC1_IfcTubeBundleTypeEnum_type, + IFC4X3_RC1_IfcTypeObject_type, + IFC4X3_RC1_IfcTypeProcess_type, + IFC4X3_RC1_IfcTypeProduct_type, + IFC4X3_RC1_IfcTypeResource_type, + IFC4X3_RC1_IfcUnit_type, + IFC4X3_RC1_IfcUnitaryControlElement_type, + IFC4X3_RC1_IfcUnitaryControlElementType_type, + IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type, + IFC4X3_RC1_IfcUnitaryEquipment_type, + IFC4X3_RC1_IfcUnitaryEquipmentType_type, + IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type, + IFC4X3_RC1_IfcUnitAssignment_type, + IFC4X3_RC1_IfcUnitEnum_type, + IFC4X3_RC1_IfcURIReference_type, + IFC4X3_RC1_IfcUShapeProfileDef_type, + IFC4X3_RC1_IfcValue_type, + IFC4X3_RC1_IfcValve_type, + IFC4X3_RC1_IfcValveType_type, + IFC4X3_RC1_IfcValveTypeEnum_type, + IFC4X3_RC1_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC1_IfcVector_type, + IFC4X3_RC1_IfcVectorOrDirection_type, + IFC4X3_RC1_IfcVertex_type, + IFC4X3_RC1_IfcVertexLoop_type, + IFC4X3_RC1_IfcVertexPoint_type, + IFC4X3_RC1_IfcVibrationDamper_type, + IFC4X3_RC1_IfcVibrationDamperType_type, + IFC4X3_RC1_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC1_IfcVibrationIsolator_type, + IFC4X3_RC1_IfcVibrationIsolatorType_type, + IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type, + IFC4X3_RC1_IfcVirtualElement_type, + IFC4X3_RC1_IfcVirtualGridIntersection_type, + IFC4X3_RC1_IfcVoidingFeature_type, + IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type, + IFC4X3_RC1_IfcVoidStratum_type, + IFC4X3_RC1_IfcVolumeMeasure_type, + IFC4X3_RC1_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC1_IfcWall_type, + IFC4X3_RC1_IfcWallElementedCase_type, + IFC4X3_RC1_IfcWallStandardCase_type, + IFC4X3_RC1_IfcWallType_type, + IFC4X3_RC1_IfcWallTypeEnum_type, + IFC4X3_RC1_IfcWarpingConstantMeasure_type, + IFC4X3_RC1_IfcWarpingMomentMeasure_type, + IFC4X3_RC1_IfcWarpingStiffnessSelect_type, + IFC4X3_RC1_IfcWasteTerminal_type, + IFC4X3_RC1_IfcWasteTerminalType_type, + IFC4X3_RC1_IfcWasteTerminalTypeEnum_type, + IFC4X3_RC1_IfcWaterStratum_type, + IFC4X3_RC1_IfcWindow_type, + IFC4X3_RC1_IfcWindowLiningProperties_type, + IFC4X3_RC1_IfcWindowPanelOperationEnum_type, + IFC4X3_RC1_IfcWindowPanelPositionEnum_type, + IFC4X3_RC1_IfcWindowPanelProperties_type, + IFC4X3_RC1_IfcWindowStandardCase_type, + IFC4X3_RC1_IfcWindowStyle_type, + IFC4X3_RC1_IfcWindowStyleConstructionEnum_type, + IFC4X3_RC1_IfcWindowStyleOperationEnum_type, + IFC4X3_RC1_IfcWindowType_type, + IFC4X3_RC1_IfcWindowTypeEnum_type, + IFC4X3_RC1_IfcWindowTypePartitioningEnum_type, + IFC4X3_RC1_IfcWorkCalendar_type, + IFC4X3_RC1_IfcWorkCalendarTypeEnum_type, + IFC4X3_RC1_IfcWorkControl_type, + IFC4X3_RC1_IfcWorkPlan_type, + IFC4X3_RC1_IfcWorkPlanTypeEnum_type, + IFC4X3_RC1_IfcWorkSchedule_type, + IFC4X3_RC1_IfcWorkScheduleTypeEnum_type, + IFC4X3_RC1_IfcWorkTime_type, + IFC4X3_RC1_IfcZone_type, + IFC4X3_RC1_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3859], declarations, new IFC4X3_RC1_instance_factory()); } diff --git a/src/ifcparse/Ifc4x3_rc1.cpp b/src/ifcparse/Ifc4x3_rc1.cpp index 03437fc88e..9f2843e404 100644 --- a/src/ifcparse/Ifc4x3_rc1.cpp +++ b/src/ifcparse/Ifc4x3_rc1.cpp @@ -1378,20 +1378,11 @@ Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcActionRequestTypeEnum::Value Ifc4x3_rc1::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcActionRequestTypeEnum::Value) IFC4X3_RC1_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcActionRequestTypeEnum::operator Ifc4x3_rc1::IfcActionRequestTypeEnum::Value() const { @@ -1420,40 +1411,11 @@ Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcActionSourceTypeEnum::Value Ifc4x3_rc1::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcActionSourceTypeEnum::Value) IFC4X3_RC1_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcActionSourceTypeEnum::operator Ifc4x3_rc1::IfcActionSourceTypeEnum::Value() const { @@ -1482,18 +1444,11 @@ Ifc4x3_rc1::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcActionTypeEnum::Value Ifc4x3_rc1::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4x3_rc1::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x3_rc1::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4x3_rc1::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcActionTypeEnum::Value) IFC4X3_RC1_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcActionTypeEnum::operator Ifc4x3_rc1::IfcActionTypeEnum::Value() const { @@ -1522,20 +1477,11 @@ Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcActuatorTypeEnum::Value Ifc4x3_rc1::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcActuatorTypeEnum::Value) IFC4X3_RC1_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcActuatorTypeEnum::operator Ifc4x3_rc1::IfcActuatorTypeEnum::Value() const { @@ -1564,18 +1510,11 @@ Ifc4x3_rc1::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAddressTypeEnum::Value Ifc4x3_rc1::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc1::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc1::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4x3_rc1::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x3_rc1::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAddressTypeEnum::Value) IFC4X3_RC1_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAddressTypeEnum::operator Ifc4x3_rc1::IfcAddressTypeEnum::Value() const { @@ -1604,18 +1543,11 @@ Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::Value Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::Value) IFC4X3_RC1_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::operator Ifc4x3_rc1::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1644,19 +1576,11 @@ Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAirTerminalTypeEnum::Value Ifc4x3_rc1::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAirTerminalTypeEnum::Value) IFC4X3_RC1_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAirTerminalTypeEnum::operator Ifc4x3_rc1::IfcAirTerminalTypeEnum::Value() const { @@ -1685,24 +1609,11 @@ Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(con } const char* Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X3_RC1_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x3_rc1::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1731,23 +1642,11 @@ Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "RAILWAYCROCODILE", "RAILWAYDETONATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAlarmTypeEnum::Value Ifc4x3_rc1::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "RAILWAYCROCODILE") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYCROCODILE; - if (s == "RAILWAYDETONATOR") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYDETONATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAlarmTypeEnum::Value) IFC4X3_RC1_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAlarmTypeEnum::operator Ifc4x3_rc1::IfcAlarmTypeEnum::Value() const { @@ -1776,15 +1675,11 @@ Ifc4x3_rc1::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAlignmentTypeEnum::Value Ifc4x3_rc1::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAlignmentTypeEnum::Value) IFC4X3_RC1_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAlignmentTypeEnum::operator Ifc4x3_rc1::IfcAlignmentTypeEnum::Value() const { @@ -1813,18 +1708,11 @@ Ifc4x3_rc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAnalysisModelTypeEnum::Value Ifc4x3_rc1::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x3_rc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x3_rc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x3_rc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAnalysisModelTypeEnum::Value) IFC4X3_RC1_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAnalysisModelTypeEnum::operator Ifc4x3_rc1::IfcAnalysisModelTypeEnum::Value() const { @@ -1853,19 +1741,11 @@ Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::Value) IFC4X3_RC1_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::operator Ifc4x3_rc1::IfcAnalysisTheoryTypeEnum::Value() const { @@ -1894,24 +1774,11 @@ Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcAnnotationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSUMEDPOINT", "ASBUILTAREA", "ASBUILTLINE", "NON_PHYSICAL_SIGNAL", "ASSUMEDLINE", "WIDTHEVENT", "ASSUMEDAREA", "SUPERELEVATIONEVENT", "ASBUILTPOINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAnnotationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAnnotationTypeEnum::Value Ifc4x3_rc1::IfcAnnotationTypeEnum::FromString(const std::string& s) { - if (s == "ASSUMEDPOINT") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDPOINT; - if (s == "ASBUILTAREA") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTAREA; - if (s == "ASBUILTLINE") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTLINE; - if (s == "NON_PHYSICAL_SIGNAL") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_NON_PHYSICAL_SIGNAL; - if (s == "ASSUMEDLINE") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDLINE; - if (s == "WIDTHEVENT") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_WIDTHEVENT; - if (s == "ASSUMEDAREA") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDAREA; - if (s == "SUPERELEVATIONEVENT") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_SUPERELEVATIONEVENT; - if (s == "ASBUILTPOINT") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAnnotationTypeEnum::IfcAnnotationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAnnotationTypeEnum::Value) IFC4X3_RC1_IfcAnnotationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAnnotationTypeEnum::operator Ifc4x3_rc1::IfcAnnotationTypeEnum::Value() const { @@ -1940,17 +1807,11 @@ Ifc4x3_rc1::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::stri } const char* Ifc4x3_rc1::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X3_RC1_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcArithmeticOperatorEnum::Value Ifc4x3_rc1::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x3_rc1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x3_rc1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x3_rc1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x3_rc1::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcArithmeticOperatorEnum::Value) IFC4X3_RC1_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcArithmeticOperatorEnum::operator Ifc4x3_rc1::IfcArithmeticOperatorEnum::Value() const { @@ -1979,16 +1840,11 @@ Ifc4x3_rc1::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAssemblyPlaceEnum::Value Ifc4x3_rc1::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4x3_rc1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4x3_rc1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAssemblyPlaceEnum::Value) IFC4X3_RC1_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAssemblyPlaceEnum::operator Ifc4x3_rc1::IfcAssemblyPlaceEnum::Value() const { @@ -2017,27 +1873,11 @@ Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(con } const char* Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "RAILWAY_COMMUNICATION_TERMINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::Value Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "RAILWAY_COMMUNICATION_TERMINAL") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RAILWAY_COMMUNICATION_TERMINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::Value) IFC4X3_RC1_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::operator Ifc4x3_rc1::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -2066,19 +1906,11 @@ Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x3_rc1::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC1_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBSplineCurveForm::Value Ifc4x3_rc1::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc1::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBSplineCurveForm::Value) IFC4X3_RC1_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBSplineCurveForm::operator Ifc4x3_rc1::IfcBSplineCurveForm::Value() const { @@ -2107,24 +1939,11 @@ Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4x3_rc1::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC1_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBSplineSurfaceForm::Value Ifc4x3_rc1::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc1::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBSplineSurfaceForm::Value) IFC4X3_RC1_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBSplineSurfaceForm::operator Ifc4x3_rc1::IfcBSplineSurfaceForm::Value() const { @@ -2153,27 +1972,11 @@ Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "GIRDER_SEGMENT", "DIAPHRAGM", "PIERCAP", "HATSTONE", "CORNICE", "EDGEBEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBeamTypeEnum::Value Ifc4x3_rc1::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "GIRDER_SEGMENT") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_GIRDER_SEGMENT; - if (s == "DIAPHRAGM") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_DIAPHRAGM; - if (s == "PIERCAP") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_PIERCAP; - if (s == "HATSTONE") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_HATSTONE; - if (s == "CORNICE") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_CORNICE; - if (s == "EDGEBEAM") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_EDGEBEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBeamTypeEnum::Value) IFC4X3_RC1_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBeamTypeEnum::operator Ifc4x3_rc1::IfcBeamTypeEnum::Value() const { @@ -2202,18 +2005,11 @@ Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(const } const char* Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXED_MOVEMENT", "GUIDED_LONGITUDINAL", "GUIDED_TRANSVERSAL", "FREE_MOVEMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBearingTypeDisplacementEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::Value Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::FromString(const std::string& s) { - if (s == "FIXED_MOVEMENT") return ::Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FIXED_MOVEMENT; - if (s == "GUIDED_LONGITUDINAL") return ::Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_LONGITUDINAL; - if (s == "GUIDED_TRANSVERSAL") return ::Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_TRANSVERSAL; - if (s == "FREE_MOVEMENT") return ::Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FREE_MOVEMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::Value) IFC4X3_RC1_IfcBearingTypeDisplacementEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::operator Ifc4x3_rc1::IfcBearingTypeDisplacementEnum::Value() const { @@ -2242,23 +2038,11 @@ Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBearingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYLINDRICAL", "SPHERICAL", "ELASTOMERIC", "POT", "GUIDE", "ROCKER", "ROLLER", "DISK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBearingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBearingTypeEnum::Value Ifc4x3_rc1::IfcBearingTypeEnum::FromString(const std::string& s) { - if (s == "CYLINDRICAL") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_CYLINDRICAL; - if (s == "SPHERICAL") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_SPHERICAL; - if (s == "ELASTOMERIC") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_ELASTOMERIC; - if (s == "POT") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_POT; - if (s == "GUIDE") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_GUIDE; - if (s == "ROCKER") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_ROCKER; - if (s == "ROLLER") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_ROLLER; - if (s == "DISK") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_DISK; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBearingTypeEnum::IfcBearingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBearingTypeEnum::Value) IFC4X3_RC1_IfcBearingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBearingTypeEnum::operator Ifc4x3_rc1::IfcBearingTypeEnum::Value() const { @@ -2287,23 +2071,11 @@ Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4X3_RC1_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBenchmarkEnum::Value Ifc4x3_rc1::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4x3_rc1::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBenchmarkEnum::Value) IFC4X3_RC1_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBenchmarkEnum::operator Ifc4x3_rc1::IfcBenchmarkEnum::Value() const { @@ -2332,17 +2104,11 @@ Ifc4x3_rc1::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBoilerTypeEnum::Value Ifc4x3_rc1::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4x3_rc1::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4x3_rc1::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBoilerTypeEnum::Value) IFC4X3_RC1_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBoilerTypeEnum::operator Ifc4x3_rc1::IfcBoilerTypeEnum::Value() const { @@ -2371,16 +2137,11 @@ Ifc4x3_rc1::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x3_rc1::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4X3_RC1_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBooleanOperator::Value Ifc4x3_rc1::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4x3_rc1::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4x3_rc1::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4x3_rc1::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBooleanOperator::Value) IFC4X3_RC1_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBooleanOperator::operator Ifc4x3_rc1::IfcBooleanOperator::Value() const { @@ -2409,25 +2170,11 @@ Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBridgePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "DECK", "DECK_SEGMENT", "FOUNDATION", "PIER", "PIER_SEGMENT", "PYLON", "SUBSTRUCTURE", "SUPERSTRUCTURE", "SURFACESTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBridgePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBridgePartTypeEnum::Value Ifc4x3_rc1::IfcBridgePartTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_ABUTMENT; - if (s == "DECK") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_DECK; - if (s == "DECK_SEGMENT") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_DECK_SEGMENT; - if (s == "FOUNDATION") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_FOUNDATION; - if (s == "PIER") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_PIER; - if (s == "PIER_SEGMENT") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_PIER_SEGMENT; - if (s == "PYLON") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_PYLON; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_SUPERSTRUCTURE; - if (s == "SURFACESTRUCTURE") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_SURFACESTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBridgePartTypeEnum::IfcBridgePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBridgePartTypeEnum::Value) IFC4X3_RC1_IfcBridgePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBridgePartTypeEnum::operator Ifc4x3_rc1::IfcBridgePartTypeEnum::Value() const { @@ -2456,23 +2203,11 @@ Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBridgeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHED", "CABLE_STAYED", "CANTILEVER", "CULVERT", "FRAMEWORK", "GIRDER", "SUSPENSION", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBridgeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBridgeTypeEnum::Value Ifc4x3_rc1::IfcBridgeTypeEnum::FromString(const std::string& s) { - if (s == "ARCHED") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_ARCHED; - if (s == "CABLE_STAYED") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_CABLE_STAYED; - if (s == "CANTILEVER") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_CANTILEVER; - if (s == "CULVERT") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_CULVERT; - if (s == "FRAMEWORK") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_FRAMEWORK; - if (s == "GIRDER") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_GIRDER; - if (s == "SUSPENSION") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_SUSPENSION; - if (s == "TRUSS") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBridgeTypeEnum::IfcBridgeType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBridgeTypeEnum::Value) IFC4X3_RC1_IfcBridgeTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBridgeTypeEnum::operator Ifc4x3_rc1::IfcBridgeTypeEnum::Value() const { @@ -2501,20 +2236,11 @@ Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const } const char* Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "APRON", "ARMOURUNIT", "SAFETYCAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::Value Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "APRON") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_APRON; - if (s == "ARMOURUNIT") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_ARMOURUNIT; - if (s == "SAFETYCAGE") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_SAFETYCAGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::Value) IFC4X3_RC1_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::operator Ifc4x3_rc1::IfcBuildingElementPartTypeEnum::Value() const { @@ -2543,20 +2269,11 @@ Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(con } const char* Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::Value Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::Value) IFC4X3_RC1_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::operator Ifc4x3_rc1::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2585,24 +2302,11 @@ Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "REINFORCING", "PRESTRESSING", "EROSIONPREVENTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBuildingSystemTypeEnum::Value Ifc4x3_rc1::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "REINFORCING") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_REINFORCING; - if (s == "PRESTRESSING") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_PRESTRESSING; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_EROSIONPREVENTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBuildingSystemTypeEnum::Value) IFC4X3_RC1_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBuildingSystemTypeEnum::operator Ifc4x3_rc1::IfcBuildingSystemTypeEnum::Value() const { @@ -2631,27 +2335,11 @@ Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcBuiltSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "REINFORCING", "MOORING", "OUTERSHELL", "TRACKCIRCUIT", "EROSIONPREVENTION", "FOUNDATION", "LOADBEARING", "SHADING", "FENESTRATION", "MOORINGSYSTEM", "TRANSPORT", "PRESTRESSING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBuiltSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBuiltSystemTypeEnum::Value Ifc4x3_rc1::IfcBuiltSystemTypeEnum::FromString(const std::string& s) { - if (s == "REINFORCING") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_REINFORCING; - if (s == "MOORING") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_OUTERSHELL; - if (s == "TRACKCIRCUIT") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRACKCIRCUIT; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_EROSIONPREVENTION; - if (s == "FOUNDATION") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_LOADBEARING; - if (s == "SHADING") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_SHADING; - if (s == "FENESTRATION") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FENESTRATION; - if (s == "MOORINGSYSTEM") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORINGSYSTEM; - if (s == "TRANSPORT") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRANSPORT; - if (s == "PRESTRESSING") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_PRESTRESSING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBuiltSystemTypeEnum::Value) IFC4X3_RC1_IfcBuiltSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBuiltSystemTypeEnum::operator Ifc4x3_rc1::IfcBuiltSystemTypeEnum::Value() const { @@ -2680,15 +2368,11 @@ Ifc4x3_rc1::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcBurnerTypeEnum::Value Ifc4x3_rc1::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcBurnerTypeEnum::Value) IFC4X3_RC1_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcBurnerTypeEnum::operator Ifc4x3_rc1::IfcBurnerTypeEnum::Value() const { @@ -2717,19 +2401,11 @@ Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const } const char* Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::Value Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::Value) IFC4X3_RC1_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::operator Ifc4x3_rc1::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2758,22 +2434,11 @@ Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const } const char* Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "CABLEBRACKET", "CATENARYWIRE", "DROPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::Value Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "CABLEBRACKET") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLEBRACKET; - if (s == "CATENARYWIRE") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CATENARYWIRE; - if (s == "DROPPER") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_DROPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::Value) IFC4X3_RC1_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::operator Ifc4x3_rc1::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2802,21 +2467,11 @@ Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "FANOUT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCableFittingTypeEnum::Value Ifc4x3_rc1::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "FANOUT") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_FANOUT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCableFittingTypeEnum::Value) IFC4X3_RC1_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCableFittingTypeEnum::operator Ifc4x3_rc1::IfcCableFittingTypeEnum::Value() const { @@ -2845,25 +2500,11 @@ Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "CONTACTWIRESEGMENT", "FIBERSEGMENT", "FIBERTUBE", "OPTICALCABLESEGMENT", "STITCHWIRE", "WIREPAIRSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCableSegmentTypeEnum::Value Ifc4x3_rc1::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "CONTACTWIRESEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONTACTWIRESEGMENT; - if (s == "FIBERSEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERSEGMENT; - if (s == "FIBERTUBE") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERTUBE; - if (s == "OPTICALCABLESEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_OPTICALCABLESEGMENT; - if (s == "STITCHWIRE") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_STITCHWIRE; - if (s == "WIREPAIRSEGMENT") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_WIREPAIRSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCableSegmentTypeEnum::Value) IFC4X3_RC1_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCableSegmentTypeEnum::operator Ifc4x3_rc1::IfcCableSegmentTypeEnum::Value() const { @@ -2892,17 +2533,11 @@ Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std } const char* Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WELL", "CAISSON", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::Value Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::FromString(const std::string& s) { - if (s == "WELL") return ::Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_WELL; - if (s == "CAISSON") return ::Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_CAISSON; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::Value) IFC4X3_RC1_IfcCaissonFoundationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::operator Ifc4x3_rc1::IfcCaissonFoundationTypeEnum::Value() const { @@ -2931,18 +2566,11 @@ Ifc4x3_rc1::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcChangeActionEnum::Value Ifc4x3_rc1::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4x3_rc1::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4x3_rc1::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4x3_rc1::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x3_rc1::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcChangeActionEnum::Value) IFC4X3_RC1_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcChangeActionEnum::operator Ifc4x3_rc1::IfcChangeActionEnum::Value() const { @@ -2971,18 +2599,11 @@ Ifc4x3_rc1::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcChillerTypeEnum::Value Ifc4x3_rc1::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc1::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc1::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x3_rc1::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcChillerTypeEnum::Value) IFC4X3_RC1_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcChillerTypeEnum::operator Ifc4x3_rc1::IfcChillerTypeEnum::Value() const { @@ -3011,15 +2632,11 @@ Ifc4x3_rc1::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcChimneyTypeEnum::Value Ifc4x3_rc1::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcChimneyTypeEnum::Value) IFC4X3_RC1_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcChimneyTypeEnum::operator Ifc4x3_rc1::IfcChimneyTypeEnum::Value() const { @@ -3048,22 +2665,11 @@ Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCoilTypeEnum::Value Ifc4x3_rc1::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCoilTypeEnum::Value) IFC4X3_RC1_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCoilTypeEnum::operator Ifc4x3_rc1::IfcCoilTypeEnum::Value() const { @@ -3092,20 +2698,11 @@ Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "PIERSTEM", "PIERSTEM_SEGMENT", "STANDCOLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcColumnTypeEnum::Value Ifc4x3_rc1::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "PIERSTEM") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_PIERSTEM; - if (s == "PIERSTEM_SEGMENT") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_PIERSTEM_SEGMENT; - if (s == "STANDCOLUMN") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_STANDCOLUMN; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcColumnTypeEnum::Value) IFC4X3_RC1_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcColumnTypeEnum::operator Ifc4x3_rc1::IfcColumnTypeEnum::Value() const { @@ -3134,36 +2731,11 @@ Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEn } const char* Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "AUTOMATON", "INTELLIGENT_PERIPHERAL", "IP_NETWORK_EQUIPMENT", "OPTICAL_NETWORK_UNIT", "TELECOMMAND", "TELEPHONYEXCHANGE", "TRANSITIONCOMPONENT", "TRANSPONDER", "TRANSPORTEQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::Value Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "AUTOMATON") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_AUTOMATON; - if (s == "INTELLIGENT_PERIPHERAL") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_INTELLIGENT_PERIPHERAL; - if (s == "IP_NETWORK_EQUIPMENT") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_IP_NETWORK_EQUIPMENT; - if (s == "OPTICAL_NETWORK_UNIT") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICAL_NETWORK_UNIT; - if (s == "TELECOMMAND") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELECOMMAND; - if (s == "TELEPHONYEXCHANGE") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELEPHONYEXCHANGE; - if (s == "TRANSITIONCOMPONENT") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSITIONCOMPONENT; - if (s == "TRANSPONDER") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPONDER; - if (s == "TRANSPORTEQUIPMENT") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::Value) IFC4X3_RC1_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::operator Ifc4x3_rc1::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -3192,15 +2764,11 @@ Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEn } const char* Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X3_RC1_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x3_rc1::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -3229,30 +2797,11 @@ Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCompressorTypeEnum::Value Ifc4x3_rc1::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCompressorTypeEnum::Value) IFC4X3_RC1_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCompressorTypeEnum::operator Ifc4x3_rc1::IfcCompressorTypeEnum::Value() const { @@ -3281,22 +2830,11 @@ Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCondenserTypeEnum::Value Ifc4x3_rc1::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCondenserTypeEnum::Value) IFC4X3_RC1_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCondenserTypeEnum::operator Ifc4x3_rc1::IfcCondenserTypeEnum::Value() const { @@ -3325,17 +2863,11 @@ Ifc4x3_rc1::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcConnectionTypeEnum::Value Ifc4x3_rc1::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4x3_rc1::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x3_rc1::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4x3_rc1::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcConnectionTypeEnum::Value) IFC4X3_RC1_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcConnectionTypeEnum::operator Ifc4x3_rc1::IfcConnectionTypeEnum::Value() const { @@ -3364,18 +2896,11 @@ Ifc4x3_rc1::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcConstraintEnum::Value Ifc4x3_rc1::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4x3_rc1::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x3_rc1::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4x3_rc1::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcConstraintEnum::Value) IFC4X3_RC1_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcConstraintEnum::operator Ifc4x3_rc1::IfcConstraintEnum::Value() const { @@ -3404,23 +2929,11 @@ Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentRe } const char* Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X3_RC1_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x3_rc1::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -3449,24 +2962,11 @@ Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialReso } const char* Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X3_RC1_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x3_rc1::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3495,17 +2995,11 @@ Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResour } const char* Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::Value) IFC4X3_RC1_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::operator Ifc4x3_rc1::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3534,20 +3028,11 @@ Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcControllerTypeEnum::Value Ifc4x3_rc1::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcControllerTypeEnum::Value) IFC4X3_RC1_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcControllerTypeEnum::operator Ifc4x3_rc1::IfcControllerTypeEnum::Value() const { @@ -3576,19 +3061,11 @@ Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::st } const char* Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHUTECONVEYOR", "BELTCONVEYOR", "SCREWCONVEYOR", "BUCKETCONVEYOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::Value Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CHUTECONVEYOR") return ::Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_CHUTECONVEYOR; - if (s == "BELTCONVEYOR") return ::Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BELTCONVEYOR; - if (s == "SCREWCONVEYOR") return ::Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_SCREWCONVEYOR; - if (s == "BUCKETCONVEYOR") return ::Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BUCKETCONVEYOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::Value) IFC4X3_RC1_IfcConveyorSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::operator Ifc4x3_rc1::IfcConveyorSegmentTypeEnum::Value() const { @@ -3617,17 +3094,11 @@ Ifc4x3_rc1::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCooledBeamTypeEnum::Value Ifc4x3_rc1::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x3_rc1::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x3_rc1::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCooledBeamTypeEnum::Value) IFC4X3_RC1_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCooledBeamTypeEnum::operator Ifc4x3_rc1::IfcCooledBeamTypeEnum::Value() const { @@ -3656,18 +3127,11 @@ Ifc4x3_rc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCoolingTowerTypeEnum::Value Ifc4x3_rc1::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4x3_rc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x3_rc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x3_rc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCoolingTowerTypeEnum::Value) IFC4X3_RC1_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCoolingTowerTypeEnum::operator Ifc4x3_rc1::IfcCoolingTowerTypeEnum::Value() const { @@ -3696,15 +3160,11 @@ Ifc4x3_rc1::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCostItemTypeEnum::Value Ifc4x3_rc1::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCostItemTypeEnum::Value) IFC4X3_RC1_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCostItemTypeEnum::operator Ifc4x3_rc1::IfcCostItemTypeEnum::Value() const { @@ -3733,22 +3193,11 @@ Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCostScheduleTypeEnum::Value Ifc4x3_rc1::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCostScheduleTypeEnum::Value) IFC4X3_RC1_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCostScheduleTypeEnum::operator Ifc4x3_rc1::IfcCostScheduleTypeEnum::Value() const { @@ -3777,21 +3226,11 @@ Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCourseTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARMOUR", "FILTER", "BALLASTBED", "CORE", "PAVEMENT", "PROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCourseTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCourseTypeEnum::Value Ifc4x3_rc1::IfcCourseTypeEnum::FromString(const std::string& s) { - if (s == "ARMOUR") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_ARMOUR; - if (s == "FILTER") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_FILTER; - if (s == "BALLASTBED") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_BALLASTBED; - if (s == "CORE") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_CORE; - if (s == "PAVEMENT") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_PAVEMENT; - if (s == "PROTECTION") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_PROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCourseTypeEnum::IfcCourseType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCourseTypeEnum::Value) IFC4X3_RC1_IfcCourseTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCourseTypeEnum::operator Ifc4x3_rc1::IfcCourseTypeEnum::Value() const { @@ -3820,26 +3259,11 @@ Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "COPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCoveringTypeEnum::Value Ifc4x3_rc1::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "COPING") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_COPING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCoveringTypeEnum::Value) IFC4X3_RC1_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCoveringTypeEnum::operator Ifc4x3_rc1::IfcCoveringTypeEnum::Value() const { @@ -3868,17 +3292,11 @@ Ifc4x3_rc1::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCrewResourceTypeEnum::Value Ifc4x3_rc1::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc1::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc1::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCrewResourceTypeEnum::Value) IFC4X3_RC1_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCrewResourceTypeEnum::operator Ifc4x3_rc1::IfcCrewResourceTypeEnum::Value() const { @@ -3907,15 +3325,11 @@ Ifc4x3_rc1::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCurtainWallTypeEnum::Value Ifc4x3_rc1::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCurtainWallTypeEnum::Value) IFC4X3_RC1_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCurtainWallTypeEnum::operator Ifc4x3_rc1::IfcCurtainWallTypeEnum::Value() const { @@ -3944,17 +3358,11 @@ Ifc4x3_rc1::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::stri } const char* Ifc4x3_rc1::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcCurveInterpolationEnum::Value Ifc4x3_rc1::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x3_rc1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x3_rc1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x3_rc1::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcCurveInterpolationEnum::Value) IFC4X3_RC1_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcCurveInterpolationEnum::operator Ifc4x3_rc1::IfcCurveInterpolationEnum::Value() const { @@ -3983,26 +3391,11 @@ Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDamperTypeEnum::Value Ifc4x3_rc1::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDamperTypeEnum::Value) IFC4X3_RC1_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDamperTypeEnum::operator Ifc4x3_rc1::IfcDamperTypeEnum::Value() const { @@ -4031,18 +3424,11 @@ Ifc4x3_rc1::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDataOriginEnum::Value Ifc4x3_rc1::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x3_rc1::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x3_rc1::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x3_rc1::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDataOriginEnum::Value) IFC4X3_RC1_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDataOriginEnum::operator Ifc4x3_rc1::IfcDataOriginEnum::Value() const { @@ -4071,66 +3457,11 @@ Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDerivedUnitEnum::Value Ifc4x3_rc1::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDerivedUnitEnum::Value) IFC4X3_RC1_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDerivedUnitEnum::operator Ifc4x3_rc1::IfcDerivedUnitEnum::Value() const { @@ -4159,15 +3490,11 @@ Ifc4x3_rc1::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4X3_RC1_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDirectionSenseEnum::Value Ifc4x3_rc1::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc1::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc1::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDirectionSenseEnum::Value) IFC4X3_RC1_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDirectionSenseEnum::operator Ifc4x3_rc1::IfcDirectionSenseEnum::Value() const { @@ -4196,32 +3523,11 @@ Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std } const char* Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 19 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "EXPANSION_JOINT_DEVICE", "BIRDPROTECTION", "CABLEARRANGER", "INSULATOR", "LOCK", "TENSIONINGEQUIPMENT", "RAILPAD", "SLIDINGCHAIR", "PANEL_STRENGTHENING", "RAILBRACE", "ELASTIC_CUSHION", "SOUNDABSORPTION", "RAIL_LUBRICATION", "RAIL_MECHANICAL_EQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::Value Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "EXPANSION_JOINT_DEVICE") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_EXPANSION_JOINT_DEVICE; - if (s == "BIRDPROTECTION") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BIRDPROTECTION; - if (s == "CABLEARRANGER") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_CABLEARRANGER; - if (s == "INSULATOR") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_INSULATOR; - if (s == "LOCK") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_LOCK; - if (s == "TENSIONINGEQUIPMENT") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_TENSIONINGEQUIPMENT; - if (s == "RAILPAD") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILPAD; - if (s == "SLIDINGCHAIR") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SLIDINGCHAIR; - if (s == "PANEL_STRENGTHENING") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_PANEL_STRENGTHENING; - if (s == "RAILBRACE") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILBRACE; - if (s == "ELASTIC_CUSHION") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ELASTIC_CUSHION; - if (s == "SOUNDABSORPTION") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SOUNDABSORPTION; - if (s == "RAIL_LUBRICATION") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_LUBRICATION; - if (s == "RAIL_MECHANICAL_EQUIPMENT") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_MECHANICAL_EQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::Value) IFC4X3_RC1_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::operator Ifc4x3_rc1::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -4250,20 +3556,11 @@ Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std } const char* Ifc4x3_rc1::IfcDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWITCHBOARD", "CONSUMERUNIT", "MOTORCONTROLCENTRE", "DISTRIBUTIONFRAME", "DISTRIBUTIONBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDistributionBoardTypeEnum::Value Ifc4x3_rc1::IfcDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "SWITCHBOARD") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_SWITCHBOARD; - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_CONSUMERUNIT; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "DISTRIBUTIONFRAME") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONFRAME; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDistributionBoardTypeEnum::Value) IFC4X3_RC1_IfcDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDistributionBoardTypeEnum::operator Ifc4x3_rc1::IfcDistributionBoardTypeEnum::Value() const { @@ -4292,23 +3589,11 @@ Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElement } const char* Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::Value Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::Value) IFC4X3_RC1_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::operator Ifc4x3_rc1::IfcDistributionChamberElementTypeEnum::Value() const { @@ -4337,20 +3622,11 @@ Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std:: } const char* Ifc4x3_rc1::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "WIRELESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDistributionPortTypeEnum::Value Ifc4x3_rc1::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "WIRELESS") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_WIRELESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDistributionPortTypeEnum::Value) IFC4X3_RC1_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDistributionPortTypeEnum::operator Ifc4x3_rc1::IfcDistributionPortTypeEnum::Value() const { @@ -4379,60 +3655,11 @@ Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::stri } const char* Ifc4x3_rc1::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 47 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "CATENARY_SYSTEM", "OVERHEAD_CONTACTLINE_SYSTEM", "RETURN_CIRCUIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDistributionSystemEnum::Value Ifc4x3_rc1::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "CATENARY_SYSTEM") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_CATENARY_SYSTEM; - if (s == "OVERHEAD_CONTACTLINE_SYSTEM") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_OVERHEAD_CONTACTLINE_SYSTEM; - if (s == "RETURN_CIRCUIT") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_RETURN_CIRCUIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDistributionSystemEnum::Value) IFC4X3_RC1_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDistributionSystemEnum::operator Ifc4x3_rc1::IfcDistributionSystemEnum::Value() const { @@ -4461,19 +3688,11 @@ Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const } const char* Ifc4x3_rc1::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDocumentConfidentialityEnum::Value Ifc4x3_rc1::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDocumentConfidentialityEnum::Value) IFC4X3_RC1_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDocumentConfidentialityEnum::operator Ifc4x3_rc1::IfcDocumentConfidentialityEnum::Value() const { @@ -4502,18 +3721,11 @@ Ifc4x3_rc1::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDocumentStatusEnum::Value Ifc4x3_rc1::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x3_rc1::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4x3_rc1::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4x3_rc1::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4x3_rc1::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDocumentStatusEnum::Value) IFC4X3_RC1_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDocumentStatusEnum::operator Ifc4x3_rc1::IfcDocumentStatusEnum::Value() const { @@ -4542,22 +3754,11 @@ Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::stri } const char* Ifc4x3_rc1::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDoorPanelOperationEnum::Value Ifc4x3_rc1::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDoorPanelOperationEnum::Value) IFC4X3_RC1_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDoorPanelOperationEnum::operator Ifc4x3_rc1::IfcDoorPanelOperationEnum::Value() const { @@ -4586,17 +3787,11 @@ Ifc4x3_rc1::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string } const char* Ifc4x3_rc1::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDoorPanelPositionEnum::Value Ifc4x3_rc1::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDoorPanelPositionEnum::Value) IFC4X3_RC1_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDoorPanelPositionEnum::operator Ifc4x3_rc1::IfcDoorPanelPositionEnum::Value() const { @@ -4625,22 +3820,11 @@ Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std } const char* Ifc4x3_rc1::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDoorStyleConstructionEnum::Value Ifc4x3_rc1::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDoorStyleConstructionEnum::Value) IFC4X3_RC1_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDoorStyleConstructionEnum::operator Ifc4x3_rc1::IfcDoorStyleConstructionEnum::Value() const { @@ -4669,31 +3853,11 @@ Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::stri } const char* Ifc4x3_rc1::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDoorStyleOperationEnum::Value Ifc4x3_rc1::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDoorStyleOperationEnum::Value) IFC4X3_RC1_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDoorStyleOperationEnum::operator Ifc4x3_rc1::IfcDoorStyleOperationEnum::Value() const { @@ -4722,20 +3886,11 @@ Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "BOOM_BARRIER", "TURNSTILE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDoorTypeEnum::Value Ifc4x3_rc1::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "BOOM_BARRIER") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_BOOM_BARRIER; - if (s == "TURNSTILE") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_TURNSTILE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDoorTypeEnum::Value) IFC4X3_RC1_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDoorTypeEnum::operator Ifc4x3_rc1::IfcDoorTypeEnum::Value() const { @@ -4764,33 +3919,11 @@ Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string } const char* Ifc4x3_rc1::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 20 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDoorTypeOperationEnum::Value Ifc4x3_rc1::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDoorTypeOperationEnum::Value) IFC4X3_RC1_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDoorTypeOperationEnum::operator Ifc4x3_rc1::IfcDoorTypeOperationEnum::Value() const { @@ -4819,22 +3952,11 @@ Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDuctFittingTypeEnum::Value Ifc4x3_rc1::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDuctFittingTypeEnum::Value) IFC4X3_RC1_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDuctFittingTypeEnum::operator Ifc4x3_rc1::IfcDuctFittingTypeEnum::Value() const { @@ -4863,17 +3985,11 @@ Ifc4x3_rc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDuctSegmentTypeEnum::Value Ifc4x3_rc1::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDuctSegmentTypeEnum::Value) IFC4X3_RC1_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDuctSegmentTypeEnum::operator Ifc4x3_rc1::IfcDuctSegmentTypeEnum::Value() const { @@ -4902,18 +4018,11 @@ Ifc4x3_rc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcDuctSilencerTypeEnum::Value Ifc4x3_rc1::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x3_rc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x3_rc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x3_rc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcDuctSilencerTypeEnum::Value) IFC4X3_RC1_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcDuctSilencerTypeEnum::operator Ifc4x3_rc1::IfcDuctSilencerTypeEnum::Value() const { @@ -4942,24 +4051,11 @@ Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcEarthworksCutTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRENCH", "DREDGING", "EXCAVATION", "OVEREXCAVATION", "TOPSOILREMOVAL", "STEPEXCAVATION", "PAVEMENTMILLING", "CUT", "BASE_EXCAVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEarthworksCutTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEarthworksCutTypeEnum::Value Ifc4x3_rc1::IfcEarthworksCutTypeEnum::FromString(const std::string& s) { - if (s == "TRENCH") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TRENCH; - if (s == "DREDGING") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_DREDGING; - if (s == "EXCAVATION") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_EXCAVATION; - if (s == "OVEREXCAVATION") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_OVEREXCAVATION; - if (s == "TOPSOILREMOVAL") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TOPSOILREMOVAL; - if (s == "STEPEXCAVATION") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_STEPEXCAVATION; - if (s == "PAVEMENTMILLING") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_PAVEMENTMILLING; - if (s == "CUT") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_CUT; - if (s == "BASE_EXCAVATION") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_BASE_EXCAVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEarthworksCutTypeEnum::Value) IFC4X3_RC1_IfcEarthworksCutTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEarthworksCutTypeEnum::operator Ifc4x3_rc1::IfcEarthworksCutTypeEnum::Value() const { @@ -4988,22 +4084,11 @@ Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcEarthworksFillTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKFILL", "COUNTERWEIGHT", "SUBGRADE", "EMBANKMENT", "TRANSITIONSECTION", "SUBGRADEBED", "SLOPEFILL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEarthworksFillTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEarthworksFillTypeEnum::Value Ifc4x3_rc1::IfcEarthworksFillTypeEnum::FromString(const std::string& s) { - if (s == "BACKFILL") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_BACKFILL; - if (s == "COUNTERWEIGHT") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_COUNTERWEIGHT; - if (s == "SUBGRADE") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADE; - if (s == "EMBANKMENT") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_EMBANKMENT; - if (s == "TRANSITIONSECTION") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_TRANSITIONSECTION; - if (s == "SUBGRADEBED") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADEBED; - if (s == "SLOPEFILL") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SLOPEFILL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEarthworksFillTypeEnum::Value) IFC4X3_RC1_IfcEarthworksFillTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEarthworksFillTypeEnum::operator Ifc4x3_rc1::IfcEarthworksFillTypeEnum::Value() const { @@ -5032,31 +4117,11 @@ Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std } const char* Ifc4x3_rc1::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricApplianceTypeEnum::Value Ifc4x3_rc1::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricApplianceTypeEnum::Value) IFC4X3_RC1_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricApplianceTypeEnum::operator Ifc4x3_rc1::IfcElectricApplianceTypeEnum::Value() const { @@ -5085,19 +4150,11 @@ Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTy } const char* Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::Value Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::Value) IFC4X3_RC1_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::operator Ifc4x3_rc1::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -5126,24 +4183,11 @@ Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTy } const char* Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "CAPACITOR", "COMPENSATOR", "INDUCTOR", "RECHARGER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "CAPACITOR") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITOR; - if (s == "COMPENSATOR") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_COMPENSATOR; - if (s == "INDUCTOR") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTOR; - if (s == "RECHARGER") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_RECHARGER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X3_RC1_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x3_rc1::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -5172,16 +4216,11 @@ Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDevi } const char* Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONICFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::Value Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONICFILTER") return ::Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_ELECTRONICFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::Value) IFC4X3_RC1_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::operator Ifc4x3_rc1::IfcElectricFlowTreatmentDeviceTypeEnum::Value() const { @@ -5210,18 +4249,11 @@ Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std } const char* Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::Value Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::Value) IFC4X3_RC1_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::operator Ifc4x3_rc1::IfcElectricGeneratorTypeEnum::Value() const { @@ -5250,20 +4282,11 @@ Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricMotorTypeEnum::Value Ifc4x3_rc1::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricMotorTypeEnum::Value) IFC4X3_RC1_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricMotorTypeEnum::operator Ifc4x3_rc1::IfcElectricMotorTypeEnum::Value() const { @@ -5292,18 +4315,11 @@ Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const } const char* Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::Value Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::Value) IFC4X3_RC1_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::operator Ifc4x3_rc1::IfcElectricTimeControlTypeEnum::Value() const { @@ -5332,43 +4348,11 @@ Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::st } const char* Ifc4x3_rc1::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "ABUTMENT", "PIER", "PYLON", "CROSS_BRACING", "DECK", "MAST", "SIGNALASSEMBLY", "GRID", "SHELTER", "SUPPORTINGASSEMBLY", "SUSPENSIONASSEMBLY", "TRACTION_SWITCHING_ASSEMBLY", "TRACKPANEL", "TURNOUTPANEL", "DILATATIONPANEL", "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY", "ENTRANCEWORKS", "SUMPBUSTER", "TRAFFIC_CALMING_DEVICE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElementAssemblyTypeEnum::Value Ifc4x3_rc1::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "ABUTMENT") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ABUTMENT; - if (s == "PIER") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PIER; - if (s == "PYLON") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PYLON; - if (s == "CROSS_BRACING") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_CROSS_BRACING; - if (s == "DECK") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DECK; - if (s == "MAST") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_MAST; - if (s == "SIGNALASSEMBLY") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SIGNALASSEMBLY; - if (s == "GRID") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GRID; - if (s == "SHELTER") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SHELTER; - if (s == "SUPPORTINGASSEMBLY") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUPPORTINGASSEMBLY; - if (s == "SUSPENSIONASSEMBLY") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUSPENSIONASSEMBLY; - if (s == "TRACTION_SWITCHING_ASSEMBLY") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACTION_SWITCHING_ASSEMBLY; - if (s == "TRACKPANEL") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACKPANEL; - if (s == "TURNOUTPANEL") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TURNOUTPANEL; - if (s == "DILATATIONPANEL") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DILATATIONPANEL; - if (s == "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY; - if (s == "ENTRANCEWORKS") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ENTRANCEWORKS; - if (s == "SUMPBUSTER") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUMPBUSTER; - if (s == "TRAFFIC_CALMING_DEVICE") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRAFFIC_CALMING_DEVICE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElementAssemblyTypeEnum::Value) IFC4X3_RC1_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElementAssemblyTypeEnum::operator Ifc4x3_rc1::IfcElementAssemblyTypeEnum::Value() const { @@ -5397,16 +4381,11 @@ Ifc4x3_rc1::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::stri } const char* Ifc4x3_rc1::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X3_RC1_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcElementCompositionEnum::Value Ifc4x3_rc1::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc1::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc1::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc1::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcElementCompositionEnum::Value) IFC4X3_RC1_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcElementCompositionEnum::operator Ifc4x3_rc1::IfcElementCompositionEnum::Value() const { @@ -5435,17 +4414,11 @@ Ifc4x3_rc1::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEngineTypeEnum::Value Ifc4x3_rc1::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x3_rc1::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x3_rc1::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEngineTypeEnum::Value) IFC4X3_RC1_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEngineTypeEnum::operator Ifc4x3_rc1::IfcEngineTypeEnum::Value() const { @@ -5474,24 +4447,11 @@ Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std } const char* Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::Value Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::Value) IFC4X3_RC1_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::operator Ifc4x3_rc1::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -5520,21 +4480,11 @@ Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEvaporatorTypeEnum::Value Ifc4x3_rc1::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEvaporatorTypeEnum::Value) IFC4X3_RC1_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEvaporatorTypeEnum::operator Ifc4x3_rc1::IfcEvaporatorTypeEnum::Value() const { @@ -5563,19 +4513,11 @@ Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEventTriggerTypeEnum::Value Ifc4x3_rc1::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEventTriggerTypeEnum::Value) IFC4X3_RC1_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEventTriggerTypeEnum::operator Ifc4x3_rc1::IfcEventTriggerTypeEnum::Value() const { @@ -5604,18 +4546,11 @@ Ifc4x3_rc1::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcEventTypeEnum::Value Ifc4x3_rc1::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4x3_rc1::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4x3_rc1::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x3_rc1::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcEventTypeEnum::Value) IFC4X3_RC1_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcEventTypeEnum::operator Ifc4x3_rc1::IfcEventTypeEnum::Value() const { @@ -5644,19 +4579,11 @@ Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum } const char* Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::Value Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::Value) IFC4X3_RC1_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::operator Ifc4x3_rc1::IfcExternalSpatialElementTypeEnum::Value() const { @@ -5685,23 +4612,11 @@ Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const s } const char* Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SEGMENT", "ABOVEGROUND", "JUNCTION", "LEVELCROSSING", "BELOWGROUND", "SUBSTRUCTURE", "TERMINAL", "SUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::Value Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::FromString(const std::string& s) { - if (s == "SEGMENT") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SEGMENT; - if (s == "ABOVEGROUND") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_ABOVEGROUND; - if (s == "JUNCTION") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_JUNCTION; - if (s == "LEVELCROSSING") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_LEVELCROSSING; - if (s == "BELOWGROUND") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_BELOWGROUND; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUBSTRUCTURE; - if (s == "TERMINAL") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_TERMINAL; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::Value) IFC4X3_RC1_IfcFacilityPartCommonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::operator Ifc4x3_rc1::IfcFacilityPartCommonTypeEnum::Value() const { @@ -5730,19 +4645,11 @@ Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFacilityUsageEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LATERAL", "REGION", "VERTICAL", "LONGITUDINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFacilityUsageEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFacilityUsageEnum::Value Ifc4x3_rc1::IfcFacilityUsageEnum::FromString(const std::string& s) { - if (s == "LATERAL") return ::Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsage_LATERAL; - if (s == "REGION") return ::Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsage_REGION; - if (s == "VERTICAL") return ::Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsage_VERTICAL; - if (s == "LONGITUDINAL") return ::Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsage_LONGITUDINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsage_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFacilityUsageEnum::IfcFacilityUsage_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFacilityUsageEnum::Value) IFC4X3_RC1_IfcFacilityUsageEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFacilityUsageEnum::operator Ifc4x3_rc1::IfcFacilityUsageEnum::Value() const { @@ -5771,22 +4678,11 @@ Ifc4x3_rc1::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFanTypeEnum::Value Ifc4x3_rc1::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFanTypeEnum::Value) IFC4X3_RC1_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFanTypeEnum::operator Ifc4x3_rc1::IfcFanTypeEnum::Value() const { @@ -5815,18 +4711,11 @@ Ifc4x3_rc1::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFastenerTypeEnum::Value Ifc4x3_rc1::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x3_rc1::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x3_rc1::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x3_rc1::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFastenerTypeEnum::Value) IFC4X3_RC1_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFastenerTypeEnum::operator Ifc4x3_rc1::IfcFastenerTypeEnum::Value() const { @@ -5855,21 +4744,11 @@ Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFilterTypeEnum::Value Ifc4x3_rc1::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFilterTypeEnum::Value) IFC4X3_RC1_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFilterTypeEnum::operator Ifc4x3_rc1::IfcFilterTypeEnum::Value() const { @@ -5898,20 +4777,11 @@ Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEn } const char* Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X3_RC1_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x3_rc1::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -5940,17 +4810,11 @@ Ifc4x3_rc1::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFlowDirectionEnum::Value Ifc4x3_rc1::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4x3_rc1::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4x3_rc1::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4x3_rc1::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFlowDirectionEnum::Value) IFC4X3_RC1_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFlowDirectionEnum::operator Ifc4x3_rc1::IfcFlowDirectionEnum::Value() const { @@ -5979,25 +4843,11 @@ Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "COMBINED", "VOLTMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::Value Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "COMBINED") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_COMBINED; - if (s == "VOLTMETER") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::Value) IFC4X3_RC1_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::operator Ifc4x3_rc1::IfcFlowInstrumentTypeEnum::Value() const { @@ -6026,19 +4876,11 @@ Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFlowMeterTypeEnum::Value Ifc4x3_rc1::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFlowMeterTypeEnum::Value) IFC4X3_RC1_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFlowMeterTypeEnum::operator Ifc4x3_rc1::IfcFlowMeterTypeEnum::Value() const { @@ -6067,20 +4909,11 @@ Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFootingTypeEnum::Value Ifc4x3_rc1::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFootingTypeEnum::Value) IFC4X3_RC1_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFootingTypeEnum::operator Ifc4x3_rc1::IfcFootingTypeEnum::Value() const { @@ -6109,23 +4942,11 @@ Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "TECHNICALCABINET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcFurnitureTypeEnum::Value Ifc4x3_rc1::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "TECHNICALCABINET") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_TECHNICALCABINET; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcFurnitureTypeEnum::Value) IFC4X3_RC1_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcFurnitureTypeEnum::operator Ifc4x3_rc1::IfcFurnitureTypeEnum::Value() const { @@ -6154,17 +4975,11 @@ Ifc4x3_rc1::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std } const char* Ifc4x3_rc1::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "SOIL_BORING_POINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcGeographicElementTypeEnum::Value Ifc4x3_rc1::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4x3_rc1::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "SOIL_BORING_POINT") return ::Ifc4x3_rc1::IfcGeographicElementTypeEnum::IfcGeographicElementType_SOIL_BORING_POINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcGeographicElementTypeEnum::Value) IFC4X3_RC1_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcGeographicElementTypeEnum::operator Ifc4x3_rc1::IfcGeographicElementTypeEnum::Value() const { @@ -6193,22 +5008,11 @@ Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::st } const char* Ifc4x3_rc1::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcGeometricProjectionEnum::Value Ifc4x3_rc1::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcGeometricProjectionEnum::Value) IFC4X3_RC1_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcGeometricProjectionEnum::operator Ifc4x3_rc1::IfcGeometricProjectionEnum::Value() const { @@ -6237,15 +5041,11 @@ Ifc4x3_rc1::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X3_RC1_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcGlobalOrLocalEnum::Value Ifc4x3_rc1::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x3_rc1::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x3_rc1::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcGlobalOrLocalEnum::Value) IFC4X3_RC1_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcGlobalOrLocalEnum::operator Ifc4x3_rc1::IfcGlobalOrLocalEnum::Value() const { @@ -6274,19 +5074,11 @@ Ifc4x3_rc1::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcGridTypeEnum::Value Ifc4x3_rc1::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4x3_rc1::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4x3_rc1::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4x3_rc1::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4x3_rc1::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcGridTypeEnum::Value) IFC4X3_RC1_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcGridTypeEnum::operator Ifc4x3_rc1::IfcGridTypeEnum::Value() const { @@ -6315,18 +5107,11 @@ Ifc4x3_rc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "TURNOUTHEATING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcHeatExchangerTypeEnum::Value Ifc4x3_rc1::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x3_rc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x3_rc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "TURNOUTHEATING") return ::Ifc4x3_rc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_TURNOUTHEATING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcHeatExchangerTypeEnum::Value) IFC4X3_RC1_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcHeatExchangerTypeEnum::operator Ifc4x3_rc1::IfcHeatExchangerTypeEnum::Value() const { @@ -6355,28 +5140,11 @@ Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcHumidifierTypeEnum::Value Ifc4x3_rc1::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcHumidifierTypeEnum::Value) IFC4X3_RC1_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcHumidifierTypeEnum::operator Ifc4x3_rc1::IfcHumidifierTypeEnum::Value() const { @@ -6405,19 +5173,11 @@ Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum } const char* Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CRASHCUSHION", "DAMPINGSYSTEM", "FENDER", "BUMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::Value Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CRASHCUSHION") return ::Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_CRASHCUSHION; - if (s == "DAMPINGSYSTEM") return ::Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_DAMPINGSYSTEM; - if (s == "FENDER") return ::Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_FENDER; - if (s == "BUMPER") return ::Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_BUMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::Value) IFC4X3_RC1_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::operator Ifc4x3_rc1::IfcImpactProtectionDeviceTypeEnum::Value() const { @@ -6446,19 +5206,11 @@ Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcInterceptorTypeEnum::Value Ifc4x3_rc1::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcInterceptorTypeEnum::Value) IFC4X3_RC1_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcInterceptorTypeEnum::operator Ifc4x3_rc1::IfcInterceptorTypeEnum::Value() const { @@ -6487,19 +5239,11 @@ Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::stri } const char* Ifc4x3_rc1::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcInternalOrExternalEnum::Value Ifc4x3_rc1::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcInternalOrExternalEnum::Value) IFC4X3_RC1_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcInternalOrExternalEnum::operator Ifc4x3_rc1::IfcInternalOrExternalEnum::Value() const { @@ -6528,18 +5272,11 @@ Ifc4x3_rc1::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcInventoryTypeEnum::Value Ifc4x3_rc1::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x3_rc1::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x3_rc1::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x3_rc1::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcInventoryTypeEnum::Value) IFC4X3_RC1_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcInventoryTypeEnum::operator Ifc4x3_rc1::IfcInventoryTypeEnum::Value() const { @@ -6568,17 +5305,11 @@ Ifc4x3_rc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcJunctionBoxTypeEnum::Value Ifc4x3_rc1::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x3_rc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x3_rc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcJunctionBoxTypeEnum::Value) IFC4X3_RC1_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcJunctionBoxTypeEnum::operator Ifc4x3_rc1::IfcJunctionBoxTypeEnum::Value() const { @@ -6607,17 +5338,11 @@ Ifc4x3_rc1::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x3_rc1::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC1_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcKnotType::Value Ifc4x3_rc1::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4x3_rc1::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x3_rc1::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x3_rc1::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc1::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcKnotType::Value) IFC4X3_RC1_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcKnotType::operator Ifc4x3_rc1::IfcKnotType::Value() const { @@ -6646,34 +5371,11 @@ Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLaborResourceTypeEnum::Value Ifc4x3_rc1::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLaborResourceTypeEnum::Value) IFC4X3_RC1_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLaborResourceTypeEnum::operator Ifc4x3_rc1::IfcLaborResourceTypeEnum::Value() const { @@ -6702,24 +5404,11 @@ Ifc4x3_rc1::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLampTypeEnum::Value Ifc4x3_rc1::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLampTypeEnum::Value) IFC4X3_RC1_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLampTypeEnum::operator Ifc4x3_rc1::IfcLampTypeEnum::Value() const { @@ -6748,16 +5437,11 @@ Ifc4x3_rc1::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string } const char* Ifc4x3_rc1::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X3_RC1_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLayerSetDirectionEnum::Value Ifc4x3_rc1::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x3_rc1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x3_rc1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x3_rc1::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLayerSetDirectionEnum::Value) IFC4X3_RC1_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLayerSetDirectionEnum::operator Ifc4x3_rc1::IfcLayerSetDirectionEnum::Value() const { @@ -6786,17 +5470,11 @@ Ifc4x3_rc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const s } const char* Ifc4x3_rc1::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLightDistributionCurveEnum::Value Ifc4x3_rc1::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x3_rc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x3_rc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x3_rc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLightDistributionCurveEnum::Value) IFC4X3_RC1_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLightDistributionCurveEnum::operator Ifc4x3_rc1::IfcLightDistributionCurveEnum::Value() const { @@ -6825,24 +5503,11 @@ Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::st } const char* Ifc4x3_rc1::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLightEmissionSourceEnum::Value Ifc4x3_rc1::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLightEmissionSourceEnum::Value) IFC4X3_RC1_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLightEmissionSourceEnum::operator Ifc4x3_rc1::IfcLightEmissionSourceEnum::Value() const { @@ -6871,18 +5536,11 @@ Ifc4x3_rc1::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLightFixtureTypeEnum::Value Ifc4x3_rc1::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4x3_rc1::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4x3_rc1::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x3_rc1::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLightFixtureTypeEnum::Value) IFC4X3_RC1_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLightFixtureTypeEnum::operator Ifc4x3_rc1::IfcLightFixtureTypeEnum::Value() const { @@ -6911,17 +5569,11 @@ Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOADINGARM", "HOSEREEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::Value Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::FromString(const std::string& s) { - if (s == "LOADINGARM") return ::Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_LOADINGARM; - if (s == "HOSEREEL") return ::Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_HOSEREEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::Value) IFC4X3_RC1_IfcLiquidTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::operator Ifc4x3_rc1::IfcLiquidTerminalTypeEnum::Value() const { @@ -6950,18 +5602,11 @@ Ifc4x3_rc1::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLoadGroupTypeEnum::Value Ifc4x3_rc1::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4x3_rc1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4x3_rc1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x3_rc1::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLoadGroupTypeEnum::Value) IFC4X3_RC1_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLoadGroupTypeEnum::operator Ifc4x3_rc1::IfcLoadGroupTypeEnum::Value() const { @@ -6990,18 +5635,11 @@ Ifc4x3_rc1::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4X3_RC1_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcLogicalOperatorEnum::Value Ifc4x3_rc1::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x3_rc1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4x3_rc1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x3_rc1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4x3_rc1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x3_rc1::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcLogicalOperatorEnum::Value) IFC4X3_RC1_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcLogicalOperatorEnum::operator Ifc4x3_rc1::IfcLogicalOperatorEnum::Value() const { @@ -7030,34 +5668,11 @@ Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcMarineFacilityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CANAL", "WATERWAYSHIPLIFT", "EMBANKMENT", "LAUNCHRECOVERY", "MARINEDEFENCE", "HYDROLIFT", "SHIPYARD", "SHIPLIFT", "PORT", "QUAY", "FLOATINGDOCK", "NAVIGATIONALCHANNEL", "BREAKWATER", "DRYDOCK", "JETTY", "SHIPLOCK", "BARRIERBEACH", "SLIPWAY", "WATERWAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMarineFacilityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMarineFacilityTypeEnum::Value Ifc4x3_rc1::IfcMarineFacilityTypeEnum::FromString(const std::string& s) { - if (s == "CANAL") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_CANAL; - if (s == "WATERWAYSHIPLIFT") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAYSHIPLIFT; - if (s == "EMBANKMENT") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_EMBANKMENT; - if (s == "LAUNCHRECOVERY") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_LAUNCHRECOVERY; - if (s == "MARINEDEFENCE") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_MARINEDEFENCE; - if (s == "HYDROLIFT") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_HYDROLIFT; - if (s == "SHIPYARD") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPYARD; - if (s == "SHIPLIFT") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLIFT; - if (s == "PORT") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_PORT; - if (s == "QUAY") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_QUAY; - if (s == "FLOATINGDOCK") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_FLOATINGDOCK; - if (s == "NAVIGATIONALCHANNEL") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NAVIGATIONALCHANNEL; - if (s == "BREAKWATER") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BREAKWATER; - if (s == "DRYDOCK") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_DRYDOCK; - if (s == "JETTY") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_JETTY; - if (s == "SHIPLOCK") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLOCK; - if (s == "BARRIERBEACH") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BARRIERBEACH; - if (s == "SLIPWAY") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SLIPWAY; - if (s == "WATERWAY") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMarineFacilityTypeEnum::Value) IFC4X3_RC1_IfcMarineFacilityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMarineFacilityTypeEnum::operator Ifc4x3_rc1::IfcMarineFacilityTypeEnum::Value() const { @@ -7086,39 +5701,11 @@ Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcMarinePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CREST", "MANUFACTURING", "LOWWATERLINE", "CORE", "WATERFIELD", "CILL_LEVEL", "BERTHINGSTRUCTURE", "COPELEVEL", "CHAMBER", "STORAGE", "APPROACHCHANNEL", "VEHICLESERVICING", "SHIPTRANSFER", "GATEHEAD", "GUDINGSTRUCTURE", "BELOWWATERLINE", "WEATHERSIDE", "LANDFIELD", "PROTECTION", "LEEWARDSIDE", "ABOVEWATERLINE", "ANCHORAGE", "NAVIGATIONALAREA", "HIGHWATERLINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMarinePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMarinePartTypeEnum::Value Ifc4x3_rc1::IfcMarinePartTypeEnum::FromString(const std::string& s) { - if (s == "CREST") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_CREST; - if (s == "MANUFACTURING") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_MANUFACTURING; - if (s == "LOWWATERLINE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_LOWWATERLINE; - if (s == "CORE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_CORE; - if (s == "WATERFIELD") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_WATERFIELD; - if (s == "CILL_LEVEL") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_CILL_LEVEL; - if (s == "BERTHINGSTRUCTURE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_BERTHINGSTRUCTURE; - if (s == "COPELEVEL") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_COPELEVEL; - if (s == "CHAMBER") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_CHAMBER; - if (s == "STORAGE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_STORAGE; - if (s == "APPROACHCHANNEL") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_APPROACHCHANNEL; - if (s == "VEHICLESERVICING") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_VEHICLESERVICING; - if (s == "SHIPTRANSFER") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_SHIPTRANSFER; - if (s == "GATEHEAD") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_GATEHEAD; - if (s == "GUDINGSTRUCTURE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_GUDINGSTRUCTURE; - if (s == "BELOWWATERLINE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_BELOWWATERLINE; - if (s == "WEATHERSIDE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_WEATHERSIDE; - if (s == "LANDFIELD") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_LANDFIELD; - if (s == "PROTECTION") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_PROTECTION; - if (s == "LEEWARDSIDE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_LEEWARDSIDE; - if (s == "ABOVEWATERLINE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_ABOVEWATERLINE; - if (s == "ANCHORAGE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_ANCHORAGE; - if (s == "NAVIGATIONALAREA") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_NAVIGATIONALAREA; - if (s == "HIGHWATERLINE") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_HIGHWATERLINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMarinePartTypeEnum::IfcMarinePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMarinePartTypeEnum::Value) IFC4X3_RC1_IfcMarinePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMarinePartTypeEnum::operator Ifc4x3_rc1::IfcMarinePartTypeEnum::Value() const { @@ -7147,30 +5734,11 @@ Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const s } const char* Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "COUPLER", "RAILJOINT", "RAILFASTENING", "CHAIN", "ROPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::Value Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "COUPLER") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_COUPLER; - if (s == "RAILJOINT") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILJOINT; - if (s == "RAILFASTENING") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILFASTENING; - if (s == "CHAIN") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_CHAIN; - if (s == "ROPE") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ROPE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::Value) IFC4X3_RC1_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::operator Ifc4x3_rc1::IfcMechanicalFastenerTypeEnum::Value() const { @@ -7199,20 +5767,11 @@ Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::Value Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::Value) IFC4X3_RC1_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::operator Ifc4x3_rc1::IfcMedicalDeviceTypeEnum::Value() const { @@ -7241,34 +5800,11 @@ Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "STIFFENING_RIB", "ARCH_SEGMENT", "SUSPENSION_CABLE", "SUSPENDER", "STAY_CABLE", "STRUCTURALCABLE", "TIEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMemberTypeEnum::Value Ifc4x3_rc1::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "STIFFENING_RIB") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_STIFFENING_RIB; - if (s == "ARCH_SEGMENT") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_ARCH_SEGMENT; - if (s == "SUSPENSION_CABLE") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_SUSPENSION_CABLE; - if (s == "SUSPENDER") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_SUSPENDER; - if (s == "STAY_CABLE") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_STAY_CABLE; - if (s == "STRUCTURALCABLE") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_STRUCTURALCABLE; - if (s == "TIEBAR") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_TIEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMemberTypeEnum::Value) IFC4X3_RC1_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMemberTypeEnum::operator Ifc4x3_rc1::IfcMemberTypeEnum::Value() const { @@ -7297,22 +5833,11 @@ Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunica } const char* Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "E_UTRAN_NODE_B", "REMOTE_RADIO_UNIT", "ACCESSPOINT", "BASETRANSCEIVERSTATION", "REMOTEUNIT", "BASEBANDUNIT", "MASTERUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::Value Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "E_UTRAN_NODE_B") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_E_UTRAN_NODE_B; - if (s == "REMOTE_RADIO_UNIT") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTE_RADIO_UNIT; - if (s == "ACCESSPOINT") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_ACCESSPOINT; - if (s == "BASETRANSCEIVERSTATION") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASETRANSCEIVERSTATION; - if (s == "REMOTEUNIT") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTEUNIT; - if (s == "BASEBANDUNIT") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASEBANDUNIT; - if (s == "MASTERUNIT") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MASTERUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::Value) IFC4X3_RC1_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::operator Ifc4x3_rc1::IfcMobileTelecommunicationsApplianceTypeEnum::Value() const { @@ -7341,20 +5866,11 @@ Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcMooringDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINETENSIONER", "MAGNETICDEVICE", "MOORINGHOOKS", "VACUUMDEVICE", "BOLLARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMooringDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMooringDeviceTypeEnum::Value Ifc4x3_rc1::IfcMooringDeviceTypeEnum::FromString(const std::string& s) { - if (s == "LINETENSIONER") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_LINETENSIONER; - if (s == "MAGNETICDEVICE") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MAGNETICDEVICE; - if (s == "MOORINGHOOKS") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MOORINGHOOKS; - if (s == "VACUUMDEVICE") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_VACUUMDEVICE; - if (s == "BOLLARD") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_BOLLARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMooringDeviceTypeEnum::Value) IFC4X3_RC1_IfcMooringDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMooringDeviceTypeEnum::operator Ifc4x3_rc1::IfcMooringDeviceTypeEnum::Value() const { @@ -7383,18 +5899,11 @@ Ifc4x3_rc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::st } const char* Ifc4x3_rc1::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcMotorConnectionTypeEnum::Value Ifc4x3_rc1::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x3_rc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x3_rc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x3_rc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcMotorConnectionTypeEnum::Value) IFC4X3_RC1_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcMotorConnectionTypeEnum::operator Ifc4x3_rc1::IfcMotorConnectionTypeEnum::Value() const { @@ -7423,17 +5932,11 @@ Ifc4x3_rc1::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std } const char* Ifc4x3_rc1::IfcNavigationElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEACON", "BUOY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcNavigationElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcNavigationElementTypeEnum::Value Ifc4x3_rc1::IfcNavigationElementTypeEnum::FromString(const std::string& s) { - if (s == "BEACON") return ::Ifc4x3_rc1::IfcNavigationElementTypeEnum::IfcNavigationElementType_BEACON; - if (s == "BUOY") return ::Ifc4x3_rc1::IfcNavigationElementTypeEnum::IfcNavigationElementType_BUOY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcNavigationElementTypeEnum::IfcNavigationElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcNavigationElementTypeEnum::IfcNavigationElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcNavigationElementTypeEnum::Value) IFC4X3_RC1_IfcNavigationElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcNavigationElementTypeEnum::operator Ifc4x3_rc1::IfcNavigationElementTypeEnum::Value() const { @@ -7462,14 +5965,11 @@ Ifc4x3_rc1::IfcNullStyle::IfcNullStyle(const std::string& v) { } const char* Ifc4x3_rc1::IfcNullStyle::ToString(Value v) { - if ( v < 0 || v >= 1 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NULL" }; - return names[v]; + return IFC4X3_RC1_IfcNullStyle_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcNullStyle::Value Ifc4x3_rc1::IfcNullStyle::FromString(const std::string& s) { - if (s == "NULL") return ::Ifc4x3_rc1::IfcNullStyle::IfcNullStyle_NULL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcNullStyle::Value) IFC4X3_RC1_IfcNullStyle_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcNullStyle::operator Ifc4x3_rc1::IfcNullStyle::Value() const { @@ -7498,21 +5998,11 @@ Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcObjectTypeEnum::Value Ifc4x3_rc1::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcObjectTypeEnum::Value) IFC4X3_RC1_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcObjectTypeEnum::operator Ifc4x3_rc1::IfcObjectTypeEnum::Value() const { @@ -7541,26 +6031,11 @@ Ifc4x3_rc1::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcObjectiveEnum::Value Ifc4x3_rc1::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcObjectiveEnum::Value) IFC4X3_RC1_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcObjectiveEnum::operator Ifc4x3_rc1::IfcObjectiveEnum::Value() const { @@ -7589,22 +6064,11 @@ Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcOccupantTypeEnum::Value Ifc4x3_rc1::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcOccupantTypeEnum::Value) IFC4X3_RC1_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcOccupantTypeEnum::operator Ifc4x3_rc1::IfcOccupantTypeEnum::Value() const { @@ -7633,17 +6097,11 @@ Ifc4x3_rc1::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcOpeningElementTypeEnum::Value Ifc4x3_rc1::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x3_rc1::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x3_rc1::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcOpeningElementTypeEnum::Value) IFC4X3_RC1_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcOpeningElementTypeEnum::operator Ifc4x3_rc1::IfcOpeningElementTypeEnum::Value() const { @@ -7672,20 +6130,11 @@ Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcOutletTypeEnum::Value Ifc4x3_rc1::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcOutletTypeEnum::Value) IFC4X3_RC1_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcOutletTypeEnum::operator Ifc4x3_rc1::IfcOutletTypeEnum::Value() const { @@ -7714,15 +6163,11 @@ Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const s } const char* Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::Value Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::Value) IFC4X3_RC1_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::operator Ifc4x3_rc1::IfcPerformanceHistoryTypeEnum::Value() const { @@ -7751,18 +6196,11 @@ Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum } const char* Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::Value Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::Value) IFC4X3_RC1_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::operator Ifc4x3_rc1::IfcPermeableCoveringOperationEnum::Value() const { @@ -7791,18 +6229,11 @@ Ifc4x3_rc1::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPermitTypeEnum::Value Ifc4x3_rc1::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x3_rc1::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x3_rc1::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x3_rc1::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPermitTypeEnum::Value) IFC4X3_RC1_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPermitTypeEnum::operator Ifc4x3_rc1::IfcPermitTypeEnum::Value() const { @@ -7831,16 +6262,11 @@ Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string } const char* Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::Value Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::Value) IFC4X3_RC1_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::operator Ifc4x3_rc1::IfcPhysicalOrVirtualEnum::Value() const { @@ -7869,19 +6295,11 @@ Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& } const char* Ifc4x3_rc1::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPileConstructionEnum::Value Ifc4x3_rc1::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPileConstructionEnum::Value) IFC4X3_RC1_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPileConstructionEnum::operator Ifc4x3_rc1::IfcPileConstructionEnum::Value() const { @@ -7910,21 +6328,11 @@ Ifc4x3_rc1::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPileTypeEnum::Value Ifc4x3_rc1::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPileTypeEnum::Value) IFC4X3_RC1_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPileTypeEnum::operator Ifc4x3_rc1::IfcPileTypeEnum::Value() const { @@ -7953,22 +6361,11 @@ Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPipeFittingTypeEnum::Value Ifc4x3_rc1::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPipeFittingTypeEnum::Value) IFC4X3_RC1_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPipeFittingTypeEnum::operator Ifc4x3_rc1::IfcPipeFittingTypeEnum::Value() const { @@ -7997,20 +6394,11 @@ Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPipeSegmentTypeEnum::Value Ifc4x3_rc1::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPipeSegmentTypeEnum::Value) IFC4X3_RC1_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPipeSegmentTypeEnum::operator Ifc4x3_rc1::IfcPipeSegmentTypeEnum::Value() const { @@ -8039,24 +6427,11 @@ Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "FLANGE_PLATE", "WEB_PLATE", "STIFFENER_PLATE", "GUSSET_PLATE", "COVER_PLATE", "SPLICE_PLATE", "BASE_PLATE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPlateTypeEnum::Value Ifc4x3_rc1::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "FLANGE_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_FLANGE_PLATE; - if (s == "WEB_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_WEB_PLATE; - if (s == "STIFFENER_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_STIFFENER_PLATE; - if (s == "GUSSET_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_GUSSET_PLATE; - if (s == "COVER_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_COVER_PLATE; - if (s == "SPLICE_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_SPLICE_PLATE; - if (s == "BASE_PLATE") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_BASE_PLATE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPlateTypeEnum::Value) IFC4X3_RC1_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPlateTypeEnum::operator Ifc4x3_rc1::IfcPlateTypeEnum::Value() const { @@ -8085,16 +6460,11 @@ Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepr } const char* Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X3_RC1_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x3_rc1::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -8123,22 +6493,11 @@ Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProcedureTypeEnum::Value Ifc4x3_rc1::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProcedureTypeEnum::Value) IFC4X3_RC1_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProcedureTypeEnum::operator Ifc4x3_rc1::IfcProcedureTypeEnum::Value() const { @@ -8167,15 +6526,11 @@ Ifc4x3_rc1::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4X3_RC1_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProfileTypeEnum::Value Ifc4x3_rc1::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4x3_rc1::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4x3_rc1::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProfileTypeEnum::Value) IFC4X3_RC1_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProfileTypeEnum::operator Ifc4x3_rc1::IfcProfileTypeEnum::Value() const { @@ -8204,20 +6559,11 @@ Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProjectOrderTypeEnum::Value Ifc4x3_rc1::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProjectOrderTypeEnum::Value) IFC4X3_RC1_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProjectOrderTypeEnum::operator Ifc4x3_rc1::IfcProjectOrderTypeEnum::Value() const { @@ -8246,15 +6592,11 @@ Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std } const char* Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::Value Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::Value) IFC4X3_RC1_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::operator Ifc4x3_rc1::IfcProjectedOrTrueLengthEnum::Value() const { @@ -8283,17 +6625,11 @@ Ifc4x3_rc1::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std } const char* Ifc4x3_rc1::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLISTER", "DEVIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProjectionElementTypeEnum::Value Ifc4x3_rc1::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "BLISTER") return ::Ifc4x3_rc1::IfcProjectionElementTypeEnum::IfcProjectionElementType_BLISTER; - if (s == "DEVIATOR") return ::Ifc4x3_rc1::IfcProjectionElementTypeEnum::IfcProjectionElementType_DEVIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProjectionElementTypeEnum::Value) IFC4X3_RC1_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProjectionElementTypeEnum::operator Ifc4x3_rc1::IfcProjectionElementTypeEnum::Value() const { @@ -8322,21 +6658,11 @@ Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const } const char* Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::Value Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::Value) IFC4X3_RC1_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::operator Ifc4x3_rc1::IfcPropertySetTemplateTypeEnum::Value() const { @@ -8365,19 +6691,11 @@ Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTripping } const char* Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X3_RC1_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x3_rc1::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -8406,25 +6724,11 @@ Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std:: } const char* Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "ANTI_ARCING_DEVICE", "SPARKGAP", "VOLTAGELIMITER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "ANTI_ARCING_DEVICE") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_ANTI_ARCING_DEVICE; - if (s == "SPARKGAP") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_SPARKGAP; - if (s == "VOLTAGELIMITER") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VOLTAGELIMITER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::Value) IFC4X3_RC1_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::operator Ifc4x3_rc1::IfcProtectiveDeviceTypeEnum::Value() const { @@ -8453,22 +6757,11 @@ Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcPumpTypeEnum::Value Ifc4x3_rc1::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcPumpTypeEnum::Value) IFC4X3_RC1_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcPumpTypeEnum::operator Ifc4x3_rc1::IfcPumpTypeEnum::Value() const { @@ -8497,21 +6790,11 @@ Ifc4x3_rc1::IfcRailTypeEnum::IfcRailTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRailTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RACKRAIL", "BLADE", "GUARDRAIL", "STOCKRAIL", "CHECKRAIL", "RAIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRailTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRailTypeEnum::Value Ifc4x3_rc1::IfcRailTypeEnum::FromString(const std::string& s) { - if (s == "RACKRAIL") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_RACKRAIL; - if (s == "BLADE") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_BLADE; - if (s == "GUARDRAIL") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_GUARDRAIL; - if (s == "STOCKRAIL") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_STOCKRAIL; - if (s == "CHECKRAIL") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_CHECKRAIL; - if (s == "RAIL") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_RAIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRailTypeEnum::IfcRailType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRailTypeEnum::Value) IFC4X3_RC1_IfcRailTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRailTypeEnum::operator Ifc4x3_rc1::IfcRailTypeEnum::Value() const { @@ -8540,19 +6823,11 @@ Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "FENCE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRailingTypeEnum::Value Ifc4x3_rc1::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "FENCE") return ::Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingType_FENCE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRailingTypeEnum::Value) IFC4X3_RC1_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRailingTypeEnum::operator Ifc4x3_rc1::IfcRailingTypeEnum::Value() const { @@ -8581,23 +6856,11 @@ Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcRailwayPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKSTRUCTURE", "TRACKSTRUCTUREPART", "LINESIDESTRUCTUREPART", "DILATATIONSUPERSTRUCTURE", "PLAINTRACKSUPESTRUCTURE", "LINESIDESTRUCTURE", "SUPERSTRUCTURE", "TURNOUTSUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRailwayPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRailwayPartTypeEnum::Value Ifc4x3_rc1::IfcRailwayPartTypeEnum::FromString(const std::string& s) { - if (s == "TRACKSTRUCTURE") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTURE; - if (s == "TRACKSTRUCTUREPART") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTUREPART; - if (s == "LINESIDESTRUCTUREPART") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTUREPART; - if (s == "DILATATIONSUPERSTRUCTURE") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_DILATATIONSUPERSTRUCTURE; - if (s == "PLAINTRACKSUPESTRUCTURE") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_PLAINTRACKSUPESTRUCTURE; - if (s == "LINESIDESTRUCTURE") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_SUPERSTRUCTURE; - if (s == "TURNOUTSUPERSTRUCTURE") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_TURNOUTSUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRailwayPartTypeEnum::IfcRailwayPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRailwayPartTypeEnum::Value) IFC4X3_RC1_IfcRailwayPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRailwayPartTypeEnum::operator Ifc4x3_rc1::IfcRailwayPartTypeEnum::Value() const { @@ -8626,17 +6889,11 @@ Ifc4x3_rc1::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRampFlightTypeEnum::Value Ifc4x3_rc1::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc1::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4x3_rc1::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRampFlightTypeEnum::Value) IFC4X3_RC1_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRampFlightTypeEnum::operator Ifc4x3_rc1::IfcRampFlightTypeEnum::Value() const { @@ -8665,21 +6922,11 @@ Ifc4x3_rc1::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRampTypeEnum::Value Ifc4x3_rc1::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRampTypeEnum::Value) IFC4X3_RC1_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRampTypeEnum::operator Ifc4x3_rc1::IfcRampTypeEnum::Value() const { @@ -8708,21 +6955,11 @@ Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X3_RC1_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRecurrenceTypeEnum::Value Ifc4x3_rc1::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x3_rc1::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRecurrenceTypeEnum::Value) IFC4X3_RC1_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRecurrenceTypeEnum::operator Ifc4x3_rc1::IfcRecurrenceTypeEnum::Value() const { @@ -8751,19 +6988,11 @@ Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "KILOPOINT", "MILEPOINT", "STATION", "REFERENCEMARKER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReferentTypeEnum::Value Ifc4x3_rc1::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "KILOPOINT") return ::Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "MILEPOINT") return ::Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "STATION") return ::Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "REFERENCEMARKER") return ::Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentType_REFERENCEMARKER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReferentTypeEnum::Value) IFC4X3_RC1_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReferentTypeEnum::operator Ifc4x3_rc1::IfcReferentTypeEnum::Value() const { @@ -8792,23 +7021,11 @@ Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string } const char* Ifc4x3_rc1::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReflectanceMethodEnum::Value Ifc4x3_rc1::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReflectanceMethodEnum::Value) IFC4X3_RC1_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReflectanceMethodEnum::operator Ifc4x3_rc1::IfcReflectanceMethodEnum::Value() const { @@ -8837,21 +7054,11 @@ Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SURCHARGEPRELOADED", "VERTICALLYDRAINED", "DYNAMICALLYCOMPACTED", "REPLACED", "ROLLERCOMPACTED", "GROUTED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::Value Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::FromString(const std::string& s) { - if (s == "SURCHARGEPRELOADED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_SURCHARGEPRELOADED; - if (s == "VERTICALLYDRAINED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_VERTICALLYDRAINED; - if (s == "DYNAMICALLYCOMPACTED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_DYNAMICALLYCOMPACTED; - if (s == "REPLACED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_REPLACED; - if (s == "ROLLERCOMPACTED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_ROLLERCOMPACTED; - if (s == "GROUTED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_GROUTED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::Value) IFC4X3_RC1_IfcReinforcedSoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::operator Ifc4x3_rc1::IfcReinforcedSoilTypeEnum::Value() const { @@ -8880,23 +7087,11 @@ Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::stri } const char* Ifc4x3_rc1::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReinforcingBarRoleEnum::Value Ifc4x3_rc1::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReinforcingBarRoleEnum::Value) IFC4X3_RC1_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReinforcingBarRoleEnum::operator Ifc4x3_rc1::IfcReinforcingBarRoleEnum::Value() const { @@ -8925,15 +7120,11 @@ Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std } const char* Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::Value Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::Value) IFC4X3_RC1_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::operator Ifc4x3_rc1::IfcReinforcingBarSurfaceEnum::Value() const { @@ -8962,24 +7153,11 @@ Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "SPACEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReinforcingBarTypeEnum::Value Ifc4x3_rc1::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "SPACEBAR") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SPACEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReinforcingBarTypeEnum::Value) IFC4X3_RC1_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReinforcingBarTypeEnum::operator Ifc4x3_rc1::IfcReinforcingBarTypeEnum::Value() const { @@ -9008,15 +7186,11 @@ Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::st } const char* Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::Value Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::Value) IFC4X3_RC1_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::operator Ifc4x3_rc1::IfcReinforcingMeshTypeEnum::Value() const { @@ -9045,39 +7219,11 @@ Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRoadPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ROADSIDEPART", "BUS_STOP", "HARDSHOULDER", "INTERSECTION", "PASSINGBAY", "ROADWAYPLATEAU", "ROADSIDE", "REFUGEISLAND", "TOLLPLAZA", "CENTRALRESERVE", "SIDEWALK", "PARKINGBAY", "RAILWAYCROSSING", "PEDESTRIAN_CROSSING", "SOFTSHOULDER", "BICYCLECROSSING", "CENTRALISLAND", "SHOULDER", "TRAFFICLANE", "ROADSEGMENT", "ROUNDABOUT", "LAYBY", "CARRIAGEWAY", "TRAFFICISLAND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRoadPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRoadPartTypeEnum::Value Ifc4x3_rc1::IfcRoadPartTypeEnum::FromString(const std::string& s) { - if (s == "ROADSIDEPART") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDEPART; - if (s == "BUS_STOP") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_BUS_STOP; - if (s == "HARDSHOULDER") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_HARDSHOULDER; - if (s == "INTERSECTION") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_INTERSECTION; - if (s == "PASSINGBAY") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_PASSINGBAY; - if (s == "ROADWAYPLATEAU") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADWAYPLATEAU; - if (s == "ROADSIDE") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDE; - if (s == "REFUGEISLAND") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_REFUGEISLAND; - if (s == "TOLLPLAZA") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_TOLLPLAZA; - if (s == "CENTRALRESERVE") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALRESERVE; - if (s == "SIDEWALK") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_SIDEWALK; - if (s == "PARKINGBAY") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_PARKINGBAY; - if (s == "RAILWAYCROSSING") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_RAILWAYCROSSING; - if (s == "PEDESTRIAN_CROSSING") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_PEDESTRIAN_CROSSING; - if (s == "SOFTSHOULDER") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_SOFTSHOULDER; - if (s == "BICYCLECROSSING") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_BICYCLECROSSING; - if (s == "CENTRALISLAND") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALISLAND; - if (s == "SHOULDER") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_SHOULDER; - if (s == "TRAFFICLANE") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICLANE; - if (s == "ROADSEGMENT") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSEGMENT; - if (s == "ROUNDABOUT") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_ROUNDABOUT; - if (s == "LAYBY") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_LAYBY; - if (s == "CARRIAGEWAY") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_CARRIAGEWAY; - if (s == "TRAFFICISLAND") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICISLAND; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRoadPartTypeEnum::IfcRoadPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRoadPartTypeEnum::Value) IFC4X3_RC1_IfcRoadPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRoadPartTypeEnum::operator Ifc4x3_rc1::IfcRoadPartTypeEnum::Value() const { @@ -9106,36 +7252,11 @@ Ifc4x3_rc1::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRoleEnum::Value Ifc4x3_rc1::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRoleEnum::Value) IFC4X3_RC1_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRoleEnum::operator Ifc4x3_rc1::IfcRoleEnum::Value() const { @@ -9164,28 +7285,11 @@ Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcRoofTypeEnum::Value Ifc4x3_rc1::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcRoofTypeEnum::Value) IFC4X3_RC1_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcRoofTypeEnum::operator Ifc4x3_rc1::IfcRoofTypeEnum::Value() const { @@ -9214,29 +7318,11 @@ Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x3_rc1::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4X3_RC1_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSIPrefix::Value Ifc4x3_rc1::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4x3_rc1::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSIPrefix::Value) IFC4X3_RC1_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSIPrefix::operator Ifc4x3_rc1::IfcSIPrefix::Value() const { @@ -9265,43 +7351,11 @@ Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x3_rc1::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X3_RC1_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSIUnitName::Value Ifc4x3_rc1::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x3_rc1::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSIUnitName::Value) IFC4X3_RC1_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSIUnitName::operator Ifc4x3_rc1::IfcSIUnitName::Value() const { @@ -9330,25 +7384,11 @@ Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std:: } const char* Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::Value Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::Value) IFC4X3_RC1_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::operator Ifc4x3_rc1::IfcSanitaryTerminalTypeEnum::Value() const { @@ -9377,15 +7417,11 @@ Ifc4x3_rc1::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4X3_RC1_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSectionTypeEnum::Value Ifc4x3_rc1::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4x3_rc1::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4x3_rc1::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSectionTypeEnum::Value) IFC4X3_RC1_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSectionTypeEnum::operator Ifc4x3_rc1::IfcSectionTypeEnum::Value() const { @@ -9414,47 +7450,11 @@ Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 34 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "EARTHQUAKESENSOR", "FOREIGNOBJECTDETECTIONSENSOR", "OBSTACLESENSOR", "RAINSENSOR", "SNOWDEPTHSENSOR", "TRAINSENSOR", "TURNOUTCLOSURESENSOR", "WHEELSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSensorTypeEnum::Value Ifc4x3_rc1::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "EARTHQUAKESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_EARTHQUAKESENSOR; - if (s == "FOREIGNOBJECTDETECTIONSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_FOREIGNOBJECTDETECTIONSENSOR; - if (s == "OBSTACLESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_OBSTACLESENSOR; - if (s == "RAINSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_RAINSENSOR; - if (s == "SNOWDEPTHSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_SNOWDEPTHSENSOR; - if (s == "TRAINSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_TRAINSENSOR; - if (s == "TURNOUTCLOSURESENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_TURNOUTCLOSURESENSOR; - if (s == "WHEELSENSOR") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_WHEELSENSOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSensorTypeEnum::Value) IFC4X3_RC1_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSensorTypeEnum::operator Ifc4x3_rc1::IfcSensorTypeEnum::Value() const { @@ -9483,19 +7483,11 @@ Ifc4x3_rc1::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSequenceEnum::Value Ifc4x3_rc1::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4x3_rc1::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4x3_rc1::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4x3_rc1::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4x3_rc1::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSequenceEnum::Value) IFC4X3_RC1_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSequenceEnum::operator Ifc4x3_rc1::IfcSequenceEnum::Value() const { @@ -9524,18 +7516,11 @@ Ifc4x3_rc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcShadingDeviceTypeEnum::Value Ifc4x3_rc1::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4x3_rc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x3_rc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4x3_rc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcShadingDeviceTypeEnum::Value) IFC4X3_RC1_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcShadingDeviceTypeEnum::operator Ifc4x3_rc1::IfcShadingDeviceTypeEnum::Value() const { @@ -9564,18 +7549,11 @@ Ifc4x3_rc1::IfcSignTypeEnum::IfcSignTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSignTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARKER", "PICTORAL", "MIRROR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSignTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSignTypeEnum::Value Ifc4x3_rc1::IfcSignTypeEnum::FromString(const std::string& s) { - if (s == "MARKER") return ::Ifc4x3_rc1::IfcSignTypeEnum::IfcSignType_MARKER; - if (s == "PICTORAL") return ::Ifc4x3_rc1::IfcSignTypeEnum::IfcSignType_PICTORAL; - if (s == "MIRROR") return ::Ifc4x3_rc1::IfcSignTypeEnum::IfcSignType_MIRROR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSignTypeEnum::IfcSignType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSignTypeEnum::IfcSignType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSignTypeEnum::Value) IFC4X3_RC1_IfcSignTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSignTypeEnum::operator Ifc4x3_rc1::IfcSignTypeEnum::Value() const { @@ -9604,18 +7582,11 @@ Ifc4x3_rc1::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSignalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VISUAL", "AUDIO", "MIXED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSignalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSignalTypeEnum::Value Ifc4x3_rc1::IfcSignalTypeEnum::FromString(const std::string& s) { - if (s == "VISUAL") return ::Ifc4x3_rc1::IfcSignalTypeEnum::IfcSignalType_VISUAL; - if (s == "AUDIO") return ::Ifc4x3_rc1::IfcSignalTypeEnum::IfcSignalType_AUDIO; - if (s == "MIXED") return ::Ifc4x3_rc1::IfcSignalTypeEnum::IfcSignalType_MIXED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSignalTypeEnum::IfcSignalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSignalTypeEnum::IfcSignalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSignalTypeEnum::Value) IFC4X3_RC1_IfcSignalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSignalTypeEnum::operator Ifc4x3_rc1::IfcSignalTypeEnum::Value() const { @@ -9644,25 +7615,11 @@ Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum } const char* Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X3_RC1_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x3_rc1::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -9691,24 +7648,11 @@ Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "APPROACH_SLAB", "PAVING", "WEARING", "SIDEWALK", "TRACKSLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSlabTypeEnum::Value Ifc4x3_rc1::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "APPROACH_SLAB") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_APPROACH_SLAB; - if (s == "PAVING") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_PAVING; - if (s == "WEARING") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_WEARING; - if (s == "SIDEWALK") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_SIDEWALK; - if (s == "TRACKSLAB") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_TRACKSLAB; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSlabTypeEnum::Value) IFC4X3_RC1_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSlabTypeEnum::operator Ifc4x3_rc1::IfcSlabTypeEnum::Value() const { @@ -9737,17 +7681,11 @@ Ifc4x3_rc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSolarDeviceTypeEnum::Value Ifc4x3_rc1::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x3_rc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x3_rc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSolarDeviceTypeEnum::Value) IFC4X3_RC1_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSolarDeviceTypeEnum::operator Ifc4x3_rc1::IfcSolarDeviceTypeEnum::Value() const { @@ -9776,17 +7714,11 @@ Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::Value Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::Value) IFC4X3_RC1_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::operator Ifc4x3_rc1::IfcSpaceHeaterTypeEnum::Value() const { @@ -9815,20 +7747,11 @@ Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSpaceTypeEnum::Value Ifc4x3_rc1::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSpaceTypeEnum::Value) IFC4X3_RC1_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSpaceTypeEnum::operator Ifc4x3_rc1::IfcSpaceTypeEnum::Value() const { @@ -9857,24 +7780,11 @@ Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "RESERVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSpatialZoneTypeEnum::Value Ifc4x3_rc1::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "RESERVATION") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_RESERVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSpatialZoneTypeEnum::Value) IFC4X3_RC1_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSpatialZoneTypeEnum::operator Ifc4x3_rc1::IfcSpatialZoneTypeEnum::Value() const { @@ -9903,18 +7813,11 @@ Ifc4x3_rc1::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStackTerminalTypeEnum::Value Ifc4x3_rc1::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x3_rc1::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x3_rc1::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x3_rc1::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStackTerminalTypeEnum::Value) IFC4X3_RC1_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStackTerminalTypeEnum::operator Ifc4x3_rc1::IfcStackTerminalTypeEnum::Value() const { @@ -9943,20 +7846,11 @@ Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStairFlightTypeEnum::Value Ifc4x3_rc1::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStairFlightTypeEnum::Value) IFC4X3_RC1_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStairFlightTypeEnum::operator Ifc4x3_rc1::IfcStairFlightTypeEnum::Value() const { @@ -9985,30 +7879,11 @@ Ifc4x3_rc1::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "LADDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStairTypeEnum::Value Ifc4x3_rc1::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "LADDER") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_LADDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStairTypeEnum::Value) IFC4X3_RC1_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStairTypeEnum::operator Ifc4x3_rc1::IfcStairTypeEnum::Value() const { @@ -10037,18 +7912,11 @@ Ifc4x3_rc1::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4X3_RC1_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStateEnum::Value Ifc4x3_rc1::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4x3_rc1::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4x3_rc1::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4x3_rc1::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4x3_rc1::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4x3_rc1::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStateEnum::Value) IFC4X3_RC1_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStateEnum::operator Ifc4x3_rc1::IfcStateEnum::Value() const { @@ -10077,22 +7945,11 @@ Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEn } const char* Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::Value Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::Value) IFC4X3_RC1_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::operator Ifc4x3_rc1::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -10121,20 +7978,11 @@ Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(c } const char* Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::Value) IFC4X3_RC1_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::operator Ifc4x3_rc1::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -10163,19 +8011,11 @@ Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTy } const char* Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X3_RC1_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x3_rc1::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -10204,18 +8044,11 @@ Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEn } const char* Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X3_RC1_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x3_rc1::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -10244,17 +8077,11 @@ Ifc4x3_rc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const } const char* Ifc4x3_rc1::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSubContractResourceTypeEnum::Value Ifc4x3_rc1::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x3_rc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x3_rc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSubContractResourceTypeEnum::Value) IFC4X3_RC1_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSubContractResourceTypeEnum::operator Ifc4x3_rc1::IfcSubContractResourceTypeEnum::Value() const { @@ -10283,26 +8110,11 @@ Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "DEFECT", "HATCHMARKING", "LINEMARKING", "PAVEMENTSURFACEMARKING", "SYMBOLMARKING", "NONSKIDSURFACING", "RUMBLESTRIP", "TRANSVERSERUMBLESTRIP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::Value Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "DEFECT") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_DEFECT; - if (s == "HATCHMARKING") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_HATCHMARKING; - if (s == "LINEMARKING") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_LINEMARKING; - if (s == "PAVEMENTSURFACEMARKING") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_PAVEMENTSURFACEMARKING; - if (s == "SYMBOLMARKING") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_SYMBOLMARKING; - if (s == "NONSKIDSURFACING") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NONSKIDSURFACING; - if (s == "RUMBLESTRIP") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_RUMBLESTRIP; - if (s == "TRANSVERSERUMBLESTRIP") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TRANSVERSERUMBLESTRIP; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::Value) IFC4X3_RC1_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::operator Ifc4x3_rc1::IfcSurfaceFeatureTypeEnum::Value() const { @@ -10331,16 +8143,11 @@ Ifc4x3_rc1::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x3_rc1::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4X3_RC1_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSurfaceSide::Value Ifc4x3_rc1::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc1::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc1::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4x3_rc1::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSurfaceSide::Value) IFC4X3_RC1_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSurfaceSide::operator Ifc4x3_rc1::IfcSurfaceSide::Value() const { @@ -10369,26 +8176,11 @@ Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::st } const char* Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "RELAY", "START_AND_STOP_EQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::Value Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "RELAY") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_RELAY; - if (s == "START_AND_STOP_EQUIPMENT") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_START_AND_STOP_EQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::Value) IFC4X3_RC1_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::operator Ifc4x3_rc1::IfcSwitchingDeviceTypeEnum::Value() const { @@ -10417,18 +8209,11 @@ Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum } const char* Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "SUBRACK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::Value Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "SUBRACK") return ::Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_SUBRACK; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::Value) IFC4X3_RC1_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::operator Ifc4x3_rc1::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -10457,23 +8242,11 @@ Ifc4x3_rc1::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "OILRETENTIONTRAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTankTypeEnum::Value Ifc4x3_rc1::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "OILRETENTIONTRAY") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_OILRETENTIONTRAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTankTypeEnum::Value) IFC4X3_RC1_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTankTypeEnum::operator Ifc4x3_rc1::IfcTankTypeEnum::Value() const { @@ -10502,16 +8275,11 @@ Ifc4x3_rc1::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTaskDurationEnum::Value Ifc4x3_rc1::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x3_rc1::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x3_rc1::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTaskDurationEnum::Value) IFC4X3_RC1_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTaskDurationEnum::operator Ifc4x3_rc1::IfcTaskDurationEnum::Value() const { @@ -10540,27 +8308,11 @@ Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTaskTypeEnum::Value Ifc4x3_rc1::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTaskTypeEnum::Value) IFC4X3_RC1_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTaskTypeEnum::operator Ifc4x3_rc1::IfcTaskTypeEnum::Value() const { @@ -10589,18 +8341,11 @@ Ifc4x3_rc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTendonAnchorTypeEnum::Value Ifc4x3_rc1::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x3_rc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x3_rc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x3_rc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTendonAnchorTypeEnum::Value) IFC4X3_RC1_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTendonAnchorTypeEnum::operator Ifc4x3_rc1::IfcTendonAnchorTypeEnum::Value() const { @@ -10629,20 +8374,11 @@ Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcTendonConduitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DUCT", "COUPLER", "GROUTING_DUCT", "TRUMPET", "DIABOLO", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTendonConduitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTendonConduitTypeEnum::Value Ifc4x3_rc1::IfcTendonConduitTypeEnum::FromString(const std::string& s) { - if (s == "DUCT") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_DUCT; - if (s == "COUPLER") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_COUPLER; - if (s == "GROUTING_DUCT") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_GROUTING_DUCT; - if (s == "TRUMPET") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_TRUMPET; - if (s == "DIABOLO") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_DIABOLO; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTendonConduitTypeEnum::IfcTendonConduitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTendonConduitTypeEnum::Value) IFC4X3_RC1_IfcTendonConduitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTendonConduitTypeEnum::operator Ifc4x3_rc1::IfcTendonConduitTypeEnum::Value() const { @@ -10671,19 +8407,11 @@ Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTendonTypeEnum::Value Ifc4x3_rc1::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTendonTypeEnum::Value) IFC4X3_RC1_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTendonTypeEnum::operator Ifc4x3_rc1::IfcTendonTypeEnum::Value() const { @@ -10712,17 +8440,11 @@ Ifc4x3_rc1::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x3_rc1::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4X3_RC1_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTextPath::Value Ifc4x3_rc1::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc1::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x3_rc1::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x3_rc1::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4x3_rc1::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTextPath::Value) IFC4X3_RC1_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTextPath::operator Ifc4x3_rc1::IfcTextPath::Value() const { @@ -10751,20 +8473,11 @@ Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::Value Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::Value) IFC4X3_RC1_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::operator Ifc4x3_rc1::IfcTimeSeriesDataTypeEnum::Value() const { @@ -10793,23 +8506,11 @@ Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcTrackElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKENDOFALIGNMENT", "BLOCKINGDEVICE", "VEHICLESTOP", "SLEEPER", "HALF_SET_OF_BLADES", "SPEEDREGULATOR", "DERAILER", "FROG", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTrackElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTrackElementTypeEnum::Value Ifc4x3_rc1::IfcTrackElementTypeEnum::FromString(const std::string& s) { - if (s == "TRACKENDOFALIGNMENT") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_TRACKENDOFALIGNMENT; - if (s == "BLOCKINGDEVICE") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_BLOCKINGDEVICE; - if (s == "VEHICLESTOP") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_VEHICLESTOP; - if (s == "SLEEPER") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_SLEEPER; - if (s == "HALF_SET_OF_BLADES") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_HALF_SET_OF_BLADES; - if (s == "SPEEDREGULATOR") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_SPEEDREGULATOR; - if (s == "DERAILER") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_DERAILER; - if (s == "FROG") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_FROG; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTrackElementTypeEnum::IfcTrackElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTrackElementTypeEnum::Value) IFC4X3_RC1_IfcTrackElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTrackElementTypeEnum::operator Ifc4x3_rc1::IfcTrackElementTypeEnum::Value() const { @@ -10838,22 +8539,11 @@ Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) } const char* Ifc4x3_rc1::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "CHOPPER", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTransformerTypeEnum::Value Ifc4x3_rc1::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "CHOPPER") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_CHOPPER; - if (s == "COMBINED") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTransformerTypeEnum::Value) IFC4X3_RC1_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTransformerTypeEnum::operator Ifc4x3_rc1::IfcTransformerTypeEnum::Value() const { @@ -10882,17 +8572,11 @@ Ifc4x3_rc1::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x3_rc1::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4X3_RC1_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTransitionCode::Value Ifc4x3_rc1::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4x3_rc1::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4x3_rc1::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x3_rc1::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x3_rc1::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTransitionCode::Value) IFC4X3_RC1_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTransitionCode::operator Ifc4x3_rc1::IfcTransitionCode::Value() const { @@ -10921,19 +8605,11 @@ Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType(const std::string& v) } const char* Ifc4x3_rc1::IfcTransitionCurveType::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIQUADRATICPARABOLA", "BLOSSCURVE", "CLOTHOIDCURVE", "COSINECURVE", "CUBICPARABOLA", "SINECURVE" }; - return names[v]; + return IFC4X3_RC1_IfcTransitionCurveType_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTransitionCurveType::Value Ifc4x3_rc1::IfcTransitionCurveType::FromString(const std::string& s) { - if (s == "BIQUADRATICPARABOLA") return ::Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType_BIQUADRATICPARABOLA; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType_BLOSSCURVE; - if (s == "CLOTHOIDCURVE") return ::Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType_CLOTHOIDCURVE; - if (s == "COSINECURVE") return ::Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType_COSINECURVE; - if (s == "CUBICPARABOLA") return ::Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType_CUBICPARABOLA; - if (s == "SINECURVE") return ::Ifc4x3_rc1::IfcTransitionCurveType::IfcTransitionCurveType_SINECURVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTransitionCurveType::Value) IFC4X3_RC1_IfcTransitionCurveType_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTransitionCurveType::operator Ifc4x3_rc1::IfcTransitionCurveType::Value() const { @@ -10962,20 +8638,11 @@ Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedTypeEnum(c } const char* Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::Value Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_LIFTINGGEAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::Value) IFC4X3_RC1_IfcTransportElementFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::operator Ifc4x3_rc1::IfcTransportElementFixedTypeEnum::Value() const { @@ -11004,22 +8671,11 @@ Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType } const char* Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VEHICLE", "VEHICLETRACKED", "ROLLINGSTOCK", "VEHICLEWHEELED", "VEHICLEAIR", "CARGO", "VEHICLEMARINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::Value Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::FromString(const std::string& s) { - if (s == "VEHICLE") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLE; - if (s == "VEHICLETRACKED") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLETRACKED; - if (s == "ROLLINGSTOCK") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_ROLLINGSTOCK; - if (s == "VEHICLEWHEELED") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEWHEELED; - if (s == "VEHICLEAIR") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEAIR; - if (s == "CARGO") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_CARGO; - if (s == "VEHICLEMARINE") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEMARINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::Value) IFC4X3_RC1_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::operator Ifc4x3_rc1::IfcTransportElementNonFixedTypeEnum::Value() const { @@ -11048,16 +8704,11 @@ Ifc4x3_rc1::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4x3_rc1::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC1_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTrimmingPreference::Value Ifc4x3_rc1::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x3_rc1::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x3_rc1::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc1::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTrimmingPreference::Value) IFC4X3_RC1_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTrimmingPreference::operator Ifc4x3_rc1::IfcTrimmingPreference::Value() const { @@ -11086,16 +8737,11 @@ Ifc4x3_rc1::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcTubeBundleTypeEnum::Value Ifc4x3_rc1::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x3_rc1::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcTubeBundleTypeEnum::Value) IFC4X3_RC1_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcTubeBundleTypeEnum::operator Ifc4x3_rc1::IfcTubeBundleTypeEnum::Value() const { @@ -11124,43 +8770,11 @@ Ifc4x3_rc1::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcUnitEnum::Value Ifc4x3_rc1::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcUnitEnum::Value) IFC4X3_RC1_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcUnitEnum::operator Ifc4x3_rc1::IfcUnitEnum::Value() const { @@ -11189,24 +8803,11 @@ Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(c } const char* Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::Value Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "COMBINED") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::Value) IFC4X3_RC1_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::operator Ifc4x3_rc1::IfcUnitaryControlElementTypeEnum::Value() const { @@ -11235,20 +8836,11 @@ Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std:: } const char* Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::Value Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::Value) IFC4X3_RC1_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::operator Ifc4x3_rc1::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -11277,36 +8869,11 @@ Ifc4x3_rc1::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcValveTypeEnum::Value Ifc4x3_rc1::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcValveTypeEnum::Value) IFC4X3_RC1_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcValveTypeEnum::operator Ifc4x3_rc1::IfcValveTypeEnum::Value() const { @@ -11335,21 +8902,11 @@ Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::st } const char* Ifc4x3_rc1::IfcVibrationDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_YIELD", "SHEAR_YIELD", "AXIAL_YIELD", "FRICTION", "VISCOUS", "RUBBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcVibrationDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcVibrationDamperTypeEnum::Value Ifc4x3_rc1::IfcVibrationDamperTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_YIELD") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_BENDING_YIELD; - if (s == "SHEAR_YIELD") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_SHEAR_YIELD; - if (s == "AXIAL_YIELD") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_AXIAL_YIELD; - if (s == "FRICTION") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_FRICTION; - if (s == "VISCOUS") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_VISCOUS; - if (s == "RUBBER") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_RUBBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcVibrationDamperTypeEnum::Value) IFC4X3_RC1_IfcVibrationDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcVibrationDamperTypeEnum::operator Ifc4x3_rc1::IfcVibrationDamperTypeEnum::Value() const { @@ -11378,18 +8935,11 @@ Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std } const char* Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "BASE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::Value Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "BASE") return ::Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_BASE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::Value) IFC4X3_RC1_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::operator Ifc4x3_rc1::IfcVibrationIsolatorTypeEnum::Value() const { @@ -11418,21 +8968,11 @@ Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::Value Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::Value) IFC4X3_RC1_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::operator Ifc4x3_rc1::IfcVoidingFeatureTypeEnum::Value() const { @@ -11461,26 +9001,11 @@ Ifc4x3_rc1::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "RETAININGWALL", "WAVEWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWallTypeEnum::Value Ifc4x3_rc1::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "RETAININGWALL") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_RETAININGWALL; - if (s == "WAVEWALL") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_WAVEWALL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWallTypeEnum::Value) IFC4X3_RC1_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWallTypeEnum::operator Ifc4x3_rc1::IfcWallTypeEnum::Value() const { @@ -11509,22 +9034,11 @@ Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string } const char* Ifc4x3_rc1::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWasteTerminalTypeEnum::Value Ifc4x3_rc1::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWasteTerminalTypeEnum::Value) IFC4X3_RC1_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWasteTerminalTypeEnum::operator Ifc4x3_rc1::IfcWasteTerminalTypeEnum::Value() const { @@ -11553,27 +9067,11 @@ Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std:: } const char* Ifc4x3_rc1::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWindowPanelOperationEnum::Value Ifc4x3_rc1::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWindowPanelOperationEnum::Value) IFC4X3_RC1_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWindowPanelOperationEnum::operator Ifc4x3_rc1::IfcWindowPanelOperationEnum::Value() const { @@ -11602,19 +9100,11 @@ Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::st } const char* Ifc4x3_rc1::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWindowPanelPositionEnum::Value Ifc4x3_rc1::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWindowPanelPositionEnum::Value) IFC4X3_RC1_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWindowPanelPositionEnum::operator Ifc4x3_rc1::IfcWindowPanelPositionEnum::Value() const { @@ -11643,21 +9133,11 @@ Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const } const char* Ifc4x3_rc1::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWindowStyleConstructionEnum::Value Ifc4x3_rc1::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWindowStyleConstructionEnum::Value) IFC4X3_RC1_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWindowStyleConstructionEnum::operator Ifc4x3_rc1::IfcWindowStyleConstructionEnum::Value() const { @@ -11686,24 +9166,11 @@ Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std:: } const char* Ifc4x3_rc1::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWindowStyleOperationEnum::Value Ifc4x3_rc1::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWindowStyleOperationEnum::Value) IFC4X3_RC1_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWindowStyleOperationEnum::operator Ifc4x3_rc1::IfcWindowStyleOperationEnum::Value() const { @@ -11732,18 +9199,11 @@ Ifc4x3_rc1::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWindowTypeEnum::Value Ifc4x3_rc1::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4x3_rc1::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4x3_rc1::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4x3_rc1::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWindowTypeEnum::Value) IFC4X3_RC1_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWindowTypeEnum::operator Ifc4x3_rc1::IfcWindowTypeEnum::Value() const { @@ -11772,24 +9232,11 @@ Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const s } const char* Ifc4x3_rc1::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWindowTypePartitioningEnum::Value Ifc4x3_rc1::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWindowTypePartitioningEnum::Value) IFC4X3_RC1_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWindowTypePartitioningEnum::operator Ifc4x3_rc1::IfcWindowTypePartitioningEnum::Value() const { @@ -11818,18 +9265,11 @@ Ifc4x3_rc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWorkCalendarTypeEnum::Value Ifc4x3_rc1::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x3_rc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x3_rc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x3_rc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWorkCalendarTypeEnum::Value) IFC4X3_RC1_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWorkCalendarTypeEnum::operator Ifc4x3_rc1::IfcWorkCalendarTypeEnum::Value() const { @@ -11858,18 +9298,11 @@ Ifc4x3_rc1::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc1::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWorkPlanTypeEnum::Value Ifc4x3_rc1::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc1::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc1::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc1::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWorkPlanTypeEnum::Value) IFC4X3_RC1_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWorkPlanTypeEnum::operator Ifc4x3_rc1::IfcWorkPlanTypeEnum::Value() const { @@ -11898,18 +9331,11 @@ Ifc4x3_rc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc1::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC1_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc1::IfcWorkScheduleTypeEnum::Value Ifc4x3_rc1::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc1::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc1::IfcWorkScheduleTypeEnum::Value) IFC4X3_RC1_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc1::IfcWorkScheduleTypeEnum::operator Ifc4x3_rc1::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x3_rc2-schema.cpp b/src/ifcparse/Ifc4x3_rc2-schema.cpp index bc307a9205..d544adfd99 100644 --- a/src/ifcparse/Ifc4x3_rc2-schema.cpp +++ b/src/ifcparse/Ifc4x3_rc2-schema.cpp @@ -2626,6 +2626,3890 @@ class IFC4X3_RC2_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"RAILWAYCROCODILE"s, +"RAILWAYDETONATOR"s, +"IfcAlignmentCantSegmentTypeEnum"s, +"CONSTANTCANT"s, +"LINEARTRANSITION"s, +"BIQUADRATICPARABOLA"s, +"BLOSSCURVE"s, +"COSINECURVE"s, +"SINECURVE"s, +"VIENNESEBEND"s, +"IfcAlignmentHorizontalSegmentTypeEnum"s, +"LINE"s, +"CIRCULARARC"s, +"CLOTHOID"s, +"CUBICSPIRAL"s, +"IfcAlignmentTypeEnum"s, +"IfcAlignmentVerticalSegmentTypeEnum"s, +"CONSTANTGRADIENT"s, +"PARABOLICARC"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAnnotationTypeEnum"s, +"ASSUMEDPOINT"s, +"ASBUILTAREA"s, +"ASBUILTLINE"s, +"NON_PHYSICAL_SIGNAL"s, +"ASSUMEDLINE"s, +"WIDTHEVENT"s, +"ASSUMEDAREA"s, +"SUPERELEVATIONEVENT"s, +"ASBUILTPOINT"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"RAILWAY_COMMUNICATION_TERMINAL"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"GIRDER_SEGMENT"s, +"DIAPHRAGM"s, +"PIERCAP"s, +"HATSTONE"s, +"CORNICE"s, +"EDGEBEAM"s, +"IfcBearingTypeDisplacementEnum"s, +"FIXED_MOVEMENT"s, +"GUIDED_LONGITUDINAL"s, +"GUIDED_TRANSVERSAL"s, +"FREE_MOVEMENT"s, +"IfcBearingTypeEnum"s, +"CYLINDRICAL"s, +"SPHERICAL"s, +"ELASTOMERIC"s, +"POT"s, +"GUIDE"s, +"ROCKER"s, +"ROLLER"s, +"DISK"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBridgePartTypeEnum"s, +"ABUTMENT"s, +"DECK"s, +"DECK_SEGMENT"s, +"FOUNDATION"s, +"PIER"s, +"PIER_SEGMENT"s, +"PYLON"s, +"SUBSTRUCTURE"s, +"SUPERSTRUCTURE"s, +"SURFACESTRUCTURE"s, +"IfcBridgeTypeEnum"s, +"ARCHED"s, +"CABLE_STAYED"s, +"CANTILEVER"s, +"CULVERT"s, +"FRAMEWORK"s, +"GIRDER"s, +"SUSPENSION"s, +"TRUSS"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"APRON"s, +"ARMOURUNIT"s, +"SAFETYCAGE"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"REINFORCING"s, +"PRESTRESSING"s, +"EROSIONPREVENTION"s, +"IfcBuiltSystemTypeEnum"s, +"MOORING"s, +"TRACKCIRCUIT"s, +"MOORINGSYSTEM"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"CABLEBRACKET"s, +"CATENARYWIRE"s, +"DROPPER"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"FANOUT"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"CONTACTWIRESEGMENT"s, +"FIBERSEGMENT"s, +"FIBERTUBE"s, +"OPTICALCABLESEGMENT"s, +"STITCHWIRE"s, +"WIREPAIRSEGMENT"s, +"IfcCaissonFoundationTypeEnum"s, +"WELL"s, +"CAISSON"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"PIERSTEM"s, +"PIERSTEM_SEGMENT"s, +"STANDCOLUMN"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"AUTOMATON"s, +"INTELLIGENT_PERIPHERAL"s, +"IP_NETWORK_EQUIPMENT"s, +"OPTICAL_NETWORK_UNIT"s, +"TELECOMMAND"s, +"TELEPHONYEXCHANGE"s, +"TRANSITIONCOMPONENT"s, +"TRANSPONDER"s, +"TRANSPORTEQUIPMENT"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcConveyorSegmentTypeEnum"s, +"CHUTECONVEYOR"s, +"BELTCONVEYOR"s, +"SCREWCONVEYOR"s, +"BUCKETCONVEYOR"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCourseTypeEnum"s, +"ARMOUR"s, +"FILTER"s, +"BALLASTBED"s, +"CORE"s, +"PAVEMENT"s, +"PROTECTION"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"COPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"EXPANSION_JOINT_DEVICE"s, +"BIRDPROTECTION"s, +"CABLEARRANGER"s, +"INSULATOR"s, +"LOCK"s, +"TENSIONINGEQUIPMENT"s, +"RAILPAD"s, +"SLIDINGCHAIR"s, +"PANEL_STRENGTHENING"s, +"RAILBRACE"s, +"ELASTIC_CUSHION"s, +"SOUNDABSORPTION"s, +"RAIL_LUBRICATION"s, +"RAIL_MECHANICAL_EQUIPMENT"s, +"IfcDistributionBoardTypeEnum"s, +"SWITCHBOARD"s, +"CONSUMERUNIT"s, +"MOTORCONTROLCENTRE"s, +"DISTRIBUTIONFRAME"s, +"DISTRIBUTIONBOARD"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"WIRELESS"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"CATENARY_SYSTEM"s, +"OVERHEAD_CONTACTLINE_SYSTEM"s, +"RETURN_CIRCUIT"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"BOOM_BARRIER"s, +"TURNSTILE"s, +"IfcDoorTypeOperationEnum"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcEarthworksCutTypeEnum"s, +"DREDGING"s, +"EXCAVATION"s, +"OVEREXCAVATION"s, +"TOPSOILREMOVAL"s, +"STEPEXCAVATION"s, +"PAVEMENTMILLING"s, +"CUT"s, +"BASE_EXCAVATION"s, +"IfcEarthworksFillTypeEnum"s, +"BACKFILL"s, +"COUNTERWEIGHT"s, +"SUBGRADE"s, +"EMBANKMENT"s, +"TRANSITIONSECTION"s, +"SUBGRADEBED"s, +"SLOPEFILL"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"CAPACITOR"s, +"COMPENSATOR"s, +"INDUCTOR"s, +"RECHARGER"s, +"IfcElectricFlowTreatmentDeviceTypeEnum"s, +"ELECTRONICFILTER"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"CROSS_BRACING"s, +"MAST"s, +"SIGNALASSEMBLY"s, +"GRID"s, +"SHELTER"s, +"SUPPORTINGASSEMBLY"s, +"SUSPENSIONASSEMBLY"s, +"TRACTION_SWITCHING_ASSEMBLY"s, +"TRACKPANEL"s, +"TURNOUTPANEL"s, +"DILATATIONPANEL"s, +"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"s, +"ENTRANCEWORKS"s, +"SUMPBUSTER"s, +"TRAFFIC_CALMING_DEVICE"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFacilityPartCommonTypeEnum"s, +"SEGMENT"s, +"ABOVEGROUND"s, +"LEVELCROSSING"s, +"BELOWGROUND"s, +"TERMINAL"s, +"IfcFacilityUsageEnum"s, +"LATERAL"s, +"REGION"s, +"VERTICAL"s, +"LONGITUDINAL"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"COMBINED"s, +"VOLTMETER"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"TECHNICALCABINET"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"SOIL_BORING_POINT"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"TURNOUTHEATING"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcImpactProtectionDeviceTypeEnum"s, +"CRASHCUSHION"s, +"DAMPINGSYSTEM"s, +"FENDER"s, +"BUMPER"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLiquidTerminalTypeEnum"s, +"LOADINGARM"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMarineFacilityTypeEnum"s, +"CANAL"s, +"WATERWAYSHIPLIFT"s, +"LAUNCHRECOVERY"s, +"MARINEDEFENCE"s, +"HYDROLIFT"s, +"SHIPYARD"s, +"SHIPLIFT"s, +"PORT"s, +"QUAY"s, +"FLOATINGDOCK"s, +"NAVIGATIONALCHANNEL"s, +"BREAKWATER"s, +"DRYDOCK"s, +"JETTY"s, +"SHIPLOCK"s, +"BARRIERBEACH"s, +"SLIPWAY"s, +"WATERWAY"s, +"IfcMarinePartTypeEnum"s, +"CREST"s, +"MANUFACTURING"s, +"LOWWATERLINE"s, +"WATERFIELD"s, +"CILL_LEVEL"s, +"BERTHINGSTRUCTURE"s, +"COPELEVEL"s, +"CHAMBER"s, +"STORAGE"s, +"APPROACHCHANNEL"s, +"VEHICLESERVICING"s, +"SHIPTRANSFER"s, +"GATEHEAD"s, +"GUDINGSTRUCTURE"s, +"BELOWWATERLINE"s, +"WEATHERSIDE"s, +"LANDFIELD"s, +"LEEWARDSIDE"s, +"ABOVEWATERLINE"s, +"ANCHORAGE"s, +"NAVIGATIONALAREA"s, +"HIGHWATERLINE"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"COUPLER"s, +"RAILJOINT"s, +"RAILFASTENING"s, +"CHAIN"s, +"ROPE"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"STIFFENING_RIB"s, +"ARCH_SEGMENT"s, +"SUSPENSION_CABLE"s, +"SUSPENDER"s, +"STAY_CABLE"s, +"STRUCTURALCABLE"s, +"TIEBAR"s, +"IfcMobileTelecommunicationsApplianceTypeEnum"s, +"E_UTRAN_NODE_B"s, +"REMOTE_RADIO_UNIT"s, +"ACCESSPOINT"s, +"BASETRANSCEIVERSTATION"s, +"REMOTEUNIT"s, +"BASEBANDUNIT"s, +"MASTERUNIT"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMooringDeviceTypeEnum"s, +"LINETENSIONER"s, +"MAGNETICDEVICE"s, +"MOORINGHOOKS"s, +"VACUUMDEVICE"s, +"BOLLARD"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNavigationElementTypeEnum"s, +"BEACON"s, +"BUOY"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNullStyle"s, +"NULL"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"FLANGE_PLATE"s, +"WEB_PLATE"s, +"STIFFENER_PLATE"s, +"GUSSET_PLATE"s, +"COVER_PLATE"s, +"SPLICE_PLATE"s, +"BASE_PLATE"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"BLISTER"s, +"DEVIATOR"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"ANTI_ARCING_DEVICE"s, +"SPARKGAP"s, +"VOLTAGELIMITER"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailTypeEnum"s, +"RACKRAIL"s, +"BLADE"s, +"GUARDRAIL"s, +"STOCKRAIL"s, +"CHECKRAIL"s, +"RAIL"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"BALUSTRADE"s, +"FENCE"s, +"IfcRailwayPartTypeEnum"s, +"TRACKSTRUCTURE"s, +"TRACKSTRUCTUREPART"s, +"LINESIDESTRUCTUREPART"s, +"DILATATIONSUPERSTRUCTURE"s, +"PLAINTRACKSUPESTRUCTURE"s, +"LINESIDESTRUCTURE"s, +"TURNOUTSUPERSTRUCTURE"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"KILOPOINT"s, +"MILEPOINT"s, +"STATION"s, +"REFERENCEMARKER"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcedSoilTypeEnum"s, +"SURCHARGEPRELOADED"s, +"VERTICALLYDRAINED"s, +"DYNAMICALLYCOMPACTED"s, +"REPLACED"s, +"ROLLERCOMPACTED"s, +"GROUTED"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"SPACEBAR"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoadPartTypeEnum"s, +"ROADSIDEPART"s, +"BUS_STOP"s, +"HARDSHOULDER"s, +"PASSINGBAY"s, +"ROADWAYPLATEAU"s, +"ROADSIDE"s, +"REFUGEISLAND"s, +"TOLLPLAZA"s, +"CENTRALRESERVE"s, +"SIDEWALK"s, +"PARKINGBAY"s, +"RAILWAYCROSSING"s, +"PEDESTRIAN_CROSSING"s, +"SOFTSHOULDER"s, +"BICYCLECROSSING"s, +"CENTRALISLAND"s, +"SHOULDER"s, +"TRAFFICLANE"s, +"ROADSEGMENT"s, +"ROUNDABOUT"s, +"LAYBY"s, +"CARRIAGEWAY"s, +"TRAFFICISLAND"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"EARTHQUAKESENSOR"s, +"FOREIGNOBJECTDETECTIONSENSOR"s, +"OBSTACLESENSOR"s, +"RAINSENSOR"s, +"SNOWDEPTHSENSOR"s, +"TRAINSENSOR"s, +"TURNOUTCLOSURESENSOR"s, +"WHEELSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSignTypeEnum"s, +"MARKER"s, +"PICTORAL"s, +"IfcSignalTypeEnum"s, +"VISUAL"s, +"AUDIO"s, +"MIXED"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"APPROACH_SLAB"s, +"WEARING"s, +"TRACKSLAB"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"RESERVATION"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"LADDER"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"DEFECT"s, +"HATCHMARKING"s, +"LINEMARKING"s, +"PAVEMENTSURFACEMARKING"s, +"SYMBOLMARKING"s, +"NONSKIDSURFACING"s, +"RUMBLESTRIP"s, +"TRANSVERSERUMBLESTRIP"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"START_AND_STOP_EQUIPMENT"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"SUBRACK"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"VESSEL"s, +"OILRETENTIONTRAY"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonConduitTypeEnum"s, +"GROUTING_DUCT"s, +"TRUMPET"s, +"DIABOLO"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTrackElementTypeEnum"s, +"TRACKENDOFALIGNMENT"s, +"BLOCKINGDEVICE"s, +"VEHICLESTOP"s, +"SLEEPER"s, +"HALF_SET_OF_BLADES"s, +"SPEEDREGULATOR"s, +"DERAILER"s, +"FROG"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"CHOPPER"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTransitionCurveType"s, +"CLOTHOIDCURVE"s, +"CUBICPARABOLA"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementFixedTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"IfcTransportElementNonFixedTypeEnum"s, +"VEHICLE"s, +"VEHICLETRACKED"s, +"ROLLINGSTOCK"s, +"VEHICLEWHEELED"s, +"VEHICLEAIR"s, +"CARGO"s, +"VEHICLEMARINE"s, +"IfcTransportElementTypeSelect"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationDamperTypeEnum"s, +"BENDING_YIELD"s, +"SHEAR_YIELD"s, +"AXIAL_YIELD"s, +"VISCOUS"s, +"RUBBER"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"BASE"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"RETAININGWALL"s, +"WAVEWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcAlignmentParameterSegment"s, +"IfcAlignmentVerticalSegment"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcPresentationStyleAssignment"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcCurveMeasureSelect"s, +"IfcDerivedMeasureValue"s, +"IfcFacilityPartTypeSelect"s, +"IfcImpactProtectionDeviceTypeSelect"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcStyleAssignmentSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcAlignment2DVerSegCircularArc"s, +"IfcAlignment2DVerSegLine"s, +"IfcAlignment2DVerSegParabolicArc"s, +"IfcAlignmentCantSegment"s, +"IfcAlignmentHorizontalSegment"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearAxisWithInclination"s, +"IfcLinearPlacement"s, +"IfcLinearPlacementWithInclination"s, +"IfcLinearSpanPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenCrossProfileDef"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointByDistanceExpression"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcSegment"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcPresentationStyleSelect"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcAxis2PlacementLinear"s, +"IfcAxisLateralInclination"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcCurveSegment"s, +"IfcDirection"s, +"IfcDirectrixCurveSweptAreaSolid"s, +"IfcDirectrixDistanceSweptAreaSolid"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcInclinedReferenceSweptAreaSolid"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelAssociatesProfileDef"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelPositions"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSectionedSurface"s, +"IfcSeriesParameterCurve"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcLinearAxisSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBlossCurve"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuildingStorey"s, +"IfcBuiltElementType"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcClothoid"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCourseType"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCurveSegment2D"s, +"IfcCylindricalSurface"s, +"IfcDeepFoundationType"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFacility"s, +"IfcFacilityPart"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGeotechnicalElement"s, +"IfcGeotechnicalStratum"s, +"IfcGradientCurve"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcImpactProtectionDevice"s, +"IfcImpactProtectionDeviceType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcKerbType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLineSegment2D"s, +"IfcLinearElement"s, +"IfcLiquidTerminalType"s, +"IfcMarineFacility"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMobileTelecommunicationsApplianceType"s, +"IfcMooringDeviceType"s, +"IfcMotorConnectionType"s, +"IfcNavigationElementType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPavementType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlant"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailType"s, +"IfcRailingType"s, +"IfcRailway"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAggregates"s, +"IfcRoad"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcSegmentedReferenceCurve"s, +"IfcShadingDeviceType"s, +"IfcSign"s, +"IfcSignType"s, +"IfcSignalType"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSolidStratum"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonConduit"s, +"IfcTendonConduitType"s, +"IfcTendonType"s, +"IfcTrackElementType"s, +"IfcTransformerType"s, +"IfcTransitionCurveSegment2D"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationDamper"s, +"IfcVibrationDamperType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidStratum"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWaterStratum"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcInterferenceSelect"s, +"IfcSpatialReferenceSelect"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignmentCant"s, +"IfcAlignmentCurve"s, +"IfcAlignmentHorizontal"s, +"IfcAlignmentSegment"s, +"IfcAlignmentVertical"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBearingType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBridge"s, +"IfcBridgePart"s, +"IfcBuilding"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBuiltElement"s, +"IfcBuiltSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcCaissonFoundationType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCircularArcSegment2D"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcConveyorSegmentType"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCourse"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDeepFoundation"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionBoardType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcEarthworksCut"s, +"IfcEarthworksElement"s, +"IfcEarthworksFill"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricFlowTreatmentDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGeotechnicalAssembly"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcKerb"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcLiquidTerminal"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMobileTelecommunicationsAppliance"s, +"IfcMooringDevice"s, +"IfcMotorConnection"s, +"IfcNavigationElement"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPavement"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRail"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcedSoil"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSignal"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTrackElement"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBearing"s, +"IfcBoiler"s, +"IfcBorehole"s, +"IfcBuildingElementProxy"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcCaissonFoundation"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcConveyorSegment"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionBoard"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricFlowTreatmentDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcGeomodel"s, +"IfcGeoslice"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"Radius"s, +"IsConvex"s, +"ParabolaConstant"s, +"RailHeadDistance"s, +"Segments"s, +"StartDistAlong"s, +"HorizontalLength"s, +"StartCantLeft"s, +"EndCantLeft"s, +"StartCantRight"s, +"EndCantRight"s, +"SmoothingLength"s, +"Horizontal"s, +"Vertical"s, +"Tag"s, +"StartPoint"s, +"StartDirection"s, +"StartRadiusOfCurvature"s, +"EndRadiusOfCurvature"s, +"SegmentLength"s, +"GravityCenterLineHeight"s, +"StartTag"s, +"EndTag"s, +"GeometricParameters"s, +"StartHeight"s, +"StartGradient"s, +"EndGradient"s, +"RadiusOfCurvature"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Position"s, +"CurveLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"IsCCW"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"ClothoidConstant"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"StartPlacement"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"StartDistance"s, +"EndDistance"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"UsageType"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"BaseCurve"s, +"EndPoint"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"FixedAxisVertical"s, +"Inclinating"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"Mountable"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"PlacementMeasuredAlong"s, +"Distance"s, +"RelativePlacement"s, +"CartesianPosition"s, +"Span"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"PlacementRelTo"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"HorizontalWidths"s, +"Widths"s, +"Slopes"s, +"Tags"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"Flexible"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"Placement"s, +"SizeInX"s, +"SizeInY"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"Styles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"RestartDistance"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"RelatingProfileDef"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatingPositioningElement"s, +"RelatedProducts"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"SpineCurve"s, +"Transition"s, +"CoefficientsX"s, +"CoefficientsY"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"StartRadius"s, +"EndRadius"s, +"IsStartRadiusCCW"s, +"IsEndRadiusCCW"s, +"TransitionCurveType"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ToLinearAxis"s, +"PositioningElement"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"UsingCurves"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"Positions"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"PositionedRelativeTo"s, +"ReferencedInStructures"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"ServicesFacilities"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4X3_RC2"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2637,14604 +6521,11579 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4X3_RC2_populate_schema() { - IFC4X3_RC2_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_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"); - IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BELL"); - items.push_back("BREAKGLASSBUTTON"); - items.push_back("LIGHT"); - items.push_back("MANUALPULLBOX"); - items.push_back("NOTDEFINED"); - items.push_back("RAILWAYCROCODILE"); - items.push_back("RAILWAYDETONATOR"); - items.push_back("SIREN"); - items.push_back("USERDEFINED"); - items.push_back("WHISTLE"); - IFC4X3_RC2_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BIQUADRATICPARABOLA"); - items.push_back("BLOSSCURVE"); - items.push_back("CONSTANTCANT"); - items.push_back("COSINECURVE"); - items.push_back("LINEARTRANSITION"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type("IfcAlignmentCantSegmentTypeEnum", 35, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BIQUADRATICPARABOLA"); - items.push_back("BLOSSCURVE"); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("COSINECURVE"); - items.push_back("CUBICSPIRAL"); - items.push_back("LINE"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentHorizontalSegmentTypeEnum", 39, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 42, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("CONSTANTGRADIENT"); - items.push_back("PARABOLICARC"); - IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentVerticalSegmentTypeEnum", 45, items); - } - IFC4X3_RC2_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 46, 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"); - IFC4X3_RC2_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 47, 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"); - IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 48, items); - } - IFC4X3_RC2_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 49, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ASBUILTAREA"); - items.push_back("ASBUILTLINE"); - items.push_back("ASBUILTPOINT"); - items.push_back("ASSUMEDAREA"); - items.push_back("ASSUMEDLINE"); - items.push_back("ASSUMEDPOINT"); - items.push_back("NON_PHYSICAL_SIGNAL"); - items.push_back("NOTDEFINED"); - items.push_back("SUPERELEVATIONEVENT"); - items.push_back("USERDEFINED"); - items.push_back("WIDTHEVENT"); - IFC4X3_RC2_IfcAnnotationTypeEnum_type = new enumeration_type("IfcAnnotationTypeEnum", 52, items); - } - IFC4X3_RC2_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 62, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 63, 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"); - IFC4X3_RC2_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 64, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC4X3_RC2_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 65, items); - } - { - std::vector items; items.reserve(14); - 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("RAILWAY_COMMUNICATION_TERMINAL"); - items.push_back("RECEIVER"); - items.push_back("SPEAKER"); - items.push_back("SWITCHER"); - items.push_back("TELEPHONE"); - items.push_back("TUNER"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 70, 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"); - IFC4X3_RC2_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 116, 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"); - IFC4X3_RC2_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 119, 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"); - IFC4X3_RC2_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 80, 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"); - IFC4X3_RC2_IfcBearingTypeDisplacementEnum_type = new enumeration_type("IfcBearingTypeDisplacementEnum", 83, 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"); - IFC4X3_RC2_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 84, 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"); - IFC4X3_RC2_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 85, items); - } - IFC4X3_RC2_IfcBinary_type = new type_declaration("IfcBinary", 87, 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"); - IFC4X3_RC2_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 93, items); - } - IFC4X3_RC2_IfcBoolean_type = new type_declaration("IfcBoolean", 94, 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"); - IFC4X3_RC2_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 97, 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"); - IFC4X3_RC2_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 113, 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"); - IFC4X3_RC2_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 114, items); - } - { - std::vector items; items.reserve(7); - items.push_back("APRON"); - items.push_back("ARMOURUNIT"); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("SAFETYCAGE"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 124, 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"); - IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 127, items); - } - { - std::vector items; items.reserve(11); - items.push_back("EROSIONPREVENTION"); - 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"); - IFC4X3_RC2_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 130, items); - } - { - std::vector items; items.reserve(14); - items.push_back("EROSIONPREVENTION"); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("MOORING"); - items.push_back("MOORINGSYSTEM"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("PRESTRESSING"); - items.push_back("REINFORCING"); - items.push_back("SHADING"); - items.push_back("TRACKCIRCUIT"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcBuiltSystemTypeEnum_type = new enumeration_type("IfcBuiltSystemTypeEnum", 134, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 137, 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"); - IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 140, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CABLEBRACKET"); - items.push_back("CABLELADDERSEGMENT"); - items.push_back("CABLETRAYSEGMENT"); - items.push_back("CABLETRUNKINGSEGMENT"); - items.push_back("CATENARYWIRE"); - items.push_back("CONDUITSEGMENT"); - items.push_back("DROPPER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 143, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONNECTOR"); - items.push_back("ENTRY"); - items.push_back("EXIT"); - items.push_back("FANOUT"); - items.push_back("JUNCTION"); - items.push_back("NOTDEFINED"); - items.push_back("TRANSITION"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 146, items); - } - { - std::vector items; items.reserve(12); - items.push_back("BUSBARSEGMENT"); - items.push_back("CABLESEGMENT"); - items.push_back("CONDUCTORSEGMENT"); - items.push_back("CONTACTWIRESEGMENT"); - items.push_back("CORESEGMENT"); - items.push_back("FIBERSEGMENT"); - items.push_back("FIBERTUBE"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALCABLESEGMENT"); - items.push_back("STITCHWIRE"); - items.push_back("USERDEFINED"); - items.push_back("WIREPAIRSEGMENT"); - IFC4X3_RC2_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 149, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CAISSON"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WELL"); - IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 152, items); - } - IFC4X3_RC2_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 153, 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"); - IFC4X3_RC2_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 164, 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"); - IFC4X3_RC2_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 167, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 170, 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"); - IFC4X3_RC2_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 185, 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"); - IFC4X3_RC2_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 194, items); - } - { - std::vector items; items.reserve(23); - items.push_back("ANTENNA"); - items.push_back("AUTOMATON"); - items.push_back("COMPUTER"); - items.push_back("FAX"); - items.push_back("GATEWAY"); - items.push_back("INTELLIGENT_PERIPHERAL"); - items.push_back("IP_NETWORK_EQUIPMENT"); - items.push_back("MODEM"); - items.push_back("NETWORKAPPLIANCE"); - items.push_back("NETWORKBRIDGE"); - items.push_back("NETWORKHUB"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICAL_NETWORK_UNIT"); - items.push_back("PRINTER"); - items.push_back("REPEATER"); - items.push_back("ROUTER"); - items.push_back("SCANNER"); - items.push_back("TELECOMMAND"); - items.push_back("TELEPHONYEXCHANGE"); - items.push_back("TRANSITIONCOMPONENT"); - items.push_back("TRANSPONDER"); - items.push_back("TRANSPORTEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 197, items); - } - IFC4X3_RC2_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 198, 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"); - IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 201, items); - } - IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 206, 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"); - IFC4X3_RC2_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 209, 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"); - IFC4X3_RC2_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 212, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4X3_RC2_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 220, 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"); - IFC4X3_RC2_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 223, 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"); - IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 226, 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"); - IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 229, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 232, items); - } - IFC4X3_RC2_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 236, 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"); - IFC4X3_RC2_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 241, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BELTCONVEYOR"); - items.push_back("BUCKETCONVEYOR"); - items.push_back("CHUTECONVEYOR"); - items.push_back("NOTDEFINED"); - items.push_back("SCREWCONVEYOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type = new enumeration_type("IfcConveyorSegmentTypeEnum", 246, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 249, 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"); - IFC4X3_RC2_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 252, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 257, 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"); - IFC4X3_RC2_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 259, items); - } - IFC4X3_RC2_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 261, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(8); - items.push_back("ARMOUR"); - items.push_back("BALLASTBED"); - items.push_back("CORE"); - items.push_back("FILTER"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENT"); - items.push_back("PROTECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCourseTypeEnum_type = new enumeration_type("IfcCourseTypeEnum", 264, items); - } - { - 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"); - IFC4X3_RC2_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 267, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 270, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 278, items); - } - IFC4X3_RC2_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 279, 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"); - IFC4X3_RC2_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 284, 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"); - IFC4X3_RC2_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 298, 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"); - IFC4X3_RC2_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 299, items); - } - IFC4X3_RC2_IfcDate_type = new type_declaration("IfcDate", 300, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcDateTime_type = new type_declaration("IfcDateTime", 301, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 302, new simple_type(simple_type::integer_type)); - IFC4X3_RC2_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 303, 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"); - IFC4X3_RC2_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 311, items); - } - IFC4X3_RC2_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 312, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 314, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC2_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 316, items); - } - { - std::vector items; items.reserve(19); - items.push_back("ANCHORPLATE"); - items.push_back("BIRDPROTECTION"); - items.push_back("BRACKET"); - items.push_back("CABLEARRANGER"); - items.push_back("ELASTIC_CUSHION"); - items.push_back("EXPANSION_JOINT_DEVICE"); - items.push_back("INSULATOR"); - items.push_back("LOCK"); - items.push_back("NOTDEFINED"); - items.push_back("PANEL_STRENGTHENING"); - items.push_back("RAILBRACE"); - items.push_back("RAILPAD"); - items.push_back("RAIL_LUBRICATION"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT"); - items.push_back("SHOE"); - items.push_back("SLIDINGCHAIR"); - items.push_back("SOUNDABSORPTION"); - items.push_back("TENSIONINGEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 321, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CONSUMERUNIT"); - items.push_back("DISTRIBUTIONBOARD"); - items.push_back("DISTRIBUTIONFRAME"); - items.push_back("MOTORCONTROLCENTRE"); - items.push_back("NOTDEFINED"); - items.push_back("SWITCHBOARD"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcDistributionBoardTypeEnum_type = new enumeration_type("IfcDistributionBoardTypeEnum", 324, 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"); - IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 327, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CABLE"); - items.push_back("CABLECARRIER"); - items.push_back("DUCT"); - items.push_back("NOTDEFINED"); - items.push_back("PIPE"); - items.push_back("USERDEFINED"); - items.push_back("WIRELESS"); - IFC4X3_RC2_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 336, items); - } - { - std::vector items; items.reserve(47); - items.push_back("AIRCONDITIONING"); - items.push_back("AUDIOVISUAL"); - items.push_back("CATENARY_SYSTEM"); - 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("OVERHEAD_CONTACTLINE_SYSTEM"); - items.push_back("POWERGENERATION"); - items.push_back("RAINWATER"); - items.push_back("REFRIGERATION"); - items.push_back("RETURN_CIRCUIT"); - 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"); - IFC4X3_RC2_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 338, 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"); - IFC4X3_RC2_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 339, 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"); - IFC4X3_RC2_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 344, 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"); - IFC4X3_RC2_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 347, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4X3_RC2_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 348, 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"); - IFC4X3_RC2_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 352, 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"); - IFC4X3_RC2_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 353, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BOOM_BARRIER"); - items.push_back("DOOR"); - items.push_back("GATE"); - items.push_back("NOTDEFINED"); - items.push_back("TRAPDOOR"); - items.push_back("TURNSTILE"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 355, 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"); - IFC4X3_RC2_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 356, items); - } - IFC4X3_RC2_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 357, 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"); - IFC4X3_RC2_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 362, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 365, 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"); - IFC4X3_RC2_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 368, items); - } - IFC4X3_RC2_IfcDuration_type = new type_declaration("IfcDuration", 369, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 370, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("BASE_EXCAVATION"); - items.push_back("CUT"); - items.push_back("DREDGING"); - items.push_back("EXCAVATION"); - items.push_back("NOTDEFINED"); - items.push_back("OVEREXCAVATION"); - items.push_back("PAVEMENTMILLING"); - items.push_back("STEPEXCAVATION"); - items.push_back("TOPSOILREMOVAL"); - items.push_back("TRENCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcEarthworksCutTypeEnum_type = new enumeration_type("IfcEarthworksCutTypeEnum", 372, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BACKFILL"); - items.push_back("COUNTERWEIGHT"); - items.push_back("EMBANKMENT"); - items.push_back("NOTDEFINED"); - items.push_back("SLOPEFILL"); - items.push_back("SUBGRADE"); - items.push_back("SUBGRADEBED"); - items.push_back("TRANSITIONSECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcEarthworksFillTypeEnum_type = new enumeration_type("IfcEarthworksFillTypeEnum", 375, items); - } - { - 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"); - IFC4X3_RC2_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 381, items); - } - IFC4X3_RC2_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 382, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 383, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 384, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 385, 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"); - IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 388, items); - } - { - std::vector items; items.reserve(11); - items.push_back("BATTERY"); - items.push_back("CAPACITOR"); - items.push_back("CAPACITORBANK"); - items.push_back("COMPENSATOR"); - items.push_back("HARMONICFILTER"); - items.push_back("INDUCTOR"); - items.push_back("INDUCTORBANK"); - items.push_back("NOTDEFINED"); - items.push_back("RECHARGER"); - items.push_back("UPS"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 391, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELECTRONICFILTER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowTreatmentDeviceTypeEnum", 394, 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"); - IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 397, 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"); - IFC4X3_RC2_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 400, items); - } - IFC4X3_RC2_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 401, 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"); - IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 404, items); - } - IFC4X3_RC2_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 405, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(30); - 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("DILATATIONPANEL"); - items.push_back("ENTRANCEWORKS"); - items.push_back("GIRDER"); - items.push_back("GRID"); - items.push_back("MAST"); - items.push_back("NOTDEFINED"); - items.push_back("PIER"); - items.push_back("PYLON"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SHELTER"); - items.push_back("SIGNALASSEMBLY"); - items.push_back("SLAB_FIELD"); - items.push_back("SUMPBUSTER"); - items.push_back("SUPPORTINGASSEMBLY"); - items.push_back("SUSPENSIONASSEMBLY"); - items.push_back("TRACKPANEL"); - items.push_back("TRACTION_SWITCHING_ASSEMBLY"); - items.push_back("TRAFFIC_CALMING_DEVICE"); - items.push_back("TRUSS"); - items.push_back("TURNOUTPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 410, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4X3_RC2_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 413, items); - } - IFC4X3_RC2_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 420, 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"); - IFC4X3_RC2_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 423, 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"); - IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 426, 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"); - IFC4X3_RC2_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 429, 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"); - IFC4X3_RC2_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 432, 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"); - IFC4X3_RC2_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 434, 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"); - IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 443, items); - } - { - std::vector items; items.reserve(10); - items.push_back("ABOVEGROUND"); - items.push_back("BELOWGROUND"); - items.push_back("JUNCTION"); - items.push_back("LEVELCROSSING"); - items.push_back("NOTDEFINED"); - items.push_back("SEGMENT"); - items.push_back("SUBSTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TERMINAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type = new enumeration_type("IfcFacilityPartCommonTypeEnum", 456, items); - } - { - std::vector items; items.reserve(6); - items.push_back("LATERAL"); - items.push_back("LONGITUDINAL"); - items.push_back("NOTDEFINED"); - items.push_back("REGION"); - items.push_back("USERDEFINED"); - items.push_back("VERTICAL"); - IFC4X3_RC2_IfcFacilityUsageEnum_type = new enumeration_type("IfcFacilityUsageEnum", 458, 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"); - IFC4X3_RC2_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 462, 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"); - IFC4X3_RC2_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 465, 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"); - IFC4X3_RC2_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 475, 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"); - IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 478, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4X3_RC2_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 482, items); - } - { - std::vector items; items.reserve(12); - items.push_back("AMMETER"); - items.push_back("COMBINED"); - 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"); - items.push_back("VOLTMETER_PEAK"); - items.push_back("VOLTMETER_RMS"); - IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 487, 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"); - IFC4X3_RC2_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 490, items); - } - IFC4X3_RC2_IfcFontStyle_type = new type_declaration("IfcFontStyle", 501, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcFontVariant_type = new type_declaration("IfcFontVariant", 502, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcFontWeight_type = new type_declaration("IfcFontWeight", 503, 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"); - IFC4X3_RC2_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 506, items); - } - IFC4X3_RC2_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 507, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 508, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - 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("TECHNICALCABINET"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 513, 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"); - IFC4X3_RC2_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 516, 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"); - IFC4X3_RC2_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 518, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4X3_RC2_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 530, items); - } - IFC4X3_RC2_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 529, 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"); - IFC4X3_RC2_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 536, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("TURNOUTHEATING"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 542, items); - } - IFC4X3_RC2_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 543, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 544, 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"); - IFC4X3_RC2_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 547, items); - } - IFC4X3_RC2_IfcIdentifier_type = new type_declaration("IfcIdentifier", 548, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 549, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("BUMPER"); - items.push_back("CRASHCUSHION"); - items.push_back("DAMPINGSYSTEM"); - items.push_back("FENDER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type("IfcImpactProtectionDeviceTypeEnum", 553, items); - } - IFC4X3_RC2_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 562, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcInteger_type = new type_declaration("IfcInteger", 563, new simple_type(simple_type::integer_type)); - IFC4X3_RC2_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 564, 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"); - IFC4X3_RC2_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 567, 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"); - IFC4X3_RC2_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 569, 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"); - IFC4X3_RC2_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 572, items); - } - IFC4X3_RC2_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 573, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 577, 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"); - IFC4X3_RC2_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 580, items); - } - IFC4X3_RC2_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 583, 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"); - IFC4X3_RC2_IfcKnotType_type = new enumeration_type("IfcKnotType", 584, items); - } - IFC4X3_RC2_IfcLabel_type = new type_declaration("IfcLabel", 585, 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"); - IFC4X3_RC2_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 588, 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"); - IFC4X3_RC2_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 592, items); - } - IFC4X3_RC2_IfcLanguageId_type = new type_declaration("IfcLanguageId", 593, new named_type(IFC4X3_RC2_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4X3_RC2_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 595, items); - } - IFC4X3_RC2_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 596, 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"); - IFC4X3_RC2_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 600, 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"); - IFC4X3_RC2_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 603, 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"); - IFC4X3_RC2_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 606, items); - } - IFC4X3_RC2_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 618, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 619, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 624, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 625, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("HOSEREEL"); - items.push_back("LOADINGARM"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type = new enumeration_type("IfcLiquidTerminalTypeEnum", 630, items); - } - { - 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"); - IFC4X3_RC2_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 631, items); - } - IFC4X3_RC2_IfcLogical_type = new type_declaration("IfcLogical", 633, 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"); - IFC4X3_RC2_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 634, items); - } - IFC4X3_RC2_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 637, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 638, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 639, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 640, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 641, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(21); - items.push_back("BARRIERBEACH"); - items.push_back("BREAKWATER"); - items.push_back("CANAL"); - items.push_back("DRYDOCK"); - items.push_back("EMBANKMENT"); - items.push_back("FLOATINGDOCK"); - items.push_back("HYDROLIFT"); - items.push_back("JETTY"); - items.push_back("LAUNCHRECOVERY"); - items.push_back("MARINEDEFENCE"); - items.push_back("NAVIGATIONALCHANNEL"); - items.push_back("NOTDEFINED"); - items.push_back("PORT"); - items.push_back("QUAY"); - items.push_back("SHIPLIFT"); - items.push_back("SHIPLOCK"); - items.push_back("SHIPYARD"); - items.push_back("SLIPWAY"); - items.push_back("USERDEFINED"); - items.push_back("WATERWAY"); - items.push_back("WATERWAYSHIPLIFT"); - IFC4X3_RC2_IfcMarineFacilityTypeEnum_type = new enumeration_type("IfcMarineFacilityTypeEnum", 646, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ABOVEWATERLINE"); - items.push_back("ANCHORAGE"); - items.push_back("APPROACHCHANNEL"); - items.push_back("BELOWWATERLINE"); - items.push_back("BERTHINGSTRUCTURE"); - items.push_back("CHAMBER"); - items.push_back("CILL_LEVEL"); - items.push_back("COPELEVEL"); - items.push_back("CORE"); - items.push_back("CREST"); - items.push_back("GATEHEAD"); - items.push_back("GUDINGSTRUCTURE"); - items.push_back("HIGHWATERLINE"); - items.push_back("LANDFIELD"); - items.push_back("LEEWARDSIDE"); - items.push_back("LOWWATERLINE"); - items.push_back("MANUFACTURING"); - items.push_back("NAVIGATIONALAREA"); - items.push_back("NOTDEFINED"); - items.push_back("PROTECTION"); - items.push_back("SHIPTRANSFER"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESERVICING"); - items.push_back("WATERFIELD"); - items.push_back("WEATHERSIDE"); - IFC4X3_RC2_IfcMarinePartTypeEnum_type = new enumeration_type("IfcMarinePartTypeEnum", 647, items); - } - IFC4X3_RC2_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 648, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 649, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 650, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 651, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(17); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - items.push_back("CHAIN"); - items.push_back("COUPLER"); - items.push_back("DOWEL"); - items.push_back("NAIL"); - items.push_back("NAILPLATE"); - items.push_back("NOTDEFINED"); - items.push_back("RAILFASTENING"); - items.push_back("RAILJOINT"); - items.push_back("RIVET"); - items.push_back("ROPE"); - items.push_back("SCREW"); - items.push_back("SHEARCONNECTOR"); - items.push_back("STAPLE"); - items.push_back("STUDSHEARCONNECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 676, 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"); - IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 679, items); - } - { - std::vector items; items.reserve(21); - 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("STRUCTURALCABLE"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("SUSPENDER"); - items.push_back("SUSPENSION_CABLE"); - items.push_back("TIEBAR"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 683, items); - } - { - std::vector items; items.reserve(9); - items.push_back("ACCESSPOINT"); - items.push_back("BASEBANDUNIT"); - items.push_back("BASETRANSCEIVERSTATION"); - items.push_back("E_UTRAN_NODE_B"); - items.push_back("MASTERUNIT"); - items.push_back("NOTDEFINED"); - items.push_back("REMOTEUNIT"); - items.push_back("REMOTE_RADIO_UNIT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type("IfcMobileTelecommunicationsApplianceTypeEnum", 689, items); - } - IFC4X3_RC2_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 690, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 691, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 692, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 693, items); - } - IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 694, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type); - IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 695, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 696, items); - } - IFC4X3_RC2_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 697, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 698, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 699, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 700, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 702, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(7); - items.push_back("BOLLARD"); - items.push_back("LINETENSIONER"); - items.push_back("MAGNETICDEVICE"); - items.push_back("MOORINGHOOKS"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VACUUMDEVICE"); - IFC4X3_RC2_IfcMooringDeviceTypeEnum_type = new enumeration_type("IfcMooringDeviceTypeEnum", 705, items); - } - { - 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"); - IFC4X3_RC2_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 708, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BEACON"); - items.push_back("BUOY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcNavigationElementTypeEnum_type = new enumeration_type("IfcNavigationElementTypeEnum", 712, items); - } - IFC4X3_RC2_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 713, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)); - { - std::vector items; items.reserve(1); - items.push_back("NULL"); - IFC4X3_RC2_IfcNullStyle_type = new enumeration_type("IfcNullStyle", 715, items); - } - IFC4X3_RC2_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 716, 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"); - IFC4X3_RC2_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 723, 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"); - IFC4X3_RC2_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 720, 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"); - IFC4X3_RC2_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 725, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 732, 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"); - IFC4X3_RC2_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 741, items); - } - IFC4X3_RC2_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 757, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcParameterValue_type = new type_declaration("IfcParameterValue", 744, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 750, 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"); - IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 751, 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"); - IFC4X3_RC2_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 754, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 759, 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"); - IFC4X3_RC2_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 763, 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"); - IFC4X3_RC2_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 765, 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"); - IFC4X3_RC2_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 768, 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"); - IFC4X3_RC2_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 771, items); - } - IFC4X3_RC2_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 776, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 778, 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"); - IFC4X3_RC2_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 783, items); - } - IFC4X3_RC2_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 795, new named_type(IFC4X3_RC2_IfcInteger_type)); - IFC4X3_RC2_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 796, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)); - IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 797, new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type)); - IFC4X3_RC2_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 800, 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"); - IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 807, items); - } - IFC4X3_RC2_IfcPresentableText_type = new type_declaration("IfcPresentableText", 808, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 815, 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"); - IFC4X3_RC2_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 818, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4X3_RC2_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 828, 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"); - IFC4X3_RC2_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 836, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 831, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BLISTER"); - items.push_back("DEVIATOR"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 833, 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"); - IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 851, 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"); - IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 859, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ANTI_ARCING_DEVICE"); - 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("SPARKGAP"); - items.push_back("USERDEFINED"); - items.push_back("VARISTOR"); - items.push_back("VOLTAGELIMITER"); - IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 861, 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"); - IFC4X3_RC2_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 865, items); - } - IFC4X3_RC2_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 873, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(8); - items.push_back("BLADE"); - items.push_back("CHECKRAIL"); - items.push_back("GUARDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("RACKRAIL"); - items.push_back("RAIL"); - items.push_back("STOCKRAIL"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcRailTypeEnum_type = new enumeration_type("IfcRailTypeEnum", 879, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BALUSTRADE"); - items.push_back("FENCE"); - items.push_back("GUARDRAIL"); - items.push_back("HANDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 877, items); - } - { - std::vector items; items.reserve(10); - items.push_back("DILATATIONSUPERSTRUCTURE"); - items.push_back("LINESIDESTRUCTURE"); - items.push_back("LINESIDESTRUCTUREPART"); - items.push_back("NOTDEFINED"); - items.push_back("PLAINTRACKSUPESTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TRACKSTRUCTURE"); - items.push_back("TRACKSTRUCTUREPART"); - items.push_back("TURNOUTSUPERSTRUCTURE"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcRailwayPartTypeEnum_type = new enumeration_type("IfcRailwayPartTypeEnum", 881, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 885, 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"); - IFC4X3_RC2_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 887, items); - } - IFC4X3_RC2_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 888, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcReal_type = new type_declaration("IfcReal", 891, 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"); - IFC4X3_RC2_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 897, items); - } - { - std::vector items; items.reserve(6); - items.push_back("KILOPOINT"); - items.push_back("MILEPOINT"); - items.push_back("NOTDEFINED"); - items.push_back("REFERENCEMARKER"); - items.push_back("STATION"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 900, 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"); - IFC4X3_RC2_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 901, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DYNAMICALLYCOMPACTED"); - items.push_back("GROUTED"); - items.push_back("NOTDEFINED"); - items.push_back("REPLACED"); - items.push_back("ROLLERCOMPACTED"); - items.push_back("SURCHARGEPRELOADED"); - items.push_back("USERDEFINED"); - items.push_back("VERTICALLYDRAINED"); - IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type = new enumeration_type("IfcReinforcedSoilTypeEnum", 904, 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"); - IFC4X3_RC2_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 908, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 909, 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"); - IFC4X3_RC2_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 911, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 916, items); - } - { - std::vector items; items.reserve(26); - items.push_back("BICYCLECROSSING"); - items.push_back("BUS_STOP"); - items.push_back("CARRIAGEWAY"); - items.push_back("CENTRALISLAND"); - items.push_back("CENTRALRESERVE"); - items.push_back("HARDSHOULDER"); - items.push_back("INTERSECTION"); - items.push_back("LAYBY"); - items.push_back("NOTDEFINED"); - items.push_back("PARKINGBAY"); - items.push_back("PASSINGBAY"); - items.push_back("PEDESTRIAN_CROSSING"); - items.push_back("RAILWAYCROSSING"); - items.push_back("REFUGEISLAND"); - items.push_back("ROADSEGMENT"); - items.push_back("ROADSIDE"); - items.push_back("ROADSIDEPART"); - items.push_back("ROADWAYPLATEAU"); - items.push_back("ROUNDABOUT"); - items.push_back("SHOULDER"); - items.push_back("SIDEWALK"); - items.push_back("SOFTSHOULDER"); - items.push_back("TOLLPLAZA"); - items.push_back("TRAFFICISLAND"); - items.push_back("TRAFFICLANE"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcRoadPartTypeEnum_type = new enumeration_type("IfcRoadPartTypeEnum", 984, 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"); - IFC4X3_RC2_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 985, 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"); - IFC4X3_RC2_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 988, items); - } - IFC4X3_RC2_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 990, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 991, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 992, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcRotationalStiffnessMeasure_type); - IFC4X3_RC2_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 993, 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"); - IFC4X3_RC2_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 1036, 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"); - IFC4X3_RC2_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 1039, 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"); - IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 997, items); - } - IFC4X3_RC2_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 1005, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4X3_RC2_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 1008, items); - } - IFC4X3_RC2_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 1000, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(34); - items.push_back("CO2SENSOR"); - items.push_back("CONDUCTANCESENSOR"); - items.push_back("CONTACTSENSOR"); - items.push_back("COSENSOR"); - items.push_back("EARTHQUAKESENSOR"); - items.push_back("FIRESENSOR"); - items.push_back("FLOWSENSOR"); - items.push_back("FOREIGNOBJECTDETECTIONSENSOR"); - 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("OBSTACLESENSOR"); - items.push_back("PHSENSOR"); - items.push_back("PRESSURESENSOR"); - items.push_back("RADIATIONSENSOR"); - items.push_back("RADIOACTIVITYSENSOR"); - items.push_back("RAINSENSOR"); - items.push_back("SMOKESENSOR"); - items.push_back("SNOWDEPTHSENSOR"); - items.push_back("SOUNDSENSOR"); - items.push_back("TEMPERATURESENSOR"); - items.push_back("TRAINSENSOR"); - items.push_back("TURNOUTCLOSURESENSOR"); - items.push_back("USERDEFINED"); - items.push_back("WHEELSENSOR"); - items.push_back("WINDSENSOR"); - IFC4X3_RC2_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 1014, 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"); - IFC4X3_RC2_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 1015, 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"); - IFC4X3_RC2_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 1019, items); - } - IFC4X3_RC2_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 1023, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("MARKER"); - items.push_back("MIRROR"); - items.push_back("NOTDEFINED"); - items.push_back("PICTORAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcSignTypeEnum_type = new enumeration_type("IfcSignTypeEnum", 1031, items); - } - { - std::vector items; items.reserve(5); - items.push_back("AUDIO"); - items.push_back("MIXED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VISUAL"); - IFC4X3_RC2_IfcSignalTypeEnum_type = new enumeration_type("IfcSignalTypeEnum", 1029, items); - } - { - 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"); - IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 1034, items); - } - { - std::vector items; items.reserve(11); - 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("TRACKSLAB"); - items.push_back("USERDEFINED"); - items.push_back("WEARING"); - IFC4X3_RC2_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 1045, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 1049, items); - } - IFC4X3_RC2_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 1050, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 1054, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 1055, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 1056, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 1057, 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"); - IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 1062, 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"); - IFC4X3_RC2_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 1064, items); - } - { - std::vector items; items.reserve(11); - items.push_back("CONSTRUCTION"); - items.push_back("FIRESAFETY"); - items.push_back("LIGHTING"); - items.push_back("NOTDEFINED"); - items.push_back("OCCUPANCY"); - items.push_back("RESERVATION"); - items.push_back("SECURITY"); - items.push_back("THERMAL"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - items.push_back("VENTILATION"); - IFC4X3_RC2_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 1072, items); - } - IFC4X3_RC2_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 1073, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 1074, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 1076, 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"); - IFC4X3_RC2_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 1081, 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"); - IFC4X3_RC2_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 1085, items); - } - { - std::vector items; items.reserve(17); - 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("LADDER"); - 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"); - IFC4X3_RC2_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 1087, 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"); - IFC4X3_RC2_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 1088, 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"); - IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 1096, 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"); - IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1099, 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"); - IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1125, 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"); - IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1128, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4X3_RC2_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1137, items); - } - { - std::vector items; items.reserve(13); - items.push_back("DEFECT"); - items.push_back("HATCHMARKING"); - items.push_back("LINEMARKING"); - items.push_back("MARK"); - items.push_back("NONSKIDSURFACING"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENTSURFACEMARKING"); - items.push_back("RUMBLESTRIP"); - items.push_back("SYMBOLMARKING"); - items.push_back("TAG"); - items.push_back("TRANSVERSERUMBLESTRIP"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1143, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC2_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1148, items); - } - { - std::vector items; items.reserve(13); - 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("RELAY"); - items.push_back("SELECTORSWITCH"); - items.push_back("STARTER"); - items.push_back("START_AND_STOP_EQUIPMENT"); - items.push_back("SWITCHDISCONNECTOR"); - items.push_back("TOGGLESWITCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1163, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("SUBRACK"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1167, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BASIN"); - items.push_back("BREAKPRESSURE"); - items.push_back("EXPANSION"); - items.push_back("FEEDANDEXPANSION"); - items.push_back("NOTDEFINED"); - items.push_back("OILRETENTIONTRAY"); - items.push_back("PRESSUREVESSEL"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VESSEL"); - IFC4X3_RC2_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1173, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4X3_RC2_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1175, 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"); - IFC4X3_RC2_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1179, items); - } - IFC4X3_RC2_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1181, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1182, 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"); - IFC4X3_RC2_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1186, 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"); - IFC4X3_RC2_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1189, 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"); - IFC4X3_RC2_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1191, items); - } - IFC4X3_RC2_IfcText_type = new type_declaration("IfcText", 1194, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1195, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1196, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1197, 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"); - IFC4X3_RC2_IfcTextPath_type = new enumeration_type("IfcTextPath", 1201, items); - } - IFC4X3_RC2_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1206, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1212, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1213, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1214, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1215, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1216, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1217, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcTime_type = new type_declaration("IfcTime", 1218, new simple_type(simple_type::string_type)); - IFC4X3_RC2_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1219, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcDuration_type); - items.push_back(IFC4X3_RC2_IfcRatioMeasure_type); - IFC4X3_RC2_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1220, 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"); - IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1223, items); - } - IFC4X3_RC2_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1225, new simple_type(simple_type::integer_type)); - IFC4X3_RC2_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1229, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - items.push_back("BLOCKINGDEVICE"); - items.push_back("DERAILER"); - items.push_back("FROG"); - items.push_back("HALF_SET_OF_BLADES"); - items.push_back("NOTDEFINED"); - items.push_back("SLEEPER"); - items.push_back("SPEEDREGULATOR"); - items.push_back("TRACKENDOFALIGNMENT"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESTOP"); - IFC4X3_RC2_IfcTrackElementTypeEnum_type = new enumeration_type("IfcTrackElementTypeEnum", 1232, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CHOPPER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC2_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1235, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4X3_RC2_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1236, 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"); - IFC4X3_RC2_IfcTransitionCurveType_type = new enumeration_type("IfcTransitionCurveType", 1238, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcLinearStiffnessMeasure_type); - IFC4X3_RC2_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1239, 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"); - IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type = new enumeration_type("IfcTransportElementFixedTypeEnum", 1241, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CARGO"); - items.push_back("NOTDEFINED"); - items.push_back("ROLLINGSTOCK"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLE"); - items.push_back("VEHICLEAIR"); - items.push_back("VEHICLEMARINE"); - items.push_back("VEHICLETRACKED"); - items.push_back("VEHICLEWHEELED"); - IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type("IfcTransportElementNonFixedTypeEnum", 1242, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type); - IFC4X3_RC2_IfcTransportElementTypeSelect_type = new select_type("IfcTransportElementTypeSelect", 1244, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4X3_RC2_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1249, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC2_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1254, items); - } - IFC4X3_RC2_IfcURIReference_type = new type_declaration("IfcURIReference", 1268, 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"); - IFC4X3_RC2_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1267, items); - } - { - std::vector items; items.reserve(11); - items.push_back("ALARMPANEL"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1262, 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"); - IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1265, 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"); - IFC4X3_RC2_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1273, items); - } - IFC4X3_RC2_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1274, 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"); - IFC4X3_RC2_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1282, 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"); - IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1285, 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"); - IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1289, items); - } - IFC4X3_RC2_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1291, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1292, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(13); - 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"); - items.push_back("WAVEWALL"); - IFC4X3_RC2_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1297, items); - } - IFC4X3_RC2_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1298, new simple_type(simple_type::real_type)); - IFC4X3_RC2_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1299, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcWarpingMomentMeasure_type); - IFC4X3_RC2_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1300, 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"); - IFC4X3_RC2_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1303, 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"); - IFC4X3_RC2_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1307, 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"); - IFC4X3_RC2_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1308, 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"); - IFC4X3_RC2_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1312, 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"); - IFC4X3_RC2_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1313, 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"); - IFC4X3_RC2_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1315, 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"); - IFC4X3_RC2_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1316, 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"); - IFC4X3_RC2_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1318, 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"); - IFC4X3_RC2_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1321, 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"); - IFC4X3_RC2_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1323, items); - } - IFC4X3_RC2_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4X3_RC2_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4X3_RC2_IfcAlignmentParameterSegment_type = new entity("IfcAlignmentParameterSegment", true, 40, 0); - IFC4X3_RC2_IfcAlignmentVerticalSegment_type = new entity("IfcAlignmentVerticalSegment", false, 44, IFC4X3_RC2_IfcAlignmentParameterSegment_type); - IFC4X3_RC2_IfcApplication_type = new entity("IfcApplication", false, 53, 0); - IFC4X3_RC2_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 54, 0); - IFC4X3_RC2_IfcApproval_type = new entity("IfcApproval", false, 56, 0); - IFC4X3_RC2_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 100, 0); - IFC4X3_RC2_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 102, IFC4X3_RC2_IfcBoundaryCondition_type); - IFC4X3_RC2_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 103, IFC4X3_RC2_IfcBoundaryCondition_type); - IFC4X3_RC2_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 104, IFC4X3_RC2_IfcBoundaryCondition_type); - IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 105, IFC4X3_RC2_IfcBoundaryNodeCondition_type); - IFC4X3_RC2_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 216, 0); - IFC4X3_RC2_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 218, IFC4X3_RC2_IfcConnectionGeometry_type); - IFC4X3_RC2_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 219, IFC4X3_RC2_IfcConnectionGeometry_type); - IFC4X3_RC2_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 221, IFC4X3_RC2_IfcConnectionGeometry_type); - IFC4X3_RC2_IfcConstraint_type = new entity("IfcConstraint", true, 222, 0); - IFC4X3_RC2_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 253, 0); - IFC4X3_RC2_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 254, 0); - IFC4X3_RC2_IfcCostValue_type = new entity("IfcCostValue", false, 260, IFC4X3_RC2_IfcAppliedValue_type); - IFC4X3_RC2_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 309, 0); - IFC4X3_RC2_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 310, 0); - IFC4X3_RC2_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 313, 0); - IFC4X3_RC2_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 436, 0); - IFC4X3_RC2_IfcExternalReference_type = new entity("IfcExternalReference", true, 440, 0); - IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 437, IFC4X3_RC2_IfcExternalReference_type); - IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 438, IFC4X3_RC2_IfcExternalReference_type); - IFC4X3_RC2_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 439, IFC4X3_RC2_IfcExternalReference_type); - IFC4X3_RC2_IfcGridAxis_type = new entity("IfcGridAxis", false, 533, 0); - IFC4X3_RC2_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 575, 0); - IFC4X3_RC2_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 597, IFC4X3_RC2_IfcExternalInformation_type); - IFC4X3_RC2_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 598, IFC4X3_RC2_IfcExternalReference_type); - IFC4X3_RC2_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 601, 0); - IFC4X3_RC2_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 607, 0); - IFC4X3_RC2_IfcMapConversion_type = new entity("IfcMapConversion", false, 643, IFC4X3_RC2_IfcCoordinateOperation_type); - IFC4X3_RC2_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 653, 0); - IFC4X3_RC2_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 656, 0); - IFC4X3_RC2_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 658, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 659, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 661, IFC4X3_RC2_IfcMaterialLayer_type); - IFC4X3_RC2_IfcMaterialList_type = new entity("IfcMaterialList", false, 662, 0); - IFC4X3_RC2_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 663, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 664, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 667, IFC4X3_RC2_IfcMaterialProfile_type); - IFC4X3_RC2_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 671, 0); - IFC4X3_RC2_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 673, 0); - IFC4X3_RC2_IfcMetric_type = new entity("IfcMetric", false, 684, IFC4X3_RC2_IfcConstraint_type); - IFC4X3_RC2_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 701, 0); - IFC4X3_RC2_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 709, 0); - IFC4X3_RC2_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 721, 0); - IFC4X3_RC2_IfcObjective_type = new entity("IfcObjective", false, 719, IFC4X3_RC2_IfcConstraint_type); - IFC4X3_RC2_IfcOrganization_type = new entity("IfcOrganization", false, 735, 0); - IFC4X3_RC2_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 742, 0); - IFC4X3_RC2_IfcPerson_type = new entity("IfcPerson", false, 755, 0); - IFC4X3_RC2_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 756, 0); - IFC4X3_RC2_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 760, 0); - IFC4X3_RC2_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 761, IFC4X3_RC2_IfcPhysicalQuantity_type); - IFC4X3_RC2_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 799, IFC4X3_RC2_IfcAddress_type); - IFC4X3_RC2_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 809, 0); - IFC4X3_RC2_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 810, 0); - IFC4X3_RC2_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 811, IFC4X3_RC2_IfcPresentationLayerAssignment_type); - IFC4X3_RC2_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 812, 0); - IFC4X3_RC2_IfcPresentationStyleAssignment_type = new entity("IfcPresentationStyleAssignment", false, 813, 0); - IFC4X3_RC2_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 823, 0); - IFC4X3_RC2_IfcProfileDef_type = new entity("IfcProfileDef", false, 826, 0); - IFC4X3_RC2_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 830, IFC4X3_RC2_IfcCoordinateReferenceSystem_type); - IFC4X3_RC2_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 838, 0); - IFC4X3_RC2_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 843, IFC4X3_RC2_IfcPropertyAbstraction_type); - IFC4X3_RC2_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 866, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 867, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 868, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 870, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 871, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 872, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 896, 0); - IFC4X3_RC2_IfcReference_type = new entity("IfcReference", false, 898, 0); - IFC4X3_RC2_IfcRepresentation_type = new entity("IfcRepresentation", true, 968, 0); - IFC4X3_RC2_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 969, 0); - IFC4X3_RC2_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 970, 0); - IFC4X3_RC2_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 971, 0); - IFC4X3_RC2_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 975, 0); - IFC4X3_RC2_IfcRoot_type = new entity("IfcRoot", true, 989, 0); - IFC4X3_RC2_IfcSIUnit_type = new entity("IfcSIUnit", false, 1038, IFC4X3_RC2_IfcNamedUnit_type); - IFC4X3_RC2_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 998, 0); - IFC4X3_RC2_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 1020, 0); - IFC4X3_RC2_IfcShapeModel_type = new entity("IfcShapeModel", true, 1021, IFC4X3_RC2_IfcRepresentation_type); - IFC4X3_RC2_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 1022, IFC4X3_RC2_IfcShapeModel_type); - IFC4X3_RC2_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 1094, 0); - IFC4X3_RC2_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1104, 0); - IFC4X3_RC2_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1106, IFC4X3_RC2_IfcStructuralLoad_type); - IFC4X3_RC2_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1109, IFC4X3_RC2_IfcStructuralLoad_type); - IFC4X3_RC2_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1115, IFC4X3_RC2_IfcStructuralLoadOrResult_type); - IFC4X3_RC2_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1116, IFC4X3_RC2_IfcStructuralLoadStatic_type); - IFC4X3_RC2_IfcStyleModel_type = new entity("IfcStyleModel", true, 1134, IFC4X3_RC2_IfcRepresentation_type); - IFC4X3_RC2_IfcStyledItem_type = new entity("IfcStyledItem", false, 1132, IFC4X3_RC2_IfcRepresentationItem_type); - IFC4X3_RC2_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1133, IFC4X3_RC2_IfcStyleModel_type); - IFC4X3_RC2_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1147, IFC4X3_RC2_IfcStructuralLoadOrResult_type); - IFC4X3_RC2_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1149, IFC4X3_RC2_IfcPresentationStyle_type); - IFC4X3_RC2_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1151, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1152, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1154, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1155, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1156, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcTable_type = new entity("IfcTable", false, 1168, 0); - IFC4X3_RC2_IfcTableColumn_type = new entity("IfcTableColumn", false, 1169, 0); - IFC4X3_RC2_IfcTableRow_type = new entity("IfcTableRow", false, 1170, 0); - IFC4X3_RC2_IfcTaskTime_type = new entity("IfcTaskTime", false, 1176, IFC4X3_RC2_IfcSchedulingTime_type); - IFC4X3_RC2_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1177, IFC4X3_RC2_IfcTaskTime_type); - IFC4X3_RC2_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1180, IFC4X3_RC2_IfcAddress_type); - IFC4X3_RC2_IfcTextStyle_type = new entity("IfcTextStyle", false, 1202, IFC4X3_RC2_IfcPresentationStyle_type); - IFC4X3_RC2_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1204, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1205, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1207, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1208, IFC4X3_RC2_IfcTextureCoordinate_type); - IFC4X3_RC2_IfcTextureMap_type = new entity("IfcTextureMap", false, 1209, IFC4X3_RC2_IfcTextureCoordinate_type); - IFC4X3_RC2_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1210, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1211, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1221, 0); - IFC4X3_RC2_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1222, 0); - IFC4X3_RC2_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1224, 0); - IFC4X3_RC2_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1226, IFC4X3_RC2_IfcRepresentationItem_type); - IFC4X3_RC2_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1227, IFC4X3_RC2_IfcShapeModel_type); - IFC4X3_RC2_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1266, 0); - IFC4X3_RC2_IfcVertex_type = new entity("IfcVertex", false, 1277, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1279, IFC4X3_RC2_IfcVertex_type); - IFC4X3_RC2_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1287, 0); - IFC4X3_RC2_IfcWorkTime_type = new entity("IfcWorkTime", false, 1324, IFC4X3_RC2_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcOrganization_type); - items.push_back(IFC4X3_RC2_IfcPerson_type); - items.push_back(IFC4X3_RC2_IfcPersonAndOrganization_type); - IFC4X3_RC2_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4X3_RC2_IfcArcIndex_type = new type_declaration("IfcArcIndex", 61, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcPlaneAngleMeasure_type); - IFC4X3_RC2_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 86, items); - } - IFC4X3_RC2_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 109, new named_type(IFC4X3_RC2_IfcLabel_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcParameterValue_type); - IFC4X3_RC2_IfcCurveMeasureSelect_type = new select_type("IfcCurveMeasureSelect", 285, items); - } - { - std::vector items; items.reserve(71); - items.push_back(IFC4X3_RC2_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4X3_RC2_IfcAccelerationMeasure_type); - items.push_back(IFC4X3_RC2_IfcAngularVelocityMeasure_type); - items.push_back(IFC4X3_RC2_IfcAreaDensityMeasure_type); - items.push_back(IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC2_IfcCurvatureMeasure_type); - items.push_back(IFC4X3_RC2_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4X3_RC2_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4X3_RC2_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcElectricChargeMeasure_type); - items.push_back(IFC4X3_RC2_IfcElectricConductanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcElectricResistanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcElectricVoltageMeasure_type); - items.push_back(IFC4X3_RC2_IfcEnergyMeasure_type); - items.push_back(IFC4X3_RC2_IfcForceMeasure_type); - items.push_back(IFC4X3_RC2_IfcFrequencyMeasure_type); - items.push_back(IFC4X3_RC2_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4X3_RC2_IfcHeatingValueMeasure_type); - items.push_back(IFC4X3_RC2_IfcIlluminanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcInductanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4X3_RC2_IfcIonConcentrationMeasure_type); - items.push_back(IFC4X3_RC2_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4X3_RC2_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4X3_RC2_IfcLinearForceMeasure_type); - items.push_back(IFC4X3_RC2_IfcLinearMomentMeasure_type); - items.push_back(IFC4X3_RC2_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4X3_RC2_IfcLinearVelocityMeasure_type); - items.push_back(IFC4X3_RC2_IfcLuminousFluxMeasure_type); - items.push_back(IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4X3_RC2_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4X3_RC2_IfcMagneticFluxMeasure_type); - items.push_back(IFC4X3_RC2_IfcMassDensityMeasure_type); - items.push_back(IFC4X3_RC2_IfcMassFlowRateMeasure_type); - items.push_back(IFC4X3_RC2_IfcMassPerLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC2_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4X3_RC2_IfcMolecularWeightMeasure_type); - items.push_back(IFC4X3_RC2_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4X3_RC2_IfcMonetaryMeasure_type); - items.push_back(IFC4X3_RC2_IfcPHMeasure_type); - items.push_back(IFC4X3_RC2_IfcPlanarForceMeasure_type); - items.push_back(IFC4X3_RC2_IfcPowerMeasure_type); - items.push_back(IFC4X3_RC2_IfcPressureMeasure_type); - items.push_back(IFC4X3_RC2_IfcRadioActivityMeasure_type); - items.push_back(IFC4X3_RC2_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4X3_RC2_IfcRotationalMassMeasure_type); - items.push_back(IFC4X3_RC2_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4X3_RC2_IfcSectionModulusMeasure_type); - items.push_back(IFC4X3_RC2_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4X3_RC2_IfcShearModulusMeasure_type); - items.push_back(IFC4X3_RC2_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4X3_RC2_IfcSoundPowerMeasure_type); - items.push_back(IFC4X3_RC2_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4X3_RC2_IfcSoundPressureMeasure_type); - items.push_back(IFC4X3_RC2_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4X3_RC2_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4X3_RC2_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4X3_RC2_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcThermalConductivityMeasure_type); - items.push_back(IFC4X3_RC2_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4X3_RC2_IfcThermalResistanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcTorqueMeasure_type); - items.push_back(IFC4X3_RC2_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4X3_RC2_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4X3_RC2_IfcWarpingConstantMeasure_type); - items.push_back(IFC4X3_RC2_IfcWarpingMomentMeasure_type); - IFC4X3_RC2_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 307, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC2_IfcBridgePartTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcMarinePartTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcRailwayPartTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcRoadPartTypeEnum_type); - IFC4X3_RC2_IfcFacilityPartTypeSelect_type = new select_type("IfcFacilityPartTypeSelect", 457, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcVibrationDamperTypeEnum_type); - items.push_back(IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type); - IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type = new select_type("IfcImpactProtectionDeviceTypeSelect", 554, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcRepresentation_type); - items.push_back(IFC4X3_RC2_IfcRepresentationItem_type); - IFC4X3_RC2_IfcLayeredItem_type = new select_type("IfcLayeredItem", 594, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcLibraryInformation_type); - items.push_back(IFC4X3_RC2_IfcLibraryReference_type); - IFC4X3_RC2_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 599, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcExternalReference_type); - items.push_back(IFC4X3_RC2_IfcLightIntensityDistribution_type); - IFC4X3_RC2_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 602, items); - } - IFC4X3_RC2_IfcLineIndex_type = new type_declaration("IfcLineIndex", 626, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC2_IfcMaterialList_type); - items.push_back(IFC4X3_RC2_IfcMaterialUsageDefinition_type); - IFC4X3_RC2_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 670, items); - } - IFC4X3_RC2_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 714, new named_type(IFC4X3_RC2_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4X3_RC2_IfcAddress_type); - items.push_back(IFC4X3_RC2_IfcAppliedValue_type); - items.push_back(IFC4X3_RC2_IfcExternalReference_type); - items.push_back(IFC4X3_RC2_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC2_IfcOrganization_type); - items.push_back(IFC4X3_RC2_IfcPerson_type); - items.push_back(IFC4X3_RC2_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC2_IfcTable_type); - items.push_back(IFC4X3_RC2_IfcTimeSeries_type); - IFC4X3_RC2_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 722, items); - } - IFC4X3_RC2_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 798, new named_type(IFC4X3_RC2_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcArcIndex_type); - items.push_back(IFC4X3_RC2_IfcLineIndex_type); - IFC4X3_RC2_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 1011, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4X3_RC2_IfcBinary_type); - items.push_back(IFC4X3_RC2_IfcBoolean_type); - items.push_back(IFC4X3_RC2_IfcDate_type); - items.push_back(IFC4X3_RC2_IfcDateTime_type); - items.push_back(IFC4X3_RC2_IfcDuration_type); - items.push_back(IFC4X3_RC2_IfcIdentifier_type); - items.push_back(IFC4X3_RC2_IfcInteger_type); - items.push_back(IFC4X3_RC2_IfcLabel_type); - items.push_back(IFC4X3_RC2_IfcLogical_type); - items.push_back(IFC4X3_RC2_IfcPositiveInteger_type); - items.push_back(IFC4X3_RC2_IfcReal_type); - items.push_back(IFC4X3_RC2_IfcText_type); - items.push_back(IFC4X3_RC2_IfcTime_type); - items.push_back(IFC4X3_RC2_IfcTimeStamp_type); - IFC4X3_RC2_IfcSimpleValue_type = new select_type("IfcSimpleValue", 1035, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC2_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC2_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC2_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC2_IfcRatioMeasure_type); - IFC4X3_RC2_IfcSizeSelect_type = new select_type("IfcSizeSelect", 1040, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcSpecularExponent_type); - items.push_back(IFC4X3_RC2_IfcSpecularRoughness_type); - IFC4X3_RC2_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 1075, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcPresentationStyle_type); - items.push_back(IFC4X3_RC2_IfcPresentationStyleAssignment_type); - IFC4X3_RC2_IfcStyleAssignmentSelect_type = new select_type("IfcStyleAssignmentSelect", 1131, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4X3_RC2_IfcSurfaceStyleLighting_type); - items.push_back(IFC4X3_RC2_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4X3_RC2_IfcSurfaceStyleShading_type); - items.push_back(IFC4X3_RC2_IfcSurfaceStyleWithTextures_type); - IFC4X3_RC2_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1150, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcDerivedUnit_type); - items.push_back(IFC4X3_RC2_IfcMonetaryUnit_type); - items.push_back(IFC4X3_RC2_IfcNamedUnit_type); - IFC4X3_RC2_IfcUnit_type = new select_type("IfcUnit", 1259, items); - } - IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type = new entity("IfcAlignment2DVerSegCircularArc", false, 30, IFC4X3_RC2_IfcAlignmentVerticalSegment_type); - IFC4X3_RC2_IfcAlignment2DVerSegLine_type = new entity("IfcAlignment2DVerSegLine", false, 31, IFC4X3_RC2_IfcAlignmentVerticalSegment_type); - IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type = new entity("IfcAlignment2DVerSegParabolicArc", false, 32, IFC4X3_RC2_IfcAlignmentVerticalSegment_type); - IFC4X3_RC2_IfcAlignmentCantSegment_type = new entity("IfcAlignmentCantSegment", false, 34, IFC4X3_RC2_IfcAlignmentParameterSegment_type); - IFC4X3_RC2_IfcAlignmentHorizontalSegment_type = new entity("IfcAlignmentHorizontalSegment", false, 38, IFC4X3_RC2_IfcAlignmentParameterSegment_type); - IFC4X3_RC2_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 57, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 58, IFC4X3_RC2_IfcProfileDef_type); - IFC4X3_RC2_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 59, IFC4X3_RC2_IfcProfileDef_type); - IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 60, IFC4X3_RC2_IfcArbitraryClosedProfileDef_type); - IFC4X3_RC2_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 88, IFC4X3_RC2_IfcSurfaceTexture_type); - IFC4X3_RC2_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 163, IFC4X3_RC2_IfcArbitraryOpenProfileDef_type); - IFC4X3_RC2_IfcClassification_type = new entity("IfcClassification", false, 177, IFC4X3_RC2_IfcExternalInformation_type); - IFC4X3_RC2_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 178, IFC4X3_RC2_IfcExternalReference_type); - IFC4X3_RC2_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 189, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 190, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 205, IFC4X3_RC2_IfcProfileDef_type); - IFC4X3_RC2_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 214, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 215, IFC4X3_RC2_IfcConnectionGeometry_type); - IFC4X3_RC2_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 217, IFC4X3_RC2_IfcConnectionPointGeometry_type); - IFC4X3_RC2_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 237, IFC4X3_RC2_IfcNamedUnit_type); - IFC4X3_RC2_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 242, IFC4X3_RC2_IfcNamedUnit_type); - IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 243, IFC4X3_RC2_IfcConversionBasedUnit_type); - IFC4X3_RC2_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 275, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 290, IFC4X3_RC2_IfcPresentationStyle_type); - IFC4X3_RC2_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 291, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 292, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 293, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 308, IFC4X3_RC2_IfcProfileDef_type); - IFC4X3_RC2_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 340, IFC4X3_RC2_IfcExternalInformation_type); - IFC4X3_RC2_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 341, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 342, IFC4X3_RC2_IfcExternalReference_type); - IFC4X3_RC2_IfcEdge_type = new entity("IfcEdge", false, 376, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 377, IFC4X3_RC2_IfcEdge_type); - IFC4X3_RC2_IfcEventTime_type = new entity("IfcEventTime", false, 431, IFC4X3_RC2_IfcSchedulingTime_type); - IFC4X3_RC2_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 435, IFC4X3_RC2_IfcPropertyAbstraction_type); - IFC4X3_RC2_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 441, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcFace_type = new entity("IfcFace", false, 447, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcFaceBound_type = new entity("IfcFaceBound", false, 449, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 450, IFC4X3_RC2_IfcFaceBound_type); - IFC4X3_RC2_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 451, IFC4X3_RC2_IfcFace_type); - IFC4X3_RC2_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 459, IFC4X3_RC2_IfcStructuralConnectionCondition_type); - IFC4X3_RC2_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 469, IFC4X3_RC2_IfcPresentationStyle_type); - IFC4X3_RC2_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 519, IFC4X3_RC2_IfcRepresentationContext_type); - IFC4X3_RC2_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 520, IFC4X3_RC2_IfcRepresentationItem_type); - IFC4X3_RC2_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 521, IFC4X3_RC2_IfcGeometricRepresentationContext_type); - IFC4X3_RC2_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 522, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 534, IFC4X3_RC2_IfcObjectPlacement_type); - IFC4X3_RC2_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 538, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcImageTexture_type = new entity("IfcImageTexture", false, 550, IFC4X3_RC2_IfcSurfaceTexture_type); - IFC4X3_RC2_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 556, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 560, IFC4X3_RC2_IfcTextureCoordinate_type); - IFC4X3_RC2_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 561, IFC4X3_RC2_IfcIndexedTextureMap_type); - IFC4X3_RC2_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 574, IFC4X3_RC2_IfcTimeSeries_type); - IFC4X3_RC2_IfcLagTime_type = new entity("IfcLagTime", false, 589, IFC4X3_RC2_IfcSchedulingTime_type); - IFC4X3_RC2_IfcLightSource_type = new entity("IfcLightSource", true, 608, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 609, IFC4X3_RC2_IfcLightSource_type); - IFC4X3_RC2_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 610, IFC4X3_RC2_IfcLightSource_type); - IFC4X3_RC2_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 611, IFC4X3_RC2_IfcLightSource_type); - IFC4X3_RC2_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 612, IFC4X3_RC2_IfcLightSource_type); - IFC4X3_RC2_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 613, IFC4X3_RC2_IfcLightSourcePositional_type); - IFC4X3_RC2_IfcLinearAxisWithInclination_type = new entity("IfcLinearAxisWithInclination", false, 616, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 620, IFC4X3_RC2_IfcObjectPlacement_type); - IFC4X3_RC2_IfcLinearPlacementWithInclination_type = new entity("IfcLinearPlacementWithInclination", false, 621, IFC4X3_RC2_IfcLinearPlacement_type); - IFC4X3_RC2_IfcLinearSpanPlacement_type = new entity("IfcLinearSpanPlacement", false, 623, IFC4X3_RC2_IfcLinearPlacement_type); - IFC4X3_RC2_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 632, IFC4X3_RC2_IfcObjectPlacement_type); - IFC4X3_RC2_IfcLoop_type = new entity("IfcLoop", false, 635, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcMappedItem_type = new entity("IfcMappedItem", false, 644, IFC4X3_RC2_IfcRepresentationItem_type); - IFC4X3_RC2_IfcMaterial_type = new entity("IfcMaterial", false, 652, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 654, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 655, IFC4X3_RC2_IfcMaterialDefinition_type); - IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 657, IFC4X3_RC2_IfcProductRepresentation_type); - IFC4X3_RC2_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 660, IFC4X3_RC2_IfcMaterialUsageDefinition_type); - IFC4X3_RC2_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 665, IFC4X3_RC2_IfcMaterialUsageDefinition_type); - IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 666, IFC4X3_RC2_IfcMaterialProfileSetUsage_type); - IFC4X3_RC2_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 668, IFC4X3_RC2_IfcExtendedProperties_type); - IFC4X3_RC2_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 669, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 686, IFC4X3_RC2_IfcDerivedProfileDef_type); - IFC4X3_RC2_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 718, IFC4X3_RC2_IfcRoot_type); - IFC4X3_RC2_IfcOpenCrossProfileDef_type = new entity("IfcOpenCrossProfileDef", false, 730, IFC4X3_RC2_IfcProfileDef_type); - IFC4X3_RC2_IfcOpenShell_type = new entity("IfcOpenShell", false, 734, IFC4X3_RC2_IfcConnectedFaceSet_type); - IFC4X3_RC2_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 736, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 737, IFC4X3_RC2_IfcEdge_type); - IFC4X3_RC2_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 743, IFC4X3_RC2_IfcProfileDef_type); - IFC4X3_RC2_IfcPath_type = new entity("IfcPath", false, 745, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 758, IFC4X3_RC2_IfcPhysicalQuantity_type); - IFC4X3_RC2_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 772, IFC4X3_RC2_IfcSurfaceTexture_type); - IFC4X3_RC2_IfcPlacement_type = new entity("IfcPlacement", true, 773, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 775, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcPoint_type = new entity("IfcPoint", true, 784, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcPointByDistanceExpression_type = new entity("IfcPointByDistanceExpression", false, 785, IFC4X3_RC2_IfcPoint_type); - IFC4X3_RC2_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 786, IFC4X3_RC2_IfcPoint_type); - IFC4X3_RC2_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 787, IFC4X3_RC2_IfcPoint_type); - IFC4X3_RC2_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 792, IFC4X3_RC2_IfcLoop_type); - IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 789, IFC4X3_RC2_IfcHalfSpaceSolid_type); - IFC4X3_RC2_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 803, IFC4X3_RC2_IfcPresentationItem_type); - IFC4X3_RC2_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 804, IFC4X3_RC2_IfcPropertyAbstraction_type); - IFC4X3_RC2_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 806, IFC4X3_RC2_IfcPreDefinedItem_type); - IFC4X3_RC2_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 822, IFC4X3_RC2_IfcProductRepresentation_type); - IFC4X3_RC2_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 827, IFC4X3_RC2_IfcExtendedProperties_type); - IFC4X3_RC2_IfcProperty_type = new entity("IfcProperty", true, 837, IFC4X3_RC2_IfcPropertyAbstraction_type); - IFC4X3_RC2_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 840, IFC4X3_RC2_IfcRoot_type); - IFC4X3_RC2_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 841, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 847, IFC4X3_RC2_IfcPropertyDefinition_type); - IFC4X3_RC2_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 855, IFC4X3_RC2_IfcPropertyDefinition_type); - IFC4X3_RC2_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 869, IFC4X3_RC2_IfcPropertySetDefinition_type); - IFC4X3_RC2_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 893, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 902, IFC4X3_RC2_IfcTimeSeries_type); - IFC4X3_RC2_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 905, IFC4X3_RC2_IfcPreDefinedProperties_type); - IFC4X3_RC2_IfcRelationship_type = new entity("IfcRelationship", true, 934, IFC4X3_RC2_IfcRoot_type); - IFC4X3_RC2_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 973, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 974, IFC4X3_RC2_IfcResourceLevelRelationship_type); - IFC4X3_RC2_IfcResourceTime_type = new entity("IfcResourceTime", false, 978, IFC4X3_RC2_IfcSchedulingTime_type); - IFC4X3_RC2_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 994, IFC4X3_RC2_IfcRectangleProfileDef_type); - IFC4X3_RC2_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 1006, IFC4X3_RC2_IfcPreDefinedProperties_type); - IFC4X3_RC2_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 1007, IFC4X3_RC2_IfcPreDefinedProperties_type); - IFC4X3_RC2_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 1003, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcSegment_type = new entity("IfcSegment", true, 1009, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 1025, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 1032, IFC4X3_RC2_IfcProperty_type); - IFC4X3_RC2_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 1046, IFC4X3_RC2_IfcStructuralConnectionCondition_type); - IFC4X3_RC2_IfcSolidModel_type = new entity("IfcSolidModel", true, 1051, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 1108, IFC4X3_RC2_IfcStructuralLoadStatic_type); - IFC4X3_RC2_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 1110, IFC4X3_RC2_IfcStructuralLoadStatic_type); - IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 1111, IFC4X3_RC2_IfcStructuralLoadStatic_type); - IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 1112, IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type); - IFC4X3_RC2_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1113, IFC4X3_RC2_IfcStructuralLoadStatic_type); - IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1114, IFC4X3_RC2_IfcStructuralLoadSingleForce_type); - IFC4X3_RC2_IfcSubedge_type = new entity("IfcSubedge", false, 1138, IFC4X3_RC2_IfcEdge_type); - IFC4X3_RC2_IfcSurface_type = new entity("IfcSurface", true, 1139, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1153, IFC4X3_RC2_IfcSurfaceStyleShading_type); - IFC4X3_RC2_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1157, IFC4X3_RC2_IfcSolidModel_type); - IFC4X3_RC2_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1158, IFC4X3_RC2_IfcSolidModel_type); - IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1159, IFC4X3_RC2_IfcSweptDiskSolid_type); - IFC4X3_RC2_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1160, IFC4X3_RC2_IfcSurface_type); - IFC4X3_RC2_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1251, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1193, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1199, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1200, IFC4X3_RC2_IfcTextLiteral_type); - IFC4X3_RC2_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1203, IFC4X3_RC2_IfcPreDefinedTextFont_type); - IFC4X3_RC2_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1245, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcTypeObject_type = new entity("IfcTypeObject", false, 1255, IFC4X3_RC2_IfcObjectDefinition_type); - IFC4X3_RC2_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1256, IFC4X3_RC2_IfcTypeObject_type); - IFC4X3_RC2_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1257, IFC4X3_RC2_IfcTypeObject_type); - IFC4X3_RC2_IfcTypeResource_type = new entity("IfcTypeResource", true, 1258, IFC4X3_RC2_IfcTypeObject_type); - IFC4X3_RC2_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1269, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcVector_type = new entity("IfcVector", false, 1275, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1278, IFC4X3_RC2_IfcLoop_type); - IFC4X3_RC2_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1311, IFC4X3_RC2_IfcTypeProduct_type); - IFC4X3_RC2_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1326, IFC4X3_RC2_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcClassification_type); - items.push_back(IFC4X3_RC2_IfcClassificationReference_type); - IFC4X3_RC2_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 179, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcClassification_type); - items.push_back(IFC4X3_RC2_IfcClassificationReference_type); - IFC4X3_RC2_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 180, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4X3_RC2_IfcGeometricRepresentationContext_type); - IFC4X3_RC2_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 255, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcObjectDefinition_type); - items.push_back(IFC4X3_RC2_IfcPropertyDefinition_type); - IFC4X3_RC2_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 306, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcDocumentInformation_type); - items.push_back(IFC4X3_RC2_IfcDocumentReference_type); - IFC4X3_RC2_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 343, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcVector_type); - IFC4X3_RC2_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 539, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4X3_RC2_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4X3_RC2_IfcAreaMeasure_type); - items.push_back(IFC4X3_RC2_IfcComplexNumber_type); - items.push_back(IFC4X3_RC2_IfcContextDependentMeasure_type); - items.push_back(IFC4X3_RC2_IfcCountMeasure_type); - items.push_back(IFC4X3_RC2_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC2_IfcElectricCurrentMeasure_type); - items.push_back(IFC4X3_RC2_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4X3_RC2_IfcMassMeasure_type); - items.push_back(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC2_IfcNumericMeasure_type); - items.push_back(IFC4X3_RC2_IfcParameterValue_type); - items.push_back(IFC4X3_RC2_IfcPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC2_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4X3_RC2_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC2_IfcRatioMeasure_type); - items.push_back(IFC4X3_RC2_IfcSolidAngleMeasure_type); - items.push_back(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4X3_RC2_IfcTimeMeasure_type); - items.push_back(IFC4X3_RC2_IfcVolumeMeasure_type); - IFC4X3_RC2_IfcMeasureValue_type = new select_type("IfcMeasureValue", 672, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcPoint_type); - items.push_back(IFC4X3_RC2_IfcVertexPoint_type); - IFC4X3_RC2_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 788, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC2_IfcCurveStyle_type); - items.push_back(IFC4X3_RC2_IfcFillAreaStyle_type); - items.push_back(IFC4X3_RC2_IfcNullStyle_type); - items.push_back(IFC4X3_RC2_IfcSurfaceStyle_type); - items.push_back(IFC4X3_RC2_IfcTextStyle_type); - IFC4X3_RC2_IfcPresentationStyleSelect_type = new select_type("IfcPresentationStyleSelect", 814, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcProductDefinitionShape_type); - items.push_back(IFC4X3_RC2_IfcRepresentationMap_type); - IFC4X3_RC2_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 824, items); - } - IFC4X3_RC2_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 849, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(17); - items.push_back(IFC4X3_RC2_IfcActorRole_type); - items.push_back(IFC4X3_RC2_IfcAppliedValue_type); - items.push_back(IFC4X3_RC2_IfcApproval_type); - items.push_back(IFC4X3_RC2_IfcConstraint_type); - items.push_back(IFC4X3_RC2_IfcContextDependentUnit_type); - items.push_back(IFC4X3_RC2_IfcConversionBasedUnit_type); - items.push_back(IFC4X3_RC2_IfcExternalInformation_type); - items.push_back(IFC4X3_RC2_IfcExternalReference_type); - items.push_back(IFC4X3_RC2_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC2_IfcOrganization_type); - items.push_back(IFC4X3_RC2_IfcPerson_type); - items.push_back(IFC4X3_RC2_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC2_IfcPhysicalQuantity_type); - items.push_back(IFC4X3_RC2_IfcProfileDef_type); - items.push_back(IFC4X3_RC2_IfcPropertyAbstraction_type); - items.push_back(IFC4X3_RC2_IfcShapeAspect_type); - items.push_back(IFC4X3_RC2_IfcTimeSeries_type); - IFC4X3_RC2_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 976, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4X3_RC2_IfcPreDefinedTextFont_type); - IFC4X3_RC2_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1198, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcDerivedMeasureValue_type); - items.push_back(IFC4X3_RC2_IfcMeasureValue_type); - items.push_back(IFC4X3_RC2_IfcSimpleValue_type); - IFC4X3_RC2_IfcValue_type = new select_type("IfcValue", 1270, items); - } - IFC4X3_RC2_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X3_RC2_IfcFaceSurface_type); - IFC4X3_RC2_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 51, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 67, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 71, IFC4X3_RC2_IfcPlacement_type); - IFC4X3_RC2_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 73, IFC4X3_RC2_IfcPlacement_type); - IFC4X3_RC2_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 74, IFC4X3_RC2_IfcPlacement_type); - IFC4X3_RC2_IfcAxis2PlacementLinear_type = new entity("IfcAxis2PlacementLinear", false, 75, IFC4X3_RC2_IfcPlacement_type); - IFC4X3_RC2_IfcAxisLateralInclination_type = new entity("IfcAxisLateralInclination", false, 76, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 98, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 107, IFC4X3_RC2_IfcSurface_type); - IFC4X3_RC2_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 108, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 110, IFC4X3_RC2_IfcHalfSpaceSolid_type); - IFC4X3_RC2_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 274, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 154, IFC4X3_RC2_IfcPoint_type); - IFC4X3_RC2_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 155, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 156, IFC4X3_RC2_IfcCartesianPointList_type); - IFC4X3_RC2_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 157, IFC4X3_RC2_IfcCartesianPointList_type); - IFC4X3_RC2_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 158, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 159, IFC4X3_RC2_IfcCartesianTransformationOperator_type); - IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 160, IFC4X3_RC2_IfcCartesianTransformationOperator2D_type); - IFC4X3_RC2_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 161, IFC4X3_RC2_IfcCartesianTransformationOperator_type); - IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 162, IFC4X3_RC2_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC2_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 173, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcClosedShell_type = new entity("IfcClosedShell", false, 181, IFC4X3_RC2_IfcConnectedFaceSet_type); - IFC4X3_RC2_IfcColourRgb_type = new entity("IfcColourRgb", false, 188, IFC4X3_RC2_IfcColourSpecification_type); - IFC4X3_RC2_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 199, IFC4X3_RC2_IfcProperty_type); - IFC4X3_RC2_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 204, IFC4X3_RC2_IfcSegment_type); - IFC4X3_RC2_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 234, IFC4X3_RC2_IfcTypeResource_type); - IFC4X3_RC2_IfcContext_type = new entity("IfcContext", true, 235, IFC4X3_RC2_IfcObjectDefinition_type); - IFC4X3_RC2_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 269, IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 271, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 273, IFC4X3_RC2_IfcSolidModel_type); - IFC4X3_RC2_IfcCurve_type = new entity("IfcCurve", true, 280, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 281, IFC4X3_RC2_IfcBoundedSurface_type); - IFC4X3_RC2_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 282, IFC4X3_RC2_IfcBoundedSurface_type); - IFC4X3_RC2_IfcCurveSegment_type = new entity("IfcCurveSegment", false, 288, IFC4X3_RC2_IfcSegment_type); - IFC4X3_RC2_IfcDirection_type = new entity("IfcDirection", false, 315, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type = new entity("IfcDirectrixCurveSweptAreaSolid", true, 317, IFC4X3_RC2_IfcSweptAreaSolid_type); - IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type = new entity("IfcDirectrixDistanceSweptAreaSolid", true, 318, IFC4X3_RC2_IfcSweptAreaSolid_type); - IFC4X3_RC2_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 351, IFC4X3_RC2_IfcTypeProduct_type); - IFC4X3_RC2_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 378, IFC4X3_RC2_IfcLoop_type); - IFC4X3_RC2_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 414, IFC4X3_RC2_IfcQuantitySet_type); - IFC4X3_RC2_IfcElementType_type = new entity("IfcElementType", true, 415, IFC4X3_RC2_IfcTypeProduct_type); - IFC4X3_RC2_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 407, IFC4X3_RC2_IfcSurface_type); - IFC4X3_RC2_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 417, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcEventType_type = new entity("IfcEventType", false, 433, IFC4X3_RC2_IfcTypeProcess_type); - IFC4X3_RC2_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 445, IFC4X3_RC2_IfcSweptAreaSolid_type); - IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 446, IFC4X3_RC2_IfcExtrudedAreaSolid_type); - IFC4X3_RC2_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 448, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 470, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 471, IFC4X3_RC2_IfcGeometricRepresentationItem_type); - IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 479, IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC2_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 510, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 512, IFC4X3_RC2_IfcFurnishingElementType_type); - IFC4X3_RC2_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 515, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 517, IFC4X3_RC2_IfcGeometricSet_type); - IFC4X3_RC2_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 576, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type = new entity("IfcInclinedReferenceSweptAreaSolid", false, 555, IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type); - IFC4X3_RC2_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 558, IFC4X3_RC2_IfcTessellatedItem_type); - IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 559, IFC4X3_RC2_IfcIndexedPolygonalFace_type); - IFC4X3_RC2_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 636, IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 587, IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcLine_type = new entity("IfcLine", false, 614, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 642, IFC4X3_RC2_IfcSolidModel_type); - IFC4X3_RC2_IfcObject_type = new entity("IfcObject", true, 717, IFC4X3_RC2_IfcObjectDefinition_type); - IFC4X3_RC2_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 726, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 727, IFC4X3_RC2_IfcOffsetCurve_type); - IFC4X3_RC2_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 728, IFC4X3_RC2_IfcOffsetCurve_type); - IFC4X3_RC2_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 729, IFC4X3_RC2_IfcOffsetCurve_type); - IFC4X3_RC2_IfcPcurve_type = new entity("IfcPcurve", false, 748, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 774, IFC4X3_RC2_IfcPlanarExtent_type); - IFC4X3_RC2_IfcPlane_type = new entity("IfcPlane", false, 777, IFC4X3_RC2_IfcElementarySurface_type); - IFC4X3_RC2_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 801, IFC4X3_RC2_IfcPreDefinedItem_type); - IFC4X3_RC2_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 802, IFC4X3_RC2_IfcPreDefinedItem_type); - IFC4X3_RC2_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 805, IFC4X3_RC2_IfcPropertySetDefinition_type); - IFC4X3_RC2_IfcProcedureType_type = new entity("IfcProcedureType", false, 817, IFC4X3_RC2_IfcTypeProcess_type); - IFC4X3_RC2_IfcProcess_type = new entity("IfcProcess", true, 819, IFC4X3_RC2_IfcObject_type); - IFC4X3_RC2_IfcProduct_type = new entity("IfcProduct", true, 821, IFC4X3_RC2_IfcObject_type); - IFC4X3_RC2_IfcProject_type = new entity("IfcProject", false, 829, IFC4X3_RC2_IfcContext_type); - IFC4X3_RC2_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 834, IFC4X3_RC2_IfcContext_type); - IFC4X3_RC2_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 839, IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 842, IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 844, IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 845, IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcPropertySet_type = new entity("IfcPropertySet", false, 846, IFC4X3_RC2_IfcPropertySetDefinition_type); - IFC4X3_RC2_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 850, IFC4X3_RC2_IfcPropertyTemplateDefinition_type); - IFC4X3_RC2_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 852, IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 853, IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 854, IFC4X3_RC2_IfcPropertyTemplateDefinition_type); - IFC4X3_RC2_IfcProxy_type = new entity("IfcProxy", false, 862, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 892, IFC4X3_RC2_IfcRectangleProfileDef_type); - IFC4X3_RC2_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 894, IFC4X3_RC2_IfcCsgPrimitive3D_type); - IFC4X3_RC2_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 895, IFC4X3_RC2_IfcBoundedSurface_type); - IFC4X3_RC2_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 906, IFC4X3_RC2_IfcPreDefinedPropertySet_type); - IFC4X3_RC2_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 918, IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 919, IFC4X3_RC2_IfcRelAssigns_type); - IFC4X3_RC2_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 920, IFC4X3_RC2_IfcRelAssigns_type); - IFC4X3_RC2_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 921, IFC4X3_RC2_IfcRelAssigns_type); - IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 922, IFC4X3_RC2_IfcRelAssignsToGroup_type); - IFC4X3_RC2_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 923, IFC4X3_RC2_IfcRelAssigns_type); - IFC4X3_RC2_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 924, IFC4X3_RC2_IfcRelAssigns_type); - IFC4X3_RC2_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 925, IFC4X3_RC2_IfcRelAssigns_type); - IFC4X3_RC2_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 926, IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 927, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 928, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 929, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 930, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 931, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 932, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelAssociatesProfileDef_type = new entity("IfcRelAssociatesProfileDef", false, 933, IFC4X3_RC2_IfcRelAssociates_type); - IFC4X3_RC2_IfcRelConnects_type = new entity("IfcRelConnects", true, 935, IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 936, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 937, IFC4X3_RC2_IfcRelConnectsElements_type); - IFC4X3_RC2_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 939, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 938, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 940, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 941, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 942, IFC4X3_RC2_IfcRelConnectsStructuralMember_type); - IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 943, IFC4X3_RC2_IfcRelConnectsElements_type); - IFC4X3_RC2_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 944, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 945, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 946, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 947, IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 948, IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRelDefines_type = new entity("IfcRelDefines", true, 949, IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 950, IFC4X3_RC2_IfcRelDefines_type); - IFC4X3_RC2_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 951, IFC4X3_RC2_IfcRelDefines_type); - IFC4X3_RC2_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 952, IFC4X3_RC2_IfcRelDefines_type); - IFC4X3_RC2_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 953, IFC4X3_RC2_IfcRelDefines_type); - IFC4X3_RC2_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 954, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 955, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 956, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelNests_type = new entity("IfcRelNests", false, 957, IFC4X3_RC2_IfcRelDecomposes_type); - IFC4X3_RC2_IfcRelPositions_type = new entity("IfcRelPositions", false, 958, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 959, IFC4X3_RC2_IfcRelDecomposes_type); - IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 960, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelSequence_type = new entity("IfcRelSequence", false, 961, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 962, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 963, IFC4X3_RC2_IfcRelConnects_type); - IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 964, IFC4X3_RC2_IfcRelSpaceBoundary_type); - IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 965, IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC2_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 966, IFC4X3_RC2_IfcRelDecomposes_type); - IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 967, IFC4X3_RC2_IfcCompositeCurveSegment_type); - IFC4X3_RC2_IfcResource_type = new entity("IfcResource", true, 972, IFC4X3_RC2_IfcObject_type); - IFC4X3_RC2_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 979, IFC4X3_RC2_IfcSweptAreaSolid_type); - IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 980, IFC4X3_RC2_IfcRevolvedAreaSolid_type); - IFC4X3_RC2_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 981, IFC4X3_RC2_IfcCsgPrimitive3D_type); - IFC4X3_RC2_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 982, IFC4X3_RC2_IfcCsgPrimitive3D_type); - IFC4X3_RC2_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 1001, IFC4X3_RC2_IfcSolidModel_type); - IFC4X3_RC2_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 1002, IFC4X3_RC2_IfcSectionedSolid_type); - IFC4X3_RC2_IfcSectionedSurface_type = new entity("IfcSectionedSurface", false, 1004, IFC4X3_RC2_IfcSurface_type); - IFC4X3_RC2_IfcSeriesParameterCurve_type = new entity("IfcSeriesParameterCurve", false, 1016, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 1033, IFC4X3_RC2_IfcPropertyTemplate_type); - IFC4X3_RC2_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 1065, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 1066, IFC4X3_RC2_IfcTypeProduct_type); - IFC4X3_RC2_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 1068, IFC4X3_RC2_IfcSpatialElement_type); - IFC4X3_RC2_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 1069, IFC4X3_RC2_IfcSpatialElementType_type); - IFC4X3_RC2_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 1070, IFC4X3_RC2_IfcSpatialElement_type); - IFC4X3_RC2_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 1071, IFC4X3_RC2_IfcSpatialElementType_type); - IFC4X3_RC2_IfcSphere_type = new entity("IfcSphere", false, 1077, IFC4X3_RC2_IfcCsgPrimitive3D_type); - IFC4X3_RC2_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 1078, IFC4X3_RC2_IfcElementarySurface_type); - IFC4X3_RC2_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 1090, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 1102, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1117, IFC4X3_RC2_IfcStructuralItem_type); - IFC4X3_RC2_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1122, IFC4X3_RC2_IfcStructuralActivity_type); - IFC4X3_RC2_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1127, IFC4X3_RC2_IfcStructuralMember_type); - IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1129, IFC4X3_RC2_IfcStructuralSurfaceMember_type); - IFC4X3_RC2_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1130, IFC4X3_RC2_IfcStructuralReaction_type); - IFC4X3_RC2_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1136, IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1140, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1141, IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1144, IFC4X3_RC2_IfcSweptSurface_type); - IFC4X3_RC2_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1145, IFC4X3_RC2_IfcSweptSurface_type); - IFC4X3_RC2_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1166, IFC4X3_RC2_IfcFurnishingElementType_type); - IFC4X3_RC2_IfcTask_type = new entity("IfcTask", false, 1174, IFC4X3_RC2_IfcProcess_type); - IFC4X3_RC2_IfcTaskType_type = new entity("IfcTaskType", false, 1178, IFC4X3_RC2_IfcTypeProcess_type); - IFC4X3_RC2_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1192, IFC4X3_RC2_IfcTessellatedItem_type); - IFC4X3_RC2_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1228, IFC4X3_RC2_IfcElementarySurface_type); - IFC4X3_RC2_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1243, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1246, IFC4X3_RC2_IfcTessellatedFaceSet_type); - IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1247, IFC4X3_RC2_IfcTriangulatedFaceSet_type); - IFC4X3_RC2_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1306, IFC4X3_RC2_IfcPreDefinedPropertySet_type); - IFC4X3_RC2_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1309, IFC4X3_RC2_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC2_IfcReference_type); - items.push_back(IFC4X3_RC2_IfcValue_type); - IFC4X3_RC2_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 55, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcAxis2Placement2D_type); - items.push_back(IFC4X3_RC2_IfcAxis2Placement3D_type); - IFC4X3_RC2_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 72, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC2_IfcBooleanResult_type); - items.push_back(IFC4X3_RC2_IfcCsgPrimitive3D_type); - items.push_back(IFC4X3_RC2_IfcHalfSpaceSolid_type); - items.push_back(IFC4X3_RC2_IfcSolidModel_type); - items.push_back(IFC4X3_RC2_IfcTessellatedFaceSet_type); - IFC4X3_RC2_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 96, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcColourSpecification_type); - items.push_back(IFC4X3_RC2_IfcPreDefinedColour_type); - IFC4X3_RC2_IfcColour_type = new select_type("IfcColour", 186, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcColourRgb_type); - items.push_back(IFC4X3_RC2_IfcNormalisedRatioMeasure_type); - IFC4X3_RC2_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 187, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBooleanResult_type); - items.push_back(IFC4X3_RC2_IfcCsgPrimitive3D_type); - IFC4X3_RC2_IfcCsgSelect_type = new select_type("IfcCsgSelect", 272, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcCurveStyleFont_type); - items.push_back(IFC4X3_RC2_IfcPreDefinedCurveFont_type); - IFC4X3_RC2_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 294, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X3_RC2_IfcColour_type); - items.push_back(IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X3_RC2_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X3_RC2_IfcFillAreaStyleTiles_type); - IFC4X3_RC2_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 472, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcCurve_type); - items.push_back(IFC4X3_RC2_IfcPoint_type); - items.push_back(IFC4X3_RC2_IfcSurface_type); - IFC4X3_RC2_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 523, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcDirection_type); - items.push_back(IFC4X3_RC2_IfcVirtualGridIntersection_type); - IFC4X3_RC2_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 535, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcCurve_type); - items.push_back(IFC4X3_RC2_IfcLinearAxisWithInclination_type); - IFC4X3_RC2_IfcLinearAxisSelect_type = new select_type("IfcLinearAxisSelect", 615, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC2_IfcAppliedValue_type); - items.push_back(IFC4X3_RC2_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC2_IfcReference_type); - items.push_back(IFC4X3_RC2_IfcTable_type); - items.push_back(IFC4X3_RC2_IfcTimeSeries_type); - items.push_back(IFC4X3_RC2_IfcValue_type); - IFC4X3_RC2_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 685, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcProcess_type); - items.push_back(IFC4X3_RC2_IfcTypeProcess_type); - IFC4X3_RC2_IfcProcessSelect_type = new select_type("IfcProcessSelect", 820, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcProduct_type); - items.push_back(IFC4X3_RC2_IfcTypeProduct_type); - IFC4X3_RC2_IfcProductSelect_type = new select_type("IfcProductSelect", 825, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcPropertySetDefinition_type); - items.push_back(IFC4X3_RC2_IfcPropertySetDefinitionSet_type); - IFC4X3_RC2_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 848, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcResource_type); - items.push_back(IFC4X3_RC2_IfcTypeResource_type); - IFC4X3_RC2_IfcResourceSelect_type = new select_type("IfcResourceSelect", 977, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcClosedShell_type); - items.push_back(IFC4X3_RC2_IfcOpenShell_type); - IFC4X3_RC2_IfcShell_type = new select_type("IfcShell", 1024, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcClosedShell_type); - items.push_back(IFC4X3_RC2_IfcSolidModel_type); - IFC4X3_RC2_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 1052, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X3_RC2_IfcFaceSurface_type); - items.push_back(IFC4X3_RC2_IfcSurface_type); - IFC4X3_RC2_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1146, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcCartesianPoint_type); - items.push_back(IFC4X3_RC2_IfcParameterValue_type); - IFC4X3_RC2_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1250, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcDirection_type); - items.push_back(IFC4X3_RC2_IfcVector_type); - IFC4X3_RC2_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1276, items); - } - IFC4X3_RC2_IfcActor_type = new entity("IfcActor", false, 6, IFC4X3_RC2_IfcObject_type); - IFC4X3_RC2_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X3_RC2_IfcManifoldSolidBrep_type); - IFC4X3_RC2_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X3_RC2_IfcAdvancedBrep_type); - IFC4X3_RC2_IfcAnnotation_type = new entity("IfcAnnotation", false, 50, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 118, IFC4X3_RC2_IfcBoundedSurface_type); - IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 120, IFC4X3_RC2_IfcBSplineSurface_type); - IFC4X3_RC2_IfcBlock_type = new entity("IfcBlock", false, 89, IFC4X3_RC2_IfcCsgPrimitive3D_type); - IFC4X3_RC2_IfcBlossCurve_type = new entity("IfcBlossCurve", false, 90, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 95, IFC4X3_RC2_IfcBooleanResult_type); - IFC4X3_RC2_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 106, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 128, IFC4X3_RC2_IfcSpatialStructureElement_type); - IFC4X3_RC2_IfcBuiltElementType_type = new entity("IfcBuiltElementType", false, 132, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcChimneyType_type = new entity("IfcChimneyType", false, 169, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 172, IFC4X3_RC2_IfcCircleProfileDef_type); - IFC4X3_RC2_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 176, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcClothoid_type = new entity("IfcClothoid", false, 182, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcColumnType_type = new entity("IfcColumnType", false, 193, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 200, IFC4X3_RC2_IfcPropertyTemplate_type); - IFC4X3_RC2_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 202, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 203, IFC4X3_RC2_IfcCompositeCurve_type); - IFC4X3_RC2_IfcConic_type = new entity("IfcConic", true, 213, IFC4X3_RC2_IfcCurve_type); - IFC4X3_RC2_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 225, IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 228, IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 231, IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 233, IFC4X3_RC2_IfcResource_type); - IFC4X3_RC2_IfcControl_type = new entity("IfcControl", true, 238, IFC4X3_RC2_IfcObject_type); - IFC4X3_RC2_IfcCostItem_type = new entity("IfcCostItem", false, 256, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 258, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcCourseType_type = new entity("IfcCourseType", false, 263, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcCoveringType_type = new entity("IfcCoveringType", false, 266, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcCrewResource_type = new entity("IfcCrewResource", false, 268, IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 277, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcCurveSegment2D_type = new entity("IfcCurveSegment2D", true, 289, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 295, IFC4X3_RC2_IfcElementarySurface_type); - IFC4X3_RC2_IfcDeepFoundationType_type = new entity("IfcDeepFoundationType", false, 305, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 332, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 334, IFC4X3_RC2_IfcDistributionElementType_type); - IFC4X3_RC2_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 346, IFC4X3_RC2_IfcPreDefinedPropertySet_type); - IFC4X3_RC2_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 349, IFC4X3_RC2_IfcPreDefinedPropertySet_type); - IFC4X3_RC2_IfcDoorType_type = new entity("IfcDoorType", false, 354, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 358, IFC4X3_RC2_IfcPreDefinedColour_type); - IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 359, IFC4X3_RC2_IfcPreDefinedCurveFont_type); - IFC4X3_RC2_IfcElement_type = new entity("IfcElement", true, 406, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 408, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 409, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcElementComponent_type = new entity("IfcElementComponent", true, 411, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 412, IFC4X3_RC2_IfcElementType_type); - IFC4X3_RC2_IfcEllipse_type = new entity("IfcEllipse", false, 416, IFC4X3_RC2_IfcConic_type); - IFC4X3_RC2_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 419, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcEngineType_type = new entity("IfcEngineType", false, 422, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 425, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 428, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcEvent_type = new entity("IfcEvent", false, 430, IFC4X3_RC2_IfcProcess_type); - IFC4X3_RC2_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 444, IFC4X3_RC2_IfcSpatialElement_type); - IFC4X3_RC2_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 452, IFC4X3_RC2_IfcManifoldSolidBrep_type); - IFC4X3_RC2_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 453, IFC4X3_RC2_IfcFacetedBrep_type); - IFC4X3_RC2_IfcFacility_type = new entity("IfcFacility", false, 454, IFC4X3_RC2_IfcSpatialStructureElement_type); - IFC4X3_RC2_IfcFacilityPart_type = new entity("IfcFacilityPart", false, 455, IFC4X3_RC2_IfcSpatialStructureElement_type); - IFC4X3_RC2_IfcFastener_type = new entity("IfcFastener", false, 463, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcFastenerType_type = new entity("IfcFastenerType", false, 464, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 466, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 467, IFC4X3_RC2_IfcFeatureElement_type); - IFC4X3_RC2_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 468, IFC4X3_RC2_IfcFeatureElement_type); - IFC4X3_RC2_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 481, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 484, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 489, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 492, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 494, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 496, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 498, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 500, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcFootingType_type = new entity("IfcFootingType", false, 505, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 509, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcFurniture_type = new entity("IfcFurniture", false, 511, IFC4X3_RC2_IfcFurnishingElement_type); - IFC4X3_RC2_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 514, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcGeotechnicalElement_type = new entity("IfcGeotechnicalElement", true, 527, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcGeotechnicalStratum_type = new entity("IfcGeotechnicalStratum", true, 528, IFC4X3_RC2_IfcGeotechnicalElement_type); - IFC4X3_RC2_IfcGradientCurve_type = new entity("IfcGradientCurve", false, 531, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcGroup_type = new entity("IfcGroup", false, 537, IFC4X3_RC2_IfcObject_type); - IFC4X3_RC2_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 541, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 546, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcImpactProtectionDevice_type = new entity("IfcImpactProtectionDevice", false, 551, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcImpactProtectionDeviceType_type = new entity("IfcImpactProtectionDeviceType", false, 552, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 557, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 566, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC2_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 570, IFC4X3_RC2_IfcSurfaceCurve_type); - IFC4X3_RC2_IfcInventory_type = new entity("IfcInventory", false, 571, IFC4X3_RC2_IfcGroup_type); - IFC4X3_RC2_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 579, IFC4X3_RC2_IfcFlowFittingType_type); - IFC4X3_RC2_IfcKerbType_type = new entity("IfcKerbType", false, 582, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcLaborResource_type = new entity("IfcLaborResource", false, 586, IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcLampType_type = new entity("IfcLampType", false, 591, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 605, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcLineSegment2D_type = new entity("IfcLineSegment2D", false, 627, IFC4X3_RC2_IfcCurveSegment2D_type); - IFC4X3_RC2_IfcLinearElement_type = new entity("IfcLinearElement", true, 617, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcLiquidTerminalType_type = new entity("IfcLiquidTerminalType", false, 629, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcMarineFacility_type = new entity("IfcMarineFacility", false, 645, IFC4X3_RC2_IfcFacility_type); - IFC4X3_RC2_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 674, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 675, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 678, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcMemberType_type = new entity("IfcMemberType", false, 682, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type = new entity("IfcMobileTelecommunicationsApplianceType", false, 688, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcMooringDeviceType_type = new entity("IfcMooringDeviceType", false, 704, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 707, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcNavigationElementType_type = new entity("IfcNavigationElementType", false, 711, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcOccupant_type = new entity("IfcOccupant", false, 724, IFC4X3_RC2_IfcActor_type); - IFC4X3_RC2_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 731, IFC4X3_RC2_IfcFeatureElementSubtraction_type); - IFC4X3_RC2_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 733, IFC4X3_RC2_IfcOpeningElement_type); - IFC4X3_RC2_IfcOutletType_type = new entity("IfcOutletType", false, 740, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcPavementType_type = new entity("IfcPavementType", false, 747, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 749, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 752, IFC4X3_RC2_IfcPreDefinedPropertySet_type); - IFC4X3_RC2_IfcPermit_type = new entity("IfcPermit", false, 753, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcPileType_type = new entity("IfcPileType", false, 764, IFC4X3_RC2_IfcDeepFoundationType_type); - IFC4X3_RC2_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 767, IFC4X3_RC2_IfcFlowFittingType_type); - IFC4X3_RC2_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 770, IFC4X3_RC2_IfcFlowSegmentType_type); - IFC4X3_RC2_IfcPlant_type = new entity("IfcPlant", false, 779, IFC4X3_RC2_IfcGeographicElement_type); - IFC4X3_RC2_IfcPlateType_type = new entity("IfcPlateType", false, 782, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 790, IFC4X3_RC2_IfcTessellatedFaceSet_type); - IFC4X3_RC2_IfcPolyline_type = new entity("IfcPolyline", false, 791, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcPort_type = new entity("IfcPort", true, 793, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 794, IFC4X3_RC2_IfcProduct_type); - IFC4X3_RC2_IfcProcedure_type = new entity("IfcProcedure", false, 816, IFC4X3_RC2_IfcProcess_type); - IFC4X3_RC2_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 835, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 832, IFC4X3_RC2_IfcFeatureElementAddition_type); - IFC4X3_RC2_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 860, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcPumpType_type = new entity("IfcPumpType", false, 864, IFC4X3_RC2_IfcFlowMovingDeviceType_type); - IFC4X3_RC2_IfcRailType_type = new entity("IfcRailType", false, 878, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcRailingType_type = new entity("IfcRailingType", false, 876, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcRailway_type = new entity("IfcRailway", false, 880, IFC4X3_RC2_IfcFacility_type); - IFC4X3_RC2_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 884, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcRampType_type = new entity("IfcRampType", false, 886, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 890, IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC2_IfcReferent_type = new entity("IfcReferent", false, 899, IFC4X3_RC2_IfcPositioningElement_type); - IFC4X3_RC2_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 912, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 913, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 914, IFC4X3_RC2_IfcReinforcingElement_type); - IFC4X3_RC2_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 915, IFC4X3_RC2_IfcReinforcingElementType_type); - IFC4X3_RC2_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 917, IFC4X3_RC2_IfcRelDecomposes_type); - IFC4X3_RC2_IfcRoad_type = new entity("IfcRoad", false, 983, IFC4X3_RC2_IfcFacility_type); - IFC4X3_RC2_IfcRoofType_type = new entity("IfcRoofType", false, 987, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 996, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 999, IFC4X3_RC2_IfcSurfaceCurve_type); - IFC4X3_RC2_IfcSegmentedReferenceCurve_type = new entity("IfcSegmentedReferenceCurve", false, 1010, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 1018, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcSign_type = new entity("IfcSign", false, 1026, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcSignType_type = new entity("IfcSignType", false, 1030, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcSignalType_type = new entity("IfcSignalType", false, 1028, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcSite_type = new entity("IfcSite", false, 1037, IFC4X3_RC2_IfcSpatialStructureElement_type); - IFC4X3_RC2_IfcSlabType_type = new entity("IfcSlabType", false, 1044, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 1048, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcSolidStratum_type = new entity("IfcSolidStratum", false, 1053, IFC4X3_RC2_IfcGeotechnicalStratum_type); - IFC4X3_RC2_IfcSpace_type = new entity("IfcSpace", false, 1058, IFC4X3_RC2_IfcSpatialStructureElement_type); - IFC4X3_RC2_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 1061, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcSpaceType_type = new entity("IfcSpaceType", false, 1063, IFC4X3_RC2_IfcSpatialStructureElementType_type); - IFC4X3_RC2_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 1080, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 1084, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcStairType_type = new entity("IfcStairType", false, 1086, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 1089, IFC4X3_RC2_IfcStructuralActivity_type); - IFC4X3_RC2_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 1093, IFC4X3_RC2_IfcStructuralItem_type); - IFC4X3_RC2_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 1095, IFC4X3_RC2_IfcStructuralAction_type); - IFC4X3_RC2_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 1097, IFC4X3_RC2_IfcStructuralConnection_type); - IFC4X3_RC2_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 1098, IFC4X3_RC2_IfcStructuralMember_type); - IFC4X3_RC2_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 1100, IFC4X3_RC2_IfcStructuralCurveMember_type); - IFC4X3_RC2_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 1101, IFC4X3_RC2_IfcStructuralReaction_type); - IFC4X3_RC2_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 1103, IFC4X3_RC2_IfcStructuralCurveAction_type); - IFC4X3_RC2_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 1107, IFC4X3_RC2_IfcGroup_type); - IFC4X3_RC2_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1119, IFC4X3_RC2_IfcStructuralAction_type); - IFC4X3_RC2_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1120, IFC4X3_RC2_IfcStructuralConnection_type); - IFC4X3_RC2_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1121, IFC4X3_RC2_IfcStructuralReaction_type); - IFC4X3_RC2_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1123, IFC4X3_RC2_IfcGroup_type); - IFC4X3_RC2_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1124, IFC4X3_RC2_IfcStructuralAction_type); - IFC4X3_RC2_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1126, IFC4X3_RC2_IfcStructuralConnection_type); - IFC4X3_RC2_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1135, IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1142, IFC4X3_RC2_IfcFeatureElement_type); - IFC4X3_RC2_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1162, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcSystem_type = new entity("IfcSystem", false, 1164, IFC4X3_RC2_IfcGroup_type); - IFC4X3_RC2_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1165, IFC4X3_RC2_IfcFurnishingElement_type); - IFC4X3_RC2_IfcTankType_type = new entity("IfcTankType", false, 1172, IFC4X3_RC2_IfcFlowStorageDeviceType_type); - IFC4X3_RC2_IfcTendon_type = new entity("IfcTendon", false, 1183, IFC4X3_RC2_IfcReinforcingElement_type); - IFC4X3_RC2_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1184, IFC4X3_RC2_IfcReinforcingElement_type); - IFC4X3_RC2_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1185, IFC4X3_RC2_IfcReinforcingElementType_type); - IFC4X3_RC2_IfcTendonConduit_type = new entity("IfcTendonConduit", false, 1187, IFC4X3_RC2_IfcReinforcingElement_type); - IFC4X3_RC2_IfcTendonConduitType_type = new entity("IfcTendonConduitType", false, 1188, IFC4X3_RC2_IfcReinforcingElementType_type); - IFC4X3_RC2_IfcTendonType_type = new entity("IfcTendonType", false, 1190, IFC4X3_RC2_IfcReinforcingElementType_type); - IFC4X3_RC2_IfcTrackElementType_type = new entity("IfcTrackElementType", false, 1231, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcTransformerType_type = new entity("IfcTransformerType", false, 1234, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcTransitionCurveSegment2D_type = new entity("IfcTransitionCurveSegment2D", false, 1237, IFC4X3_RC2_IfcCurveSegment2D_type); - IFC4X3_RC2_IfcTransportElement_type = new entity("IfcTransportElement", false, 1240, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1248, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1253, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1264, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcValveType_type = new entity("IfcValveType", false, 1272, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcVibrationDamper_type = new entity("IfcVibrationDamper", false, 1280, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcVibrationDamperType_type = new entity("IfcVibrationDamperType", false, 1281, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1283, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1284, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1286, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcVoidStratum_type = new entity("IfcVoidStratum", false, 1290, IFC4X3_RC2_IfcGeotechnicalStratum_type); - IFC4X3_RC2_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1288, IFC4X3_RC2_IfcFeatureElementSubtraction_type); - IFC4X3_RC2_IfcWallType_type = new entity("IfcWallType", false, 1296, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1302, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcWaterStratum_type = new entity("IfcWaterStratum", false, 1304, IFC4X3_RC2_IfcGeotechnicalStratum_type); - IFC4X3_RC2_IfcWindowType_type = new entity("IfcWindowType", false, 1314, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1317, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcWorkControl_type = new entity("IfcWorkControl", true, 1319, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1320, IFC4X3_RC2_IfcWorkControl_type); - IFC4X3_RC2_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1322, IFC4X3_RC2_IfcWorkControl_type); - IFC4X3_RC2_IfcZone_type = new entity("IfcZone", false, 1325, IFC4X3_RC2_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X3_RC2_IfcCurveStyleFontSelect_type); - IFC4X3_RC2_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 283, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC2_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X3_RC2_IfcPcurve_type); - items.push_back(IFC4X3_RC2_IfcSurfaceCurve_type); - IFC4X3_RC2_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 286, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcBoundedCurve_type); - items.push_back(IFC4X3_RC2_IfcEdgeCurve_type); - IFC4X3_RC2_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 287, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcElement_type); - items.push_back(IFC4X3_RC2_IfcSpatialElement_type); - IFC4X3_RC2_IfcInterferenceSelect_type = new select_type("IfcInterferenceSelect", 568, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcProduct_type); - items.push_back(IFC4X3_RC2_IfcSystem_type); - IFC4X3_RC2_IfcSpatialReferenceSelect_type = new select_type("IfcSpatialReferenceSelect", 1067, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcElement_type); - items.push_back(IFC4X3_RC2_IfcStructuralItem_type); - IFC4X3_RC2_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 1091, items); - } - IFC4X3_RC2_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X3_RC2_IfcControl_type); - IFC4X3_RC2_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcAlignmentCant_type = new entity("IfcAlignmentCant", false, 33, IFC4X3_RC2_IfcLinearElement_type); - IFC4X3_RC2_IfcAlignmentCurve_type = new entity("IfcAlignmentCurve", false, 36, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcAlignmentHorizontal_type = new entity("IfcAlignmentHorizontal", false, 37, IFC4X3_RC2_IfcLinearElement_type); - IFC4X3_RC2_IfcAlignmentSegment_type = new entity("IfcAlignmentSegment", false, 41, IFC4X3_RC2_IfcLinearElement_type); - IFC4X3_RC2_IfcAlignmentVertical_type = new entity("IfcAlignmentVertical", false, 43, IFC4X3_RC2_IfcLinearElement_type); - IFC4X3_RC2_IfcAsset_type = new entity("IfcAsset", false, 66, IFC4X3_RC2_IfcGroup_type); - IFC4X3_RC2_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 69, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 115, IFC4X3_RC2_IfcBoundedCurve_type); - IFC4X3_RC2_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 117, IFC4X3_RC2_IfcBSplineCurve_type); - IFC4X3_RC2_IfcBeamType_type = new entity("IfcBeamType", false, 79, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcBearingType_type = new entity("IfcBearingType", false, 82, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcBoilerType_type = new entity("IfcBoilerType", false, 92, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 101, IFC4X3_RC2_IfcCompositeCurveOnSurface_type); - IFC4X3_RC2_IfcBridge_type = new entity("IfcBridge", false, 111, IFC4X3_RC2_IfcFacility_type); - IFC4X3_RC2_IfcBridgePart_type = new entity("IfcBridgePart", false, 112, IFC4X3_RC2_IfcFacilityPart_type); - IFC4X3_RC2_IfcBuilding_type = new entity("IfcBuilding", false, 121, IFC4X3_RC2_IfcFacility_type); - IFC4X3_RC2_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 122, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 123, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 126, IFC4X3_RC2_IfcBuiltElementType_type); - IFC4X3_RC2_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 129, IFC4X3_RC2_IfcSystem_type); - IFC4X3_RC2_IfcBuiltElement_type = new entity("IfcBuiltElement", false, 131, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcBuiltSystem_type = new entity("IfcBuiltSystem", false, 133, IFC4X3_RC2_IfcSystem_type); - IFC4X3_RC2_IfcBurnerType_type = new entity("IfcBurnerType", false, 136, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 139, IFC4X3_RC2_IfcFlowFittingType_type); - IFC4X3_RC2_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 142, IFC4X3_RC2_IfcFlowSegmentType_type); - IFC4X3_RC2_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 145, IFC4X3_RC2_IfcFlowFittingType_type); - IFC4X3_RC2_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 148, IFC4X3_RC2_IfcFlowSegmentType_type); - IFC4X3_RC2_IfcCaissonFoundationType_type = new entity("IfcCaissonFoundationType", false, 151, IFC4X3_RC2_IfcDeepFoundationType_type); - IFC4X3_RC2_IfcChillerType_type = new entity("IfcChillerType", false, 166, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcChimney_type = new entity("IfcChimney", false, 168, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcCircle_type = new entity("IfcCircle", false, 171, IFC4X3_RC2_IfcConic_type); - IFC4X3_RC2_IfcCircularArcSegment2D_type = new entity("IfcCircularArcSegment2D", false, 174, IFC4X3_RC2_IfcCurveSegment2D_type); - IFC4X3_RC2_IfcCivilElement_type = new entity("IfcCivilElement", false, 175, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcCoilType_type = new entity("IfcCoilType", false, 184, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcColumn_type = new entity("IfcColumn", false, 191, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 192, IFC4X3_RC2_IfcColumn_type); - IFC4X3_RC2_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 196, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcCompressorType_type = new entity("IfcCompressorType", false, 208, IFC4X3_RC2_IfcFlowMovingDeviceType_type); - IFC4X3_RC2_IfcCondenserType_type = new entity("IfcCondenserType", false, 211, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 224, IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 227, IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 230, IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcConveyorSegmentType_type = new entity("IfcConveyorSegmentType", false, 245, IFC4X3_RC2_IfcFlowSegmentType_type); - IFC4X3_RC2_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 248, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 251, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcCourse_type = new entity("IfcCourse", false, 262, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcCovering_type = new entity("IfcCovering", false, 265, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 276, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcDamperType_type = new entity("IfcDamperType", false, 297, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcDeepFoundation_type = new entity("IfcDeepFoundation", false, 304, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 319, IFC4X3_RC2_IfcElementComponent_type); - IFC4X3_RC2_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 320, IFC4X3_RC2_IfcElementComponentType_type); - IFC4X3_RC2_IfcDistributionBoardType_type = new entity("IfcDistributionBoardType", false, 323, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 326, IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 330, IFC4X3_RC2_IfcDistributionElementType_type); - IFC4X3_RC2_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 331, IFC4X3_RC2_IfcElement_type); - IFC4X3_RC2_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 333, IFC4X3_RC2_IfcDistributionElement_type); - IFC4X3_RC2_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 335, IFC4X3_RC2_IfcPort_type); - IFC4X3_RC2_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 337, IFC4X3_RC2_IfcSystem_type); - IFC4X3_RC2_IfcDoor_type = new entity("IfcDoor", false, 345, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 350, IFC4X3_RC2_IfcDoor_type); - IFC4X3_RC2_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 361, IFC4X3_RC2_IfcFlowFittingType_type); - IFC4X3_RC2_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 364, IFC4X3_RC2_IfcFlowSegmentType_type); - IFC4X3_RC2_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 367, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC2_IfcEarthworksCut_type = new entity("IfcEarthworksCut", false, 371, IFC4X3_RC2_IfcFeatureElementSubtraction_type); - IFC4X3_RC2_IfcEarthworksElement_type = new entity("IfcEarthworksElement", false, 373, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcEarthworksFill_type = new entity("IfcEarthworksFill", false, 374, IFC4X3_RC2_IfcEarthworksElement_type); - IFC4X3_RC2_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 380, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 387, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 390, IFC4X3_RC2_IfcFlowStorageDeviceType_type); - IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type = new entity("IfcElectricFlowTreatmentDeviceType", false, 393, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC2_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 396, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 399, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - IFC4X3_RC2_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 403, IFC4X3_RC2_IfcFlowControllerType_type); - IFC4X3_RC2_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 418, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcEngine_type = new entity("IfcEngine", false, 421, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 424, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcEvaporator_type = new entity("IfcEvaporator", false, 427, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 442, IFC4X3_RC2_IfcExternalSpatialStructureElement_type); - IFC4X3_RC2_IfcFanType_type = new entity("IfcFanType", false, 461, IFC4X3_RC2_IfcFlowMovingDeviceType_type); - IFC4X3_RC2_IfcFilterType_type = new entity("IfcFilterType", false, 474, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC2_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 477, IFC4X3_RC2_IfcFlowTerminalType_type); - IFC4X3_RC2_IfcFlowController_type = new entity("IfcFlowController", false, 480, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 483, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 486, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 488, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 491, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 493, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 495, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 497, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 499, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcFooting_type = new entity("IfcFooting", false, 504, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcGeotechnicalAssembly_type = new entity("IfcGeotechnicalAssembly", true, 526, IFC4X3_RC2_IfcGeotechnicalElement_type); - IFC4X3_RC2_IfcGrid_type = new entity("IfcGrid", false, 532, IFC4X3_RC2_IfcPositioningElement_type); - IFC4X3_RC2_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 540, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcHumidifier_type = new entity("IfcHumidifier", false, 545, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcInterceptor_type = new entity("IfcInterceptor", false, 565, IFC4X3_RC2_IfcFlowTreatmentDevice_type); - IFC4X3_RC2_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 578, IFC4X3_RC2_IfcFlowFitting_type); - IFC4X3_RC2_IfcKerb_type = new entity("IfcKerb", false, 581, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcLamp_type = new entity("IfcLamp", false, 590, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcLightFixture_type = new entity("IfcLightFixture", false, 604, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", false, 622, IFC4X3_RC2_IfcPositioningElement_type); - IFC4X3_RC2_IfcLiquidTerminal_type = new entity("IfcLiquidTerminal", false, 628, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 677, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcMember_type = new entity("IfcMember", false, 680, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 681, IFC4X3_RC2_IfcMember_type); - IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type = new entity("IfcMobileTelecommunicationsAppliance", false, 687, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcMooringDevice_type = new entity("IfcMooringDevice", false, 703, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 706, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcNavigationElement_type = new entity("IfcNavigationElement", false, 710, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 738, IFC4X3_RC2_IfcBoundaryCurve_type); - IFC4X3_RC2_IfcOutlet_type = new entity("IfcOutlet", false, 739, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcPavement_type = new entity("IfcPavement", false, 746, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcPile_type = new entity("IfcPile", false, 762, IFC4X3_RC2_IfcDeepFoundation_type); - IFC4X3_RC2_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 766, IFC4X3_RC2_IfcFlowFitting_type); - IFC4X3_RC2_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 769, IFC4X3_RC2_IfcFlowSegment_type); - IFC4X3_RC2_IfcPlate_type = new entity("IfcPlate", false, 780, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 781, IFC4X3_RC2_IfcPlate_type); - IFC4X3_RC2_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 856, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 858, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcPump_type = new entity("IfcPump", false, 863, IFC4X3_RC2_IfcFlowMovingDevice_type); - IFC4X3_RC2_IfcRail_type = new entity("IfcRail", false, 874, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcRailing_type = new entity("IfcRailing", false, 875, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcRamp_type = new entity("IfcRamp", false, 882, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcRampFlight_type = new entity("IfcRampFlight", false, 883, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 889, IFC4X3_RC2_IfcBSplineCurveWithKnots_type); - IFC4X3_RC2_IfcReinforcedSoil_type = new entity("IfcReinforcedSoil", false, 903, IFC4X3_RC2_IfcEarthworksElement_type); - IFC4X3_RC2_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 907, IFC4X3_RC2_IfcReinforcingElement_type); - IFC4X3_RC2_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 910, IFC4X3_RC2_IfcReinforcingElementType_type); - IFC4X3_RC2_IfcRoof_type = new entity("IfcRoof", false, 986, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 995, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcSensorType_type = new entity("IfcSensorType", false, 1013, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 1017, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcSignal_type = new entity("IfcSignal", false, 1027, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcSlab_type = new entity("IfcSlab", false, 1041, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 1042, IFC4X3_RC2_IfcSlab_type); - IFC4X3_RC2_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 1043, IFC4X3_RC2_IfcSlab_type); - IFC4X3_RC2_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 1047, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 1060, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 1079, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcStair_type = new entity("IfcStair", false, 1082, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcStairFlight_type = new entity("IfcStairFlight", false, 1083, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 1092, IFC4X3_RC2_IfcSystem_type); - IFC4X3_RC2_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 1105, IFC4X3_RC2_IfcStructuralLoadGroup_type); - IFC4X3_RC2_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1118, IFC4X3_RC2_IfcStructuralSurfaceAction_type); - IFC4X3_RC2_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1161, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcTank_type = new entity("IfcTank", false, 1171, IFC4X3_RC2_IfcFlowStorageDevice_type); - IFC4X3_RC2_IfcTrackElement_type = new entity("IfcTrackElement", false, 1230, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcTransformer_type = new entity("IfcTransformer", false, 1233, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1252, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1261, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1263, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcValve_type = new entity("IfcValve", false, 1271, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcWall_type = new entity("IfcWall", false, 1293, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1294, IFC4X3_RC2_IfcWall_type); - IFC4X3_RC2_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1295, IFC4X3_RC2_IfcWall_type); - IFC4X3_RC2_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1301, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcWindow_type = new entity("IfcWindow", false, 1305, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1310, IFC4X3_RC2_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC2_IfcExternalSpatialElement_type); - items.push_back(IFC4X3_RC2_IfcSpace_type); - IFC4X3_RC2_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 1059, items); - } - IFC4X3_RC2_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X3_RC2_IfcLinearPositioningElement_type); - IFC4X3_RC2_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 68, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcBeam_type = new entity("IfcBeam", false, 77, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 78, IFC4X3_RC2_IfcBeam_type); - IFC4X3_RC2_IfcBearing_type = new entity("IfcBearing", false, 81, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcBoiler_type = new entity("IfcBoiler", false, 91, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcBorehole_type = new entity("IfcBorehole", false, 99, IFC4X3_RC2_IfcGeotechnicalAssembly_type); - IFC4X3_RC2_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 125, IFC4X3_RC2_IfcBuiltElement_type); - IFC4X3_RC2_IfcBurner_type = new entity("IfcBurner", false, 135, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 138, IFC4X3_RC2_IfcFlowFitting_type); - IFC4X3_RC2_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 141, IFC4X3_RC2_IfcFlowSegment_type); - IFC4X3_RC2_IfcCableFitting_type = new entity("IfcCableFitting", false, 144, IFC4X3_RC2_IfcFlowFitting_type); - IFC4X3_RC2_IfcCableSegment_type = new entity("IfcCableSegment", false, 147, IFC4X3_RC2_IfcFlowSegment_type); - IFC4X3_RC2_IfcCaissonFoundation_type = new entity("IfcCaissonFoundation", false, 150, IFC4X3_RC2_IfcDeepFoundation_type); - IFC4X3_RC2_IfcChiller_type = new entity("IfcChiller", false, 165, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcCoil_type = new entity("IfcCoil", false, 183, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 195, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcCompressor_type = new entity("IfcCompressor", false, 207, IFC4X3_RC2_IfcFlowMovingDevice_type); - IFC4X3_RC2_IfcCondenser_type = new entity("IfcCondenser", false, 210, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcControllerType_type = new entity("IfcControllerType", false, 240, IFC4X3_RC2_IfcDistributionControlElementType_type); - IFC4X3_RC2_IfcConveyorSegment_type = new entity("IfcConveyorSegment", false, 244, IFC4X3_RC2_IfcFlowSegment_type); - IFC4X3_RC2_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 247, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 250, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcDamper_type = new entity("IfcDamper", false, 296, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcDistributionBoard_type = new entity("IfcDistributionBoard", false, 322, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 325, IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 328, IFC4X3_RC2_IfcDistributionSystem_type); - IFC4X3_RC2_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 329, IFC4X3_RC2_IfcDistributionElement_type); - IFC4X3_RC2_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 360, IFC4X3_RC2_IfcFlowFitting_type); - IFC4X3_RC2_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 363, IFC4X3_RC2_IfcFlowSegment_type); - IFC4X3_RC2_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 366, IFC4X3_RC2_IfcFlowTreatmentDevice_type); - IFC4X3_RC2_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 379, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 386, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 389, IFC4X3_RC2_IfcFlowStorageDevice_type); - IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type = new entity("IfcElectricFlowTreatmentDevice", false, 392, IFC4X3_RC2_IfcFlowTreatmentDevice_type); - IFC4X3_RC2_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 395, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 398, IFC4X3_RC2_IfcEnergyConversionDevice_type); - IFC4X3_RC2_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 402, IFC4X3_RC2_IfcFlowController_type); - IFC4X3_RC2_IfcFan_type = new entity("IfcFan", false, 460, IFC4X3_RC2_IfcFlowMovingDevice_type); - IFC4X3_RC2_IfcFilter_type = new entity("IfcFilter", false, 473, IFC4X3_RC2_IfcFlowTreatmentDevice_type); - IFC4X3_RC2_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 476, IFC4X3_RC2_IfcFlowTerminal_type); - IFC4X3_RC2_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 485, IFC4X3_RC2_IfcDistributionControlElement_type); - IFC4X3_RC2_IfcGeomodel_type = new entity("IfcGeomodel", false, 524, IFC4X3_RC2_IfcGeotechnicalAssembly_type); - IFC4X3_RC2_IfcGeoslice_type = new entity("IfcGeoslice", false, 525, IFC4X3_RC2_IfcGeotechnicalAssembly_type); - IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 857, IFC4X3_RC2_IfcDistributionControlElement_type); - IFC4X3_RC2_IfcSensor_type = new entity("IfcSensor", false, 1012, IFC4X3_RC2_IfcDistributionControlElement_type); - IFC4X3_RC2_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1260, IFC4X3_RC2_IfcDistributionControlElement_type); - IFC4X3_RC2_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X3_RC2_IfcDistributionControlElement_type); - IFC4X3_RC2_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X3_RC2_IfcDistributionControlElement_type); - IFC4X3_RC2_IfcController_type = new entity("IfcController", false, 239, IFC4X3_RC2_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X3_RC2_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X3_RC2_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC2_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignment2DVerSegLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ParabolaConstant", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsConvex", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RailHeadDistance", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAlignmentCantSegment_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentCant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartCantLeft", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantLeft", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("StartCantRight", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantRight", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SmoothingLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentCantSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Horizontal", new named_type(IFC4X3_RC2_IfcAlignmentHorizontal_type), false)); - attributes.push_back(new attribute("Vertical", new named_type(IFC4X3_RC2_IfcAlignmentVertical_type), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAlignmentHorizontalSegment_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("StartRadiusOfCurvature", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndRadiusOfCurvature", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("GravityCenterLineHeight", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentParameterSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("GeometricParameters", new named_type(IFC4X3_RC2_IfcAlignmentParameterSegment_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAlignmentVerticalSegment_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndGradient", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("RadiusOfCurvature", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAlignmentVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAnnotationTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X3_RC2_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X3_RC2_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X3_RC2_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X3_RC2_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X3_RC2_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC2_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC2_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC2_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X3_RC2_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X3_RC2_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X3_RC2_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcAxis2PlacementLinear_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcAxisLateralInclination_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X3_RC2_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X3_RC2_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC2_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X3_RC2_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X3_RC2_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X3_RC2_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC2_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBearingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBearing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBearingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBearingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X3_RC2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X3_RC2_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("CurveLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBlossCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC2_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X3_RC2_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X3_RC2_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBorehole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X3_RC2_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X3_RC2_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X3_RC2_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X3_RC2_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X3_RC2_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBridgeTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBridge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBridgePart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X3_RC2_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuiltElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuiltElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBuiltSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBuiltSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCaissonFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCaissonFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC2_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC2_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC2_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X3_RC2_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("IsCCW", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCircularArcSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC2_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X3_RC2_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("ClothoidConstant", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcClothoid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X3_RC2_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X3_RC2_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X3_RC2_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X3_RC2_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X3_RC2_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X3_RC2_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X3_RC2_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X3_RC2_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X3_RC2_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC2_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X3_RC2_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X3_RC2_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X3_RC2_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConveyorSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcConveyorSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X3_RC2_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X3_RC2_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCourseTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCourse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCourseTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCourseType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X3_RC2_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X3_RC2_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X3_RC2_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X3_RC2_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC2_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC2_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("StartPlacement", new named_type(IFC4X3_RC2_IfcPlacement_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC2_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X3_RC2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X3_RC2_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC2_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDeepFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDeepFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC2_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC2_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("StartDistance", new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type), true)); - attributes.push_back(new attribute("EndDistance", new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X3_RC2_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X3_RC2_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC2_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X3_RC2_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC2_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X3_RC2_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC2_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC2_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X3_RC2_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC2_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC2_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC2_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC2_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC2_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEarthworksCutTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEarthworksCut_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEarthworksElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEarthworksFillTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEarthworksFill_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X3_RC2_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X3_RC2_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC2_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC2_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X3_RC2_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC2_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC2_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X3_RC2_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X3_RC2_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFacilityPartTypeSelect_type), false)); - attributes.push_back(new attribute("UsageType", new named_type(IFC4X3_RC2_IfcFacilityUsageEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFacilityPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X3_RC2_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X3_RC2_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC2_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X3_RC2_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X3_RC2_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X3_RC2_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X3_RC2_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X3_RC2_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeomodel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeoslice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeotechnicalAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeotechnicalElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGeotechnicalStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurveSegment_type)), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGradientCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X3_RC2_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X3_RC2_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X3_RC2_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcImpactProtectionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcImpactProtectionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("Inclinating", new named_type(IFC4X3_RC2_IfcAxisLateralInclination_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC2_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X3_RC2_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X3_RC2_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC2_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X3_RC2_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC2_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC2_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X3_RC2_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcKerb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcKerbType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X3_RC2_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC2_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X3_RC2_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC2_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X3_RC2_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X3_RC2_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X3_RC2_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X3_RC2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X3_RC2_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X3_RC2_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X3_RC2_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X3_RC2_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X3_RC2_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X3_RC2_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X3_RC2_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X3_RC2_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X3_RC2_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLineSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("Inclinating", new named_type(IFC4X3_RC2_IfcAxisLateralInclination_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLinearAxisWithInclination_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLinearElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PlacementMeasuredAlong", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type), false)); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC2_IfcAxis2PlacementLinear_type), false)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Inclinating", new named_type(IFC4X3_RC2_IfcAxisLateralInclination_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLinearPlacementWithInclination_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Span", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLinearSpanPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLiquidTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLiquidTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X3_RC2_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X3_RC2_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X3_RC2_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC2_IfcReal_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X3_RC2_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X3_RC2_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMarineFacilityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMarineFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X3_RC2_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC2_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X3_RC2_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC2_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X3_RC2_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X3_RC2_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X3_RC2_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X3_RC2_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X3_RC2_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC2_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X3_RC2_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X3_RC2_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X3_RC2_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X3_RC2_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X3_RC2_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC2_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC2_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X3_RC2_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X3_RC2_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X3_RC2_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X3_RC2_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC2_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X3_RC2_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMooringDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMooringDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMooringDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMooringDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X3_RC2_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC2_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcNavigationElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcNavigationElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcNavigationElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcNavigationElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X3_RC2_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X3_RC2_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X3_RC2_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HorizontalWidths", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Widths", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type)), false)); - attributes.push_back(new attribute("Slopes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("Tags", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOpenCrossProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X3_RC2_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X3_RC2_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X3_RC2_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X3_RC2_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X3_RC2_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X3_RC2_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X3_RC2_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X3_RC2_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X3_RC2_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC2_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flexible", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPavement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flexible", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPavementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC2_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC2_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X3_RC2_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X3_RC2_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC2_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC2_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC2_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X3_RC2_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC2_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPlant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPointByDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC2_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPresentationStyleSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcPresentationStyleAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X3_RC2_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X3_RC2_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X3_RC2_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X3_RC2_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X3_RC2_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X3_RC2_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X3_RC2_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X3_RC2_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X3_RC2_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X3_RC2_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X3_RC2_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X3_RC2_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X3_RC2_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4X3_RC2_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X3_RC2_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X3_RC2_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X3_RC2_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X3_RC2_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRailTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRail_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRailTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRailType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRailway_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X3_RC2_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X3_RC2_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcReferentTypeEnum_type), true)); - attributes.push_back(new attribute("RestartDistance", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X3_RC2_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcedSoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X3_RC2_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC2_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X3_RC2_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X3_RC2_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X3_RC2_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X3_RC2_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X3_RC2_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X3_RC2_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC2_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X3_RC2_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X3_RC2_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X3_RC2_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC2_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X3_RC2_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC2_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC2_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X3_RC2_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC2_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProfileDef", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelAssociatesProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X3_RC2_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X3_RC2_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC2_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC2_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC2_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X3_RC2_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X3_RC2_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC2_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X3_RC2_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X3_RC2_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X3_RC2_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC2_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X3_RC2_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC2_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC2_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X3_RC2_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC2_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X3_RC2_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X3_RC2_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X3_RC2_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X3_RC2_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X3_RC2_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC2_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC2_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC2_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPositioningElement", new named_type(IFC4X3_RC2_IfcPositioningElement_type), false)); - attributes.push_back(new attribute("RelatedProducts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProduct_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelPositions_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X3_RC2_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcSpatialReferenceSelect_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC2_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC2_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X3_RC2_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X3_RC2_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X3_RC2_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X3_RC2_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC2_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X3_RC2_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC2_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X3_RC2_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X3_RC2_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X3_RC2_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X3_RC2_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC2_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC2_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X3_RC2_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X3_RC2_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X3_RC2_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC2_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X3_RC2_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X3_RC2_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X3_RC2_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X3_RC2_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X3_RC2_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSectionedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Transition", new named_type(IFC4X3_RC2_IfcTransitionCode_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurveSegment_type)), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_RC2_IfcPlacement_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSegmentedReferenceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcPlacement_type), false)); - attributes.push_back(new attribute("CoefficientsX", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type)), false)); - attributes.push_back(new attribute("CoefficientsY", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSeriesParameterCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X3_RC2_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X3_RC2_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSignTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSign_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSignTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSignType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSignalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSignal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSignalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSignalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X3_RC2_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X3_RC2_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X3_RC2_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSolidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X3_RC2_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X3_RC2_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X3_RC2_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X3_RC2_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC2_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X3_RC2_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X3_RC2_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X3_RC2_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X3_RC2_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X3_RC2_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X3_RC2_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X3_RC2_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X3_RC2_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X3_RC2_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X3_RC2_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X3_RC2_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X3_RC2_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X3_RC2_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X3_RC2_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X3_RC2_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X3_RC2_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X3_RC2_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X3_RC2_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X3_RC2_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStyleAssignmentSelect_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X3_RC2_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC2_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X3_RC2_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X3_RC2_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X3_RC2_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X3_RC2_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC2_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X3_RC2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X3_RC2_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X3_RC2_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X3_RC2_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X3_RC2_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X3_RC2_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X3_RC2_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X3_RC2_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC2_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC2_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X3_RC2_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC2_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC2_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X3_RC2_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC2_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X3_RC2_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X3_RC2_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X3_RC2_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X3_RC2_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTendonConduit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTendonConduitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X3_RC2_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X3_RC2_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X3_RC2_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X3_RC2_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X3_RC2_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X3_RC2_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X3_RC2_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X3_RC2_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X3_RC2_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X3_RC2_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X3_RC2_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X3_RC2_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X3_RC2_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X3_RC2_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X3_RC2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X3_RC2_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X3_RC2_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X3_RC2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X3_RC2_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X3_RC2_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X3_RC2_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC2_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC2_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC2_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC2_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC2_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC2_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC2_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC2_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTrackElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTrackElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTrackElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTrackElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("StartRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("EndRadius", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("IsStartRadiusCCW", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("IsEndRadiusCCW", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("TransitionCurveType", new named_type(IFC4X3_RC2_IfcTransitionCurveType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTransitionCurveSegment2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTransportElementTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTransportElementTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC2_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC2_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC2_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC2_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC2_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC2_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC2_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC2_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X3_RC2_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X3_RC2_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC2_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVibrationDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVibrationDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVoidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWaterStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC2_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC2_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC2_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC2_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC2_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC2_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC2_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC2_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC2_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC2_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC2_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC2_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC2_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X3_RC2_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC2_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X3_RC2_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4X3_RC2_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4X3_RC2_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC2_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC2_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToActor_type, IFC4X3_RC2_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X3_RC2_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPerson_type, IFC4X3_RC2_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcOrganization_type, IFC4X3_RC2_IfcOrganization_type->attributes()[4])); - IFC4X3_RC2_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC2_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesApproval_type, IFC4X3_RC2_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceApprovalRelationship_type, IFC4X3_RC2_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcApprovalRelationship_type, IFC4X3_RC2_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcApprovalRelationship_type, IFC4X3_RC2_IfcApprovalRelationship_type->attributes()[0])); - IFC4X3_RC2_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToLinearAxis", inverse_attribute::set_type, 1, 1, IFC4X3_RC2_IfcLinearAxisWithInclination_type, IFC4X3_RC2_IfcLinearAxisWithInclination_type->attributes()[1])); - IFC4X3_RC2_IfcAxisLateralInclination_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PositioningElement", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcLinearPositioningElement_type, IFC4X3_RC2_IfcLinearPositioningElement_type->attributes()[0])); - IFC4X3_RC2_IfcBoundedCurve_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesClassification_type, IFC4X3_RC2_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcClassificationReference_type, IFC4X3_RC2_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC2_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesClassification_type, IFC4X3_RC2_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcClassificationReference_type, IFC4X3_RC2_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC2_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcCompositeCurve_type, IFC4X3_RC2_IfcCompositeCurve_type->attributes()[0])); - IFC4X3_RC2_IfcCompositeCurveSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceConstraintRelationship_type, IFC4X3_RC2_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X3_RC2_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByProperties_type, IFC4X3_RC2_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDeclares_type, IFC4X3_RC2_IfcRelDeclares_type->attributes()[0])); - IFC4X3_RC2_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToControl_type, IFC4X3_RC2_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X3_RC2_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcCoordinateOperation_type, IFC4X3_RC2_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC2_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelCoversSpaces_type, IFC4X3_RC2_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelCoversBldgElements_type, IFC4X3_RC2_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X3_RC2_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelFlowControlElements_type, IFC4X3_RC2_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X3_RC2_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsPortToElement_type, IFC4X3_RC2_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X3_RC2_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelFlowControlElements_type, IFC4X3_RC2_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X3_RC2_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesDocument_type, IFC4X3_RC2_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcDocumentReference_type, IFC4X3_RC2_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcDocumentInformationRelationship_type, IFC4X3_RC2_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcDocumentInformationRelationship_type, IFC4X3_RC2_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X3_RC2_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesDocument_type, IFC4X3_RC2_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X3_RC2_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelFillsElement_type, IFC4X3_RC2_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsElements_type, IFC4X3_RC2_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelInterferesElements_type, IFC4X3_RC2_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelInterferesElements_type, IFC4X3_RC2_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelProjectsElement_type, IFC4X3_RC2_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelVoidsElement_type, IFC4X3_RC2_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary_type, IFC4X3_RC2_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsElements_type, IFC4X3_RC2_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelCoversBldgElements_type, IFC4X3_RC2_IfcRelCoversBldgElements_type->attributes()[0])); - IFC4X3_RC2_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X3_RC2_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary_type, IFC4X3_RC2_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC2_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcTextureMap_type, IFC4X3_RC2_IfcTextureMap_type->attributes()[1])); - IFC4X3_RC2_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcRelProjectsElement_type, IFC4X3_RC2_IfcRelProjectsElement_type->attributes()[1])); - IFC4X3_RC2_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcRelVoidsElement_type, IFC4X3_RC2_IfcRelVoidsElement_type->attributes()[1])); - IFC4X3_RC2_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcGeometricRepresentationSubContext_type, IFC4X3_RC2_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcCoordinateOperation_type, IFC4X3_RC2_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC2_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcGrid_type, IFC4X3_RC2_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcGrid_type, IFC4X3_RC2_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcGrid_type, IFC4X3_RC2_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcVirtualGridIntersection_type, IFC4X3_RC2_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X3_RC2_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToGroup_type, IFC4X3_RC2_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4X3_RC2_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcPolygonalFaceSet_type, IFC4X3_RC2_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4X3_RC2_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesLibrary_type, IFC4X3_RC2_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcLibraryReference_type, IFC4X3_RC2_IfcLibraryReference_type->attributes()[2])); - IFC4X3_RC2_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesLibrary_type, IFC4X3_RC2_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X3_RC2_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcMaterialRelationship_type, IFC4X3_RC2_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcMaterialRelationship_type, IFC4X3_RC2_IfcMaterialRelationship_type->attributes()[0])); - IFC4X3_RC2_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcMaterialConstituentSet_type, IFC4X3_RC2_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X3_RC2_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesMaterial_type, IFC4X3_RC2_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcMaterialProperties_type, IFC4X3_RC2_IfcMaterialProperties_type->attributes()[0])); - IFC4X3_RC2_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcMaterialLayerSet_type, IFC4X3_RC2_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X3_RC2_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcMaterialProfileSet_type, IFC4X3_RC2_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X3_RC2_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcRelAssociatesMaterial_type, IFC4X3_RC2_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X3_RC2_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDefinesByObject_type, IFC4X3_RC2_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByObject_type, IFC4X3_RC2_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDefinesByType_type, IFC4X3_RC2_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByProperties_type, IFC4X3_RC2_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X3_RC2_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssigns_type, IFC4X3_RC2_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelNests_type, IFC4X3_RC2_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelNests_type, IFC4X3_RC2_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDeclares_type, IFC4X3_RC2_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAggregates_type, IFC4X3_RC2_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelAggregates_type, IFC4X3_RC2_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociates_type, IFC4X3_RC2_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC2_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcProduct_type, IFC4X3_RC2_IfcProduct_type->attributes()[0])); - IFC4X3_RC2_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelFillsElement_type, IFC4X3_RC2_IfcRelFillsElement_type->attributes()[0])); - IFC4X3_RC2_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcOrganizationRelationship_type, IFC4X3_RC2_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcOrganizationRelationship_type, IFC4X3_RC2_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPersonAndOrganization_type, IFC4X3_RC2_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X3_RC2_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPersonAndOrganization_type, IFC4X3_RC2_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X3_RC2_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcPhysicalComplexQuantity_type, IFC4X3_RC2_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X3_RC2_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsPortToElement_type, IFC4X3_RC2_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsPorts_type, IFC4X3_RC2_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsPorts_type, IFC4X3_RC2_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X3_RC2_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Positions", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelPositions_type, IFC4X3_RC2_IfcRelPositions_type->attributes()[0])); - IFC4X3_RC2_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSequence_type, IFC4X3_RC2_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSequence_type, IFC4X3_RC2_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProcess_type, IFC4X3_RC2_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC2_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProduct_type, IFC4X3_RC2_IfcRelAssignsToProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PositionedRelativeTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelPositions_type, IFC4X3_RC2_IfcRelPositions_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC2_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcProduct_type, IFC4X3_RC2_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcShapeAspect_type, IFC4X3_RC2_IfcShapeAspect_type->attributes()[4])); - IFC4X3_RC2_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcProfileProperties_type, IFC4X3_RC2_IfcProfileProperties_type->attributes()[0])); - IFC4X3_RC2_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertySet_type, IFC4X3_RC2_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertyDependencyRelationship_type, IFC4X3_RC2_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertyDependencyRelationship_type, IFC4X3_RC2_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcComplexProperty_type, IFC4X3_RC2_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceConstraintRelationship_type, IFC4X3_RC2_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceApprovalRelationship_type, IFC4X3_RC2_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X3_RC2_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDeclares_type, IFC4X3_RC2_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociates_type, IFC4X3_RC2_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC2_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcTypeObject_type, IFC4X3_RC2_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByTemplate_type, IFC4X3_RC2_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByProperties_type, IFC4X3_RC2_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X3_RC2_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByTemplate_type, IFC4X3_RC2_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X3_RC2_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcComplexPropertyTemplate_type, IFC4X3_RC2_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertySetTemplate_type, IFC4X3_RC2_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X3_RC2_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRepresentationMap_type, IFC4X3_RC2_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPresentationLayerAssignment_type, IFC4X3_RC2_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcProductRepresentation_type, IFC4X3_RC2_IfcProductRepresentation_type->attributes()[2])); - IFC4X3_RC2_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRepresentation_type, IFC4X3_RC2_IfcRepresentation_type->attributes()[0])); - IFC4X3_RC2_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcPresentationLayerAssignment_type, IFC4X3_RC2_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcStyledItem_type, IFC4X3_RC2_IfcStyledItem_type->attributes()[0])); - IFC4X3_RC2_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcShapeAspect_type, IFC4X3_RC2_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcMappedItem_type, IFC4X3_RC2_IfcMappedItem_type->attributes()[0])); - IFC4X3_RC2_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToResource_type, IFC4X3_RC2_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC2_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcShapeAspect_type, IFC4X3_RC2_IfcShapeAspect_type->attributes()[0])); - IFC4X3_RC2_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelCoversSpaces_type, IFC4X3_RC2_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary_type, IFC4X3_RC2_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC2_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelServicesBuildings_type, IFC4X3_RC2_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4X3_RC2_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X3_RC2_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcRelConnectsStructuralMember_type, IFC4X3_RC2_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X3_RC2_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X3_RC2_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcStructuralResultGroup_type, IFC4X3_RC2_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcStructuralAnalysisModel_type, IFC4X3_RC2_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X3_RC2_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsStructuralMember_type, IFC4X3_RC2_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X3_RC2_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcStructuralAnalysisModel_type, IFC4X3_RC2_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X3_RC2_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcTextureCoordinate_type, IFC4X3_RC2_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcSurfaceStyleWithTextures_type, IFC4X3_RC2_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X3_RC2_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelServicesBuildings_type, IFC4X3_RC2_IfcRelServicesBuildings_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ServicesFacilities", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC2_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcIndexedColourMap_type, IFC4X3_RC2_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcIndexedTextureMap_type, IFC4X3_RC2_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X3_RC2_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC2_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDefinesByType_type, IFC4X3_RC2_IfcRelDefinesByType_type->attributes()[1])); - IFC4X3_RC2_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProcess_type, IFC4X3_RC2_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC2_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProduct_type, IFC4X3_RC2_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X3_RC2_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToResource_type, IFC4X3_RC2_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC2_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC2_IfcActionRequest_type);defs.push_back(IFC4X3_RC2_IfcCostItem_type);defs.push_back(IFC4X3_RC2_IfcCostSchedule_type);defs.push_back(IFC4X3_RC2_IfcPerformanceHistory_type);defs.push_back(IFC4X3_RC2_IfcPermit_type);defs.push_back(IFC4X3_RC2_IfcProjectOrder_type);defs.push_back(IFC4X3_RC2_IfcWorkCalendar_type);defs.push_back(IFC4X3_RC2_IfcWorkControl_type); - IFC4X3_RC2_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcActor_type);defs.push_back(IFC4X3_RC2_IfcControl_type);defs.push_back(IFC4X3_RC2_IfcGroup_type);defs.push_back(IFC4X3_RC2_IfcProcess_type);defs.push_back(IFC4X3_RC2_IfcProduct_type);defs.push_back(IFC4X3_RC2_IfcResource_type); - IFC4X3_RC2_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC2_IfcActuator_type);defs.push_back(IFC4X3_RC2_IfcAlarm_type);defs.push_back(IFC4X3_RC2_IfcController_type);defs.push_back(IFC4X3_RC2_IfcFlowInstrument_type);defs.push_back(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X3_RC2_IfcSensor_type);defs.push_back(IFC4X3_RC2_IfcUnitaryControlElement_type); - IFC4X3_RC2_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC2_IfcActuatorType_type);defs.push_back(IFC4X3_RC2_IfcAlarmType_type);defs.push_back(IFC4X3_RC2_IfcControllerType_type);defs.push_back(IFC4X3_RC2_IfcFlowInstrumentType_type);defs.push_back(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X3_RC2_IfcSensorType_type);defs.push_back(IFC4X3_RC2_IfcUnitaryControlElementType_type); - IFC4X3_RC2_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcAdvancedBrep_type);defs.push_back(IFC4X3_RC2_IfcFacetedBrep_type); - IFC4X3_RC2_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcAdvancedBrepWithVoids_type); - IFC4X3_RC2_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcAdvancedFace_type); - IFC4X3_RC2_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC2_IfcAirTerminal_type);defs.push_back(IFC4X3_RC2_IfcAudioVisualAppliance_type);defs.push_back(IFC4X3_RC2_IfcCommunicationsAppliance_type);defs.push_back(IFC4X3_RC2_IfcElectricAppliance_type);defs.push_back(IFC4X3_RC2_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X3_RC2_IfcLamp_type);defs.push_back(IFC4X3_RC2_IfcLightFixture_type);defs.push_back(IFC4X3_RC2_IfcLiquidTerminal_type);defs.push_back(IFC4X3_RC2_IfcMedicalDevice_type);defs.push_back(IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type);defs.push_back(IFC4X3_RC2_IfcOutlet_type);defs.push_back(IFC4X3_RC2_IfcSanitaryTerminal_type);defs.push_back(IFC4X3_RC2_IfcSignal_type);defs.push_back(IFC4X3_RC2_IfcSpaceHeater_type);defs.push_back(IFC4X3_RC2_IfcStackTerminal_type);defs.push_back(IFC4X3_RC2_IfcWasteTerminal_type); - IFC4X3_RC2_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcAirTerminalBox_type);defs.push_back(IFC4X3_RC2_IfcDamper_type);defs.push_back(IFC4X3_RC2_IfcDistributionBoard_type);defs.push_back(IFC4X3_RC2_IfcElectricDistributionBoard_type);defs.push_back(IFC4X3_RC2_IfcElectricTimeControl_type);defs.push_back(IFC4X3_RC2_IfcFlowMeter_type);defs.push_back(IFC4X3_RC2_IfcProtectiveDevice_type);defs.push_back(IFC4X3_RC2_IfcSwitchingDevice_type);defs.push_back(IFC4X3_RC2_IfcValve_type); - IFC4X3_RC2_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcAirTerminalBoxType_type);defs.push_back(IFC4X3_RC2_IfcDamperType_type);defs.push_back(IFC4X3_RC2_IfcDistributionBoardType_type);defs.push_back(IFC4X3_RC2_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X3_RC2_IfcElectricTimeControlType_type);defs.push_back(IFC4X3_RC2_IfcFlowMeterType_type);defs.push_back(IFC4X3_RC2_IfcProtectiveDeviceType_type);defs.push_back(IFC4X3_RC2_IfcSwitchingDeviceType_type);defs.push_back(IFC4X3_RC2_IfcValveType_type); - IFC4X3_RC2_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC2_IfcAirTerminalType_type);defs.push_back(IFC4X3_RC2_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X3_RC2_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X3_RC2_IfcElectricApplianceType_type);defs.push_back(IFC4X3_RC2_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X3_RC2_IfcLampType_type);defs.push_back(IFC4X3_RC2_IfcLightFixtureType_type);defs.push_back(IFC4X3_RC2_IfcLiquidTerminalType_type);defs.push_back(IFC4X3_RC2_IfcMedicalDeviceType_type);defs.push_back(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type);defs.push_back(IFC4X3_RC2_IfcOutletType_type);defs.push_back(IFC4X3_RC2_IfcSanitaryTerminalType_type);defs.push_back(IFC4X3_RC2_IfcSignalType_type);defs.push_back(IFC4X3_RC2_IfcSpaceHeaterType_type);defs.push_back(IFC4X3_RC2_IfcStackTerminalType_type);defs.push_back(IFC4X3_RC2_IfcWasteTerminalType_type); - IFC4X3_RC2_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC2_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X3_RC2_IfcBoiler_type);defs.push_back(IFC4X3_RC2_IfcBurner_type);defs.push_back(IFC4X3_RC2_IfcChiller_type);defs.push_back(IFC4X3_RC2_IfcCoil_type);defs.push_back(IFC4X3_RC2_IfcCondenser_type);defs.push_back(IFC4X3_RC2_IfcCooledBeam_type);defs.push_back(IFC4X3_RC2_IfcCoolingTower_type);defs.push_back(IFC4X3_RC2_IfcElectricGenerator_type);defs.push_back(IFC4X3_RC2_IfcElectricMotor_type);defs.push_back(IFC4X3_RC2_IfcEngine_type);defs.push_back(IFC4X3_RC2_IfcEvaporativeCooler_type);defs.push_back(IFC4X3_RC2_IfcEvaporator_type);defs.push_back(IFC4X3_RC2_IfcHeatExchanger_type);defs.push_back(IFC4X3_RC2_IfcHumidifier_type);defs.push_back(IFC4X3_RC2_IfcMotorConnection_type);defs.push_back(IFC4X3_RC2_IfcSolarDevice_type);defs.push_back(IFC4X3_RC2_IfcTransformer_type);defs.push_back(IFC4X3_RC2_IfcTubeBundle_type);defs.push_back(IFC4X3_RC2_IfcUnitaryEquipment_type); - IFC4X3_RC2_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X3_RC2_IfcBoilerType_type);defs.push_back(IFC4X3_RC2_IfcBurnerType_type);defs.push_back(IFC4X3_RC2_IfcChillerType_type);defs.push_back(IFC4X3_RC2_IfcCoilType_type);defs.push_back(IFC4X3_RC2_IfcCondenserType_type);defs.push_back(IFC4X3_RC2_IfcCooledBeamType_type);defs.push_back(IFC4X3_RC2_IfcCoolingTowerType_type);defs.push_back(IFC4X3_RC2_IfcElectricGeneratorType_type);defs.push_back(IFC4X3_RC2_IfcElectricMotorType_type);defs.push_back(IFC4X3_RC2_IfcEngineType_type);defs.push_back(IFC4X3_RC2_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X3_RC2_IfcEvaporatorType_type);defs.push_back(IFC4X3_RC2_IfcHeatExchangerType_type);defs.push_back(IFC4X3_RC2_IfcHumidifierType_type);defs.push_back(IFC4X3_RC2_IfcMotorConnectionType_type);defs.push_back(IFC4X3_RC2_IfcSolarDeviceType_type);defs.push_back(IFC4X3_RC2_IfcTransformerType_type);defs.push_back(IFC4X3_RC2_IfcTubeBundleType_type);defs.push_back(IFC4X3_RC2_IfcUnitaryEquipmentType_type); - IFC4X3_RC2_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcAlignment_type); - IFC4X3_RC2_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type);defs.push_back(IFC4X3_RC2_IfcAlignment2DVerSegLine_type);defs.push_back(IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type); - IFC4X3_RC2_IfcAlignmentVerticalSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcAlignmentCant_type);defs.push_back(IFC4X3_RC2_IfcAlignmentHorizontal_type);defs.push_back(IFC4X3_RC2_IfcAlignmentSegment_type);defs.push_back(IFC4X3_RC2_IfcAlignmentVertical_type); - IFC4X3_RC2_IfcLinearElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcAlignmentCantSegment_type);defs.push_back(IFC4X3_RC2_IfcAlignmentHorizontalSegment_type);defs.push_back(IFC4X3_RC2_IfcAlignmentVerticalSegment_type); - IFC4X3_RC2_IfcAlignmentParameterSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcAlignmentCurve_type);defs.push_back(IFC4X3_RC2_IfcBSplineCurve_type);defs.push_back(IFC4X3_RC2_IfcCompositeCurve_type);defs.push_back(IFC4X3_RC2_IfcCurveSegment2D_type);defs.push_back(IFC4X3_RC2_IfcGradientCurve_type);defs.push_back(IFC4X3_RC2_IfcIndexedPolyCurve_type);defs.push_back(IFC4X3_RC2_IfcPolyline_type);defs.push_back(IFC4X3_RC2_IfcSegmentedReferenceCurve_type);defs.push_back(IFC4X3_RC2_IfcTrimmedCurve_type); - IFC4X3_RC2_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcAnnotation_type);defs.push_back(IFC4X3_RC2_IfcElement_type);defs.push_back(IFC4X3_RC2_IfcLinearElement_type);defs.push_back(IFC4X3_RC2_IfcPort_type);defs.push_back(IFC4X3_RC2_IfcPositioningElement_type);defs.push_back(IFC4X3_RC2_IfcProxy_type);defs.push_back(IFC4X3_RC2_IfcSpatialElement_type);defs.push_back(IFC4X3_RC2_IfcStructuralActivity_type);defs.push_back(IFC4X3_RC2_IfcStructuralItem_type); - IFC4X3_RC2_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(27); - defs.push_back(IFC4X3_RC2_IfcAnnotationFillArea_type);defs.push_back(IFC4X3_RC2_IfcAxisLateralInclination_type);defs.push_back(IFC4X3_RC2_IfcBooleanResult_type);defs.push_back(IFC4X3_RC2_IfcBoundingBox_type);defs.push_back(IFC4X3_RC2_IfcCartesianPointList_type);defs.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X3_RC2_IfcCsgPrimitive3D_type);defs.push_back(IFC4X3_RC2_IfcCurve_type);defs.push_back(IFC4X3_RC2_IfcDirection_type);defs.push_back(IFC4X3_RC2_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X3_RC2_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X3_RC2_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X3_RC2_IfcGeometricSet_type);defs.push_back(IFC4X3_RC2_IfcHalfSpaceSolid_type);defs.push_back(IFC4X3_RC2_IfcLightSource_type);defs.push_back(IFC4X3_RC2_IfcLinearAxisWithInclination_type);defs.push_back(IFC4X3_RC2_IfcPlacement_type);defs.push_back(IFC4X3_RC2_IfcPlanarExtent_type);defs.push_back(IFC4X3_RC2_IfcPoint_type);defs.push_back(IFC4X3_RC2_IfcSectionedSpine_type);defs.push_back(IFC4X3_RC2_IfcSegment_type);defs.push_back(IFC4X3_RC2_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X3_RC2_IfcSolidModel_type);defs.push_back(IFC4X3_RC2_IfcSurface_type);defs.push_back(IFC4X3_RC2_IfcTessellatedItem_type);defs.push_back(IFC4X3_RC2_IfcTextLiteral_type);defs.push_back(IFC4X3_RC2_IfcVector_type); - IFC4X3_RC2_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcApprovalRelationship_type);defs.push_back(IFC4X3_RC2_IfcCurrencyRelationship_type);defs.push_back(IFC4X3_RC2_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X3_RC2_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X3_RC2_IfcMaterialRelationship_type);defs.push_back(IFC4X3_RC2_IfcOrganizationRelationship_type);defs.push_back(IFC4X3_RC2_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X3_RC2_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X3_RC2_IfcResourceConstraintRelationship_type); - IFC4X3_RC2_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X3_RC2_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X3_RC2_IfcCompositeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcDerivedProfileDef_type);defs.push_back(IFC4X3_RC2_IfcOpenCrossProfileDef_type);defs.push_back(IFC4X3_RC2_IfcParameterizedProfileDef_type); - IFC4X3_RC2_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type); - IFC4X3_RC2_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcAsset_type);defs.push_back(IFC4X3_RC2_IfcInventory_type);defs.push_back(IFC4X3_RC2_IfcStructuralLoadGroup_type);defs.push_back(IFC4X3_RC2_IfcStructuralResultGroup_type);defs.push_back(IFC4X3_RC2_IfcSystem_type); - IFC4X3_RC2_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcCShapeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcCircleProfileDef_type);defs.push_back(IFC4X3_RC2_IfcEllipseProfileDef_type);defs.push_back(IFC4X3_RC2_IfcIShapeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcLShapeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcRectangleProfileDef_type);defs.push_back(IFC4X3_RC2_IfcTShapeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X3_RC2_IfcUShapeProfileDef_type);defs.push_back(IFC4X3_RC2_IfcZShapeProfileDef_type); - IFC4X3_RC2_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcAxis1Placement_type);defs.push_back(IFC4X3_RC2_IfcAxis2Placement2D_type);defs.push_back(IFC4X3_RC2_IfcAxis2Placement3D_type);defs.push_back(IFC4X3_RC2_IfcAxis2PlacementLinear_type); - IFC4X3_RC2_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBSplineCurveWithKnots_type); - IFC4X3_RC2_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcBSplineSurface_type);defs.push_back(IFC4X3_RC2_IfcCurveBoundedPlane_type);defs.push_back(IFC4X3_RC2_IfcCurveBoundedSurface_type);defs.push_back(IFC4X3_RC2_IfcRectangularTrimmedSurface_type); - IFC4X3_RC2_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC2_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X3_RC2_IfcBeam_type);defs.push_back(IFC4X3_RC2_IfcBearing_type);defs.push_back(IFC4X3_RC2_IfcBuildingElementProxy_type);defs.push_back(IFC4X3_RC2_IfcChimney_type);defs.push_back(IFC4X3_RC2_IfcColumn_type);defs.push_back(IFC4X3_RC2_IfcCourse_type);defs.push_back(IFC4X3_RC2_IfcCovering_type);defs.push_back(IFC4X3_RC2_IfcCurtainWall_type);defs.push_back(IFC4X3_RC2_IfcDeepFoundation_type);defs.push_back(IFC4X3_RC2_IfcDoor_type);defs.push_back(IFC4X3_RC2_IfcEarthworksElement_type);defs.push_back(IFC4X3_RC2_IfcFooting_type);defs.push_back(IFC4X3_RC2_IfcKerb_type);defs.push_back(IFC4X3_RC2_IfcMember_type);defs.push_back(IFC4X3_RC2_IfcMooringDevice_type);defs.push_back(IFC4X3_RC2_IfcNavigationElement_type);defs.push_back(IFC4X3_RC2_IfcPavement_type);defs.push_back(IFC4X3_RC2_IfcPlate_type);defs.push_back(IFC4X3_RC2_IfcRail_type);defs.push_back(IFC4X3_RC2_IfcRailing_type);defs.push_back(IFC4X3_RC2_IfcRamp_type);defs.push_back(IFC4X3_RC2_IfcRampFlight_type);defs.push_back(IFC4X3_RC2_IfcRoof_type);defs.push_back(IFC4X3_RC2_IfcShadingDevice_type);defs.push_back(IFC4X3_RC2_IfcSlab_type);defs.push_back(IFC4X3_RC2_IfcStair_type);defs.push_back(IFC4X3_RC2_IfcStairFlight_type);defs.push_back(IFC4X3_RC2_IfcTrackElement_type);defs.push_back(IFC4X3_RC2_IfcWall_type);defs.push_back(IFC4X3_RC2_IfcWindow_type); - IFC4X3_RC2_IfcBuiltElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBeamStandardCase_type); - IFC4X3_RC2_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(29); - defs.push_back(IFC4X3_RC2_IfcBeamType_type);defs.push_back(IFC4X3_RC2_IfcBearingType_type);defs.push_back(IFC4X3_RC2_IfcBuildingElementProxyType_type);defs.push_back(IFC4X3_RC2_IfcChimneyType_type);defs.push_back(IFC4X3_RC2_IfcColumnType_type);defs.push_back(IFC4X3_RC2_IfcCourseType_type);defs.push_back(IFC4X3_RC2_IfcCoveringType_type);defs.push_back(IFC4X3_RC2_IfcCurtainWallType_type);defs.push_back(IFC4X3_RC2_IfcDeepFoundationType_type);defs.push_back(IFC4X3_RC2_IfcDoorType_type);defs.push_back(IFC4X3_RC2_IfcFootingType_type);defs.push_back(IFC4X3_RC2_IfcKerbType_type);defs.push_back(IFC4X3_RC2_IfcMemberType_type);defs.push_back(IFC4X3_RC2_IfcMooringDeviceType_type);defs.push_back(IFC4X3_RC2_IfcNavigationElementType_type);defs.push_back(IFC4X3_RC2_IfcPavementType_type);defs.push_back(IFC4X3_RC2_IfcPlateType_type);defs.push_back(IFC4X3_RC2_IfcRailType_type);defs.push_back(IFC4X3_RC2_IfcRailingType_type);defs.push_back(IFC4X3_RC2_IfcRampFlightType_type);defs.push_back(IFC4X3_RC2_IfcRampType_type);defs.push_back(IFC4X3_RC2_IfcRoofType_type);defs.push_back(IFC4X3_RC2_IfcShadingDeviceType_type);defs.push_back(IFC4X3_RC2_IfcSlabType_type);defs.push_back(IFC4X3_RC2_IfcStairFlightType_type);defs.push_back(IFC4X3_RC2_IfcStairType_type);defs.push_back(IFC4X3_RC2_IfcTrackElementType_type);defs.push_back(IFC4X3_RC2_IfcWallType_type);defs.push_back(IFC4X3_RC2_IfcWindowType_type); - IFC4X3_RC2_IfcBuiltElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcBlobTexture_type);defs.push_back(IFC4X3_RC2_IfcImageTexture_type);defs.push_back(IFC4X3_RC2_IfcPixelTexture_type); - IFC4X3_RC2_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcBlock_type);defs.push_back(IFC4X3_RC2_IfcRectangularPyramid_type);defs.push_back(IFC4X3_RC2_IfcRightCircularCone_type);defs.push_back(IFC4X3_RC2_IfcRightCircularCylinder_type);defs.push_back(IFC4X3_RC2_IfcSphere_type); - IFC4X3_RC2_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcBlossCurve_type);defs.push_back(IFC4X3_RC2_IfcBoundedCurve_type);defs.push_back(IFC4X3_RC2_IfcClothoid_type);defs.push_back(IFC4X3_RC2_IfcConic_type);defs.push_back(IFC4X3_RC2_IfcLine_type);defs.push_back(IFC4X3_RC2_IfcOffsetCurve_type);defs.push_back(IFC4X3_RC2_IfcPcurve_type);defs.push_back(IFC4X3_RC2_IfcSeriesParameterCurve_type);defs.push_back(IFC4X3_RC2_IfcSurfaceCurve_type); - IFC4X3_RC2_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBooleanClippingResult_type); - IFC4X3_RC2_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcBorehole_type);defs.push_back(IFC4X3_RC2_IfcGeomodel_type);defs.push_back(IFC4X3_RC2_IfcGeoslice_type); - IFC4X3_RC2_IfcGeotechnicalAssembly_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBoundaryCurve_type); - IFC4X3_RC2_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X3_RC2_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X3_RC2_IfcBoundaryNodeCondition_type); - IFC4X3_RC2_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type); - IFC4X3_RC2_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcBoundedSurface_type);defs.push_back(IFC4X3_RC2_IfcElementarySurface_type);defs.push_back(IFC4X3_RC2_IfcSectionedSurface_type);defs.push_back(IFC4X3_RC2_IfcSweptSurface_type); - IFC4X3_RC2_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcBoxedHalfSpace_type);defs.push_back(IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type); - IFC4X3_RC2_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcBridge_type);defs.push_back(IFC4X3_RC2_IfcBuilding_type);defs.push_back(IFC4X3_RC2_IfcMarineFacility_type);defs.push_back(IFC4X3_RC2_IfcRailway_type);defs.push_back(IFC4X3_RC2_IfcRoad_type); - IFC4X3_RC2_IfcFacility_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcBridgePart_type); - IFC4X3_RC2_IfcFacilityPart_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcBuildingElementPart_type);defs.push_back(IFC4X3_RC2_IfcDiscreteAccessory_type);defs.push_back(IFC4X3_RC2_IfcFastener_type);defs.push_back(IFC4X3_RC2_IfcImpactProtectionDevice_type);defs.push_back(IFC4X3_RC2_IfcMechanicalFastener_type);defs.push_back(IFC4X3_RC2_IfcReinforcingElement_type);defs.push_back(IFC4X3_RC2_IfcSign_type);defs.push_back(IFC4X3_RC2_IfcVibrationDamper_type);defs.push_back(IFC4X3_RC2_IfcVibrationIsolator_type); - IFC4X3_RC2_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcBuildingElementPartType_type);defs.push_back(IFC4X3_RC2_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X3_RC2_IfcFastenerType_type);defs.push_back(IFC4X3_RC2_IfcImpactProtectionDeviceType_type);defs.push_back(IFC4X3_RC2_IfcMechanicalFastenerType_type);defs.push_back(IFC4X3_RC2_IfcReinforcingElementType_type);defs.push_back(IFC4X3_RC2_IfcSignType_type);defs.push_back(IFC4X3_RC2_IfcVibrationDamperType_type);defs.push_back(IFC4X3_RC2_IfcVibrationIsolatorType_type); - IFC4X3_RC2_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcBuildingStorey_type);defs.push_back(IFC4X3_RC2_IfcFacility_type);defs.push_back(IFC4X3_RC2_IfcFacilityPart_type);defs.push_back(IFC4X3_RC2_IfcSite_type);defs.push_back(IFC4X3_RC2_IfcSpace_type); - IFC4X3_RC2_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcBuildingSystem_type);defs.push_back(IFC4X3_RC2_IfcBuiltSystem_type);defs.push_back(IFC4X3_RC2_IfcDistributionSystem_type);defs.push_back(IFC4X3_RC2_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X3_RC2_IfcZone_type); - IFC4X3_RC2_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC2_IfcBuiltElement_type);defs.push_back(IFC4X3_RC2_IfcCivilElement_type);defs.push_back(IFC4X3_RC2_IfcDistributionElement_type);defs.push_back(IFC4X3_RC2_IfcElementAssembly_type);defs.push_back(IFC4X3_RC2_IfcElementComponent_type);defs.push_back(IFC4X3_RC2_IfcFeatureElement_type);defs.push_back(IFC4X3_RC2_IfcFurnishingElement_type);defs.push_back(IFC4X3_RC2_IfcGeographicElement_type);defs.push_back(IFC4X3_RC2_IfcGeotechnicalElement_type);defs.push_back(IFC4X3_RC2_IfcTransportElement_type);defs.push_back(IFC4X3_RC2_IfcVirtualElement_type); - IFC4X3_RC2_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC2_IfcBuiltElementType_type);defs.push_back(IFC4X3_RC2_IfcCivilElementType_type);defs.push_back(IFC4X3_RC2_IfcDistributionElementType_type);defs.push_back(IFC4X3_RC2_IfcElementAssemblyType_type);defs.push_back(IFC4X3_RC2_IfcElementComponentType_type);defs.push_back(IFC4X3_RC2_IfcFurnishingElementType_type);defs.push_back(IFC4X3_RC2_IfcGeographicElementType_type);defs.push_back(IFC4X3_RC2_IfcTransportElementType_type); - IFC4X3_RC2_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcCableCarrierFitting_type);defs.push_back(IFC4X3_RC2_IfcCableFitting_type);defs.push_back(IFC4X3_RC2_IfcDuctFitting_type);defs.push_back(IFC4X3_RC2_IfcJunctionBox_type);defs.push_back(IFC4X3_RC2_IfcPipeFitting_type); - IFC4X3_RC2_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcCableCarrierFittingType_type);defs.push_back(IFC4X3_RC2_IfcCableFittingType_type);defs.push_back(IFC4X3_RC2_IfcDuctFittingType_type);defs.push_back(IFC4X3_RC2_IfcJunctionBoxType_type);defs.push_back(IFC4X3_RC2_IfcPipeFittingType_type); - IFC4X3_RC2_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcCableCarrierSegment_type);defs.push_back(IFC4X3_RC2_IfcCableSegment_type);defs.push_back(IFC4X3_RC2_IfcConveyorSegment_type);defs.push_back(IFC4X3_RC2_IfcDuctSegment_type);defs.push_back(IFC4X3_RC2_IfcPipeSegment_type); - IFC4X3_RC2_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X3_RC2_IfcCableSegmentType_type);defs.push_back(IFC4X3_RC2_IfcConveyorSegmentType_type);defs.push_back(IFC4X3_RC2_IfcDuctSegmentType_type);defs.push_back(IFC4X3_RC2_IfcPipeSegmentType_type); - IFC4X3_RC2_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcCaissonFoundation_type);defs.push_back(IFC4X3_RC2_IfcPile_type); - IFC4X3_RC2_IfcDeepFoundation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcCaissonFoundationType_type);defs.push_back(IFC4X3_RC2_IfcPileType_type); - IFC4X3_RC2_IfcDeepFoundationType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcCartesianPoint_type);defs.push_back(IFC4X3_RC2_IfcPointByDistanceExpression_type);defs.push_back(IFC4X3_RC2_IfcPointOnCurve_type);defs.push_back(IFC4X3_RC2_IfcPointOnSurface_type); - IFC4X3_RC2_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcCartesianPointList2D_type);defs.push_back(IFC4X3_RC2_IfcCartesianPointList3D_type); - IFC4X3_RC2_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC2_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X3_RC2_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X3_RC2_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcCenterLineProfileDef_type); - IFC4X3_RC2_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcCircle_type);defs.push_back(IFC4X3_RC2_IfcEllipse_type); - IFC4X3_RC2_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcCircleHollowProfileDef_type); - IFC4X3_RC2_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcCircularArcSegment2D_type);defs.push_back(IFC4X3_RC2_IfcLineSegment2D_type);defs.push_back(IFC4X3_RC2_IfcTransitionCurveSegment2D_type); - IFC4X3_RC2_IfcCurveSegment2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcClassification_type);defs.push_back(IFC4X3_RC2_IfcDocumentInformation_type);defs.push_back(IFC4X3_RC2_IfcLibraryInformation_type); - IFC4X3_RC2_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcClassificationReference_type);defs.push_back(IFC4X3_RC2_IfcDocumentReference_type);defs.push_back(IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X3_RC2_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X3_RC2_IfcLibraryReference_type); - IFC4X3_RC2_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcClosedShell_type);defs.push_back(IFC4X3_RC2_IfcOpenShell_type); - IFC4X3_RC2_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcColourRgb_type); - IFC4X3_RC2_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X3_RC2_IfcColourRgbList_type);defs.push_back(IFC4X3_RC2_IfcColourSpecification_type);defs.push_back(IFC4X3_RC2_IfcCurveStyleFont_type);defs.push_back(IFC4X3_RC2_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X3_RC2_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X3_RC2_IfcIndexedColourMap_type);defs.push_back(IFC4X3_RC2_IfcPreDefinedItem_type);defs.push_back(IFC4X3_RC2_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X3_RC2_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X3_RC2_IfcSurfaceStyleShading_type);defs.push_back(IFC4X3_RC2_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X3_RC2_IfcSurfaceTexture_type);defs.push_back(IFC4X3_RC2_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X3_RC2_IfcTextStyleTextModel_type);defs.push_back(IFC4X3_RC2_IfcTextureCoordinate_type);defs.push_back(IFC4X3_RC2_IfcTextureVertex_type);defs.push_back(IFC4X3_RC2_IfcTextureVertexList_type); - IFC4X3_RC2_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcColumnStandardCase_type); - IFC4X3_RC2_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcComplexProperty_type);defs.push_back(IFC4X3_RC2_IfcSimpleProperty_type); - IFC4X3_RC2_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X3_RC2_IfcSimplePropertyTemplate_type); - IFC4X3_RC2_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcCompositeCurveOnSurface_type); - IFC4X3_RC2_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcCompositeCurveSegment_type);defs.push_back(IFC4X3_RC2_IfcCurveSegment_type); - IFC4X3_RC2_IfcSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcCompressor_type);defs.push_back(IFC4X3_RC2_IfcFan_type);defs.push_back(IFC4X3_RC2_IfcPump_type); - IFC4X3_RC2_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcCompressorType_type);defs.push_back(IFC4X3_RC2_IfcFanType_type);defs.push_back(IFC4X3_RC2_IfcPumpType_type); - IFC4X3_RC2_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC2_IfcConnectedFaceSet_type);defs.push_back(IFC4X3_RC2_IfcEdge_type);defs.push_back(IFC4X3_RC2_IfcFace_type);defs.push_back(IFC4X3_RC2_IfcFaceBound_type);defs.push_back(IFC4X3_RC2_IfcLoop_type);defs.push_back(IFC4X3_RC2_IfcPath_type);defs.push_back(IFC4X3_RC2_IfcVertex_type); - IFC4X3_RC2_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X3_RC2_IfcConnectionPointGeometry_type);defs.push_back(IFC4X3_RC2_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X3_RC2_IfcConnectionVolumeGeometry_type); - IFC4X3_RC2_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcConnectionPointEccentricity_type); - IFC4X3_RC2_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X3_RC2_IfcConstructionMaterialResource_type);defs.push_back(IFC4X3_RC2_IfcConstructionProductResource_type);defs.push_back(IFC4X3_RC2_IfcCrewResource_type);defs.push_back(IFC4X3_RC2_IfcLaborResource_type);defs.push_back(IFC4X3_RC2_IfcSubContractResource_type); - IFC4X3_RC2_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X3_RC2_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X3_RC2_IfcConstructionProductResourceType_type);defs.push_back(IFC4X3_RC2_IfcCrewResourceType_type);defs.push_back(IFC4X3_RC2_IfcLaborResourceType_type);defs.push_back(IFC4X3_RC2_IfcSubContractResourceType_type); - IFC4X3_RC2_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcConstructionResource_type); - IFC4X3_RC2_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcConstructionResourceType_type); - IFC4X3_RC2_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcContext_type);defs.push_back(IFC4X3_RC2_IfcObject_type);defs.push_back(IFC4X3_RC2_IfcTypeObject_type); - IFC4X3_RC2_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcContextDependentUnit_type);defs.push_back(IFC4X3_RC2_IfcConversionBasedUnit_type);defs.push_back(IFC4X3_RC2_IfcSIUnit_type); - IFC4X3_RC2_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type); - IFC4X3_RC2_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcCostValue_type); - IFC4X3_RC2_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcCsgSolid_type);defs.push_back(IFC4X3_RC2_IfcManifoldSolidBrep_type);defs.push_back(IFC4X3_RC2_IfcSectionedSolid_type);defs.push_back(IFC4X3_RC2_IfcSweptAreaSolid_type);defs.push_back(IFC4X3_RC2_IfcSweptDiskSolid_type); - IFC4X3_RC2_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcCurveStyle_type);defs.push_back(IFC4X3_RC2_IfcFillAreaStyle_type);defs.push_back(IFC4X3_RC2_IfcSurfaceStyle_type);defs.push_back(IFC4X3_RC2_IfcTextStyle_type); - IFC4X3_RC2_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcCylindricalSurface_type);defs.push_back(IFC4X3_RC2_IfcPlane_type);defs.push_back(IFC4X3_RC2_IfcSphericalSurface_type);defs.push_back(IFC4X3_RC2_IfcToroidalSurface_type); - IFC4X3_RC2_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type);defs.push_back(IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type);defs.push_back(IFC4X3_RC2_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X3_RC2_IfcRevolvedAreaSolid_type); - IFC4X3_RC2_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcDistributionChamberElement_type);defs.push_back(IFC4X3_RC2_IfcEnergyConversionDevice_type);defs.push_back(IFC4X3_RC2_IfcFlowController_type);defs.push_back(IFC4X3_RC2_IfcFlowFitting_type);defs.push_back(IFC4X3_RC2_IfcFlowMovingDevice_type);defs.push_back(IFC4X3_RC2_IfcFlowSegment_type);defs.push_back(IFC4X3_RC2_IfcFlowStorageDevice_type);defs.push_back(IFC4X3_RC2_IfcFlowTerminal_type);defs.push_back(IFC4X3_RC2_IfcFlowTreatmentDevice_type); - IFC4X3_RC2_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC2_IfcDistributionChamberElementType_type);defs.push_back(IFC4X3_RC2_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X3_RC2_IfcFlowControllerType_type);defs.push_back(IFC4X3_RC2_IfcFlowFittingType_type);defs.push_back(IFC4X3_RC2_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X3_RC2_IfcFlowSegmentType_type);defs.push_back(IFC4X3_RC2_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC2_IfcFlowTerminalType_type);defs.push_back(IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC2_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcDistributionCircuit_type); - IFC4X3_RC2_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcDistributionControlElement_type);defs.push_back(IFC4X3_RC2_IfcDistributionFlowElement_type); - IFC4X3_RC2_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcDistributionControlElementType_type);defs.push_back(IFC4X3_RC2_IfcDistributionFlowElementType_type); - IFC4X3_RC2_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcDistributionPort_type); - IFC4X3_RC2_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcDoorLiningProperties_type);defs.push_back(IFC4X3_RC2_IfcDoorPanelProperties_type);defs.push_back(IFC4X3_RC2_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X3_RC2_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X3_RC2_IfcWindowLiningProperties_type);defs.push_back(IFC4X3_RC2_IfcWindowPanelProperties_type); - IFC4X3_RC2_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcDoorStandardCase_type); - IFC4X3_RC2_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcDoorStyle_type);defs.push_back(IFC4X3_RC2_IfcElementType_type);defs.push_back(IFC4X3_RC2_IfcSpatialElementType_type);defs.push_back(IFC4X3_RC2_IfcWindowStyle_type); - IFC4X3_RC2_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcDraughtingPreDefinedColour_type); - IFC4X3_RC2_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type); - IFC4X3_RC2_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcDuctSilencer_type);defs.push_back(IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type);defs.push_back(IFC4X3_RC2_IfcFilter_type);defs.push_back(IFC4X3_RC2_IfcInterceptor_type); - IFC4X3_RC2_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcDuctSilencerType_type);defs.push_back(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type);defs.push_back(IFC4X3_RC2_IfcFilterType_type);defs.push_back(IFC4X3_RC2_IfcInterceptorType_type); - IFC4X3_RC2_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcEarthworksCut_type);defs.push_back(IFC4X3_RC2_IfcOpeningElement_type);defs.push_back(IFC4X3_RC2_IfcVoidingFeature_type); - IFC4X3_RC2_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcEarthworksFill_type);defs.push_back(IFC4X3_RC2_IfcReinforcedSoil_type); - IFC4X3_RC2_IfcEarthworksElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcEdgeCurve_type);defs.push_back(IFC4X3_RC2_IfcOrientedEdge_type);defs.push_back(IFC4X3_RC2_IfcSubedge_type); - IFC4X3_RC2_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcEdgeLoop_type);defs.push_back(IFC4X3_RC2_IfcPolyLoop_type);defs.push_back(IFC4X3_RC2_IfcVertexLoop_type); - IFC4X3_RC2_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X3_RC2_IfcTank_type); - IFC4X3_RC2_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC2_IfcTankType_type); - IFC4X3_RC2_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcElementQuantity_type); - IFC4X3_RC2_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcEvent_type);defs.push_back(IFC4X3_RC2_IfcProcedure_type);defs.push_back(IFC4X3_RC2_IfcTask_type); - IFC4X3_RC2_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcEventTime_type);defs.push_back(IFC4X3_RC2_IfcLagTime_type);defs.push_back(IFC4X3_RC2_IfcResourceTime_type);defs.push_back(IFC4X3_RC2_IfcTaskTime_type);defs.push_back(IFC4X3_RC2_IfcWorkTime_type); - IFC4X3_RC2_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcEventType_type);defs.push_back(IFC4X3_RC2_IfcProcedureType_type);defs.push_back(IFC4X3_RC2_IfcTaskType_type); - IFC4X3_RC2_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcExtendedProperties_type);defs.push_back(IFC4X3_RC2_IfcPreDefinedProperties_type);defs.push_back(IFC4X3_RC2_IfcProperty_type);defs.push_back(IFC4X3_RC2_IfcPropertyEnumeration_type); - IFC4X3_RC2_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcExternalSpatialElement_type); - IFC4X3_RC2_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X3_RC2_IfcSpatialStructureElement_type);defs.push_back(IFC4X3_RC2_IfcSpatialZone_type); - IFC4X3_RC2_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type); - IFC4X3_RC2_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcFaceOuterBound_type); - IFC4X3_RC2_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcFaceSurface_type); - IFC4X3_RC2_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcFacetedBrepWithVoids_type); - IFC4X3_RC2_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcFailureConnectionCondition_type);defs.push_back(IFC4X3_RC2_IfcSlippageConnectionCondition_type); - IFC4X3_RC2_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcFeatureElementAddition_type);defs.push_back(IFC4X3_RC2_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X3_RC2_IfcSurfaceFeature_type); - IFC4X3_RC2_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcFurniture_type);defs.push_back(IFC4X3_RC2_IfcSystemFurnitureElement_type); - IFC4X3_RC2_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcFurnitureType_type);defs.push_back(IFC4X3_RC2_IfcSystemFurnitureElementType_type); - IFC4X3_RC2_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcGeometricCurveSet_type); - IFC4X3_RC2_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcGeometricRepresentationContext_type); - IFC4X3_RC2_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X3_RC2_IfcMappedItem_type);defs.push_back(IFC4X3_RC2_IfcStyledItem_type);defs.push_back(IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - IFC4X3_RC2_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcGeometricRepresentationSubContext_type); - IFC4X3_RC2_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcGeotechnicalAssembly_type);defs.push_back(IFC4X3_RC2_IfcGeotechnicalStratum_type); - IFC4X3_RC2_IfcGeotechnicalElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcGrid_type);defs.push_back(IFC4X3_RC2_IfcLinearPositioningElement_type);defs.push_back(IFC4X3_RC2_IfcReferent_type); - IFC4X3_RC2_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcGridPlacement_type);defs.push_back(IFC4X3_RC2_IfcLinearPlacement_type);defs.push_back(IFC4X3_RC2_IfcLocalPlacement_type); - IFC4X3_RC2_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type); - IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X3_RC2_IfcTessellatedFaceSet_type); - IFC4X3_RC2_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X3_RC2_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcIndexedTextureMap_type);defs.push_back(IFC4X3_RC2_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X3_RC2_IfcTextureMap_type); - IFC4X3_RC2_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcIndexedTriangleTextureMap_type); - IFC4X3_RC2_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcIntersectionCurve_type);defs.push_back(IFC4X3_RC2_IfcSeamCurve_type); - IFC4X3_RC2_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcIrregularTimeSeries_type);defs.push_back(IFC4X3_RC2_IfcRegularTimeSeries_type); - IFC4X3_RC2_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcLightSourceAmbient_type);defs.push_back(IFC4X3_RC2_IfcLightSourceDirectional_type);defs.push_back(IFC4X3_RC2_IfcLightSourceGoniometric_type);defs.push_back(IFC4X3_RC2_IfcLightSourcePositional_type); - IFC4X3_RC2_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcLightSourceSpot_type); - IFC4X3_RC2_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcLinearPlacementWithInclination_type);defs.push_back(IFC4X3_RC2_IfcLinearSpanPlacement_type); - IFC4X3_RC2_IfcLinearPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcMapConversion_type); - IFC4X3_RC2_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC2_IfcMaterial_type);defs.push_back(IFC4X3_RC2_IfcMaterialConstituent_type);defs.push_back(IFC4X3_RC2_IfcMaterialConstituentSet_type);defs.push_back(IFC4X3_RC2_IfcMaterialLayer_type);defs.push_back(IFC4X3_RC2_IfcMaterialLayerSet_type);defs.push_back(IFC4X3_RC2_IfcMaterialProfile_type);defs.push_back(IFC4X3_RC2_IfcMaterialProfileSet_type); - IFC4X3_RC2_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X3_RC2_IfcProductDefinitionShape_type); - IFC4X3_RC2_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X3_RC2_IfcMaterialProfileSetUsage_type); - IFC4X3_RC2_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcMaterialLayerWithOffsets_type); - IFC4X3_RC2_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type); - IFC4X3_RC2_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcMaterialProfileWithOffsets_type); - IFC4X3_RC2_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcMaterialProperties_type);defs.push_back(IFC4X3_RC2_IfcProfileProperties_type); - IFC4X3_RC2_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcMemberStandardCase_type); - IFC4X3_RC2_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcMetric_type);defs.push_back(IFC4X3_RC2_IfcObjective_type); - IFC4X3_RC2_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcMirroredProfileDef_type); - IFC4X3_RC2_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcObjectDefinition_type);defs.push_back(IFC4X3_RC2_IfcPropertyDefinition_type);defs.push_back(IFC4X3_RC2_IfcRelationship_type); - IFC4X3_RC2_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcOccupant_type); - IFC4X3_RC2_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcOffsetCurve2D_type);defs.push_back(IFC4X3_RC2_IfcOffsetCurve3D_type);defs.push_back(IFC4X3_RC2_IfcOffsetCurveByDistances_type); - IFC4X3_RC2_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcOpeningStandardCase_type); - IFC4X3_RC2_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcOuterBoundaryCurve_type); - IFC4X3_RC2_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC2_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcPlanarBox_type); - IFC4X3_RC2_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcPlant_type); - IFC4X3_RC2_IfcGeographicElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcPlateStandardCase_type); - IFC4X3_RC2_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcPolygonalFaceSet_type);defs.push_back(IFC4X3_RC2_IfcTriangulatedFaceSet_type); - IFC4X3_RC2_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcPostalAddress_type);defs.push_back(IFC4X3_RC2_IfcTelecomAddress_type); - IFC4X3_RC2_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcPreDefinedColour_type);defs.push_back(IFC4X3_RC2_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X3_RC2_IfcPreDefinedTextFont_type); - IFC4X3_RC2_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X3_RC2_IfcPropertySet_type);defs.push_back(IFC4X3_RC2_IfcQuantitySet_type); - IFC4X3_RC2_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcPresentationLayerWithStyle_type); - IFC4X3_RC2_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcProject_type);defs.push_back(IFC4X3_RC2_IfcProjectLibrary_type); - IFC4X3_RC2_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcProjectedCRS_type); - IFC4X3_RC2_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcProjectionElement_type); - IFC4X3_RC2_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcPropertyBoundedValue_type);defs.push_back(IFC4X3_RC2_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X3_RC2_IfcPropertyListValue_type);defs.push_back(IFC4X3_RC2_IfcPropertyReferenceValue_type);defs.push_back(IFC4X3_RC2_IfcPropertySingleValue_type);defs.push_back(IFC4X3_RC2_IfcPropertyTableValue_type); - IFC4X3_RC2_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcPropertySetDefinition_type);defs.push_back(IFC4X3_RC2_IfcPropertyTemplateDefinition_type); - IFC4X3_RC2_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcPropertySetTemplate_type);defs.push_back(IFC4X3_RC2_IfcPropertyTemplate_type); - IFC4X3_RC2_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcQuantityArea_type);defs.push_back(IFC4X3_RC2_IfcQuantityCount_type);defs.push_back(IFC4X3_RC2_IfcQuantityLength_type);defs.push_back(IFC4X3_RC2_IfcQuantityTime_type);defs.push_back(IFC4X3_RC2_IfcQuantityVolume_type);defs.push_back(IFC4X3_RC2_IfcQuantityWeight_type); - IFC4X3_RC2_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type); - IFC4X3_RC2_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X3_RC2_IfcRoundedRectangleProfileDef_type); - IFC4X3_RC2_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcReinforcementBarProperties_type);defs.push_back(IFC4X3_RC2_IfcSectionProperties_type);defs.push_back(IFC4X3_RC2_IfcSectionReinforcementProperties_type); - IFC4X3_RC2_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcReinforcingBar_type);defs.push_back(IFC4X3_RC2_IfcReinforcingMesh_type);defs.push_back(IFC4X3_RC2_IfcTendon_type);defs.push_back(IFC4X3_RC2_IfcTendonAnchor_type);defs.push_back(IFC4X3_RC2_IfcTendonConduit_type); - IFC4X3_RC2_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcReinforcingBarType_type);defs.push_back(IFC4X3_RC2_IfcReinforcingMeshType_type);defs.push_back(IFC4X3_RC2_IfcTendonAnchorType_type);defs.push_back(IFC4X3_RC2_IfcTendonConduitType_type);defs.push_back(IFC4X3_RC2_IfcTendonType_type); - IFC4X3_RC2_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcRelAggregates_type);defs.push_back(IFC4X3_RC2_IfcRelNests_type);defs.push_back(IFC4X3_RC2_IfcRelProjectsElement_type);defs.push_back(IFC4X3_RC2_IfcRelVoidsElement_type); - IFC4X3_RC2_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcRelAssigns_type);defs.push_back(IFC4X3_RC2_IfcRelAssociates_type);defs.push_back(IFC4X3_RC2_IfcRelConnects_type);defs.push_back(IFC4X3_RC2_IfcRelDeclares_type);defs.push_back(IFC4X3_RC2_IfcRelDecomposes_type);defs.push_back(IFC4X3_RC2_IfcRelDefines_type); - IFC4X3_RC2_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC2_IfcRelAssignsToActor_type);defs.push_back(IFC4X3_RC2_IfcRelAssignsToControl_type);defs.push_back(IFC4X3_RC2_IfcRelAssignsToGroup_type);defs.push_back(IFC4X3_RC2_IfcRelAssignsToProcess_type);defs.push_back(IFC4X3_RC2_IfcRelAssignsToProduct_type);defs.push_back(IFC4X3_RC2_IfcRelAssignsToResource_type); - IFC4X3_RC2_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type); - IFC4X3_RC2_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC2_IfcRelAssociatesApproval_type);defs.push_back(IFC4X3_RC2_IfcRelAssociatesClassification_type);defs.push_back(IFC4X3_RC2_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X3_RC2_IfcRelAssociatesDocument_type);defs.push_back(IFC4X3_RC2_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X3_RC2_IfcRelAssociatesMaterial_type);defs.push_back(IFC4X3_RC2_IfcRelAssociatesProfileDef_type); - IFC4X3_RC2_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC2_IfcRelConnectsElements_type);defs.push_back(IFC4X3_RC2_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X3_RC2_IfcRelConnectsPorts_type);defs.push_back(IFC4X3_RC2_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X3_RC2_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X3_RC2_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X3_RC2_IfcRelCoversBldgElements_type);defs.push_back(IFC4X3_RC2_IfcRelCoversSpaces_type);defs.push_back(IFC4X3_RC2_IfcRelFillsElement_type);defs.push_back(IFC4X3_RC2_IfcRelFlowControlElements_type);defs.push_back(IFC4X3_RC2_IfcRelInterferesElements_type);defs.push_back(IFC4X3_RC2_IfcRelPositions_type);defs.push_back(IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X3_RC2_IfcRelSequence_type);defs.push_back(IFC4X3_RC2_IfcRelServicesBuildings_type);defs.push_back(IFC4X3_RC2_IfcRelSpaceBoundary_type); - IFC4X3_RC2_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcRelConnectsPathElements_type);defs.push_back(IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type); - IFC4X3_RC2_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRelConnectsWithEccentricity_type); - IFC4X3_RC2_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC2_IfcRelDefinesByObject_type);defs.push_back(IFC4X3_RC2_IfcRelDefinesByProperties_type);defs.push_back(IFC4X3_RC2_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X3_RC2_IfcRelDefinesByType_type); - IFC4X3_RC2_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC2_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type); - IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type); - IFC4X3_RC2_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type); - IFC4X3_RC2_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcSectionedSolidHorizontal_type); - IFC4X3_RC2_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcShapeModel_type);defs.push_back(IFC4X3_RC2_IfcStyleModel_type); - IFC4X3_RC2_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcShapeRepresentation_type);defs.push_back(IFC4X3_RC2_IfcTopologyRepresentation_type); - IFC4X3_RC2_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcSlabElementedCase_type);defs.push_back(IFC4X3_RC2_IfcSlabStandardCase_type); - IFC4X3_RC2_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcSolidStratum_type);defs.push_back(IFC4X3_RC2_IfcVoidStratum_type);defs.push_back(IFC4X3_RC2_IfcWaterStratum_type); - IFC4X3_RC2_IfcGeotechnicalStratum_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcSpaceType_type); - IFC4X3_RC2_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcSpatialStructureElementType_type);defs.push_back(IFC4X3_RC2_IfcSpatialZoneType_type); - IFC4X3_RC2_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcStructuralAction_type);defs.push_back(IFC4X3_RC2_IfcStructuralReaction_type); - IFC4X3_RC2_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcStructuralConnection_type);defs.push_back(IFC4X3_RC2_IfcStructuralMember_type); - IFC4X3_RC2_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcStructuralCurveAction_type);defs.push_back(IFC4X3_RC2_IfcStructuralPointAction_type);defs.push_back(IFC4X3_RC2_IfcStructuralSurfaceAction_type); - IFC4X3_RC2_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcStructuralCurveConnection_type);defs.push_back(IFC4X3_RC2_IfcStructuralPointConnection_type);defs.push_back(IFC4X3_RC2_IfcStructuralSurfaceConnection_type); - IFC4X3_RC2_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcStructuralCurveMember_type);defs.push_back(IFC4X3_RC2_IfcStructuralSurfaceMember_type); - IFC4X3_RC2_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralCurveMemberVarying_type); - IFC4X3_RC2_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcStructuralCurveReaction_type);defs.push_back(IFC4X3_RC2_IfcStructuralPointReaction_type);defs.push_back(IFC4X3_RC2_IfcStructuralSurfaceReaction_type); - IFC4X3_RC2_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralLinearAction_type); - IFC4X3_RC2_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralLoadCase_type); - IFC4X3_RC2_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X3_RC2_IfcStructuralLoadOrResult_type); - IFC4X3_RC2_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC2_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X3_RC2_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X3_RC2_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X3_RC2_IfcStructuralLoadTemperature_type); - IFC4X3_RC2_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type); - IFC4X3_RC2_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcStructuralLoadStatic_type);defs.push_back(IFC4X3_RC2_IfcSurfaceReinforcementArea_type); - IFC4X3_RC2_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralPlanarAction_type); - IFC4X3_RC2_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type); - IFC4X3_RC2_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcStyledRepresentation_type); - IFC4X3_RC2_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X3_RC2_IfcSurfaceOfRevolution_type); - IFC4X3_RC2_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcSurfaceStyleRendering_type); - IFC4X3_RC2_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type); - IFC4X3_RC2_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcTaskTimeRecurring_type); - IFC4X3_RC2_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcTextLiteralWithExtent_type); - IFC4X3_RC2_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcTextStyleFontModel_type); - IFC4X3_RC2_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type); - IFC4X3_RC2_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC2_IfcTypeProcess_type);defs.push_back(IFC4X3_RC2_IfcTypeProduct_type);defs.push_back(IFC4X3_RC2_IfcTypeResource_type); - IFC4X3_RC2_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcVertexPoint_type); - IFC4X3_RC2_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcWallElementedCase_type);defs.push_back(IFC4X3_RC2_IfcWallStandardCase_type); - IFC4X3_RC2_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC2_IfcWindowStandardCase_type); - IFC4X3_RC2_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC2_IfcWorkPlan_type);defs.push_back(IFC4X3_RC2_IfcWorkSchedule_type); - IFC4X3_RC2_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X3_RC2_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[77], + strings[78], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type(strings[79], 35, { + strings[80], + strings[81], + strings[82], + strings[83], + strings[84], + strings[85], + strings[86] + }); + IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type(strings[87], 39, { + strings[88], + strings[89], + strings[90], + strings[91], + strings[82], + strings[83], + strings[84], + strings[85], + strings[86] + }); + IFC4X3_RC2_IfcAlignmentTypeEnum_type = new enumeration_type(strings[92], 42, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type(strings[93], 45, { + strings[94], + strings[89], + strings[95], + strings[90] + }); + IFC4X3_RC2_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[96], 46, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[97], 47, { + strings[98], + strings[99], + strings[100], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[101], 48, { + strings[102], + strings[103], + strings[104], + strings[105], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAngularVelocityMeasure_type = new type_declaration(strings[106], 49, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcAnnotationTypeEnum_type = new enumeration_type(strings[107], 52, { + strings[108], + strings[109], + strings[110], + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcAreaDensityMeasure_type = new type_declaration(strings[117], 62, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcAreaMeasure_type = new type_declaration(strings[118], 63, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[119], 64, { + strings[120], + strings[121], + strings[122], + strings[123] + }); + IFC4X3_RC2_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[124], 65, { + strings[48], + strings[125], + strings[9] + }); + IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[126], 70, { + strings[127], + strings[128], + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[134], + strings[135], + strings[136], + strings[137], + strings[138], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBSplineCurveForm_type = new enumeration_type(strings[139], 116, { + strings[140], + strings[141], + strings[142], + strings[143], + strings[144], + strings[145] + }); + IFC4X3_RC2_IfcBSplineSurfaceForm_type = new enumeration_type(strings[146], 119, { + strings[147], + strings[148], + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[154], + strings[155], + strings[156], + strings[145] + }); + IFC4X3_RC2_IfcBeamTypeEnum_type = new enumeration_type(strings[157], 80, { + strings[158], + strings[159], + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165], + strings[166], + strings[167], + strings[168], + strings[169], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBearingTypeDisplacementEnum_type = new enumeration_type(strings[170], 83, { + strings[171], + strings[172], + strings[173], + strings[174], + strings[9] + }); + IFC4X3_RC2_IfcBearingTypeEnum_type = new enumeration_type(strings[175], 84, { + strings[176], + strings[177], + strings[178], + strings[179], + strings[180], + strings[181], + strings[182], + strings[183], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBenchmarkEnum_type = new enumeration_type(strings[184], 85, { + strings[185], + strings[186], + strings[187], + strings[188], + strings[189], + strings[190], + strings[191], + strings[192], + strings[193], + strings[194] + }); + IFC4X3_RC2_IfcBinary_type = new type_declaration(strings[195], 87, new simple_type(simple_type::binary_type)); + IFC4X3_RC2_IfcBoilerTypeEnum_type = new enumeration_type(strings[196], 93, { + strings[197], + strings[198], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBoolean_type = new type_declaration(strings[199], 94, new simple_type(simple_type::boolean_type)); + IFC4X3_RC2_IfcBooleanOperator_type = new enumeration_type(strings[200], 97, { + strings[201], + strings[202], + strings[203] + }); + IFC4X3_RC2_IfcBridgePartTypeEnum_type = new enumeration_type(strings[204], 113, { + strings[205], + strings[206], + strings[207], + strings[208], + strings[209], + strings[210], + strings[211], + strings[212], + strings[213], + strings[214], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBridgeTypeEnum_type = new enumeration_type(strings[215], 114, { + strings[216], + strings[217], + strings[218], + strings[219], + strings[220], + strings[221], + strings[222], + strings[223], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[224], 124, { + strings[225], + strings[226], + strings[227], + strings[228], + strings[229], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[230], 127, { + strings[231], + strings[232], + strings[233], + strings[234], + strings[235], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[236], 130, { + strings[237], + strings[208], + strings[238], + strings[239], + strings[240], + strings[23], + strings[241], + strings[242], + strings[243], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBuiltSystemTypeEnum_type = new enumeration_type(strings[244], 134, { + strings[241], + strings[245], + strings[239], + strings[246], + strings[243], + strings[208], + strings[238], + strings[240], + strings[237], + strings[247], + strings[23], + strings[242], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcBurnerTypeEnum_type = new enumeration_type(strings[248], 137, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[249], 140, { + strings[250], + strings[251], + strings[252], + strings[253], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[254], 143, { + strings[255], + strings[256], + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCableFittingTypeEnum_type = new enumeration_type(strings[262], 146, { + strings[263], + strings[264], + strings[265], + strings[266], + strings[267], + strings[268], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[269], 149, { + strings[270], + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[277], + strings[278], + strings[279], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type = new enumeration_type(strings[280], 152, { + strings[281], + strings[282], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCardinalPointReference_type = new type_declaration(strings[283], 153, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcChangeActionEnum_type = new enumeration_type(strings[284], 164, { + strings[285], + strings[286], + strings[287], + strings[288], + strings[9] + }); + IFC4X3_RC2_IfcChillerTypeEnum_type = new enumeration_type(strings[289], 167, { + strings[290], + strings[291], + strings[292], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcChimneyTypeEnum_type = new enumeration_type(strings[293], 170, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCoilTypeEnum_type = new enumeration_type(strings[294], 185, { + strings[295], + strings[296], + strings[297], + strings[298], + strings[299], + strings[300], + strings[301], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcColumnTypeEnum_type = new enumeration_type(strings[302], 194, { + strings[303], + strings[304], + strings[305], + strings[306], + strings[307], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[308], 197, { + strings[309], + strings[310], + strings[4], + strings[311], + strings[312], + strings[313], + strings[314], + strings[315], + strings[316], + strings[317], + strings[318], + strings[319], + strings[320], + strings[321], + strings[322], + strings[323], + strings[324], + strings[325], + strings[326], + strings[327], + strings[328], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcComplexNumber_type = new type_declaration(strings[329], 198, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[330], 201, { + strings[331], + strings[332] + }); + IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[333], 206, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X3_RC2_IfcCompressorTypeEnum_type = new enumeration_type(strings[334], 209, { + strings[335], + strings[336], + strings[337], + strings[338], + strings[339], + strings[340], + strings[341], + strings[342], + strings[343], + strings[344], + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCondenserTypeEnum_type = new enumeration_type(strings[350], 212, { + strings[290], + strings[351], + strings[291], + strings[352], + strings[353], + strings[354], + strings[355], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcConnectionTypeEnum_type = new enumeration_type(strings[356], 220, { + strings[357], + strings[358], + strings[359], + strings[9] + }); + IFC4X3_RC2_IfcConstraintEnum_type = new enumeration_type(strings[360], 223, { + strings[361], + strings[362], + strings[363], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[364], 226, { + strings[365], + strings[366], + strings[367], + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[373], 229, { + strings[374], + strings[375], + strings[376], + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[9], + strings[8] + }); + IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[383], 232, { + strings[384], + strings[385], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcContextDependentMeasure_type = new type_declaration(strings[386], 236, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcControllerTypeEnum_type = new enumeration_type(strings[387], 241, { + strings[388], + strings[389], + strings[390], + strings[391], + strings[392], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type = new enumeration_type(strings[393], 246, { + strings[394], + strings[395], + strings[396], + strings[397], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[398], 249, { + strings[399], + strings[400], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[401], 252, { + strings[402], + strings[403], + strings[404], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCostItemTypeEnum_type = new enumeration_type(strings[405], 257, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[406], 259, { + strings[407], + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[413], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCountMeasure_type = new type_declaration(strings[414], 261, new simple_type(simple_type::number_type)); + IFC4X3_RC2_IfcCourseTypeEnum_type = new enumeration_type(strings[415], 264, { + strings[416], + strings[417], + strings[418], + strings[419], + strings[420], + strings[421], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCoveringTypeEnum_type = new enumeration_type(strings[422], 267, { + strings[423], + strings[424], + strings[425], + strings[426], + strings[427], + strings[428], + strings[225], + strings[429], + strings[430], + strings[431], + strings[432], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[433], 270, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[434], 278, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcCurvatureMeasure_type = new type_declaration(strings[435], 279, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcCurveInterpolationEnum_type = new enumeration_type(strings[436], 284, { + strings[437], + strings[438], + strings[439], + strings[9] + }); + IFC4X3_RC2_IfcDamperTypeEnum_type = new enumeration_type(strings[440], 298, { + strings[441], + strings[442], + strings[443], + strings[444], + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDataOriginEnum_type = new enumeration_type(strings[452], 299, { + strings[453], + strings[454], + strings[455], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDate_type = new type_declaration(strings[456], 300, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcDateTime_type = new type_declaration(strings[457], 301, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcDayInMonthNumber_type = new type_declaration(strings[458], 302, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcDayInWeekNumber_type = new type_declaration(strings[459], 303, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcDerivedUnitEnum_type = new enumeration_type(strings[460], 311, { + strings[461], + strings[462], + strings[463], + strings[464], + strings[465], + strings[466], + strings[467], + strings[468], + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[477], + strings[478], + strings[479], + strings[480], + strings[481], + strings[482], + strings[483], + strings[484], + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[502], + strings[503], + strings[504], + strings[505], + strings[506], + strings[507], + strings[508], + strings[509], + strings[510], + strings[511], + strings[512], + strings[8] + }); + IFC4X3_RC2_IfcDescriptiveMeasure_type = new type_declaration(strings[513], 312, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcDimensionCount_type = new type_declaration(strings[514], 314, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcDirectionSenseEnum_type = new enumeration_type(strings[515], 316, { + strings[516], + strings[517] + }); + IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[518], 321, { + strings[519], + strings[520], + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[535], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDistributionBoardTypeEnum_type = new enumeration_type(strings[536], 324, { + strings[537], + strings[538], + strings[539], + strings[540], + strings[541], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[542], 327, { + strings[543], + strings[544], + strings[545], + strings[546], + strings[547], + strings[548], + strings[549], + strings[550], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[551], 336, { + strings[552], + strings[553], + strings[554], + strings[555], + strings[556], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDistributionSystemEnum_type = new enumeration_type(strings[557], 338, { + strings[558], + strings[559], + strings[560], + strings[561], + strings[562], + strings[563], + strings[564], + strings[565], + strings[566], + strings[567], + strings[568], + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[377], + strings[577], + strings[578], + strings[368], + strings[369], + strings[579], + strings[580], + strings[581], + strings[582], + strings[583], + strings[584], + strings[585], + strings[586], + strings[587], + strings[588], + strings[589], + strings[136], + strings[590], + strings[591], + strings[592], + strings[593], + strings[594], + strings[595], + strings[596], + strings[597], + strings[598], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[599], 339, { + strings[600], + strings[601], + strings[602], + strings[603], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDocumentStatusEnum_type = new enumeration_type(strings[604], 344, { + strings[605], + strings[606], + strings[607], + strings[608], + strings[9] + }); + IFC4X3_RC2_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[609], 347, { + strings[610], + strings[611], + strings[612], + strings[613], + strings[614], + strings[615], + strings[616], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[617], 348, { + strings[618], + strings[619], + strings[620], + strings[9] + }); + IFC4X3_RC2_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[621], 352, { + strings[622], + strings[623], + strings[624], + strings[382], + strings[625], + strings[626], + strings[381], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[627], 353, { + strings[628], + strings[629], + strings[630], + strings[631], + strings[632], + strings[633], + strings[634], + strings[635], + strings[636], + strings[637], + strings[638], + strings[639], + strings[640], + strings[641], + strings[614], + strings[615], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDoorTypeEnum_type = new enumeration_type(strings[642], 355, { + strings[643], + strings[644], + strings[645], + strings[646], + strings[647], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[648], 356, { + strings[628], + strings[629], + strings[630], + strings[631], + strings[632], + strings[633], + strings[634], + strings[635], + strings[636], + strings[637], + strings[638], + strings[639], + strings[640], + strings[641], + strings[614], + strings[615], + strings[649], + strings[650], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDoseEquivalentMeasure_type = new type_declaration(strings[651], 357, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[652], 362, { + strings[250], + strings[263], + strings[264], + strings[265], + strings[266], + strings[653], + strings[267], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[654], 365, { + strings[655], + strings[656], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[657], 368, { + strings[658], + strings[659], + strings[660], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcDuration_type = new type_declaration(strings[661], 369, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcDynamicViscosityMeasure_type = new type_declaration(strings[662], 370, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcEarthworksCutTypeEnum_type = new enumeration_type(strings[663], 372, { + strings[549], + strings[664], + strings[665], + strings[666], + strings[667], + strings[668], + strings[669], + strings[670], + strings[671], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcEarthworksFillTypeEnum_type = new enumeration_type(strings[672], 375, { + strings[673], + strings[674], + strings[675], + strings[676], + strings[677], + strings[678], + strings[679], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[680], 381, { + strings[681], + strings[682], + strings[683], + strings[684], + strings[685], + strings[686], + strings[687], + strings[688], + strings[689], + strings[690], + strings[691], + strings[692], + strings[693], + strings[694], + strings[695], + strings[696], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[697], 382, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcElectricChargeMeasure_type = new type_declaration(strings[698], 383, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcElectricConductanceMeasure_type = new type_declaration(strings[699], 384, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcElectricCurrentMeasure_type = new type_declaration(strings[700], 385, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[701], 388, { + strings[538], + strings[541], + strings[539], + strings[537], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[702], 391, { + strings[703], + strings[704], + strings[705], + strings[706], + strings[707], + strings[708], + strings[709], + strings[710], + strings[711], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type(strings[712], 394, { + strings[713], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[714], 397, { + strings[715], + strings[716], + strings[717], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[718], 400, { + strings[719], + strings[720], + strings[721], + strings[722], + strings[723], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricResistanceMeasure_type = new type_declaration(strings[724], 401, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[725], 404, { + strings[726], + strings[727], + strings[728], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElectricVoltageMeasure_type = new type_declaration(strings[729], 405, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[730], 410, { + strings[731], + strings[732], + strings[733], + strings[734], + strings[221], + strings[735], + strings[736], + strings[737], + strings[223], + strings[205], + strings[209], + strings[211], + strings[738], + strings[206], + strings[739], + strings[740], + strings[741], + strings[742], + strings[743], + strings[744], + strings[745], + strings[746], + strings[747], + strings[748], + strings[749], + strings[750], + strings[751], + strings[752], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcElementCompositionEnum_type = new enumeration_type(strings[753], 413, { + strings[231], + strings[232], + strings[233] + }); + IFC4X3_RC2_IfcEnergyMeasure_type = new type_declaration(strings[754], 420, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcEngineTypeEnum_type = new enumeration_type(strings[755], 423, { + strings[756], + strings[757], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[758], 426, { + strings[759], + strings[760], + strings[761], + strings[762], + strings[763], + strings[764], + strings[765], + strings[766], + strings[767], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[768], 429, { + strings[769], + strings[770], + strings[771], + strings[772], + strings[773], + strings[774], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[775], 432, { + strings[776], + strings[777], + strings[778], + strings[779], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcEventTypeEnum_type = new enumeration_type(strings[780], 434, { + strings[781], + strings[782], + strings[783], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[784], 443, { + strings[785], + strings[786], + strings[787], + strings[788], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type = new enumeration_type(strings[789], 456, { + strings[790], + strings[791], + strings[266], + strings[792], + strings[793], + strings[212], + strings[794], + strings[213], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFacilityUsageEnum_type = new enumeration_type(strings[795], 458, { + strings[796], + strings[797], + strings[798], + strings[799], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFanTypeEnum_type = new enumeration_type(strings[800], 462, { + strings[801], + strings[802], + strings[803], + strings[804], + strings[805], + strings[806], + strings[807], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFastenerTypeEnum_type = new enumeration_type(strings[808], 465, { + strings[809], + strings[810], + strings[811], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFilterTypeEnum_type = new enumeration_type(strings[812], 475, { + strings[813], + strings[814], + strings[815], + strings[816], + strings[817], + strings[818], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[819], 478, { + strings[820], + strings[821], + strings[822], + strings[823], + strings[824], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFlowDirectionEnum_type = new enumeration_type(strings[825], 482, { + strings[826], + strings[827], + strings[828], + strings[9] + }); + IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[829], 487, { + strings[830], + strings[831], + strings[832], + strings[833], + strings[834], + strings[835], + strings[836], + strings[837], + strings[838], + strings[839], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[840], 490, { + strings[841], + strings[842], + strings[843], + strings[844], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcFontStyle_type = new type_declaration(strings[845], 501, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcFontVariant_type = new type_declaration(strings[846], 502, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcFontWeight_type = new type_declaration(strings[847], 503, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcFootingTypeEnum_type = new enumeration_type(strings[848], 506, { + strings[849], + strings[850], + strings[851], + strings[852], + strings[853], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcForceMeasure_type = new type_declaration(strings[854], 507, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcFrequencyMeasure_type = new type_declaration(strings[855], 508, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcFurnitureTypeEnum_type = new enumeration_type(strings[856], 513, { + strings[857], + strings[858], + strings[859], + strings[860], + strings[861], + strings[862], + strings[863], + strings[864], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[865], 516, { + strings[866], + strings[867], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcGeometricProjectionEnum_type = new enumeration_type(strings[868], 518, { + strings[869], + strings[870], + strings[871], + strings[872], + strings[873], + strings[874], + strings[875], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[876], 530, { + strings[877], + strings[878] + }); + IFC4X3_RC2_IfcGloballyUniqueId_type = new type_declaration(strings[879], 529, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcGridTypeEnum_type = new enumeration_type(strings[880], 536, { + strings[659], + strings[881], + strings[882], + strings[883], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[884], 542, { + strings[885], + strings[886], + strings[887], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[888], 543, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcHeatingValueMeasure_type = new type_declaration(strings[889], 544, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcHumidifierTypeEnum_type = new enumeration_type(strings[890], 547, { + strings[891], + strings[892], + strings[893], + strings[894], + strings[895], + strings[896], + strings[897], + strings[898], + strings[899], + strings[900], + strings[901], + strings[902], + strings[903], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcIdentifier_type = new type_declaration(strings[904], 548, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcIlluminanceMeasure_type = new type_declaration(strings[905], 549, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type(strings[906], 553, { + strings[907], + strings[908], + strings[909], + strings[910], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcInductanceMeasure_type = new type_declaration(strings[911], 562, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcInteger_type = new type_declaration(strings[912], 563, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcIntegerCountRateMeasure_type = new type_declaration(strings[913], 564, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcInterceptorTypeEnum_type = new enumeration_type(strings[914], 567, { + strings[915], + strings[916], + strings[581], + strings[917], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcInternalOrExternalEnum_type = new enumeration_type(strings[918], 569, { + strings[919], + strings[785], + strings[786], + strings[787], + strings[788], + strings[9] + }); + IFC4X3_RC2_IfcInventoryTypeEnum_type = new enumeration_type(strings[920], 572, { + strings[921], + strings[922], + strings[923], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcIonConcentrationMeasure_type = new type_declaration(strings[924], 573, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[925], 577, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[926], 580, { + strings[567], + strings[927], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcKinematicViscosityMeasure_type = new type_declaration(strings[928], 583, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcKnotType_type = new enumeration_type(strings[929], 584, { + strings[930], + strings[931], + strings[932], + strings[145] + }); + IFC4X3_RC2_IfcLabel_type = new type_declaration(strings[933], 585, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[934], 588, { + strings[935], + strings[936], + strings[937], + strings[375], + strings[376], + strings[938], + strings[939], + strings[424], + strings[940], + strings[941], + strings[942], + strings[379], + strings[943], + strings[370], + strings[944], + strings[426], + strings[945], + strings[946], + strings[947], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcLampTypeEnum_type = new enumeration_type(strings[948], 592, { + strings[949], + strings[950], + strings[951], + strings[952], + strings[953], + strings[954], + strings[955], + strings[956], + strings[957], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcLanguageId_type = new type_declaration(strings[958], 593, new named_type(IFC4X3_RC2_IfcIdentifier_type)); + IFC4X3_RC2_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[959], 595, { + strings[960], + strings[961], + strings[962] + }); + IFC4X3_RC2_IfcLengthMeasure_type = new type_declaration(strings[963], 596, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[964], 600, { + strings[965], + strings[966], + strings[967], + strings[9] + }); + IFC4X3_RC2_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[968], 603, { + strings[949], + strings[950], + strings[952], + strings[953], + strings[969], + strings[970], + strings[971], + strings[972], + strings[955], + strings[957], + strings[9] + }); + IFC4X3_RC2_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[973], 606, { + strings[974], + strings[975], + strings[976], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcLinearForceMeasure_type = new type_declaration(strings[977], 618, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLinearMomentMeasure_type = new type_declaration(strings[978], 619, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLinearStiffnessMeasure_type = new type_declaration(strings[979], 624, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLinearVelocityMeasure_type = new type_declaration(strings[980], 625, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type = new enumeration_type(strings[981], 630, { + strings[982], + strings[822], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[983], 631, { + strings[984], + strings[985], + strings[986], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcLogical_type = new type_declaration(strings[987], 633, new simple_type(simple_type::logical_type)); + IFC4X3_RC2_IfcLogicalOperatorEnum_type = new enumeration_type(strings[988], 634, { + strings[989], + strings[990], + strings[991], + strings[992], + strings[993] + }); + IFC4X3_RC2_IfcLuminousFluxMeasure_type = new type_declaration(strings[994], 637, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[995], 638, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcLuminousIntensityMeasure_type = new type_declaration(strings[996], 639, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[997], 640, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMagneticFluxMeasure_type = new type_declaration(strings[998], 641, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMarineFacilityTypeEnum_type = new enumeration_type(strings[999], 646, { + strings[1000], + strings[1001], + strings[676], + strings[1002], + strings[1003], + strings[1004], + strings[1005], + strings[1006], + strings[1007], + strings[1008], + strings[1009], + strings[1010], + strings[1011], + strings[1012], + strings[1013], + strings[1014], + strings[1015], + strings[1016], + strings[1017], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcMarinePartTypeEnum_type = new enumeration_type(strings[1018], 647, { + strings[1019], + strings[1020], + strings[1021], + strings[419], + strings[1022], + strings[1023], + strings[1024], + strings[1025], + strings[1026], + strings[1027], + strings[1028], + strings[1029], + strings[1030], + strings[1031], + strings[1032], + strings[1033], + strings[1034], + strings[1035], + strings[421], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcMassDensityMeasure_type = new type_declaration(strings[1041], 648, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMassFlowRateMeasure_type = new type_declaration(strings[1042], 649, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMassMeasure_type = new type_declaration(strings[1043], 650, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMassPerLengthMeasure_type = new type_declaration(strings[1044], 651, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[1045], 676, { + strings[1046], + strings[1047], + strings[1048], + strings[1049], + strings[1050], + strings[1051], + strings[1052], + strings[1053], + strings[1054], + strings[1055], + strings[1056], + strings[1057], + strings[1058], + strings[1059], + strings[1060], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[1061], 679, { + strings[1062], + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcMemberTypeEnum_type = new enumeration_type(strings[1067], 683, { + strings[1068], + strings[1069], + strings[1070], + strings[1071], + strings[1072], + strings[885], + strings[6], + strings[1073], + strings[1074], + strings[1075], + strings[1076], + strings[1077], + strings[1078], + strings[1079], + strings[1080], + strings[1081], + strings[1082], + strings[1083], + strings[1084], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type(strings[1085], 689, { + strings[1086], + strings[1087], + strings[1088], + strings[1089], + strings[1090], + strings[1091], + strings[1092], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[1093], 690, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[1094], 691, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[1095], 692, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[1096], 693, { + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[1097], 694, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[1098], 695, { + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[1099], 696, { + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X3_RC2_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[1100], 697, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMolecularWeightMeasure_type = new type_declaration(strings[1101], 698, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[1102], 699, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMonetaryMeasure_type = new type_declaration(strings[1103], 700, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcMonthInYearNumber_type = new type_declaration(strings[1104], 702, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcMooringDeviceTypeEnum_type = new enumeration_type(strings[1105], 705, { + strings[1106], + strings[1107], + strings[1108], + strings[1109], + strings[1110], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[1111], 708, { + strings[1112], + strings[1113], + strings[1114], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcNavigationElementTypeEnum_type = new enumeration_type(strings[1115], 712, { + strings[1116], + strings[1117], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[1118], 713, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)); + IFC4X3_RC2_IfcNullStyle_type = new enumeration_type(strings[1119], 715, { + strings[1120] + }); + IFC4X3_RC2_IfcNumericMeasure_type = new type_declaration(strings[1121], 716, new simple_type(simple_type::number_type)); + IFC4X3_RC2_IfcObjectTypeEnum_type = new enumeration_type(strings[1122], 723, { + strings[1123], + strings[1124], + strings[565], + strings[1125], + strings[1126], + strings[1127], + strings[1128], + strings[9] + }); + IFC4X3_RC2_IfcObjectiveEnum_type = new enumeration_type(strings[1129], 720, { + strings[1130], + strings[1131], + strings[1132], + strings[785], + strings[1133], + strings[1134], + strings[1135], + strings[1136], + strings[1137], + strings[1138], + strings[1139], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcOccupantTypeEnum_type = new enumeration_type(strings[1140], 725, { + strings[1141], + strings[1142], + strings[1143], + strings[1144], + strings[1145], + strings[1146], + strings[1147], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[1148], 732, { + strings[1149], + strings[1150], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcOutletTypeEnum_type = new enumeration_type(strings[1151], 741, { + strings[1152], + strings[1153], + strings[1154], + strings[1155], + strings[1156], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPHMeasure_type = new type_declaration(strings[1157], 757, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcParameterValue_type = new type_declaration(strings[1158], 744, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[1159], 750, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[1160], 751, { + strings[1161], + strings[1162], + strings[1163], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPermitTypeEnum_type = new enumeration_type(strings[1164], 754, { + strings[1165], + strings[1166], + strings[1167], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[1168], 759, { + strings[1169], + strings[1170], + strings[9] + }); + IFC4X3_RC2_IfcPileConstructionEnum_type = new enumeration_type(strings[1171], 763, { + strings[1172], + strings[1173], + strings[1174], + strings[1175], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPileTypeEnum_type = new enumeration_type(strings[1176], 765, { + strings[1177], + strings[1178], + strings[1179], + strings[1180], + strings[1181], + strings[1182], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[1183], 768, { + strings[250], + strings[263], + strings[264], + strings[265], + strings[266], + strings[653], + strings[267], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[1184], 771, { + strings[219], + strings[656], + strings[655], + strings[1185], + strings[1186], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPlanarForceMeasure_type = new type_declaration(strings[1187], 776, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcPlaneAngleMeasure_type = new type_declaration(strings[1188], 778, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcPlateTypeEnum_type = new enumeration_type(strings[1189], 783, { + strings[1190], + strings[1191], + strings[1192], + strings[1193], + strings[1194], + strings[1195], + strings[1196], + strings[1197], + strings[1198], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPositiveInteger_type = new type_declaration(strings[1199], 795, new named_type(IFC4X3_RC2_IfcInteger_type)); + IFC4X3_RC2_IfcPositiveLengthMeasure_type = new type_declaration(strings[1200], 796, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)); + IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[1201], 797, new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type)); + IFC4X3_RC2_IfcPowerMeasure_type = new type_declaration(strings[1202], 800, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[1203], 807, { + strings[1204], + strings[1205], + strings[1206] + }); + IFC4X3_RC2_IfcPresentableText_type = new type_declaration(strings[1207], 808, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcPressureMeasure_type = new type_declaration(strings[1208], 815, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcProcedureTypeEnum_type = new enumeration_type(strings[1209], 818, { + strings[1210], + strings[1211], + strings[1212], + strings[1213], + strings[1214], + strings[1215], + strings[1216], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcProfileTypeEnum_type = new enumeration_type(strings[1217], 828, { + strings[1218], + strings[1219] + }); + IFC4X3_RC2_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[1220], 836, { + strings[1221], + strings[1222], + strings[1223], + strings[1224], + strings[1225], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[1226], 831, { + strings[1227], + strings[1228] + }); + IFC4X3_RC2_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[1229], 833, { + strings[1230], + strings[1231], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[1232], 851, { + strings[1233], + strings[1234], + strings[1235], + strings[1236], + strings[1237], + strings[1238], + strings[1239], + strings[9] + }); + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[1240], 859, { + strings[1241], + strings[1242], + strings[1243], + strings[1244], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[1245], 861, { + strings[1246], + strings[1247], + strings[1248], + strings[1249], + strings[1250], + strings[1251], + strings[1252], + strings[1253], + strings[1254], + strings[1255], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcPumpTypeEnum_type = new enumeration_type(strings[1256], 865, { + strings[1257], + strings[1258], + strings[1259], + strings[1260], + strings[1261], + strings[1262], + strings[1263], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRadioActivityMeasure_type = new type_declaration(strings[1264], 873, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcRailTypeEnum_type = new enumeration_type(strings[1265], 879, { + strings[1266], + strings[1267], + strings[1268], + strings[1269], + strings[1270], + strings[1271], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRailingTypeEnum_type = new enumeration_type(strings[1272], 877, { + strings[1273], + strings[1268], + strings[1274], + strings[1275], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRailwayPartTypeEnum_type = new enumeration_type(strings[1276], 881, { + strings[1277], + strings[1278], + strings[1279], + strings[1280], + strings[1281], + strings[1282], + strings[213], + strings[1283], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRampFlightTypeEnum_type = new enumeration_type(strings[1284], 885, { + strings[1285], + strings[1286], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRampTypeEnum_type = new enumeration_type(strings[1287], 887, { + strings[1288], + strings[1289], + strings[1290], + strings[1291], + strings[1292], + strings[1293], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRatioMeasure_type = new type_declaration(strings[1294], 888, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcReal_type = new type_declaration(strings[1295], 891, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1296], 897, { + strings[1297], + strings[1298], + strings[1299], + strings[1300], + strings[1301], + strings[1302], + strings[1303], + strings[1304] + }); + IFC4X3_RC2_IfcReferentTypeEnum_type = new enumeration_type(strings[1305], 900, { + strings[1306], + strings[1307], + strings[1308], + strings[1309], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1310], 901, { + strings[1311], + strings[1312], + strings[1313], + strings[1314], + strings[380], + strings[1315], + strings[1316], + strings[381], + strings[1317], + strings[9] + }); + IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type = new enumeration_type(strings[1318], 904, { + strings[1319], + strings[1320], + strings[1321], + strings[1322], + strings[1323], + strings[1324], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1325], 908, { + strings[1326], + strings[1327], + strings[1328], + strings[1077], + strings[1329], + strings[1330], + strings[1331], + strings[1332], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1333], 909, { + strings[1334], + strings[1335] + }); + IFC4X3_RC2_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1336], 911, { + strings[1332], + strings[1330], + strings[1328], + strings[1326], + strings[1329], + strings[1331], + strings[1327], + strings[1077], + strings[1337], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1338], 916, { + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRoadPartTypeEnum_type = new enumeration_type(strings[1339], 984, { + strings[1340], + strings[1341], + strings[1342], + strings[202], + strings[1343], + strings[1344], + strings[1345], + strings[1346], + strings[1347], + strings[1348], + strings[1349], + strings[1350], + strings[1351], + strings[1352], + strings[1353], + strings[1354], + strings[1355], + strings[1356], + strings[1357], + strings[1358], + strings[1359], + strings[1360], + strings[1361], + strings[1362], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRoleEnum_type = new enumeration_type(strings[1363], 985, { + strings[1364], + strings[1365], + strings[1366], + strings[1367], + strings[1368], + strings[1369], + strings[1370], + strings[1371], + strings[1372], + strings[1373], + strings[1374], + strings[1375], + strings[1376], + strings[1377], + strings[1378], + strings[1379], + strings[1380], + strings[1146], + strings[1381], + strings[1382], + strings[1383], + strings[1384], + strings[8] + }); + IFC4X3_RC2_IfcRoofTypeEnum_type = new enumeration_type(strings[1385], 988, { + strings[1386], + strings[1387], + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[1395], + strings[1396], + strings[1397], + strings[1398], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1399], 990, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcRotationalMassMeasure_type = new type_declaration(strings[1400], 991, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1401], 992, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcRotationalStiffnessSelect_type = new select_type(strings[1402], 993, { + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcRotationalStiffnessMeasure_type + }); + IFC4X3_RC2_IfcSIPrefix_type = new enumeration_type(strings[1403], 1036, { + strings[1404], + strings[1405], + strings[1406], + strings[1407], + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[1417], + strings[1418], + strings[1419] + }); + IFC4X3_RC2_IfcSIUnitName_type = new enumeration_type(strings[1420], 1039, { + strings[1421], + strings[1422], + strings[1423], + strings[1424], + strings[1425], + strings[1426], + strings[1427], + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434], + strings[1435], + strings[1436], + strings[1437], + strings[1438], + strings[1439], + strings[1440], + strings[1441], + strings[1442], + strings[1443], + strings[1444], + strings[1445], + strings[1446], + strings[1447], + strings[1448], + strings[1449], + strings[1450] + }); + IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1451], 997, { + strings[1452], + strings[1453], + strings[1454], + strings[1455], + strings[827], + strings[1456], + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSectionModulusMeasure_type = new type_declaration(strings[1461], 1005, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSectionTypeEnum_type = new enumeration_type(strings[1462], 1008, { + strings[1463], + strings[1464] + }); + IFC4X3_RC2_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1465], 1000, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSensorTypeEnum_type = new enumeration_type(strings[1466], 1014, { + strings[1467], + strings[1468], + strings[1469], + strings[1470], + strings[1471], + strings[1472], + strings[1473], + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[1480], + strings[1481], + strings[1482], + strings[1483], + strings[1484], + strings[1485], + strings[1486], + strings[1487], + strings[1488], + strings[1489], + strings[1490], + strings[1491], + strings[1492], + strings[1493], + strings[1494], + strings[1495], + strings[1496], + strings[1497], + strings[1498], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSequenceEnum_type = new enumeration_type(strings[1499], 1015, { + strings[1500], + strings[1501], + strings[1502], + strings[1503], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1504], 1019, { + strings[1505], + strings[1506], + strings[1507], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcShearModulusMeasure_type = new type_declaration(strings[1508], 1023, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSignTypeEnum_type = new enumeration_type(strings[1509], 1031, { + strings[1510], + strings[1511], + strings[1315], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSignalTypeEnum_type = new enumeration_type(strings[1512], 1029, { + strings[1513], + strings[1514], + strings[1515], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1516], 1034, { + strings[1517], + strings[1518], + strings[1519], + strings[1520], + strings[1521], + strings[1522], + strings[1523], + strings[1524], + strings[1525], + strings[1526], + strings[1527], + strings[1528] + }); + IFC4X3_RC2_IfcSlabTypeEnum_type = new enumeration_type(strings[1529], 1045, { + strings[1530], + strings[1531], + strings[1532], + strings[1533], + strings[1534], + strings[370], + strings[1535], + strings[1349], + strings[1536], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1537], 1049, { + strings[1538], + strings[1539], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSolidAngleMeasure_type = new type_declaration(strings[1540], 1050, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1541], 1054, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSoundPowerMeasure_type = new type_declaration(strings[1542], 1055, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1543], 1056, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSoundPressureMeasure_type = new type_declaration(strings[1544], 1057, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1545], 1062, { + strings[1546], + strings[1547], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSpaceTypeEnum_type = new enumeration_type(strings[1548], 1064, { + strings[1549], + strings[1550], + strings[1551], + strings[919], + strings[785], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1552], 1072, { + strings[1553], + strings[1554], + strings[369], + strings[1555], + strings[586], + strings[1244], + strings[23], + strings[593], + strings[1556], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1557], 1073, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSpecularExponent_type = new type_declaration(strings[1558], 1074, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcSpecularRoughness_type = new type_declaration(strings[1559], 1076, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1560], 1081, { + strings[1561], + strings[1562], + strings[1563], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1564], 1085, { + strings[1285], + strings[1565], + strings[1286], + strings[1566], + strings[1398], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcStairTypeEnum_type = new enumeration_type(strings[1567], 1087, { + strings[1568], + strings[1569], + strings[1570], + strings[1571], + strings[1572], + strings[1573], + strings[1574], + strings[1575], + strings[1576], + strings[1577], + strings[1578], + strings[1579], + strings[1580], + strings[1581], + strings[1582], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcStateEnum_type = new enumeration_type(strings[1583], 1088, { + strings[1584], + strings[1585], + strings[1586], + strings[1587], + strings[1588] + }); + IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1589], 1096, { + strings[1590], + strings[437], + strings[1591], + strings[1592], + strings[1593], + strings[1594], + strings[1595], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1596], 1099, { + strings[1597], + strings[1598], + strings[552], + strings[1599], + strings[1600], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1601], 1125, { + strings[1590], + strings[1602], + strings[1595], + strings[1603], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1604], 1128, { + strings[1605], + strings[1606], + strings[1607], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1608], 1137, { + strings[1609], + strings[1167], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1610], 1143, { + strings[1611], + strings[1612], + strings[1613], + strings[1614], + strings[1615], + strings[1616], + strings[1617], + strings[1618], + strings[1619], + strings[1620], + strings[1621], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSurfaceSide_type = new enumeration_type(strings[1622], 1148, { + strings[516], + strings[517], + strings[1623] + }); + IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1624], 1163, { + strings[1625], + strings[1626], + strings[1627], + strings[1628], + strings[1629], + strings[1630], + strings[1631], + strings[1632], + strings[1633], + strings[728], + strings[1634], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1635], 1167, { + strings[1636], + strings[1637], + strings[1638], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTankTypeEnum_type = new enumeration_type(strings[1639], 1173, { + strings[1640], + strings[1641], + strings[1642], + strings[1643], + strings[1644], + strings[1027], + strings[1645], + strings[1646], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTaskDurationEnum_type = new enumeration_type(strings[1647], 1175, { + strings[1648], + strings[1649], + strings[9] + }); + IFC4X3_RC2_IfcTaskTypeEnum_type = new enumeration_type(strings[1650], 1179, { + strings[1651], + strings[1553], + strings[1652], + strings[1653], + strings[568], + strings[1654], + strings[1655], + strings[1656], + strings[1657], + strings[1658], + strings[1659], + strings[1660], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1661], 1181, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1662], 1182, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1663], 1186, { + strings[1056], + strings[1664], + strings[1665], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTendonConduitTypeEnum_type = new enumeration_type(strings[1666], 1189, { + strings[554], + strings[1056], + strings[1667], + strings[1668], + strings[1669], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTendonTypeEnum_type = new enumeration_type(strings[1670], 1191, { + strings[1671], + strings[1672], + strings[1673], + strings[1674], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcText_type = new type_declaration(strings[1675], 1194, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcTextAlignment_type = new type_declaration(strings[1676], 1195, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcTextDecoration_type = new type_declaration(strings[1677], 1196, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcTextFontName_type = new type_declaration(strings[1678], 1197, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcTextPath_type = new enumeration_type(strings[1679], 1201, { + strings[618], + strings[620], + strings[1680], + strings[1681] + }); + IFC4X3_RC2_IfcTextTransformation_type = new type_declaration(strings[1682], 1206, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1683], 1212, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcThermalConductivityMeasure_type = new type_declaration(strings[1684], 1213, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1685], 1214, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcThermalResistanceMeasure_type = new type_declaration(strings[1686], 1215, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1687], 1216, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1688], 1217, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcTime_type = new type_declaration(strings[1689], 1218, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcTimeMeasure_type = new type_declaration(strings[1690], 1219, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcTimeOrRatioSelect_type = new select_type(strings[1691], 1220, { + IFC4X3_RC2_IfcDuration_type, + IFC4X3_RC2_IfcRatioMeasure_type + }); + IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1692], 1223, { + strings[1693], + strings[1595], + strings[1694], + strings[1695], + strings[1696], + strings[1697], + strings[9] + }); + IFC4X3_RC2_IfcTimeStamp_type = new type_declaration(strings[1698], 1225, new simple_type(simple_type::integer_type)); + IFC4X3_RC2_IfcTorqueMeasure_type = new type_declaration(strings[1699], 1229, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcTrackElementTypeEnum_type = new enumeration_type(strings[1700], 1232, { + strings[1701], + strings[1702], + strings[1703], + strings[1704], + strings[1705], + strings[1706], + strings[1707], + strings[1708], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTransformerTypeEnum_type = new enumeration_type(strings[1709], 1235, { + strings[32], + strings[1710], + strings[1711], + strings[1712], + strings[1713], + strings[1714], + strings[838], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTransitionCode_type = new enumeration_type(strings[1715], 1236, { + strings[1716], + strings[1693], + strings[1717], + strings[1718] + }); + IFC4X3_RC2_IfcTransitionCurveType_type = new enumeration_type(strings[1719], 1238, { + strings[82], + strings[83], + strings[1720], + strings[84], + strings[1721], + strings[85] + }); + IFC4X3_RC2_IfcTranslationalStiffnessSelect_type = new select_type(strings[1722], 1239, { + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcLinearStiffnessMeasure_type + }); + IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type = new enumeration_type(strings[1723], 1241, { + strings[1724], + strings[1725], + strings[1726], + strings[1727], + strings[1728], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type(strings[1729], 1242, { + strings[1730], + strings[1731], + strings[1732], + strings[1733], + strings[1734], + strings[1735], + strings[1736], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcTransportElementTypeSelect_type = new select_type(strings[1737], 1244, { + IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type + }); + IFC4X3_RC2_IfcTrimmingPreference_type = new enumeration_type(strings[1738], 1249, { + strings[1739], + strings[1136], + strings[145] + }); + IFC4X3_RC2_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1740], 1254, { + strings[1741], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcURIReference_type = new type_declaration(strings[1742], 1268, new simple_type(simple_type::string_type)); + IFC4X3_RC2_IfcUnitEnum_type = new enumeration_type(strings[1743], 1267, { + strings[1744], + strings[1745], + strings[1746], + strings[1747], + strings[1748], + strings[1749], + strings[1750], + strings[1751], + strings[1752], + strings[1753], + strings[1754], + strings[1755], + strings[1756], + strings[1757], + strings[1758], + strings[1759], + strings[1760], + strings[1761], + strings[1762], + strings[1763], + strings[1764], + strings[1765], + strings[1766], + strings[1767], + strings[1768], + strings[1769], + strings[1770], + strings[1771], + strings[1772], + strings[8] + }); + IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1773], 1262, { + strings[1774], + strings[1775], + strings[1776], + strings[1777], + strings[1778], + strings[1779], + strings[1780], + strings[1781], + strings[838], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1782], 1265, { + strings[1783], + strings[1784], + strings[1785], + strings[1786], + strings[1787], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcValveTypeEnum_type = new enumeration_type(strings[1788], 1273, { + strings[1789], + strings[1790], + strings[1791], + strings[1792], + strings[1793], + strings[1794], + strings[1795], + strings[1796], + strings[1797], + strings[1798], + strings[1799], + strings[1800], + strings[1801], + strings[1802], + strings[1803], + strings[1804], + strings[1805], + strings[1806], + strings[1807], + strings[1808], + strings[1809], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1810], 1274, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcVibrationDamperTypeEnum_type = new enumeration_type(strings[1811], 1282, { + strings[1812], + strings[1813], + strings[1814], + strings[1181], + strings[1815], + strings[1816], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1817], 1285, { + strings[1818], + strings[1819], + strings[1820], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1821], 1289, { + strings[1822], + strings[1823], + strings[1824], + strings[1825], + strings[1826], + strings[1330], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcVolumeMeasure_type = new type_declaration(strings[1827], 1291, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1828], 1292, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcWallTypeEnum_type = new enumeration_type(strings[1829], 1297, { + strings[1830], + strings[1831], + strings[1832], + strings[1833], + strings[1327], + strings[1834], + strings[1835], + strings[1591], + strings[1836], + strings[1837], + strings[1838], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWarpingConstantMeasure_type = new type_declaration(strings[1839], 1298, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcWarpingMomentMeasure_type = new type_declaration(strings[1840], 1299, new simple_type(simple_type::real_type)); + IFC4X3_RC2_IfcWarpingStiffnessSelect_type = new select_type(strings[1841], 1300, { + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC2_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1842], 1303, { + strings[1843], + strings[1844], + strings[1845], + strings[1846], + strings[1847], + strings[1848], + strings[1849], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1850], 1307, { + strings[1851], + strings[1852], + strings[1853], + strings[1854], + strings[1855], + strings[1856], + strings[1857], + strings[1858], + strings[1859], + strings[1860], + strings[1861], + strings[1862], + strings[1863], + strings[9] + }); + IFC4X3_RC2_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1864], 1308, { + strings[618], + strings[619], + strings[620], + strings[1865], + strings[1866], + strings[9] + }); + IFC4X3_RC2_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1867], 1312, { + strings[622], + strings[623], + strings[624], + strings[382], + strings[625], + strings[381], + strings[1868], + strings[9] + }); + IFC4X3_RC2_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1869], 1313, { + strings[1870], + strings[1871], + strings[1872], + strings[1873], + strings[1874], + strings[1875], + strings[1876], + strings[1877], + strings[1878], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWindowTypeEnum_type = new enumeration_type(strings[1879], 1315, { + strings[1880], + strings[1881], + strings[1882], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1883], 1316, { + strings[1870], + strings[1871], + strings[1872], + strings[1873], + strings[1874], + strings[1875], + strings[1876], + strings[1877], + strings[1878], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1884], 1318, { + strings[1885], + strings[1886], + strings[1887], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1888], 1321, { + strings[1889], + strings[1890], + strings[1891], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1892], 1323, { + strings[1889], + strings[1890], + strings[1891], + strings[8], + strings[9] + }); + IFC4X3_RC2_IfcActorRole_type = new entity(strings[1893], false, 7, 0); + IFC4X3_RC2_IfcAddress_type = new entity(strings[1894], true, 12, 0); + IFC4X3_RC2_IfcAlignmentParameterSegment_type = new entity(strings[1895], true, 40, 0); + IFC4X3_RC2_IfcAlignmentVerticalSegment_type = new entity(strings[1896], false, 44, IFC4X3_RC2_IfcAlignmentParameterSegment_type); + IFC4X3_RC2_IfcApplication_type = new entity(strings[1897], false, 53, 0); + IFC4X3_RC2_IfcAppliedValue_type = new entity(strings[1898], false, 54, 0); + IFC4X3_RC2_IfcApproval_type = new entity(strings[1899], false, 56, 0); + IFC4X3_RC2_IfcBoundaryCondition_type = new entity(strings[1900], true, 100, 0); + IFC4X3_RC2_IfcBoundaryEdgeCondition_type = new entity(strings[1901], false, 102, IFC4X3_RC2_IfcBoundaryCondition_type); + IFC4X3_RC2_IfcBoundaryFaceCondition_type = new entity(strings[1902], false, 103, IFC4X3_RC2_IfcBoundaryCondition_type); + IFC4X3_RC2_IfcBoundaryNodeCondition_type = new entity(strings[1903], false, 104, IFC4X3_RC2_IfcBoundaryCondition_type); + IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type = new entity(strings[1904], false, 105, IFC4X3_RC2_IfcBoundaryNodeCondition_type); + IFC4X3_RC2_IfcConnectionGeometry_type = new entity(strings[1905], true, 216, 0); + IFC4X3_RC2_IfcConnectionPointGeometry_type = new entity(strings[1906], false, 218, IFC4X3_RC2_IfcConnectionGeometry_type); + IFC4X3_RC2_IfcConnectionSurfaceGeometry_type = new entity(strings[1907], false, 219, IFC4X3_RC2_IfcConnectionGeometry_type); + IFC4X3_RC2_IfcConnectionVolumeGeometry_type = new entity(strings[1908], false, 221, IFC4X3_RC2_IfcConnectionGeometry_type); + IFC4X3_RC2_IfcConstraint_type = new entity(strings[1909], true, 222, 0); + IFC4X3_RC2_IfcCoordinateOperation_type = new entity(strings[1910], true, 253, 0); + IFC4X3_RC2_IfcCoordinateReferenceSystem_type = new entity(strings[1911], true, 254, 0); + IFC4X3_RC2_IfcCostValue_type = new entity(strings[1912], false, 260, IFC4X3_RC2_IfcAppliedValue_type); + IFC4X3_RC2_IfcDerivedUnit_type = new entity(strings[1913], false, 309, 0); + IFC4X3_RC2_IfcDerivedUnitElement_type = new entity(strings[1914], false, 310, 0); + IFC4X3_RC2_IfcDimensionalExponents_type = new entity(strings[1915], false, 313, 0); + IFC4X3_RC2_IfcExternalInformation_type = new entity(strings[1916], true, 436, 0); + IFC4X3_RC2_IfcExternalReference_type = new entity(strings[1917], true, 440, 0); + IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type = new entity(strings[1918], false, 437, IFC4X3_RC2_IfcExternalReference_type); + IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1919], false, 438, IFC4X3_RC2_IfcExternalReference_type); + IFC4X3_RC2_IfcExternallyDefinedTextFont_type = new entity(strings[1920], false, 439, IFC4X3_RC2_IfcExternalReference_type); + IFC4X3_RC2_IfcGridAxis_type = new entity(strings[1921], false, 533, 0); + IFC4X3_RC2_IfcIrregularTimeSeriesValue_type = new entity(strings[1922], false, 575, 0); + IFC4X3_RC2_IfcLibraryInformation_type = new entity(strings[1923], false, 597, IFC4X3_RC2_IfcExternalInformation_type); + IFC4X3_RC2_IfcLibraryReference_type = new entity(strings[1924], false, 598, IFC4X3_RC2_IfcExternalReference_type); + IFC4X3_RC2_IfcLightDistributionData_type = new entity(strings[1925], false, 601, 0); + IFC4X3_RC2_IfcLightIntensityDistribution_type = new entity(strings[1926], false, 607, 0); + IFC4X3_RC2_IfcMapConversion_type = new entity(strings[1927], false, 643, IFC4X3_RC2_IfcCoordinateOperation_type); + IFC4X3_RC2_IfcMaterialClassificationRelationship_type = new entity(strings[1928], false, 653, 0); + IFC4X3_RC2_IfcMaterialDefinition_type = new entity(strings[1929], true, 656, 0); + IFC4X3_RC2_IfcMaterialLayer_type = new entity(strings[1930], false, 658, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialLayerSet_type = new entity(strings[1931], false, 659, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialLayerWithOffsets_type = new entity(strings[1932], false, 661, IFC4X3_RC2_IfcMaterialLayer_type); + IFC4X3_RC2_IfcMaterialList_type = new entity(strings[1933], false, 662, 0); + IFC4X3_RC2_IfcMaterialProfile_type = new entity(strings[1934], false, 663, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialProfileSet_type = new entity(strings[1935], false, 664, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialProfileWithOffsets_type = new entity(strings[1936], false, 667, IFC4X3_RC2_IfcMaterialProfile_type); + IFC4X3_RC2_IfcMaterialUsageDefinition_type = new entity(strings[1937], true, 671, 0); + IFC4X3_RC2_IfcMeasureWithUnit_type = new entity(strings[1938], false, 673, 0); + IFC4X3_RC2_IfcMetric_type = new entity(strings[1939], false, 684, IFC4X3_RC2_IfcConstraint_type); + IFC4X3_RC2_IfcMonetaryUnit_type = new entity(strings[1940], false, 701, 0); + IFC4X3_RC2_IfcNamedUnit_type = new entity(strings[1941], true, 709, 0); + IFC4X3_RC2_IfcObjectPlacement_type = new entity(strings[1942], true, 721, 0); + IFC4X3_RC2_IfcObjective_type = new entity(strings[1943], false, 719, IFC4X3_RC2_IfcConstraint_type); + IFC4X3_RC2_IfcOrganization_type = new entity(strings[1944], false, 735, 0); + IFC4X3_RC2_IfcOwnerHistory_type = new entity(strings[1945], false, 742, 0); + IFC4X3_RC2_IfcPerson_type = new entity(strings[1946], false, 755, 0); + IFC4X3_RC2_IfcPersonAndOrganization_type = new entity(strings[1947], false, 756, 0); + IFC4X3_RC2_IfcPhysicalQuantity_type = new entity(strings[1948], true, 760, 0); + IFC4X3_RC2_IfcPhysicalSimpleQuantity_type = new entity(strings[1949], true, 761, IFC4X3_RC2_IfcPhysicalQuantity_type); + IFC4X3_RC2_IfcPostalAddress_type = new entity(strings[1950], false, 799, IFC4X3_RC2_IfcAddress_type); + IFC4X3_RC2_IfcPresentationItem_type = new entity(strings[1951], true, 809, 0); + IFC4X3_RC2_IfcPresentationLayerAssignment_type = new entity(strings[1952], false, 810, 0); + IFC4X3_RC2_IfcPresentationLayerWithStyle_type = new entity(strings[1953], false, 811, IFC4X3_RC2_IfcPresentationLayerAssignment_type); + IFC4X3_RC2_IfcPresentationStyle_type = new entity(strings[1954], true, 812, 0); + IFC4X3_RC2_IfcPresentationStyleAssignment_type = new entity(strings[1955], false, 813, 0); + IFC4X3_RC2_IfcProductRepresentation_type = new entity(strings[1956], true, 823, 0); + IFC4X3_RC2_IfcProfileDef_type = new entity(strings[1957], false, 826, 0); + IFC4X3_RC2_IfcProjectedCRS_type = new entity(strings[1958], false, 830, IFC4X3_RC2_IfcCoordinateReferenceSystem_type); + IFC4X3_RC2_IfcPropertyAbstraction_type = new entity(strings[1959], true, 838, 0); + IFC4X3_RC2_IfcPropertyEnumeration_type = new entity(strings[1960], false, 843, IFC4X3_RC2_IfcPropertyAbstraction_type); + IFC4X3_RC2_IfcQuantityArea_type = new entity(strings[1961], false, 866, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC2_IfcQuantityCount_type = new entity(strings[1962], false, 867, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC2_IfcQuantityLength_type = new entity(strings[1963], false, 868, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC2_IfcQuantityTime_type = new entity(strings[1964], false, 870, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC2_IfcQuantityVolume_type = new entity(strings[1965], false, 871, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC2_IfcQuantityWeight_type = new entity(strings[1966], false, 872, IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC2_IfcRecurrencePattern_type = new entity(strings[1967], false, 896, 0); + IFC4X3_RC2_IfcReference_type = new entity(strings[1968], false, 898, 0); + IFC4X3_RC2_IfcRepresentation_type = new entity(strings[1969], true, 968, 0); + IFC4X3_RC2_IfcRepresentationContext_type = new entity(strings[1970], true, 969, 0); + IFC4X3_RC2_IfcRepresentationItem_type = new entity(strings[1971], true, 970, 0); + IFC4X3_RC2_IfcRepresentationMap_type = new entity(strings[1972], false, 971, 0); + IFC4X3_RC2_IfcResourceLevelRelationship_type = new entity(strings[1973], true, 975, 0); + IFC4X3_RC2_IfcRoot_type = new entity(strings[1974], true, 989, 0); + IFC4X3_RC2_IfcSIUnit_type = new entity(strings[1975], false, 1038, IFC4X3_RC2_IfcNamedUnit_type); + IFC4X3_RC2_IfcSchedulingTime_type = new entity(strings[1976], true, 998, 0); + IFC4X3_RC2_IfcShapeAspect_type = new entity(strings[1977], false, 1020, 0); + IFC4X3_RC2_IfcShapeModel_type = new entity(strings[1978], true, 1021, IFC4X3_RC2_IfcRepresentation_type); + IFC4X3_RC2_IfcShapeRepresentation_type = new entity(strings[1979], false, 1022, IFC4X3_RC2_IfcShapeModel_type); + IFC4X3_RC2_IfcStructuralConnectionCondition_type = new entity(strings[1980], true, 1094, 0); + IFC4X3_RC2_IfcStructuralLoad_type = new entity(strings[1981], true, 1104, 0); + IFC4X3_RC2_IfcStructuralLoadConfiguration_type = new entity(strings[1982], false, 1106, IFC4X3_RC2_IfcStructuralLoad_type); + IFC4X3_RC2_IfcStructuralLoadOrResult_type = new entity(strings[1983], true, 1109, IFC4X3_RC2_IfcStructuralLoad_type); + IFC4X3_RC2_IfcStructuralLoadStatic_type = new entity(strings[1984], true, 1115, IFC4X3_RC2_IfcStructuralLoadOrResult_type); + IFC4X3_RC2_IfcStructuralLoadTemperature_type = new entity(strings[1985], false, 1116, IFC4X3_RC2_IfcStructuralLoadStatic_type); + IFC4X3_RC2_IfcStyleModel_type = new entity(strings[1986], true, 1134, IFC4X3_RC2_IfcRepresentation_type); + IFC4X3_RC2_IfcStyledItem_type = new entity(strings[1987], false, 1132, IFC4X3_RC2_IfcRepresentationItem_type); + IFC4X3_RC2_IfcStyledRepresentation_type = new entity(strings[1988], false, 1133, IFC4X3_RC2_IfcStyleModel_type); + IFC4X3_RC2_IfcSurfaceReinforcementArea_type = new entity(strings[1989], false, 1147, IFC4X3_RC2_IfcStructuralLoadOrResult_type); + IFC4X3_RC2_IfcSurfaceStyle_type = new entity(strings[1990], false, 1149, IFC4X3_RC2_IfcPresentationStyle_type); + IFC4X3_RC2_IfcSurfaceStyleLighting_type = new entity(strings[1991], false, 1151, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcSurfaceStyleRefraction_type = new entity(strings[1992], false, 1152, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcSurfaceStyleShading_type = new entity(strings[1993], false, 1154, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcSurfaceStyleWithTextures_type = new entity(strings[1994], false, 1155, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcSurfaceTexture_type = new entity(strings[1995], true, 1156, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcTable_type = new entity(strings[1996], false, 1168, 0); + IFC4X3_RC2_IfcTableColumn_type = new entity(strings[1997], false, 1169, 0); + IFC4X3_RC2_IfcTableRow_type = new entity(strings[1998], false, 1170, 0); + IFC4X3_RC2_IfcTaskTime_type = new entity(strings[1999], false, 1176, IFC4X3_RC2_IfcSchedulingTime_type); + IFC4X3_RC2_IfcTaskTimeRecurring_type = new entity(strings[2000], false, 1177, IFC4X3_RC2_IfcTaskTime_type); + IFC4X3_RC2_IfcTelecomAddress_type = new entity(strings[2001], false, 1180, IFC4X3_RC2_IfcAddress_type); + IFC4X3_RC2_IfcTextStyle_type = new entity(strings[2002], false, 1202, IFC4X3_RC2_IfcPresentationStyle_type); + IFC4X3_RC2_IfcTextStyleForDefinedFont_type = new entity(strings[2003], false, 1204, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcTextStyleTextModel_type = new entity(strings[2004], false, 1205, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcTextureCoordinate_type = new entity(strings[2005], true, 1207, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcTextureCoordinateGenerator_type = new entity(strings[2006], false, 1208, IFC4X3_RC2_IfcTextureCoordinate_type); + IFC4X3_RC2_IfcTextureMap_type = new entity(strings[2007], false, 1209, IFC4X3_RC2_IfcTextureCoordinate_type); + IFC4X3_RC2_IfcTextureVertex_type = new entity(strings[2008], false, 1210, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcTextureVertexList_type = new entity(strings[2009], false, 1211, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcTimePeriod_type = new entity(strings[2010], false, 1221, 0); + IFC4X3_RC2_IfcTimeSeries_type = new entity(strings[2011], true, 1222, 0); + IFC4X3_RC2_IfcTimeSeriesValue_type = new entity(strings[2012], false, 1224, 0); + IFC4X3_RC2_IfcTopologicalRepresentationItem_type = new entity(strings[2013], true, 1226, IFC4X3_RC2_IfcRepresentationItem_type); + IFC4X3_RC2_IfcTopologyRepresentation_type = new entity(strings[2014], false, 1227, IFC4X3_RC2_IfcShapeModel_type); + IFC4X3_RC2_IfcUnitAssignment_type = new entity(strings[2015], false, 1266, 0); + IFC4X3_RC2_IfcVertex_type = new entity(strings[2016], false, 1277, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcVertexPoint_type = new entity(strings[2017], false, 1279, IFC4X3_RC2_IfcVertex_type); + IFC4X3_RC2_IfcVirtualGridIntersection_type = new entity(strings[2018], false, 1287, 0); + IFC4X3_RC2_IfcWorkTime_type = new entity(strings[2019], false, 1324, IFC4X3_RC2_IfcSchedulingTime_type); + IFC4X3_RC2_IfcActorSelect_type = new select_type(strings[2020], 8, { + IFC4X3_RC2_IfcOrganization_type, + IFC4X3_RC2_IfcPerson_type, + IFC4X3_RC2_IfcPersonAndOrganization_type + }); + IFC4X3_RC2_IfcArcIndex_type = new type_declaration(strings[2021], 61, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))); + IFC4X3_RC2_IfcBendingParameterSelect_type = new select_type(strings[2022], 86, { + IFC4X3_RC2_IfcLengthMeasure_type, + IFC4X3_RC2_IfcPlaneAngleMeasure_type + }); + IFC4X3_RC2_IfcBoxAlignment_type = new type_declaration(strings[2023], 109, new named_type(IFC4X3_RC2_IfcLabel_type)); + IFC4X3_RC2_IfcCurveMeasureSelect_type = new select_type(strings[2024], 285, { + IFC4X3_RC2_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC2_IfcParameterValue_type + }); + IFC4X3_RC2_IfcDerivedMeasureValue_type = new select_type(strings[2025], 307, { + IFC4X3_RC2_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC2_IfcAccelerationMeasure_type, + IFC4X3_RC2_IfcAngularVelocityMeasure_type, + IFC4X3_RC2_IfcAreaDensityMeasure_type, + IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC2_IfcCurvatureMeasure_type, + IFC4X3_RC2_IfcDoseEquivalentMeasure_type, + IFC4X3_RC2_IfcDynamicViscosityMeasure_type, + IFC4X3_RC2_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC2_IfcElectricChargeMeasure_type, + IFC4X3_RC2_IfcElectricConductanceMeasure_type, + IFC4X3_RC2_IfcElectricResistanceMeasure_type, + IFC4X3_RC2_IfcElectricVoltageMeasure_type, + IFC4X3_RC2_IfcEnergyMeasure_type, + IFC4X3_RC2_IfcForceMeasure_type, + IFC4X3_RC2_IfcFrequencyMeasure_type, + IFC4X3_RC2_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC2_IfcHeatingValueMeasure_type, + IFC4X3_RC2_IfcIlluminanceMeasure_type, + IFC4X3_RC2_IfcInductanceMeasure_type, + IFC4X3_RC2_IfcIntegerCountRateMeasure_type, + IFC4X3_RC2_IfcIonConcentrationMeasure_type, + IFC4X3_RC2_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC2_IfcKinematicViscosityMeasure_type, + IFC4X3_RC2_IfcLinearForceMeasure_type, + IFC4X3_RC2_IfcLinearMomentMeasure_type, + IFC4X3_RC2_IfcLinearStiffnessMeasure_type, + IFC4X3_RC2_IfcLinearVelocityMeasure_type, + IFC4X3_RC2_IfcLuminousFluxMeasure_type, + IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC2_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC2_IfcMagneticFluxMeasure_type, + IFC4X3_RC2_IfcMassDensityMeasure_type, + IFC4X3_RC2_IfcMassFlowRateMeasure_type, + IFC4X3_RC2_IfcMassPerLengthMeasure_type, + IFC4X3_RC2_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC2_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC2_IfcMolecularWeightMeasure_type, + IFC4X3_RC2_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC2_IfcMonetaryMeasure_type, + IFC4X3_RC2_IfcPHMeasure_type, + IFC4X3_RC2_IfcPlanarForceMeasure_type, + IFC4X3_RC2_IfcPowerMeasure_type, + IFC4X3_RC2_IfcPressureMeasure_type, + IFC4X3_RC2_IfcRadioActivityMeasure_type, + IFC4X3_RC2_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC2_IfcRotationalMassMeasure_type, + IFC4X3_RC2_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC2_IfcSectionModulusMeasure_type, + IFC4X3_RC2_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC2_IfcShearModulusMeasure_type, + IFC4X3_RC2_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC2_IfcSoundPowerMeasure_type, + IFC4X3_RC2_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC2_IfcSoundPressureMeasure_type, + IFC4X3_RC2_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC2_IfcTemperatureGradientMeasure_type, + IFC4X3_RC2_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC2_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC2_IfcThermalConductivityMeasure_type, + IFC4X3_RC2_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC2_IfcThermalResistanceMeasure_type, + IFC4X3_RC2_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC2_IfcTorqueMeasure_type, + IFC4X3_RC2_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC2_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC2_IfcWarpingConstantMeasure_type, + IFC4X3_RC2_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC2_IfcFacilityPartTypeSelect_type = new select_type(strings[2026], 457, { + IFC4X3_RC2_IfcBridgePartTypeEnum_type, + IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC2_IfcMarinePartTypeEnum_type, + IFC4X3_RC2_IfcRailwayPartTypeEnum_type, + IFC4X3_RC2_IfcRoadPartTypeEnum_type + }); + IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type = new select_type(strings[2027], 554, { + IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC2_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type + }); + IFC4X3_RC2_IfcLayeredItem_type = new select_type(strings[2028], 594, { + IFC4X3_RC2_IfcRepresentation_type, + IFC4X3_RC2_IfcRepresentationItem_type + }); + IFC4X3_RC2_IfcLibrarySelect_type = new select_type(strings[2029], 599, { + IFC4X3_RC2_IfcLibraryInformation_type, + IFC4X3_RC2_IfcLibraryReference_type + }); + IFC4X3_RC2_IfcLightDistributionDataSourceSelect_type = new select_type(strings[2030], 602, { + IFC4X3_RC2_IfcExternalReference_type, + IFC4X3_RC2_IfcLightIntensityDistribution_type + }); + IFC4X3_RC2_IfcLineIndex_type = new type_declaration(strings[2031], 626, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))); + IFC4X3_RC2_IfcMaterialSelect_type = new select_type(strings[2032], 670, { + IFC4X3_RC2_IfcMaterialDefinition_type, + IFC4X3_RC2_IfcMaterialList_type, + IFC4X3_RC2_IfcMaterialUsageDefinition_type + }); + IFC4X3_RC2_IfcNormalisedRatioMeasure_type = new type_declaration(strings[2033], 714, new named_type(IFC4X3_RC2_IfcRatioMeasure_type)); + IFC4X3_RC2_IfcObjectReferenceSelect_type = new select_type(strings[2034], 722, { + IFC4X3_RC2_IfcAddress_type, + IFC4X3_RC2_IfcAppliedValue_type, + IFC4X3_RC2_IfcExternalReference_type, + IFC4X3_RC2_IfcMaterialDefinition_type, + IFC4X3_RC2_IfcOrganization_type, + IFC4X3_RC2_IfcPerson_type, + IFC4X3_RC2_IfcPersonAndOrganization_type, + IFC4X3_RC2_IfcTable_type, + IFC4X3_RC2_IfcTimeSeries_type + }); + IFC4X3_RC2_IfcPositiveRatioMeasure_type = new type_declaration(strings[2035], 798, new named_type(IFC4X3_RC2_IfcRatioMeasure_type)); + IFC4X3_RC2_IfcSegmentIndexSelect_type = new select_type(strings[2036], 1011, { + IFC4X3_RC2_IfcArcIndex_type, + IFC4X3_RC2_IfcLineIndex_type + }); + IFC4X3_RC2_IfcSimpleValue_type = new select_type(strings[2037], 1035, { + IFC4X3_RC2_IfcBinary_type, + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcDate_type, + IFC4X3_RC2_IfcDateTime_type, + IFC4X3_RC2_IfcDuration_type, + IFC4X3_RC2_IfcIdentifier_type, + IFC4X3_RC2_IfcInteger_type, + IFC4X3_RC2_IfcLabel_type, + IFC4X3_RC2_IfcLogical_type, + IFC4X3_RC2_IfcPositiveInteger_type, + IFC4X3_RC2_IfcReal_type, + IFC4X3_RC2_IfcText_type, + IFC4X3_RC2_IfcTime_type, + IFC4X3_RC2_IfcTimeStamp_type + }); + IFC4X3_RC2_IfcSizeSelect_type = new select_type(strings[2038], 1040, { + IFC4X3_RC2_IfcDescriptiveMeasure_type, + IFC4X3_RC2_IfcLengthMeasure_type, + IFC4X3_RC2_IfcNormalisedRatioMeasure_type, + IFC4X3_RC2_IfcPositiveLengthMeasure_type, + IFC4X3_RC2_IfcPositiveRatioMeasure_type, + IFC4X3_RC2_IfcRatioMeasure_type + }); + IFC4X3_RC2_IfcSpecularHighlightSelect_type = new select_type(strings[2039], 1075, { + IFC4X3_RC2_IfcSpecularExponent_type, + IFC4X3_RC2_IfcSpecularRoughness_type + }); + IFC4X3_RC2_IfcStyleAssignmentSelect_type = new select_type(strings[2040], 1131, { + IFC4X3_RC2_IfcPresentationStyle_type, + IFC4X3_RC2_IfcPresentationStyleAssignment_type + }); + IFC4X3_RC2_IfcSurfaceStyleElementSelect_type = new select_type(strings[2041], 1150, { + IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC2_IfcSurfaceStyleLighting_type, + IFC4X3_RC2_IfcSurfaceStyleRefraction_type, + IFC4X3_RC2_IfcSurfaceStyleShading_type, + IFC4X3_RC2_IfcSurfaceStyleWithTextures_type + }); + IFC4X3_RC2_IfcUnit_type = new select_type(strings[2042], 1259, { + IFC4X3_RC2_IfcDerivedUnit_type, + IFC4X3_RC2_IfcMonetaryUnit_type, + IFC4X3_RC2_IfcNamedUnit_type + }); + IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type = new entity(strings[2043], false, 30, IFC4X3_RC2_IfcAlignmentVerticalSegment_type); + IFC4X3_RC2_IfcAlignment2DVerSegLine_type = new entity(strings[2044], false, 31, IFC4X3_RC2_IfcAlignmentVerticalSegment_type); + IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type = new entity(strings[2045], false, 32, IFC4X3_RC2_IfcAlignmentVerticalSegment_type); + IFC4X3_RC2_IfcAlignmentCantSegment_type = new entity(strings[2046], false, 34, IFC4X3_RC2_IfcAlignmentParameterSegment_type); + IFC4X3_RC2_IfcAlignmentHorizontalSegment_type = new entity(strings[2047], false, 38, IFC4X3_RC2_IfcAlignmentParameterSegment_type); + IFC4X3_RC2_IfcApprovalRelationship_type = new entity(strings[2048], false, 57, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcArbitraryClosedProfileDef_type = new entity(strings[2049], false, 58, IFC4X3_RC2_IfcProfileDef_type); + IFC4X3_RC2_IfcArbitraryOpenProfileDef_type = new entity(strings[2050], false, 59, IFC4X3_RC2_IfcProfileDef_type); + IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type = new entity(strings[2051], false, 60, IFC4X3_RC2_IfcArbitraryClosedProfileDef_type); + IFC4X3_RC2_IfcBlobTexture_type = new entity(strings[2052], false, 88, IFC4X3_RC2_IfcSurfaceTexture_type); + IFC4X3_RC2_IfcCenterLineProfileDef_type = new entity(strings[2053], false, 163, IFC4X3_RC2_IfcArbitraryOpenProfileDef_type); + IFC4X3_RC2_IfcClassification_type = new entity(strings[2054], false, 177, IFC4X3_RC2_IfcExternalInformation_type); + IFC4X3_RC2_IfcClassificationReference_type = new entity(strings[2055], false, 178, IFC4X3_RC2_IfcExternalReference_type); + IFC4X3_RC2_IfcColourRgbList_type = new entity(strings[2056], false, 189, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcColourSpecification_type = new entity(strings[2057], true, 190, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcCompositeProfileDef_type = new entity(strings[2058], false, 205, IFC4X3_RC2_IfcProfileDef_type); + IFC4X3_RC2_IfcConnectedFaceSet_type = new entity(strings[2059], false, 214, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcConnectionCurveGeometry_type = new entity(strings[2060], false, 215, IFC4X3_RC2_IfcConnectionGeometry_type); + IFC4X3_RC2_IfcConnectionPointEccentricity_type = new entity(strings[2061], false, 217, IFC4X3_RC2_IfcConnectionPointGeometry_type); + IFC4X3_RC2_IfcContextDependentUnit_type = new entity(strings[2062], false, 237, IFC4X3_RC2_IfcNamedUnit_type); + IFC4X3_RC2_IfcConversionBasedUnit_type = new entity(strings[2063], false, 242, IFC4X3_RC2_IfcNamedUnit_type); + IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type = new entity(strings[2064], false, 243, IFC4X3_RC2_IfcConversionBasedUnit_type); + IFC4X3_RC2_IfcCurrencyRelationship_type = new entity(strings[2065], false, 275, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcCurveStyle_type = new entity(strings[2066], false, 290, IFC4X3_RC2_IfcPresentationStyle_type); + IFC4X3_RC2_IfcCurveStyleFont_type = new entity(strings[2067], false, 291, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcCurveStyleFontAndScaling_type = new entity(strings[2068], false, 292, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcCurveStyleFontPattern_type = new entity(strings[2069], false, 293, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcDerivedProfileDef_type = new entity(strings[2070], false, 308, IFC4X3_RC2_IfcProfileDef_type); + IFC4X3_RC2_IfcDocumentInformation_type = new entity(strings[2071], false, 340, IFC4X3_RC2_IfcExternalInformation_type); + IFC4X3_RC2_IfcDocumentInformationRelationship_type = new entity(strings[2072], false, 341, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcDocumentReference_type = new entity(strings[2073], false, 342, IFC4X3_RC2_IfcExternalReference_type); + IFC4X3_RC2_IfcEdge_type = new entity(strings[2074], false, 376, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcEdgeCurve_type = new entity(strings[2075], false, 377, IFC4X3_RC2_IfcEdge_type); + IFC4X3_RC2_IfcEventTime_type = new entity(strings[2076], false, 431, IFC4X3_RC2_IfcSchedulingTime_type); + IFC4X3_RC2_IfcExtendedProperties_type = new entity(strings[2077], true, 435, IFC4X3_RC2_IfcPropertyAbstraction_type); + IFC4X3_RC2_IfcExternalReferenceRelationship_type = new entity(strings[2078], false, 441, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcFace_type = new entity(strings[2079], false, 447, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcFaceBound_type = new entity(strings[2080], false, 449, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcFaceOuterBound_type = new entity(strings[2081], false, 450, IFC4X3_RC2_IfcFaceBound_type); + IFC4X3_RC2_IfcFaceSurface_type = new entity(strings[2082], false, 451, IFC4X3_RC2_IfcFace_type); + IFC4X3_RC2_IfcFailureConnectionCondition_type = new entity(strings[2083], false, 459, IFC4X3_RC2_IfcStructuralConnectionCondition_type); + IFC4X3_RC2_IfcFillAreaStyle_type = new entity(strings[2084], false, 469, IFC4X3_RC2_IfcPresentationStyle_type); + IFC4X3_RC2_IfcGeometricRepresentationContext_type = new entity(strings[2085], false, 519, IFC4X3_RC2_IfcRepresentationContext_type); + IFC4X3_RC2_IfcGeometricRepresentationItem_type = new entity(strings[2086], true, 520, IFC4X3_RC2_IfcRepresentationItem_type); + IFC4X3_RC2_IfcGeometricRepresentationSubContext_type = new entity(strings[2087], false, 521, IFC4X3_RC2_IfcGeometricRepresentationContext_type); + IFC4X3_RC2_IfcGeometricSet_type = new entity(strings[2088], false, 522, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcGridPlacement_type = new entity(strings[2089], false, 534, IFC4X3_RC2_IfcObjectPlacement_type); + IFC4X3_RC2_IfcHalfSpaceSolid_type = new entity(strings[2090], false, 538, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcImageTexture_type = new entity(strings[2091], false, 550, IFC4X3_RC2_IfcSurfaceTexture_type); + IFC4X3_RC2_IfcIndexedColourMap_type = new entity(strings[2092], false, 556, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcIndexedTextureMap_type = new entity(strings[2093], true, 560, IFC4X3_RC2_IfcTextureCoordinate_type); + IFC4X3_RC2_IfcIndexedTriangleTextureMap_type = new entity(strings[2094], false, 561, IFC4X3_RC2_IfcIndexedTextureMap_type); + IFC4X3_RC2_IfcIrregularTimeSeries_type = new entity(strings[2095], false, 574, IFC4X3_RC2_IfcTimeSeries_type); + IFC4X3_RC2_IfcLagTime_type = new entity(strings[2096], false, 589, IFC4X3_RC2_IfcSchedulingTime_type); + IFC4X3_RC2_IfcLightSource_type = new entity(strings[2097], true, 608, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcLightSourceAmbient_type = new entity(strings[2098], false, 609, IFC4X3_RC2_IfcLightSource_type); + IFC4X3_RC2_IfcLightSourceDirectional_type = new entity(strings[2099], false, 610, IFC4X3_RC2_IfcLightSource_type); + IFC4X3_RC2_IfcLightSourceGoniometric_type = new entity(strings[2100], false, 611, IFC4X3_RC2_IfcLightSource_type); + IFC4X3_RC2_IfcLightSourcePositional_type = new entity(strings[2101], false, 612, IFC4X3_RC2_IfcLightSource_type); + IFC4X3_RC2_IfcLightSourceSpot_type = new entity(strings[2102], false, 613, IFC4X3_RC2_IfcLightSourcePositional_type); + IFC4X3_RC2_IfcLinearAxisWithInclination_type = new entity(strings[2103], false, 616, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcLinearPlacement_type = new entity(strings[2104], false, 620, IFC4X3_RC2_IfcObjectPlacement_type); + IFC4X3_RC2_IfcLinearPlacementWithInclination_type = new entity(strings[2105], false, 621, IFC4X3_RC2_IfcLinearPlacement_type); + IFC4X3_RC2_IfcLinearSpanPlacement_type = new entity(strings[2106], false, 623, IFC4X3_RC2_IfcLinearPlacement_type); + IFC4X3_RC2_IfcLocalPlacement_type = new entity(strings[2107], false, 632, IFC4X3_RC2_IfcObjectPlacement_type); + IFC4X3_RC2_IfcLoop_type = new entity(strings[2108], false, 635, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcMappedItem_type = new entity(strings[2109], false, 644, IFC4X3_RC2_IfcRepresentationItem_type); + IFC4X3_RC2_IfcMaterial_type = new entity(strings[2110], false, 652, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialConstituent_type = new entity(strings[2111], false, 654, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialConstituentSet_type = new entity(strings[2112], false, 655, IFC4X3_RC2_IfcMaterialDefinition_type); + IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type = new entity(strings[2113], false, 657, IFC4X3_RC2_IfcProductRepresentation_type); + IFC4X3_RC2_IfcMaterialLayerSetUsage_type = new entity(strings[2114], false, 660, IFC4X3_RC2_IfcMaterialUsageDefinition_type); + IFC4X3_RC2_IfcMaterialProfileSetUsage_type = new entity(strings[2115], false, 665, IFC4X3_RC2_IfcMaterialUsageDefinition_type); + IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type = new entity(strings[2116], false, 666, IFC4X3_RC2_IfcMaterialProfileSetUsage_type); + IFC4X3_RC2_IfcMaterialProperties_type = new entity(strings[2117], false, 668, IFC4X3_RC2_IfcExtendedProperties_type); + IFC4X3_RC2_IfcMaterialRelationship_type = new entity(strings[2118], false, 669, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcMirroredProfileDef_type = new entity(strings[2119], false, 686, IFC4X3_RC2_IfcDerivedProfileDef_type); + IFC4X3_RC2_IfcObjectDefinition_type = new entity(strings[2120], true, 718, IFC4X3_RC2_IfcRoot_type); + IFC4X3_RC2_IfcOpenCrossProfileDef_type = new entity(strings[2121], false, 730, IFC4X3_RC2_IfcProfileDef_type); + IFC4X3_RC2_IfcOpenShell_type = new entity(strings[2122], false, 734, IFC4X3_RC2_IfcConnectedFaceSet_type); + IFC4X3_RC2_IfcOrganizationRelationship_type = new entity(strings[2123], false, 736, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcOrientedEdge_type = new entity(strings[2124], false, 737, IFC4X3_RC2_IfcEdge_type); + IFC4X3_RC2_IfcParameterizedProfileDef_type = new entity(strings[2125], true, 743, IFC4X3_RC2_IfcProfileDef_type); + IFC4X3_RC2_IfcPath_type = new entity(strings[2126], false, 745, IFC4X3_RC2_IfcTopologicalRepresentationItem_type); + IFC4X3_RC2_IfcPhysicalComplexQuantity_type = new entity(strings[2127], false, 758, IFC4X3_RC2_IfcPhysicalQuantity_type); + IFC4X3_RC2_IfcPixelTexture_type = new entity(strings[2128], false, 772, IFC4X3_RC2_IfcSurfaceTexture_type); + IFC4X3_RC2_IfcPlacement_type = new entity(strings[2129], true, 773, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcPlanarExtent_type = new entity(strings[2130], false, 775, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcPoint_type = new entity(strings[2131], true, 784, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcPointByDistanceExpression_type = new entity(strings[2132], false, 785, IFC4X3_RC2_IfcPoint_type); + IFC4X3_RC2_IfcPointOnCurve_type = new entity(strings[2133], false, 786, IFC4X3_RC2_IfcPoint_type); + IFC4X3_RC2_IfcPointOnSurface_type = new entity(strings[2134], false, 787, IFC4X3_RC2_IfcPoint_type); + IFC4X3_RC2_IfcPolyLoop_type = new entity(strings[2135], false, 792, IFC4X3_RC2_IfcLoop_type); + IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type = new entity(strings[2136], false, 789, IFC4X3_RC2_IfcHalfSpaceSolid_type); + IFC4X3_RC2_IfcPreDefinedItem_type = new entity(strings[2137], true, 803, IFC4X3_RC2_IfcPresentationItem_type); + IFC4X3_RC2_IfcPreDefinedProperties_type = new entity(strings[2138], true, 804, IFC4X3_RC2_IfcPropertyAbstraction_type); + IFC4X3_RC2_IfcPreDefinedTextFont_type = new entity(strings[2139], true, 806, IFC4X3_RC2_IfcPreDefinedItem_type); + IFC4X3_RC2_IfcProductDefinitionShape_type = new entity(strings[2140], false, 822, IFC4X3_RC2_IfcProductRepresentation_type); + IFC4X3_RC2_IfcProfileProperties_type = new entity(strings[2141], false, 827, IFC4X3_RC2_IfcExtendedProperties_type); + IFC4X3_RC2_IfcProperty_type = new entity(strings[2142], true, 837, IFC4X3_RC2_IfcPropertyAbstraction_type); + IFC4X3_RC2_IfcPropertyDefinition_type = new entity(strings[2143], true, 840, IFC4X3_RC2_IfcRoot_type); + IFC4X3_RC2_IfcPropertyDependencyRelationship_type = new entity(strings[2144], false, 841, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcPropertySetDefinition_type = new entity(strings[2145], true, 847, IFC4X3_RC2_IfcPropertyDefinition_type); + IFC4X3_RC2_IfcPropertyTemplateDefinition_type = new entity(strings[2146], true, 855, IFC4X3_RC2_IfcPropertyDefinition_type); + IFC4X3_RC2_IfcQuantitySet_type = new entity(strings[2147], true, 869, IFC4X3_RC2_IfcPropertySetDefinition_type); + IFC4X3_RC2_IfcRectangleProfileDef_type = new entity(strings[2148], false, 893, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcRegularTimeSeries_type = new entity(strings[2149], false, 902, IFC4X3_RC2_IfcTimeSeries_type); + IFC4X3_RC2_IfcReinforcementBarProperties_type = new entity(strings[2150], false, 905, IFC4X3_RC2_IfcPreDefinedProperties_type); + IFC4X3_RC2_IfcRelationship_type = new entity(strings[2151], true, 934, IFC4X3_RC2_IfcRoot_type); + IFC4X3_RC2_IfcResourceApprovalRelationship_type = new entity(strings[2152], false, 973, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcResourceConstraintRelationship_type = new entity(strings[2153], false, 974, IFC4X3_RC2_IfcResourceLevelRelationship_type); + IFC4X3_RC2_IfcResourceTime_type = new entity(strings[2154], false, 978, IFC4X3_RC2_IfcSchedulingTime_type); + IFC4X3_RC2_IfcRoundedRectangleProfileDef_type = new entity(strings[2155], false, 994, IFC4X3_RC2_IfcRectangleProfileDef_type); + IFC4X3_RC2_IfcSectionProperties_type = new entity(strings[2156], false, 1006, IFC4X3_RC2_IfcPreDefinedProperties_type); + IFC4X3_RC2_IfcSectionReinforcementProperties_type = new entity(strings[2157], false, 1007, IFC4X3_RC2_IfcPreDefinedProperties_type); + IFC4X3_RC2_IfcSectionedSpine_type = new entity(strings[2158], false, 1003, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcSegment_type = new entity(strings[2159], true, 1009, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcShellBasedSurfaceModel_type = new entity(strings[2160], false, 1025, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcSimpleProperty_type = new entity(strings[2161], true, 1032, IFC4X3_RC2_IfcProperty_type); + IFC4X3_RC2_IfcSlippageConnectionCondition_type = new entity(strings[2162], false, 1046, IFC4X3_RC2_IfcStructuralConnectionCondition_type); + IFC4X3_RC2_IfcSolidModel_type = new entity(strings[2163], true, 1051, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcStructuralLoadLinearForce_type = new entity(strings[2164], false, 1108, IFC4X3_RC2_IfcStructuralLoadStatic_type); + IFC4X3_RC2_IfcStructuralLoadPlanarForce_type = new entity(strings[2165], false, 1110, IFC4X3_RC2_IfcStructuralLoadStatic_type); + IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type = new entity(strings[2166], false, 1111, IFC4X3_RC2_IfcStructuralLoadStatic_type); + IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[2167], false, 1112, IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type); + IFC4X3_RC2_IfcStructuralLoadSingleForce_type = new entity(strings[2168], false, 1113, IFC4X3_RC2_IfcStructuralLoadStatic_type); + IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type = new entity(strings[2169], false, 1114, IFC4X3_RC2_IfcStructuralLoadSingleForce_type); + IFC4X3_RC2_IfcSubedge_type = new entity(strings[2170], false, 1138, IFC4X3_RC2_IfcEdge_type); + IFC4X3_RC2_IfcSurface_type = new entity(strings[2171], true, 1139, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcSurfaceStyleRendering_type = new entity(strings[2172], false, 1153, IFC4X3_RC2_IfcSurfaceStyleShading_type); + IFC4X3_RC2_IfcSweptAreaSolid_type = new entity(strings[2173], true, 1157, IFC4X3_RC2_IfcSolidModel_type); + IFC4X3_RC2_IfcSweptDiskSolid_type = new entity(strings[2174], false, 1158, IFC4X3_RC2_IfcSolidModel_type); + IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type = new entity(strings[2175], false, 1159, IFC4X3_RC2_IfcSweptDiskSolid_type); + IFC4X3_RC2_IfcSweptSurface_type = new entity(strings[2176], true, 1160, IFC4X3_RC2_IfcSurface_type); + IFC4X3_RC2_IfcTShapeProfileDef_type = new entity(strings[2177], false, 1251, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcTessellatedItem_type = new entity(strings[2178], true, 1193, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcTextLiteral_type = new entity(strings[2179], false, 1199, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcTextLiteralWithExtent_type = new entity(strings[2180], false, 1200, IFC4X3_RC2_IfcTextLiteral_type); + IFC4X3_RC2_IfcTextStyleFontModel_type = new entity(strings[2181], false, 1203, IFC4X3_RC2_IfcPreDefinedTextFont_type); + IFC4X3_RC2_IfcTrapeziumProfileDef_type = new entity(strings[2182], false, 1245, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcTypeObject_type = new entity(strings[2183], false, 1255, IFC4X3_RC2_IfcObjectDefinition_type); + IFC4X3_RC2_IfcTypeProcess_type = new entity(strings[2184], true, 1256, IFC4X3_RC2_IfcTypeObject_type); + IFC4X3_RC2_IfcTypeProduct_type = new entity(strings[2185], false, 1257, IFC4X3_RC2_IfcTypeObject_type); + IFC4X3_RC2_IfcTypeResource_type = new entity(strings[2186], true, 1258, IFC4X3_RC2_IfcTypeObject_type); + IFC4X3_RC2_IfcUShapeProfileDef_type = new entity(strings[2187], false, 1269, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcVector_type = new entity(strings[2188], false, 1275, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcVertexLoop_type = new entity(strings[2189], false, 1278, IFC4X3_RC2_IfcLoop_type); + IFC4X3_RC2_IfcWindowStyle_type = new entity(strings[2190], false, 1311, IFC4X3_RC2_IfcTypeProduct_type); + IFC4X3_RC2_IfcZShapeProfileDef_type = new entity(strings[2191], false, 1326, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcClassificationReferenceSelect_type = new select_type(strings[2192], 179, { + IFC4X3_RC2_IfcClassification_type, + IFC4X3_RC2_IfcClassificationReference_type + }); + IFC4X3_RC2_IfcClassificationSelect_type = new select_type(strings[2193], 180, { + IFC4X3_RC2_IfcClassification_type, + IFC4X3_RC2_IfcClassificationReference_type + }); + IFC4X3_RC2_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[2194], 255, { + IFC4X3_RC2_IfcCoordinateReferenceSystem_type, + IFC4X3_RC2_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC2_IfcDefinitionSelect_type = new select_type(strings[2195], 306, { + IFC4X3_RC2_IfcObjectDefinition_type, + IFC4X3_RC2_IfcPropertyDefinition_type + }); + IFC4X3_RC2_IfcDocumentSelect_type = new select_type(strings[2196], 343, { + IFC4X3_RC2_IfcDocumentInformation_type, + IFC4X3_RC2_IfcDocumentReference_type + }); + IFC4X3_RC2_IfcHatchLineDistanceSelect_type = new select_type(strings[2197], 539, { + IFC4X3_RC2_IfcPositiveLengthMeasure_type, + IFC4X3_RC2_IfcVector_type + }); + IFC4X3_RC2_IfcMeasureValue_type = new select_type(strings[2198], 672, { + IFC4X3_RC2_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC2_IfcAreaMeasure_type, + IFC4X3_RC2_IfcComplexNumber_type, + IFC4X3_RC2_IfcContextDependentMeasure_type, + IFC4X3_RC2_IfcCountMeasure_type, + IFC4X3_RC2_IfcDescriptiveMeasure_type, + IFC4X3_RC2_IfcElectricCurrentMeasure_type, + IFC4X3_RC2_IfcLengthMeasure_type, + IFC4X3_RC2_IfcLuminousIntensityMeasure_type, + IFC4X3_RC2_IfcMassMeasure_type, + IFC4X3_RC2_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC2_IfcNormalisedRatioMeasure_type, + IFC4X3_RC2_IfcNumericMeasure_type, + IFC4X3_RC2_IfcParameterValue_type, + IFC4X3_RC2_IfcPlaneAngleMeasure_type, + IFC4X3_RC2_IfcPositiveLengthMeasure_type, + IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC2_IfcPositiveRatioMeasure_type, + IFC4X3_RC2_IfcRatioMeasure_type, + IFC4X3_RC2_IfcSolidAngleMeasure_type, + IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC2_IfcTimeMeasure_type, + IFC4X3_RC2_IfcVolumeMeasure_type + }); + IFC4X3_RC2_IfcPointOrVertexPoint_type = new select_type(strings[2199], 788, { + IFC4X3_RC2_IfcPoint_type, + IFC4X3_RC2_IfcVertexPoint_type + }); + IFC4X3_RC2_IfcPresentationStyleSelect_type = new select_type(strings[2200], 814, { + IFC4X3_RC2_IfcCurveStyle_type, + IFC4X3_RC2_IfcFillAreaStyle_type, + IFC4X3_RC2_IfcNullStyle_type, + IFC4X3_RC2_IfcSurfaceStyle_type, + IFC4X3_RC2_IfcTextStyle_type + }); + IFC4X3_RC2_IfcProductRepresentationSelect_type = new select_type(strings[2201], 824, { + IFC4X3_RC2_IfcProductDefinitionShape_type, + IFC4X3_RC2_IfcRepresentationMap_type + }); + IFC4X3_RC2_IfcPropertySetDefinitionSet_type = new type_declaration(strings[2202], 849, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertySetDefinition_type))); + IFC4X3_RC2_IfcResourceObjectSelect_type = new select_type(strings[2203], 976, { + IFC4X3_RC2_IfcActorRole_type, + IFC4X3_RC2_IfcAppliedValue_type, + IFC4X3_RC2_IfcApproval_type, + IFC4X3_RC2_IfcConstraint_type, + IFC4X3_RC2_IfcContextDependentUnit_type, + IFC4X3_RC2_IfcConversionBasedUnit_type, + IFC4X3_RC2_IfcExternalInformation_type, + IFC4X3_RC2_IfcExternalReference_type, + IFC4X3_RC2_IfcMaterialDefinition_type, + IFC4X3_RC2_IfcOrganization_type, + IFC4X3_RC2_IfcPerson_type, + IFC4X3_RC2_IfcPersonAndOrganization_type, + IFC4X3_RC2_IfcPhysicalQuantity_type, + IFC4X3_RC2_IfcProfileDef_type, + IFC4X3_RC2_IfcPropertyAbstraction_type, + IFC4X3_RC2_IfcShapeAspect_type, + IFC4X3_RC2_IfcTimeSeries_type + }); + IFC4X3_RC2_IfcTextFontSelect_type = new select_type(strings[2204], 1198, { + IFC4X3_RC2_IfcExternallyDefinedTextFont_type, + IFC4X3_RC2_IfcPreDefinedTextFont_type + }); + IFC4X3_RC2_IfcValue_type = new select_type(strings[2205], 1270, { + IFC4X3_RC2_IfcDerivedMeasureValue_type, + IFC4X3_RC2_IfcMeasureValue_type, + IFC4X3_RC2_IfcSimpleValue_type + }); + IFC4X3_RC2_IfcAdvancedFace_type = new entity(strings[2206], false, 16, IFC4X3_RC2_IfcFaceSurface_type); + IFC4X3_RC2_IfcAnnotationFillArea_type = new entity(strings[2207], false, 51, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type = new entity(strings[2208], false, 67, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcAxis1Placement_type = new entity(strings[2209], false, 71, IFC4X3_RC2_IfcPlacement_type); + IFC4X3_RC2_IfcAxis2Placement2D_type = new entity(strings[2210], false, 73, IFC4X3_RC2_IfcPlacement_type); + IFC4X3_RC2_IfcAxis2Placement3D_type = new entity(strings[2211], false, 74, IFC4X3_RC2_IfcPlacement_type); + IFC4X3_RC2_IfcAxis2PlacementLinear_type = new entity(strings[2212], false, 75, IFC4X3_RC2_IfcPlacement_type); + IFC4X3_RC2_IfcAxisLateralInclination_type = new entity(strings[2213], false, 76, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcBooleanResult_type = new entity(strings[2214], false, 98, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcBoundedSurface_type = new entity(strings[2215], true, 107, IFC4X3_RC2_IfcSurface_type); + IFC4X3_RC2_IfcBoundingBox_type = new entity(strings[2216], false, 108, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcBoxedHalfSpace_type = new entity(strings[2217], false, 110, IFC4X3_RC2_IfcHalfSpaceSolid_type); + IFC4X3_RC2_IfcCShapeProfileDef_type = new entity(strings[2218], false, 274, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcCartesianPoint_type = new entity(strings[2219], false, 154, IFC4X3_RC2_IfcPoint_type); + IFC4X3_RC2_IfcCartesianPointList_type = new entity(strings[2220], true, 155, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcCartesianPointList2D_type = new entity(strings[2221], false, 156, IFC4X3_RC2_IfcCartesianPointList_type); + IFC4X3_RC2_IfcCartesianPointList3D_type = new entity(strings[2222], false, 157, IFC4X3_RC2_IfcCartesianPointList_type); + IFC4X3_RC2_IfcCartesianTransformationOperator_type = new entity(strings[2223], true, 158, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcCartesianTransformationOperator2D_type = new entity(strings[2224], false, 159, IFC4X3_RC2_IfcCartesianTransformationOperator_type); + IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[2225], false, 160, IFC4X3_RC2_IfcCartesianTransformationOperator2D_type); + IFC4X3_RC2_IfcCartesianTransformationOperator3D_type = new entity(strings[2226], false, 161, IFC4X3_RC2_IfcCartesianTransformationOperator_type); + IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[2227], false, 162, IFC4X3_RC2_IfcCartesianTransformationOperator3D_type); + IFC4X3_RC2_IfcCircleProfileDef_type = new entity(strings[2228], false, 173, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcClosedShell_type = new entity(strings[2229], false, 181, IFC4X3_RC2_IfcConnectedFaceSet_type); + IFC4X3_RC2_IfcColourRgb_type = new entity(strings[2230], false, 188, IFC4X3_RC2_IfcColourSpecification_type); + IFC4X3_RC2_IfcComplexProperty_type = new entity(strings[2231], false, 199, IFC4X3_RC2_IfcProperty_type); + IFC4X3_RC2_IfcCompositeCurveSegment_type = new entity(strings[2232], false, 204, IFC4X3_RC2_IfcSegment_type); + IFC4X3_RC2_IfcConstructionResourceType_type = new entity(strings[2233], true, 234, IFC4X3_RC2_IfcTypeResource_type); + IFC4X3_RC2_IfcContext_type = new entity(strings[2234], true, 235, IFC4X3_RC2_IfcObjectDefinition_type); + IFC4X3_RC2_IfcCrewResourceType_type = new entity(strings[2235], false, 269, IFC4X3_RC2_IfcConstructionResourceType_type); + IFC4X3_RC2_IfcCsgPrimitive3D_type = new entity(strings[2236], true, 271, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcCsgSolid_type = new entity(strings[2237], false, 273, IFC4X3_RC2_IfcSolidModel_type); + IFC4X3_RC2_IfcCurve_type = new entity(strings[2238], true, 280, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcCurveBoundedPlane_type = new entity(strings[2239], false, 281, IFC4X3_RC2_IfcBoundedSurface_type); + IFC4X3_RC2_IfcCurveBoundedSurface_type = new entity(strings[2240], false, 282, IFC4X3_RC2_IfcBoundedSurface_type); + IFC4X3_RC2_IfcCurveSegment_type = new entity(strings[2241], false, 288, IFC4X3_RC2_IfcSegment_type); + IFC4X3_RC2_IfcDirection_type = new entity(strings[2242], false, 315, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type = new entity(strings[2243], true, 317, IFC4X3_RC2_IfcSweptAreaSolid_type); + IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type = new entity(strings[2244], true, 318, IFC4X3_RC2_IfcSweptAreaSolid_type); + IFC4X3_RC2_IfcDoorStyle_type = new entity(strings[2245], false, 351, IFC4X3_RC2_IfcTypeProduct_type); + IFC4X3_RC2_IfcEdgeLoop_type = new entity(strings[2246], false, 378, IFC4X3_RC2_IfcLoop_type); + IFC4X3_RC2_IfcElementQuantity_type = new entity(strings[2247], false, 414, IFC4X3_RC2_IfcQuantitySet_type); + IFC4X3_RC2_IfcElementType_type = new entity(strings[2248], true, 415, IFC4X3_RC2_IfcTypeProduct_type); + IFC4X3_RC2_IfcElementarySurface_type = new entity(strings[2249], true, 407, IFC4X3_RC2_IfcSurface_type); + IFC4X3_RC2_IfcEllipseProfileDef_type = new entity(strings[2250], false, 417, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcEventType_type = new entity(strings[2251], false, 433, IFC4X3_RC2_IfcTypeProcess_type); + IFC4X3_RC2_IfcExtrudedAreaSolid_type = new entity(strings[2252], false, 445, IFC4X3_RC2_IfcSweptAreaSolid_type); + IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type = new entity(strings[2253], false, 446, IFC4X3_RC2_IfcExtrudedAreaSolid_type); + IFC4X3_RC2_IfcFaceBasedSurfaceModel_type = new entity(strings[2254], false, 448, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcFillAreaStyleHatching_type = new entity(strings[2255], false, 470, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcFillAreaStyleTiles_type = new entity(strings[2256], false, 471, IFC4X3_RC2_IfcGeometricRepresentationItem_type); + IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[2257], false, 479, IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC2_IfcFurnishingElementType_type = new entity(strings[2258], false, 510, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcFurnitureType_type = new entity(strings[2259], false, 512, IFC4X3_RC2_IfcFurnishingElementType_type); + IFC4X3_RC2_IfcGeographicElementType_type = new entity(strings[2260], false, 515, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcGeometricCurveSet_type = new entity(strings[2261], false, 517, IFC4X3_RC2_IfcGeometricSet_type); + IFC4X3_RC2_IfcIShapeProfileDef_type = new entity(strings[2262], false, 576, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type = new entity(strings[2263], false, 555, IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type); + IFC4X3_RC2_IfcIndexedPolygonalFace_type = new entity(strings[2264], false, 558, IFC4X3_RC2_IfcTessellatedItem_type); + IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[2265], false, 559, IFC4X3_RC2_IfcIndexedPolygonalFace_type); + IFC4X3_RC2_IfcLShapeProfileDef_type = new entity(strings[2266], false, 636, IFC4X3_RC2_IfcParameterizedProfileDef_type); + IFC4X3_RC2_IfcLaborResourceType_type = new entity(strings[2267], false, 587, IFC4X3_RC2_IfcConstructionResourceType_type); + IFC4X3_RC2_IfcLine_type = new entity(strings[2268], false, 614, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcManifoldSolidBrep_type = new entity(strings[2269], true, 642, IFC4X3_RC2_IfcSolidModel_type); + IFC4X3_RC2_IfcObject_type = new entity(strings[2270], true, 717, IFC4X3_RC2_IfcObjectDefinition_type); + IFC4X3_RC2_IfcOffsetCurve_type = new entity(strings[2271], true, 726, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcOffsetCurve2D_type = new entity(strings[2272], false, 727, IFC4X3_RC2_IfcOffsetCurve_type); + IFC4X3_RC2_IfcOffsetCurve3D_type = new entity(strings[2273], false, 728, IFC4X3_RC2_IfcOffsetCurve_type); + IFC4X3_RC2_IfcOffsetCurveByDistances_type = new entity(strings[2274], false, 729, IFC4X3_RC2_IfcOffsetCurve_type); + IFC4X3_RC2_IfcPcurve_type = new entity(strings[2275], false, 748, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcPlanarBox_type = new entity(strings[2276], false, 774, IFC4X3_RC2_IfcPlanarExtent_type); + IFC4X3_RC2_IfcPlane_type = new entity(strings[2277], false, 777, IFC4X3_RC2_IfcElementarySurface_type); + IFC4X3_RC2_IfcPreDefinedColour_type = new entity(strings[2278], true, 801, IFC4X3_RC2_IfcPreDefinedItem_type); + IFC4X3_RC2_IfcPreDefinedCurveFont_type = new entity(strings[2279], true, 802, IFC4X3_RC2_IfcPreDefinedItem_type); + IFC4X3_RC2_IfcPreDefinedPropertySet_type = new entity(strings[2280], true, 805, IFC4X3_RC2_IfcPropertySetDefinition_type); + IFC4X3_RC2_IfcProcedureType_type = new entity(strings[2281], false, 817, IFC4X3_RC2_IfcTypeProcess_type); + IFC4X3_RC2_IfcProcess_type = new entity(strings[2282], true, 819, IFC4X3_RC2_IfcObject_type); + IFC4X3_RC2_IfcProduct_type = new entity(strings[2283], true, 821, IFC4X3_RC2_IfcObject_type); + IFC4X3_RC2_IfcProject_type = new entity(strings[2284], false, 829, IFC4X3_RC2_IfcContext_type); + IFC4X3_RC2_IfcProjectLibrary_type = new entity(strings[2285], false, 834, IFC4X3_RC2_IfcContext_type); + IFC4X3_RC2_IfcPropertyBoundedValue_type = new entity(strings[2286], false, 839, IFC4X3_RC2_IfcSimpleProperty_type); + IFC4X3_RC2_IfcPropertyEnumeratedValue_type = new entity(strings[2287], false, 842, IFC4X3_RC2_IfcSimpleProperty_type); + IFC4X3_RC2_IfcPropertyListValue_type = new entity(strings[2288], false, 844, IFC4X3_RC2_IfcSimpleProperty_type); + IFC4X3_RC2_IfcPropertyReferenceValue_type = new entity(strings[2289], false, 845, IFC4X3_RC2_IfcSimpleProperty_type); + IFC4X3_RC2_IfcPropertySet_type = new entity(strings[2290], false, 846, IFC4X3_RC2_IfcPropertySetDefinition_type); + IFC4X3_RC2_IfcPropertySetTemplate_type = new entity(strings[2291], false, 850, IFC4X3_RC2_IfcPropertyTemplateDefinition_type); + IFC4X3_RC2_IfcPropertySingleValue_type = new entity(strings[2292], false, 852, IFC4X3_RC2_IfcSimpleProperty_type); + IFC4X3_RC2_IfcPropertyTableValue_type = new entity(strings[2293], false, 853, IFC4X3_RC2_IfcSimpleProperty_type); + IFC4X3_RC2_IfcPropertyTemplate_type = new entity(strings[2294], true, 854, IFC4X3_RC2_IfcPropertyTemplateDefinition_type); + IFC4X3_RC2_IfcProxy_type = new entity(strings[2295], false, 862, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcRectangleHollowProfileDef_type = new entity(strings[2296], false, 892, IFC4X3_RC2_IfcRectangleProfileDef_type); + IFC4X3_RC2_IfcRectangularPyramid_type = new entity(strings[2297], false, 894, IFC4X3_RC2_IfcCsgPrimitive3D_type); + IFC4X3_RC2_IfcRectangularTrimmedSurface_type = new entity(strings[2298], false, 895, IFC4X3_RC2_IfcBoundedSurface_type); + IFC4X3_RC2_IfcReinforcementDefinitionProperties_type = new entity(strings[2299], false, 906, IFC4X3_RC2_IfcPreDefinedPropertySet_type); + IFC4X3_RC2_IfcRelAssigns_type = new entity(strings[2300], true, 918, IFC4X3_RC2_IfcRelationship_type); + IFC4X3_RC2_IfcRelAssignsToActor_type = new entity(strings[2301], false, 919, IFC4X3_RC2_IfcRelAssigns_type); + IFC4X3_RC2_IfcRelAssignsToControl_type = new entity(strings[2302], false, 920, IFC4X3_RC2_IfcRelAssigns_type); + IFC4X3_RC2_IfcRelAssignsToGroup_type = new entity(strings[2303], false, 921, IFC4X3_RC2_IfcRelAssigns_type); + IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type = new entity(strings[2304], false, 922, IFC4X3_RC2_IfcRelAssignsToGroup_type); + IFC4X3_RC2_IfcRelAssignsToProcess_type = new entity(strings[2305], false, 923, IFC4X3_RC2_IfcRelAssigns_type); + IFC4X3_RC2_IfcRelAssignsToProduct_type = new entity(strings[2306], false, 924, IFC4X3_RC2_IfcRelAssigns_type); + IFC4X3_RC2_IfcRelAssignsToResource_type = new entity(strings[2307], false, 925, IFC4X3_RC2_IfcRelAssigns_type); + IFC4X3_RC2_IfcRelAssociates_type = new entity(strings[2308], true, 926, IFC4X3_RC2_IfcRelationship_type); + IFC4X3_RC2_IfcRelAssociatesApproval_type = new entity(strings[2309], false, 927, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelAssociatesClassification_type = new entity(strings[2310], false, 928, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelAssociatesConstraint_type = new entity(strings[2311], false, 929, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelAssociatesDocument_type = new entity(strings[2312], false, 930, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelAssociatesLibrary_type = new entity(strings[2313], false, 931, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelAssociatesMaterial_type = new entity(strings[2314], false, 932, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelAssociatesProfileDef_type = new entity(strings[2315], false, 933, IFC4X3_RC2_IfcRelAssociates_type); + IFC4X3_RC2_IfcRelConnects_type = new entity(strings[2316], true, 935, IFC4X3_RC2_IfcRelationship_type); + IFC4X3_RC2_IfcRelConnectsElements_type = new entity(strings[2317], false, 936, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelConnectsPathElements_type = new entity(strings[2318], false, 937, IFC4X3_RC2_IfcRelConnectsElements_type); + IFC4X3_RC2_IfcRelConnectsPortToElement_type = new entity(strings[2319], false, 939, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelConnectsPorts_type = new entity(strings[2320], false, 938, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelConnectsStructuralActivity_type = new entity(strings[2321], false, 940, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelConnectsStructuralMember_type = new entity(strings[2322], false, 941, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelConnectsWithEccentricity_type = new entity(strings[2323], false, 942, IFC4X3_RC2_IfcRelConnectsStructuralMember_type); + IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type = new entity(strings[2324], false, 943, IFC4X3_RC2_IfcRelConnectsElements_type); + IFC4X3_RC2_IfcRelContainedInSpatialStructure_type = new entity(strings[2325], false, 944, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelCoversBldgElements_type = new entity(strings[2326], false, 945, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelCoversSpaces_type = new entity(strings[2327], false, 946, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelDeclares_type = new entity(strings[2328], false, 947, IFC4X3_RC2_IfcRelationship_type); + IFC4X3_RC2_IfcRelDecomposes_type = new entity(strings[2329], true, 948, IFC4X3_RC2_IfcRelationship_type); + IFC4X3_RC2_IfcRelDefines_type = new entity(strings[2330], true, 949, IFC4X3_RC2_IfcRelationship_type); + IFC4X3_RC2_IfcRelDefinesByObject_type = new entity(strings[2331], false, 950, IFC4X3_RC2_IfcRelDefines_type); + IFC4X3_RC2_IfcRelDefinesByProperties_type = new entity(strings[2332], false, 951, IFC4X3_RC2_IfcRelDefines_type); + IFC4X3_RC2_IfcRelDefinesByTemplate_type = new entity(strings[2333], false, 952, IFC4X3_RC2_IfcRelDefines_type); + IFC4X3_RC2_IfcRelDefinesByType_type = new entity(strings[2334], false, 953, IFC4X3_RC2_IfcRelDefines_type); + IFC4X3_RC2_IfcRelFillsElement_type = new entity(strings[2335], false, 954, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelFlowControlElements_type = new entity(strings[2336], false, 955, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelInterferesElements_type = new entity(strings[2337], false, 956, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelNests_type = new entity(strings[2338], false, 957, IFC4X3_RC2_IfcRelDecomposes_type); + IFC4X3_RC2_IfcRelPositions_type = new entity(strings[2339], false, 958, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelProjectsElement_type = new entity(strings[2340], false, 959, IFC4X3_RC2_IfcRelDecomposes_type); + IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type = new entity(strings[2341], false, 960, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelSequence_type = new entity(strings[2342], false, 961, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelServicesBuildings_type = new entity(strings[2343], false, 962, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelSpaceBoundary_type = new entity(strings[2344], false, 963, IFC4X3_RC2_IfcRelConnects_type); + IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type = new entity(strings[2345], false, 964, IFC4X3_RC2_IfcRelSpaceBoundary_type); + IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[2346], false, 965, IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type); + IFC4X3_RC2_IfcRelVoidsElement_type = new entity(strings[2347], false, 966, IFC4X3_RC2_IfcRelDecomposes_type); + IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[2348], false, 967, IFC4X3_RC2_IfcCompositeCurveSegment_type); + IFC4X3_RC2_IfcResource_type = new entity(strings[2349], true, 972, IFC4X3_RC2_IfcObject_type); + IFC4X3_RC2_IfcRevolvedAreaSolid_type = new entity(strings[2350], false, 979, IFC4X3_RC2_IfcSweptAreaSolid_type); + IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type = new entity(strings[2351], false, 980, IFC4X3_RC2_IfcRevolvedAreaSolid_type); + IFC4X3_RC2_IfcRightCircularCone_type = new entity(strings[2352], false, 981, IFC4X3_RC2_IfcCsgPrimitive3D_type); + IFC4X3_RC2_IfcRightCircularCylinder_type = new entity(strings[2353], false, 982, IFC4X3_RC2_IfcCsgPrimitive3D_type); + IFC4X3_RC2_IfcSectionedSolid_type = new entity(strings[2354], true, 1001, IFC4X3_RC2_IfcSolidModel_type); + IFC4X3_RC2_IfcSectionedSolidHorizontal_type = new entity(strings[2355], false, 1002, IFC4X3_RC2_IfcSectionedSolid_type); + IFC4X3_RC2_IfcSectionedSurface_type = new entity(strings[2356], false, 1004, IFC4X3_RC2_IfcSurface_type); + IFC4X3_RC2_IfcSeriesParameterCurve_type = new entity(strings[2357], false, 1016, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcSimplePropertyTemplate_type = new entity(strings[2358], false, 1033, IFC4X3_RC2_IfcPropertyTemplate_type); + IFC4X3_RC2_IfcSpatialElement_type = new entity(strings[2359], true, 1065, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcSpatialElementType_type = new entity(strings[2360], true, 1066, IFC4X3_RC2_IfcTypeProduct_type); + IFC4X3_RC2_IfcSpatialStructureElement_type = new entity(strings[2361], true, 1068, IFC4X3_RC2_IfcSpatialElement_type); + IFC4X3_RC2_IfcSpatialStructureElementType_type = new entity(strings[2362], true, 1069, IFC4X3_RC2_IfcSpatialElementType_type); + IFC4X3_RC2_IfcSpatialZone_type = new entity(strings[2363], false, 1070, IFC4X3_RC2_IfcSpatialElement_type); + IFC4X3_RC2_IfcSpatialZoneType_type = new entity(strings[2364], false, 1071, IFC4X3_RC2_IfcSpatialElementType_type); + IFC4X3_RC2_IfcSphere_type = new entity(strings[2365], false, 1077, IFC4X3_RC2_IfcCsgPrimitive3D_type); + IFC4X3_RC2_IfcSphericalSurface_type = new entity(strings[2366], false, 1078, IFC4X3_RC2_IfcElementarySurface_type); + IFC4X3_RC2_IfcStructuralActivity_type = new entity(strings[2367], true, 1090, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcStructuralItem_type = new entity(strings[2368], true, 1102, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcStructuralMember_type = new entity(strings[2369], true, 1117, IFC4X3_RC2_IfcStructuralItem_type); + IFC4X3_RC2_IfcStructuralReaction_type = new entity(strings[2370], true, 1122, IFC4X3_RC2_IfcStructuralActivity_type); + IFC4X3_RC2_IfcStructuralSurfaceMember_type = new entity(strings[2371], false, 1127, IFC4X3_RC2_IfcStructuralMember_type); + IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type = new entity(strings[2372], false, 1129, IFC4X3_RC2_IfcStructuralSurfaceMember_type); + IFC4X3_RC2_IfcStructuralSurfaceReaction_type = new entity(strings[2373], false, 1130, IFC4X3_RC2_IfcStructuralReaction_type); + IFC4X3_RC2_IfcSubContractResourceType_type = new entity(strings[2374], false, 1136, IFC4X3_RC2_IfcConstructionResourceType_type); + IFC4X3_RC2_IfcSurfaceCurve_type = new entity(strings[2375], false, 1140, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[2376], false, 1141, IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type = new entity(strings[2377], false, 1144, IFC4X3_RC2_IfcSweptSurface_type); + IFC4X3_RC2_IfcSurfaceOfRevolution_type = new entity(strings[2378], false, 1145, IFC4X3_RC2_IfcSweptSurface_type); + IFC4X3_RC2_IfcSystemFurnitureElementType_type = new entity(strings[2379], false, 1166, IFC4X3_RC2_IfcFurnishingElementType_type); + IFC4X3_RC2_IfcTask_type = new entity(strings[2380], false, 1174, IFC4X3_RC2_IfcProcess_type); + IFC4X3_RC2_IfcTaskType_type = new entity(strings[2381], false, 1178, IFC4X3_RC2_IfcTypeProcess_type); + IFC4X3_RC2_IfcTessellatedFaceSet_type = new entity(strings[2382], true, 1192, IFC4X3_RC2_IfcTessellatedItem_type); + IFC4X3_RC2_IfcToroidalSurface_type = new entity(strings[2383], false, 1228, IFC4X3_RC2_IfcElementarySurface_type); + IFC4X3_RC2_IfcTransportElementType_type = new entity(strings[2384], false, 1243, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcTriangulatedFaceSet_type = new entity(strings[2385], false, 1246, IFC4X3_RC2_IfcTessellatedFaceSet_type); + IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type = new entity(strings[2386], false, 1247, IFC4X3_RC2_IfcTriangulatedFaceSet_type); + IFC4X3_RC2_IfcWindowLiningProperties_type = new entity(strings[2387], false, 1306, IFC4X3_RC2_IfcPreDefinedPropertySet_type); + IFC4X3_RC2_IfcWindowPanelProperties_type = new entity(strings[2388], false, 1309, IFC4X3_RC2_IfcPreDefinedPropertySet_type); + IFC4X3_RC2_IfcAppliedValueSelect_type = new select_type(strings[2389], 55, { + IFC4X3_RC2_IfcMeasureWithUnit_type, + IFC4X3_RC2_IfcReference_type, + IFC4X3_RC2_IfcValue_type + }); + IFC4X3_RC2_IfcAxis2Placement_type = new select_type(strings[2390], 72, { + IFC4X3_RC2_IfcAxis2Placement2D_type, + IFC4X3_RC2_IfcAxis2Placement3D_type + }); + IFC4X3_RC2_IfcBooleanOperand_type = new select_type(strings[2391], 96, { + IFC4X3_RC2_IfcBooleanResult_type, + IFC4X3_RC2_IfcCsgPrimitive3D_type, + IFC4X3_RC2_IfcHalfSpaceSolid_type, + IFC4X3_RC2_IfcSolidModel_type, + IFC4X3_RC2_IfcTessellatedFaceSet_type + }); + IFC4X3_RC2_IfcColour_type = new select_type(strings[2392], 186, { + IFC4X3_RC2_IfcColourSpecification_type, + IFC4X3_RC2_IfcPreDefinedColour_type + }); + IFC4X3_RC2_IfcColourOrFactor_type = new select_type(strings[2393], 187, { + IFC4X3_RC2_IfcColourRgb_type, + IFC4X3_RC2_IfcNormalisedRatioMeasure_type + }); + IFC4X3_RC2_IfcCsgSelect_type = new select_type(strings[2394], 272, { + IFC4X3_RC2_IfcBooleanResult_type, + IFC4X3_RC2_IfcCsgPrimitive3D_type + }); + IFC4X3_RC2_IfcCurveStyleFontSelect_type = new select_type(strings[2395], 294, { + IFC4X3_RC2_IfcCurveStyleFont_type, + IFC4X3_RC2_IfcPreDefinedCurveFont_type + }); + IFC4X3_RC2_IfcFillStyleSelect_type = new select_type(strings[2396], 472, { + IFC4X3_RC2_IfcColour_type, + IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC2_IfcFillAreaStyleHatching_type, + IFC4X3_RC2_IfcFillAreaStyleTiles_type + }); + IFC4X3_RC2_IfcGeometricSetSelect_type = new select_type(strings[2397], 523, { + IFC4X3_RC2_IfcCurve_type, + IFC4X3_RC2_IfcPoint_type, + IFC4X3_RC2_IfcSurface_type + }); + IFC4X3_RC2_IfcGridPlacementDirectionSelect_type = new select_type(strings[2398], 535, { + IFC4X3_RC2_IfcDirection_type, + IFC4X3_RC2_IfcVirtualGridIntersection_type + }); + IFC4X3_RC2_IfcLinearAxisSelect_type = new select_type(strings[2399], 615, { + IFC4X3_RC2_IfcCurve_type, + IFC4X3_RC2_IfcLinearAxisWithInclination_type + }); + IFC4X3_RC2_IfcMetricValueSelect_type = new select_type(strings[2400], 685, { + IFC4X3_RC2_IfcAppliedValue_type, + IFC4X3_RC2_IfcMeasureWithUnit_type, + IFC4X3_RC2_IfcReference_type, + IFC4X3_RC2_IfcTable_type, + IFC4X3_RC2_IfcTimeSeries_type, + IFC4X3_RC2_IfcValue_type + }); + IFC4X3_RC2_IfcProcessSelect_type = new select_type(strings[2401], 820, { + IFC4X3_RC2_IfcProcess_type, + IFC4X3_RC2_IfcTypeProcess_type + }); + IFC4X3_RC2_IfcProductSelect_type = new select_type(strings[2402], 825, { + IFC4X3_RC2_IfcProduct_type, + IFC4X3_RC2_IfcTypeProduct_type + }); + IFC4X3_RC2_IfcPropertySetDefinitionSelect_type = new select_type(strings[2403], 848, { + IFC4X3_RC2_IfcPropertySetDefinition_type, + IFC4X3_RC2_IfcPropertySetDefinitionSet_type + }); + IFC4X3_RC2_IfcResourceSelect_type = new select_type(strings[2404], 977, { + IFC4X3_RC2_IfcResource_type, + IFC4X3_RC2_IfcTypeResource_type + }); + IFC4X3_RC2_IfcShell_type = new select_type(strings[2405], 1024, { + IFC4X3_RC2_IfcClosedShell_type, + IFC4X3_RC2_IfcOpenShell_type + }); + IFC4X3_RC2_IfcSolidOrShell_type = new select_type(strings[2406], 1052, { + IFC4X3_RC2_IfcClosedShell_type, + IFC4X3_RC2_IfcSolidModel_type + }); + IFC4X3_RC2_IfcSurfaceOrFaceSurface_type = new select_type(strings[2407], 1146, { + IFC4X3_RC2_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC2_IfcFaceSurface_type, + IFC4X3_RC2_IfcSurface_type + }); + IFC4X3_RC2_IfcTrimmingSelect_type = new select_type(strings[2408], 1250, { + IFC4X3_RC2_IfcCartesianPoint_type, + IFC4X3_RC2_IfcParameterValue_type + }); + IFC4X3_RC2_IfcVectorOrDirection_type = new select_type(strings[2409], 1276, { + IFC4X3_RC2_IfcDirection_type, + IFC4X3_RC2_IfcVector_type + }); + IFC4X3_RC2_IfcActor_type = new entity(strings[2410], false, 6, IFC4X3_RC2_IfcObject_type); + IFC4X3_RC2_IfcAdvancedBrep_type = new entity(strings[2411], false, 14, IFC4X3_RC2_IfcManifoldSolidBrep_type); + IFC4X3_RC2_IfcAdvancedBrepWithVoids_type = new entity(strings[2412], false, 15, IFC4X3_RC2_IfcAdvancedBrep_type); + IFC4X3_RC2_IfcAnnotation_type = new entity(strings[2413], false, 50, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcBSplineSurface_type = new entity(strings[2414], true, 118, IFC4X3_RC2_IfcBoundedSurface_type); + IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type = new entity(strings[2415], false, 120, IFC4X3_RC2_IfcBSplineSurface_type); + IFC4X3_RC2_IfcBlock_type = new entity(strings[2416], false, 89, IFC4X3_RC2_IfcCsgPrimitive3D_type); + IFC4X3_RC2_IfcBlossCurve_type = new entity(strings[2417], false, 90, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcBooleanClippingResult_type = new entity(strings[2418], false, 95, IFC4X3_RC2_IfcBooleanResult_type); + IFC4X3_RC2_IfcBoundedCurve_type = new entity(strings[2419], true, 106, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcBuildingStorey_type = new entity(strings[2420], false, 128, IFC4X3_RC2_IfcSpatialStructureElement_type); + IFC4X3_RC2_IfcBuiltElementType_type = new entity(strings[2421], false, 132, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcChimneyType_type = new entity(strings[2422], false, 169, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcCircleHollowProfileDef_type = new entity(strings[2423], false, 172, IFC4X3_RC2_IfcCircleProfileDef_type); + IFC4X3_RC2_IfcCivilElementType_type = new entity(strings[2424], false, 176, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcClothoid_type = new entity(strings[2425], false, 182, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcColumnType_type = new entity(strings[2426], false, 193, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcComplexPropertyTemplate_type = new entity(strings[2427], false, 200, IFC4X3_RC2_IfcPropertyTemplate_type); + IFC4X3_RC2_IfcCompositeCurve_type = new entity(strings[2428], false, 202, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcCompositeCurveOnSurface_type = new entity(strings[2429], false, 203, IFC4X3_RC2_IfcCompositeCurve_type); + IFC4X3_RC2_IfcConic_type = new entity(strings[2430], true, 213, IFC4X3_RC2_IfcCurve_type); + IFC4X3_RC2_IfcConstructionEquipmentResourceType_type = new entity(strings[2431], false, 225, IFC4X3_RC2_IfcConstructionResourceType_type); + IFC4X3_RC2_IfcConstructionMaterialResourceType_type = new entity(strings[2432], false, 228, IFC4X3_RC2_IfcConstructionResourceType_type); + IFC4X3_RC2_IfcConstructionProductResourceType_type = new entity(strings[2433], false, 231, IFC4X3_RC2_IfcConstructionResourceType_type); + IFC4X3_RC2_IfcConstructionResource_type = new entity(strings[2434], true, 233, IFC4X3_RC2_IfcResource_type); + IFC4X3_RC2_IfcControl_type = new entity(strings[2435], true, 238, IFC4X3_RC2_IfcObject_type); + IFC4X3_RC2_IfcCostItem_type = new entity(strings[2436], false, 256, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcCostSchedule_type = new entity(strings[2437], false, 258, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcCourseType_type = new entity(strings[2438], false, 263, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcCoveringType_type = new entity(strings[2439], false, 266, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcCrewResource_type = new entity(strings[2440], false, 268, IFC4X3_RC2_IfcConstructionResource_type); + IFC4X3_RC2_IfcCurtainWallType_type = new entity(strings[2441], false, 277, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcCurveSegment2D_type = new entity(strings[2442], true, 289, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcCylindricalSurface_type = new entity(strings[2443], false, 295, IFC4X3_RC2_IfcElementarySurface_type); + IFC4X3_RC2_IfcDeepFoundationType_type = new entity(strings[2444], false, 305, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcDistributionElementType_type = new entity(strings[2445], false, 332, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcDistributionFlowElementType_type = new entity(strings[2446], true, 334, IFC4X3_RC2_IfcDistributionElementType_type); + IFC4X3_RC2_IfcDoorLiningProperties_type = new entity(strings[2447], false, 346, IFC4X3_RC2_IfcPreDefinedPropertySet_type); + IFC4X3_RC2_IfcDoorPanelProperties_type = new entity(strings[2448], false, 349, IFC4X3_RC2_IfcPreDefinedPropertySet_type); + IFC4X3_RC2_IfcDoorType_type = new entity(strings[2449], false, 354, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcDraughtingPreDefinedColour_type = new entity(strings[2450], false, 358, IFC4X3_RC2_IfcPreDefinedColour_type); + IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2451], false, 359, IFC4X3_RC2_IfcPreDefinedCurveFont_type); + IFC4X3_RC2_IfcElement_type = new entity(strings[2452], true, 406, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcElementAssembly_type = new entity(strings[2453], false, 408, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcElementAssemblyType_type = new entity(strings[2454], false, 409, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcElementComponent_type = new entity(strings[2455], true, 411, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcElementComponentType_type = new entity(strings[2456], true, 412, IFC4X3_RC2_IfcElementType_type); + IFC4X3_RC2_IfcEllipse_type = new entity(strings[2457], false, 416, IFC4X3_RC2_IfcConic_type); + IFC4X3_RC2_IfcEnergyConversionDeviceType_type = new entity(strings[2458], true, 419, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcEngineType_type = new entity(strings[2459], false, 422, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcEvaporativeCoolerType_type = new entity(strings[2460], false, 425, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcEvaporatorType_type = new entity(strings[2461], false, 428, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcEvent_type = new entity(strings[2462], false, 430, IFC4X3_RC2_IfcProcess_type); + IFC4X3_RC2_IfcExternalSpatialStructureElement_type = new entity(strings[2463], true, 444, IFC4X3_RC2_IfcSpatialElement_type); + IFC4X3_RC2_IfcFacetedBrep_type = new entity(strings[2464], false, 452, IFC4X3_RC2_IfcManifoldSolidBrep_type); + IFC4X3_RC2_IfcFacetedBrepWithVoids_type = new entity(strings[2465], false, 453, IFC4X3_RC2_IfcFacetedBrep_type); + IFC4X3_RC2_IfcFacility_type = new entity(strings[2466], false, 454, IFC4X3_RC2_IfcSpatialStructureElement_type); + IFC4X3_RC2_IfcFacilityPart_type = new entity(strings[2467], false, 455, IFC4X3_RC2_IfcSpatialStructureElement_type); + IFC4X3_RC2_IfcFastener_type = new entity(strings[2468], false, 463, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcFastenerType_type = new entity(strings[2469], false, 464, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcFeatureElement_type = new entity(strings[2470], true, 466, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcFeatureElementAddition_type = new entity(strings[2471], true, 467, IFC4X3_RC2_IfcFeatureElement_type); + IFC4X3_RC2_IfcFeatureElementSubtraction_type = new entity(strings[2472], true, 468, IFC4X3_RC2_IfcFeatureElement_type); + IFC4X3_RC2_IfcFlowControllerType_type = new entity(strings[2473], true, 481, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFlowFittingType_type = new entity(strings[2474], true, 484, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFlowMeterType_type = new entity(strings[2475], false, 489, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcFlowMovingDeviceType_type = new entity(strings[2476], true, 492, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFlowSegmentType_type = new entity(strings[2477], true, 494, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFlowStorageDeviceType_type = new entity(strings[2478], true, 496, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFlowTerminalType_type = new entity(strings[2479], true, 498, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFlowTreatmentDeviceType_type = new entity(strings[2480], true, 500, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcFootingType_type = new entity(strings[2481], false, 505, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcFurnishingElement_type = new entity(strings[2482], false, 509, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcFurniture_type = new entity(strings[2483], false, 511, IFC4X3_RC2_IfcFurnishingElement_type); + IFC4X3_RC2_IfcGeographicElement_type = new entity(strings[2484], false, 514, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcGeotechnicalElement_type = new entity(strings[2485], true, 527, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcGeotechnicalStratum_type = new entity(strings[2486], true, 528, IFC4X3_RC2_IfcGeotechnicalElement_type); + IFC4X3_RC2_IfcGradientCurve_type = new entity(strings[2487], false, 531, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcGroup_type = new entity(strings[2488], false, 537, IFC4X3_RC2_IfcObject_type); + IFC4X3_RC2_IfcHeatExchangerType_type = new entity(strings[2489], false, 541, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcHumidifierType_type = new entity(strings[2490], false, 546, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcImpactProtectionDevice_type = new entity(strings[2491], false, 551, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcImpactProtectionDeviceType_type = new entity(strings[2492], false, 552, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcIndexedPolyCurve_type = new entity(strings[2493], false, 557, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcInterceptorType_type = new entity(strings[2494], false, 566, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC2_IfcIntersectionCurve_type = new entity(strings[2495], false, 570, IFC4X3_RC2_IfcSurfaceCurve_type); + IFC4X3_RC2_IfcInventory_type = new entity(strings[2496], false, 571, IFC4X3_RC2_IfcGroup_type); + IFC4X3_RC2_IfcJunctionBoxType_type = new entity(strings[2497], false, 579, IFC4X3_RC2_IfcFlowFittingType_type); + IFC4X3_RC2_IfcKerbType_type = new entity(strings[2498], false, 582, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcLaborResource_type = new entity(strings[2499], false, 586, IFC4X3_RC2_IfcConstructionResource_type); + IFC4X3_RC2_IfcLampType_type = new entity(strings[2500], false, 591, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcLightFixtureType_type = new entity(strings[2501], false, 605, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcLineSegment2D_type = new entity(strings[2502], false, 627, IFC4X3_RC2_IfcCurveSegment2D_type); + IFC4X3_RC2_IfcLinearElement_type = new entity(strings[2503], true, 617, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcLiquidTerminalType_type = new entity(strings[2504], false, 629, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcMarineFacility_type = new entity(strings[2505], false, 645, IFC4X3_RC2_IfcFacility_type); + IFC4X3_RC2_IfcMechanicalFastener_type = new entity(strings[2506], false, 674, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcMechanicalFastenerType_type = new entity(strings[2507], false, 675, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcMedicalDeviceType_type = new entity(strings[2508], false, 678, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcMemberType_type = new entity(strings[2509], false, 682, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type = new entity(strings[2510], false, 688, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcMooringDeviceType_type = new entity(strings[2511], false, 704, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcMotorConnectionType_type = new entity(strings[2512], false, 707, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcNavigationElementType_type = new entity(strings[2513], false, 711, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcOccupant_type = new entity(strings[2514], false, 724, IFC4X3_RC2_IfcActor_type); + IFC4X3_RC2_IfcOpeningElement_type = new entity(strings[2515], false, 731, IFC4X3_RC2_IfcFeatureElementSubtraction_type); + IFC4X3_RC2_IfcOpeningStandardCase_type = new entity(strings[2516], false, 733, IFC4X3_RC2_IfcOpeningElement_type); + IFC4X3_RC2_IfcOutletType_type = new entity(strings[2517], false, 740, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcPavementType_type = new entity(strings[2518], false, 747, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcPerformanceHistory_type = new entity(strings[2519], false, 749, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcPermeableCoveringProperties_type = new entity(strings[2520], false, 752, IFC4X3_RC2_IfcPreDefinedPropertySet_type); + IFC4X3_RC2_IfcPermit_type = new entity(strings[2521], false, 753, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcPileType_type = new entity(strings[2522], false, 764, IFC4X3_RC2_IfcDeepFoundationType_type); + IFC4X3_RC2_IfcPipeFittingType_type = new entity(strings[2523], false, 767, IFC4X3_RC2_IfcFlowFittingType_type); + IFC4X3_RC2_IfcPipeSegmentType_type = new entity(strings[2524], false, 770, IFC4X3_RC2_IfcFlowSegmentType_type); + IFC4X3_RC2_IfcPlant_type = new entity(strings[2525], false, 779, IFC4X3_RC2_IfcGeographicElement_type); + IFC4X3_RC2_IfcPlateType_type = new entity(strings[2526], false, 782, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcPolygonalFaceSet_type = new entity(strings[2527], false, 790, IFC4X3_RC2_IfcTessellatedFaceSet_type); + IFC4X3_RC2_IfcPolyline_type = new entity(strings[2528], false, 791, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcPort_type = new entity(strings[2529], true, 793, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcPositioningElement_type = new entity(strings[2530], true, 794, IFC4X3_RC2_IfcProduct_type); + IFC4X3_RC2_IfcProcedure_type = new entity(strings[2531], false, 816, IFC4X3_RC2_IfcProcess_type); + IFC4X3_RC2_IfcProjectOrder_type = new entity(strings[2532], false, 835, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcProjectionElement_type = new entity(strings[2533], false, 832, IFC4X3_RC2_IfcFeatureElementAddition_type); + IFC4X3_RC2_IfcProtectiveDeviceType_type = new entity(strings[2534], false, 860, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcPumpType_type = new entity(strings[2535], false, 864, IFC4X3_RC2_IfcFlowMovingDeviceType_type); + IFC4X3_RC2_IfcRailType_type = new entity(strings[2536], false, 878, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcRailingType_type = new entity(strings[2537], false, 876, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcRailway_type = new entity(strings[2538], false, 880, IFC4X3_RC2_IfcFacility_type); + IFC4X3_RC2_IfcRampFlightType_type = new entity(strings[2539], false, 884, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcRampType_type = new entity(strings[2540], false, 886, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2541], false, 890, IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type); + IFC4X3_RC2_IfcReferent_type = new entity(strings[2542], false, 899, IFC4X3_RC2_IfcPositioningElement_type); + IFC4X3_RC2_IfcReinforcingElement_type = new entity(strings[2543], true, 912, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcReinforcingElementType_type = new entity(strings[2544], true, 913, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcReinforcingMesh_type = new entity(strings[2545], false, 914, IFC4X3_RC2_IfcReinforcingElement_type); + IFC4X3_RC2_IfcReinforcingMeshType_type = new entity(strings[2546], false, 915, IFC4X3_RC2_IfcReinforcingElementType_type); + IFC4X3_RC2_IfcRelAggregates_type = new entity(strings[2547], false, 917, IFC4X3_RC2_IfcRelDecomposes_type); + IFC4X3_RC2_IfcRoad_type = new entity(strings[2548], false, 983, IFC4X3_RC2_IfcFacility_type); + IFC4X3_RC2_IfcRoofType_type = new entity(strings[2549], false, 987, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcSanitaryTerminalType_type = new entity(strings[2550], false, 996, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcSeamCurve_type = new entity(strings[2551], false, 999, IFC4X3_RC2_IfcSurfaceCurve_type); + IFC4X3_RC2_IfcSegmentedReferenceCurve_type = new entity(strings[2552], false, 1010, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcShadingDeviceType_type = new entity(strings[2553], false, 1018, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcSign_type = new entity(strings[2554], false, 1026, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcSignType_type = new entity(strings[2555], false, 1030, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcSignalType_type = new entity(strings[2556], false, 1028, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcSite_type = new entity(strings[2557], false, 1037, IFC4X3_RC2_IfcSpatialStructureElement_type); + IFC4X3_RC2_IfcSlabType_type = new entity(strings[2558], false, 1044, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcSolarDeviceType_type = new entity(strings[2559], false, 1048, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcSolidStratum_type = new entity(strings[2560], false, 1053, IFC4X3_RC2_IfcGeotechnicalStratum_type); + IFC4X3_RC2_IfcSpace_type = new entity(strings[2561], false, 1058, IFC4X3_RC2_IfcSpatialStructureElement_type); + IFC4X3_RC2_IfcSpaceHeaterType_type = new entity(strings[2562], false, 1061, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcSpaceType_type = new entity(strings[2563], false, 1063, IFC4X3_RC2_IfcSpatialStructureElementType_type); + IFC4X3_RC2_IfcStackTerminalType_type = new entity(strings[2564], false, 1080, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcStairFlightType_type = new entity(strings[2565], false, 1084, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcStairType_type = new entity(strings[2566], false, 1086, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcStructuralAction_type = new entity(strings[2567], true, 1089, IFC4X3_RC2_IfcStructuralActivity_type); + IFC4X3_RC2_IfcStructuralConnection_type = new entity(strings[2568], true, 1093, IFC4X3_RC2_IfcStructuralItem_type); + IFC4X3_RC2_IfcStructuralCurveAction_type = new entity(strings[2569], false, 1095, IFC4X3_RC2_IfcStructuralAction_type); + IFC4X3_RC2_IfcStructuralCurveConnection_type = new entity(strings[2570], false, 1097, IFC4X3_RC2_IfcStructuralConnection_type); + IFC4X3_RC2_IfcStructuralCurveMember_type = new entity(strings[2571], false, 1098, IFC4X3_RC2_IfcStructuralMember_type); + IFC4X3_RC2_IfcStructuralCurveMemberVarying_type = new entity(strings[2572], false, 1100, IFC4X3_RC2_IfcStructuralCurveMember_type); + IFC4X3_RC2_IfcStructuralCurveReaction_type = new entity(strings[2573], false, 1101, IFC4X3_RC2_IfcStructuralReaction_type); + IFC4X3_RC2_IfcStructuralLinearAction_type = new entity(strings[2574], false, 1103, IFC4X3_RC2_IfcStructuralCurveAction_type); + IFC4X3_RC2_IfcStructuralLoadGroup_type = new entity(strings[2575], false, 1107, IFC4X3_RC2_IfcGroup_type); + IFC4X3_RC2_IfcStructuralPointAction_type = new entity(strings[2576], false, 1119, IFC4X3_RC2_IfcStructuralAction_type); + IFC4X3_RC2_IfcStructuralPointConnection_type = new entity(strings[2577], false, 1120, IFC4X3_RC2_IfcStructuralConnection_type); + IFC4X3_RC2_IfcStructuralPointReaction_type = new entity(strings[2578], false, 1121, IFC4X3_RC2_IfcStructuralReaction_type); + IFC4X3_RC2_IfcStructuralResultGroup_type = new entity(strings[2579], false, 1123, IFC4X3_RC2_IfcGroup_type); + IFC4X3_RC2_IfcStructuralSurfaceAction_type = new entity(strings[2580], false, 1124, IFC4X3_RC2_IfcStructuralAction_type); + IFC4X3_RC2_IfcStructuralSurfaceConnection_type = new entity(strings[2581], false, 1126, IFC4X3_RC2_IfcStructuralConnection_type); + IFC4X3_RC2_IfcSubContractResource_type = new entity(strings[2582], false, 1135, IFC4X3_RC2_IfcConstructionResource_type); + IFC4X3_RC2_IfcSurfaceFeature_type = new entity(strings[2583], false, 1142, IFC4X3_RC2_IfcFeatureElement_type); + IFC4X3_RC2_IfcSwitchingDeviceType_type = new entity(strings[2584], false, 1162, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcSystem_type = new entity(strings[2585], false, 1164, IFC4X3_RC2_IfcGroup_type); + IFC4X3_RC2_IfcSystemFurnitureElement_type = new entity(strings[2586], false, 1165, IFC4X3_RC2_IfcFurnishingElement_type); + IFC4X3_RC2_IfcTankType_type = new entity(strings[2587], false, 1172, IFC4X3_RC2_IfcFlowStorageDeviceType_type); + IFC4X3_RC2_IfcTendon_type = new entity(strings[2588], false, 1183, IFC4X3_RC2_IfcReinforcingElement_type); + IFC4X3_RC2_IfcTendonAnchor_type = new entity(strings[2589], false, 1184, IFC4X3_RC2_IfcReinforcingElement_type); + IFC4X3_RC2_IfcTendonAnchorType_type = new entity(strings[2590], false, 1185, IFC4X3_RC2_IfcReinforcingElementType_type); + IFC4X3_RC2_IfcTendonConduit_type = new entity(strings[2591], false, 1187, IFC4X3_RC2_IfcReinforcingElement_type); + IFC4X3_RC2_IfcTendonConduitType_type = new entity(strings[2592], false, 1188, IFC4X3_RC2_IfcReinforcingElementType_type); + IFC4X3_RC2_IfcTendonType_type = new entity(strings[2593], false, 1190, IFC4X3_RC2_IfcReinforcingElementType_type); + IFC4X3_RC2_IfcTrackElementType_type = new entity(strings[2594], false, 1231, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcTransformerType_type = new entity(strings[2595], false, 1234, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcTransitionCurveSegment2D_type = new entity(strings[2596], false, 1237, IFC4X3_RC2_IfcCurveSegment2D_type); + IFC4X3_RC2_IfcTransportElement_type = new entity(strings[2597], false, 1240, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcTrimmedCurve_type = new entity(strings[2598], false, 1248, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcTubeBundleType_type = new entity(strings[2599], false, 1253, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcUnitaryEquipmentType_type = new entity(strings[2600], false, 1264, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcValveType_type = new entity(strings[2601], false, 1272, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcVibrationDamper_type = new entity(strings[2602], false, 1280, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcVibrationDamperType_type = new entity(strings[2603], false, 1281, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcVibrationIsolator_type = new entity(strings[2604], false, 1283, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcVibrationIsolatorType_type = new entity(strings[2605], false, 1284, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcVirtualElement_type = new entity(strings[2606], false, 1286, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcVoidStratum_type = new entity(strings[2607], false, 1290, IFC4X3_RC2_IfcGeotechnicalStratum_type); + IFC4X3_RC2_IfcVoidingFeature_type = new entity(strings[2608], false, 1288, IFC4X3_RC2_IfcFeatureElementSubtraction_type); + IFC4X3_RC2_IfcWallType_type = new entity(strings[2609], false, 1296, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcWasteTerminalType_type = new entity(strings[2610], false, 1302, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcWaterStratum_type = new entity(strings[2611], false, 1304, IFC4X3_RC2_IfcGeotechnicalStratum_type); + IFC4X3_RC2_IfcWindowType_type = new entity(strings[2612], false, 1314, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcWorkCalendar_type = new entity(strings[2613], false, 1317, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcWorkControl_type = new entity(strings[2614], true, 1319, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcWorkPlan_type = new entity(strings[2615], false, 1320, IFC4X3_RC2_IfcWorkControl_type); + IFC4X3_RC2_IfcWorkSchedule_type = new entity(strings[2616], false, 1322, IFC4X3_RC2_IfcWorkControl_type); + IFC4X3_RC2_IfcZone_type = new entity(strings[2617], false, 1325, IFC4X3_RC2_IfcSystem_type); + IFC4X3_RC2_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2618], 283, { + IFC4X3_RC2_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC2_IfcCurveStyleFontSelect_type + }); + IFC4X3_RC2_IfcCurveOnSurface_type = new select_type(strings[2619], 286, { + IFC4X3_RC2_IfcCompositeCurveOnSurface_type, + IFC4X3_RC2_IfcPcurve_type, + IFC4X3_RC2_IfcSurfaceCurve_type + }); + IFC4X3_RC2_IfcCurveOrEdgeCurve_type = new select_type(strings[2620], 287, { + IFC4X3_RC2_IfcBoundedCurve_type, + IFC4X3_RC2_IfcEdgeCurve_type + }); + IFC4X3_RC2_IfcInterferenceSelect_type = new select_type(strings[2621], 568, { + IFC4X3_RC2_IfcElement_type, + IFC4X3_RC2_IfcSpatialElement_type + }); + IFC4X3_RC2_IfcSpatialReferenceSelect_type = new select_type(strings[2622], 1067, { + IFC4X3_RC2_IfcProduct_type, + IFC4X3_RC2_IfcSystem_type + }); + IFC4X3_RC2_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2623], 1091, { + IFC4X3_RC2_IfcElement_type, + IFC4X3_RC2_IfcStructuralItem_type + }); + IFC4X3_RC2_IfcActionRequest_type = new entity(strings[2624], false, 2, IFC4X3_RC2_IfcControl_type); + IFC4X3_RC2_IfcAirTerminalBoxType_type = new entity(strings[2625], false, 19, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcAirTerminalType_type = new entity(strings[2626], false, 21, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type = new entity(strings[2627], false, 24, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcAlignmentCant_type = new entity(strings[2628], false, 33, IFC4X3_RC2_IfcLinearElement_type); + IFC4X3_RC2_IfcAlignmentCurve_type = new entity(strings[2629], false, 36, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcAlignmentHorizontal_type = new entity(strings[2630], false, 37, IFC4X3_RC2_IfcLinearElement_type); + IFC4X3_RC2_IfcAlignmentSegment_type = new entity(strings[2631], false, 41, IFC4X3_RC2_IfcLinearElement_type); + IFC4X3_RC2_IfcAlignmentVertical_type = new entity(strings[2632], false, 43, IFC4X3_RC2_IfcLinearElement_type); + IFC4X3_RC2_IfcAsset_type = new entity(strings[2633], false, 66, IFC4X3_RC2_IfcGroup_type); + IFC4X3_RC2_IfcAudioVisualApplianceType_type = new entity(strings[2634], false, 69, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcBSplineCurve_type = new entity(strings[2635], true, 115, IFC4X3_RC2_IfcBoundedCurve_type); + IFC4X3_RC2_IfcBSplineCurveWithKnots_type = new entity(strings[2636], false, 117, IFC4X3_RC2_IfcBSplineCurve_type); + IFC4X3_RC2_IfcBeamType_type = new entity(strings[2637], false, 79, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcBearingType_type = new entity(strings[2638], false, 82, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcBoilerType_type = new entity(strings[2639], false, 92, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcBoundaryCurve_type = new entity(strings[2640], false, 101, IFC4X3_RC2_IfcCompositeCurveOnSurface_type); + IFC4X3_RC2_IfcBridge_type = new entity(strings[2641], false, 111, IFC4X3_RC2_IfcFacility_type); + IFC4X3_RC2_IfcBridgePart_type = new entity(strings[2642], false, 112, IFC4X3_RC2_IfcFacilityPart_type); + IFC4X3_RC2_IfcBuilding_type = new entity(strings[2643], false, 121, IFC4X3_RC2_IfcFacility_type); + IFC4X3_RC2_IfcBuildingElementPart_type = new entity(strings[2644], false, 122, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcBuildingElementPartType_type = new entity(strings[2645], false, 123, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcBuildingElementProxyType_type = new entity(strings[2646], false, 126, IFC4X3_RC2_IfcBuiltElementType_type); + IFC4X3_RC2_IfcBuildingSystem_type = new entity(strings[2647], false, 129, IFC4X3_RC2_IfcSystem_type); + IFC4X3_RC2_IfcBuiltElement_type = new entity(strings[2648], false, 131, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcBuiltSystem_type = new entity(strings[2649], false, 133, IFC4X3_RC2_IfcSystem_type); + IFC4X3_RC2_IfcBurnerType_type = new entity(strings[2650], false, 136, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcCableCarrierFittingType_type = new entity(strings[2651], false, 139, IFC4X3_RC2_IfcFlowFittingType_type); + IFC4X3_RC2_IfcCableCarrierSegmentType_type = new entity(strings[2652], false, 142, IFC4X3_RC2_IfcFlowSegmentType_type); + IFC4X3_RC2_IfcCableFittingType_type = new entity(strings[2653], false, 145, IFC4X3_RC2_IfcFlowFittingType_type); + IFC4X3_RC2_IfcCableSegmentType_type = new entity(strings[2654], false, 148, IFC4X3_RC2_IfcFlowSegmentType_type); + IFC4X3_RC2_IfcCaissonFoundationType_type = new entity(strings[2655], false, 151, IFC4X3_RC2_IfcDeepFoundationType_type); + IFC4X3_RC2_IfcChillerType_type = new entity(strings[2656], false, 166, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcChimney_type = new entity(strings[2657], false, 168, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcCircle_type = new entity(strings[2658], false, 171, IFC4X3_RC2_IfcConic_type); + IFC4X3_RC2_IfcCircularArcSegment2D_type = new entity(strings[2659], false, 174, IFC4X3_RC2_IfcCurveSegment2D_type); + IFC4X3_RC2_IfcCivilElement_type = new entity(strings[2660], false, 175, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcCoilType_type = new entity(strings[2661], false, 184, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcColumn_type = new entity(strings[2662], false, 191, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcColumnStandardCase_type = new entity(strings[2663], false, 192, IFC4X3_RC2_IfcColumn_type); + IFC4X3_RC2_IfcCommunicationsApplianceType_type = new entity(strings[2664], false, 196, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcCompressorType_type = new entity(strings[2665], false, 208, IFC4X3_RC2_IfcFlowMovingDeviceType_type); + IFC4X3_RC2_IfcCondenserType_type = new entity(strings[2666], false, 211, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcConstructionEquipmentResource_type = new entity(strings[2667], false, 224, IFC4X3_RC2_IfcConstructionResource_type); + IFC4X3_RC2_IfcConstructionMaterialResource_type = new entity(strings[2668], false, 227, IFC4X3_RC2_IfcConstructionResource_type); + IFC4X3_RC2_IfcConstructionProductResource_type = new entity(strings[2669], false, 230, IFC4X3_RC2_IfcConstructionResource_type); + IFC4X3_RC2_IfcConveyorSegmentType_type = new entity(strings[2670], false, 245, IFC4X3_RC2_IfcFlowSegmentType_type); + IFC4X3_RC2_IfcCooledBeamType_type = new entity(strings[2671], false, 248, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcCoolingTowerType_type = new entity(strings[2672], false, 251, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcCourse_type = new entity(strings[2673], false, 262, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcCovering_type = new entity(strings[2674], false, 265, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcCurtainWall_type = new entity(strings[2675], false, 276, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcDamperType_type = new entity(strings[2676], false, 297, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcDeepFoundation_type = new entity(strings[2677], false, 304, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcDiscreteAccessory_type = new entity(strings[2678], false, 319, IFC4X3_RC2_IfcElementComponent_type); + IFC4X3_RC2_IfcDiscreteAccessoryType_type = new entity(strings[2679], false, 320, IFC4X3_RC2_IfcElementComponentType_type); + IFC4X3_RC2_IfcDistributionBoardType_type = new entity(strings[2680], false, 323, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcDistributionChamberElementType_type = new entity(strings[2681], false, 326, IFC4X3_RC2_IfcDistributionFlowElementType_type); + IFC4X3_RC2_IfcDistributionControlElementType_type = new entity(strings[2682], true, 330, IFC4X3_RC2_IfcDistributionElementType_type); + IFC4X3_RC2_IfcDistributionElement_type = new entity(strings[2683], false, 331, IFC4X3_RC2_IfcElement_type); + IFC4X3_RC2_IfcDistributionFlowElement_type = new entity(strings[2684], false, 333, IFC4X3_RC2_IfcDistributionElement_type); + IFC4X3_RC2_IfcDistributionPort_type = new entity(strings[2685], false, 335, IFC4X3_RC2_IfcPort_type); + IFC4X3_RC2_IfcDistributionSystem_type = new entity(strings[2686], false, 337, IFC4X3_RC2_IfcSystem_type); + IFC4X3_RC2_IfcDoor_type = new entity(strings[2687], false, 345, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcDoorStandardCase_type = new entity(strings[2688], false, 350, IFC4X3_RC2_IfcDoor_type); + IFC4X3_RC2_IfcDuctFittingType_type = new entity(strings[2689], false, 361, IFC4X3_RC2_IfcFlowFittingType_type); + IFC4X3_RC2_IfcDuctSegmentType_type = new entity(strings[2690], false, 364, IFC4X3_RC2_IfcFlowSegmentType_type); + IFC4X3_RC2_IfcDuctSilencerType_type = new entity(strings[2691], false, 367, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC2_IfcEarthworksCut_type = new entity(strings[2692], false, 371, IFC4X3_RC2_IfcFeatureElementSubtraction_type); + IFC4X3_RC2_IfcEarthworksElement_type = new entity(strings[2693], false, 373, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcEarthworksFill_type = new entity(strings[2694], false, 374, IFC4X3_RC2_IfcEarthworksElement_type); + IFC4X3_RC2_IfcElectricApplianceType_type = new entity(strings[2695], false, 380, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcElectricDistributionBoardType_type = new entity(strings[2696], false, 387, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type = new entity(strings[2697], false, 390, IFC4X3_RC2_IfcFlowStorageDeviceType_type); + IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type = new entity(strings[2698], false, 393, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC2_IfcElectricGeneratorType_type = new entity(strings[2699], false, 396, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcElectricMotorType_type = new entity(strings[2700], false, 399, IFC4X3_RC2_IfcEnergyConversionDeviceType_type); + IFC4X3_RC2_IfcElectricTimeControlType_type = new entity(strings[2701], false, 403, IFC4X3_RC2_IfcFlowControllerType_type); + IFC4X3_RC2_IfcEnergyConversionDevice_type = new entity(strings[2702], false, 418, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcEngine_type = new entity(strings[2703], false, 421, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcEvaporativeCooler_type = new entity(strings[2704], false, 424, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcEvaporator_type = new entity(strings[2705], false, 427, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcExternalSpatialElement_type = new entity(strings[2706], false, 442, IFC4X3_RC2_IfcExternalSpatialStructureElement_type); + IFC4X3_RC2_IfcFanType_type = new entity(strings[2707], false, 461, IFC4X3_RC2_IfcFlowMovingDeviceType_type); + IFC4X3_RC2_IfcFilterType_type = new entity(strings[2708], false, 474, IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC2_IfcFireSuppressionTerminalType_type = new entity(strings[2709], false, 477, IFC4X3_RC2_IfcFlowTerminalType_type); + IFC4X3_RC2_IfcFlowController_type = new entity(strings[2710], false, 480, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFlowFitting_type = new entity(strings[2711], false, 483, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFlowInstrumentType_type = new entity(strings[2712], false, 486, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcFlowMeter_type = new entity(strings[2713], false, 488, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcFlowMovingDevice_type = new entity(strings[2714], false, 491, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFlowSegment_type = new entity(strings[2715], false, 493, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFlowStorageDevice_type = new entity(strings[2716], false, 495, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFlowTerminal_type = new entity(strings[2717], false, 497, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFlowTreatmentDevice_type = new entity(strings[2718], false, 499, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcFooting_type = new entity(strings[2719], false, 504, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcGeotechnicalAssembly_type = new entity(strings[2720], true, 526, IFC4X3_RC2_IfcGeotechnicalElement_type); + IFC4X3_RC2_IfcGrid_type = new entity(strings[2721], false, 532, IFC4X3_RC2_IfcPositioningElement_type); + IFC4X3_RC2_IfcHeatExchanger_type = new entity(strings[2722], false, 540, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcHumidifier_type = new entity(strings[2723], false, 545, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcInterceptor_type = new entity(strings[2724], false, 565, IFC4X3_RC2_IfcFlowTreatmentDevice_type); + IFC4X3_RC2_IfcJunctionBox_type = new entity(strings[2725], false, 578, IFC4X3_RC2_IfcFlowFitting_type); + IFC4X3_RC2_IfcKerb_type = new entity(strings[2726], false, 581, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcLamp_type = new entity(strings[2727], false, 590, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcLightFixture_type = new entity(strings[2728], false, 604, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcLinearPositioningElement_type = new entity(strings[2729], false, 622, IFC4X3_RC2_IfcPositioningElement_type); + IFC4X3_RC2_IfcLiquidTerminal_type = new entity(strings[2730], false, 628, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcMedicalDevice_type = new entity(strings[2731], false, 677, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcMember_type = new entity(strings[2732], false, 680, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcMemberStandardCase_type = new entity(strings[2733], false, 681, IFC4X3_RC2_IfcMember_type); + IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type = new entity(strings[2734], false, 687, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcMooringDevice_type = new entity(strings[2735], false, 703, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcMotorConnection_type = new entity(strings[2736], false, 706, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcNavigationElement_type = new entity(strings[2737], false, 710, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcOuterBoundaryCurve_type = new entity(strings[2738], false, 738, IFC4X3_RC2_IfcBoundaryCurve_type); + IFC4X3_RC2_IfcOutlet_type = new entity(strings[2739], false, 739, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcPavement_type = new entity(strings[2740], false, 746, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcPile_type = new entity(strings[2741], false, 762, IFC4X3_RC2_IfcDeepFoundation_type); + IFC4X3_RC2_IfcPipeFitting_type = new entity(strings[2742], false, 766, IFC4X3_RC2_IfcFlowFitting_type); + IFC4X3_RC2_IfcPipeSegment_type = new entity(strings[2743], false, 769, IFC4X3_RC2_IfcFlowSegment_type); + IFC4X3_RC2_IfcPlate_type = new entity(strings[2744], false, 780, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcPlateStandardCase_type = new entity(strings[2745], false, 781, IFC4X3_RC2_IfcPlate_type); + IFC4X3_RC2_IfcProtectiveDevice_type = new entity(strings[2746], false, 856, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2747], false, 858, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcPump_type = new entity(strings[2748], false, 863, IFC4X3_RC2_IfcFlowMovingDevice_type); + IFC4X3_RC2_IfcRail_type = new entity(strings[2749], false, 874, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcRailing_type = new entity(strings[2750], false, 875, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcRamp_type = new entity(strings[2751], false, 882, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcRampFlight_type = new entity(strings[2752], false, 883, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2753], false, 889, IFC4X3_RC2_IfcBSplineCurveWithKnots_type); + IFC4X3_RC2_IfcReinforcedSoil_type = new entity(strings[2754], false, 903, IFC4X3_RC2_IfcEarthworksElement_type); + IFC4X3_RC2_IfcReinforcingBar_type = new entity(strings[2755], false, 907, IFC4X3_RC2_IfcReinforcingElement_type); + IFC4X3_RC2_IfcReinforcingBarType_type = new entity(strings[2756], false, 910, IFC4X3_RC2_IfcReinforcingElementType_type); + IFC4X3_RC2_IfcRoof_type = new entity(strings[2757], false, 986, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcSanitaryTerminal_type = new entity(strings[2758], false, 995, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcSensorType_type = new entity(strings[2759], false, 1013, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcShadingDevice_type = new entity(strings[2760], false, 1017, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcSignal_type = new entity(strings[2761], false, 1027, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcSlab_type = new entity(strings[2762], false, 1041, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcSlabElementedCase_type = new entity(strings[2763], false, 1042, IFC4X3_RC2_IfcSlab_type); + IFC4X3_RC2_IfcSlabStandardCase_type = new entity(strings[2764], false, 1043, IFC4X3_RC2_IfcSlab_type); + IFC4X3_RC2_IfcSolarDevice_type = new entity(strings[2765], false, 1047, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcSpaceHeater_type = new entity(strings[2766], false, 1060, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcStackTerminal_type = new entity(strings[2767], false, 1079, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcStair_type = new entity(strings[2768], false, 1082, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcStairFlight_type = new entity(strings[2769], false, 1083, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcStructuralAnalysisModel_type = new entity(strings[2770], false, 1092, IFC4X3_RC2_IfcSystem_type); + IFC4X3_RC2_IfcStructuralLoadCase_type = new entity(strings[2771], false, 1105, IFC4X3_RC2_IfcStructuralLoadGroup_type); + IFC4X3_RC2_IfcStructuralPlanarAction_type = new entity(strings[2772], false, 1118, IFC4X3_RC2_IfcStructuralSurfaceAction_type); + IFC4X3_RC2_IfcSwitchingDevice_type = new entity(strings[2773], false, 1161, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcTank_type = new entity(strings[2774], false, 1171, IFC4X3_RC2_IfcFlowStorageDevice_type); + IFC4X3_RC2_IfcTrackElement_type = new entity(strings[2775], false, 1230, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcTransformer_type = new entity(strings[2776], false, 1233, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcTubeBundle_type = new entity(strings[2777], false, 1252, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcUnitaryControlElementType_type = new entity(strings[2778], false, 1261, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcUnitaryEquipment_type = new entity(strings[2779], false, 1263, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcValve_type = new entity(strings[2780], false, 1271, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcWall_type = new entity(strings[2781], false, 1293, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcWallElementedCase_type = new entity(strings[2782], false, 1294, IFC4X3_RC2_IfcWall_type); + IFC4X3_RC2_IfcWallStandardCase_type = new entity(strings[2783], false, 1295, IFC4X3_RC2_IfcWall_type); + IFC4X3_RC2_IfcWasteTerminal_type = new entity(strings[2784], false, 1301, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcWindow_type = new entity(strings[2785], false, 1305, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcWindowStandardCase_type = new entity(strings[2786], false, 1310, IFC4X3_RC2_IfcWindow_type); + IFC4X3_RC2_IfcSpaceBoundarySelect_type = new select_type(strings[2787], 1059, { + IFC4X3_RC2_IfcExternalSpatialElement_type, + IFC4X3_RC2_IfcSpace_type + }); + IFC4X3_RC2_IfcActuatorType_type = new entity(strings[2788], false, 10, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcAirTerminal_type = new entity(strings[2789], false, 17, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcAirTerminalBox_type = new entity(strings[2790], false, 18, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcAirToAirHeatRecovery_type = new entity(strings[2791], false, 23, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcAlarmType_type = new entity(strings[2792], false, 27, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcAlignment_type = new entity(strings[2793], false, 29, IFC4X3_RC2_IfcLinearPositioningElement_type); + IFC4X3_RC2_IfcAudioVisualAppliance_type = new entity(strings[2794], false, 68, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcBeam_type = new entity(strings[2795], false, 77, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcBeamStandardCase_type = new entity(strings[2796], false, 78, IFC4X3_RC2_IfcBeam_type); + IFC4X3_RC2_IfcBearing_type = new entity(strings[2797], false, 81, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcBoiler_type = new entity(strings[2798], false, 91, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcBorehole_type = new entity(strings[2799], false, 99, IFC4X3_RC2_IfcGeotechnicalAssembly_type); + IFC4X3_RC2_IfcBuildingElementProxy_type = new entity(strings[2800], false, 125, IFC4X3_RC2_IfcBuiltElement_type); + IFC4X3_RC2_IfcBurner_type = new entity(strings[2801], false, 135, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcCableCarrierFitting_type = new entity(strings[2802], false, 138, IFC4X3_RC2_IfcFlowFitting_type); + IFC4X3_RC2_IfcCableCarrierSegment_type = new entity(strings[2803], false, 141, IFC4X3_RC2_IfcFlowSegment_type); + IFC4X3_RC2_IfcCableFitting_type = new entity(strings[2804], false, 144, IFC4X3_RC2_IfcFlowFitting_type); + IFC4X3_RC2_IfcCableSegment_type = new entity(strings[2805], false, 147, IFC4X3_RC2_IfcFlowSegment_type); + IFC4X3_RC2_IfcCaissonFoundation_type = new entity(strings[2806], false, 150, IFC4X3_RC2_IfcDeepFoundation_type); + IFC4X3_RC2_IfcChiller_type = new entity(strings[2807], false, 165, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcCoil_type = new entity(strings[2808], false, 183, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcCommunicationsAppliance_type = new entity(strings[2809], false, 195, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcCompressor_type = new entity(strings[2810], false, 207, IFC4X3_RC2_IfcFlowMovingDevice_type); + IFC4X3_RC2_IfcCondenser_type = new entity(strings[2811], false, 210, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcControllerType_type = new entity(strings[2812], false, 240, IFC4X3_RC2_IfcDistributionControlElementType_type); + IFC4X3_RC2_IfcConveyorSegment_type = new entity(strings[2813], false, 244, IFC4X3_RC2_IfcFlowSegment_type); + IFC4X3_RC2_IfcCooledBeam_type = new entity(strings[2814], false, 247, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcCoolingTower_type = new entity(strings[2815], false, 250, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcDamper_type = new entity(strings[2816], false, 296, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcDistributionBoard_type = new entity(strings[2817], false, 322, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcDistributionChamberElement_type = new entity(strings[2818], false, 325, IFC4X3_RC2_IfcDistributionFlowElement_type); + IFC4X3_RC2_IfcDistributionCircuit_type = new entity(strings[2819], false, 328, IFC4X3_RC2_IfcDistributionSystem_type); + IFC4X3_RC2_IfcDistributionControlElement_type = new entity(strings[2820], false, 329, IFC4X3_RC2_IfcDistributionElement_type); + IFC4X3_RC2_IfcDuctFitting_type = new entity(strings[2821], false, 360, IFC4X3_RC2_IfcFlowFitting_type); + IFC4X3_RC2_IfcDuctSegment_type = new entity(strings[2822], false, 363, IFC4X3_RC2_IfcFlowSegment_type); + IFC4X3_RC2_IfcDuctSilencer_type = new entity(strings[2823], false, 366, IFC4X3_RC2_IfcFlowTreatmentDevice_type); + IFC4X3_RC2_IfcElectricAppliance_type = new entity(strings[2824], false, 379, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcElectricDistributionBoard_type = new entity(strings[2825], false, 386, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcElectricFlowStorageDevice_type = new entity(strings[2826], false, 389, IFC4X3_RC2_IfcFlowStorageDevice_type); + IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type = new entity(strings[2827], false, 392, IFC4X3_RC2_IfcFlowTreatmentDevice_type); + IFC4X3_RC2_IfcElectricGenerator_type = new entity(strings[2828], false, 395, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcElectricMotor_type = new entity(strings[2829], false, 398, IFC4X3_RC2_IfcEnergyConversionDevice_type); + IFC4X3_RC2_IfcElectricTimeControl_type = new entity(strings[2830], false, 402, IFC4X3_RC2_IfcFlowController_type); + IFC4X3_RC2_IfcFan_type = new entity(strings[2831], false, 460, IFC4X3_RC2_IfcFlowMovingDevice_type); + IFC4X3_RC2_IfcFilter_type = new entity(strings[2832], false, 473, IFC4X3_RC2_IfcFlowTreatmentDevice_type); + IFC4X3_RC2_IfcFireSuppressionTerminal_type = new entity(strings[2833], false, 476, IFC4X3_RC2_IfcFlowTerminal_type); + IFC4X3_RC2_IfcFlowInstrument_type = new entity(strings[2834], false, 485, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcGeomodel_type = new entity(strings[2835], false, 524, IFC4X3_RC2_IfcGeotechnicalAssembly_type); + IFC4X3_RC2_IfcGeoslice_type = new entity(strings[2836], false, 525, IFC4X3_RC2_IfcGeotechnicalAssembly_type); + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2837], false, 857, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcSensor_type = new entity(strings[2838], false, 1012, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcUnitaryControlElement_type = new entity(strings[2839], false, 1260, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcActuator_type = new entity(strings[2840], false, 9, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcAlarm_type = new entity(strings[2841], false, 26, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcController_type = new entity(strings[2842], false, 239, IFC4X3_RC2_IfcDistributionControlElement_type); + IFC4X3_RC2_IfcActionRequest_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcActor_type->set_attributes({ + new attribute(strings[2846], new named_type(IFC4X3_RC2_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcActorRole_type->set_attributes({ + new attribute(strings[2847], new named_type(IFC4X3_RC2_IfcRoleEnum_type), false), + new attribute(strings[2848], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcActuator_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcActuatorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAddress_type->set_attributes({ + new attribute(strings[2850], new named_type(IFC4X3_RC2_IfcAddressTypeEnum_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2852], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlarm_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlarmType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2854], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignment2DVerSegLine_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type->set_attributes({ + new attribute(strings[2855], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2854], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentCant_type->set_attributes({ + new attribute(strings[2856], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAlignmentCantSegment_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentCantSegment_type->set_attributes({ + new attribute(strings[2858], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2859], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2860], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2861], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[2862], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2863], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[2864], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentCurve_type->set_attributes({ + new attribute(strings[2865], new named_type(IFC4X3_RC2_IfcAlignmentHorizontal_type), false), + new attribute(strings[2866], new named_type(IFC4X3_RC2_IfcAlignmentVertical_type), true), + new attribute(strings[2867], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcAlignmentHorizontal_type->set_attributes({ + new attribute(strings[2858], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAlignmentHorizontalSegment_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentHorizontalSegment_type->set_attributes({ + new attribute(strings[2868], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false), + new attribute(strings[2869], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2870], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2871], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2873], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentParameterSegment_type->set_attributes({ + new attribute(strings[2874], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcAlignmentSegment_type->set_attributes({ + new attribute(strings[2876], new named_type(IFC4X3_RC2_IfcAlignmentParameterSegment_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentVertical_type->set_attributes({ + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAlignmentVerticalSegment_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAlignmentVerticalSegment_type->set_attributes({ + new attribute(strings[2858], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2859], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2877], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2878], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2879], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2880], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAnnotation_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAnnotationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2881], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[2882], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X3_RC2_IfcApplication_type->set_attributes({ + new attribute(strings[2883], new named_type(IFC4X3_RC2_IfcOrganization_type), false), + new attribute(strings[2884], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2885], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2886], new named_type(IFC4X3_RC2_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[2888], new named_type(IFC4X3_RC2_IfcAppliedValueSelect_type), true), + new attribute(strings[2889], new named_type(IFC4X3_RC2_IfcMeasureWithUnit_type), true), + new attribute(strings[2890], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[2891], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2893], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2894], new named_type(IFC4X3_RC2_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2895], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcApproval_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[2897], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2898], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2899], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[2900], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[2901], new named_type(IFC4X3_RC2_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2902], new named_type(IFC4X3_RC2_IfcApproval_type), false), + new attribute(strings[2903], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2904], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2906], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcAsset_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2908], new named_type(IFC4X3_RC2_IfcCostValue_type), true), + new attribute(strings[2909], new named_type(IFC4X3_RC2_IfcCostValue_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC2_IfcCostValue_type), true), + new attribute(strings[2911], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[2912], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[2913], new named_type(IFC4X3_RC2_IfcPerson_type), true), + new attribute(strings[2914], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[2915], new named_type(IFC4X3_RC2_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2917], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2919], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2920], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2921], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2922], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2923], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2924], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2925], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2926], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2927], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2929], new named_type(IFC4X3_RC2_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcDirection_type), true), + new attribute(strings[2929], new named_type(IFC4X3_RC2_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcAxis2PlacementLinear_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcDirection_type), true), + new attribute(strings[2929], new named_type(IFC4X3_RC2_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcAxisLateralInclination_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2930], new named_type(IFC4X3_RC2_IfcInteger_type), false), + new attribute(strings[2931], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type)), false), + new attribute(strings[2932], new named_type(IFC4X3_RC2_IfcBSplineCurveForm_type), false), + new attribute(strings[2933], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC2_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2935], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false), + new attribute(strings[2936], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false), + new attribute(strings[2937], new named_type(IFC4X3_RC2_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2938], new named_type(IFC4X3_RC2_IfcInteger_type), false), + new attribute(strings[2939], new named_type(IFC4X3_RC2_IfcInteger_type), false), + new attribute(strings[2931], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type))), false), + new attribute(strings[2940], new named_type(IFC4X3_RC2_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2941], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[2942], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC2_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2943], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false), + new attribute(strings[2944], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false), + new attribute(strings[2945], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false), + new attribute(strings[2946], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false), + new attribute(strings[2937], new named_type(IFC4X3_RC2_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBeam_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBeamType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBearing_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBearingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBearingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBearingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2947], new named_type(IFC4X3_RC2_IfcIdentifier_type), false), + new attribute(strings[2948], new named_type(IFC4X3_RC2_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBlock_type->set_attributes({ + new attribute(strings[2949], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2950], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2951], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcBlossCurve_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false), + new attribute(strings[2953], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcBoiler_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBoilerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2954], new named_type(IFC4X3_RC2_IfcBooleanOperator_type), false), + new attribute(strings[2955], new named_type(IFC4X3_RC2_IfcBooleanOperand_type), false), + new attribute(strings[2956], new named_type(IFC4X3_RC2_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcBorehole_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC2_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC2_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2957], new named_type(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2958], new named_type(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2959], new named_type(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2960], new named_type(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2961], new named_type(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2962], new named_type(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2963], new named_type(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2964], new named_type(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2965], new named_type(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2966], new named_type(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2967], new named_type(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2968], new named_type(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2969], new named_type(IFC4X3_RC2_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2970], new named_type(IFC4X3_RC2_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2971], new named_type(IFC4X3_RC2_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2972], new named_type(IFC4X3_RC2_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2973], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false), + new attribute(strings[2974], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2975], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2976], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2977], new named_type(IFC4X3_RC2_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcBridge_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBridgeTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBridgePart_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuilding_type->set_attributes({ + new attribute(strings[2978], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[2979], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[2980], new named_type(IFC4X3_RC2_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuiltElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuiltElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBuiltSystem_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBuiltSystemTypeEnum_type), true), + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBurner_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcBurnerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2984], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2985], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2986], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2987], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableFitting_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableSegment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCaissonFoundation_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCaissonFoundationType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2988], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2989], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type))), false), + new attribute(strings[2990], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC2_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2989], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type))), false), + new attribute(strings[2990], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC2_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2991], new named_type(IFC4X3_RC2_IfcDirection_type), true), + new attribute(strings[2992], new named_type(IFC4X3_RC2_IfcDirection_type), true), + new attribute(strings[2993], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false), + new attribute(strings[2994], new named_type(IFC4X3_RC2_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2995], new named_type(IFC4X3_RC2_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC2_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2995], new named_type(IFC4X3_RC2_IfcReal_type), true), + new attribute(strings[2997], new named_type(IFC4X3_RC2_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcChiller_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcChillerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcChimney_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcChimneyType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCircle_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2985], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcCircularArcSegment2D_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2999], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcClassification_type->set_attributes({ + new attribute(strings[3000], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3001], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3002], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3003], new named_type(IFC4X3_RC2_IfcURIReference_type), true), + new attribute(strings[3004], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcClassificationReference_type->set_attributes({ + new attribute(strings[3005], new named_type(IFC4X3_RC2_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3006], new named_type(IFC4X3_RC2_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcClothoid_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false), + new attribute(strings[3007], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcCoil_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCoilType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcColourRgb_type->set_attributes({ + new attribute(strings[3008], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3009], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3010], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcColourRgbList_type->set_attributes({ + new attribute(strings[3011], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X3_RC2_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC2_IfcColumn_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcColumnType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcComplexProperty_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_RC2_IfcIdentifier_type), false), + new attribute(strings[3013], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3014], new named_type(IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[3015], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSegment_type)), false), + new attribute(strings[2934], new named_type(IFC4X3_RC2_IfcLogical_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC2_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3016], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3017], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[3018], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false), + new attribute(strings[3019], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcCompressor_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCompressorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCondenser_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCondenserType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConic_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X3_RC2_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[3020], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcFace_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[3021], new named_type(IFC4X3_RC2_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[3022], new named_type(IFC4X3_RC2_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[3023], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3024], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3025], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[3026], new named_type(IFC4X3_RC2_IfcPointOrVertexPoint_type), false), + new attribute(strings[3027], new named_type(IFC4X3_RC2_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_RC2_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[3029], new named_type(IFC4X3_RC2_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[3030], new named_type(IFC4X3_RC2_IfcSolidOrShell_type), false), + new attribute(strings[3031], new named_type(IFC4X3_RC2_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcConstraint_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3032], new named_type(IFC4X3_RC2_IfcConstraintEnum_type), false), + new attribute(strings[3033], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3034], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[3035], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3036], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionResource_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC2_IfcResourceTime_type), true), + new attribute(strings[3038], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAppliedValue_type)), true), + new attribute(strings[3039], new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[3038], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAppliedValue_type)), true), + new attribute(strings[3039], new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcContext_type->set_attributes({ + new attribute(strings[3040], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3041], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentationContext_type)), true), + new attribute(strings[3043], new named_type(IFC4X3_RC2_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcControl_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcController_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcControllerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[3044], new named_type(IFC4X3_RC2_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[3045], new named_type(IFC4X3_RC2_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcConveyorSegment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcConveyorSegmentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[3046], new named_type(IFC4X3_RC2_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[3047], new named_type(IFC4X3_RC2_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3048], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3049], new named_type(IFC4X3_RC2_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcCostItem_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCostItemTypeEnum_type), true), + new attribute(strings[3050], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCostValue_type)), true), + new attribute(strings[3051], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3052], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3053], new named_type(IFC4X3_RC2_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCourse_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCourseTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCourseType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCourseTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCovering_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCoveringType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCrewResource_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC2_IfcCsgSolid_type->set_attributes({ + new attribute(strings[3054], new named_type(IFC4X3_RC2_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X3_RC2_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X3_RC2_IfcMonetaryUnit_type), false), + new attribute(strings[3056], new named_type(IFC4X3_RC2_IfcMonetaryUnit_type), false), + new attribute(strings[3057], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), false), + new attribute(strings[3058], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3059], new named_type(IFC4X3_RC2_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[3060], new named_type(IFC4X3_RC2_IfcPlane_type), false), + new attribute(strings[2881], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[2882], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC2_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[3060], new named_type(IFC4X3_RC2_IfcSurface_type), false), + new attribute(strings[3061], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcBoundaryCurve_type)), false), + new attribute(strings[3062], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcCurveSegment_type->set_attributes({ + new attribute(strings[3063], new named_type(IFC4X3_RC2_IfcPlacement_type), false), + new attribute(strings[2872], new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), false), + new attribute(strings[3017], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcCurveSegment2D_type->set_attributes({ + new attribute(strings[2868], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false), + new attribute(strings[2869], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcCurveStyle_type->set_attributes({ + new attribute(strings[3064], new named_type(IFC4X3_RC2_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[3065], new named_type(IFC4X3_RC2_IfcSizeSelect_type), true), + new attribute(strings[3066], new named_type(IFC4X3_RC2_IfcColour_type), true), + new attribute(strings[3067], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3068], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3064], new named_type(IFC4X3_RC2_IfcCurveStyleFontSelect_type), false), + new attribute(strings[3069], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[3070], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3071], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcDamper_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDamperType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDeepFoundation_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDeepFoundationType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[3072], new named_type(IFC4X3_RC2_IfcProfileDef_type), false), + new attribute(strings[2954], new named_type(IFC4X3_RC2_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[3019], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[3073], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDerivedUnitElement_type)), false), + new attribute(strings[3074], new named_type(IFC4X3_RC2_IfcDerivedUnitEnum_type), false), + new attribute(strings[3075], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcNamedUnit_type), false), + new attribute(strings[3077], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[3078], new simple_type(simple_type::integer_type), false), + new attribute(strings[3079], new simple_type(simple_type::integer_type), false), + new attribute(strings[3080], new simple_type(simple_type::integer_type), false), + new attribute(strings[3081], new simple_type(simple_type::integer_type), false), + new attribute(strings[3082], new simple_type(simple_type::integer_type), false), + new attribute(strings[3083], new simple_type(simple_type::integer_type), false), + new attribute(strings[3084], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDirection_type->set_attributes({ + new attribute(strings[3085], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcReal_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3086], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3087], new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), true), + new attribute(strings[3088], new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3086], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3089], new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type), true), + new attribute(strings[3090], new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionBoard_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionBoardType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionPort_type->set_attributes({ + new attribute(strings[3091], new named_type(IFC4X3_RC2_IfcFlowDirectionEnum_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[3092], new named_type(IFC4X3_RC2_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), false), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3003], new named_type(IFC4X3_RC2_IfcURIReference_type), true), + new attribute(strings[2850], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3093], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3094], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3095], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3096], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[3097], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorSelect_type)), true), + new attribute(strings[3035], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3098], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3099], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3100], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[3101], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[3102], new named_type(IFC4X3_RC2_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[3103], new named_type(IFC4X3_RC2_IfcDocumentInformation_type), false), + new attribute(strings[3104], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDocumentInformation_type)), false), + new attribute(strings[3105], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3106], new named_type(IFC4X3_RC2_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcDoor_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3108], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDoorTypeEnum_type), true), + new attribute(strings[3109], new named_type(IFC4X3_RC2_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[3110], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[3111], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3112], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3113], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3114], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3115], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3116], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3117], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3119], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3120], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3121], new named_type(IFC4X3_RC2_IfcShapeAspect_type), true), + new attribute(strings[3122], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3123], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[3124], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3125], new named_type(IFC4X3_RC2_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[3126], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3127], new named_type(IFC4X3_RC2_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[3121], new named_type(IFC4X3_RC2_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDoorStyle_type->set_attributes({ + new attribute(strings[3109], new named_type(IFC4X3_RC2_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[3128], new named_type(IFC4X3_RC2_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[3129], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3130], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDoorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDoorTypeEnum_type), false), + new attribute(strings[3109], new named_type(IFC4X3_RC2_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[3129], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3110], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEarthworksCut_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEarthworksCutTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEarthworksElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEarthworksFill_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEarthworksFillTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEdge_type->set_attributes({ + new attribute(strings[3131], new named_type(IFC4X3_RC2_IfcVertex_type), false), + new attribute(strings[3132], new named_type(IFC4X3_RC2_IfcVertex_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[3133], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3016], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[3134], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElement_type->set_attributes({ + new attribute(strings[2867], new named_type(IFC4X3_RC2_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementAssembly_type->set_attributes({ + new attribute(strings[3135], new named_type(IFC4X3_RC2_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementQuantity_type->set_attributes({ + new attribute(strings[3136], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3137], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementType_type->set_attributes({ + new attribute(strings[3138], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcElementarySurface_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC2_IfcEllipse_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3140], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3140], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEngine_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEngineType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEvaporator_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEvent_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEventTypeEnum_type), true), + new attribute(strings[3141], new named_type(IFC4X3_RC2_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[3142], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3143], new named_type(IFC4X3_RC2_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEventTime_type->set_attributes({ + new attribute(strings[3144], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3145], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3146], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3147], new named_type(IFC4X3_RC2_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcEventType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcEventTypeEnum_type), false), + new attribute(strings[3141], new named_type(IFC4X3_RC2_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[3142], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3148], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcExternalReference_type->set_attributes({ + new attribute(strings[3003], new named_type(IFC4X3_RC2_IfcURIReference_type), true), + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[3149], new named_type(IFC4X3_RC2_IfcExternalReference_type), false), + new attribute(strings[3150], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[3151], new named_type(IFC4X3_RC2_IfcDirection_type), false), + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3152], new named_type(IFC4X3_RC2_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcFace_type->set_attributes({ + new attribute(strings[3153], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3154], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcFaceBound_type->set_attributes({ + new attribute(strings[3155], new named_type(IFC4X3_RC2_IfcLoop_type), false), + new attribute(strings[3156], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC2_IfcFaceSurface_type->set_attributes({ + new attribute(strings[3157], new named_type(IFC4X3_RC2_IfcSurface_type), false), + new attribute(strings[3016], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2852], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcFacility_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFacilityPart_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFacilityPartTypeSelect_type), false), + new attribute(strings[3158], new named_type(IFC4X3_RC2_IfcFacilityUsageEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[3159], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3160], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3161], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3162], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3163], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3164], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFan_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFanType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFastener_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFastenerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[3165], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcFillStyleSelect_type)), false), + new attribute(strings[3067], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[3166], new named_type(IFC4X3_RC2_IfcCurveStyle_type), false), + new attribute(strings[3167], new named_type(IFC4X3_RC2_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[3168], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), true), + new attribute(strings[3169], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), true), + new attribute(strings[3170], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[3171], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcVector_type)), false), + new attribute(strings[3172], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStyledItem_type)), false), + new attribute(strings[3173], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcFilter_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFilterType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3174], new named_type(IFC4X3_RC2_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFooting_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFootingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFurniture_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcFurnitureType_type->set_attributes({ + new attribute(strings[3135], new named_type(IFC4X3_RC2_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[3175], new named_type(IFC4X3_RC2_IfcDimensionCount_type), false), + new attribute(strings[3176], new named_type(IFC4X3_RC2_IfcReal_type), true), + new attribute(strings[3177], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC2_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[3179], new named_type(IFC4X3_RC2_IfcGeometricRepresentationContext_type), false), + new attribute(strings[3180], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3181], new named_type(IFC4X3_RC2_IfcGeometricProjectionEnum_type), false), + new attribute(strings[3182], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X3_RC2_IfcGeometricSet_type->set_attributes({ + new attribute(strings[3073], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcGeomodel_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeoslice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeotechnicalAssembly_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeotechnicalElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGeotechnicalStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGradientCurve_type->set_attributes({ + new attribute(strings[3183], new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false), + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurveSegment_type)), false), + new attribute(strings[3184], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcGrid_type->set_attributes({ + new attribute(strings[3185], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcGridAxis_type)), false), + new attribute(strings[3186], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcGridAxis_type)), false), + new attribute(strings[3187], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcGridAxis_type)), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcGridAxis_type->set_attributes({ + new attribute(strings[3188], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3189], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3016], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcGridPlacement_type->set_attributes({ + new attribute(strings[3190], new named_type(IFC4X3_RC2_IfcVirtualGridIntersection_type), false), + new attribute(strings[3191], new named_type(IFC4X3_RC2_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[3192], new named_type(IFC4X3_RC2_IfcSurface_type), false), + new attribute(strings[3193], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcHumidifier_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[3108], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2917], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3194], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3195], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3196], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3197], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcImageTexture_type->set_attributes({ + new attribute(strings[3198], new named_type(IFC4X3_RC2_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcImpactProtectionDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcImpactProtectionDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3199], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3200], new named_type(IFC4X3_RC2_IfcAxisLateralInclination_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[3201], new named_type(IFC4X3_RC2_IfcTessellatedFaceSet_type), false), + new attribute(strings[3202], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3203], new named_type(IFC4X3_RC2_IfcColourRgbList_type), false), + new attribute(strings[3204], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[3205], new named_type(IFC4X3_RC2_IfcCartesianPointList_type), false), + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2934], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[3206], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[3207], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X3_RC2_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[3201], new named_type(IFC4X3_RC2_IfcTessellatedFaceSet_type), false), + new attribute(strings[3208], new named_type(IFC4X3_RC2_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[3209], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcInterceptor_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcInventory_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcInventoryTypeEnum_type), true), + new attribute(strings[3210], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[3211], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPerson_type)), true), + new attribute(strings[3212], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[2909], new named_type(IFC4X3_RC2_IfcCostValue_type), true), + new attribute(strings[2908], new named_type(IFC4X3_RC2_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[3213], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[3214], new named_type(IFC4X3_RC2_IfcDateTime_type), false), + new attribute(strings[3215], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcKerb_type->set_attributes({ + new attribute(strings[3216], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcKerbType_type->set_attributes({ + new attribute(strings[3216], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2984], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2998], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3195], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3218], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLaborResource_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLagTime_type->set_attributes({ + new attribute(strings[3219], new named_type(IFC4X3_RC2_IfcTimeOrRatioSelect_type), false), + new attribute(strings[3220], new named_type(IFC4X3_RC2_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcLamp_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLampType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2884], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3221], new named_type(IFC4X3_RC2_IfcActorSelect_type), true), + new attribute(strings[3222], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3003], new named_type(IFC4X3_RC2_IfcURIReference_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3223], new named_type(IFC4X3_RC2_IfcLanguageId_type), true), + new attribute(strings[3224], new named_type(IFC4X3_RC2_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[3225], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false), + new attribute(strings[3226], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3227], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcLightFixture_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[3228], new named_type(IFC4X3_RC2_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[3229], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcLightSource_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3230], new named_type(IFC4X3_RC2_IfcColourRgb_type), false), + new attribute(strings[3231], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3232], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[3156], new named_type(IFC4X3_RC2_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false), + new attribute(strings[3233], new named_type(IFC4X3_RC2_IfcColourRgb_type), true), + new attribute(strings[3234], new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[3235], new named_type(IFC4X3_RC2_IfcLuminousFluxMeasure_type), false), + new attribute(strings[3236], new named_type(IFC4X3_RC2_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[3237], new named_type(IFC4X3_RC2_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false), + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3238], new named_type(IFC4X3_RC2_IfcReal_type), false), + new attribute(strings[3239], new named_type(IFC4X3_RC2_IfcReal_type), false), + new attribute(strings[3240], new named_type(IFC4X3_RC2_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[3156], new named_type(IFC4X3_RC2_IfcDirection_type), false), + new attribute(strings[3241], new named_type(IFC4X3_RC2_IfcReal_type), true), + new attribute(strings[3242], new named_type(IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[3243], new named_type(IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLine_type->set_attributes({ + new attribute(strings[3244], new named_type(IFC4X3_RC2_IfcCartesianPoint_type), false), + new attribute(strings[3245], new named_type(IFC4X3_RC2_IfcVector_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcLineSegment2D_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcLinearAxisWithInclination_type->set_attributes({ + new attribute(strings[3086], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3200], new named_type(IFC4X3_RC2_IfcAxisLateralInclination_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcLinearElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[3246], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3247], new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type), false), + new attribute(strings[3248], new named_type(IFC4X3_RC2_IfcAxis2PlacementLinear_type), false), + new attribute(strings[3249], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcLinearPlacementWithInclination_type->set_attributes({ + new attribute(strings[3200], new named_type(IFC4X3_RC2_IfcAxisLateralInclination_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLinearPositioningElement_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLinearSpanPlacement_type->set_attributes({ + new attribute(strings[3250], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLiquidTerminal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLiquidTerminalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[3248], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[3251], new named_type(IFC4X3_RC2_IfcClosedShell_type), false) + },{ + false + }); + IFC4X3_RC2_IfcMapConversion_type->set_attributes({ + new attribute(strings[3252], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3253], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3254], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3255], new named_type(IFC4X3_RC2_IfcReal_type), true), + new attribute(strings[3256], new named_type(IFC4X3_RC2_IfcReal_type), true), + new attribute(strings[2994], new named_type(IFC4X3_RC2_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMappedItem_type->set_attributes({ + new attribute(strings[3257], new named_type(IFC4X3_RC2_IfcRepresentationMap_type), false), + new attribute(strings[3258], new named_type(IFC4X3_RC2_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcMarineFacility_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMarineFacilityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterial_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[3259], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcClassificationSelect_type)), false), + new attribute(strings[3260], new named_type(IFC4X3_RC2_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3261], new named_type(IFC4X3_RC2_IfcMaterial_type), false), + new attribute(strings[3262], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3263], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[3264], new named_type(IFC4X3_RC2_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[3261], new named_type(IFC4X3_RC2_IfcMaterial_type), true), + new attribute(strings[3265], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[3266], new named_type(IFC4X3_RC2_IfcLogical_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3267], new named_type(IFC4X3_RC2_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[3268], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterialLayer_type)), false), + new attribute(strings[3269], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[3270], new named_type(IFC4X3_RC2_IfcMaterialLayerSet_type), false), + new attribute(strings[3271], new named_type(IFC4X3_RC2_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3272], new named_type(IFC4X3_RC2_IfcDirectionSenseEnum_type), false), + new attribute(strings[3273], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3274], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[3275], new named_type(IFC4X3_RC2_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3276], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialList_type->set_attributes({ + new attribute(strings[3277], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterial_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3261], new named_type(IFC4X3_RC2_IfcMaterial_type), true), + new attribute(strings[3278], new named_type(IFC4X3_RC2_IfcProfileDef_type), false), + new attribute(strings[3267], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3279], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterialProfile_type)), false), + new attribute(strings[3280], new named_type(IFC4X3_RC2_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[3281], new named_type(IFC4X3_RC2_IfcMaterialProfileSet_type), false), + new attribute(strings[3282], new named_type(IFC4X3_RC2_IfcCardinalPointReference_type), true), + new attribute(strings[3274], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[3283], new named_type(IFC4X3_RC2_IfcMaterialProfileSet_type), false), + new attribute(strings[3284], new named_type(IFC4X3_RC2_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[3276], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[3261], new named_type(IFC4X3_RC2_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[3285], new named_type(IFC4X3_RC2_IfcMaterial_type), false), + new attribute(strings[3286], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcMaterial_type)), false), + new attribute(strings[3287], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[3288], new named_type(IFC4X3_RC2_IfcValue_type), false), + new attribute(strings[3289], new named_type(IFC4X3_RC2_IfcUnit_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[3290], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3291], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[3290], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3291], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMember_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMemberType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMetric_type->set_attributes({ + new attribute(strings[3292], new named_type(IFC4X3_RC2_IfcBenchmarkEnum_type), false), + new attribute(strings[3293], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3294], new named_type(IFC4X3_RC2_IfcMetricValueSelect_type), true), + new attribute(strings[3295], new named_type(IFC4X3_RC2_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[3296], new named_type(IFC4X3_RC2_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC2_IfcMooringDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMooringDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMooringDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMooringDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcNamedUnit_type->set_attributes({ + new attribute(strings[3297], new named_type(IFC4X3_RC2_IfcDimensionalExponents_type), false), + new attribute(strings[3074], new named_type(IFC4X3_RC2_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcNavigationElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcNavigationElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcNavigationElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcNavigationElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcObject_type->set_attributes({ + new attribute(strings[3040], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcObjectPlacement_type->set_attributes({ + new attribute(strings[3298], new named_type(IFC4X3_RC2_IfcObjectPlacement_type), true) + },{ + false + }); + IFC4X3_RC2_IfcObjective_type->set_attributes({ + new attribute(strings[3299], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcConstraint_type)), true), + new attribute(strings[3300], new named_type(IFC4X3_RC2_IfcLogicalOperatorEnum_type), true), + new attribute(strings[3301], new named_type(IFC4X3_RC2_IfcObjectiveEnum_type), false), + new attribute(strings[3302], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOccupant_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[3303], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false + }); + IFC4X3_RC2_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[3247], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC2_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[3247], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[2929], new named_type(IFC4X3_RC2_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[3276], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type)), false), + new attribute(strings[2867], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcOpenCrossProfileDef_type->set_attributes({ + new attribute(strings[3304], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3305], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type)), false), + new attribute(strings[3306], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3307], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOrganization_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3308], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorRole_type)), true), + new attribute(strings[3309], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[3310], new named_type(IFC4X3_RC2_IfcOrganization_type), false), + new attribute(strings[3311], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[3312], new named_type(IFC4X3_RC2_IfcEdge_type), false), + new attribute(strings[3156], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X3_RC2_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC2_IfcOutlet_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOutletType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[3313], new named_type(IFC4X3_RC2_IfcPersonAndOrganization_type), false), + new attribute(strings[3314], new named_type(IFC4X3_RC2_IfcApplication_type), false), + new attribute(strings[3315], new named_type(IFC4X3_RC2_IfcStateEnum_type), true), + new attribute(strings[3316], new named_type(IFC4X3_RC2_IfcChangeActionEnum_type), true), + new attribute(strings[3317], new named_type(IFC4X3_RC2_IfcTimeStamp_type), true), + new attribute(strings[3318], new named_type(IFC4X3_RC2_IfcPersonAndOrganization_type), true), + new attribute(strings[3319], new named_type(IFC4X3_RC2_IfcApplication_type), true), + new attribute(strings[3320], new named_type(IFC4X3_RC2_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcPath_type->set_attributes({ + new attribute(strings[3134], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcPavement_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPavementType_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPcurve_type->set_attributes({ + new attribute(strings[3060], new named_type(IFC4X3_RC2_IfcSurface_type), false), + new attribute(strings[3322], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[3323], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[3109], new named_type(IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[3127], new named_type(IFC4X3_RC2_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3324], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3325], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3121], new named_type(IFC4X3_RC2_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPermit_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPermitTypeEnum_type), true), + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPerson_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3326], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3327], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3328], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3329], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3330], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3308], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorRole_type)), true), + new attribute(strings[3309], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[3331], new named_type(IFC4X3_RC2_IfcPerson_type), false), + new attribute(strings[3332], new named_type(IFC4X3_RC2_IfcOrganization_type), false), + new attribute(strings[3308], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[3333], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPhysicalQuantity_type)), false), + new attribute(strings[3334], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[3335], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3037], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcPile_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPileTypeEnum_type), true), + new attribute(strings[3128], new named_type(IFC4X3_RC2_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPileType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2984], new named_type(IFC4X3_RC2_IfcInteger_type), false), + new attribute(strings[3336], new named_type(IFC4X3_RC2_IfcInteger_type), false), + new attribute(strings[3337], new named_type(IFC4X3_RC2_IfcInteger_type), false), + new attribute(strings[3338], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPlacement_type->set_attributes({ + new attribute(strings[3003], new named_type(IFC4X3_RC2_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC2_IfcPlanarBox_type->set_attributes({ + new attribute(strings[3339], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[3340], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3341], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcPlant_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPlate_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPlateType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcPointByDistanceExpression_type->set_attributes({ + new attribute(strings[3342], new named_type(IFC4X3_RC2_IfcCurveMeasureSelect_type), false), + new attribute(strings[3343], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3344], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3345], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3303], new named_type(IFC4X3_RC2_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[3303], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3346], new named_type(IFC4X3_RC2_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[3060], new named_type(IFC4X3_RC2_IfcSurface_type), false), + new attribute(strings[3347], new named_type(IFC4X3_RC2_IfcParameterValue_type), false), + new attribute(strings[3348], new named_type(IFC4X3_RC2_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcPolyLoop_type->set_attributes({ + new attribute(strings[3349], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), false), + new attribute(strings[3350], new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[3351], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3352], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[3353], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPolyline_type->set_attributes({ + new attribute(strings[3205], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPostalAddress_type->set_attributes({ + new attribute(strings[3354], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3355], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3356], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3357], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3358], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3359], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3360], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC2_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3361], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcLayeredItem_type)), false), + new attribute(strings[2896], new named_type(IFC4X3_RC2_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[3362], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[3363], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[3364], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[3365], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC2_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC2_IfcPresentationStyleAssignment_type->set_attributes({ + new attribute(strings[3366], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPresentationStyleSelect_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcProcedure_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProcedureType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProcess_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProduct_type->set_attributes({ + new attribute(strings[3367], new named_type(IFC4X3_RC2_IfcObjectPlacement_type), true), + new attribute(strings[3368], new named_type(IFC4X3_RC2_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3369], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcProfileDef_type->set_attributes({ + new attribute(strings[3370], new named_type(IFC4X3_RC2_IfcProfileTypeEnum_type), false), + new attribute(strings[3371], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcProfileProperties_type->set_attributes({ + new attribute(strings[3372], new named_type(IFC4X3_RC2_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[3373], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3374], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3375], new named_type(IFC4X3_RC2_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProperty_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcIdentifier_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[3376], new named_type(IFC4X3_RC2_IfcValue_type), true), + new attribute(strings[3377], new named_type(IFC4X3_RC2_IfcValue_type), true), + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcUnit_type), true), + new attribute(strings[3378], new named_type(IFC4X3_RC2_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[3379], new named_type(IFC4X3_RC2_IfcProperty_type), false), + new attribute(strings[3380], new named_type(IFC4X3_RC2_IfcProperty_type), false), + new attribute(strings[3287], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[3381], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true), + new attribute(strings[3382], new named_type(IFC4X3_RC2_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[3381], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), false), + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[3215], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true), + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3383], new named_type(IFC4X3_RC2_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertySet_type->set_attributes({ + new attribute(strings[3013], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[3014], new named_type(IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[3384], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3015], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[3385], new named_type(IFC4X3_RC2_IfcValue_type), true), + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[3386], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true), + new attribute(strings[3387], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true), + new attribute(strings[3287], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3388], new named_type(IFC4X3_RC2_IfcUnit_type), true), + new attribute(strings[3389], new named_type(IFC4X3_RC2_IfcUnit_type), true), + new attribute(strings[3390], new named_type(IFC4X3_RC2_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcProxy_type->set_attributes({ + new attribute(strings[3391], new named_type(IFC4X3_RC2_IfcObjectTypeEnum_type), false), + new attribute(strings[2867], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPump_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcPumpType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcQuantityArea_type->set_attributes({ + new attribute(strings[3392], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), false), + new attribute(strings[3393], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcQuantityCount_type->set_attributes({ + new attribute(strings[3394], new named_type(IFC4X3_RC2_IfcCountMeasure_type), false), + new attribute(strings[3393], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcQuantityLength_type->set_attributes({ + new attribute(strings[3395], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3393], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcQuantityTime_type->set_attributes({ + new attribute(strings[3396], new named_type(IFC4X3_RC2_IfcTimeMeasure_type), false), + new attribute(strings[3393], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[3397], new named_type(IFC4X3_RC2_IfcVolumeMeasure_type), false), + new attribute(strings[3393], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[3398], new named_type(IFC4X3_RC2_IfcMassMeasure_type), false), + new attribute(strings[3393], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcRail_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRailTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRailType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRailTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRailing_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRailingType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRailway_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRamp_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRampFlight_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRampType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[3399], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[3399], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2985], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3400], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3401], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2974], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2975], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2949], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2950], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3336], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[3060], new named_type(IFC4X3_RC2_IfcSurface_type), false), + new attribute(strings[3402], new named_type(IFC4X3_RC2_IfcParameterValue_type), false), + new attribute(strings[3403], new named_type(IFC4X3_RC2_IfcParameterValue_type), false), + new attribute(strings[3404], new named_type(IFC4X3_RC2_IfcParameterValue_type), false), + new attribute(strings[3405], new named_type(IFC4X3_RC2_IfcParameterValue_type), false), + new attribute(strings[3406], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3407], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[3408], new named_type(IFC4X3_RC2_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[3409], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDayInMonthNumber_type)), true), + new attribute(strings[3410], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDayInWeekNumber_type)), true), + new attribute(strings[3411], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcMonthInYearNumber_type)), true), + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[3412], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[3413], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[3414], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReference_type->set_attributes({ + new attribute(strings[3415], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3416], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3417], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3418], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), true), + new attribute(strings[3419], new named_type(IFC4X3_RC2_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcReferent_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcReferentTypeEnum_type), true), + new attribute(strings[3420], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[3421], new named_type(IFC4X3_RC2_IfcTimeMeasure_type), false), + new attribute(strings[3213], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcedSoil_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[3422], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), false), + new attribute(strings[3423], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[3424], new named_type(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3425], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3426], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3427], new named_type(IFC4X3_RC2_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[3428], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3429], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[3290], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3430], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3431], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[3424], new named_type(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[3290], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3430], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3431], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3424], new named_type(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3432], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3433], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[3423], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[3434], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3435], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3436], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3437], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3438], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3439], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3440], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3441], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[3434], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3435], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3436], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3437], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3438], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3439], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3440], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3441], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3432], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3433], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAggregates_type->set_attributes({ + new attribute(strings[3442], new named_type(IFC4X3_RC2_IfcObjectDefinition_type), false), + new attribute(strings[3443], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssigns_type->set_attributes({ + new attribute(strings[3443], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false), + new attribute(strings[3444], new named_type(IFC4X3_RC2_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[3445], new named_type(IFC4X3_RC2_IfcActor_type), false), + new attribute(strings[3446], new named_type(IFC4X3_RC2_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[3447], new named_type(IFC4X3_RC2_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[3448], new named_type(IFC4X3_RC2_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[3449], new named_type(IFC4X3_RC2_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[3450], new named_type(IFC4X3_RC2_IfcProcessSelect_type), false), + new attribute(strings[3451], new named_type(IFC4X3_RC2_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[3452], new named_type(IFC4X3_RC2_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[3453], new named_type(IFC4X3_RC2_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociates_type->set_attributes({ + new attribute(strings[3443], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2902], new named_type(IFC4X3_RC2_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[3454], new named_type(IFC4X3_RC2_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[3455], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3456], new named_type(IFC4X3_RC2_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[3103], new named_type(IFC4X3_RC2_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[3457], new named_type(IFC4X3_RC2_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[3285], new named_type(IFC4X3_RC2_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelAssociatesProfileDef_type->set_attributes({ + new attribute(strings[3458], new named_type(IFC4X3_RC2_IfcProfileDef_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[3459], new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), true), + new attribute(strings[3460], new named_type(IFC4X3_RC2_IfcElement_type), false), + new attribute(strings[3461], new named_type(IFC4X3_RC2_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[3462], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false), + new attribute(strings[3463], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false), + new attribute(strings[3464], new named_type(IFC4X3_RC2_IfcConnectionTypeEnum_type), false), + new attribute(strings[3465], new named_type(IFC4X3_RC2_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[3466], new named_type(IFC4X3_RC2_IfcPort_type), false), + new attribute(strings[3461], new named_type(IFC4X3_RC2_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[3466], new named_type(IFC4X3_RC2_IfcPort_type), false), + new attribute(strings[3467], new named_type(IFC4X3_RC2_IfcPort_type), false), + new attribute(strings[3468], new named_type(IFC4X3_RC2_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC2_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[3469], new named_type(IFC4X3_RC2_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[3470], new named_type(IFC4X3_RC2_IfcStructuralMember_type), false), + new attribute(strings[3471], new named_type(IFC4X3_RC2_IfcStructuralConnection_type), false), + new attribute(strings[3472], new named_type(IFC4X3_RC2_IfcBoundaryCondition_type), true), + new attribute(strings[3473], new named_type(IFC4X3_RC2_IfcStructuralConnectionCondition_type), true), + new attribute(strings[3474], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3475], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[3476], new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[3477], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcElement_type)), false), + new attribute(strings[3478], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[3479], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProduct_type)), false), + new attribute(strings[3480], new named_type(IFC4X3_RC2_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[3481], new named_type(IFC4X3_RC2_IfcElement_type), false), + new attribute(strings[3482], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[3483], new named_type(IFC4X3_RC2_IfcSpace_type), false), + new attribute(strings[3482], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelDeclares_type->set_attributes({ + new attribute(strings[3484], new named_type(IFC4X3_RC2_IfcContext_type), false), + new attribute(strings[3485], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[3443], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObject_type)), false), + new attribute(strings[3442], new named_type(IFC4X3_RC2_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[3443], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false), + new attribute(strings[3486], new named_type(IFC4X3_RC2_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[3487], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertySetDefinition_type)), false), + new attribute(strings[3488], new named_type(IFC4X3_RC2_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[3443], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcObject_type)), false), + new attribute(strings[3489], new named_type(IFC4X3_RC2_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[3490], new named_type(IFC4X3_RC2_IfcOpeningElement_type), false), + new attribute(strings[3491], new named_type(IFC4X3_RC2_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[3492], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcDistributionControlElement_type)), false), + new attribute(strings[3493], new named_type(IFC4X3_RC2_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC2_IfcInterferenceSelect_type), false), + new attribute(strings[3461], new named_type(IFC4X3_RC2_IfcInterferenceSelect_type), false), + new attribute(strings[3494], new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), true), + new attribute(strings[3495], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3496], new named_type(IFC4X3_RC2_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelNests_type->set_attributes({ + new attribute(strings[3442], new named_type(IFC4X3_RC2_IfcObjectDefinition_type), false), + new attribute(strings[3443], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelPositions_type->set_attributes({ + new attribute(strings[3497], new named_type(IFC4X3_RC2_IfcPositioningElement_type), false), + new attribute(strings[3498], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcProduct_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC2_IfcElement_type), false), + new attribute(strings[3499], new named_type(IFC4X3_RC2_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[3479], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcSpatialReferenceSelect_type)), false), + new attribute(strings[3480], new named_type(IFC4X3_RC2_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelSequence_type->set_attributes({ + new attribute(strings[3450], new named_type(IFC4X3_RC2_IfcProcess_type), false), + new attribute(strings[3500], new named_type(IFC4X3_RC2_IfcProcess_type), false), + new attribute(strings[3501], new named_type(IFC4X3_RC2_IfcLagTime_type), true), + new attribute(strings[3502], new named_type(IFC4X3_RC2_IfcSequenceEnum_type), true), + new attribute(strings[3503], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3504], new named_type(IFC4X3_RC2_IfcSystem_type), false), + new attribute(strings[3505], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[3483], new named_type(IFC4X3_RC2_IfcSpaceBoundarySelect_type), false), + new attribute(strings[3491], new named_type(IFC4X3_RC2_IfcElement_type), false), + new attribute(strings[3459], new named_type(IFC4X3_RC2_IfcConnectionGeometry_type), true), + new attribute(strings[3506], new named_type(IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3507], new named_type(IFC4X3_RC2_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3508], new named_type(IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3509], new named_type(IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[3481], new named_type(IFC4X3_RC2_IfcElement_type), false), + new attribute(strings[3510], new named_type(IFC4X3_RC2_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3511], new named_type(IFC4X3_RC2_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRepresentation_type->set_attributes({ + new attribute(strings[3512], new named_type(IFC4X3_RC2_IfcRepresentationContext_type), false), + new attribute(strings[3513], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3514], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3515], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3516], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3517], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3518], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false), + new attribute(strings[3519], new named_type(IFC4X3_RC2_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcResource_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[3150], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcResourceObjectSelect_type)), false), + new attribute(strings[2902], new named_type(IFC4X3_RC2_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[3456], new named_type(IFC4X3_RC2_IfcConstraint_type), false), + new attribute(strings[3150], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcResourceTime_type->set_attributes({ + new attribute(strings[3520], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3521], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3522], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3523], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3524], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3525], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3526], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3527], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3528], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3529], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3530], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3531], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3532], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3533], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3534], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcAxis1Placement_type), false), + new attribute(strings[3535], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3152], new named_type(IFC4X3_RC2_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[3336], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3536], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[3336], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcRoad_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRoof_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRoofType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcRoot_type->set_attributes({ + new attribute(strings[3537], new named_type(IFC4X3_RC2_IfcGloballyUniqueId_type), false), + new attribute(strings[3538], new named_type(IFC4X3_RC2_IfcOwnerHistory_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3539], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSIUnit_type->set_attributes({ + new attribute(strings[3540], new named_type(IFC4X3_RC2_IfcSIPrefix_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X3_RC2_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3541], new named_type(IFC4X3_RC2_IfcDataOriginEnum_type), true), + new attribute(strings[3542], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC2_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3543], new named_type(IFC4X3_RC2_IfcSectionTypeEnum_type), false), + new attribute(strings[3544], new named_type(IFC4X3_RC2_IfcProfileDef_type), false), + new attribute(strings[3545], new named_type(IFC4X3_RC2_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3546], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3547], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false), + new attribute(strings[3548], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3549], new named_type(IFC4X3_RC2_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3550], new named_type(IFC4X3_RC2_IfcSectionProperties_type), false), + new attribute(strings[3551], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[3086], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3552], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3553], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3199], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3554], new named_type(IFC4X3_RC2_IfcCompositeCurve_type), false), + new attribute(strings[3552], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false), + new attribute(strings[3553], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSectionedSurface_type->set_attributes({ + new attribute(strings[3086], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3553], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3552], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcProfileDef_type)), false), + new attribute(strings[3199], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSegment_type->set_attributes({ + new attribute(strings[3555], new named_type(IFC4X3_RC2_IfcTransitionCode_type), false) + },{ + false + }); + IFC4X3_RC2_IfcSegmentedReferenceCurve_type->set_attributes({ + new attribute(strings[3183], new named_type(IFC4X3_RC2_IfcBoundedCurve_type), false), + new attribute(strings[2857], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcCurveSegment_type)), false), + new attribute(strings[3184], new named_type(IFC4X3_RC2_IfcPlacement_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSensor_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSensorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSeriesParameterCurve_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcPlacement_type), false), + new attribute(strings[3556], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type)), false), + new attribute(strings[3557], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC2_IfcReal_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3558], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcShapeModel_type)), false), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3559], new named_type(IFC4X3_RC2_IfcLogical_type), false), + new attribute(strings[3560], new named_type(IFC4X3_RC2_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3561], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcShell_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcSign_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSignTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSignType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSignTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSignal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSignalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSignalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSignalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC2_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[3014], new named_type(IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3562], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3563], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3564], new named_type(IFC4X3_RC2_IfcPropertyEnumeration_type), true), + new attribute(strings[3565], new named_type(IFC4X3_RC2_IfcUnit_type), true), + new attribute(strings[3566], new named_type(IFC4X3_RC2_IfcUnit_type), true), + new attribute(strings[3287], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3567], new named_type(IFC4X3_RC2_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSite_type->set_attributes({ + new attribute(strings[3568], new named_type(IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3569], new named_type(IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3570], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3571], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3572], new named_type(IFC4X3_RC2_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSlab_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSlabType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3573], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3574], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3575], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcSolidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpace_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSpaceTypeEnum_type), true), + new attribute(strings[3576], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpaceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSpaceTypeEnum_type), false), + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[3138], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3577], new named_type(IFC4X3_RC2_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSphere_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStair_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStairFlight_type->set_attributes({ + new attribute(strings[3578], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[3579], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[3580], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3581], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStairType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3582], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3583], new named_type(IFC4X3_RC2_IfcStructuralLoad_type), false), + new attribute(strings[3584], new named_type(IFC4X3_RC2_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3585], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true), + new attribute(strings[3586], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3587], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStructuralResultGroup_type)), true), + new attribute(strings[3588], new named_type(IFC4X3_RC2_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[3472], new named_type(IFC4X3_RC2_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC2_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3589], new named_type(IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2928], new named_type(IFC4X3_RC2_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC2_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3590], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[3213], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3591], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC2_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3592], new named_type(IFC4X3_RC2_IfcActionTypeEnum_type), false), + new attribute(strings[3593], new named_type(IFC4X3_RC2_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3594], new named_type(IFC4X3_RC2_IfcRatioMeasure_type), true), + new attribute(strings[2850], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3595], new named_type(IFC4X3_RC2_IfcLinearForceMeasure_type), true), + new attribute(strings[3596], new named_type(IFC4X3_RC2_IfcLinearForceMeasure_type), true), + new attribute(strings[3597], new named_type(IFC4X3_RC2_IfcLinearForceMeasure_type), true), + new attribute(strings[3598], new named_type(IFC4X3_RC2_IfcLinearMomentMeasure_type), true), + new attribute(strings[3599], new named_type(IFC4X3_RC2_IfcLinearMomentMeasure_type), true), + new attribute(strings[3600], new named_type(IFC4X3_RC2_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3601], new named_type(IFC4X3_RC2_IfcPlanarForceMeasure_type), true), + new attribute(strings[3602], new named_type(IFC4X3_RC2_IfcPlanarForceMeasure_type), true), + new attribute(strings[3603], new named_type(IFC4X3_RC2_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3604], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3605], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3606], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3607], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3608], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3609], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3610], new named_type(IFC4X3_RC2_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3611], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3612], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3613], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3614], new named_type(IFC4X3_RC2_IfcTorqueMeasure_type), true), + new attribute(strings[3615], new named_type(IFC4X3_RC2_IfcTorqueMeasure_type), true), + new attribute(strings[3616], new named_type(IFC4X3_RC2_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3617], new named_type(IFC4X3_RC2_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X3_RC2_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3618], new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3619], new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3620], new named_type(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[3475], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3621], new named_type(IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3622], new named_type(IFC4X3_RC2_IfcStructuralLoadGroup_type), true), + new attribute(strings[3623], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3589], new named_type(IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[2998], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcStyledItem_type->set_attributes({ + new attribute(strings[3624], new named_type(IFC4X3_RC2_IfcRepresentationItem_type), true), + new attribute(strings[3366], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcStyleAssignmentSelect_type)), false), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSubedge_type->set_attributes({ + new attribute(strings[3625], new named_type(IFC4X3_RC2_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3626], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3627], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC2_IfcPcurve_type)), false), + new attribute(strings[3628], new named_type(IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3629], new named_type(IFC4X3_RC2_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[3151], new named_type(IFC4X3_RC2_IfcDirection_type), false), + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3630], new named_type(IFC4X3_RC2_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3631], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), true), + new attribute(strings[3632], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), true), + new attribute(strings[3633], new named_type(IFC4X3_RC2_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3634], new named_type(IFC4X3_RC2_IfcSurfaceSide_type), false), + new attribute(strings[3366], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC2_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3635], new named_type(IFC4X3_RC2_IfcColourRgb_type), false), + new attribute(strings[3636], new named_type(IFC4X3_RC2_IfcColourRgb_type), false), + new attribute(strings[3637], new named_type(IFC4X3_RC2_IfcColourRgb_type), false), + new attribute(strings[3638], new named_type(IFC4X3_RC2_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3639], new named_type(IFC4X3_RC2_IfcReal_type), true), + new attribute(strings[3640], new named_type(IFC4X3_RC2_IfcReal_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3641], new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true), + new attribute(strings[3637], new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true), + new attribute(strings[3635], new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true), + new attribute(strings[3642], new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true), + new attribute(strings[3643], new named_type(IFC4X3_RC2_IfcColourOrFactor_type), true), + new attribute(strings[3644], new named_type(IFC4X3_RC2_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3645], new named_type(IFC4X3_RC2_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3646], new named_type(IFC4X3_RC2_IfcColourRgb_type), false), + new attribute(strings[3647], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3648], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3649], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3650], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3651], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3652], new named_type(IFC4X3_RC2_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3653], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3654], new named_type(IFC4X3_RC2_IfcProfileDef_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[3086], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[2853], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3655], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3087], new named_type(IFC4X3_RC2_IfcParameterValue_type), true), + new attribute(strings[3088], new named_type(IFC4X3_RC2_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[3195], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3656], new named_type(IFC4X3_RC2_IfcProfileDef_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC2_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3657], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3194], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3195], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3196], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3658], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3659], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3197], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTable_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3660], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTableRow_type)), true), + new attribute(strings[3661], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcTableColumn_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcUnit_type), true), + new attribute(strings[3295], new named_type(IFC4X3_RC2_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcTableRow_type->set_attributes({ + new attribute(strings[3662], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), true), + new attribute(strings[3663], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcTank_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTankType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTask_type->set_attributes({ + new attribute(strings[2844], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3664], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3665], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3267], new named_type(IFC4X3_RC2_IfcInteger_type), true), + new attribute(strings[3666], new named_type(IFC4X3_RC2_IfcTaskTime_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTaskTime_type->set_attributes({ + new attribute(strings[3220], new named_type(IFC4X3_RC2_IfcTaskDurationEnum_type), true), + new attribute(strings[3667], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3522], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3523], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3668], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3669], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3670], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3671], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3672], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3673], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3674], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3527], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3675], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3530], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3531], new named_type(IFC4X3_RC2_IfcDateTime_type), true), + new attribute(strings[3676], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3534], new named_type(IFC4X3_RC2_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3677], new named_type(IFC4X3_RC2_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTaskType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTaskTypeEnum_type), false), + new attribute(strings[3664], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3678], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3679], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3680], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3681], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcLabel_type)), true), + new attribute(strings[3682], new named_type(IFC4X3_RC2_IfcURIReference_type), true), + new attribute(strings[3683], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTendon_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTendonTypeEnum_type), true), + new attribute(strings[3290], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3430], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3684], new named_type(IFC4X3_RC2_IfcForceMeasure_type), true), + new attribute(strings[3685], new named_type(IFC4X3_RC2_IfcPressureMeasure_type), true), + new attribute(strings[3686], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3687], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3688], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTendonConduit_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTendonConduitType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTendonType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTendonTypeEnum_type), false), + new attribute(strings[3290], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3430], new named_type(IFC4X3_RC2_IfcAreaMeasure_type), true), + new attribute(strings[3689], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2988], new named_type(IFC4X3_RC2_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X3_RC2_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3690], new named_type(IFC4X3_RC2_IfcPresentableText_type), false), + new attribute(strings[3339], new named_type(IFC4X3_RC2_IfcAxis2Placement_type), false), + new attribute(strings[3691], new named_type(IFC4X3_RC2_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3692], new named_type(IFC4X3_RC2_IfcPlanarExtent_type), false), + new attribute(strings[3693], new named_type(IFC4X3_RC2_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcTextStyle_type->set_attributes({ + new attribute(strings[3694], new named_type(IFC4X3_RC2_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3695], new named_type(IFC4X3_RC2_IfcTextStyleTextModel_type), true), + new attribute(strings[3696], new named_type(IFC4X3_RC2_IfcTextFontSelect_type), false), + new attribute(strings[3067], new named_type(IFC4X3_RC2_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3697], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcTextFontName_type)), false), + new attribute(strings[3698], new named_type(IFC4X3_RC2_IfcFontStyle_type), true), + new attribute(strings[3699], new named_type(IFC4X3_RC2_IfcFontVariant_type), true), + new attribute(strings[3700], new named_type(IFC4X3_RC2_IfcFontWeight_type), true), + new attribute(strings[3701], new named_type(IFC4X3_RC2_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3702], new named_type(IFC4X3_RC2_IfcColour_type), false), + new attribute(strings[3703], new named_type(IFC4X3_RC2_IfcColour_type), true) + },{ + false, false + }); + IFC4X3_RC2_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3704], new named_type(IFC4X3_RC2_IfcSizeSelect_type), true), + new attribute(strings[3705], new named_type(IFC4X3_RC2_IfcTextAlignment_type), true), + new attribute(strings[3706], new named_type(IFC4X3_RC2_IfcTextDecoration_type), true), + new attribute(strings[3707], new named_type(IFC4X3_RC2_IfcSizeSelect_type), true), + new attribute(strings[3708], new named_type(IFC4X3_RC2_IfcSizeSelect_type), true), + new attribute(strings[3709], new named_type(IFC4X3_RC2_IfcTextTransformation_type), true), + new attribute(strings[3710], new named_type(IFC4X3_RC2_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3711], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3651], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[3653], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X3_RC2_IfcTextureMap_type->set_attributes({ + new attribute(strings[3712], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC2_IfcTextureVertex_type)), false), + new attribute(strings[3201], new named_type(IFC4X3_RC2_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2988], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3713], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X3_RC2_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3714], new named_type(IFC4X3_RC2_IfcTime_type), false), + new attribute(strings[3715], new named_type(IFC4X3_RC2_IfcTime_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC2_IfcLabel_type), false), + new attribute(strings[2849], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3714], new named_type(IFC4X3_RC2_IfcDateTime_type), false), + new attribute(strings[3715], new named_type(IFC4X3_RC2_IfcDateTime_type), false), + new attribute(strings[3716], new named_type(IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3541], new named_type(IFC4X3_RC2_IfcDataOriginEnum_type), false), + new attribute(strings[3542], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3076], new named_type(IFC4X3_RC2_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[3215], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcValue_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC2_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3717], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3718], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC2_IfcTrackElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTrackElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTrackElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTrackElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTransformer_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTransformerType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTransitionCurveSegment2D_type->set_attributes({ + new attribute(strings[3719], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3720], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3721], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3722], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3723], new named_type(IFC4X3_RC2_IfcTransitionCurveType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTransportElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTransportElementTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTransportElementTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3724], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3725], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2975], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3726], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3727], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcParameterValue_type))), true), + new attribute(strings[3351], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3206], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC2_IfcPositiveInteger_type))), false), + new attribute(strings[3353], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3728], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[3303], new named_type(IFC4X3_RC2_IfcCurve_type), false), + new attribute(strings[3729], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC2_IfcTrimmingSelect_type)), false), + new attribute(strings[3730], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC2_IfcTrimmingSelect_type)), false), + new attribute(strings[3731], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3628], new named_type(IFC4X3_RC2_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC2_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTypeObject_type->set_attributes({ + new attribute(strings[3732], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[3733], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3734], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3735], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC2_IfcRepresentationMap_type)), true), + new attribute(strings[2867], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcTypeResource_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC2_IfcIdentifier_type), true), + new attribute(strings[2845], new named_type(IFC4X3_RC2_IfcText_type), true), + new attribute(strings[3736], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3657], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3194], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3195], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3197], new named_type(IFC4X3_RC2_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3737], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcUnit_type)), false) + },{ + false + }); + IFC4X3_RC2_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcValve_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcValveType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVector_type->set_attributes({ + new attribute(strings[3156], new named_type(IFC4X3_RC2_IfcDirection_type), false), + new attribute(strings[3738], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC2_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X3_RC2_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3739], new named_type(IFC4X3_RC2_IfcVertex_type), false) + },{ + false + }); + IFC4X3_RC2_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3740], new named_type(IFC4X3_RC2_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC2_IfcVibrationDamper_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVibrationDamperType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3741], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC2_IfcGridAxis_type)), false), + new attribute(strings[3742], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC2_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X3_RC2_IfcVoidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWall_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWallType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWaterStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWindow_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3108], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWindowTypeEnum_type), true), + new attribute(strings[3743], new named_type(IFC4X3_RC2_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3744], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[3111], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3112], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3115], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3745], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3746], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3747], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3748], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3749], new named_type(IFC4X3_RC2_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3121], new named_type(IFC4X3_RC2_IfcShapeAspect_type), true), + new attribute(strings[3117], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3122], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true), + new attribute(strings[3123], new named_type(IFC4X3_RC2_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[3109], new named_type(IFC4X3_RC2_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[3127], new named_type(IFC4X3_RC2_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3324], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3325], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3121], new named_type(IFC4X3_RC2_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWindowStyle_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4X3_RC2_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[3109], new named_type(IFC4X3_RC2_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[3129], new named_type(IFC4X3_RC2_IfcBoolean_type), false), + new attribute(strings[3130], new named_type(IFC4X3_RC2_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWindowType_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWindowTypeEnum_type), false), + new attribute(strings[3743], new named_type(IFC4X3_RC2_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[3129], new named_type(IFC4X3_RC2_IfcBoolean_type), true), + new attribute(strings[3744], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3750], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcWorkTime_type)), true), + new attribute(strings[3751], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcWorkTime_type)), true), + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWorkControl_type->set_attributes({ + new attribute(strings[3320], new named_type(IFC4X3_RC2_IfcDateTime_type), false), + new attribute(strings[3752], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC2_IfcPerson_type)), true), + new attribute(strings[2850], new named_type(IFC4X3_RC2_IfcLabel_type), true), + new attribute(strings[3753], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3673], new named_type(IFC4X3_RC2_IfcDuration_type), true), + new attribute(strings[3714], new named_type(IFC4X3_RC2_IfcDateTime_type), false), + new attribute(strings[3754], new named_type(IFC4X3_RC2_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2843], new named_type(IFC4X3_RC2_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcWorkTime_type->set_attributes({ + new attribute(strings[3755], new named_type(IFC4X3_RC2_IfcRecurrencePattern_type), true), + new attribute(strings[3756], new named_type(IFC4X3_RC2_IfcDate_type), true), + new attribute(strings[3757], new named_type(IFC4X3_RC2_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3657], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3194], new named_type(IFC4X3_RC2_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3195], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC2_IfcZone_type->set_attributes({ + new attribute(strings[2982], new named_type(IFC4X3_RC2_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC2_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3758], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToActor_type, IFC4X3_RC2_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X3_RC2_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3760], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPerson_type, IFC4X3_RC2_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3761], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcOrganization_type, IFC4X3_RC2_IfcOrganization_type->attributes()[4]) + }); + IFC4X3_RC2_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3762], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC2_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3764], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesApproval_type, IFC4X3_RC2_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3765], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceApprovalRelationship_type, IFC4X3_RC2_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3766], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcApprovalRelationship_type, IFC4X3_RC2_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcApprovalRelationship_type, IFC4X3_RC2_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC2_IfcAxisLateralInclination_type->set_inverse_attributes({ + new inverse_attribute(strings[3768], inverse_attribute::set_type, 1, 1, IFC4X3_RC2_IfcLinearAxisWithInclination_type, IFC4X3_RC2_IfcLinearAxisWithInclination_type->attributes()[1]) + }); + IFC4X3_RC2_IfcBoundedCurve_type->set_inverse_attributes({ + new inverse_attribute(strings[3769], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcLinearPositioningElement_type, IFC4X3_RC2_IfcLinearPositioningElement_type->attributes()[0]) + }); + IFC4X3_RC2_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3770], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesClassification_type, IFC4X3_RC2_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3771], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcClassificationReference_type, IFC4X3_RC2_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC2_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3772], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesClassification_type, IFC4X3_RC2_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3771], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcClassificationReference_type, IFC4X3_RC2_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC2_IfcCompositeCurveSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3773], inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcCompositeCurve_type, IFC4X3_RC2_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X3_RC2_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3774], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceConstraintRelationship_type, IFC4X3_RC2_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X3_RC2_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3775], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByProperties_type, IFC4X3_RC2_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3776], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDeclares_type, IFC4X3_RC2_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X3_RC2_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3777], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToControl_type, IFC4X3_RC2_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X3_RC2_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3778], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcCoordinateOperation_type, IFC4X3_RC2_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC2_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3779], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelCoversSpaces_type, IFC4X3_RC2_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3780], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelCoversBldgElements_type, IFC4X3_RC2_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X3_RC2_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3781], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelFlowControlElements_type, IFC4X3_RC2_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X3_RC2_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsPortToElement_type, IFC4X3_RC2_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X3_RC2_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelFlowControlElements_type, IFC4X3_RC2_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X3_RC2_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3784], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesDocument_type, IFC4X3_RC2_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcDocumentReference_type, IFC4X3_RC2_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcDocumentInformationRelationship_type, IFC4X3_RC2_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcDocumentInformationRelationship_type, IFC4X3_RC2_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X3_RC2_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3788], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesDocument_type, IFC4X3_RC2_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X3_RC2_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3789], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelFillsElement_type, IFC4X3_RC2_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsElements_type, IFC4X3_RC2_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelInterferesElements_type, IFC4X3_RC2_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3792], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelInterferesElements_type, IFC4X3_RC2_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3793], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelProjectsElement_type, IFC4X3_RC2_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3794], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelVoidsElement_type, IFC4X3_RC2_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3795], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary_type, IFC4X3_RC2_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsElements_type, IFC4X3_RC2_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3762], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelCoversBldgElements_type, IFC4X3_RC2_IfcRelCoversBldgElements_type->attributes()[0]) + }); + IFC4X3_RC2_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X3_RC2_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3800], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary_type, IFC4X3_RC2_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC2_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3801], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcTextureMap_type, IFC4X3_RC2_IfcTextureMap_type->attributes()[1]) + }); + IFC4X3_RC2_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3802], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcRelProjectsElement_type, IFC4X3_RC2_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X3_RC2_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3803], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcRelVoidsElement_type, IFC4X3_RC2_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X3_RC2_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3804], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcGeometricRepresentationSubContext_type, IFC4X3_RC2_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3778], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcCoordinateOperation_type, IFC4X3_RC2_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC2_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3805], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcGrid_type, IFC4X3_RC2_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3806], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcGrid_type, IFC4X3_RC2_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3807], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcGrid_type, IFC4X3_RC2_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3808], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcVirtualGridIntersection_type, IFC4X3_RC2_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X3_RC2_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3809], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToGroup_type, IFC4X3_RC2_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4X3_RC2_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3810], inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcPolygonalFaceSet_type, IFC4X3_RC2_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4X3_RC2_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3811], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesLibrary_type, IFC4X3_RC2_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3812], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcLibraryReference_type, IFC4X3_RC2_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X3_RC2_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3813], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesLibrary_type, IFC4X3_RC2_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X3_RC2_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3814], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3766], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcMaterialRelationship_type, IFC4X3_RC2_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3815], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcMaterialRelationship_type, IFC4X3_RC2_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X3_RC2_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3816], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcMaterialConstituentSet_type, IFC4X3_RC2_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X3_RC2_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3817], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociatesMaterial_type, IFC4X3_RC2_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3013], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcMaterialProperties_type, IFC4X3_RC2_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X3_RC2_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3818], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcMaterialLayerSet_type, IFC4X3_RC2_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X3_RC2_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3819], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC2_IfcMaterialProfileSet_type, IFC4X3_RC2_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X3_RC2_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3817], inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcRelAssociatesMaterial_type, IFC4X3_RC2_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X3_RC2_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3820], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDefinesByObject_type, IFC4X3_RC2_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3776], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByObject_type, IFC4X3_RC2_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDefinesByType_type, IFC4X3_RC2_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3775], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByProperties_type, IFC4X3_RC2_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X3_RC2_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3822], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssigns_type, IFC4X3_RC2_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3823], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelNests_type, IFC4X3_RC2_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3824], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelNests_type, IFC4X3_RC2_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3825], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDeclares_type, IFC4X3_RC2_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3826], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAggregates_type, IFC4X3_RC2_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3827], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelAggregates_type, IFC4X3_RC2_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3828], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociates_type, IFC4X3_RC2_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC2_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3829], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcProduct_type, IFC4X3_RC2_IfcProduct_type->attributes()[0]) + }); + IFC4X3_RC2_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3830], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelFillsElement_type, IFC4X3_RC2_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X3_RC2_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3831], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcOrganizationRelationship_type, IFC4X3_RC2_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcOrganizationRelationship_type, IFC4X3_RC2_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3832], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPersonAndOrganization_type, IFC4X3_RC2_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X3_RC2_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3833], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPersonAndOrganization_type, IFC4X3_RC2_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X3_RC2_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3834], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcPhysicalComplexQuantity_type, IFC4X3_RC2_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X3_RC2_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3835], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsPortToElement_type, IFC4X3_RC2_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsPorts_type, IFC4X3_RC2_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsPorts_type, IFC4X3_RC2_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X3_RC2_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3762], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3836], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelPositions_type, IFC4X3_RC2_IfcRelPositions_type->attributes()[0]) + }); + IFC4X3_RC2_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3837], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSequence_type, IFC4X3_RC2_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3838], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSequence_type, IFC4X3_RC2_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3839], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProcess_type, IFC4X3_RC2_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC2_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProduct_type, IFC4X3_RC2_IfcRelAssignsToProduct_type->attributes()[0]), + new inverse_attribute(strings[3841], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelPositions_type, IFC4X3_RC2_IfcRelPositions_type->attributes()[1]), + new inverse_attribute(strings[3842], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC2_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3843], inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcProduct_type, IFC4X3_RC2_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3844], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcShapeAspect_type, IFC4X3_RC2_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X3_RC2_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3013], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcProfileProperties_type, IFC4X3_RC2_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X3_RC2_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3845], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertySet_type, IFC4X3_RC2_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3846], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertyDependencyRelationship_type, IFC4X3_RC2_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3847], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertyDependencyRelationship_type, IFC4X3_RC2_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3834], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcComplexProperty_type, IFC4X3_RC2_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3848], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceConstraintRelationship_type, IFC4X3_RC2_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcResourceApprovalRelationship_type, IFC4X3_RC2_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC2_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3825], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDeclares_type, IFC4X3_RC2_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3828], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssociates_type, IFC4X3_RC2_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC2_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3850], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcTypeObject_type, IFC4X3_RC2_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3775], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByTemplate_type, IFC4X3_RC2_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3851], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByProperties_type, IFC4X3_RC2_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X3_RC2_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3852], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelDefinesByTemplate_type, IFC4X3_RC2_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X3_RC2_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3853], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcComplexPropertyTemplate_type, IFC4X3_RC2_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3854], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPropertySetTemplate_type, IFC4X3_RC2_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2882], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3855], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X3_RC2_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3856], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRepresentationMap_type, IFC4X3_RC2_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3857], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcPresentationLayerAssignment_type, IFC4X3_RC2_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3858], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcProductRepresentation_type, IFC4X3_RC2_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X3_RC2_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3859], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRepresentation_type, IFC4X3_RC2_IfcRepresentation_type->attributes()[0]) + }); + IFC4X3_RC2_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3860], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcPresentationLayerAssignment_type, IFC4X3_RC2_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3861], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcStyledItem_type, IFC4X3_RC2_IfcStyledItem_type->attributes()[0]) + }); + IFC4X3_RC2_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3844], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcShapeAspect_type, IFC4X3_RC2_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3862], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcMappedItem_type, IFC4X3_RC2_IfcMappedItem_type->attributes()[0]) + }); + IFC4X3_RC2_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3863], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToResource_type, IFC4X3_RC2_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC2_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3864], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcShapeAspect_type, IFC4X3_RC2_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X3_RC2_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelCoversSpaces_type, IFC4X3_RC2_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3800], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelSpaceBoundary_type, IFC4X3_RC2_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC2_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3865], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, IFC4X3_RC2_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3866], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelServicesBuildings_type, IFC4X3_RC2_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3867], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4X3_RC2_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3868], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X3_RC2_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3869], inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcRelConnectsStructuralMember_type, IFC4X3_RC2_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X3_RC2_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3870], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type, IFC4X3_RC2_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X3_RC2_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3871], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcStructuralResultGroup_type, IFC4X3_RC2_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3872], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcStructuralAnalysisModel_type, IFC4X3_RC2_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X3_RC2_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3873], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelConnectsStructuralMember_type, IFC4X3_RC2_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X3_RC2_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3874], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcStructuralAnalysisModel_type, IFC4X3_RC2_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X3_RC2_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3875], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcTextureCoordinate_type, IFC4X3_RC2_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3876], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcSurfaceStyleWithTextures_type, IFC4X3_RC2_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X3_RC2_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3877], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelServicesBuildings_type, IFC4X3_RC2_IfcRelServicesBuildings_type->attributes()[0]), + new inverse_attribute(strings[3878], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC2_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3879], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcIndexedColourMap_type, IFC4X3_RC2_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3880], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcIndexedTextureMap_type, IFC4X3_RC2_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X3_RC2_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3759], inverse_attribute::set_type, 1, -1, IFC4X3_RC2_IfcExternalReferenceRelationship_type, IFC4X3_RC2_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC2_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3881], inverse_attribute::set_type, 0, 1, IFC4X3_RC2_IfcRelDefinesByType_type, IFC4X3_RC2_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X3_RC2_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3839], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProcess_type, IFC4X3_RC2_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC2_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToProduct_type, IFC4X3_RC2_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X3_RC2_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3863], inverse_attribute::set_type, 0, -1, IFC4X3_RC2_IfcRelAssignsToResource_type, IFC4X3_RC2_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC2_IfcControl_type->set_subtypes({ + IFC4X3_RC2_IfcActionRequest_type,IFC4X3_RC2_IfcCostItem_type,IFC4X3_RC2_IfcCostSchedule_type,IFC4X3_RC2_IfcPerformanceHistory_type,IFC4X3_RC2_IfcPermit_type,IFC4X3_RC2_IfcProjectOrder_type,IFC4X3_RC2_IfcWorkCalendar_type,IFC4X3_RC2_IfcWorkControl_type + }); + IFC4X3_RC2_IfcObject_type->set_subtypes({ + IFC4X3_RC2_IfcActor_type,IFC4X3_RC2_IfcControl_type,IFC4X3_RC2_IfcGroup_type,IFC4X3_RC2_IfcProcess_type,IFC4X3_RC2_IfcProduct_type,IFC4X3_RC2_IfcResource_type + }); + IFC4X3_RC2_IfcDistributionControlElement_type->set_subtypes({ + IFC4X3_RC2_IfcActuator_type,IFC4X3_RC2_IfcAlarm_type,IFC4X3_RC2_IfcController_type,IFC4X3_RC2_IfcFlowInstrument_type,IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type,IFC4X3_RC2_IfcSensor_type,IFC4X3_RC2_IfcUnitaryControlElement_type + }); + IFC4X3_RC2_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X3_RC2_IfcActuatorType_type,IFC4X3_RC2_IfcAlarmType_type,IFC4X3_RC2_IfcControllerType_type,IFC4X3_RC2_IfcFlowInstrumentType_type,IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type,IFC4X3_RC2_IfcSensorType_type,IFC4X3_RC2_IfcUnitaryControlElementType_type + }); + IFC4X3_RC2_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X3_RC2_IfcAdvancedBrep_type,IFC4X3_RC2_IfcFacetedBrep_type + }); + IFC4X3_RC2_IfcAdvancedBrep_type->set_subtypes({ + IFC4X3_RC2_IfcAdvancedBrepWithVoids_type + }); + IFC4X3_RC2_IfcFaceSurface_type->set_subtypes({ + IFC4X3_RC2_IfcAdvancedFace_type + }); + IFC4X3_RC2_IfcFlowTerminal_type->set_subtypes({ + IFC4X3_RC2_IfcAirTerminal_type,IFC4X3_RC2_IfcAudioVisualAppliance_type,IFC4X3_RC2_IfcCommunicationsAppliance_type,IFC4X3_RC2_IfcElectricAppliance_type,IFC4X3_RC2_IfcFireSuppressionTerminal_type,IFC4X3_RC2_IfcLamp_type,IFC4X3_RC2_IfcLightFixture_type,IFC4X3_RC2_IfcLiquidTerminal_type,IFC4X3_RC2_IfcMedicalDevice_type,IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type,IFC4X3_RC2_IfcOutlet_type,IFC4X3_RC2_IfcSanitaryTerminal_type,IFC4X3_RC2_IfcSignal_type,IFC4X3_RC2_IfcSpaceHeater_type,IFC4X3_RC2_IfcStackTerminal_type,IFC4X3_RC2_IfcWasteTerminal_type + }); + IFC4X3_RC2_IfcFlowController_type->set_subtypes({ + IFC4X3_RC2_IfcAirTerminalBox_type,IFC4X3_RC2_IfcDamper_type,IFC4X3_RC2_IfcDistributionBoard_type,IFC4X3_RC2_IfcElectricDistributionBoard_type,IFC4X3_RC2_IfcElectricTimeControl_type,IFC4X3_RC2_IfcFlowMeter_type,IFC4X3_RC2_IfcProtectiveDevice_type,IFC4X3_RC2_IfcSwitchingDevice_type,IFC4X3_RC2_IfcValve_type + }); + IFC4X3_RC2_IfcFlowControllerType_type->set_subtypes({ + IFC4X3_RC2_IfcAirTerminalBoxType_type,IFC4X3_RC2_IfcDamperType_type,IFC4X3_RC2_IfcDistributionBoardType_type,IFC4X3_RC2_IfcElectricDistributionBoardType_type,IFC4X3_RC2_IfcElectricTimeControlType_type,IFC4X3_RC2_IfcFlowMeterType_type,IFC4X3_RC2_IfcProtectiveDeviceType_type,IFC4X3_RC2_IfcSwitchingDeviceType_type,IFC4X3_RC2_IfcValveType_type + }); + IFC4X3_RC2_IfcFlowTerminalType_type->set_subtypes({ + IFC4X3_RC2_IfcAirTerminalType_type,IFC4X3_RC2_IfcAudioVisualApplianceType_type,IFC4X3_RC2_IfcCommunicationsApplianceType_type,IFC4X3_RC2_IfcElectricApplianceType_type,IFC4X3_RC2_IfcFireSuppressionTerminalType_type,IFC4X3_RC2_IfcLampType_type,IFC4X3_RC2_IfcLightFixtureType_type,IFC4X3_RC2_IfcLiquidTerminalType_type,IFC4X3_RC2_IfcMedicalDeviceType_type,IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type,IFC4X3_RC2_IfcOutletType_type,IFC4X3_RC2_IfcSanitaryTerminalType_type,IFC4X3_RC2_IfcSignalType_type,IFC4X3_RC2_IfcSpaceHeaterType_type,IFC4X3_RC2_IfcStackTerminalType_type,IFC4X3_RC2_IfcWasteTerminalType_type + }); + IFC4X3_RC2_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X3_RC2_IfcAirToAirHeatRecovery_type,IFC4X3_RC2_IfcBoiler_type,IFC4X3_RC2_IfcBurner_type,IFC4X3_RC2_IfcChiller_type,IFC4X3_RC2_IfcCoil_type,IFC4X3_RC2_IfcCondenser_type,IFC4X3_RC2_IfcCooledBeam_type,IFC4X3_RC2_IfcCoolingTower_type,IFC4X3_RC2_IfcElectricGenerator_type,IFC4X3_RC2_IfcElectricMotor_type,IFC4X3_RC2_IfcEngine_type,IFC4X3_RC2_IfcEvaporativeCooler_type,IFC4X3_RC2_IfcEvaporator_type,IFC4X3_RC2_IfcHeatExchanger_type,IFC4X3_RC2_IfcHumidifier_type,IFC4X3_RC2_IfcMotorConnection_type,IFC4X3_RC2_IfcSolarDevice_type,IFC4X3_RC2_IfcTransformer_type,IFC4X3_RC2_IfcTubeBundle_type,IFC4X3_RC2_IfcUnitaryEquipment_type + }); + IFC4X3_RC2_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type,IFC4X3_RC2_IfcBoilerType_type,IFC4X3_RC2_IfcBurnerType_type,IFC4X3_RC2_IfcChillerType_type,IFC4X3_RC2_IfcCoilType_type,IFC4X3_RC2_IfcCondenserType_type,IFC4X3_RC2_IfcCooledBeamType_type,IFC4X3_RC2_IfcCoolingTowerType_type,IFC4X3_RC2_IfcElectricGeneratorType_type,IFC4X3_RC2_IfcElectricMotorType_type,IFC4X3_RC2_IfcEngineType_type,IFC4X3_RC2_IfcEvaporativeCoolerType_type,IFC4X3_RC2_IfcEvaporatorType_type,IFC4X3_RC2_IfcHeatExchangerType_type,IFC4X3_RC2_IfcHumidifierType_type,IFC4X3_RC2_IfcMotorConnectionType_type,IFC4X3_RC2_IfcSolarDeviceType_type,IFC4X3_RC2_IfcTransformerType_type,IFC4X3_RC2_IfcTubeBundleType_type,IFC4X3_RC2_IfcUnitaryEquipmentType_type + }); + IFC4X3_RC2_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X3_RC2_IfcAlignment_type + }); + IFC4X3_RC2_IfcAlignmentVerticalSegment_type->set_subtypes({ + IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type,IFC4X3_RC2_IfcAlignment2DVerSegLine_type,IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type + }); + IFC4X3_RC2_IfcLinearElement_type->set_subtypes({ + IFC4X3_RC2_IfcAlignmentCant_type,IFC4X3_RC2_IfcAlignmentHorizontal_type,IFC4X3_RC2_IfcAlignmentSegment_type,IFC4X3_RC2_IfcAlignmentVertical_type + }); + IFC4X3_RC2_IfcAlignmentParameterSegment_type->set_subtypes({ + IFC4X3_RC2_IfcAlignmentCantSegment_type,IFC4X3_RC2_IfcAlignmentHorizontalSegment_type,IFC4X3_RC2_IfcAlignmentVerticalSegment_type + }); + IFC4X3_RC2_IfcBoundedCurve_type->set_subtypes({ + IFC4X3_RC2_IfcAlignmentCurve_type,IFC4X3_RC2_IfcBSplineCurve_type,IFC4X3_RC2_IfcCompositeCurve_type,IFC4X3_RC2_IfcCurveSegment2D_type,IFC4X3_RC2_IfcGradientCurve_type,IFC4X3_RC2_IfcIndexedPolyCurve_type,IFC4X3_RC2_IfcPolyline_type,IFC4X3_RC2_IfcSegmentedReferenceCurve_type,IFC4X3_RC2_IfcTrimmedCurve_type + }); + IFC4X3_RC2_IfcProduct_type->set_subtypes({ + IFC4X3_RC2_IfcAnnotation_type,IFC4X3_RC2_IfcElement_type,IFC4X3_RC2_IfcLinearElement_type,IFC4X3_RC2_IfcPort_type,IFC4X3_RC2_IfcPositioningElement_type,IFC4X3_RC2_IfcProxy_type,IFC4X3_RC2_IfcSpatialElement_type,IFC4X3_RC2_IfcStructuralActivity_type,IFC4X3_RC2_IfcStructuralItem_type + }); + IFC4X3_RC2_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X3_RC2_IfcAnnotationFillArea_type,IFC4X3_RC2_IfcAxisLateralInclination_type,IFC4X3_RC2_IfcBooleanResult_type,IFC4X3_RC2_IfcBoundingBox_type,IFC4X3_RC2_IfcCartesianPointList_type,IFC4X3_RC2_IfcCartesianTransformationOperator_type,IFC4X3_RC2_IfcCsgPrimitive3D_type,IFC4X3_RC2_IfcCurve_type,IFC4X3_RC2_IfcDirection_type,IFC4X3_RC2_IfcFaceBasedSurfaceModel_type,IFC4X3_RC2_IfcFillAreaStyleHatching_type,IFC4X3_RC2_IfcFillAreaStyleTiles_type,IFC4X3_RC2_IfcGeometricSet_type,IFC4X3_RC2_IfcHalfSpaceSolid_type,IFC4X3_RC2_IfcLightSource_type,IFC4X3_RC2_IfcLinearAxisWithInclination_type,IFC4X3_RC2_IfcPlacement_type,IFC4X3_RC2_IfcPlanarExtent_type,IFC4X3_RC2_IfcPoint_type,IFC4X3_RC2_IfcSectionedSpine_type,IFC4X3_RC2_IfcSegment_type,IFC4X3_RC2_IfcShellBasedSurfaceModel_type,IFC4X3_RC2_IfcSolidModel_type,IFC4X3_RC2_IfcSurface_type,IFC4X3_RC2_IfcTessellatedItem_type,IFC4X3_RC2_IfcTextLiteral_type,IFC4X3_RC2_IfcVector_type + }); + IFC4X3_RC2_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X3_RC2_IfcApprovalRelationship_type,IFC4X3_RC2_IfcCurrencyRelationship_type,IFC4X3_RC2_IfcDocumentInformationRelationship_type,IFC4X3_RC2_IfcExternalReferenceRelationship_type,IFC4X3_RC2_IfcMaterialRelationship_type,IFC4X3_RC2_IfcOrganizationRelationship_type,IFC4X3_RC2_IfcPropertyDependencyRelationship_type,IFC4X3_RC2_IfcResourceApprovalRelationship_type,IFC4X3_RC2_IfcResourceConstraintRelationship_type + }); + IFC4X3_RC2_IfcProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcArbitraryClosedProfileDef_type,IFC4X3_RC2_IfcArbitraryOpenProfileDef_type,IFC4X3_RC2_IfcCompositeProfileDef_type,IFC4X3_RC2_IfcDerivedProfileDef_type,IFC4X3_RC2_IfcOpenCrossProfileDef_type,IFC4X3_RC2_IfcParameterizedProfileDef_type + }); + IFC4X3_RC2_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X3_RC2_IfcGroup_type->set_subtypes({ + IFC4X3_RC2_IfcAsset_type,IFC4X3_RC2_IfcInventory_type,IFC4X3_RC2_IfcStructuralLoadGroup_type,IFC4X3_RC2_IfcStructuralResultGroup_type,IFC4X3_RC2_IfcSystem_type + }); + IFC4X3_RC2_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type,IFC4X3_RC2_IfcCShapeProfileDef_type,IFC4X3_RC2_IfcCircleProfileDef_type,IFC4X3_RC2_IfcEllipseProfileDef_type,IFC4X3_RC2_IfcIShapeProfileDef_type,IFC4X3_RC2_IfcLShapeProfileDef_type,IFC4X3_RC2_IfcRectangleProfileDef_type,IFC4X3_RC2_IfcTShapeProfileDef_type,IFC4X3_RC2_IfcTrapeziumProfileDef_type,IFC4X3_RC2_IfcUShapeProfileDef_type,IFC4X3_RC2_IfcZShapeProfileDef_type + }); + IFC4X3_RC2_IfcPlacement_type->set_subtypes({ + IFC4X3_RC2_IfcAxis1Placement_type,IFC4X3_RC2_IfcAxis2Placement2D_type,IFC4X3_RC2_IfcAxis2Placement3D_type,IFC4X3_RC2_IfcAxis2PlacementLinear_type + }); + IFC4X3_RC2_IfcBSplineCurve_type->set_subtypes({ + IFC4X3_RC2_IfcBSplineCurveWithKnots_type + }); + IFC4X3_RC2_IfcBoundedSurface_type->set_subtypes({ + IFC4X3_RC2_IfcBSplineSurface_type,IFC4X3_RC2_IfcCurveBoundedPlane_type,IFC4X3_RC2_IfcCurveBoundedSurface_type,IFC4X3_RC2_IfcRectangularTrimmedSurface_type + }); + IFC4X3_RC2_IfcBSplineSurface_type->set_subtypes({ + IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type + }); + IFC4X3_RC2_IfcBuiltElement_type->set_subtypes({ + IFC4X3_RC2_IfcBeam_type,IFC4X3_RC2_IfcBearing_type,IFC4X3_RC2_IfcBuildingElementProxy_type,IFC4X3_RC2_IfcChimney_type,IFC4X3_RC2_IfcColumn_type,IFC4X3_RC2_IfcCourse_type,IFC4X3_RC2_IfcCovering_type,IFC4X3_RC2_IfcCurtainWall_type,IFC4X3_RC2_IfcDeepFoundation_type,IFC4X3_RC2_IfcDoor_type,IFC4X3_RC2_IfcEarthworksElement_type,IFC4X3_RC2_IfcFooting_type,IFC4X3_RC2_IfcKerb_type,IFC4X3_RC2_IfcMember_type,IFC4X3_RC2_IfcMooringDevice_type,IFC4X3_RC2_IfcNavigationElement_type,IFC4X3_RC2_IfcPavement_type,IFC4X3_RC2_IfcPlate_type,IFC4X3_RC2_IfcRail_type,IFC4X3_RC2_IfcRailing_type,IFC4X3_RC2_IfcRamp_type,IFC4X3_RC2_IfcRampFlight_type,IFC4X3_RC2_IfcRoof_type,IFC4X3_RC2_IfcShadingDevice_type,IFC4X3_RC2_IfcSlab_type,IFC4X3_RC2_IfcStair_type,IFC4X3_RC2_IfcStairFlight_type,IFC4X3_RC2_IfcTrackElement_type,IFC4X3_RC2_IfcWall_type,IFC4X3_RC2_IfcWindow_type + }); + IFC4X3_RC2_IfcBeam_type->set_subtypes({ + IFC4X3_RC2_IfcBeamStandardCase_type + }); + IFC4X3_RC2_IfcBuiltElementType_type->set_subtypes({ + IFC4X3_RC2_IfcBeamType_type,IFC4X3_RC2_IfcBearingType_type,IFC4X3_RC2_IfcBuildingElementProxyType_type,IFC4X3_RC2_IfcChimneyType_type,IFC4X3_RC2_IfcColumnType_type,IFC4X3_RC2_IfcCourseType_type,IFC4X3_RC2_IfcCoveringType_type,IFC4X3_RC2_IfcCurtainWallType_type,IFC4X3_RC2_IfcDeepFoundationType_type,IFC4X3_RC2_IfcDoorType_type,IFC4X3_RC2_IfcFootingType_type,IFC4X3_RC2_IfcKerbType_type,IFC4X3_RC2_IfcMemberType_type,IFC4X3_RC2_IfcMooringDeviceType_type,IFC4X3_RC2_IfcNavigationElementType_type,IFC4X3_RC2_IfcPavementType_type,IFC4X3_RC2_IfcPlateType_type,IFC4X3_RC2_IfcRailType_type,IFC4X3_RC2_IfcRailingType_type,IFC4X3_RC2_IfcRampFlightType_type,IFC4X3_RC2_IfcRampType_type,IFC4X3_RC2_IfcRoofType_type,IFC4X3_RC2_IfcShadingDeviceType_type,IFC4X3_RC2_IfcSlabType_type,IFC4X3_RC2_IfcStairFlightType_type,IFC4X3_RC2_IfcStairType_type,IFC4X3_RC2_IfcTrackElementType_type,IFC4X3_RC2_IfcWallType_type,IFC4X3_RC2_IfcWindowType_type + }); + IFC4X3_RC2_IfcSurfaceTexture_type->set_subtypes({ + IFC4X3_RC2_IfcBlobTexture_type,IFC4X3_RC2_IfcImageTexture_type,IFC4X3_RC2_IfcPixelTexture_type + }); + IFC4X3_RC2_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X3_RC2_IfcBlock_type,IFC4X3_RC2_IfcRectangularPyramid_type,IFC4X3_RC2_IfcRightCircularCone_type,IFC4X3_RC2_IfcRightCircularCylinder_type,IFC4X3_RC2_IfcSphere_type + }); + IFC4X3_RC2_IfcCurve_type->set_subtypes({ + IFC4X3_RC2_IfcBlossCurve_type,IFC4X3_RC2_IfcBoundedCurve_type,IFC4X3_RC2_IfcClothoid_type,IFC4X3_RC2_IfcConic_type,IFC4X3_RC2_IfcLine_type,IFC4X3_RC2_IfcOffsetCurve_type,IFC4X3_RC2_IfcPcurve_type,IFC4X3_RC2_IfcSeriesParameterCurve_type,IFC4X3_RC2_IfcSurfaceCurve_type + }); + IFC4X3_RC2_IfcBooleanResult_type->set_subtypes({ + IFC4X3_RC2_IfcBooleanClippingResult_type + }); + IFC4X3_RC2_IfcGeotechnicalAssembly_type->set_subtypes({ + IFC4X3_RC2_IfcBorehole_type,IFC4X3_RC2_IfcGeomodel_type,IFC4X3_RC2_IfcGeoslice_type + }); + IFC4X3_RC2_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X3_RC2_IfcBoundaryCurve_type + }); + IFC4X3_RC2_IfcBoundaryCondition_type->set_subtypes({ + IFC4X3_RC2_IfcBoundaryEdgeCondition_type,IFC4X3_RC2_IfcBoundaryFaceCondition_type,IFC4X3_RC2_IfcBoundaryNodeCondition_type + }); + IFC4X3_RC2_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type + }); + IFC4X3_RC2_IfcSurface_type->set_subtypes({ + IFC4X3_RC2_IfcBoundedSurface_type,IFC4X3_RC2_IfcElementarySurface_type,IFC4X3_RC2_IfcSectionedSurface_type,IFC4X3_RC2_IfcSweptSurface_type + }); + IFC4X3_RC2_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X3_RC2_IfcBoxedHalfSpace_type,IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X3_RC2_IfcFacility_type->set_subtypes({ + IFC4X3_RC2_IfcBridge_type,IFC4X3_RC2_IfcBuilding_type,IFC4X3_RC2_IfcMarineFacility_type,IFC4X3_RC2_IfcRailway_type,IFC4X3_RC2_IfcRoad_type + }); + IFC4X3_RC2_IfcFacilityPart_type->set_subtypes({ + IFC4X3_RC2_IfcBridgePart_type + }); + IFC4X3_RC2_IfcElementComponent_type->set_subtypes({ + IFC4X3_RC2_IfcBuildingElementPart_type,IFC4X3_RC2_IfcDiscreteAccessory_type,IFC4X3_RC2_IfcFastener_type,IFC4X3_RC2_IfcImpactProtectionDevice_type,IFC4X3_RC2_IfcMechanicalFastener_type,IFC4X3_RC2_IfcReinforcingElement_type,IFC4X3_RC2_IfcSign_type,IFC4X3_RC2_IfcVibrationDamper_type,IFC4X3_RC2_IfcVibrationIsolator_type + }); + IFC4X3_RC2_IfcElementComponentType_type->set_subtypes({ + IFC4X3_RC2_IfcBuildingElementPartType_type,IFC4X3_RC2_IfcDiscreteAccessoryType_type,IFC4X3_RC2_IfcFastenerType_type,IFC4X3_RC2_IfcImpactProtectionDeviceType_type,IFC4X3_RC2_IfcMechanicalFastenerType_type,IFC4X3_RC2_IfcReinforcingElementType_type,IFC4X3_RC2_IfcSignType_type,IFC4X3_RC2_IfcVibrationDamperType_type,IFC4X3_RC2_IfcVibrationIsolatorType_type + }); + IFC4X3_RC2_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC2_IfcBuildingStorey_type,IFC4X3_RC2_IfcFacility_type,IFC4X3_RC2_IfcFacilityPart_type,IFC4X3_RC2_IfcSite_type,IFC4X3_RC2_IfcSpace_type + }); + IFC4X3_RC2_IfcSystem_type->set_subtypes({ + IFC4X3_RC2_IfcBuildingSystem_type,IFC4X3_RC2_IfcBuiltSystem_type,IFC4X3_RC2_IfcDistributionSystem_type,IFC4X3_RC2_IfcStructuralAnalysisModel_type,IFC4X3_RC2_IfcZone_type + }); + IFC4X3_RC2_IfcElement_type->set_subtypes({ + IFC4X3_RC2_IfcBuiltElement_type,IFC4X3_RC2_IfcCivilElement_type,IFC4X3_RC2_IfcDistributionElement_type,IFC4X3_RC2_IfcElementAssembly_type,IFC4X3_RC2_IfcElementComponent_type,IFC4X3_RC2_IfcFeatureElement_type,IFC4X3_RC2_IfcFurnishingElement_type,IFC4X3_RC2_IfcGeographicElement_type,IFC4X3_RC2_IfcGeotechnicalElement_type,IFC4X3_RC2_IfcTransportElement_type,IFC4X3_RC2_IfcVirtualElement_type + }); + IFC4X3_RC2_IfcElementType_type->set_subtypes({ + IFC4X3_RC2_IfcBuiltElementType_type,IFC4X3_RC2_IfcCivilElementType_type,IFC4X3_RC2_IfcDistributionElementType_type,IFC4X3_RC2_IfcElementAssemblyType_type,IFC4X3_RC2_IfcElementComponentType_type,IFC4X3_RC2_IfcFurnishingElementType_type,IFC4X3_RC2_IfcGeographicElementType_type,IFC4X3_RC2_IfcTransportElementType_type + }); + IFC4X3_RC2_IfcFlowFitting_type->set_subtypes({ + IFC4X3_RC2_IfcCableCarrierFitting_type,IFC4X3_RC2_IfcCableFitting_type,IFC4X3_RC2_IfcDuctFitting_type,IFC4X3_RC2_IfcJunctionBox_type,IFC4X3_RC2_IfcPipeFitting_type + }); + IFC4X3_RC2_IfcFlowFittingType_type->set_subtypes({ + IFC4X3_RC2_IfcCableCarrierFittingType_type,IFC4X3_RC2_IfcCableFittingType_type,IFC4X3_RC2_IfcDuctFittingType_type,IFC4X3_RC2_IfcJunctionBoxType_type,IFC4X3_RC2_IfcPipeFittingType_type + }); + IFC4X3_RC2_IfcFlowSegment_type->set_subtypes({ + IFC4X3_RC2_IfcCableCarrierSegment_type,IFC4X3_RC2_IfcCableSegment_type,IFC4X3_RC2_IfcConveyorSegment_type,IFC4X3_RC2_IfcDuctSegment_type,IFC4X3_RC2_IfcPipeSegment_type + }); + IFC4X3_RC2_IfcFlowSegmentType_type->set_subtypes({ + IFC4X3_RC2_IfcCableCarrierSegmentType_type,IFC4X3_RC2_IfcCableSegmentType_type,IFC4X3_RC2_IfcConveyorSegmentType_type,IFC4X3_RC2_IfcDuctSegmentType_type,IFC4X3_RC2_IfcPipeSegmentType_type + }); + IFC4X3_RC2_IfcDeepFoundation_type->set_subtypes({ + IFC4X3_RC2_IfcCaissonFoundation_type,IFC4X3_RC2_IfcPile_type + }); + IFC4X3_RC2_IfcDeepFoundationType_type->set_subtypes({ + IFC4X3_RC2_IfcCaissonFoundationType_type,IFC4X3_RC2_IfcPileType_type + }); + IFC4X3_RC2_IfcPoint_type->set_subtypes({ + IFC4X3_RC2_IfcCartesianPoint_type,IFC4X3_RC2_IfcPointByDistanceExpression_type,IFC4X3_RC2_IfcPointOnCurve_type,IFC4X3_RC2_IfcPointOnSurface_type + }); + IFC4X3_RC2_IfcCartesianPointList_type->set_subtypes({ + IFC4X3_RC2_IfcCartesianPointList2D_type,IFC4X3_RC2_IfcCartesianPointList3D_type + }); + IFC4X3_RC2_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X3_RC2_IfcCartesianTransformationOperator2D_type,IFC4X3_RC2_IfcCartesianTransformationOperator3D_type + }); + IFC4X3_RC2_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X3_RC2_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X3_RC2_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcCenterLineProfileDef_type + }); + IFC4X3_RC2_IfcConic_type->set_subtypes({ + IFC4X3_RC2_IfcCircle_type,IFC4X3_RC2_IfcEllipse_type + }); + IFC4X3_RC2_IfcCircleProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcCircleHollowProfileDef_type + }); + IFC4X3_RC2_IfcCurveSegment2D_type->set_subtypes({ + IFC4X3_RC2_IfcCircularArcSegment2D_type,IFC4X3_RC2_IfcLineSegment2D_type,IFC4X3_RC2_IfcTransitionCurveSegment2D_type + }); + IFC4X3_RC2_IfcExternalInformation_type->set_subtypes({ + IFC4X3_RC2_IfcClassification_type,IFC4X3_RC2_IfcDocumentInformation_type,IFC4X3_RC2_IfcLibraryInformation_type + }); + IFC4X3_RC2_IfcExternalReference_type->set_subtypes({ + IFC4X3_RC2_IfcClassificationReference_type,IFC4X3_RC2_IfcDocumentReference_type,IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type,IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type,IFC4X3_RC2_IfcExternallyDefinedTextFont_type,IFC4X3_RC2_IfcLibraryReference_type + }); + IFC4X3_RC2_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X3_RC2_IfcClosedShell_type,IFC4X3_RC2_IfcOpenShell_type + }); + IFC4X3_RC2_IfcColourSpecification_type->set_subtypes({ + IFC4X3_RC2_IfcColourRgb_type + }); + IFC4X3_RC2_IfcPresentationItem_type->set_subtypes({ + IFC4X3_RC2_IfcColourRgbList_type,IFC4X3_RC2_IfcColourSpecification_type,IFC4X3_RC2_IfcCurveStyleFont_type,IFC4X3_RC2_IfcCurveStyleFontAndScaling_type,IFC4X3_RC2_IfcCurveStyleFontPattern_type,IFC4X3_RC2_IfcIndexedColourMap_type,IFC4X3_RC2_IfcPreDefinedItem_type,IFC4X3_RC2_IfcSurfaceStyleLighting_type,IFC4X3_RC2_IfcSurfaceStyleRefraction_type,IFC4X3_RC2_IfcSurfaceStyleShading_type,IFC4X3_RC2_IfcSurfaceStyleWithTextures_type,IFC4X3_RC2_IfcSurfaceTexture_type,IFC4X3_RC2_IfcTextStyleForDefinedFont_type,IFC4X3_RC2_IfcTextStyleTextModel_type,IFC4X3_RC2_IfcTextureCoordinate_type,IFC4X3_RC2_IfcTextureVertex_type,IFC4X3_RC2_IfcTextureVertexList_type + }); + IFC4X3_RC2_IfcColumn_type->set_subtypes({ + IFC4X3_RC2_IfcColumnStandardCase_type + }); + IFC4X3_RC2_IfcProperty_type->set_subtypes({ + IFC4X3_RC2_IfcComplexProperty_type,IFC4X3_RC2_IfcSimpleProperty_type + }); + IFC4X3_RC2_IfcPropertyTemplate_type->set_subtypes({ + IFC4X3_RC2_IfcComplexPropertyTemplate_type,IFC4X3_RC2_IfcSimplePropertyTemplate_type + }); + IFC4X3_RC2_IfcCompositeCurve_type->set_subtypes({ + IFC4X3_RC2_IfcCompositeCurveOnSurface_type + }); + IFC4X3_RC2_IfcSegment_type->set_subtypes({ + IFC4X3_RC2_IfcCompositeCurveSegment_type,IFC4X3_RC2_IfcCurveSegment_type + }); + IFC4X3_RC2_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X3_RC2_IfcCompressor_type,IFC4X3_RC2_IfcFan_type,IFC4X3_RC2_IfcPump_type + }); + IFC4X3_RC2_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X3_RC2_IfcCompressorType_type,IFC4X3_RC2_IfcFanType_type,IFC4X3_RC2_IfcPumpType_type + }); + IFC4X3_RC2_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X3_RC2_IfcConnectedFaceSet_type,IFC4X3_RC2_IfcEdge_type,IFC4X3_RC2_IfcFace_type,IFC4X3_RC2_IfcFaceBound_type,IFC4X3_RC2_IfcLoop_type,IFC4X3_RC2_IfcPath_type,IFC4X3_RC2_IfcVertex_type + }); + IFC4X3_RC2_IfcConnectionGeometry_type->set_subtypes({ + IFC4X3_RC2_IfcConnectionCurveGeometry_type,IFC4X3_RC2_IfcConnectionPointGeometry_type,IFC4X3_RC2_IfcConnectionSurfaceGeometry_type,IFC4X3_RC2_IfcConnectionVolumeGeometry_type + }); + IFC4X3_RC2_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X3_RC2_IfcConnectionPointEccentricity_type + }); + IFC4X3_RC2_IfcConstructionResource_type->set_subtypes({ + IFC4X3_RC2_IfcConstructionEquipmentResource_type,IFC4X3_RC2_IfcConstructionMaterialResource_type,IFC4X3_RC2_IfcConstructionProductResource_type,IFC4X3_RC2_IfcCrewResource_type,IFC4X3_RC2_IfcLaborResource_type,IFC4X3_RC2_IfcSubContractResource_type + }); + IFC4X3_RC2_IfcConstructionResourceType_type->set_subtypes({ + IFC4X3_RC2_IfcConstructionEquipmentResourceType_type,IFC4X3_RC2_IfcConstructionMaterialResourceType_type,IFC4X3_RC2_IfcConstructionProductResourceType_type,IFC4X3_RC2_IfcCrewResourceType_type,IFC4X3_RC2_IfcLaborResourceType_type,IFC4X3_RC2_IfcSubContractResourceType_type + }); + IFC4X3_RC2_IfcResource_type->set_subtypes({ + IFC4X3_RC2_IfcConstructionResource_type + }); + IFC4X3_RC2_IfcTypeResource_type->set_subtypes({ + IFC4X3_RC2_IfcConstructionResourceType_type + }); + IFC4X3_RC2_IfcObjectDefinition_type->set_subtypes({ + IFC4X3_RC2_IfcContext_type,IFC4X3_RC2_IfcObject_type,IFC4X3_RC2_IfcTypeObject_type + }); + IFC4X3_RC2_IfcNamedUnit_type->set_subtypes({ + IFC4X3_RC2_IfcContextDependentUnit_type,IFC4X3_RC2_IfcConversionBasedUnit_type,IFC4X3_RC2_IfcSIUnit_type + }); + IFC4X3_RC2_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type + }); + IFC4X3_RC2_IfcAppliedValue_type->set_subtypes({ + IFC4X3_RC2_IfcCostValue_type + }); + IFC4X3_RC2_IfcSolidModel_type->set_subtypes({ + IFC4X3_RC2_IfcCsgSolid_type,IFC4X3_RC2_IfcManifoldSolidBrep_type,IFC4X3_RC2_IfcSectionedSolid_type,IFC4X3_RC2_IfcSweptAreaSolid_type,IFC4X3_RC2_IfcSweptDiskSolid_type + }); + IFC4X3_RC2_IfcPresentationStyle_type->set_subtypes({ + IFC4X3_RC2_IfcCurveStyle_type,IFC4X3_RC2_IfcFillAreaStyle_type,IFC4X3_RC2_IfcSurfaceStyle_type,IFC4X3_RC2_IfcTextStyle_type + }); + IFC4X3_RC2_IfcElementarySurface_type->set_subtypes({ + IFC4X3_RC2_IfcCylindricalSurface_type,IFC4X3_RC2_IfcPlane_type,IFC4X3_RC2_IfcSphericalSurface_type,IFC4X3_RC2_IfcToroidalSurface_type + }); + IFC4X3_RC2_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type,IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type,IFC4X3_RC2_IfcExtrudedAreaSolid_type,IFC4X3_RC2_IfcRevolvedAreaSolid_type + }); + IFC4X3_RC2_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X3_RC2_IfcDistributionChamberElement_type,IFC4X3_RC2_IfcEnergyConversionDevice_type,IFC4X3_RC2_IfcFlowController_type,IFC4X3_RC2_IfcFlowFitting_type,IFC4X3_RC2_IfcFlowMovingDevice_type,IFC4X3_RC2_IfcFlowSegment_type,IFC4X3_RC2_IfcFlowStorageDevice_type,IFC4X3_RC2_IfcFlowTerminal_type,IFC4X3_RC2_IfcFlowTreatmentDevice_type + }); + IFC4X3_RC2_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X3_RC2_IfcDistributionChamberElementType_type,IFC4X3_RC2_IfcEnergyConversionDeviceType_type,IFC4X3_RC2_IfcFlowControllerType_type,IFC4X3_RC2_IfcFlowFittingType_type,IFC4X3_RC2_IfcFlowMovingDeviceType_type,IFC4X3_RC2_IfcFlowSegmentType_type,IFC4X3_RC2_IfcFlowStorageDeviceType_type,IFC4X3_RC2_IfcFlowTerminalType_type,IFC4X3_RC2_IfcFlowTreatmentDeviceType_type + }); + IFC4X3_RC2_IfcDistributionSystem_type->set_subtypes({ + IFC4X3_RC2_IfcDistributionCircuit_type + }); + IFC4X3_RC2_IfcDistributionElement_type->set_subtypes({ + IFC4X3_RC2_IfcDistributionControlElement_type,IFC4X3_RC2_IfcDistributionFlowElement_type + }); + IFC4X3_RC2_IfcDistributionElementType_type->set_subtypes({ + IFC4X3_RC2_IfcDistributionControlElementType_type,IFC4X3_RC2_IfcDistributionFlowElementType_type + }); + IFC4X3_RC2_IfcPort_type->set_subtypes({ + IFC4X3_RC2_IfcDistributionPort_type + }); + IFC4X3_RC2_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X3_RC2_IfcDoorLiningProperties_type,IFC4X3_RC2_IfcDoorPanelProperties_type,IFC4X3_RC2_IfcPermeableCoveringProperties_type,IFC4X3_RC2_IfcReinforcementDefinitionProperties_type,IFC4X3_RC2_IfcWindowLiningProperties_type,IFC4X3_RC2_IfcWindowPanelProperties_type + }); + IFC4X3_RC2_IfcDoor_type->set_subtypes({ + IFC4X3_RC2_IfcDoorStandardCase_type + }); + IFC4X3_RC2_IfcTypeProduct_type->set_subtypes({ + IFC4X3_RC2_IfcDoorStyle_type,IFC4X3_RC2_IfcElementType_type,IFC4X3_RC2_IfcSpatialElementType_type,IFC4X3_RC2_IfcWindowStyle_type + }); + IFC4X3_RC2_IfcPreDefinedColour_type->set_subtypes({ + IFC4X3_RC2_IfcDraughtingPreDefinedColour_type + }); + IFC4X3_RC2_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X3_RC2_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X3_RC2_IfcDuctSilencer_type,IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type,IFC4X3_RC2_IfcFilter_type,IFC4X3_RC2_IfcInterceptor_type + }); + IFC4X3_RC2_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X3_RC2_IfcDuctSilencerType_type,IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type,IFC4X3_RC2_IfcFilterType_type,IFC4X3_RC2_IfcInterceptorType_type + }); + IFC4X3_RC2_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X3_RC2_IfcEarthworksCut_type,IFC4X3_RC2_IfcOpeningElement_type,IFC4X3_RC2_IfcVoidingFeature_type + }); + IFC4X3_RC2_IfcEarthworksElement_type->set_subtypes({ + IFC4X3_RC2_IfcEarthworksFill_type,IFC4X3_RC2_IfcReinforcedSoil_type + }); + IFC4X3_RC2_IfcEdge_type->set_subtypes({ + IFC4X3_RC2_IfcEdgeCurve_type,IFC4X3_RC2_IfcOrientedEdge_type,IFC4X3_RC2_IfcSubedge_type + }); + IFC4X3_RC2_IfcLoop_type->set_subtypes({ + IFC4X3_RC2_IfcEdgeLoop_type,IFC4X3_RC2_IfcPolyLoop_type,IFC4X3_RC2_IfcVertexLoop_type + }); + IFC4X3_RC2_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X3_RC2_IfcElectricFlowStorageDevice_type,IFC4X3_RC2_IfcTank_type + }); + IFC4X3_RC2_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type,IFC4X3_RC2_IfcTankType_type + }); + IFC4X3_RC2_IfcQuantitySet_type->set_subtypes({ + IFC4X3_RC2_IfcElementQuantity_type + }); + IFC4X3_RC2_IfcProcess_type->set_subtypes({ + IFC4X3_RC2_IfcEvent_type,IFC4X3_RC2_IfcProcedure_type,IFC4X3_RC2_IfcTask_type + }); + IFC4X3_RC2_IfcSchedulingTime_type->set_subtypes({ + IFC4X3_RC2_IfcEventTime_type,IFC4X3_RC2_IfcLagTime_type,IFC4X3_RC2_IfcResourceTime_type,IFC4X3_RC2_IfcTaskTime_type,IFC4X3_RC2_IfcWorkTime_type + }); + IFC4X3_RC2_IfcTypeProcess_type->set_subtypes({ + IFC4X3_RC2_IfcEventType_type,IFC4X3_RC2_IfcProcedureType_type,IFC4X3_RC2_IfcTaskType_type + }); + IFC4X3_RC2_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X3_RC2_IfcExtendedProperties_type,IFC4X3_RC2_IfcPreDefinedProperties_type,IFC4X3_RC2_IfcProperty_type,IFC4X3_RC2_IfcPropertyEnumeration_type + }); + IFC4X3_RC2_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC2_IfcExternalSpatialElement_type + }); + IFC4X3_RC2_IfcSpatialElement_type->set_subtypes({ + IFC4X3_RC2_IfcExternalSpatialStructureElement_type,IFC4X3_RC2_IfcSpatialStructureElement_type,IFC4X3_RC2_IfcSpatialZone_type + }); + IFC4X3_RC2_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type + }); + IFC4X3_RC2_IfcFaceBound_type->set_subtypes({ + IFC4X3_RC2_IfcFaceOuterBound_type + }); + IFC4X3_RC2_IfcFace_type->set_subtypes({ + IFC4X3_RC2_IfcFaceSurface_type + }); + IFC4X3_RC2_IfcFacetedBrep_type->set_subtypes({ + IFC4X3_RC2_IfcFacetedBrepWithVoids_type + }); + IFC4X3_RC2_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X3_RC2_IfcFailureConnectionCondition_type,IFC4X3_RC2_IfcSlippageConnectionCondition_type + }); + IFC4X3_RC2_IfcFeatureElement_type->set_subtypes({ + IFC4X3_RC2_IfcFeatureElementAddition_type,IFC4X3_RC2_IfcFeatureElementSubtraction_type,IFC4X3_RC2_IfcSurfaceFeature_type + }); + IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type,IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X3_RC2_IfcFurnishingElement_type->set_subtypes({ + IFC4X3_RC2_IfcFurniture_type,IFC4X3_RC2_IfcSystemFurnitureElement_type + }); + IFC4X3_RC2_IfcFurnishingElementType_type->set_subtypes({ + IFC4X3_RC2_IfcFurnitureType_type,IFC4X3_RC2_IfcSystemFurnitureElementType_type + }); + IFC4X3_RC2_IfcGeometricSet_type->set_subtypes({ + IFC4X3_RC2_IfcGeometricCurveSet_type + }); + IFC4X3_RC2_IfcRepresentationContext_type->set_subtypes({ + IFC4X3_RC2_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC2_IfcRepresentationItem_type->set_subtypes({ + IFC4X3_RC2_IfcGeometricRepresentationItem_type,IFC4X3_RC2_IfcMappedItem_type,IFC4X3_RC2_IfcStyledItem_type,IFC4X3_RC2_IfcTopologicalRepresentationItem_type + }); + IFC4X3_RC2_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X3_RC2_IfcGeometricRepresentationSubContext_type + }); + IFC4X3_RC2_IfcGeotechnicalElement_type->set_subtypes({ + IFC4X3_RC2_IfcGeotechnicalAssembly_type,IFC4X3_RC2_IfcGeotechnicalStratum_type + }); + IFC4X3_RC2_IfcPositioningElement_type->set_subtypes({ + IFC4X3_RC2_IfcGrid_type,IFC4X3_RC2_IfcLinearPositioningElement_type,IFC4X3_RC2_IfcReferent_type + }); + IFC4X3_RC2_IfcObjectPlacement_type->set_subtypes({ + IFC4X3_RC2_IfcGridPlacement_type,IFC4X3_RC2_IfcLinearPlacement_type,IFC4X3_RC2_IfcLocalPlacement_type + }); + IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type + }); + IFC4X3_RC2_IfcTessellatedItem_type->set_subtypes({ + IFC4X3_RC2_IfcIndexedPolygonalFace_type,IFC4X3_RC2_IfcTessellatedFaceSet_type + }); + IFC4X3_RC2_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X3_RC2_IfcTextureCoordinate_type->set_subtypes({ + IFC4X3_RC2_IfcIndexedTextureMap_type,IFC4X3_RC2_IfcTextureCoordinateGenerator_type,IFC4X3_RC2_IfcTextureMap_type + }); + IFC4X3_RC2_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X3_RC2_IfcIndexedTriangleTextureMap_type + }); + IFC4X3_RC2_IfcSurfaceCurve_type->set_subtypes({ + IFC4X3_RC2_IfcIntersectionCurve_type,IFC4X3_RC2_IfcSeamCurve_type + }); + IFC4X3_RC2_IfcTimeSeries_type->set_subtypes({ + IFC4X3_RC2_IfcIrregularTimeSeries_type,IFC4X3_RC2_IfcRegularTimeSeries_type + }); + IFC4X3_RC2_IfcLightSource_type->set_subtypes({ + IFC4X3_RC2_IfcLightSourceAmbient_type,IFC4X3_RC2_IfcLightSourceDirectional_type,IFC4X3_RC2_IfcLightSourceGoniometric_type,IFC4X3_RC2_IfcLightSourcePositional_type + }); + IFC4X3_RC2_IfcLightSourcePositional_type->set_subtypes({ + IFC4X3_RC2_IfcLightSourceSpot_type + }); + IFC4X3_RC2_IfcLinearPlacement_type->set_subtypes({ + IFC4X3_RC2_IfcLinearPlacementWithInclination_type,IFC4X3_RC2_IfcLinearSpanPlacement_type + }); + IFC4X3_RC2_IfcCoordinateOperation_type->set_subtypes({ + IFC4X3_RC2_IfcMapConversion_type + }); + IFC4X3_RC2_IfcMaterialDefinition_type->set_subtypes({ + IFC4X3_RC2_IfcMaterial_type,IFC4X3_RC2_IfcMaterialConstituent_type,IFC4X3_RC2_IfcMaterialConstituentSet_type,IFC4X3_RC2_IfcMaterialLayer_type,IFC4X3_RC2_IfcMaterialLayerSet_type,IFC4X3_RC2_IfcMaterialProfile_type,IFC4X3_RC2_IfcMaterialProfileSet_type + }); + IFC4X3_RC2_IfcProductRepresentation_type->set_subtypes({ + IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type,IFC4X3_RC2_IfcProductDefinitionShape_type + }); + IFC4X3_RC2_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X3_RC2_IfcMaterialLayerSetUsage_type,IFC4X3_RC2_IfcMaterialProfileSetUsage_type + }); + IFC4X3_RC2_IfcMaterialLayer_type->set_subtypes({ + IFC4X3_RC2_IfcMaterialLayerWithOffsets_type + }); + IFC4X3_RC2_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X3_RC2_IfcMaterialProfile_type->set_subtypes({ + IFC4X3_RC2_IfcMaterialProfileWithOffsets_type + }); + IFC4X3_RC2_IfcExtendedProperties_type->set_subtypes({ + IFC4X3_RC2_IfcMaterialProperties_type,IFC4X3_RC2_IfcProfileProperties_type + }); + IFC4X3_RC2_IfcMember_type->set_subtypes({ + IFC4X3_RC2_IfcMemberStandardCase_type + }); + IFC4X3_RC2_IfcConstraint_type->set_subtypes({ + IFC4X3_RC2_IfcMetric_type,IFC4X3_RC2_IfcObjective_type + }); + IFC4X3_RC2_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcMirroredProfileDef_type + }); + IFC4X3_RC2_IfcRoot_type->set_subtypes({ + IFC4X3_RC2_IfcObjectDefinition_type,IFC4X3_RC2_IfcPropertyDefinition_type,IFC4X3_RC2_IfcRelationship_type + }); + IFC4X3_RC2_IfcActor_type->set_subtypes({ + IFC4X3_RC2_IfcOccupant_type + }); + IFC4X3_RC2_IfcOffsetCurve_type->set_subtypes({ + IFC4X3_RC2_IfcOffsetCurve2D_type,IFC4X3_RC2_IfcOffsetCurve3D_type,IFC4X3_RC2_IfcOffsetCurveByDistances_type + }); + IFC4X3_RC2_IfcOpeningElement_type->set_subtypes({ + IFC4X3_RC2_IfcOpeningStandardCase_type + }); + IFC4X3_RC2_IfcBoundaryCurve_type->set_subtypes({ + IFC4X3_RC2_IfcOuterBoundaryCurve_type + }); + IFC4X3_RC2_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X3_RC2_IfcPhysicalComplexQuantity_type,IFC4X3_RC2_IfcPhysicalSimpleQuantity_type + }); + IFC4X3_RC2_IfcPlanarExtent_type->set_subtypes({ + IFC4X3_RC2_IfcPlanarBox_type + }); + IFC4X3_RC2_IfcGeographicElement_type->set_subtypes({ + IFC4X3_RC2_IfcPlant_type + }); + IFC4X3_RC2_IfcPlate_type->set_subtypes({ + IFC4X3_RC2_IfcPlateStandardCase_type + }); + IFC4X3_RC2_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X3_RC2_IfcPolygonalFaceSet_type,IFC4X3_RC2_IfcTriangulatedFaceSet_type + }); + IFC4X3_RC2_IfcAddress_type->set_subtypes({ + IFC4X3_RC2_IfcPostalAddress_type,IFC4X3_RC2_IfcTelecomAddress_type + }); + IFC4X3_RC2_IfcPreDefinedItem_type->set_subtypes({ + IFC4X3_RC2_IfcPreDefinedColour_type,IFC4X3_RC2_IfcPreDefinedCurveFont_type,IFC4X3_RC2_IfcPreDefinedTextFont_type + }); + IFC4X3_RC2_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X3_RC2_IfcPreDefinedPropertySet_type,IFC4X3_RC2_IfcPropertySet_type,IFC4X3_RC2_IfcQuantitySet_type + }); + IFC4X3_RC2_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X3_RC2_IfcPresentationLayerWithStyle_type + }); + IFC4X3_RC2_IfcContext_type->set_subtypes({ + IFC4X3_RC2_IfcProject_type,IFC4X3_RC2_IfcProjectLibrary_type + }); + IFC4X3_RC2_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X3_RC2_IfcProjectedCRS_type + }); + IFC4X3_RC2_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X3_RC2_IfcProjectionElement_type + }); + IFC4X3_RC2_IfcSimpleProperty_type->set_subtypes({ + IFC4X3_RC2_IfcPropertyBoundedValue_type,IFC4X3_RC2_IfcPropertyEnumeratedValue_type,IFC4X3_RC2_IfcPropertyListValue_type,IFC4X3_RC2_IfcPropertyReferenceValue_type,IFC4X3_RC2_IfcPropertySingleValue_type,IFC4X3_RC2_IfcPropertyTableValue_type + }); + IFC4X3_RC2_IfcPropertyDefinition_type->set_subtypes({ + IFC4X3_RC2_IfcPropertySetDefinition_type,IFC4X3_RC2_IfcPropertyTemplateDefinition_type + }); + IFC4X3_RC2_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X3_RC2_IfcPropertySetTemplate_type,IFC4X3_RC2_IfcPropertyTemplate_type + }); + IFC4X3_RC2_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X3_RC2_IfcQuantityArea_type,IFC4X3_RC2_IfcQuantityCount_type,IFC4X3_RC2_IfcQuantityLength_type,IFC4X3_RC2_IfcQuantityTime_type,IFC4X3_RC2_IfcQuantityVolume_type,IFC4X3_RC2_IfcQuantityWeight_type + }); + IFC4X3_RC2_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X3_RC2_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X3_RC2_IfcRectangleHollowProfileDef_type,IFC4X3_RC2_IfcRoundedRectangleProfileDef_type + }); + IFC4X3_RC2_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X3_RC2_IfcReinforcementBarProperties_type,IFC4X3_RC2_IfcSectionProperties_type,IFC4X3_RC2_IfcSectionReinforcementProperties_type + }); + IFC4X3_RC2_IfcReinforcingElement_type->set_subtypes({ + IFC4X3_RC2_IfcReinforcingBar_type,IFC4X3_RC2_IfcReinforcingMesh_type,IFC4X3_RC2_IfcTendon_type,IFC4X3_RC2_IfcTendonAnchor_type,IFC4X3_RC2_IfcTendonConduit_type + }); + IFC4X3_RC2_IfcReinforcingElementType_type->set_subtypes({ + IFC4X3_RC2_IfcReinforcingBarType_type,IFC4X3_RC2_IfcReinforcingMeshType_type,IFC4X3_RC2_IfcTendonAnchorType_type,IFC4X3_RC2_IfcTendonConduitType_type,IFC4X3_RC2_IfcTendonType_type + }); + IFC4X3_RC2_IfcRelDecomposes_type->set_subtypes({ + IFC4X3_RC2_IfcRelAggregates_type,IFC4X3_RC2_IfcRelNests_type,IFC4X3_RC2_IfcRelProjectsElement_type,IFC4X3_RC2_IfcRelVoidsElement_type + }); + IFC4X3_RC2_IfcRelationship_type->set_subtypes({ + IFC4X3_RC2_IfcRelAssigns_type,IFC4X3_RC2_IfcRelAssociates_type,IFC4X3_RC2_IfcRelConnects_type,IFC4X3_RC2_IfcRelDeclares_type,IFC4X3_RC2_IfcRelDecomposes_type,IFC4X3_RC2_IfcRelDefines_type + }); + IFC4X3_RC2_IfcRelAssigns_type->set_subtypes({ + IFC4X3_RC2_IfcRelAssignsToActor_type,IFC4X3_RC2_IfcRelAssignsToControl_type,IFC4X3_RC2_IfcRelAssignsToGroup_type,IFC4X3_RC2_IfcRelAssignsToProcess_type,IFC4X3_RC2_IfcRelAssignsToProduct_type,IFC4X3_RC2_IfcRelAssignsToResource_type + }); + IFC4X3_RC2_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type + }); + IFC4X3_RC2_IfcRelAssociates_type->set_subtypes({ + IFC4X3_RC2_IfcRelAssociatesApproval_type,IFC4X3_RC2_IfcRelAssociatesClassification_type,IFC4X3_RC2_IfcRelAssociatesConstraint_type,IFC4X3_RC2_IfcRelAssociatesDocument_type,IFC4X3_RC2_IfcRelAssociatesLibrary_type,IFC4X3_RC2_IfcRelAssociatesMaterial_type,IFC4X3_RC2_IfcRelAssociatesProfileDef_type + }); + IFC4X3_RC2_IfcRelConnects_type->set_subtypes({ + IFC4X3_RC2_IfcRelConnectsElements_type,IFC4X3_RC2_IfcRelConnectsPortToElement_type,IFC4X3_RC2_IfcRelConnectsPorts_type,IFC4X3_RC2_IfcRelConnectsStructuralActivity_type,IFC4X3_RC2_IfcRelConnectsStructuralMember_type,IFC4X3_RC2_IfcRelContainedInSpatialStructure_type,IFC4X3_RC2_IfcRelCoversBldgElements_type,IFC4X3_RC2_IfcRelCoversSpaces_type,IFC4X3_RC2_IfcRelFillsElement_type,IFC4X3_RC2_IfcRelFlowControlElements_type,IFC4X3_RC2_IfcRelInterferesElements_type,IFC4X3_RC2_IfcRelPositions_type,IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type,IFC4X3_RC2_IfcRelSequence_type,IFC4X3_RC2_IfcRelServicesBuildings_type,IFC4X3_RC2_IfcRelSpaceBoundary_type + }); + IFC4X3_RC2_IfcRelConnectsElements_type->set_subtypes({ + IFC4X3_RC2_IfcRelConnectsPathElements_type,IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type + }); + IFC4X3_RC2_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X3_RC2_IfcRelConnectsWithEccentricity_type + }); + IFC4X3_RC2_IfcRelDefines_type->set_subtypes({ + IFC4X3_RC2_IfcRelDefinesByObject_type,IFC4X3_RC2_IfcRelDefinesByProperties_type,IFC4X3_RC2_IfcRelDefinesByTemplate_type,IFC4X3_RC2_IfcRelDefinesByType_type + }); + IFC4X3_RC2_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X3_RC2_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X3_RC2_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type + }); + IFC4X3_RC2_IfcSectionedSolid_type->set_subtypes({ + IFC4X3_RC2_IfcSectionedSolidHorizontal_type + }); + IFC4X3_RC2_IfcRepresentation_type->set_subtypes({ + IFC4X3_RC2_IfcShapeModel_type,IFC4X3_RC2_IfcStyleModel_type + }); + IFC4X3_RC2_IfcShapeModel_type->set_subtypes({ + IFC4X3_RC2_IfcShapeRepresentation_type,IFC4X3_RC2_IfcTopologyRepresentation_type + }); + IFC4X3_RC2_IfcSlab_type->set_subtypes({ + IFC4X3_RC2_IfcSlabElementedCase_type,IFC4X3_RC2_IfcSlabStandardCase_type + }); + IFC4X3_RC2_IfcGeotechnicalStratum_type->set_subtypes({ + IFC4X3_RC2_IfcSolidStratum_type,IFC4X3_RC2_IfcVoidStratum_type,IFC4X3_RC2_IfcWaterStratum_type + }); + IFC4X3_RC2_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X3_RC2_IfcSpaceType_type + }); + IFC4X3_RC2_IfcSpatialElementType_type->set_subtypes({ + IFC4X3_RC2_IfcSpatialStructureElementType_type,IFC4X3_RC2_IfcSpatialZoneType_type + }); + IFC4X3_RC2_IfcStructuralActivity_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralAction_type,IFC4X3_RC2_IfcStructuralReaction_type + }); + IFC4X3_RC2_IfcStructuralItem_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralConnection_type,IFC4X3_RC2_IfcStructuralMember_type + }); + IFC4X3_RC2_IfcStructuralAction_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralCurveAction_type,IFC4X3_RC2_IfcStructuralPointAction_type,IFC4X3_RC2_IfcStructuralSurfaceAction_type + }); + IFC4X3_RC2_IfcStructuralConnection_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralCurveConnection_type,IFC4X3_RC2_IfcStructuralPointConnection_type,IFC4X3_RC2_IfcStructuralSurfaceConnection_type + }); + IFC4X3_RC2_IfcStructuralMember_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralCurveMember_type,IFC4X3_RC2_IfcStructuralSurfaceMember_type + }); + IFC4X3_RC2_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralCurveMemberVarying_type + }); + IFC4X3_RC2_IfcStructuralReaction_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralCurveReaction_type,IFC4X3_RC2_IfcStructuralPointReaction_type,IFC4X3_RC2_IfcStructuralSurfaceReaction_type + }); + IFC4X3_RC2_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLinearAction_type + }); + IFC4X3_RC2_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLoadCase_type + }); + IFC4X3_RC2_IfcStructuralLoad_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLoadConfiguration_type,IFC4X3_RC2_IfcStructuralLoadOrResult_type + }); + IFC4X3_RC2_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLoadLinearForce_type,IFC4X3_RC2_IfcStructuralLoadPlanarForce_type,IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type,IFC4X3_RC2_IfcStructuralLoadSingleForce_type,IFC4X3_RC2_IfcStructuralLoadTemperature_type + }); + IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X3_RC2_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X3_RC2_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralLoadStatic_type,IFC4X3_RC2_IfcSurfaceReinforcementArea_type + }); + IFC4X3_RC2_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralPlanarAction_type + }); + IFC4X3_RC2_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X3_RC2_IfcStyleModel_type->set_subtypes({ + IFC4X3_RC2_IfcStyledRepresentation_type + }); + IFC4X3_RC2_IfcSweptSurface_type->set_subtypes({ + IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type,IFC4X3_RC2_IfcSurfaceOfRevolution_type + }); + IFC4X3_RC2_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X3_RC2_IfcSurfaceStyleRendering_type + }); + IFC4X3_RC2_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type + }); + IFC4X3_RC2_IfcTaskTime_type->set_subtypes({ + IFC4X3_RC2_IfcTaskTimeRecurring_type + }); + IFC4X3_RC2_IfcTextLiteral_type->set_subtypes({ + IFC4X3_RC2_IfcTextLiteralWithExtent_type + }); + IFC4X3_RC2_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X3_RC2_IfcTextStyleFontModel_type + }); + IFC4X3_RC2_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type + }); + IFC4X3_RC2_IfcTypeObject_type->set_subtypes({ + IFC4X3_RC2_IfcTypeProcess_type,IFC4X3_RC2_IfcTypeProduct_type,IFC4X3_RC2_IfcTypeResource_type + }); + IFC4X3_RC2_IfcVertex_type->set_subtypes({ + IFC4X3_RC2_IfcVertexPoint_type + }); + IFC4X3_RC2_IfcWall_type->set_subtypes({ + IFC4X3_RC2_IfcWallElementedCase_type,IFC4X3_RC2_IfcWallStandardCase_type + }); + IFC4X3_RC2_IfcWindow_type->set_subtypes({ + IFC4X3_RC2_IfcWindowStandardCase_type + }); + IFC4X3_RC2_IfcWorkControl_type->set_subtypes({ + IFC4X3_RC2_IfcWorkPlan_type,IFC4X3_RC2_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1327); - declarations.push_back(IFC4X3_RC2_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcActionRequest_type); - declarations.push_back(IFC4X3_RC2_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcActionTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcActor_type); - declarations.push_back(IFC4X3_RC2_IfcActorRole_type); - declarations.push_back(IFC4X3_RC2_IfcActorSelect_type); - declarations.push_back(IFC4X3_RC2_IfcActuator_type); - declarations.push_back(IFC4X3_RC2_IfcActuatorType_type); - declarations.push_back(IFC4X3_RC2_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAddress_type); - declarations.push_back(IFC4X3_RC2_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAdvancedBrep_type); - declarations.push_back(IFC4X3_RC2_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC2_IfcAdvancedFace_type); - declarations.push_back(IFC4X3_RC2_IfcAirTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcAirTerminalBox_type); - declarations.push_back(IFC4X3_RC2_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAirTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAlarm_type); - declarations.push_back(IFC4X3_RC2_IfcAlarmType_type); - declarations.push_back(IFC4X3_RC2_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAlignment_type); - declarations.push_back(IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type); - declarations.push_back(IFC4X3_RC2_IfcAlignment2DVerSegLine_type); - declarations.push_back(IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentCant_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentCantSegment_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentCurve_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentHorizontal_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentHorizontalSegment_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentParameterSegment_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentSegment_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentVertical_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentVerticalSegment_type); - declarations.push_back(IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcAnnotation_type); - declarations.push_back(IFC4X3_RC2_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X3_RC2_IfcAnnotationTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcApplication_type); - declarations.push_back(IFC4X3_RC2_IfcAppliedValue_type); - declarations.push_back(IFC4X3_RC2_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X3_RC2_IfcApproval_type); - declarations.push_back(IFC4X3_RC2_IfcApprovalRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X3_RC2_IfcArcIndex_type); - declarations.push_back(IFC4X3_RC2_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcAreaMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAsset_type); - declarations.push_back(IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X3_RC2_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcAxis1Placement_type); - declarations.push_back(IFC4X3_RC2_IfcAxis2Placement_type); - declarations.push_back(IFC4X3_RC2_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X3_RC2_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X3_RC2_IfcAxis2PlacementLinear_type); - declarations.push_back(IFC4X3_RC2_IfcAxisLateralInclination_type); - declarations.push_back(IFC4X3_RC2_IfcBeam_type); - declarations.push_back(IFC4X3_RC2_IfcBeamStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcBeamType_type); - declarations.push_back(IFC4X3_RC2_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBearing_type); - declarations.push_back(IFC4X3_RC2_IfcBearingType_type); - declarations.push_back(IFC4X3_RC2_IfcBearingTypeDisplacementEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBearingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X3_RC2_IfcBinary_type); - declarations.push_back(IFC4X3_RC2_IfcBlobTexture_type); - declarations.push_back(IFC4X3_RC2_IfcBlock_type); - declarations.push_back(IFC4X3_RC2_IfcBlossCurve_type); - declarations.push_back(IFC4X3_RC2_IfcBoiler_type); - declarations.push_back(IFC4X3_RC2_IfcBoilerType_type); - declarations.push_back(IFC4X3_RC2_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBoolean_type); - declarations.push_back(IFC4X3_RC2_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X3_RC2_IfcBooleanOperand_type); - declarations.push_back(IFC4X3_RC2_IfcBooleanOperator_type); - declarations.push_back(IFC4X3_RC2_IfcBooleanResult_type); - declarations.push_back(IFC4X3_RC2_IfcBorehole_type); - declarations.push_back(IFC4X3_RC2_IfcBoundaryCondition_type); - declarations.push_back(IFC4X3_RC2_IfcBoundaryCurve_type); - declarations.push_back(IFC4X3_RC2_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X3_RC2_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X3_RC2_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X3_RC2_IfcBoundedCurve_type); - declarations.push_back(IFC4X3_RC2_IfcBoundedSurface_type); - declarations.push_back(IFC4X3_RC2_IfcBoundingBox_type); - declarations.push_back(IFC4X3_RC2_IfcBoxAlignment_type); - declarations.push_back(IFC4X3_RC2_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X3_RC2_IfcBridge_type); - declarations.push_back(IFC4X3_RC2_IfcBridgePart_type); - declarations.push_back(IFC4X3_RC2_IfcBridgePartTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBridgeTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBSplineCurve_type); - declarations.push_back(IFC4X3_RC2_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X3_RC2_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC2_IfcBSplineSurface_type); - declarations.push_back(IFC4X3_RC2_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC2_IfcBuilding_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingElementPart_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingStorey_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingSystem_type); - declarations.push_back(IFC4X3_RC2_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBuiltElement_type); - declarations.push_back(IFC4X3_RC2_IfcBuiltElementType_type); - declarations.push_back(IFC4X3_RC2_IfcBuiltSystem_type); - declarations.push_back(IFC4X3_RC2_IfcBuiltSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcBurner_type); - declarations.push_back(IFC4X3_RC2_IfcBurnerType_type); - declarations.push_back(IFC4X3_RC2_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X3_RC2_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X3_RC2_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCableFitting_type); - declarations.push_back(IFC4X3_RC2_IfcCableFittingType_type); - declarations.push_back(IFC4X3_RC2_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCableSegment_type); - declarations.push_back(IFC4X3_RC2_IfcCableSegmentType_type); - declarations.push_back(IFC4X3_RC2_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCaissonFoundation_type); - declarations.push_back(IFC4X3_RC2_IfcCaissonFoundationType_type); - declarations.push_back(IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCardinalPointReference_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianPoint_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianPointList_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X3_RC2_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcChangeActionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcChiller_type); - declarations.push_back(IFC4X3_RC2_IfcChillerType_type); - declarations.push_back(IFC4X3_RC2_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcChimney_type); - declarations.push_back(IFC4X3_RC2_IfcChimneyType_type); - declarations.push_back(IFC4X3_RC2_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCircle_type); - declarations.push_back(IFC4X3_RC2_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcCircleProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcCircularArcSegment2D_type); - declarations.push_back(IFC4X3_RC2_IfcCivilElement_type); - declarations.push_back(IFC4X3_RC2_IfcCivilElementType_type); - declarations.push_back(IFC4X3_RC2_IfcClassification_type); - declarations.push_back(IFC4X3_RC2_IfcClassificationReference_type); - declarations.push_back(IFC4X3_RC2_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcClassificationSelect_type); - declarations.push_back(IFC4X3_RC2_IfcClosedShell_type); - declarations.push_back(IFC4X3_RC2_IfcClothoid_type); - declarations.push_back(IFC4X3_RC2_IfcCoil_type); - declarations.push_back(IFC4X3_RC2_IfcCoilType_type); - declarations.push_back(IFC4X3_RC2_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcColour_type); - declarations.push_back(IFC4X3_RC2_IfcColourOrFactor_type); - declarations.push_back(IFC4X3_RC2_IfcColourRgb_type); - declarations.push_back(IFC4X3_RC2_IfcColourRgbList_type); - declarations.push_back(IFC4X3_RC2_IfcColourSpecification_type); - declarations.push_back(IFC4X3_RC2_IfcColumn_type); - declarations.push_back(IFC4X3_RC2_IfcColumnStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcColumnType_type); - declarations.push_back(IFC4X3_RC2_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC2_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcComplexNumber_type); - declarations.push_back(IFC4X3_RC2_IfcComplexProperty_type); - declarations.push_back(IFC4X3_RC2_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCompositeCurve_type); - declarations.push_back(IFC4X3_RC2_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X3_RC2_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC2_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcCompressor_type); - declarations.push_back(IFC4X3_RC2_IfcCompressorType_type); - declarations.push_back(IFC4X3_RC2_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCondenser_type); - declarations.push_back(IFC4X3_RC2_IfcCondenserType_type); - declarations.push_back(IFC4X3_RC2_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConic_type); - declarations.push_back(IFC4X3_RC2_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionGeometry_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X3_RC2_IfcConstraint_type); - declarations.push_back(IFC4X3_RC2_IfcConstraintEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionProductResource_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionResource_type); - declarations.push_back(IFC4X3_RC2_IfcConstructionResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcContext_type); - declarations.push_back(IFC4X3_RC2_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcContextDependentUnit_type); - declarations.push_back(IFC4X3_RC2_IfcControl_type); - declarations.push_back(IFC4X3_RC2_IfcController_type); - declarations.push_back(IFC4X3_RC2_IfcControllerType_type); - declarations.push_back(IFC4X3_RC2_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X3_RC2_IfcConveyorSegment_type); - declarations.push_back(IFC4X3_RC2_IfcConveyorSegmentType_type); - declarations.push_back(IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCooledBeam_type); - declarations.push_back(IFC4X3_RC2_IfcCooledBeamType_type); - declarations.push_back(IFC4X3_RC2_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCoolingTower_type); - declarations.push_back(IFC4X3_RC2_IfcCoolingTowerType_type); - declarations.push_back(IFC4X3_RC2_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCoordinateOperation_type); - declarations.push_back(IFC4X3_RC2_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X3_RC2_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X3_RC2_IfcCostItem_type); - declarations.push_back(IFC4X3_RC2_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCostSchedule_type); - declarations.push_back(IFC4X3_RC2_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCostValue_type); - declarations.push_back(IFC4X3_RC2_IfcCountMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcCourse_type); - declarations.push_back(IFC4X3_RC2_IfcCourseType_type); - declarations.push_back(IFC4X3_RC2_IfcCourseTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCovering_type); - declarations.push_back(IFC4X3_RC2_IfcCoveringType_type); - declarations.push_back(IFC4X3_RC2_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCrewResource_type); - declarations.push_back(IFC4X3_RC2_IfcCrewResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X3_RC2_IfcCsgSelect_type); - declarations.push_back(IFC4X3_RC2_IfcCsgSolid_type); - declarations.push_back(IFC4X3_RC2_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcCurtainWall_type); - declarations.push_back(IFC4X3_RC2_IfcCurtainWallType_type); - declarations.push_back(IFC4X3_RC2_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcCurve_type); - declarations.push_back(IFC4X3_RC2_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X3_RC2_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X3_RC2_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X3_RC2_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcCurveMeasureSelect_type); - declarations.push_back(IFC4X3_RC2_IfcCurveOnSurface_type); - declarations.push_back(IFC4X3_RC2_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X3_RC2_IfcCurveSegment_type); - declarations.push_back(IFC4X3_RC2_IfcCurveSegment2D_type); - declarations.push_back(IFC4X3_RC2_IfcCurveStyle_type); - declarations.push_back(IFC4X3_RC2_IfcCurveStyleFont_type); - declarations.push_back(IFC4X3_RC2_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X3_RC2_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X3_RC2_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X3_RC2_IfcCylindricalSurface_type); - declarations.push_back(IFC4X3_RC2_IfcDamper_type); - declarations.push_back(IFC4X3_RC2_IfcDamperType_type); - declarations.push_back(IFC4X3_RC2_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDataOriginEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDate_type); - declarations.push_back(IFC4X3_RC2_IfcDateTime_type); - declarations.push_back(IFC4X3_RC2_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X3_RC2_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X3_RC2_IfcDeepFoundation_type); - declarations.push_back(IFC4X3_RC2_IfcDeepFoundationType_type); - declarations.push_back(IFC4X3_RC2_IfcDefinitionSelect_type); - declarations.push_back(IFC4X3_RC2_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X3_RC2_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcDerivedUnit_type); - declarations.push_back(IFC4X3_RC2_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X3_RC2_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcDimensionalExponents_type); - declarations.push_back(IFC4X3_RC2_IfcDimensionCount_type); - declarations.push_back(IFC4X3_RC2_IfcDirection_type); - declarations.push_back(IFC4X3_RC2_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X3_RC2_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionBoard_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionBoardType_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionCircuit_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionControlElement_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionElement_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionElementType_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionPort_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionSystem_type); - declarations.push_back(IFC4X3_RC2_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDocumentInformation_type); - declarations.push_back(IFC4X3_RC2_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcDocumentReference_type); - declarations.push_back(IFC4X3_RC2_IfcDocumentSelect_type); - declarations.push_back(IFC4X3_RC2_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoor_type); - declarations.push_back(IFC4X3_RC2_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X3_RC2_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X3_RC2_IfcDoorStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcDoorStyle_type); - declarations.push_back(IFC4X3_RC2_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoorType_type); - declarations.push_back(IFC4X3_RC2_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC2_IfcDuctFitting_type); - declarations.push_back(IFC4X3_RC2_IfcDuctFittingType_type); - declarations.push_back(IFC4X3_RC2_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDuctSegment_type); - declarations.push_back(IFC4X3_RC2_IfcDuctSegmentType_type); - declarations.push_back(IFC4X3_RC2_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDuctSilencer_type); - declarations.push_back(IFC4X3_RC2_IfcDuctSilencerType_type); - declarations.push_back(IFC4X3_RC2_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcDuration_type); - declarations.push_back(IFC4X3_RC2_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcEarthworksCut_type); - declarations.push_back(IFC4X3_RC2_IfcEarthworksCutTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcEarthworksElement_type); - declarations.push_back(IFC4X3_RC2_IfcEarthworksFill_type); - declarations.push_back(IFC4X3_RC2_IfcEarthworksFillTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcEdge_type); - declarations.push_back(IFC4X3_RC2_IfcEdgeCurve_type); - declarations.push_back(IFC4X3_RC2_IfcEdgeLoop_type); - declarations.push_back(IFC4X3_RC2_IfcElectricAppliance_type); - declarations.push_back(IFC4X3_RC2_IfcElectricApplianceType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X3_RC2_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricGenerator_type); - declarations.push_back(IFC4X3_RC2_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricMotor_type); - declarations.push_back(IFC4X3_RC2_IfcElectricMotorType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcElectricTimeControl_type); - declarations.push_back(IFC4X3_RC2_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcElement_type); - declarations.push_back(IFC4X3_RC2_IfcElementarySurface_type); - declarations.push_back(IFC4X3_RC2_IfcElementAssembly_type); - declarations.push_back(IFC4X3_RC2_IfcElementAssemblyType_type); - declarations.push_back(IFC4X3_RC2_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElementComponent_type); - declarations.push_back(IFC4X3_RC2_IfcElementComponentType_type); - declarations.push_back(IFC4X3_RC2_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcElementQuantity_type); - declarations.push_back(IFC4X3_RC2_IfcElementType_type); - declarations.push_back(IFC4X3_RC2_IfcEllipse_type); - declarations.push_back(IFC4X3_RC2_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X3_RC2_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcEnergyMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcEngine_type); - declarations.push_back(IFC4X3_RC2_IfcEngineType_type); - declarations.push_back(IFC4X3_RC2_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X3_RC2_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcEvaporator_type); - declarations.push_back(IFC4X3_RC2_IfcEvaporatorType_type); - declarations.push_back(IFC4X3_RC2_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcEvent_type); - declarations.push_back(IFC4X3_RC2_IfcEventTime_type); - declarations.push_back(IFC4X3_RC2_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcEventType_type); - declarations.push_back(IFC4X3_RC2_IfcEventTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcExtendedProperties_type); - declarations.push_back(IFC4X3_RC2_IfcExternalInformation_type); - declarations.push_back(IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X3_RC2_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X3_RC2_IfcExternalReference_type); - declarations.push_back(IFC4X3_RC2_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC2_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC2_IfcFace_type); - declarations.push_back(IFC4X3_RC2_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC2_IfcFaceBound_type); - declarations.push_back(IFC4X3_RC2_IfcFaceOuterBound_type); - declarations.push_back(IFC4X3_RC2_IfcFaceSurface_type); - declarations.push_back(IFC4X3_RC2_IfcFacetedBrep_type); - declarations.push_back(IFC4X3_RC2_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC2_IfcFacility_type); - declarations.push_back(IFC4X3_RC2_IfcFacilityPart_type); - declarations.push_back(IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFacilityPartTypeSelect_type); - declarations.push_back(IFC4X3_RC2_IfcFacilityUsageEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X3_RC2_IfcFan_type); - declarations.push_back(IFC4X3_RC2_IfcFanType_type); - declarations.push_back(IFC4X3_RC2_IfcFanTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFastener_type); - declarations.push_back(IFC4X3_RC2_IfcFastenerType_type); - declarations.push_back(IFC4X3_RC2_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFeatureElement_type); - declarations.push_back(IFC4X3_RC2_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X3_RC2_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X3_RC2_IfcFillAreaStyle_type); - declarations.push_back(IFC4X3_RC2_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X3_RC2_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X3_RC2_IfcFillStyleSelect_type); - declarations.push_back(IFC4X3_RC2_IfcFilter_type); - declarations.push_back(IFC4X3_RC2_IfcFilterType_type); - declarations.push_back(IFC4X3_RC2_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcFlowController_type); - declarations.push_back(IFC4X3_RC2_IfcFlowControllerType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFlowFitting_type); - declarations.push_back(IFC4X3_RC2_IfcFlowFittingType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowInstrument_type); - declarations.push_back(IFC4X3_RC2_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFlowMeter_type); - declarations.push_back(IFC4X3_RC2_IfcFlowMeterType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X3_RC2_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowSegment_type); - declarations.push_back(IFC4X3_RC2_IfcFlowSegmentType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC2_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcFlowTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC2_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcFontStyle_type); - declarations.push_back(IFC4X3_RC2_IfcFontVariant_type); - declarations.push_back(IFC4X3_RC2_IfcFontWeight_type); - declarations.push_back(IFC4X3_RC2_IfcFooting_type); - declarations.push_back(IFC4X3_RC2_IfcFootingType_type); - declarations.push_back(IFC4X3_RC2_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcForceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcFurnishingElement_type); - declarations.push_back(IFC4X3_RC2_IfcFurnishingElementType_type); - declarations.push_back(IFC4X3_RC2_IfcFurniture_type); - declarations.push_back(IFC4X3_RC2_IfcFurnitureType_type); - declarations.push_back(IFC4X3_RC2_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcGeographicElement_type); - declarations.push_back(IFC4X3_RC2_IfcGeographicElementType_type); - declarations.push_back(IFC4X3_RC2_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricSet_type); - declarations.push_back(IFC4X3_RC2_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X3_RC2_IfcGeomodel_type); - declarations.push_back(IFC4X3_RC2_IfcGeoslice_type); - declarations.push_back(IFC4X3_RC2_IfcGeotechnicalAssembly_type); - declarations.push_back(IFC4X3_RC2_IfcGeotechnicalElement_type); - declarations.push_back(IFC4X3_RC2_IfcGeotechnicalStratum_type); - declarations.push_back(IFC4X3_RC2_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X3_RC2_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X3_RC2_IfcGradientCurve_type); - declarations.push_back(IFC4X3_RC2_IfcGrid_type); - declarations.push_back(IFC4X3_RC2_IfcGridAxis_type); - declarations.push_back(IFC4X3_RC2_IfcGridPlacement_type); - declarations.push_back(IFC4X3_RC2_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X3_RC2_IfcGridTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcGroup_type); - declarations.push_back(IFC4X3_RC2_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X3_RC2_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcHeatExchanger_type); - declarations.push_back(IFC4X3_RC2_IfcHeatExchangerType_type); - declarations.push_back(IFC4X3_RC2_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcHumidifier_type); - declarations.push_back(IFC4X3_RC2_IfcHumidifierType_type); - declarations.push_back(IFC4X3_RC2_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcIdentifier_type); - declarations.push_back(IFC4X3_RC2_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcImageTexture_type); - declarations.push_back(IFC4X3_RC2_IfcImpactProtectionDevice_type); - declarations.push_back(IFC4X3_RC2_IfcImpactProtectionDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type); - declarations.push_back(IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcIndexedColourMap_type); - declarations.push_back(IFC4X3_RC2_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X3_RC2_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X3_RC2_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X3_RC2_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X3_RC2_IfcInductanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcInteger_type); - declarations.push_back(IFC4X3_RC2_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcInterceptor_type); - declarations.push_back(IFC4X3_RC2_IfcInterceptorType_type); - declarations.push_back(IFC4X3_RC2_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcInterferenceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X3_RC2_IfcIntersectionCurve_type); - declarations.push_back(IFC4X3_RC2_IfcInventory_type); - declarations.push_back(IFC4X3_RC2_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X3_RC2_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC2_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcJunctionBox_type); - declarations.push_back(IFC4X3_RC2_IfcJunctionBoxType_type); - declarations.push_back(IFC4X3_RC2_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcKerb_type); - declarations.push_back(IFC4X3_RC2_IfcKerbType_type); - declarations.push_back(IFC4X3_RC2_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcKnotType_type); - declarations.push_back(IFC4X3_RC2_IfcLabel_type); - declarations.push_back(IFC4X3_RC2_IfcLaborResource_type); - declarations.push_back(IFC4X3_RC2_IfcLaborResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLagTime_type); - declarations.push_back(IFC4X3_RC2_IfcLamp_type); - declarations.push_back(IFC4X3_RC2_IfcLampType_type); - declarations.push_back(IFC4X3_RC2_IfcLampTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLanguageId_type); - declarations.push_back(IFC4X3_RC2_IfcLayeredItem_type); - declarations.push_back(IFC4X3_RC2_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLengthMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLibraryInformation_type); - declarations.push_back(IFC4X3_RC2_IfcLibraryReference_type); - declarations.push_back(IFC4X3_RC2_IfcLibrarySelect_type); - declarations.push_back(IFC4X3_RC2_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLightDistributionData_type); - declarations.push_back(IFC4X3_RC2_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLightFixture_type); - declarations.push_back(IFC4X3_RC2_IfcLightFixtureType_type); - declarations.push_back(IFC4X3_RC2_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X3_RC2_IfcLightSource_type); - declarations.push_back(IFC4X3_RC2_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X3_RC2_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X3_RC2_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X3_RC2_IfcLightSourcePositional_type); - declarations.push_back(IFC4X3_RC2_IfcLightSourceSpot_type); - declarations.push_back(IFC4X3_RC2_IfcLine_type); - declarations.push_back(IFC4X3_RC2_IfcLinearAxisSelect_type); - declarations.push_back(IFC4X3_RC2_IfcLinearAxisWithInclination_type); - declarations.push_back(IFC4X3_RC2_IfcLinearElement_type); - declarations.push_back(IFC4X3_RC2_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLinearPlacement_type); - declarations.push_back(IFC4X3_RC2_IfcLinearPlacementWithInclination_type); - declarations.push_back(IFC4X3_RC2_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X3_RC2_IfcLinearSpanPlacement_type); - declarations.push_back(IFC4X3_RC2_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLineIndex_type); - declarations.push_back(IFC4X3_RC2_IfcLineSegment2D_type); - declarations.push_back(IFC4X3_RC2_IfcLiquidTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcLiquidTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLocalPlacement_type); - declarations.push_back(IFC4X3_RC2_IfcLogical_type); - declarations.push_back(IFC4X3_RC2_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X3_RC2_IfcLoop_type); - declarations.push_back(IFC4X3_RC2_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X3_RC2_IfcMapConversion_type); - declarations.push_back(IFC4X3_RC2_IfcMappedItem_type); - declarations.push_back(IFC4X3_RC2_IfcMarineFacility_type); - declarations.push_back(IFC4X3_RC2_IfcMarineFacilityTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcMarinePartTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMassMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMaterial_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialConstituent_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialDefinition_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialLayer_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialList_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialProfile_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialProperties_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialSelect_type); - declarations.push_back(IFC4X3_RC2_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X3_RC2_IfcMeasureValue_type); - declarations.push_back(IFC4X3_RC2_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X3_RC2_IfcMechanicalFastener_type); - declarations.push_back(IFC4X3_RC2_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcMedicalDevice_type); - declarations.push_back(IFC4X3_RC2_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcMember_type); - declarations.push_back(IFC4X3_RC2_IfcMemberStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcMemberType_type); - declarations.push_back(IFC4X3_RC2_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcMetric_type); - declarations.push_back(IFC4X3_RC2_IfcMetricValueSelect_type); - declarations.push_back(IFC4X3_RC2_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC2_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcMonetaryUnit_type); - declarations.push_back(IFC4X3_RC2_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X3_RC2_IfcMooringDevice_type); - declarations.push_back(IFC4X3_RC2_IfcMooringDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcMooringDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcMotorConnection_type); - declarations.push_back(IFC4X3_RC2_IfcMotorConnectionType_type); - declarations.push_back(IFC4X3_RC2_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcNamedUnit_type); - declarations.push_back(IFC4X3_RC2_IfcNavigationElement_type); - declarations.push_back(IFC4X3_RC2_IfcNavigationElementType_type); - declarations.push_back(IFC4X3_RC2_IfcNavigationElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcNullStyle_type); - declarations.push_back(IFC4X3_RC2_IfcNumericMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcObject_type); - declarations.push_back(IFC4X3_RC2_IfcObjectDefinition_type); - declarations.push_back(IFC4X3_RC2_IfcObjective_type); - declarations.push_back(IFC4X3_RC2_IfcObjectiveEnum_type); - declarations.push_back(IFC4X3_RC2_IfcObjectPlacement_type); - declarations.push_back(IFC4X3_RC2_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcObjectTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcOccupant_type); - declarations.push_back(IFC4X3_RC2_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcOffsetCurve_type); - declarations.push_back(IFC4X3_RC2_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X3_RC2_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X3_RC2_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X3_RC2_IfcOpenCrossProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcOpeningElement_type); - declarations.push_back(IFC4X3_RC2_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcOpeningStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcOpenShell_type); - declarations.push_back(IFC4X3_RC2_IfcOrganization_type); - declarations.push_back(IFC4X3_RC2_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcOrientedEdge_type); - declarations.push_back(IFC4X3_RC2_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X3_RC2_IfcOutlet_type); - declarations.push_back(IFC4X3_RC2_IfcOutletType_type); - declarations.push_back(IFC4X3_RC2_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcOwnerHistory_type); - declarations.push_back(IFC4X3_RC2_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcParameterValue_type); - declarations.push_back(IFC4X3_RC2_IfcPath_type); - declarations.push_back(IFC4X3_RC2_IfcPavement_type); - declarations.push_back(IFC4X3_RC2_IfcPavementType_type); - declarations.push_back(IFC4X3_RC2_IfcPcurve_type); - declarations.push_back(IFC4X3_RC2_IfcPerformanceHistory_type); - declarations.push_back(IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X3_RC2_IfcPermit_type); - declarations.push_back(IFC4X3_RC2_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPerson_type); - declarations.push_back(IFC4X3_RC2_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X3_RC2_IfcPHMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X3_RC2_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X3_RC2_IfcPile_type); - declarations.push_back(IFC4X3_RC2_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPileType_type); - declarations.push_back(IFC4X3_RC2_IfcPileTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPipeFitting_type); - declarations.push_back(IFC4X3_RC2_IfcPipeFittingType_type); - declarations.push_back(IFC4X3_RC2_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPipeSegment_type); - declarations.push_back(IFC4X3_RC2_IfcPipeSegmentType_type); - declarations.push_back(IFC4X3_RC2_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPixelTexture_type); - declarations.push_back(IFC4X3_RC2_IfcPlacement_type); - declarations.push_back(IFC4X3_RC2_IfcPlanarBox_type); - declarations.push_back(IFC4X3_RC2_IfcPlanarExtent_type); - declarations.push_back(IFC4X3_RC2_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPlane_type); - declarations.push_back(IFC4X3_RC2_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPlant_type); - declarations.push_back(IFC4X3_RC2_IfcPlate_type); - declarations.push_back(IFC4X3_RC2_IfcPlateStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcPlateType_type); - declarations.push_back(IFC4X3_RC2_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPoint_type); - declarations.push_back(IFC4X3_RC2_IfcPointByDistanceExpression_type); - declarations.push_back(IFC4X3_RC2_IfcPointOnCurve_type); - declarations.push_back(IFC4X3_RC2_IfcPointOnSurface_type); - declarations.push_back(IFC4X3_RC2_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X3_RC2_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X3_RC2_IfcPolyline_type); - declarations.push_back(IFC4X3_RC2_IfcPolyLoop_type); - declarations.push_back(IFC4X3_RC2_IfcPort_type); - declarations.push_back(IFC4X3_RC2_IfcPositioningElement_type); - declarations.push_back(IFC4X3_RC2_IfcPositiveInteger_type); - declarations.push_back(IFC4X3_RC2_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPostalAddress_type); - declarations.push_back(IFC4X3_RC2_IfcPowerMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcPreDefinedColour_type); - declarations.push_back(IFC4X3_RC2_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC2_IfcPreDefinedItem_type); - declarations.push_back(IFC4X3_RC2_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X3_RC2_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X3_RC2_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcPresentableText_type); - declarations.push_back(IFC4X3_RC2_IfcPresentationItem_type); - declarations.push_back(IFC4X3_RC2_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X3_RC2_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X3_RC2_IfcPresentationStyle_type); - declarations.push_back(IFC4X3_RC2_IfcPresentationStyleAssignment_type); - declarations.push_back(IFC4X3_RC2_IfcPresentationStyleSelect_type); - declarations.push_back(IFC4X3_RC2_IfcPressureMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcProcedure_type); - declarations.push_back(IFC4X3_RC2_IfcProcedureType_type); - declarations.push_back(IFC4X3_RC2_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProcess_type); - declarations.push_back(IFC4X3_RC2_IfcProcessSelect_type); - declarations.push_back(IFC4X3_RC2_IfcProduct_type); - declarations.push_back(IFC4X3_RC2_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X3_RC2_IfcProductRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X3_RC2_IfcProductSelect_type); - declarations.push_back(IFC4X3_RC2_IfcProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcProfileProperties_type); - declarations.push_back(IFC4X3_RC2_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProject_type); - declarations.push_back(IFC4X3_RC2_IfcProjectedCRS_type); - declarations.push_back(IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProjectionElement_type); - declarations.push_back(IFC4X3_RC2_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProjectLibrary_type); - declarations.push_back(IFC4X3_RC2_IfcProjectOrder_type); - declarations.push_back(IFC4X3_RC2_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProperty_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyDefinition_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyListValue_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySet_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcPropertySingleValue_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyTableValue_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyTemplate_type); - declarations.push_back(IFC4X3_RC2_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X3_RC2_IfcProtectiveDevice_type); - declarations.push_back(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcProxy_type); - declarations.push_back(IFC4X3_RC2_IfcPump_type); - declarations.push_back(IFC4X3_RC2_IfcPumpType_type); - declarations.push_back(IFC4X3_RC2_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcQuantityArea_type); - declarations.push_back(IFC4X3_RC2_IfcQuantityCount_type); - declarations.push_back(IFC4X3_RC2_IfcQuantityLength_type); - declarations.push_back(IFC4X3_RC2_IfcQuantitySet_type); - declarations.push_back(IFC4X3_RC2_IfcQuantityTime_type); - declarations.push_back(IFC4X3_RC2_IfcQuantityVolume_type); - declarations.push_back(IFC4X3_RC2_IfcQuantityWeight_type); - declarations.push_back(IFC4X3_RC2_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcRail_type); - declarations.push_back(IFC4X3_RC2_IfcRailing_type); - declarations.push_back(IFC4X3_RC2_IfcRailingType_type); - declarations.push_back(IFC4X3_RC2_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRailType_type); - declarations.push_back(IFC4X3_RC2_IfcRailTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRailway_type); - declarations.push_back(IFC4X3_RC2_IfcRailwayPartTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRamp_type); - declarations.push_back(IFC4X3_RC2_IfcRampFlight_type); - declarations.push_back(IFC4X3_RC2_IfcRampFlightType_type); - declarations.push_back(IFC4X3_RC2_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRampType_type); - declarations.push_back(IFC4X3_RC2_IfcRampTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRatioMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC2_IfcReal_type); - declarations.push_back(IFC4X3_RC2_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcRectangularPyramid_type); - declarations.push_back(IFC4X3_RC2_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X3_RC2_IfcRecurrencePattern_type); - declarations.push_back(IFC4X3_RC2_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcReference_type); - declarations.push_back(IFC4X3_RC2_IfcReferent_type); - declarations.push_back(IFC4X3_RC2_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcedSoil_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingBar_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingBarType_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingElement_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingElementType_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingMesh_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRelAggregates_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssigns_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociates_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X3_RC2_IfcRelAssociatesProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnects_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsElements_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X3_RC2_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC2_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X3_RC2_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X3_RC2_IfcRelDeclares_type); - declarations.push_back(IFC4X3_RC2_IfcRelDecomposes_type); - declarations.push_back(IFC4X3_RC2_IfcRelDefines_type); - declarations.push_back(IFC4X3_RC2_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X3_RC2_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X3_RC2_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X3_RC2_IfcRelDefinesByType_type); - declarations.push_back(IFC4X3_RC2_IfcRelFillsElement_type); - declarations.push_back(IFC4X3_RC2_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X3_RC2_IfcRelInterferesElements_type); - declarations.push_back(IFC4X3_RC2_IfcRelNests_type); - declarations.push_back(IFC4X3_RC2_IfcRelPositions_type); - declarations.push_back(IFC4X3_RC2_IfcRelProjectsElement_type); - declarations.push_back(IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC2_IfcRelSequence_type); - declarations.push_back(IFC4X3_RC2_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X3_RC2_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X3_RC2_IfcRelVoidsElement_type); - declarations.push_back(IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC2_IfcRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcRepresentationContext_type); - declarations.push_back(IFC4X3_RC2_IfcRepresentationItem_type); - declarations.push_back(IFC4X3_RC2_IfcRepresentationMap_type); - declarations.push_back(IFC4X3_RC2_IfcResource_type); - declarations.push_back(IFC4X3_RC2_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X3_RC2_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X3_RC2_IfcResourceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcResourceTime_type); - declarations.push_back(IFC4X3_RC2_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC2_IfcRightCircularCone_type); - declarations.push_back(IFC4X3_RC2_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X3_RC2_IfcRoad_type); - declarations.push_back(IFC4X3_RC2_IfcRoadPartTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRoleEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRoof_type); - declarations.push_back(IFC4X3_RC2_IfcRoofType_type); - declarations.push_back(IFC4X3_RC2_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcRoot_type); - declarations.push_back(IFC4X3_RC2_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC2_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSchedulingTime_type); - declarations.push_back(IFC4X3_RC2_IfcSeamCurve_type); - declarations.push_back(IFC4X3_RC2_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSectionedSolid_type); - declarations.push_back(IFC4X3_RC2_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X3_RC2_IfcSectionedSpine_type); - declarations.push_back(IFC4X3_RC2_IfcSectionedSurface_type); - declarations.push_back(IFC4X3_RC2_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSectionProperties_type); - declarations.push_back(IFC4X3_RC2_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X3_RC2_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSegment_type); - declarations.push_back(IFC4X3_RC2_IfcSegmentedReferenceCurve_type); - declarations.push_back(IFC4X3_RC2_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X3_RC2_IfcSensor_type); - declarations.push_back(IFC4X3_RC2_IfcSensorType_type); - declarations.push_back(IFC4X3_RC2_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSequenceEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSeriesParameterCurve_type); - declarations.push_back(IFC4X3_RC2_IfcShadingDevice_type); - declarations.push_back(IFC4X3_RC2_IfcShadingDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcShapeAspect_type); - declarations.push_back(IFC4X3_RC2_IfcShapeModel_type); - declarations.push_back(IFC4X3_RC2_IfcShapeRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcShell_type); - declarations.push_back(IFC4X3_RC2_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC2_IfcSign_type); - declarations.push_back(IFC4X3_RC2_IfcSignal_type); - declarations.push_back(IFC4X3_RC2_IfcSignalType_type); - declarations.push_back(IFC4X3_RC2_IfcSignalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSignType_type); - declarations.push_back(IFC4X3_RC2_IfcSignTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSimpleProperty_type); - declarations.push_back(IFC4X3_RC2_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSimpleValue_type); - declarations.push_back(IFC4X3_RC2_IfcSIPrefix_type); - declarations.push_back(IFC4X3_RC2_IfcSite_type); - declarations.push_back(IFC4X3_RC2_IfcSIUnit_type); - declarations.push_back(IFC4X3_RC2_IfcSIUnitName_type); - declarations.push_back(IFC4X3_RC2_IfcSizeSelect_type); - declarations.push_back(IFC4X3_RC2_IfcSlab_type); - declarations.push_back(IFC4X3_RC2_IfcSlabElementedCase_type); - declarations.push_back(IFC4X3_RC2_IfcSlabStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcSlabType_type); - declarations.push_back(IFC4X3_RC2_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X3_RC2_IfcSolarDevice_type); - declarations.push_back(IFC4X3_RC2_IfcSolarDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSolidModel_type); - declarations.push_back(IFC4X3_RC2_IfcSolidOrShell_type); - declarations.push_back(IFC4X3_RC2_IfcSolidStratum_type); - declarations.push_back(IFC4X3_RC2_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSpace_type); - declarations.push_back(IFC4X3_RC2_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X3_RC2_IfcSpaceHeater_type); - declarations.push_back(IFC4X3_RC2_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSpaceType_type); - declarations.push_back(IFC4X3_RC2_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialElement_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialElementType_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialReferenceSelect_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialZone_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialZoneType_type); - declarations.push_back(IFC4X3_RC2_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcSpecularExponent_type); - declarations.push_back(IFC4X3_RC2_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X3_RC2_IfcSpecularRoughness_type); - declarations.push_back(IFC4X3_RC2_IfcSphere_type); - declarations.push_back(IFC4X3_RC2_IfcSphericalSurface_type); - declarations.push_back(IFC4X3_RC2_IfcStackTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcStackTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStair_type); - declarations.push_back(IFC4X3_RC2_IfcStairFlight_type); - declarations.push_back(IFC4X3_RC2_IfcStairFlightType_type); - declarations.push_back(IFC4X3_RC2_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStairType_type); - declarations.push_back(IFC4X3_RC2_IfcStairTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStateEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralAction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralActivity_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralConnection_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralItem_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoad_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralMember_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralPointAction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralReaction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X3_RC2_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X3_RC2_IfcStyleAssignmentSelect_type); - declarations.push_back(IFC4X3_RC2_IfcStyledItem_type); - declarations.push_back(IFC4X3_RC2_IfcStyledRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcStyleModel_type); - declarations.push_back(IFC4X3_RC2_IfcSubContractResource_type); - declarations.push_back(IFC4X3_RC2_IfcSubContractResourceType_type); - declarations.push_back(IFC4X3_RC2_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSubedge_type); - declarations.push_back(IFC4X3_RC2_IfcSurface_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceCurve_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceFeature_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceSide_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyle_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X3_RC2_IfcSurfaceTexture_type); - declarations.push_back(IFC4X3_RC2_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC2_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X3_RC2_IfcSweptSurface_type); - declarations.push_back(IFC4X3_RC2_IfcSwitchingDevice_type); - declarations.push_back(IFC4X3_RC2_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcSystem_type); - declarations.push_back(IFC4X3_RC2_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X3_RC2_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTable_type); - declarations.push_back(IFC4X3_RC2_IfcTableColumn_type); - declarations.push_back(IFC4X3_RC2_IfcTableRow_type); - declarations.push_back(IFC4X3_RC2_IfcTank_type); - declarations.push_back(IFC4X3_RC2_IfcTankType_type); - declarations.push_back(IFC4X3_RC2_IfcTankTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTask_type); - declarations.push_back(IFC4X3_RC2_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTaskTime_type); - declarations.push_back(IFC4X3_RC2_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X3_RC2_IfcTaskType_type); - declarations.push_back(IFC4X3_RC2_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTelecomAddress_type); - declarations.push_back(IFC4X3_RC2_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcTendon_type); - declarations.push_back(IFC4X3_RC2_IfcTendonAnchor_type); - declarations.push_back(IFC4X3_RC2_IfcTendonAnchorType_type); - declarations.push_back(IFC4X3_RC2_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTendonConduit_type); - declarations.push_back(IFC4X3_RC2_IfcTendonConduitType_type); - declarations.push_back(IFC4X3_RC2_IfcTendonConduitTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTendonType_type); - declarations.push_back(IFC4X3_RC2_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X3_RC2_IfcTessellatedItem_type); - declarations.push_back(IFC4X3_RC2_IfcText_type); - declarations.push_back(IFC4X3_RC2_IfcTextAlignment_type); - declarations.push_back(IFC4X3_RC2_IfcTextDecoration_type); - declarations.push_back(IFC4X3_RC2_IfcTextFontName_type); - declarations.push_back(IFC4X3_RC2_IfcTextFontSelect_type); - declarations.push_back(IFC4X3_RC2_IfcTextLiteral_type); - declarations.push_back(IFC4X3_RC2_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X3_RC2_IfcTextPath_type); - declarations.push_back(IFC4X3_RC2_IfcTextStyle_type); - declarations.push_back(IFC4X3_RC2_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X3_RC2_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X3_RC2_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X3_RC2_IfcTextTransformation_type); - declarations.push_back(IFC4X3_RC2_IfcTextureCoordinate_type); - declarations.push_back(IFC4X3_RC2_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X3_RC2_IfcTextureMap_type); - declarations.push_back(IFC4X3_RC2_IfcTextureVertex_type); - declarations.push_back(IFC4X3_RC2_IfcTextureVertexList_type); - declarations.push_back(IFC4X3_RC2_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcTime_type); - declarations.push_back(IFC4X3_RC2_IfcTimeMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X3_RC2_IfcTimePeriod_type); - declarations.push_back(IFC4X3_RC2_IfcTimeSeries_type); - declarations.push_back(IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC2_IfcTimeStamp_type); - declarations.push_back(IFC4X3_RC2_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X3_RC2_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X3_RC2_IfcToroidalSurface_type); - declarations.push_back(IFC4X3_RC2_IfcTorqueMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcTrackElement_type); - declarations.push_back(IFC4X3_RC2_IfcTrackElementType_type); - declarations.push_back(IFC4X3_RC2_IfcTrackElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTransformer_type); - declarations.push_back(IFC4X3_RC2_IfcTransformerType_type); - declarations.push_back(IFC4X3_RC2_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTransitionCode_type); - declarations.push_back(IFC4X3_RC2_IfcTransitionCurveSegment2D_type); - declarations.push_back(IFC4X3_RC2_IfcTransitionCurveType_type); - declarations.push_back(IFC4X3_RC2_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC2_IfcTransportElement_type); - declarations.push_back(IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTransportElementType_type); - declarations.push_back(IFC4X3_RC2_IfcTransportElementTypeSelect_type); - declarations.push_back(IFC4X3_RC2_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X3_RC2_IfcTrimmedCurve_type); - declarations.push_back(IFC4X3_RC2_IfcTrimmingPreference_type); - declarations.push_back(IFC4X3_RC2_IfcTrimmingSelect_type); - declarations.push_back(IFC4X3_RC2_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcTubeBundle_type); - declarations.push_back(IFC4X3_RC2_IfcTubeBundleType_type); - declarations.push_back(IFC4X3_RC2_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcTypeObject_type); - declarations.push_back(IFC4X3_RC2_IfcTypeProcess_type); - declarations.push_back(IFC4X3_RC2_IfcTypeProduct_type); - declarations.push_back(IFC4X3_RC2_IfcTypeResource_type); - declarations.push_back(IFC4X3_RC2_IfcUnit_type); - declarations.push_back(IFC4X3_RC2_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X3_RC2_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X3_RC2_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcUnitAssignment_type); - declarations.push_back(IFC4X3_RC2_IfcUnitEnum_type); - declarations.push_back(IFC4X3_RC2_IfcURIReference_type); - declarations.push_back(IFC4X3_RC2_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X3_RC2_IfcValue_type); - declarations.push_back(IFC4X3_RC2_IfcValve_type); - declarations.push_back(IFC4X3_RC2_IfcValveType_type); - declarations.push_back(IFC4X3_RC2_IfcValveTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcVector_type); - declarations.push_back(IFC4X3_RC2_IfcVectorOrDirection_type); - declarations.push_back(IFC4X3_RC2_IfcVertex_type); - declarations.push_back(IFC4X3_RC2_IfcVertexLoop_type); - declarations.push_back(IFC4X3_RC2_IfcVertexPoint_type); - declarations.push_back(IFC4X3_RC2_IfcVibrationDamper_type); - declarations.push_back(IFC4X3_RC2_IfcVibrationDamperType_type); - declarations.push_back(IFC4X3_RC2_IfcVibrationDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcVibrationIsolator_type); - declarations.push_back(IFC4X3_RC2_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcVirtualElement_type); - declarations.push_back(IFC4X3_RC2_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X3_RC2_IfcVoidingFeature_type); - declarations.push_back(IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcVoidStratum_type); - declarations.push_back(IFC4X3_RC2_IfcVolumeMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcWall_type); - declarations.push_back(IFC4X3_RC2_IfcWallElementedCase_type); - declarations.push_back(IFC4X3_RC2_IfcWallStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcWallType_type); - declarations.push_back(IFC4X3_RC2_IfcWallTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X3_RC2_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X3_RC2_IfcWasteTerminal_type); - declarations.push_back(IFC4X3_RC2_IfcWasteTerminalType_type); - declarations.push_back(IFC4X3_RC2_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWaterStratum_type); - declarations.push_back(IFC4X3_RC2_IfcWindow_type); - declarations.push_back(IFC4X3_RC2_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X3_RC2_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X3_RC2_IfcWindowStandardCase_type); - declarations.push_back(IFC4X3_RC2_IfcWindowStyle_type); - declarations.push_back(IFC4X3_RC2_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWindowType_type); - declarations.push_back(IFC4X3_RC2_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWorkCalendar_type); - declarations.push_back(IFC4X3_RC2_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWorkControl_type); - declarations.push_back(IFC4X3_RC2_IfcWorkPlan_type); - declarations.push_back(IFC4X3_RC2_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWorkSchedule_type); - declarations.push_back(IFC4X3_RC2_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC2_IfcWorkTime_type); - declarations.push_back(IFC4X3_RC2_IfcZone_type); - declarations.push_back(IFC4X3_RC2_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X3_RC2", declarations, new IFC4X3_RC2_instance_factory()); + std::vector declarations= { + IFC4X3_RC2_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC2_IfcAccelerationMeasure_type, + IFC4X3_RC2_IfcActionRequest_type, + IFC4X3_RC2_IfcActionRequestTypeEnum_type, + IFC4X3_RC2_IfcActionSourceTypeEnum_type, + IFC4X3_RC2_IfcActionTypeEnum_type, + IFC4X3_RC2_IfcActor_type, + IFC4X3_RC2_IfcActorRole_type, + IFC4X3_RC2_IfcActorSelect_type, + IFC4X3_RC2_IfcActuator_type, + IFC4X3_RC2_IfcActuatorType_type, + IFC4X3_RC2_IfcActuatorTypeEnum_type, + IFC4X3_RC2_IfcAddress_type, + IFC4X3_RC2_IfcAddressTypeEnum_type, + IFC4X3_RC2_IfcAdvancedBrep_type, + IFC4X3_RC2_IfcAdvancedBrepWithVoids_type, + IFC4X3_RC2_IfcAdvancedFace_type, + IFC4X3_RC2_IfcAirTerminal_type, + IFC4X3_RC2_IfcAirTerminalBox_type, + IFC4X3_RC2_IfcAirTerminalBoxType_type, + IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type, + IFC4X3_RC2_IfcAirTerminalType_type, + IFC4X3_RC2_IfcAirTerminalTypeEnum_type, + IFC4X3_RC2_IfcAirToAirHeatRecovery_type, + IFC4X3_RC2_IfcAirToAirHeatRecoveryType_type, + IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X3_RC2_IfcAlarm_type, + IFC4X3_RC2_IfcAlarmType_type, + IFC4X3_RC2_IfcAlarmTypeEnum_type, + IFC4X3_RC2_IfcAlignment_type, + IFC4X3_RC2_IfcAlignment2DVerSegCircularArc_type, + IFC4X3_RC2_IfcAlignment2DVerSegLine_type, + IFC4X3_RC2_IfcAlignment2DVerSegParabolicArc_type, + IFC4X3_RC2_IfcAlignmentCant_type, + IFC4X3_RC2_IfcAlignmentCantSegment_type, + IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type, + IFC4X3_RC2_IfcAlignmentCurve_type, + IFC4X3_RC2_IfcAlignmentHorizontal_type, + IFC4X3_RC2_IfcAlignmentHorizontalSegment_type, + IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type, + IFC4X3_RC2_IfcAlignmentParameterSegment_type, + IFC4X3_RC2_IfcAlignmentSegment_type, + IFC4X3_RC2_IfcAlignmentTypeEnum_type, + IFC4X3_RC2_IfcAlignmentVertical_type, + IFC4X3_RC2_IfcAlignmentVerticalSegment_type, + IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type, + IFC4X3_RC2_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC2_IfcAnalysisModelTypeEnum_type, + IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type, + IFC4X3_RC2_IfcAngularVelocityMeasure_type, + IFC4X3_RC2_IfcAnnotation_type, + IFC4X3_RC2_IfcAnnotationFillArea_type, + IFC4X3_RC2_IfcAnnotationTypeEnum_type, + IFC4X3_RC2_IfcApplication_type, + IFC4X3_RC2_IfcAppliedValue_type, + IFC4X3_RC2_IfcAppliedValueSelect_type, + IFC4X3_RC2_IfcApproval_type, + IFC4X3_RC2_IfcApprovalRelationship_type, + IFC4X3_RC2_IfcArbitraryClosedProfileDef_type, + IFC4X3_RC2_IfcArbitraryOpenProfileDef_type, + IFC4X3_RC2_IfcArbitraryProfileDefWithVoids_type, + IFC4X3_RC2_IfcArcIndex_type, + IFC4X3_RC2_IfcAreaDensityMeasure_type, + IFC4X3_RC2_IfcAreaMeasure_type, + IFC4X3_RC2_IfcArithmeticOperatorEnum_type, + IFC4X3_RC2_IfcAssemblyPlaceEnum_type, + IFC4X3_RC2_IfcAsset_type, + IFC4X3_RC2_IfcAsymmetricIShapeProfileDef_type, + IFC4X3_RC2_IfcAudioVisualAppliance_type, + IFC4X3_RC2_IfcAudioVisualApplianceType_type, + IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type, + IFC4X3_RC2_IfcAxis1Placement_type, + IFC4X3_RC2_IfcAxis2Placement_type, + IFC4X3_RC2_IfcAxis2Placement2D_type, + IFC4X3_RC2_IfcAxis2Placement3D_type, + IFC4X3_RC2_IfcAxis2PlacementLinear_type, + IFC4X3_RC2_IfcAxisLateralInclination_type, + IFC4X3_RC2_IfcBeam_type, + IFC4X3_RC2_IfcBeamStandardCase_type, + IFC4X3_RC2_IfcBeamType_type, + IFC4X3_RC2_IfcBeamTypeEnum_type, + IFC4X3_RC2_IfcBearing_type, + IFC4X3_RC2_IfcBearingType_type, + IFC4X3_RC2_IfcBearingTypeDisplacementEnum_type, + IFC4X3_RC2_IfcBearingTypeEnum_type, + IFC4X3_RC2_IfcBenchmarkEnum_type, + IFC4X3_RC2_IfcBendingParameterSelect_type, + IFC4X3_RC2_IfcBinary_type, + IFC4X3_RC2_IfcBlobTexture_type, + IFC4X3_RC2_IfcBlock_type, + IFC4X3_RC2_IfcBlossCurve_type, + IFC4X3_RC2_IfcBoiler_type, + IFC4X3_RC2_IfcBoilerType_type, + IFC4X3_RC2_IfcBoilerTypeEnum_type, + IFC4X3_RC2_IfcBoolean_type, + IFC4X3_RC2_IfcBooleanClippingResult_type, + IFC4X3_RC2_IfcBooleanOperand_type, + IFC4X3_RC2_IfcBooleanOperator_type, + IFC4X3_RC2_IfcBooleanResult_type, + IFC4X3_RC2_IfcBorehole_type, + IFC4X3_RC2_IfcBoundaryCondition_type, + IFC4X3_RC2_IfcBoundaryCurve_type, + IFC4X3_RC2_IfcBoundaryEdgeCondition_type, + IFC4X3_RC2_IfcBoundaryFaceCondition_type, + IFC4X3_RC2_IfcBoundaryNodeCondition_type, + IFC4X3_RC2_IfcBoundaryNodeConditionWarping_type, + IFC4X3_RC2_IfcBoundedCurve_type, + IFC4X3_RC2_IfcBoundedSurface_type, + IFC4X3_RC2_IfcBoundingBox_type, + IFC4X3_RC2_IfcBoxAlignment_type, + IFC4X3_RC2_IfcBoxedHalfSpace_type, + IFC4X3_RC2_IfcBridge_type, + IFC4X3_RC2_IfcBridgePart_type, + IFC4X3_RC2_IfcBridgePartTypeEnum_type, + IFC4X3_RC2_IfcBridgeTypeEnum_type, + IFC4X3_RC2_IfcBSplineCurve_type, + IFC4X3_RC2_IfcBSplineCurveForm_type, + IFC4X3_RC2_IfcBSplineCurveWithKnots_type, + IFC4X3_RC2_IfcBSplineSurface_type, + IFC4X3_RC2_IfcBSplineSurfaceForm_type, + IFC4X3_RC2_IfcBSplineSurfaceWithKnots_type, + IFC4X3_RC2_IfcBuilding_type, + IFC4X3_RC2_IfcBuildingElementPart_type, + IFC4X3_RC2_IfcBuildingElementPartType_type, + IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type, + IFC4X3_RC2_IfcBuildingElementProxy_type, + IFC4X3_RC2_IfcBuildingElementProxyType_type, + IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type, + IFC4X3_RC2_IfcBuildingStorey_type, + IFC4X3_RC2_IfcBuildingSystem_type, + IFC4X3_RC2_IfcBuildingSystemTypeEnum_type, + IFC4X3_RC2_IfcBuiltElement_type, + IFC4X3_RC2_IfcBuiltElementType_type, + IFC4X3_RC2_IfcBuiltSystem_type, + IFC4X3_RC2_IfcBuiltSystemTypeEnum_type, + IFC4X3_RC2_IfcBurner_type, + IFC4X3_RC2_IfcBurnerType_type, + IFC4X3_RC2_IfcBurnerTypeEnum_type, + IFC4X3_RC2_IfcCableCarrierFitting_type, + IFC4X3_RC2_IfcCableCarrierFittingType_type, + IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type, + IFC4X3_RC2_IfcCableCarrierSegment_type, + IFC4X3_RC2_IfcCableCarrierSegmentType_type, + IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type, + IFC4X3_RC2_IfcCableFitting_type, + IFC4X3_RC2_IfcCableFittingType_type, + IFC4X3_RC2_IfcCableFittingTypeEnum_type, + IFC4X3_RC2_IfcCableSegment_type, + IFC4X3_RC2_IfcCableSegmentType_type, + IFC4X3_RC2_IfcCableSegmentTypeEnum_type, + IFC4X3_RC2_IfcCaissonFoundation_type, + IFC4X3_RC2_IfcCaissonFoundationType_type, + IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type, + IFC4X3_RC2_IfcCardinalPointReference_type, + IFC4X3_RC2_IfcCartesianPoint_type, + IFC4X3_RC2_IfcCartesianPointList_type, + IFC4X3_RC2_IfcCartesianPointList2D_type, + IFC4X3_RC2_IfcCartesianPointList3D_type, + IFC4X3_RC2_IfcCartesianTransformationOperator_type, + IFC4X3_RC2_IfcCartesianTransformationOperator2D_type, + IFC4X3_RC2_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X3_RC2_IfcCartesianTransformationOperator3D_type, + IFC4X3_RC2_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X3_RC2_IfcCenterLineProfileDef_type, + IFC4X3_RC2_IfcChangeActionEnum_type, + IFC4X3_RC2_IfcChiller_type, + IFC4X3_RC2_IfcChillerType_type, + IFC4X3_RC2_IfcChillerTypeEnum_type, + IFC4X3_RC2_IfcChimney_type, + IFC4X3_RC2_IfcChimneyType_type, + IFC4X3_RC2_IfcChimneyTypeEnum_type, + IFC4X3_RC2_IfcCircle_type, + IFC4X3_RC2_IfcCircleHollowProfileDef_type, + IFC4X3_RC2_IfcCircleProfileDef_type, + IFC4X3_RC2_IfcCircularArcSegment2D_type, + IFC4X3_RC2_IfcCivilElement_type, + IFC4X3_RC2_IfcCivilElementType_type, + IFC4X3_RC2_IfcClassification_type, + IFC4X3_RC2_IfcClassificationReference_type, + IFC4X3_RC2_IfcClassificationReferenceSelect_type, + IFC4X3_RC2_IfcClassificationSelect_type, + IFC4X3_RC2_IfcClosedShell_type, + IFC4X3_RC2_IfcClothoid_type, + IFC4X3_RC2_IfcCoil_type, + IFC4X3_RC2_IfcCoilType_type, + IFC4X3_RC2_IfcCoilTypeEnum_type, + IFC4X3_RC2_IfcColour_type, + IFC4X3_RC2_IfcColourOrFactor_type, + IFC4X3_RC2_IfcColourRgb_type, + IFC4X3_RC2_IfcColourRgbList_type, + IFC4X3_RC2_IfcColourSpecification_type, + IFC4X3_RC2_IfcColumn_type, + IFC4X3_RC2_IfcColumnStandardCase_type, + IFC4X3_RC2_IfcColumnType_type, + IFC4X3_RC2_IfcColumnTypeEnum_type, + IFC4X3_RC2_IfcCommunicationsAppliance_type, + IFC4X3_RC2_IfcCommunicationsApplianceType_type, + IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type, + IFC4X3_RC2_IfcComplexNumber_type, + IFC4X3_RC2_IfcComplexProperty_type, + IFC4X3_RC2_IfcComplexPropertyTemplate_type, + IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X3_RC2_IfcCompositeCurve_type, + IFC4X3_RC2_IfcCompositeCurveOnSurface_type, + IFC4X3_RC2_IfcCompositeCurveSegment_type, + IFC4X3_RC2_IfcCompositeProfileDef_type, + IFC4X3_RC2_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC2_IfcCompressor_type, + IFC4X3_RC2_IfcCompressorType_type, + IFC4X3_RC2_IfcCompressorTypeEnum_type, + IFC4X3_RC2_IfcCondenser_type, + IFC4X3_RC2_IfcCondenserType_type, + IFC4X3_RC2_IfcCondenserTypeEnum_type, + IFC4X3_RC2_IfcConic_type, + IFC4X3_RC2_IfcConnectedFaceSet_type, + IFC4X3_RC2_IfcConnectionCurveGeometry_type, + IFC4X3_RC2_IfcConnectionGeometry_type, + IFC4X3_RC2_IfcConnectionPointEccentricity_type, + IFC4X3_RC2_IfcConnectionPointGeometry_type, + IFC4X3_RC2_IfcConnectionSurfaceGeometry_type, + IFC4X3_RC2_IfcConnectionTypeEnum_type, + IFC4X3_RC2_IfcConnectionVolumeGeometry_type, + IFC4X3_RC2_IfcConstraint_type, + IFC4X3_RC2_IfcConstraintEnum_type, + IFC4X3_RC2_IfcConstructionEquipmentResource_type, + IFC4X3_RC2_IfcConstructionEquipmentResourceType_type, + IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X3_RC2_IfcConstructionMaterialResource_type, + IFC4X3_RC2_IfcConstructionMaterialResourceType_type, + IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X3_RC2_IfcConstructionProductResource_type, + IFC4X3_RC2_IfcConstructionProductResourceType_type, + IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type, + IFC4X3_RC2_IfcConstructionResource_type, + IFC4X3_RC2_IfcConstructionResourceType_type, + IFC4X3_RC2_IfcContext_type, + IFC4X3_RC2_IfcContextDependentMeasure_type, + IFC4X3_RC2_IfcContextDependentUnit_type, + IFC4X3_RC2_IfcControl_type, + IFC4X3_RC2_IfcController_type, + IFC4X3_RC2_IfcControllerType_type, + IFC4X3_RC2_IfcControllerTypeEnum_type, + IFC4X3_RC2_IfcConversionBasedUnit_type, + IFC4X3_RC2_IfcConversionBasedUnitWithOffset_type, + IFC4X3_RC2_IfcConveyorSegment_type, + IFC4X3_RC2_IfcConveyorSegmentType_type, + IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type, + IFC4X3_RC2_IfcCooledBeam_type, + IFC4X3_RC2_IfcCooledBeamType_type, + IFC4X3_RC2_IfcCooledBeamTypeEnum_type, + IFC4X3_RC2_IfcCoolingTower_type, + IFC4X3_RC2_IfcCoolingTowerType_type, + IFC4X3_RC2_IfcCoolingTowerTypeEnum_type, + IFC4X3_RC2_IfcCoordinateOperation_type, + IFC4X3_RC2_IfcCoordinateReferenceSystem_type, + IFC4X3_RC2_IfcCoordinateReferenceSystemSelect_type, + IFC4X3_RC2_IfcCostItem_type, + IFC4X3_RC2_IfcCostItemTypeEnum_type, + IFC4X3_RC2_IfcCostSchedule_type, + IFC4X3_RC2_IfcCostScheduleTypeEnum_type, + IFC4X3_RC2_IfcCostValue_type, + IFC4X3_RC2_IfcCountMeasure_type, + IFC4X3_RC2_IfcCourse_type, + IFC4X3_RC2_IfcCourseType_type, + IFC4X3_RC2_IfcCourseTypeEnum_type, + IFC4X3_RC2_IfcCovering_type, + IFC4X3_RC2_IfcCoveringType_type, + IFC4X3_RC2_IfcCoveringTypeEnum_type, + IFC4X3_RC2_IfcCrewResource_type, + IFC4X3_RC2_IfcCrewResourceType_type, + IFC4X3_RC2_IfcCrewResourceTypeEnum_type, + IFC4X3_RC2_IfcCsgPrimitive3D_type, + IFC4X3_RC2_IfcCsgSelect_type, + IFC4X3_RC2_IfcCsgSolid_type, + IFC4X3_RC2_IfcCShapeProfileDef_type, + IFC4X3_RC2_IfcCurrencyRelationship_type, + IFC4X3_RC2_IfcCurtainWall_type, + IFC4X3_RC2_IfcCurtainWallType_type, + IFC4X3_RC2_IfcCurtainWallTypeEnum_type, + IFC4X3_RC2_IfcCurvatureMeasure_type, + IFC4X3_RC2_IfcCurve_type, + IFC4X3_RC2_IfcCurveBoundedPlane_type, + IFC4X3_RC2_IfcCurveBoundedSurface_type, + IFC4X3_RC2_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X3_RC2_IfcCurveInterpolationEnum_type, + IFC4X3_RC2_IfcCurveMeasureSelect_type, + IFC4X3_RC2_IfcCurveOnSurface_type, + IFC4X3_RC2_IfcCurveOrEdgeCurve_type, + IFC4X3_RC2_IfcCurveSegment_type, + IFC4X3_RC2_IfcCurveSegment2D_type, + IFC4X3_RC2_IfcCurveStyle_type, + IFC4X3_RC2_IfcCurveStyleFont_type, + IFC4X3_RC2_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC2_IfcCurveStyleFontPattern_type, + IFC4X3_RC2_IfcCurveStyleFontSelect_type, + IFC4X3_RC2_IfcCylindricalSurface_type, + IFC4X3_RC2_IfcDamper_type, + IFC4X3_RC2_IfcDamperType_type, + IFC4X3_RC2_IfcDamperTypeEnum_type, + IFC4X3_RC2_IfcDataOriginEnum_type, + IFC4X3_RC2_IfcDate_type, + IFC4X3_RC2_IfcDateTime_type, + IFC4X3_RC2_IfcDayInMonthNumber_type, + IFC4X3_RC2_IfcDayInWeekNumber_type, + IFC4X3_RC2_IfcDeepFoundation_type, + IFC4X3_RC2_IfcDeepFoundationType_type, + IFC4X3_RC2_IfcDefinitionSelect_type, + IFC4X3_RC2_IfcDerivedMeasureValue_type, + IFC4X3_RC2_IfcDerivedProfileDef_type, + IFC4X3_RC2_IfcDerivedUnit_type, + IFC4X3_RC2_IfcDerivedUnitElement_type, + IFC4X3_RC2_IfcDerivedUnitEnum_type, + IFC4X3_RC2_IfcDescriptiveMeasure_type, + IFC4X3_RC2_IfcDimensionalExponents_type, + IFC4X3_RC2_IfcDimensionCount_type, + IFC4X3_RC2_IfcDirection_type, + IFC4X3_RC2_IfcDirectionSenseEnum_type, + IFC4X3_RC2_IfcDirectrixCurveSweptAreaSolid_type, + IFC4X3_RC2_IfcDirectrixDistanceSweptAreaSolid_type, + IFC4X3_RC2_IfcDiscreteAccessory_type, + IFC4X3_RC2_IfcDiscreteAccessoryType_type, + IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type, + IFC4X3_RC2_IfcDistributionBoard_type, + IFC4X3_RC2_IfcDistributionBoardType_type, + IFC4X3_RC2_IfcDistributionBoardTypeEnum_type, + IFC4X3_RC2_IfcDistributionChamberElement_type, + IFC4X3_RC2_IfcDistributionChamberElementType_type, + IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type, + IFC4X3_RC2_IfcDistributionCircuit_type, + IFC4X3_RC2_IfcDistributionControlElement_type, + IFC4X3_RC2_IfcDistributionControlElementType_type, + IFC4X3_RC2_IfcDistributionElement_type, + IFC4X3_RC2_IfcDistributionElementType_type, + IFC4X3_RC2_IfcDistributionFlowElement_type, + IFC4X3_RC2_IfcDistributionFlowElementType_type, + IFC4X3_RC2_IfcDistributionPort_type, + IFC4X3_RC2_IfcDistributionPortTypeEnum_type, + IFC4X3_RC2_IfcDistributionSystem_type, + IFC4X3_RC2_IfcDistributionSystemEnum_type, + IFC4X3_RC2_IfcDocumentConfidentialityEnum_type, + IFC4X3_RC2_IfcDocumentInformation_type, + IFC4X3_RC2_IfcDocumentInformationRelationship_type, + IFC4X3_RC2_IfcDocumentReference_type, + IFC4X3_RC2_IfcDocumentSelect_type, + IFC4X3_RC2_IfcDocumentStatusEnum_type, + IFC4X3_RC2_IfcDoor_type, + IFC4X3_RC2_IfcDoorLiningProperties_type, + IFC4X3_RC2_IfcDoorPanelOperationEnum_type, + IFC4X3_RC2_IfcDoorPanelPositionEnum_type, + IFC4X3_RC2_IfcDoorPanelProperties_type, + IFC4X3_RC2_IfcDoorStandardCase_type, + IFC4X3_RC2_IfcDoorStyle_type, + IFC4X3_RC2_IfcDoorStyleConstructionEnum_type, + IFC4X3_RC2_IfcDoorStyleOperationEnum_type, + IFC4X3_RC2_IfcDoorType_type, + IFC4X3_RC2_IfcDoorTypeEnum_type, + IFC4X3_RC2_IfcDoorTypeOperationEnum_type, + IFC4X3_RC2_IfcDoseEquivalentMeasure_type, + IFC4X3_RC2_IfcDraughtingPreDefinedColour_type, + IFC4X3_RC2_IfcDraughtingPreDefinedCurveFont_type, + IFC4X3_RC2_IfcDuctFitting_type, + IFC4X3_RC2_IfcDuctFittingType_type, + IFC4X3_RC2_IfcDuctFittingTypeEnum_type, + IFC4X3_RC2_IfcDuctSegment_type, + IFC4X3_RC2_IfcDuctSegmentType_type, + IFC4X3_RC2_IfcDuctSegmentTypeEnum_type, + IFC4X3_RC2_IfcDuctSilencer_type, + IFC4X3_RC2_IfcDuctSilencerType_type, + IFC4X3_RC2_IfcDuctSilencerTypeEnum_type, + IFC4X3_RC2_IfcDuration_type, + IFC4X3_RC2_IfcDynamicViscosityMeasure_type, + IFC4X3_RC2_IfcEarthworksCut_type, + IFC4X3_RC2_IfcEarthworksCutTypeEnum_type, + IFC4X3_RC2_IfcEarthworksElement_type, + IFC4X3_RC2_IfcEarthworksFill_type, + IFC4X3_RC2_IfcEarthworksFillTypeEnum_type, + IFC4X3_RC2_IfcEdge_type, + IFC4X3_RC2_IfcEdgeCurve_type, + IFC4X3_RC2_IfcEdgeLoop_type, + IFC4X3_RC2_IfcElectricAppliance_type, + IFC4X3_RC2_IfcElectricApplianceType_type, + IFC4X3_RC2_IfcElectricApplianceTypeEnum_type, + IFC4X3_RC2_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC2_IfcElectricChargeMeasure_type, + IFC4X3_RC2_IfcElectricConductanceMeasure_type, + IFC4X3_RC2_IfcElectricCurrentMeasure_type, + IFC4X3_RC2_IfcElectricDistributionBoard_type, + IFC4X3_RC2_IfcElectricDistributionBoardType_type, + IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type, + IFC4X3_RC2_IfcElectricFlowStorageDevice_type, + IFC4X3_RC2_IfcElectricFlowStorageDeviceType_type, + IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X3_RC2_IfcElectricFlowTreatmentDevice_type, + IFC4X3_RC2_IfcElectricFlowTreatmentDeviceType_type, + IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type, + IFC4X3_RC2_IfcElectricGenerator_type, + IFC4X3_RC2_IfcElectricGeneratorType_type, + IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type, + IFC4X3_RC2_IfcElectricMotor_type, + IFC4X3_RC2_IfcElectricMotorType_type, + IFC4X3_RC2_IfcElectricMotorTypeEnum_type, + IFC4X3_RC2_IfcElectricResistanceMeasure_type, + IFC4X3_RC2_IfcElectricTimeControl_type, + IFC4X3_RC2_IfcElectricTimeControlType_type, + IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type, + IFC4X3_RC2_IfcElectricVoltageMeasure_type, + IFC4X3_RC2_IfcElement_type, + IFC4X3_RC2_IfcElementarySurface_type, + IFC4X3_RC2_IfcElementAssembly_type, + IFC4X3_RC2_IfcElementAssemblyType_type, + IFC4X3_RC2_IfcElementAssemblyTypeEnum_type, + IFC4X3_RC2_IfcElementComponent_type, + IFC4X3_RC2_IfcElementComponentType_type, + IFC4X3_RC2_IfcElementCompositionEnum_type, + IFC4X3_RC2_IfcElementQuantity_type, + IFC4X3_RC2_IfcElementType_type, + IFC4X3_RC2_IfcEllipse_type, + IFC4X3_RC2_IfcEllipseProfileDef_type, + IFC4X3_RC2_IfcEnergyConversionDevice_type, + IFC4X3_RC2_IfcEnergyConversionDeviceType_type, + IFC4X3_RC2_IfcEnergyMeasure_type, + IFC4X3_RC2_IfcEngine_type, + IFC4X3_RC2_IfcEngineType_type, + IFC4X3_RC2_IfcEngineTypeEnum_type, + IFC4X3_RC2_IfcEvaporativeCooler_type, + IFC4X3_RC2_IfcEvaporativeCoolerType_type, + IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type, + IFC4X3_RC2_IfcEvaporator_type, + IFC4X3_RC2_IfcEvaporatorType_type, + IFC4X3_RC2_IfcEvaporatorTypeEnum_type, + IFC4X3_RC2_IfcEvent_type, + IFC4X3_RC2_IfcEventTime_type, + IFC4X3_RC2_IfcEventTriggerTypeEnum_type, + IFC4X3_RC2_IfcEventType_type, + IFC4X3_RC2_IfcEventTypeEnum_type, + IFC4X3_RC2_IfcExtendedProperties_type, + IFC4X3_RC2_IfcExternalInformation_type, + IFC4X3_RC2_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC2_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC2_IfcExternallyDefinedTextFont_type, + IFC4X3_RC2_IfcExternalReference_type, + IFC4X3_RC2_IfcExternalReferenceRelationship_type, + IFC4X3_RC2_IfcExternalSpatialElement_type, + IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type, + IFC4X3_RC2_IfcExternalSpatialStructureElement_type, + IFC4X3_RC2_IfcExtrudedAreaSolid_type, + IFC4X3_RC2_IfcExtrudedAreaSolidTapered_type, + IFC4X3_RC2_IfcFace_type, + IFC4X3_RC2_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC2_IfcFaceBound_type, + IFC4X3_RC2_IfcFaceOuterBound_type, + IFC4X3_RC2_IfcFaceSurface_type, + IFC4X3_RC2_IfcFacetedBrep_type, + IFC4X3_RC2_IfcFacetedBrepWithVoids_type, + IFC4X3_RC2_IfcFacility_type, + IFC4X3_RC2_IfcFacilityPart_type, + IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC2_IfcFacilityPartTypeSelect_type, + IFC4X3_RC2_IfcFacilityUsageEnum_type, + IFC4X3_RC2_IfcFailureConnectionCondition_type, + IFC4X3_RC2_IfcFan_type, + IFC4X3_RC2_IfcFanType_type, + IFC4X3_RC2_IfcFanTypeEnum_type, + IFC4X3_RC2_IfcFastener_type, + IFC4X3_RC2_IfcFastenerType_type, + IFC4X3_RC2_IfcFastenerTypeEnum_type, + IFC4X3_RC2_IfcFeatureElement_type, + IFC4X3_RC2_IfcFeatureElementAddition_type, + IFC4X3_RC2_IfcFeatureElementSubtraction_type, + IFC4X3_RC2_IfcFillAreaStyle_type, + IFC4X3_RC2_IfcFillAreaStyleHatching_type, + IFC4X3_RC2_IfcFillAreaStyleTiles_type, + IFC4X3_RC2_IfcFillStyleSelect_type, + IFC4X3_RC2_IfcFilter_type, + IFC4X3_RC2_IfcFilterType_type, + IFC4X3_RC2_IfcFilterTypeEnum_type, + IFC4X3_RC2_IfcFireSuppressionTerminal_type, + IFC4X3_RC2_IfcFireSuppressionTerminalType_type, + IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X3_RC2_IfcFixedReferenceSweptAreaSolid_type, + IFC4X3_RC2_IfcFlowController_type, + IFC4X3_RC2_IfcFlowControllerType_type, + IFC4X3_RC2_IfcFlowDirectionEnum_type, + IFC4X3_RC2_IfcFlowFitting_type, + IFC4X3_RC2_IfcFlowFittingType_type, + IFC4X3_RC2_IfcFlowInstrument_type, + IFC4X3_RC2_IfcFlowInstrumentType_type, + IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type, + IFC4X3_RC2_IfcFlowMeter_type, + IFC4X3_RC2_IfcFlowMeterType_type, + IFC4X3_RC2_IfcFlowMeterTypeEnum_type, + IFC4X3_RC2_IfcFlowMovingDevice_type, + IFC4X3_RC2_IfcFlowMovingDeviceType_type, + IFC4X3_RC2_IfcFlowSegment_type, + IFC4X3_RC2_IfcFlowSegmentType_type, + IFC4X3_RC2_IfcFlowStorageDevice_type, + IFC4X3_RC2_IfcFlowStorageDeviceType_type, + IFC4X3_RC2_IfcFlowTerminal_type, + IFC4X3_RC2_IfcFlowTerminalType_type, + IFC4X3_RC2_IfcFlowTreatmentDevice_type, + IFC4X3_RC2_IfcFlowTreatmentDeviceType_type, + IFC4X3_RC2_IfcFontStyle_type, + IFC4X3_RC2_IfcFontVariant_type, + IFC4X3_RC2_IfcFontWeight_type, + IFC4X3_RC2_IfcFooting_type, + IFC4X3_RC2_IfcFootingType_type, + IFC4X3_RC2_IfcFootingTypeEnum_type, + IFC4X3_RC2_IfcForceMeasure_type, + IFC4X3_RC2_IfcFrequencyMeasure_type, + IFC4X3_RC2_IfcFurnishingElement_type, + IFC4X3_RC2_IfcFurnishingElementType_type, + IFC4X3_RC2_IfcFurniture_type, + IFC4X3_RC2_IfcFurnitureType_type, + IFC4X3_RC2_IfcFurnitureTypeEnum_type, + IFC4X3_RC2_IfcGeographicElement_type, + IFC4X3_RC2_IfcGeographicElementType_type, + IFC4X3_RC2_IfcGeographicElementTypeEnum_type, + IFC4X3_RC2_IfcGeometricCurveSet_type, + IFC4X3_RC2_IfcGeometricProjectionEnum_type, + IFC4X3_RC2_IfcGeometricRepresentationContext_type, + IFC4X3_RC2_IfcGeometricRepresentationItem_type, + IFC4X3_RC2_IfcGeometricRepresentationSubContext_type, + IFC4X3_RC2_IfcGeometricSet_type, + IFC4X3_RC2_IfcGeometricSetSelect_type, + IFC4X3_RC2_IfcGeomodel_type, + IFC4X3_RC2_IfcGeoslice_type, + IFC4X3_RC2_IfcGeotechnicalAssembly_type, + IFC4X3_RC2_IfcGeotechnicalElement_type, + IFC4X3_RC2_IfcGeotechnicalStratum_type, + IFC4X3_RC2_IfcGloballyUniqueId_type, + IFC4X3_RC2_IfcGlobalOrLocalEnum_type, + IFC4X3_RC2_IfcGradientCurve_type, + IFC4X3_RC2_IfcGrid_type, + IFC4X3_RC2_IfcGridAxis_type, + IFC4X3_RC2_IfcGridPlacement_type, + IFC4X3_RC2_IfcGridPlacementDirectionSelect_type, + IFC4X3_RC2_IfcGridTypeEnum_type, + IFC4X3_RC2_IfcGroup_type, + IFC4X3_RC2_IfcHalfSpaceSolid_type, + IFC4X3_RC2_IfcHatchLineDistanceSelect_type, + IFC4X3_RC2_IfcHeatExchanger_type, + IFC4X3_RC2_IfcHeatExchangerType_type, + IFC4X3_RC2_IfcHeatExchangerTypeEnum_type, + IFC4X3_RC2_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC2_IfcHeatingValueMeasure_type, + IFC4X3_RC2_IfcHumidifier_type, + IFC4X3_RC2_IfcHumidifierType_type, + IFC4X3_RC2_IfcHumidifierTypeEnum_type, + IFC4X3_RC2_IfcIdentifier_type, + IFC4X3_RC2_IfcIlluminanceMeasure_type, + IFC4X3_RC2_IfcImageTexture_type, + IFC4X3_RC2_IfcImpactProtectionDevice_type, + IFC4X3_RC2_IfcImpactProtectionDeviceType_type, + IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC2_IfcImpactProtectionDeviceTypeSelect_type, + IFC4X3_RC2_IfcInclinedReferenceSweptAreaSolid_type, + IFC4X3_RC2_IfcIndexedColourMap_type, + IFC4X3_RC2_IfcIndexedPolyCurve_type, + IFC4X3_RC2_IfcIndexedPolygonalFace_type, + IFC4X3_RC2_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X3_RC2_IfcIndexedTextureMap_type, + IFC4X3_RC2_IfcIndexedTriangleTextureMap_type, + IFC4X3_RC2_IfcInductanceMeasure_type, + IFC4X3_RC2_IfcInteger_type, + IFC4X3_RC2_IfcIntegerCountRateMeasure_type, + IFC4X3_RC2_IfcInterceptor_type, + IFC4X3_RC2_IfcInterceptorType_type, + IFC4X3_RC2_IfcInterceptorTypeEnum_type, + IFC4X3_RC2_IfcInterferenceSelect_type, + IFC4X3_RC2_IfcInternalOrExternalEnum_type, + IFC4X3_RC2_IfcIntersectionCurve_type, + IFC4X3_RC2_IfcInventory_type, + IFC4X3_RC2_IfcInventoryTypeEnum_type, + IFC4X3_RC2_IfcIonConcentrationMeasure_type, + IFC4X3_RC2_IfcIrregularTimeSeries_type, + IFC4X3_RC2_IfcIrregularTimeSeriesValue_type, + IFC4X3_RC2_IfcIShapeProfileDef_type, + IFC4X3_RC2_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC2_IfcJunctionBox_type, + IFC4X3_RC2_IfcJunctionBoxType_type, + IFC4X3_RC2_IfcJunctionBoxTypeEnum_type, + IFC4X3_RC2_IfcKerb_type, + IFC4X3_RC2_IfcKerbType_type, + IFC4X3_RC2_IfcKinematicViscosityMeasure_type, + IFC4X3_RC2_IfcKnotType_type, + IFC4X3_RC2_IfcLabel_type, + IFC4X3_RC2_IfcLaborResource_type, + IFC4X3_RC2_IfcLaborResourceType_type, + IFC4X3_RC2_IfcLaborResourceTypeEnum_type, + IFC4X3_RC2_IfcLagTime_type, + IFC4X3_RC2_IfcLamp_type, + IFC4X3_RC2_IfcLampType_type, + IFC4X3_RC2_IfcLampTypeEnum_type, + IFC4X3_RC2_IfcLanguageId_type, + IFC4X3_RC2_IfcLayeredItem_type, + IFC4X3_RC2_IfcLayerSetDirectionEnum_type, + IFC4X3_RC2_IfcLengthMeasure_type, + IFC4X3_RC2_IfcLibraryInformation_type, + IFC4X3_RC2_IfcLibraryReference_type, + IFC4X3_RC2_IfcLibrarySelect_type, + IFC4X3_RC2_IfcLightDistributionCurveEnum_type, + IFC4X3_RC2_IfcLightDistributionData_type, + IFC4X3_RC2_IfcLightDistributionDataSourceSelect_type, + IFC4X3_RC2_IfcLightEmissionSourceEnum_type, + IFC4X3_RC2_IfcLightFixture_type, + IFC4X3_RC2_IfcLightFixtureType_type, + IFC4X3_RC2_IfcLightFixtureTypeEnum_type, + IFC4X3_RC2_IfcLightIntensityDistribution_type, + IFC4X3_RC2_IfcLightSource_type, + IFC4X3_RC2_IfcLightSourceAmbient_type, + IFC4X3_RC2_IfcLightSourceDirectional_type, + IFC4X3_RC2_IfcLightSourceGoniometric_type, + IFC4X3_RC2_IfcLightSourcePositional_type, + IFC4X3_RC2_IfcLightSourceSpot_type, + IFC4X3_RC2_IfcLine_type, + IFC4X3_RC2_IfcLinearAxisSelect_type, + IFC4X3_RC2_IfcLinearAxisWithInclination_type, + IFC4X3_RC2_IfcLinearElement_type, + IFC4X3_RC2_IfcLinearForceMeasure_type, + IFC4X3_RC2_IfcLinearMomentMeasure_type, + IFC4X3_RC2_IfcLinearPlacement_type, + IFC4X3_RC2_IfcLinearPlacementWithInclination_type, + IFC4X3_RC2_IfcLinearPositioningElement_type, + IFC4X3_RC2_IfcLinearSpanPlacement_type, + IFC4X3_RC2_IfcLinearStiffnessMeasure_type, + IFC4X3_RC2_IfcLinearVelocityMeasure_type, + IFC4X3_RC2_IfcLineIndex_type, + IFC4X3_RC2_IfcLineSegment2D_type, + IFC4X3_RC2_IfcLiquidTerminal_type, + IFC4X3_RC2_IfcLiquidTerminalType_type, + IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type, + IFC4X3_RC2_IfcLoadGroupTypeEnum_type, + IFC4X3_RC2_IfcLocalPlacement_type, + IFC4X3_RC2_IfcLogical_type, + IFC4X3_RC2_IfcLogicalOperatorEnum_type, + IFC4X3_RC2_IfcLoop_type, + IFC4X3_RC2_IfcLShapeProfileDef_type, + IFC4X3_RC2_IfcLuminousFluxMeasure_type, + IFC4X3_RC2_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC2_IfcLuminousIntensityMeasure_type, + IFC4X3_RC2_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC2_IfcMagneticFluxMeasure_type, + IFC4X3_RC2_IfcManifoldSolidBrep_type, + IFC4X3_RC2_IfcMapConversion_type, + IFC4X3_RC2_IfcMappedItem_type, + IFC4X3_RC2_IfcMarineFacility_type, + IFC4X3_RC2_IfcMarineFacilityTypeEnum_type, + IFC4X3_RC2_IfcMarinePartTypeEnum_type, + IFC4X3_RC2_IfcMassDensityMeasure_type, + IFC4X3_RC2_IfcMassFlowRateMeasure_type, + IFC4X3_RC2_IfcMassMeasure_type, + IFC4X3_RC2_IfcMassPerLengthMeasure_type, + IFC4X3_RC2_IfcMaterial_type, + IFC4X3_RC2_IfcMaterialClassificationRelationship_type, + IFC4X3_RC2_IfcMaterialConstituent_type, + IFC4X3_RC2_IfcMaterialConstituentSet_type, + IFC4X3_RC2_IfcMaterialDefinition_type, + IFC4X3_RC2_IfcMaterialDefinitionRepresentation_type, + IFC4X3_RC2_IfcMaterialLayer_type, + IFC4X3_RC2_IfcMaterialLayerSet_type, + IFC4X3_RC2_IfcMaterialLayerSetUsage_type, + IFC4X3_RC2_IfcMaterialLayerWithOffsets_type, + IFC4X3_RC2_IfcMaterialList_type, + IFC4X3_RC2_IfcMaterialProfile_type, + IFC4X3_RC2_IfcMaterialProfileSet_type, + IFC4X3_RC2_IfcMaterialProfileSetUsage_type, + IFC4X3_RC2_IfcMaterialProfileSetUsageTapering_type, + IFC4X3_RC2_IfcMaterialProfileWithOffsets_type, + IFC4X3_RC2_IfcMaterialProperties_type, + IFC4X3_RC2_IfcMaterialRelationship_type, + IFC4X3_RC2_IfcMaterialSelect_type, + IFC4X3_RC2_IfcMaterialUsageDefinition_type, + IFC4X3_RC2_IfcMeasureValue_type, + IFC4X3_RC2_IfcMeasureWithUnit_type, + IFC4X3_RC2_IfcMechanicalFastener_type, + IFC4X3_RC2_IfcMechanicalFastenerType_type, + IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type, + IFC4X3_RC2_IfcMedicalDevice_type, + IFC4X3_RC2_IfcMedicalDeviceType_type, + IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type, + IFC4X3_RC2_IfcMember_type, + IFC4X3_RC2_IfcMemberStandardCase_type, + IFC4X3_RC2_IfcMemberType_type, + IFC4X3_RC2_IfcMemberTypeEnum_type, + IFC4X3_RC2_IfcMetric_type, + IFC4X3_RC2_IfcMetricValueSelect_type, + IFC4X3_RC2_IfcMirroredProfileDef_type, + IFC4X3_RC2_IfcMobileTelecommunicationsAppliance_type, + IFC4X3_RC2_IfcMobileTelecommunicationsApplianceType_type, + IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type, + IFC4X3_RC2_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC2_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC2_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X3_RC2_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC2_IfcModulusOfSubgradeReactionSelect_type, + IFC4X3_RC2_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X3_RC2_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC2_IfcMolecularWeightMeasure_type, + IFC4X3_RC2_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC2_IfcMonetaryMeasure_type, + IFC4X3_RC2_IfcMonetaryUnit_type, + IFC4X3_RC2_IfcMonthInYearNumber_type, + IFC4X3_RC2_IfcMooringDevice_type, + IFC4X3_RC2_IfcMooringDeviceType_type, + IFC4X3_RC2_IfcMooringDeviceTypeEnum_type, + IFC4X3_RC2_IfcMotorConnection_type, + IFC4X3_RC2_IfcMotorConnectionType_type, + IFC4X3_RC2_IfcMotorConnectionTypeEnum_type, + IFC4X3_RC2_IfcNamedUnit_type, + IFC4X3_RC2_IfcNavigationElement_type, + IFC4X3_RC2_IfcNavigationElementType_type, + IFC4X3_RC2_IfcNavigationElementTypeEnum_type, + IFC4X3_RC2_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC2_IfcNormalisedRatioMeasure_type, + IFC4X3_RC2_IfcNullStyle_type, + IFC4X3_RC2_IfcNumericMeasure_type, + IFC4X3_RC2_IfcObject_type, + IFC4X3_RC2_IfcObjectDefinition_type, + IFC4X3_RC2_IfcObjective_type, + IFC4X3_RC2_IfcObjectiveEnum_type, + IFC4X3_RC2_IfcObjectPlacement_type, + IFC4X3_RC2_IfcObjectReferenceSelect_type, + IFC4X3_RC2_IfcObjectTypeEnum_type, + IFC4X3_RC2_IfcOccupant_type, + IFC4X3_RC2_IfcOccupantTypeEnum_type, + IFC4X3_RC2_IfcOffsetCurve_type, + IFC4X3_RC2_IfcOffsetCurve2D_type, + IFC4X3_RC2_IfcOffsetCurve3D_type, + IFC4X3_RC2_IfcOffsetCurveByDistances_type, + IFC4X3_RC2_IfcOpenCrossProfileDef_type, + IFC4X3_RC2_IfcOpeningElement_type, + IFC4X3_RC2_IfcOpeningElementTypeEnum_type, + IFC4X3_RC2_IfcOpeningStandardCase_type, + IFC4X3_RC2_IfcOpenShell_type, + IFC4X3_RC2_IfcOrganization_type, + IFC4X3_RC2_IfcOrganizationRelationship_type, + IFC4X3_RC2_IfcOrientedEdge_type, + IFC4X3_RC2_IfcOuterBoundaryCurve_type, + IFC4X3_RC2_IfcOutlet_type, + IFC4X3_RC2_IfcOutletType_type, + IFC4X3_RC2_IfcOutletTypeEnum_type, + IFC4X3_RC2_IfcOwnerHistory_type, + IFC4X3_RC2_IfcParameterizedProfileDef_type, + IFC4X3_RC2_IfcParameterValue_type, + IFC4X3_RC2_IfcPath_type, + IFC4X3_RC2_IfcPavement_type, + IFC4X3_RC2_IfcPavementType_type, + IFC4X3_RC2_IfcPcurve_type, + IFC4X3_RC2_IfcPerformanceHistory_type, + IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type, + IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type, + IFC4X3_RC2_IfcPermeableCoveringProperties_type, + IFC4X3_RC2_IfcPermit_type, + IFC4X3_RC2_IfcPermitTypeEnum_type, + IFC4X3_RC2_IfcPerson_type, + IFC4X3_RC2_IfcPersonAndOrganization_type, + IFC4X3_RC2_IfcPHMeasure_type, + IFC4X3_RC2_IfcPhysicalComplexQuantity_type, + IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type, + IFC4X3_RC2_IfcPhysicalQuantity_type, + IFC4X3_RC2_IfcPhysicalSimpleQuantity_type, + IFC4X3_RC2_IfcPile_type, + IFC4X3_RC2_IfcPileConstructionEnum_type, + IFC4X3_RC2_IfcPileType_type, + IFC4X3_RC2_IfcPileTypeEnum_type, + IFC4X3_RC2_IfcPipeFitting_type, + IFC4X3_RC2_IfcPipeFittingType_type, + IFC4X3_RC2_IfcPipeFittingTypeEnum_type, + IFC4X3_RC2_IfcPipeSegment_type, + IFC4X3_RC2_IfcPipeSegmentType_type, + IFC4X3_RC2_IfcPipeSegmentTypeEnum_type, + IFC4X3_RC2_IfcPixelTexture_type, + IFC4X3_RC2_IfcPlacement_type, + IFC4X3_RC2_IfcPlanarBox_type, + IFC4X3_RC2_IfcPlanarExtent_type, + IFC4X3_RC2_IfcPlanarForceMeasure_type, + IFC4X3_RC2_IfcPlane_type, + IFC4X3_RC2_IfcPlaneAngleMeasure_type, + IFC4X3_RC2_IfcPlant_type, + IFC4X3_RC2_IfcPlate_type, + IFC4X3_RC2_IfcPlateStandardCase_type, + IFC4X3_RC2_IfcPlateType_type, + IFC4X3_RC2_IfcPlateTypeEnum_type, + IFC4X3_RC2_IfcPoint_type, + IFC4X3_RC2_IfcPointByDistanceExpression_type, + IFC4X3_RC2_IfcPointOnCurve_type, + IFC4X3_RC2_IfcPointOnSurface_type, + IFC4X3_RC2_IfcPointOrVertexPoint_type, + IFC4X3_RC2_IfcPolygonalBoundedHalfSpace_type, + IFC4X3_RC2_IfcPolygonalFaceSet_type, + IFC4X3_RC2_IfcPolyline_type, + IFC4X3_RC2_IfcPolyLoop_type, + IFC4X3_RC2_IfcPort_type, + IFC4X3_RC2_IfcPositioningElement_type, + IFC4X3_RC2_IfcPositiveInteger_type, + IFC4X3_RC2_IfcPositiveLengthMeasure_type, + IFC4X3_RC2_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC2_IfcPositiveRatioMeasure_type, + IFC4X3_RC2_IfcPostalAddress_type, + IFC4X3_RC2_IfcPowerMeasure_type, + IFC4X3_RC2_IfcPreDefinedColour_type, + IFC4X3_RC2_IfcPreDefinedCurveFont_type, + IFC4X3_RC2_IfcPreDefinedItem_type, + IFC4X3_RC2_IfcPreDefinedProperties_type, + IFC4X3_RC2_IfcPreDefinedPropertySet_type, + IFC4X3_RC2_IfcPreDefinedTextFont_type, + IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X3_RC2_IfcPresentableText_type, + IFC4X3_RC2_IfcPresentationItem_type, + IFC4X3_RC2_IfcPresentationLayerAssignment_type, + IFC4X3_RC2_IfcPresentationLayerWithStyle_type, + IFC4X3_RC2_IfcPresentationStyle_type, + IFC4X3_RC2_IfcPresentationStyleAssignment_type, + IFC4X3_RC2_IfcPresentationStyleSelect_type, + IFC4X3_RC2_IfcPressureMeasure_type, + IFC4X3_RC2_IfcProcedure_type, + IFC4X3_RC2_IfcProcedureType_type, + IFC4X3_RC2_IfcProcedureTypeEnum_type, + IFC4X3_RC2_IfcProcess_type, + IFC4X3_RC2_IfcProcessSelect_type, + IFC4X3_RC2_IfcProduct_type, + IFC4X3_RC2_IfcProductDefinitionShape_type, + IFC4X3_RC2_IfcProductRepresentation_type, + IFC4X3_RC2_IfcProductRepresentationSelect_type, + IFC4X3_RC2_IfcProductSelect_type, + IFC4X3_RC2_IfcProfileDef_type, + IFC4X3_RC2_IfcProfileProperties_type, + IFC4X3_RC2_IfcProfileTypeEnum_type, + IFC4X3_RC2_IfcProject_type, + IFC4X3_RC2_IfcProjectedCRS_type, + IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type, + IFC4X3_RC2_IfcProjectionElement_type, + IFC4X3_RC2_IfcProjectionElementTypeEnum_type, + IFC4X3_RC2_IfcProjectLibrary_type, + IFC4X3_RC2_IfcProjectOrder_type, + IFC4X3_RC2_IfcProjectOrderTypeEnum_type, + IFC4X3_RC2_IfcProperty_type, + IFC4X3_RC2_IfcPropertyAbstraction_type, + IFC4X3_RC2_IfcPropertyBoundedValue_type, + IFC4X3_RC2_IfcPropertyDefinition_type, + IFC4X3_RC2_IfcPropertyDependencyRelationship_type, + IFC4X3_RC2_IfcPropertyEnumeratedValue_type, + IFC4X3_RC2_IfcPropertyEnumeration_type, + IFC4X3_RC2_IfcPropertyListValue_type, + IFC4X3_RC2_IfcPropertyReferenceValue_type, + IFC4X3_RC2_IfcPropertySet_type, + IFC4X3_RC2_IfcPropertySetDefinition_type, + IFC4X3_RC2_IfcPropertySetDefinitionSelect_type, + IFC4X3_RC2_IfcPropertySetDefinitionSet_type, + IFC4X3_RC2_IfcPropertySetTemplate_type, + IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type, + IFC4X3_RC2_IfcPropertySingleValue_type, + IFC4X3_RC2_IfcPropertyTableValue_type, + IFC4X3_RC2_IfcPropertyTemplate_type, + IFC4X3_RC2_IfcPropertyTemplateDefinition_type, + IFC4X3_RC2_IfcProtectiveDevice_type, + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnit_type, + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X3_RC2_IfcProtectiveDeviceType_type, + IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type, + IFC4X3_RC2_IfcProxy_type, + IFC4X3_RC2_IfcPump_type, + IFC4X3_RC2_IfcPumpType_type, + IFC4X3_RC2_IfcPumpTypeEnum_type, + IFC4X3_RC2_IfcQuantityArea_type, + IFC4X3_RC2_IfcQuantityCount_type, + IFC4X3_RC2_IfcQuantityLength_type, + IFC4X3_RC2_IfcQuantitySet_type, + IFC4X3_RC2_IfcQuantityTime_type, + IFC4X3_RC2_IfcQuantityVolume_type, + IFC4X3_RC2_IfcQuantityWeight_type, + IFC4X3_RC2_IfcRadioActivityMeasure_type, + IFC4X3_RC2_IfcRail_type, + IFC4X3_RC2_IfcRailing_type, + IFC4X3_RC2_IfcRailingType_type, + IFC4X3_RC2_IfcRailingTypeEnum_type, + IFC4X3_RC2_IfcRailType_type, + IFC4X3_RC2_IfcRailTypeEnum_type, + IFC4X3_RC2_IfcRailway_type, + IFC4X3_RC2_IfcRailwayPartTypeEnum_type, + IFC4X3_RC2_IfcRamp_type, + IFC4X3_RC2_IfcRampFlight_type, + IFC4X3_RC2_IfcRampFlightType_type, + IFC4X3_RC2_IfcRampFlightTypeEnum_type, + IFC4X3_RC2_IfcRampType_type, + IFC4X3_RC2_IfcRampTypeEnum_type, + IFC4X3_RC2_IfcRatioMeasure_type, + IFC4X3_RC2_IfcRationalBSplineCurveWithKnots_type, + IFC4X3_RC2_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X3_RC2_IfcReal_type, + IFC4X3_RC2_IfcRectangleHollowProfileDef_type, + IFC4X3_RC2_IfcRectangleProfileDef_type, + IFC4X3_RC2_IfcRectangularPyramid_type, + IFC4X3_RC2_IfcRectangularTrimmedSurface_type, + IFC4X3_RC2_IfcRecurrencePattern_type, + IFC4X3_RC2_IfcRecurrenceTypeEnum_type, + IFC4X3_RC2_IfcReference_type, + IFC4X3_RC2_IfcReferent_type, + IFC4X3_RC2_IfcReferentTypeEnum_type, + IFC4X3_RC2_IfcReflectanceMethodEnum_type, + IFC4X3_RC2_IfcRegularTimeSeries_type, + IFC4X3_RC2_IfcReinforcedSoil_type, + IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type, + IFC4X3_RC2_IfcReinforcementBarProperties_type, + IFC4X3_RC2_IfcReinforcementDefinitionProperties_type, + IFC4X3_RC2_IfcReinforcingBar_type, + IFC4X3_RC2_IfcReinforcingBarRoleEnum_type, + IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type, + IFC4X3_RC2_IfcReinforcingBarType_type, + IFC4X3_RC2_IfcReinforcingBarTypeEnum_type, + IFC4X3_RC2_IfcReinforcingElement_type, + IFC4X3_RC2_IfcReinforcingElementType_type, + IFC4X3_RC2_IfcReinforcingMesh_type, + IFC4X3_RC2_IfcReinforcingMeshType_type, + IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type, + IFC4X3_RC2_IfcRelAggregates_type, + IFC4X3_RC2_IfcRelAssigns_type, + IFC4X3_RC2_IfcRelAssignsToActor_type, + IFC4X3_RC2_IfcRelAssignsToControl_type, + IFC4X3_RC2_IfcRelAssignsToGroup_type, + IFC4X3_RC2_IfcRelAssignsToGroupByFactor_type, + IFC4X3_RC2_IfcRelAssignsToProcess_type, + IFC4X3_RC2_IfcRelAssignsToProduct_type, + IFC4X3_RC2_IfcRelAssignsToResource_type, + IFC4X3_RC2_IfcRelAssociates_type, + IFC4X3_RC2_IfcRelAssociatesApproval_type, + IFC4X3_RC2_IfcRelAssociatesClassification_type, + IFC4X3_RC2_IfcRelAssociatesConstraint_type, + IFC4X3_RC2_IfcRelAssociatesDocument_type, + IFC4X3_RC2_IfcRelAssociatesLibrary_type, + IFC4X3_RC2_IfcRelAssociatesMaterial_type, + IFC4X3_RC2_IfcRelAssociatesProfileDef_type, + IFC4X3_RC2_IfcRelationship_type, + IFC4X3_RC2_IfcRelConnects_type, + IFC4X3_RC2_IfcRelConnectsElements_type, + IFC4X3_RC2_IfcRelConnectsPathElements_type, + IFC4X3_RC2_IfcRelConnectsPorts_type, + IFC4X3_RC2_IfcRelConnectsPortToElement_type, + IFC4X3_RC2_IfcRelConnectsStructuralActivity_type, + IFC4X3_RC2_IfcRelConnectsStructuralMember_type, + IFC4X3_RC2_IfcRelConnectsWithEccentricity_type, + IFC4X3_RC2_IfcRelConnectsWithRealizingElements_type, + IFC4X3_RC2_IfcRelContainedInSpatialStructure_type, + IFC4X3_RC2_IfcRelCoversBldgElements_type, + IFC4X3_RC2_IfcRelCoversSpaces_type, + IFC4X3_RC2_IfcRelDeclares_type, + IFC4X3_RC2_IfcRelDecomposes_type, + IFC4X3_RC2_IfcRelDefines_type, + IFC4X3_RC2_IfcRelDefinesByObject_type, + IFC4X3_RC2_IfcRelDefinesByProperties_type, + IFC4X3_RC2_IfcRelDefinesByTemplate_type, + IFC4X3_RC2_IfcRelDefinesByType_type, + IFC4X3_RC2_IfcRelFillsElement_type, + IFC4X3_RC2_IfcRelFlowControlElements_type, + IFC4X3_RC2_IfcRelInterferesElements_type, + IFC4X3_RC2_IfcRelNests_type, + IFC4X3_RC2_IfcRelPositions_type, + IFC4X3_RC2_IfcRelProjectsElement_type, + IFC4X3_RC2_IfcRelReferencedInSpatialStructure_type, + IFC4X3_RC2_IfcRelSequence_type, + IFC4X3_RC2_IfcRelServicesBuildings_type, + IFC4X3_RC2_IfcRelSpaceBoundary_type, + IFC4X3_RC2_IfcRelSpaceBoundary1stLevel_type, + IFC4X3_RC2_IfcRelSpaceBoundary2ndLevel_type, + IFC4X3_RC2_IfcRelVoidsElement_type, + IFC4X3_RC2_IfcReparametrisedCompositeCurveSegment_type, + IFC4X3_RC2_IfcRepresentation_type, + IFC4X3_RC2_IfcRepresentationContext_type, + IFC4X3_RC2_IfcRepresentationItem_type, + IFC4X3_RC2_IfcRepresentationMap_type, + IFC4X3_RC2_IfcResource_type, + IFC4X3_RC2_IfcResourceApprovalRelationship_type, + IFC4X3_RC2_IfcResourceConstraintRelationship_type, + IFC4X3_RC2_IfcResourceLevelRelationship_type, + IFC4X3_RC2_IfcResourceObjectSelect_type, + IFC4X3_RC2_IfcResourceSelect_type, + IFC4X3_RC2_IfcResourceTime_type, + IFC4X3_RC2_IfcRevolvedAreaSolid_type, + IFC4X3_RC2_IfcRevolvedAreaSolidTapered_type, + IFC4X3_RC2_IfcRightCircularCone_type, + IFC4X3_RC2_IfcRightCircularCylinder_type, + IFC4X3_RC2_IfcRoad_type, + IFC4X3_RC2_IfcRoadPartTypeEnum_type, + IFC4X3_RC2_IfcRoleEnum_type, + IFC4X3_RC2_IfcRoof_type, + IFC4X3_RC2_IfcRoofType_type, + IFC4X3_RC2_IfcRoofTypeEnum_type, + IFC4X3_RC2_IfcRoot_type, + IFC4X3_RC2_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC2_IfcRotationalMassMeasure_type, + IFC4X3_RC2_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC2_IfcRotationalStiffnessSelect_type, + IFC4X3_RC2_IfcRoundedRectangleProfileDef_type, + IFC4X3_RC2_IfcSanitaryTerminal_type, + IFC4X3_RC2_IfcSanitaryTerminalType_type, + IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type, + IFC4X3_RC2_IfcSchedulingTime_type, + IFC4X3_RC2_IfcSeamCurve_type, + IFC4X3_RC2_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC2_IfcSectionedSolid_type, + IFC4X3_RC2_IfcSectionedSolidHorizontal_type, + IFC4X3_RC2_IfcSectionedSpine_type, + IFC4X3_RC2_IfcSectionedSurface_type, + IFC4X3_RC2_IfcSectionModulusMeasure_type, + IFC4X3_RC2_IfcSectionProperties_type, + IFC4X3_RC2_IfcSectionReinforcementProperties_type, + IFC4X3_RC2_IfcSectionTypeEnum_type, + IFC4X3_RC2_IfcSegment_type, + IFC4X3_RC2_IfcSegmentedReferenceCurve_type, + IFC4X3_RC2_IfcSegmentIndexSelect_type, + IFC4X3_RC2_IfcSensor_type, + IFC4X3_RC2_IfcSensorType_type, + IFC4X3_RC2_IfcSensorTypeEnum_type, + IFC4X3_RC2_IfcSequenceEnum_type, + IFC4X3_RC2_IfcSeriesParameterCurve_type, + IFC4X3_RC2_IfcShadingDevice_type, + IFC4X3_RC2_IfcShadingDeviceType_type, + IFC4X3_RC2_IfcShadingDeviceTypeEnum_type, + IFC4X3_RC2_IfcShapeAspect_type, + IFC4X3_RC2_IfcShapeModel_type, + IFC4X3_RC2_IfcShapeRepresentation_type, + IFC4X3_RC2_IfcShearModulusMeasure_type, + IFC4X3_RC2_IfcShell_type, + IFC4X3_RC2_IfcShellBasedSurfaceModel_type, + IFC4X3_RC2_IfcSign_type, + IFC4X3_RC2_IfcSignal_type, + IFC4X3_RC2_IfcSignalType_type, + IFC4X3_RC2_IfcSignalTypeEnum_type, + IFC4X3_RC2_IfcSignType_type, + IFC4X3_RC2_IfcSignTypeEnum_type, + IFC4X3_RC2_IfcSimpleProperty_type, + IFC4X3_RC2_IfcSimplePropertyTemplate_type, + IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X3_RC2_IfcSimpleValue_type, + IFC4X3_RC2_IfcSIPrefix_type, + IFC4X3_RC2_IfcSite_type, + IFC4X3_RC2_IfcSIUnit_type, + IFC4X3_RC2_IfcSIUnitName_type, + IFC4X3_RC2_IfcSizeSelect_type, + IFC4X3_RC2_IfcSlab_type, + IFC4X3_RC2_IfcSlabElementedCase_type, + IFC4X3_RC2_IfcSlabStandardCase_type, + IFC4X3_RC2_IfcSlabType_type, + IFC4X3_RC2_IfcSlabTypeEnum_type, + IFC4X3_RC2_IfcSlippageConnectionCondition_type, + IFC4X3_RC2_IfcSolarDevice_type, + IFC4X3_RC2_IfcSolarDeviceType_type, + IFC4X3_RC2_IfcSolarDeviceTypeEnum_type, + IFC4X3_RC2_IfcSolidAngleMeasure_type, + IFC4X3_RC2_IfcSolidModel_type, + IFC4X3_RC2_IfcSolidOrShell_type, + IFC4X3_RC2_IfcSolidStratum_type, + IFC4X3_RC2_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC2_IfcSoundPowerMeasure_type, + IFC4X3_RC2_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC2_IfcSoundPressureMeasure_type, + IFC4X3_RC2_IfcSpace_type, + IFC4X3_RC2_IfcSpaceBoundarySelect_type, + IFC4X3_RC2_IfcSpaceHeater_type, + IFC4X3_RC2_IfcSpaceHeaterType_type, + IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type, + IFC4X3_RC2_IfcSpaceType_type, + IFC4X3_RC2_IfcSpaceTypeEnum_type, + IFC4X3_RC2_IfcSpatialElement_type, + IFC4X3_RC2_IfcSpatialElementType_type, + IFC4X3_RC2_IfcSpatialReferenceSelect_type, + IFC4X3_RC2_IfcSpatialStructureElement_type, + IFC4X3_RC2_IfcSpatialStructureElementType_type, + IFC4X3_RC2_IfcSpatialZone_type, + IFC4X3_RC2_IfcSpatialZoneType_type, + IFC4X3_RC2_IfcSpatialZoneTypeEnum_type, + IFC4X3_RC2_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC2_IfcSpecularExponent_type, + IFC4X3_RC2_IfcSpecularHighlightSelect_type, + IFC4X3_RC2_IfcSpecularRoughness_type, + IFC4X3_RC2_IfcSphere_type, + IFC4X3_RC2_IfcSphericalSurface_type, + IFC4X3_RC2_IfcStackTerminal_type, + IFC4X3_RC2_IfcStackTerminalType_type, + IFC4X3_RC2_IfcStackTerminalTypeEnum_type, + IFC4X3_RC2_IfcStair_type, + IFC4X3_RC2_IfcStairFlight_type, + IFC4X3_RC2_IfcStairFlightType_type, + IFC4X3_RC2_IfcStairFlightTypeEnum_type, + IFC4X3_RC2_IfcStairType_type, + IFC4X3_RC2_IfcStairTypeEnum_type, + IFC4X3_RC2_IfcStateEnum_type, + IFC4X3_RC2_IfcStructuralAction_type, + IFC4X3_RC2_IfcStructuralActivity_type, + IFC4X3_RC2_IfcStructuralActivityAssignmentSelect_type, + IFC4X3_RC2_IfcStructuralAnalysisModel_type, + IFC4X3_RC2_IfcStructuralConnection_type, + IFC4X3_RC2_IfcStructuralConnectionCondition_type, + IFC4X3_RC2_IfcStructuralCurveAction_type, + IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type, + IFC4X3_RC2_IfcStructuralCurveConnection_type, + IFC4X3_RC2_IfcStructuralCurveMember_type, + IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type, + IFC4X3_RC2_IfcStructuralCurveMemberVarying_type, + IFC4X3_RC2_IfcStructuralCurveReaction_type, + IFC4X3_RC2_IfcStructuralItem_type, + IFC4X3_RC2_IfcStructuralLinearAction_type, + IFC4X3_RC2_IfcStructuralLoad_type, + IFC4X3_RC2_IfcStructuralLoadCase_type, + IFC4X3_RC2_IfcStructuralLoadConfiguration_type, + IFC4X3_RC2_IfcStructuralLoadGroup_type, + IFC4X3_RC2_IfcStructuralLoadLinearForce_type, + IFC4X3_RC2_IfcStructuralLoadOrResult_type, + IFC4X3_RC2_IfcStructuralLoadPlanarForce_type, + IFC4X3_RC2_IfcStructuralLoadSingleDisplacement_type, + IFC4X3_RC2_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X3_RC2_IfcStructuralLoadSingleForce_type, + IFC4X3_RC2_IfcStructuralLoadSingleForceWarping_type, + IFC4X3_RC2_IfcStructuralLoadStatic_type, + IFC4X3_RC2_IfcStructuralLoadTemperature_type, + IFC4X3_RC2_IfcStructuralMember_type, + IFC4X3_RC2_IfcStructuralPlanarAction_type, + IFC4X3_RC2_IfcStructuralPointAction_type, + IFC4X3_RC2_IfcStructuralPointConnection_type, + IFC4X3_RC2_IfcStructuralPointReaction_type, + IFC4X3_RC2_IfcStructuralReaction_type, + IFC4X3_RC2_IfcStructuralResultGroup_type, + IFC4X3_RC2_IfcStructuralSurfaceAction_type, + IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X3_RC2_IfcStructuralSurfaceConnection_type, + IFC4X3_RC2_IfcStructuralSurfaceMember_type, + IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X3_RC2_IfcStructuralSurfaceMemberVarying_type, + IFC4X3_RC2_IfcStructuralSurfaceReaction_type, + IFC4X3_RC2_IfcStyleAssignmentSelect_type, + IFC4X3_RC2_IfcStyledItem_type, + IFC4X3_RC2_IfcStyledRepresentation_type, + IFC4X3_RC2_IfcStyleModel_type, + IFC4X3_RC2_IfcSubContractResource_type, + IFC4X3_RC2_IfcSubContractResourceType_type, + IFC4X3_RC2_IfcSubContractResourceTypeEnum_type, + IFC4X3_RC2_IfcSubedge_type, + IFC4X3_RC2_IfcSurface_type, + IFC4X3_RC2_IfcSurfaceCurve_type, + IFC4X3_RC2_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X3_RC2_IfcSurfaceFeature_type, + IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type, + IFC4X3_RC2_IfcSurfaceOfLinearExtrusion_type, + IFC4X3_RC2_IfcSurfaceOfRevolution_type, + IFC4X3_RC2_IfcSurfaceOrFaceSurface_type, + IFC4X3_RC2_IfcSurfaceReinforcementArea_type, + IFC4X3_RC2_IfcSurfaceSide_type, + IFC4X3_RC2_IfcSurfaceStyle_type, + IFC4X3_RC2_IfcSurfaceStyleElementSelect_type, + IFC4X3_RC2_IfcSurfaceStyleLighting_type, + IFC4X3_RC2_IfcSurfaceStyleRefraction_type, + IFC4X3_RC2_IfcSurfaceStyleRendering_type, + IFC4X3_RC2_IfcSurfaceStyleShading_type, + IFC4X3_RC2_IfcSurfaceStyleWithTextures_type, + IFC4X3_RC2_IfcSurfaceTexture_type, + IFC4X3_RC2_IfcSweptAreaSolid_type, + IFC4X3_RC2_IfcSweptDiskSolid_type, + IFC4X3_RC2_IfcSweptDiskSolidPolygonal_type, + IFC4X3_RC2_IfcSweptSurface_type, + IFC4X3_RC2_IfcSwitchingDevice_type, + IFC4X3_RC2_IfcSwitchingDeviceType_type, + IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type, + IFC4X3_RC2_IfcSystem_type, + IFC4X3_RC2_IfcSystemFurnitureElement_type, + IFC4X3_RC2_IfcSystemFurnitureElementType_type, + IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type, + IFC4X3_RC2_IfcTable_type, + IFC4X3_RC2_IfcTableColumn_type, + IFC4X3_RC2_IfcTableRow_type, + IFC4X3_RC2_IfcTank_type, + IFC4X3_RC2_IfcTankType_type, + IFC4X3_RC2_IfcTankTypeEnum_type, + IFC4X3_RC2_IfcTask_type, + IFC4X3_RC2_IfcTaskDurationEnum_type, + IFC4X3_RC2_IfcTaskTime_type, + IFC4X3_RC2_IfcTaskTimeRecurring_type, + IFC4X3_RC2_IfcTaskType_type, + IFC4X3_RC2_IfcTaskTypeEnum_type, + IFC4X3_RC2_IfcTelecomAddress_type, + IFC4X3_RC2_IfcTemperatureGradientMeasure_type, + IFC4X3_RC2_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC2_IfcTendon_type, + IFC4X3_RC2_IfcTendonAnchor_type, + IFC4X3_RC2_IfcTendonAnchorType_type, + IFC4X3_RC2_IfcTendonAnchorTypeEnum_type, + IFC4X3_RC2_IfcTendonConduit_type, + IFC4X3_RC2_IfcTendonConduitType_type, + IFC4X3_RC2_IfcTendonConduitTypeEnum_type, + IFC4X3_RC2_IfcTendonType_type, + IFC4X3_RC2_IfcTendonTypeEnum_type, + IFC4X3_RC2_IfcTessellatedFaceSet_type, + IFC4X3_RC2_IfcTessellatedItem_type, + IFC4X3_RC2_IfcText_type, + IFC4X3_RC2_IfcTextAlignment_type, + IFC4X3_RC2_IfcTextDecoration_type, + IFC4X3_RC2_IfcTextFontName_type, + IFC4X3_RC2_IfcTextFontSelect_type, + IFC4X3_RC2_IfcTextLiteral_type, + IFC4X3_RC2_IfcTextLiteralWithExtent_type, + IFC4X3_RC2_IfcTextPath_type, + IFC4X3_RC2_IfcTextStyle_type, + IFC4X3_RC2_IfcTextStyleFontModel_type, + IFC4X3_RC2_IfcTextStyleForDefinedFont_type, + IFC4X3_RC2_IfcTextStyleTextModel_type, + IFC4X3_RC2_IfcTextTransformation_type, + IFC4X3_RC2_IfcTextureCoordinate_type, + IFC4X3_RC2_IfcTextureCoordinateGenerator_type, + IFC4X3_RC2_IfcTextureMap_type, + IFC4X3_RC2_IfcTextureVertex_type, + IFC4X3_RC2_IfcTextureVertexList_type, + IFC4X3_RC2_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC2_IfcThermalConductivityMeasure_type, + IFC4X3_RC2_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC2_IfcThermalResistanceMeasure_type, + IFC4X3_RC2_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC2_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC2_IfcTime_type, + IFC4X3_RC2_IfcTimeMeasure_type, + IFC4X3_RC2_IfcTimeOrRatioSelect_type, + IFC4X3_RC2_IfcTimePeriod_type, + IFC4X3_RC2_IfcTimeSeries_type, + IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type, + IFC4X3_RC2_IfcTimeSeriesValue_type, + IFC4X3_RC2_IfcTimeStamp_type, + IFC4X3_RC2_IfcTopologicalRepresentationItem_type, + IFC4X3_RC2_IfcTopologyRepresentation_type, + IFC4X3_RC2_IfcToroidalSurface_type, + IFC4X3_RC2_IfcTorqueMeasure_type, + IFC4X3_RC2_IfcTrackElement_type, + IFC4X3_RC2_IfcTrackElementType_type, + IFC4X3_RC2_IfcTrackElementTypeEnum_type, + IFC4X3_RC2_IfcTransformer_type, + IFC4X3_RC2_IfcTransformerType_type, + IFC4X3_RC2_IfcTransformerTypeEnum_type, + IFC4X3_RC2_IfcTransitionCode_type, + IFC4X3_RC2_IfcTransitionCurveSegment2D_type, + IFC4X3_RC2_IfcTransitionCurveType_type, + IFC4X3_RC2_IfcTranslationalStiffnessSelect_type, + IFC4X3_RC2_IfcTransportElement_type, + IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type, + IFC4X3_RC2_IfcTransportElementType_type, + IFC4X3_RC2_IfcTransportElementTypeSelect_type, + IFC4X3_RC2_IfcTrapeziumProfileDef_type, + IFC4X3_RC2_IfcTriangulatedFaceSet_type, + IFC4X3_RC2_IfcTriangulatedIrregularNetwork_type, + IFC4X3_RC2_IfcTrimmedCurve_type, + IFC4X3_RC2_IfcTrimmingPreference_type, + IFC4X3_RC2_IfcTrimmingSelect_type, + IFC4X3_RC2_IfcTShapeProfileDef_type, + IFC4X3_RC2_IfcTubeBundle_type, + IFC4X3_RC2_IfcTubeBundleType_type, + IFC4X3_RC2_IfcTubeBundleTypeEnum_type, + IFC4X3_RC2_IfcTypeObject_type, + IFC4X3_RC2_IfcTypeProcess_type, + IFC4X3_RC2_IfcTypeProduct_type, + IFC4X3_RC2_IfcTypeResource_type, + IFC4X3_RC2_IfcUnit_type, + IFC4X3_RC2_IfcUnitaryControlElement_type, + IFC4X3_RC2_IfcUnitaryControlElementType_type, + IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type, + IFC4X3_RC2_IfcUnitaryEquipment_type, + IFC4X3_RC2_IfcUnitaryEquipmentType_type, + IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type, + IFC4X3_RC2_IfcUnitAssignment_type, + IFC4X3_RC2_IfcUnitEnum_type, + IFC4X3_RC2_IfcURIReference_type, + IFC4X3_RC2_IfcUShapeProfileDef_type, + IFC4X3_RC2_IfcValue_type, + IFC4X3_RC2_IfcValve_type, + IFC4X3_RC2_IfcValveType_type, + IFC4X3_RC2_IfcValveTypeEnum_type, + IFC4X3_RC2_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC2_IfcVector_type, + IFC4X3_RC2_IfcVectorOrDirection_type, + IFC4X3_RC2_IfcVertex_type, + IFC4X3_RC2_IfcVertexLoop_type, + IFC4X3_RC2_IfcVertexPoint_type, + IFC4X3_RC2_IfcVibrationDamper_type, + IFC4X3_RC2_IfcVibrationDamperType_type, + IFC4X3_RC2_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC2_IfcVibrationIsolator_type, + IFC4X3_RC2_IfcVibrationIsolatorType_type, + IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type, + IFC4X3_RC2_IfcVirtualElement_type, + IFC4X3_RC2_IfcVirtualGridIntersection_type, + IFC4X3_RC2_IfcVoidingFeature_type, + IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type, + IFC4X3_RC2_IfcVoidStratum_type, + IFC4X3_RC2_IfcVolumeMeasure_type, + IFC4X3_RC2_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC2_IfcWall_type, + IFC4X3_RC2_IfcWallElementedCase_type, + IFC4X3_RC2_IfcWallStandardCase_type, + IFC4X3_RC2_IfcWallType_type, + IFC4X3_RC2_IfcWallTypeEnum_type, + IFC4X3_RC2_IfcWarpingConstantMeasure_type, + IFC4X3_RC2_IfcWarpingMomentMeasure_type, + IFC4X3_RC2_IfcWarpingStiffnessSelect_type, + IFC4X3_RC2_IfcWasteTerminal_type, + IFC4X3_RC2_IfcWasteTerminalType_type, + IFC4X3_RC2_IfcWasteTerminalTypeEnum_type, + IFC4X3_RC2_IfcWaterStratum_type, + IFC4X3_RC2_IfcWindow_type, + IFC4X3_RC2_IfcWindowLiningProperties_type, + IFC4X3_RC2_IfcWindowPanelOperationEnum_type, + IFC4X3_RC2_IfcWindowPanelPositionEnum_type, + IFC4X3_RC2_IfcWindowPanelProperties_type, + IFC4X3_RC2_IfcWindowStandardCase_type, + IFC4X3_RC2_IfcWindowStyle_type, + IFC4X3_RC2_IfcWindowStyleConstructionEnum_type, + IFC4X3_RC2_IfcWindowStyleOperationEnum_type, + IFC4X3_RC2_IfcWindowType_type, + IFC4X3_RC2_IfcWindowTypeEnum_type, + IFC4X3_RC2_IfcWindowTypePartitioningEnum_type, + IFC4X3_RC2_IfcWorkCalendar_type, + IFC4X3_RC2_IfcWorkCalendarTypeEnum_type, + IFC4X3_RC2_IfcWorkControl_type, + IFC4X3_RC2_IfcWorkPlan_type, + IFC4X3_RC2_IfcWorkPlanTypeEnum_type, + IFC4X3_RC2_IfcWorkSchedule_type, + IFC4X3_RC2_IfcWorkScheduleTypeEnum_type, + IFC4X3_RC2_IfcWorkTime_type, + IFC4X3_RC2_IfcZone_type, + IFC4X3_RC2_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3882], declarations, new IFC4X3_RC2_instance_factory()); } diff --git a/src/ifcparse/Ifc4x3_rc2.cpp b/src/ifcparse/Ifc4x3_rc2.cpp index f461d1734d..40830021fe 100644 --- a/src/ifcparse/Ifc4x3_rc2.cpp +++ b/src/ifcparse/Ifc4x3_rc2.cpp @@ -1388,20 +1388,11 @@ Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcActionRequestTypeEnum::Value Ifc4x3_rc2::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcActionRequestTypeEnum::Value) IFC4X3_RC2_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcActionRequestTypeEnum::operator Ifc4x3_rc2::IfcActionRequestTypeEnum::Value() const { @@ -1430,40 +1421,11 @@ Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcActionSourceTypeEnum::Value Ifc4x3_rc2::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcActionSourceTypeEnum::Value) IFC4X3_RC2_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcActionSourceTypeEnum::operator Ifc4x3_rc2::IfcActionSourceTypeEnum::Value() const { @@ -1492,18 +1454,11 @@ Ifc4x3_rc2::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcActionTypeEnum::Value Ifc4x3_rc2::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4x3_rc2::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x3_rc2::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4x3_rc2::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcActionTypeEnum::Value) IFC4X3_RC2_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcActionTypeEnum::operator Ifc4x3_rc2::IfcActionTypeEnum::Value() const { @@ -1532,20 +1487,11 @@ Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcActuatorTypeEnum::Value Ifc4x3_rc2::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcActuatorTypeEnum::Value) IFC4X3_RC2_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcActuatorTypeEnum::operator Ifc4x3_rc2::IfcActuatorTypeEnum::Value() const { @@ -1574,18 +1520,11 @@ Ifc4x3_rc2::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAddressTypeEnum::Value Ifc4x3_rc2::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc2::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc2::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4x3_rc2::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x3_rc2::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAddressTypeEnum::Value) IFC4X3_RC2_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAddressTypeEnum::operator Ifc4x3_rc2::IfcAddressTypeEnum::Value() const { @@ -1614,18 +1553,11 @@ Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::Value Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::Value) IFC4X3_RC2_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::operator Ifc4x3_rc2::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1654,19 +1586,11 @@ Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAirTerminalTypeEnum::Value Ifc4x3_rc2::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAirTerminalTypeEnum::Value) IFC4X3_RC2_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAirTerminalTypeEnum::operator Ifc4x3_rc2::IfcAirTerminalTypeEnum::Value() const { @@ -1695,24 +1619,11 @@ Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(con } const char* Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X3_RC2_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x3_rc2::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1741,23 +1652,11 @@ Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "RAILWAYCROCODILE", "RAILWAYDETONATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAlarmTypeEnum::Value Ifc4x3_rc2::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "RAILWAYCROCODILE") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYCROCODILE; - if (s == "RAILWAYDETONATOR") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYDETONATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAlarmTypeEnum::Value) IFC4X3_RC2_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAlarmTypeEnum::operator Ifc4x3_rc2::IfcAlarmTypeEnum::Value() const { @@ -1786,20 +1685,11 @@ Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(con } const char* Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTCANT", "LINEARTRANSITION", "BIQUADRATICPARABOLA", "BLOSSCURVE", "COSINECURVE", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::Value Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTCANT") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_CONSTANTCANT; - if (s == "LINEARTRANSITION") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_LINEARTRANSITION; - if (s == "BIQUADRATICPARABOLA") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_BIQUADRATICPARABOLA; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_BLOSSCURVE; - if (s == "COSINECURVE") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_COSINECURVE; - if (s == "SINECURVE") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::Value) IFC4X3_RC2_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::operator Ifc4x3_rc2::IfcAlignmentCantSegmentTypeEnum::Value() const { @@ -1828,22 +1718,11 @@ Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegment } const char* Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINE", "CIRCULARARC", "CLOTHOID", "CUBICSPIRAL", "BIQUADRATICPARABOLA", "BLOSSCURVE", "COSINECURVE", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::Value Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "LINE") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_LINE; - if (s == "CIRCULARARC") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CIRCULARARC; - if (s == "CLOTHOID") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CLOTHOID; - if (s == "CUBICSPIRAL") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CUBICSPIRAL; - if (s == "BIQUADRATICPARABOLA") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_BIQUADRATICPARABOLA; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_BLOSSCURVE; - if (s == "COSINECURVE") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_COSINECURVE; - if (s == "SINECURVE") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::Value) IFC4X3_RC2_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::operator Ifc4x3_rc2::IfcAlignmentHorizontalSegmentTypeEnum::Value() const { @@ -1872,15 +1751,11 @@ Ifc4x3_rc2::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAlignmentTypeEnum::Value Ifc4x3_rc2::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAlignmentTypeEnum::Value) IFC4X3_RC2_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAlignmentTypeEnum::operator Ifc4x3_rc2::IfcAlignmentTypeEnum::Value() const { @@ -1909,17 +1784,11 @@ Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType } const char* Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTGRADIENT", "CIRCULARARC", "PARABOLICARC", "CLOTHOID" }; - return names[v]; + return IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::Value Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTGRADIENT") return ::Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT; - if (s == "CIRCULARARC") return ::Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CIRCULARARC; - if (s == "PARABOLICARC") return ::Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_PARABOLICARC; - if (s == "CLOTHOID") return ::Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CLOTHOID; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::Value) IFC4X3_RC2_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::operator Ifc4x3_rc2::IfcAlignmentVerticalSegmentTypeEnum::Value() const { @@ -1948,18 +1817,11 @@ Ifc4x3_rc2::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAnalysisModelTypeEnum::Value Ifc4x3_rc2::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x3_rc2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x3_rc2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x3_rc2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAnalysisModelTypeEnum::Value) IFC4X3_RC2_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAnalysisModelTypeEnum::operator Ifc4x3_rc2::IfcAnalysisModelTypeEnum::Value() const { @@ -1988,19 +1850,11 @@ Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::Value) IFC4X3_RC2_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::operator Ifc4x3_rc2::IfcAnalysisTheoryTypeEnum::Value() const { @@ -2029,24 +1883,11 @@ Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcAnnotationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSUMEDPOINT", "ASBUILTAREA", "ASBUILTLINE", "NON_PHYSICAL_SIGNAL", "ASSUMEDLINE", "WIDTHEVENT", "ASSUMEDAREA", "SUPERELEVATIONEVENT", "ASBUILTPOINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAnnotationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAnnotationTypeEnum::Value Ifc4x3_rc2::IfcAnnotationTypeEnum::FromString(const std::string& s) { - if (s == "ASSUMEDPOINT") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDPOINT; - if (s == "ASBUILTAREA") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTAREA; - if (s == "ASBUILTLINE") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTLINE; - if (s == "NON_PHYSICAL_SIGNAL") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_NON_PHYSICAL_SIGNAL; - if (s == "ASSUMEDLINE") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDLINE; - if (s == "WIDTHEVENT") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_WIDTHEVENT; - if (s == "ASSUMEDAREA") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDAREA; - if (s == "SUPERELEVATIONEVENT") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_SUPERELEVATIONEVENT; - if (s == "ASBUILTPOINT") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAnnotationTypeEnum::IfcAnnotationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAnnotationTypeEnum::Value) IFC4X3_RC2_IfcAnnotationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAnnotationTypeEnum::operator Ifc4x3_rc2::IfcAnnotationTypeEnum::Value() const { @@ -2075,17 +1916,11 @@ Ifc4x3_rc2::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::stri } const char* Ifc4x3_rc2::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X3_RC2_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcArithmeticOperatorEnum::Value Ifc4x3_rc2::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x3_rc2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x3_rc2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x3_rc2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x3_rc2::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcArithmeticOperatorEnum::Value) IFC4X3_RC2_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcArithmeticOperatorEnum::operator Ifc4x3_rc2::IfcArithmeticOperatorEnum::Value() const { @@ -2114,16 +1949,11 @@ Ifc4x3_rc2::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAssemblyPlaceEnum::Value Ifc4x3_rc2::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4x3_rc2::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4x3_rc2::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAssemblyPlaceEnum::Value) IFC4X3_RC2_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAssemblyPlaceEnum::operator Ifc4x3_rc2::IfcAssemblyPlaceEnum::Value() const { @@ -2152,27 +1982,11 @@ Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(con } const char* Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "RAILWAY_COMMUNICATION_TERMINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::Value Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "RAILWAY_COMMUNICATION_TERMINAL") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RAILWAY_COMMUNICATION_TERMINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::Value) IFC4X3_RC2_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::operator Ifc4x3_rc2::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -2201,19 +2015,11 @@ Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x3_rc2::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC2_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBSplineCurveForm::Value Ifc4x3_rc2::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc2::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBSplineCurveForm::Value) IFC4X3_RC2_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBSplineCurveForm::operator Ifc4x3_rc2::IfcBSplineCurveForm::Value() const { @@ -2242,24 +2048,11 @@ Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4x3_rc2::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC2_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBSplineSurfaceForm::Value Ifc4x3_rc2::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc2::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBSplineSurfaceForm::Value) IFC4X3_RC2_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBSplineSurfaceForm::operator Ifc4x3_rc2::IfcBSplineSurfaceForm::Value() const { @@ -2288,27 +2081,11 @@ Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "GIRDER_SEGMENT", "DIAPHRAGM", "PIERCAP", "HATSTONE", "CORNICE", "EDGEBEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBeamTypeEnum::Value Ifc4x3_rc2::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "GIRDER_SEGMENT") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_GIRDER_SEGMENT; - if (s == "DIAPHRAGM") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_DIAPHRAGM; - if (s == "PIERCAP") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_PIERCAP; - if (s == "HATSTONE") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_HATSTONE; - if (s == "CORNICE") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_CORNICE; - if (s == "EDGEBEAM") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_EDGEBEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBeamTypeEnum::Value) IFC4X3_RC2_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBeamTypeEnum::operator Ifc4x3_rc2::IfcBeamTypeEnum::Value() const { @@ -2337,18 +2114,11 @@ Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(const } const char* Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXED_MOVEMENT", "GUIDED_LONGITUDINAL", "GUIDED_TRANSVERSAL", "FREE_MOVEMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBearingTypeDisplacementEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::Value Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::FromString(const std::string& s) { - if (s == "FIXED_MOVEMENT") return ::Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FIXED_MOVEMENT; - if (s == "GUIDED_LONGITUDINAL") return ::Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_LONGITUDINAL; - if (s == "GUIDED_TRANSVERSAL") return ::Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_TRANSVERSAL; - if (s == "FREE_MOVEMENT") return ::Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FREE_MOVEMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::Value) IFC4X3_RC2_IfcBearingTypeDisplacementEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::operator Ifc4x3_rc2::IfcBearingTypeDisplacementEnum::Value() const { @@ -2377,23 +2147,11 @@ Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBearingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYLINDRICAL", "SPHERICAL", "ELASTOMERIC", "POT", "GUIDE", "ROCKER", "ROLLER", "DISK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBearingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBearingTypeEnum::Value Ifc4x3_rc2::IfcBearingTypeEnum::FromString(const std::string& s) { - if (s == "CYLINDRICAL") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_CYLINDRICAL; - if (s == "SPHERICAL") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_SPHERICAL; - if (s == "ELASTOMERIC") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_ELASTOMERIC; - if (s == "POT") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_POT; - if (s == "GUIDE") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_GUIDE; - if (s == "ROCKER") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_ROCKER; - if (s == "ROLLER") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_ROLLER; - if (s == "DISK") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_DISK; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBearingTypeEnum::IfcBearingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBearingTypeEnum::Value) IFC4X3_RC2_IfcBearingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBearingTypeEnum::operator Ifc4x3_rc2::IfcBearingTypeEnum::Value() const { @@ -2422,23 +2180,11 @@ Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4X3_RC2_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBenchmarkEnum::Value Ifc4x3_rc2::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4x3_rc2::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBenchmarkEnum::Value) IFC4X3_RC2_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBenchmarkEnum::operator Ifc4x3_rc2::IfcBenchmarkEnum::Value() const { @@ -2467,17 +2213,11 @@ Ifc4x3_rc2::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBoilerTypeEnum::Value Ifc4x3_rc2::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4x3_rc2::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4x3_rc2::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBoilerTypeEnum::Value) IFC4X3_RC2_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBoilerTypeEnum::operator Ifc4x3_rc2::IfcBoilerTypeEnum::Value() const { @@ -2506,16 +2246,11 @@ Ifc4x3_rc2::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x3_rc2::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4X3_RC2_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBooleanOperator::Value Ifc4x3_rc2::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4x3_rc2::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4x3_rc2::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4x3_rc2::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBooleanOperator::Value) IFC4X3_RC2_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBooleanOperator::operator Ifc4x3_rc2::IfcBooleanOperator::Value() const { @@ -2544,25 +2279,11 @@ Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBridgePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "DECK", "DECK_SEGMENT", "FOUNDATION", "PIER", "PIER_SEGMENT", "PYLON", "SUBSTRUCTURE", "SUPERSTRUCTURE", "SURFACESTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBridgePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBridgePartTypeEnum::Value Ifc4x3_rc2::IfcBridgePartTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_ABUTMENT; - if (s == "DECK") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_DECK; - if (s == "DECK_SEGMENT") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_DECK_SEGMENT; - if (s == "FOUNDATION") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_FOUNDATION; - if (s == "PIER") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_PIER; - if (s == "PIER_SEGMENT") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_PIER_SEGMENT; - if (s == "PYLON") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_PYLON; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_SUPERSTRUCTURE; - if (s == "SURFACESTRUCTURE") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_SURFACESTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBridgePartTypeEnum::IfcBridgePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBridgePartTypeEnum::Value) IFC4X3_RC2_IfcBridgePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBridgePartTypeEnum::operator Ifc4x3_rc2::IfcBridgePartTypeEnum::Value() const { @@ -2591,23 +2312,11 @@ Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBridgeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHED", "CABLE_STAYED", "CANTILEVER", "CULVERT", "FRAMEWORK", "GIRDER", "SUSPENSION", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBridgeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBridgeTypeEnum::Value Ifc4x3_rc2::IfcBridgeTypeEnum::FromString(const std::string& s) { - if (s == "ARCHED") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_ARCHED; - if (s == "CABLE_STAYED") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_CABLE_STAYED; - if (s == "CANTILEVER") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_CANTILEVER; - if (s == "CULVERT") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_CULVERT; - if (s == "FRAMEWORK") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_FRAMEWORK; - if (s == "GIRDER") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_GIRDER; - if (s == "SUSPENSION") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_SUSPENSION; - if (s == "TRUSS") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBridgeTypeEnum::IfcBridgeType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBridgeTypeEnum::Value) IFC4X3_RC2_IfcBridgeTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBridgeTypeEnum::operator Ifc4x3_rc2::IfcBridgeTypeEnum::Value() const { @@ -2636,20 +2345,11 @@ Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const } const char* Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "APRON", "ARMOURUNIT", "SAFETYCAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::Value Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "APRON") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_APRON; - if (s == "ARMOURUNIT") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_ARMOURUNIT; - if (s == "SAFETYCAGE") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_SAFETYCAGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::Value) IFC4X3_RC2_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::operator Ifc4x3_rc2::IfcBuildingElementPartTypeEnum::Value() const { @@ -2678,20 +2378,11 @@ Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(con } const char* Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::Value Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::Value) IFC4X3_RC2_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::operator Ifc4x3_rc2::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2720,24 +2411,11 @@ Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "REINFORCING", "PRESTRESSING", "EROSIONPREVENTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBuildingSystemTypeEnum::Value Ifc4x3_rc2::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "REINFORCING") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_REINFORCING; - if (s == "PRESTRESSING") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_PRESTRESSING; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_EROSIONPREVENTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBuildingSystemTypeEnum::Value) IFC4X3_RC2_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBuildingSystemTypeEnum::operator Ifc4x3_rc2::IfcBuildingSystemTypeEnum::Value() const { @@ -2766,27 +2444,11 @@ Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcBuiltSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "REINFORCING", "MOORING", "OUTERSHELL", "TRACKCIRCUIT", "EROSIONPREVENTION", "FOUNDATION", "LOADBEARING", "SHADING", "FENESTRATION", "MOORINGSYSTEM", "TRANSPORT", "PRESTRESSING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBuiltSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBuiltSystemTypeEnum::Value Ifc4x3_rc2::IfcBuiltSystemTypeEnum::FromString(const std::string& s) { - if (s == "REINFORCING") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_REINFORCING; - if (s == "MOORING") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_OUTERSHELL; - if (s == "TRACKCIRCUIT") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRACKCIRCUIT; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_EROSIONPREVENTION; - if (s == "FOUNDATION") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_LOADBEARING; - if (s == "SHADING") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_SHADING; - if (s == "FENESTRATION") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FENESTRATION; - if (s == "MOORINGSYSTEM") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORINGSYSTEM; - if (s == "TRANSPORT") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRANSPORT; - if (s == "PRESTRESSING") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_PRESTRESSING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBuiltSystemTypeEnum::Value) IFC4X3_RC2_IfcBuiltSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBuiltSystemTypeEnum::operator Ifc4x3_rc2::IfcBuiltSystemTypeEnum::Value() const { @@ -2815,15 +2477,11 @@ Ifc4x3_rc2::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcBurnerTypeEnum::Value Ifc4x3_rc2::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcBurnerTypeEnum::Value) IFC4X3_RC2_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcBurnerTypeEnum::operator Ifc4x3_rc2::IfcBurnerTypeEnum::Value() const { @@ -2852,19 +2510,11 @@ Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const } const char* Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::Value Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::Value) IFC4X3_RC2_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::operator Ifc4x3_rc2::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2893,22 +2543,11 @@ Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const } const char* Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "CABLEBRACKET", "CATENARYWIRE", "DROPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::Value Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "CABLEBRACKET") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLEBRACKET; - if (s == "CATENARYWIRE") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CATENARYWIRE; - if (s == "DROPPER") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_DROPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::Value) IFC4X3_RC2_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::operator Ifc4x3_rc2::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2937,21 +2576,11 @@ Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "FANOUT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCableFittingTypeEnum::Value Ifc4x3_rc2::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "FANOUT") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_FANOUT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCableFittingTypeEnum::Value) IFC4X3_RC2_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCableFittingTypeEnum::operator Ifc4x3_rc2::IfcCableFittingTypeEnum::Value() const { @@ -2980,25 +2609,11 @@ Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "CONTACTWIRESEGMENT", "FIBERSEGMENT", "FIBERTUBE", "OPTICALCABLESEGMENT", "STITCHWIRE", "WIREPAIRSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCableSegmentTypeEnum::Value Ifc4x3_rc2::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "CONTACTWIRESEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONTACTWIRESEGMENT; - if (s == "FIBERSEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERSEGMENT; - if (s == "FIBERTUBE") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERTUBE; - if (s == "OPTICALCABLESEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_OPTICALCABLESEGMENT; - if (s == "STITCHWIRE") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_STITCHWIRE; - if (s == "WIREPAIRSEGMENT") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_WIREPAIRSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCableSegmentTypeEnum::Value) IFC4X3_RC2_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCableSegmentTypeEnum::operator Ifc4x3_rc2::IfcCableSegmentTypeEnum::Value() const { @@ -3027,17 +2642,11 @@ Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std } const char* Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WELL", "CAISSON", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::Value Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::FromString(const std::string& s) { - if (s == "WELL") return ::Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_WELL; - if (s == "CAISSON") return ::Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_CAISSON; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::Value) IFC4X3_RC2_IfcCaissonFoundationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::operator Ifc4x3_rc2::IfcCaissonFoundationTypeEnum::Value() const { @@ -3066,18 +2675,11 @@ Ifc4x3_rc2::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcChangeActionEnum::Value Ifc4x3_rc2::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4x3_rc2::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4x3_rc2::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4x3_rc2::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x3_rc2::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcChangeActionEnum::Value) IFC4X3_RC2_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcChangeActionEnum::operator Ifc4x3_rc2::IfcChangeActionEnum::Value() const { @@ -3106,18 +2708,11 @@ Ifc4x3_rc2::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcChillerTypeEnum::Value Ifc4x3_rc2::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc2::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc2::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x3_rc2::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcChillerTypeEnum::Value) IFC4X3_RC2_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcChillerTypeEnum::operator Ifc4x3_rc2::IfcChillerTypeEnum::Value() const { @@ -3146,15 +2741,11 @@ Ifc4x3_rc2::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcChimneyTypeEnum::Value Ifc4x3_rc2::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcChimneyTypeEnum::Value) IFC4X3_RC2_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcChimneyTypeEnum::operator Ifc4x3_rc2::IfcChimneyTypeEnum::Value() const { @@ -3183,22 +2774,11 @@ Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCoilTypeEnum::Value Ifc4x3_rc2::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCoilTypeEnum::Value) IFC4X3_RC2_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCoilTypeEnum::operator Ifc4x3_rc2::IfcCoilTypeEnum::Value() const { @@ -3227,20 +2807,11 @@ Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "PIERSTEM", "PIERSTEM_SEGMENT", "STANDCOLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcColumnTypeEnum::Value Ifc4x3_rc2::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "PIERSTEM") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_PIERSTEM; - if (s == "PIERSTEM_SEGMENT") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_PIERSTEM_SEGMENT; - if (s == "STANDCOLUMN") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_STANDCOLUMN; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcColumnTypeEnum::Value) IFC4X3_RC2_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcColumnTypeEnum::operator Ifc4x3_rc2::IfcColumnTypeEnum::Value() const { @@ -3269,36 +2840,11 @@ Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEn } const char* Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "AUTOMATON", "INTELLIGENT_PERIPHERAL", "IP_NETWORK_EQUIPMENT", "OPTICAL_NETWORK_UNIT", "TELECOMMAND", "TELEPHONYEXCHANGE", "TRANSITIONCOMPONENT", "TRANSPONDER", "TRANSPORTEQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::Value Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "AUTOMATON") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_AUTOMATON; - if (s == "INTELLIGENT_PERIPHERAL") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_INTELLIGENT_PERIPHERAL; - if (s == "IP_NETWORK_EQUIPMENT") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_IP_NETWORK_EQUIPMENT; - if (s == "OPTICAL_NETWORK_UNIT") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICAL_NETWORK_UNIT; - if (s == "TELECOMMAND") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELECOMMAND; - if (s == "TELEPHONYEXCHANGE") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELEPHONYEXCHANGE; - if (s == "TRANSITIONCOMPONENT") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSITIONCOMPONENT; - if (s == "TRANSPONDER") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPONDER; - if (s == "TRANSPORTEQUIPMENT") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::Value) IFC4X3_RC2_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::operator Ifc4x3_rc2::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -3327,15 +2873,11 @@ Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEn } const char* Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X3_RC2_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x3_rc2::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -3364,30 +2906,11 @@ Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCompressorTypeEnum::Value Ifc4x3_rc2::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCompressorTypeEnum::Value) IFC4X3_RC2_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCompressorTypeEnum::operator Ifc4x3_rc2::IfcCompressorTypeEnum::Value() const { @@ -3416,22 +2939,11 @@ Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCondenserTypeEnum::Value Ifc4x3_rc2::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCondenserTypeEnum::Value) IFC4X3_RC2_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCondenserTypeEnum::operator Ifc4x3_rc2::IfcCondenserTypeEnum::Value() const { @@ -3460,17 +2972,11 @@ Ifc4x3_rc2::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcConnectionTypeEnum::Value Ifc4x3_rc2::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4x3_rc2::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x3_rc2::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4x3_rc2::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcConnectionTypeEnum::Value) IFC4X3_RC2_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcConnectionTypeEnum::operator Ifc4x3_rc2::IfcConnectionTypeEnum::Value() const { @@ -3499,18 +3005,11 @@ Ifc4x3_rc2::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcConstraintEnum::Value Ifc4x3_rc2::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4x3_rc2::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x3_rc2::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4x3_rc2::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcConstraintEnum::Value) IFC4X3_RC2_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcConstraintEnum::operator Ifc4x3_rc2::IfcConstraintEnum::Value() const { @@ -3539,23 +3038,11 @@ Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentRe } const char* Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X3_RC2_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x3_rc2::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -3584,24 +3071,11 @@ Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialReso } const char* Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X3_RC2_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x3_rc2::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3630,17 +3104,11 @@ Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResour } const char* Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::Value) IFC4X3_RC2_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::operator Ifc4x3_rc2::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3669,20 +3137,11 @@ Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcControllerTypeEnum::Value Ifc4x3_rc2::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcControllerTypeEnum::Value) IFC4X3_RC2_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcControllerTypeEnum::operator Ifc4x3_rc2::IfcControllerTypeEnum::Value() const { @@ -3711,19 +3170,11 @@ Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::st } const char* Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHUTECONVEYOR", "BELTCONVEYOR", "SCREWCONVEYOR", "BUCKETCONVEYOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::Value Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CHUTECONVEYOR") return ::Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_CHUTECONVEYOR; - if (s == "BELTCONVEYOR") return ::Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BELTCONVEYOR; - if (s == "SCREWCONVEYOR") return ::Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_SCREWCONVEYOR; - if (s == "BUCKETCONVEYOR") return ::Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BUCKETCONVEYOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::Value) IFC4X3_RC2_IfcConveyorSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::operator Ifc4x3_rc2::IfcConveyorSegmentTypeEnum::Value() const { @@ -3752,17 +3203,11 @@ Ifc4x3_rc2::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCooledBeamTypeEnum::Value Ifc4x3_rc2::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x3_rc2::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x3_rc2::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCooledBeamTypeEnum::Value) IFC4X3_RC2_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCooledBeamTypeEnum::operator Ifc4x3_rc2::IfcCooledBeamTypeEnum::Value() const { @@ -3791,18 +3236,11 @@ Ifc4x3_rc2::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCoolingTowerTypeEnum::Value Ifc4x3_rc2::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4x3_rc2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x3_rc2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x3_rc2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCoolingTowerTypeEnum::Value) IFC4X3_RC2_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCoolingTowerTypeEnum::operator Ifc4x3_rc2::IfcCoolingTowerTypeEnum::Value() const { @@ -3831,15 +3269,11 @@ Ifc4x3_rc2::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCostItemTypeEnum::Value Ifc4x3_rc2::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCostItemTypeEnum::Value) IFC4X3_RC2_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCostItemTypeEnum::operator Ifc4x3_rc2::IfcCostItemTypeEnum::Value() const { @@ -3868,22 +3302,11 @@ Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCostScheduleTypeEnum::Value Ifc4x3_rc2::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCostScheduleTypeEnum::Value) IFC4X3_RC2_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCostScheduleTypeEnum::operator Ifc4x3_rc2::IfcCostScheduleTypeEnum::Value() const { @@ -3912,21 +3335,11 @@ Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCourseTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARMOUR", "FILTER", "BALLASTBED", "CORE", "PAVEMENT", "PROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCourseTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCourseTypeEnum::Value Ifc4x3_rc2::IfcCourseTypeEnum::FromString(const std::string& s) { - if (s == "ARMOUR") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_ARMOUR; - if (s == "FILTER") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_FILTER; - if (s == "BALLASTBED") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_BALLASTBED; - if (s == "CORE") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_CORE; - if (s == "PAVEMENT") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_PAVEMENT; - if (s == "PROTECTION") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_PROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCourseTypeEnum::IfcCourseType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCourseTypeEnum::Value) IFC4X3_RC2_IfcCourseTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCourseTypeEnum::operator Ifc4x3_rc2::IfcCourseTypeEnum::Value() const { @@ -3955,26 +3368,11 @@ Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "COPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCoveringTypeEnum::Value Ifc4x3_rc2::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "COPING") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_COPING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCoveringTypeEnum::Value) IFC4X3_RC2_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCoveringTypeEnum::operator Ifc4x3_rc2::IfcCoveringTypeEnum::Value() const { @@ -4003,17 +3401,11 @@ Ifc4x3_rc2::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCrewResourceTypeEnum::Value Ifc4x3_rc2::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc2::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc2::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCrewResourceTypeEnum::Value) IFC4X3_RC2_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCrewResourceTypeEnum::operator Ifc4x3_rc2::IfcCrewResourceTypeEnum::Value() const { @@ -4042,15 +3434,11 @@ Ifc4x3_rc2::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCurtainWallTypeEnum::Value Ifc4x3_rc2::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCurtainWallTypeEnum::Value) IFC4X3_RC2_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCurtainWallTypeEnum::operator Ifc4x3_rc2::IfcCurtainWallTypeEnum::Value() const { @@ -4079,17 +3467,11 @@ Ifc4x3_rc2::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::stri } const char* Ifc4x3_rc2::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcCurveInterpolationEnum::Value Ifc4x3_rc2::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x3_rc2::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x3_rc2::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x3_rc2::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcCurveInterpolationEnum::Value) IFC4X3_RC2_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcCurveInterpolationEnum::operator Ifc4x3_rc2::IfcCurveInterpolationEnum::Value() const { @@ -4118,26 +3500,11 @@ Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDamperTypeEnum::Value Ifc4x3_rc2::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDamperTypeEnum::Value) IFC4X3_RC2_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDamperTypeEnum::operator Ifc4x3_rc2::IfcDamperTypeEnum::Value() const { @@ -4166,18 +3533,11 @@ Ifc4x3_rc2::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDataOriginEnum::Value Ifc4x3_rc2::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x3_rc2::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x3_rc2::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x3_rc2::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDataOriginEnum::Value) IFC4X3_RC2_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDataOriginEnum::operator Ifc4x3_rc2::IfcDataOriginEnum::Value() const { @@ -4206,66 +3566,11 @@ Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDerivedUnitEnum::Value Ifc4x3_rc2::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDerivedUnitEnum::Value) IFC4X3_RC2_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDerivedUnitEnum::operator Ifc4x3_rc2::IfcDerivedUnitEnum::Value() const { @@ -4294,15 +3599,11 @@ Ifc4x3_rc2::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4X3_RC2_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDirectionSenseEnum::Value Ifc4x3_rc2::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc2::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc2::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDirectionSenseEnum::Value) IFC4X3_RC2_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDirectionSenseEnum::operator Ifc4x3_rc2::IfcDirectionSenseEnum::Value() const { @@ -4331,32 +3632,11 @@ Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std } const char* Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 19 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "EXPANSION_JOINT_DEVICE", "BIRDPROTECTION", "CABLEARRANGER", "INSULATOR", "LOCK", "TENSIONINGEQUIPMENT", "RAILPAD", "SLIDINGCHAIR", "PANEL_STRENGTHENING", "RAILBRACE", "ELASTIC_CUSHION", "SOUNDABSORPTION", "RAIL_LUBRICATION", "RAIL_MECHANICAL_EQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::Value Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "EXPANSION_JOINT_DEVICE") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_EXPANSION_JOINT_DEVICE; - if (s == "BIRDPROTECTION") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BIRDPROTECTION; - if (s == "CABLEARRANGER") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_CABLEARRANGER; - if (s == "INSULATOR") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_INSULATOR; - if (s == "LOCK") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_LOCK; - if (s == "TENSIONINGEQUIPMENT") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_TENSIONINGEQUIPMENT; - if (s == "RAILPAD") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILPAD; - if (s == "SLIDINGCHAIR") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SLIDINGCHAIR; - if (s == "PANEL_STRENGTHENING") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_PANEL_STRENGTHENING; - if (s == "RAILBRACE") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILBRACE; - if (s == "ELASTIC_CUSHION") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ELASTIC_CUSHION; - if (s == "SOUNDABSORPTION") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SOUNDABSORPTION; - if (s == "RAIL_LUBRICATION") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_LUBRICATION; - if (s == "RAIL_MECHANICAL_EQUIPMENT") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_MECHANICAL_EQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::Value) IFC4X3_RC2_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::operator Ifc4x3_rc2::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -4385,20 +3665,11 @@ Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std } const char* Ifc4x3_rc2::IfcDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWITCHBOARD", "CONSUMERUNIT", "MOTORCONTROLCENTRE", "DISTRIBUTIONFRAME", "DISTRIBUTIONBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDistributionBoardTypeEnum::Value Ifc4x3_rc2::IfcDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "SWITCHBOARD") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_SWITCHBOARD; - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_CONSUMERUNIT; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "DISTRIBUTIONFRAME") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONFRAME; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDistributionBoardTypeEnum::Value) IFC4X3_RC2_IfcDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDistributionBoardTypeEnum::operator Ifc4x3_rc2::IfcDistributionBoardTypeEnum::Value() const { @@ -4427,23 +3698,11 @@ Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElement } const char* Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::Value Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::Value) IFC4X3_RC2_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::operator Ifc4x3_rc2::IfcDistributionChamberElementTypeEnum::Value() const { @@ -4472,20 +3731,11 @@ Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std:: } const char* Ifc4x3_rc2::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "WIRELESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDistributionPortTypeEnum::Value Ifc4x3_rc2::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "WIRELESS") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_WIRELESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDistributionPortTypeEnum::Value) IFC4X3_RC2_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDistributionPortTypeEnum::operator Ifc4x3_rc2::IfcDistributionPortTypeEnum::Value() const { @@ -4514,60 +3764,11 @@ Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::stri } const char* Ifc4x3_rc2::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 47 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "CATENARY_SYSTEM", "OVERHEAD_CONTACTLINE_SYSTEM", "RETURN_CIRCUIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDistributionSystemEnum::Value Ifc4x3_rc2::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "CATENARY_SYSTEM") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_CATENARY_SYSTEM; - if (s == "OVERHEAD_CONTACTLINE_SYSTEM") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_OVERHEAD_CONTACTLINE_SYSTEM; - if (s == "RETURN_CIRCUIT") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_RETURN_CIRCUIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDistributionSystemEnum::Value) IFC4X3_RC2_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDistributionSystemEnum::operator Ifc4x3_rc2::IfcDistributionSystemEnum::Value() const { @@ -4596,19 +3797,11 @@ Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const } const char* Ifc4x3_rc2::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDocumentConfidentialityEnum::Value Ifc4x3_rc2::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDocumentConfidentialityEnum::Value) IFC4X3_RC2_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDocumentConfidentialityEnum::operator Ifc4x3_rc2::IfcDocumentConfidentialityEnum::Value() const { @@ -4637,18 +3830,11 @@ Ifc4x3_rc2::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDocumentStatusEnum::Value Ifc4x3_rc2::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x3_rc2::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4x3_rc2::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4x3_rc2::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4x3_rc2::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDocumentStatusEnum::Value) IFC4X3_RC2_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDocumentStatusEnum::operator Ifc4x3_rc2::IfcDocumentStatusEnum::Value() const { @@ -4677,22 +3863,11 @@ Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::stri } const char* Ifc4x3_rc2::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDoorPanelOperationEnum::Value Ifc4x3_rc2::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDoorPanelOperationEnum::Value) IFC4X3_RC2_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDoorPanelOperationEnum::operator Ifc4x3_rc2::IfcDoorPanelOperationEnum::Value() const { @@ -4721,17 +3896,11 @@ Ifc4x3_rc2::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string } const char* Ifc4x3_rc2::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDoorPanelPositionEnum::Value Ifc4x3_rc2::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDoorPanelPositionEnum::Value) IFC4X3_RC2_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDoorPanelPositionEnum::operator Ifc4x3_rc2::IfcDoorPanelPositionEnum::Value() const { @@ -4760,22 +3929,11 @@ Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std } const char* Ifc4x3_rc2::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDoorStyleConstructionEnum::Value Ifc4x3_rc2::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDoorStyleConstructionEnum::Value) IFC4X3_RC2_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDoorStyleConstructionEnum::operator Ifc4x3_rc2::IfcDoorStyleConstructionEnum::Value() const { @@ -4804,31 +3962,11 @@ Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::stri } const char* Ifc4x3_rc2::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDoorStyleOperationEnum::Value Ifc4x3_rc2::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDoorStyleOperationEnum::Value) IFC4X3_RC2_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDoorStyleOperationEnum::operator Ifc4x3_rc2::IfcDoorStyleOperationEnum::Value() const { @@ -4857,20 +3995,11 @@ Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "BOOM_BARRIER", "TURNSTILE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDoorTypeEnum::Value Ifc4x3_rc2::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "BOOM_BARRIER") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_BOOM_BARRIER; - if (s == "TURNSTILE") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_TURNSTILE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDoorTypeEnum::Value) IFC4X3_RC2_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDoorTypeEnum::operator Ifc4x3_rc2::IfcDoorTypeEnum::Value() const { @@ -4899,33 +4028,11 @@ Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string } const char* Ifc4x3_rc2::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 20 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDoorTypeOperationEnum::Value Ifc4x3_rc2::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDoorTypeOperationEnum::Value) IFC4X3_RC2_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDoorTypeOperationEnum::operator Ifc4x3_rc2::IfcDoorTypeOperationEnum::Value() const { @@ -4954,22 +4061,11 @@ Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDuctFittingTypeEnum::Value Ifc4x3_rc2::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDuctFittingTypeEnum::Value) IFC4X3_RC2_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDuctFittingTypeEnum::operator Ifc4x3_rc2::IfcDuctFittingTypeEnum::Value() const { @@ -4998,17 +4094,11 @@ Ifc4x3_rc2::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDuctSegmentTypeEnum::Value Ifc4x3_rc2::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDuctSegmentTypeEnum::Value) IFC4X3_RC2_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDuctSegmentTypeEnum::operator Ifc4x3_rc2::IfcDuctSegmentTypeEnum::Value() const { @@ -5037,18 +4127,11 @@ Ifc4x3_rc2::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcDuctSilencerTypeEnum::Value Ifc4x3_rc2::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x3_rc2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x3_rc2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x3_rc2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcDuctSilencerTypeEnum::Value) IFC4X3_RC2_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcDuctSilencerTypeEnum::operator Ifc4x3_rc2::IfcDuctSilencerTypeEnum::Value() const { @@ -5077,24 +4160,11 @@ Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcEarthworksCutTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRENCH", "DREDGING", "EXCAVATION", "OVEREXCAVATION", "TOPSOILREMOVAL", "STEPEXCAVATION", "PAVEMENTMILLING", "CUT", "BASE_EXCAVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEarthworksCutTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEarthworksCutTypeEnum::Value Ifc4x3_rc2::IfcEarthworksCutTypeEnum::FromString(const std::string& s) { - if (s == "TRENCH") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TRENCH; - if (s == "DREDGING") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_DREDGING; - if (s == "EXCAVATION") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_EXCAVATION; - if (s == "OVEREXCAVATION") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_OVEREXCAVATION; - if (s == "TOPSOILREMOVAL") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TOPSOILREMOVAL; - if (s == "STEPEXCAVATION") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_STEPEXCAVATION; - if (s == "PAVEMENTMILLING") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_PAVEMENTMILLING; - if (s == "CUT") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_CUT; - if (s == "BASE_EXCAVATION") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_BASE_EXCAVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEarthworksCutTypeEnum::Value) IFC4X3_RC2_IfcEarthworksCutTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEarthworksCutTypeEnum::operator Ifc4x3_rc2::IfcEarthworksCutTypeEnum::Value() const { @@ -5123,22 +4193,11 @@ Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcEarthworksFillTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKFILL", "COUNTERWEIGHT", "SUBGRADE", "EMBANKMENT", "TRANSITIONSECTION", "SUBGRADEBED", "SLOPEFILL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEarthworksFillTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEarthworksFillTypeEnum::Value Ifc4x3_rc2::IfcEarthworksFillTypeEnum::FromString(const std::string& s) { - if (s == "BACKFILL") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_BACKFILL; - if (s == "COUNTERWEIGHT") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_COUNTERWEIGHT; - if (s == "SUBGRADE") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADE; - if (s == "EMBANKMENT") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_EMBANKMENT; - if (s == "TRANSITIONSECTION") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_TRANSITIONSECTION; - if (s == "SUBGRADEBED") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADEBED; - if (s == "SLOPEFILL") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SLOPEFILL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEarthworksFillTypeEnum::Value) IFC4X3_RC2_IfcEarthworksFillTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEarthworksFillTypeEnum::operator Ifc4x3_rc2::IfcEarthworksFillTypeEnum::Value() const { @@ -5167,31 +4226,11 @@ Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std } const char* Ifc4x3_rc2::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricApplianceTypeEnum::Value Ifc4x3_rc2::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricApplianceTypeEnum::Value) IFC4X3_RC2_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricApplianceTypeEnum::operator Ifc4x3_rc2::IfcElectricApplianceTypeEnum::Value() const { @@ -5220,19 +4259,11 @@ Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTy } const char* Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::Value Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::Value) IFC4X3_RC2_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::operator Ifc4x3_rc2::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -5261,24 +4292,11 @@ Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTy } const char* Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "CAPACITOR", "COMPENSATOR", "INDUCTOR", "RECHARGER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "CAPACITOR") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITOR; - if (s == "COMPENSATOR") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_COMPENSATOR; - if (s == "INDUCTOR") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTOR; - if (s == "RECHARGER") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_RECHARGER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X3_RC2_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x3_rc2::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -5307,16 +4325,11 @@ Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDevi } const char* Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONICFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::Value Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONICFILTER") return ::Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_ELECTRONICFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::Value) IFC4X3_RC2_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::operator Ifc4x3_rc2::IfcElectricFlowTreatmentDeviceTypeEnum::Value() const { @@ -5345,18 +4358,11 @@ Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std } const char* Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::Value Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::Value) IFC4X3_RC2_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::operator Ifc4x3_rc2::IfcElectricGeneratorTypeEnum::Value() const { @@ -5385,20 +4391,11 @@ Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricMotorTypeEnum::Value Ifc4x3_rc2::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricMotorTypeEnum::Value) IFC4X3_RC2_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricMotorTypeEnum::operator Ifc4x3_rc2::IfcElectricMotorTypeEnum::Value() const { @@ -5427,18 +4424,11 @@ Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const } const char* Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::Value Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::Value) IFC4X3_RC2_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::operator Ifc4x3_rc2::IfcElectricTimeControlTypeEnum::Value() const { @@ -5467,43 +4457,11 @@ Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::st } const char* Ifc4x3_rc2::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "ABUTMENT", "PIER", "PYLON", "CROSS_BRACING", "DECK", "MAST", "SIGNALASSEMBLY", "GRID", "SHELTER", "SUPPORTINGASSEMBLY", "SUSPENSIONASSEMBLY", "TRACTION_SWITCHING_ASSEMBLY", "TRACKPANEL", "TURNOUTPANEL", "DILATATIONPANEL", "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY", "ENTRANCEWORKS", "SUMPBUSTER", "TRAFFIC_CALMING_DEVICE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElementAssemblyTypeEnum::Value Ifc4x3_rc2::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "ABUTMENT") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ABUTMENT; - if (s == "PIER") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PIER; - if (s == "PYLON") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PYLON; - if (s == "CROSS_BRACING") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_CROSS_BRACING; - if (s == "DECK") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DECK; - if (s == "MAST") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_MAST; - if (s == "SIGNALASSEMBLY") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SIGNALASSEMBLY; - if (s == "GRID") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GRID; - if (s == "SHELTER") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SHELTER; - if (s == "SUPPORTINGASSEMBLY") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUPPORTINGASSEMBLY; - if (s == "SUSPENSIONASSEMBLY") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUSPENSIONASSEMBLY; - if (s == "TRACTION_SWITCHING_ASSEMBLY") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACTION_SWITCHING_ASSEMBLY; - if (s == "TRACKPANEL") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACKPANEL; - if (s == "TURNOUTPANEL") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TURNOUTPANEL; - if (s == "DILATATIONPANEL") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DILATATIONPANEL; - if (s == "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY; - if (s == "ENTRANCEWORKS") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ENTRANCEWORKS; - if (s == "SUMPBUSTER") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUMPBUSTER; - if (s == "TRAFFIC_CALMING_DEVICE") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRAFFIC_CALMING_DEVICE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElementAssemblyTypeEnum::Value) IFC4X3_RC2_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElementAssemblyTypeEnum::operator Ifc4x3_rc2::IfcElementAssemblyTypeEnum::Value() const { @@ -5532,16 +4490,11 @@ Ifc4x3_rc2::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::stri } const char* Ifc4x3_rc2::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X3_RC2_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcElementCompositionEnum::Value Ifc4x3_rc2::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc2::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc2::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc2::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcElementCompositionEnum::Value) IFC4X3_RC2_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcElementCompositionEnum::operator Ifc4x3_rc2::IfcElementCompositionEnum::Value() const { @@ -5570,17 +4523,11 @@ Ifc4x3_rc2::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEngineTypeEnum::Value Ifc4x3_rc2::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x3_rc2::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x3_rc2::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEngineTypeEnum::Value) IFC4X3_RC2_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEngineTypeEnum::operator Ifc4x3_rc2::IfcEngineTypeEnum::Value() const { @@ -5609,24 +4556,11 @@ Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std } const char* Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::Value Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::Value) IFC4X3_RC2_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::operator Ifc4x3_rc2::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -5655,21 +4589,11 @@ Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEvaporatorTypeEnum::Value Ifc4x3_rc2::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEvaporatorTypeEnum::Value) IFC4X3_RC2_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEvaporatorTypeEnum::operator Ifc4x3_rc2::IfcEvaporatorTypeEnum::Value() const { @@ -5698,19 +4622,11 @@ Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEventTriggerTypeEnum::Value Ifc4x3_rc2::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEventTriggerTypeEnum::Value) IFC4X3_RC2_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEventTriggerTypeEnum::operator Ifc4x3_rc2::IfcEventTriggerTypeEnum::Value() const { @@ -5739,18 +4655,11 @@ Ifc4x3_rc2::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcEventTypeEnum::Value Ifc4x3_rc2::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4x3_rc2::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4x3_rc2::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x3_rc2::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcEventTypeEnum::Value) IFC4X3_RC2_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcEventTypeEnum::operator Ifc4x3_rc2::IfcEventTypeEnum::Value() const { @@ -5779,19 +4688,11 @@ Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum } const char* Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::Value Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::Value) IFC4X3_RC2_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::operator Ifc4x3_rc2::IfcExternalSpatialElementTypeEnum::Value() const { @@ -5820,23 +4721,11 @@ Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const s } const char* Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SEGMENT", "ABOVEGROUND", "JUNCTION", "LEVELCROSSING", "BELOWGROUND", "SUBSTRUCTURE", "TERMINAL", "SUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::Value Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::FromString(const std::string& s) { - if (s == "SEGMENT") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SEGMENT; - if (s == "ABOVEGROUND") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_ABOVEGROUND; - if (s == "JUNCTION") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_JUNCTION; - if (s == "LEVELCROSSING") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_LEVELCROSSING; - if (s == "BELOWGROUND") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_BELOWGROUND; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUBSTRUCTURE; - if (s == "TERMINAL") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_TERMINAL; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::Value) IFC4X3_RC2_IfcFacilityPartCommonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::operator Ifc4x3_rc2::IfcFacilityPartCommonTypeEnum::Value() const { @@ -5865,19 +4754,11 @@ Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFacilityUsageEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LATERAL", "REGION", "VERTICAL", "LONGITUDINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFacilityUsageEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFacilityUsageEnum::Value Ifc4x3_rc2::IfcFacilityUsageEnum::FromString(const std::string& s) { - if (s == "LATERAL") return ::Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsage_LATERAL; - if (s == "REGION") return ::Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsage_REGION; - if (s == "VERTICAL") return ::Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsage_VERTICAL; - if (s == "LONGITUDINAL") return ::Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsage_LONGITUDINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsage_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFacilityUsageEnum::IfcFacilityUsage_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFacilityUsageEnum::Value) IFC4X3_RC2_IfcFacilityUsageEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFacilityUsageEnum::operator Ifc4x3_rc2::IfcFacilityUsageEnum::Value() const { @@ -5906,22 +4787,11 @@ Ifc4x3_rc2::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFanTypeEnum::Value Ifc4x3_rc2::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFanTypeEnum::Value) IFC4X3_RC2_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFanTypeEnum::operator Ifc4x3_rc2::IfcFanTypeEnum::Value() const { @@ -5950,18 +4820,11 @@ Ifc4x3_rc2::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFastenerTypeEnum::Value Ifc4x3_rc2::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x3_rc2::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x3_rc2::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x3_rc2::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFastenerTypeEnum::Value) IFC4X3_RC2_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFastenerTypeEnum::operator Ifc4x3_rc2::IfcFastenerTypeEnum::Value() const { @@ -5990,21 +4853,11 @@ Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFilterTypeEnum::Value Ifc4x3_rc2::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFilterTypeEnum::Value) IFC4X3_RC2_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFilterTypeEnum::operator Ifc4x3_rc2::IfcFilterTypeEnum::Value() const { @@ -6033,20 +4886,11 @@ Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEn } const char* Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X3_RC2_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x3_rc2::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -6075,17 +4919,11 @@ Ifc4x3_rc2::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFlowDirectionEnum::Value Ifc4x3_rc2::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4x3_rc2::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4x3_rc2::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4x3_rc2::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFlowDirectionEnum::Value) IFC4X3_RC2_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFlowDirectionEnum::operator Ifc4x3_rc2::IfcFlowDirectionEnum::Value() const { @@ -6114,25 +4952,11 @@ Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "COMBINED", "VOLTMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::Value Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "COMBINED") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_COMBINED; - if (s == "VOLTMETER") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::Value) IFC4X3_RC2_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::operator Ifc4x3_rc2::IfcFlowInstrumentTypeEnum::Value() const { @@ -6161,19 +4985,11 @@ Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFlowMeterTypeEnum::Value Ifc4x3_rc2::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFlowMeterTypeEnum::Value) IFC4X3_RC2_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFlowMeterTypeEnum::operator Ifc4x3_rc2::IfcFlowMeterTypeEnum::Value() const { @@ -6202,20 +5018,11 @@ Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFootingTypeEnum::Value Ifc4x3_rc2::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFootingTypeEnum::Value) IFC4X3_RC2_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFootingTypeEnum::operator Ifc4x3_rc2::IfcFootingTypeEnum::Value() const { @@ -6244,23 +5051,11 @@ Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "TECHNICALCABINET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcFurnitureTypeEnum::Value Ifc4x3_rc2::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "TECHNICALCABINET") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_TECHNICALCABINET; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcFurnitureTypeEnum::Value) IFC4X3_RC2_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcFurnitureTypeEnum::operator Ifc4x3_rc2::IfcFurnitureTypeEnum::Value() const { @@ -6289,17 +5084,11 @@ Ifc4x3_rc2::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std } const char* Ifc4x3_rc2::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "SOIL_BORING_POINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcGeographicElementTypeEnum::Value Ifc4x3_rc2::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4x3_rc2::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "SOIL_BORING_POINT") return ::Ifc4x3_rc2::IfcGeographicElementTypeEnum::IfcGeographicElementType_SOIL_BORING_POINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcGeographicElementTypeEnum::Value) IFC4X3_RC2_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcGeographicElementTypeEnum::operator Ifc4x3_rc2::IfcGeographicElementTypeEnum::Value() const { @@ -6328,22 +5117,11 @@ Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::st } const char* Ifc4x3_rc2::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcGeometricProjectionEnum::Value Ifc4x3_rc2::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcGeometricProjectionEnum::Value) IFC4X3_RC2_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcGeometricProjectionEnum::operator Ifc4x3_rc2::IfcGeometricProjectionEnum::Value() const { @@ -6372,15 +5150,11 @@ Ifc4x3_rc2::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X3_RC2_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcGlobalOrLocalEnum::Value Ifc4x3_rc2::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x3_rc2::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x3_rc2::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcGlobalOrLocalEnum::Value) IFC4X3_RC2_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcGlobalOrLocalEnum::operator Ifc4x3_rc2::IfcGlobalOrLocalEnum::Value() const { @@ -6409,19 +5183,11 @@ Ifc4x3_rc2::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcGridTypeEnum::Value Ifc4x3_rc2::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4x3_rc2::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4x3_rc2::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4x3_rc2::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4x3_rc2::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcGridTypeEnum::Value) IFC4X3_RC2_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcGridTypeEnum::operator Ifc4x3_rc2::IfcGridTypeEnum::Value() const { @@ -6450,18 +5216,11 @@ Ifc4x3_rc2::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "TURNOUTHEATING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcHeatExchangerTypeEnum::Value Ifc4x3_rc2::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x3_rc2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x3_rc2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "TURNOUTHEATING") return ::Ifc4x3_rc2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_TURNOUTHEATING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcHeatExchangerTypeEnum::Value) IFC4X3_RC2_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcHeatExchangerTypeEnum::operator Ifc4x3_rc2::IfcHeatExchangerTypeEnum::Value() const { @@ -6490,28 +5249,11 @@ Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcHumidifierTypeEnum::Value Ifc4x3_rc2::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcHumidifierTypeEnum::Value) IFC4X3_RC2_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcHumidifierTypeEnum::operator Ifc4x3_rc2::IfcHumidifierTypeEnum::Value() const { @@ -6540,19 +5282,11 @@ Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum } const char* Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CRASHCUSHION", "DAMPINGSYSTEM", "FENDER", "BUMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::Value Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CRASHCUSHION") return ::Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_CRASHCUSHION; - if (s == "DAMPINGSYSTEM") return ::Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_DAMPINGSYSTEM; - if (s == "FENDER") return ::Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_FENDER; - if (s == "BUMPER") return ::Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_BUMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::Value) IFC4X3_RC2_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::operator Ifc4x3_rc2::IfcImpactProtectionDeviceTypeEnum::Value() const { @@ -6581,19 +5315,11 @@ Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcInterceptorTypeEnum::Value Ifc4x3_rc2::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcInterceptorTypeEnum::Value) IFC4X3_RC2_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcInterceptorTypeEnum::operator Ifc4x3_rc2::IfcInterceptorTypeEnum::Value() const { @@ -6622,19 +5348,11 @@ Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::stri } const char* Ifc4x3_rc2::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcInternalOrExternalEnum::Value Ifc4x3_rc2::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcInternalOrExternalEnum::Value) IFC4X3_RC2_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcInternalOrExternalEnum::operator Ifc4x3_rc2::IfcInternalOrExternalEnum::Value() const { @@ -6663,18 +5381,11 @@ Ifc4x3_rc2::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcInventoryTypeEnum::Value Ifc4x3_rc2::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x3_rc2::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x3_rc2::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x3_rc2::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcInventoryTypeEnum::Value) IFC4X3_RC2_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcInventoryTypeEnum::operator Ifc4x3_rc2::IfcInventoryTypeEnum::Value() const { @@ -6703,17 +5414,11 @@ Ifc4x3_rc2::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcJunctionBoxTypeEnum::Value Ifc4x3_rc2::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x3_rc2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x3_rc2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcJunctionBoxTypeEnum::Value) IFC4X3_RC2_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcJunctionBoxTypeEnum::operator Ifc4x3_rc2::IfcJunctionBoxTypeEnum::Value() const { @@ -6742,17 +5447,11 @@ Ifc4x3_rc2::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x3_rc2::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC2_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcKnotType::Value Ifc4x3_rc2::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4x3_rc2::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x3_rc2::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x3_rc2::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc2::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcKnotType::Value) IFC4X3_RC2_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcKnotType::operator Ifc4x3_rc2::IfcKnotType::Value() const { @@ -6781,34 +5480,11 @@ Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLaborResourceTypeEnum::Value Ifc4x3_rc2::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLaborResourceTypeEnum::Value) IFC4X3_RC2_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLaborResourceTypeEnum::operator Ifc4x3_rc2::IfcLaborResourceTypeEnum::Value() const { @@ -6837,24 +5513,11 @@ Ifc4x3_rc2::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLampTypeEnum::Value Ifc4x3_rc2::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLampTypeEnum::Value) IFC4X3_RC2_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLampTypeEnum::operator Ifc4x3_rc2::IfcLampTypeEnum::Value() const { @@ -6883,16 +5546,11 @@ Ifc4x3_rc2::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string } const char* Ifc4x3_rc2::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X3_RC2_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLayerSetDirectionEnum::Value Ifc4x3_rc2::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x3_rc2::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x3_rc2::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x3_rc2::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLayerSetDirectionEnum::Value) IFC4X3_RC2_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLayerSetDirectionEnum::operator Ifc4x3_rc2::IfcLayerSetDirectionEnum::Value() const { @@ -6921,17 +5579,11 @@ Ifc4x3_rc2::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const s } const char* Ifc4x3_rc2::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLightDistributionCurveEnum::Value Ifc4x3_rc2::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x3_rc2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x3_rc2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x3_rc2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLightDistributionCurveEnum::Value) IFC4X3_RC2_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLightDistributionCurveEnum::operator Ifc4x3_rc2::IfcLightDistributionCurveEnum::Value() const { @@ -6960,24 +5612,11 @@ Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::st } const char* Ifc4x3_rc2::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLightEmissionSourceEnum::Value Ifc4x3_rc2::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLightEmissionSourceEnum::Value) IFC4X3_RC2_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLightEmissionSourceEnum::operator Ifc4x3_rc2::IfcLightEmissionSourceEnum::Value() const { @@ -7006,18 +5645,11 @@ Ifc4x3_rc2::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLightFixtureTypeEnum::Value Ifc4x3_rc2::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4x3_rc2::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4x3_rc2::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x3_rc2::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLightFixtureTypeEnum::Value) IFC4X3_RC2_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLightFixtureTypeEnum::operator Ifc4x3_rc2::IfcLightFixtureTypeEnum::Value() const { @@ -7046,17 +5678,11 @@ Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOADINGARM", "HOSEREEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::Value Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::FromString(const std::string& s) { - if (s == "LOADINGARM") return ::Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_LOADINGARM; - if (s == "HOSEREEL") return ::Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_HOSEREEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::Value) IFC4X3_RC2_IfcLiquidTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::operator Ifc4x3_rc2::IfcLiquidTerminalTypeEnum::Value() const { @@ -7085,18 +5711,11 @@ Ifc4x3_rc2::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLoadGroupTypeEnum::Value Ifc4x3_rc2::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4x3_rc2::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4x3_rc2::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x3_rc2::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLoadGroupTypeEnum::Value) IFC4X3_RC2_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLoadGroupTypeEnum::operator Ifc4x3_rc2::IfcLoadGroupTypeEnum::Value() const { @@ -7125,18 +5744,11 @@ Ifc4x3_rc2::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4X3_RC2_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcLogicalOperatorEnum::Value Ifc4x3_rc2::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x3_rc2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4x3_rc2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x3_rc2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4x3_rc2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x3_rc2::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcLogicalOperatorEnum::Value) IFC4X3_RC2_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcLogicalOperatorEnum::operator Ifc4x3_rc2::IfcLogicalOperatorEnum::Value() const { @@ -7165,34 +5777,11 @@ Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcMarineFacilityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CANAL", "WATERWAYSHIPLIFT", "EMBANKMENT", "LAUNCHRECOVERY", "MARINEDEFENCE", "HYDROLIFT", "SHIPYARD", "SHIPLIFT", "PORT", "QUAY", "FLOATINGDOCK", "NAVIGATIONALCHANNEL", "BREAKWATER", "DRYDOCK", "JETTY", "SHIPLOCK", "BARRIERBEACH", "SLIPWAY", "WATERWAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMarineFacilityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMarineFacilityTypeEnum::Value Ifc4x3_rc2::IfcMarineFacilityTypeEnum::FromString(const std::string& s) { - if (s == "CANAL") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_CANAL; - if (s == "WATERWAYSHIPLIFT") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAYSHIPLIFT; - if (s == "EMBANKMENT") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_EMBANKMENT; - if (s == "LAUNCHRECOVERY") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_LAUNCHRECOVERY; - if (s == "MARINEDEFENCE") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_MARINEDEFENCE; - if (s == "HYDROLIFT") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_HYDROLIFT; - if (s == "SHIPYARD") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPYARD; - if (s == "SHIPLIFT") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLIFT; - if (s == "PORT") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_PORT; - if (s == "QUAY") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_QUAY; - if (s == "FLOATINGDOCK") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_FLOATINGDOCK; - if (s == "NAVIGATIONALCHANNEL") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NAVIGATIONALCHANNEL; - if (s == "BREAKWATER") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BREAKWATER; - if (s == "DRYDOCK") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_DRYDOCK; - if (s == "JETTY") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_JETTY; - if (s == "SHIPLOCK") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLOCK; - if (s == "BARRIERBEACH") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BARRIERBEACH; - if (s == "SLIPWAY") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SLIPWAY; - if (s == "WATERWAY") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMarineFacilityTypeEnum::Value) IFC4X3_RC2_IfcMarineFacilityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMarineFacilityTypeEnum::operator Ifc4x3_rc2::IfcMarineFacilityTypeEnum::Value() const { @@ -7221,39 +5810,11 @@ Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcMarinePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CREST", "MANUFACTURING", "LOWWATERLINE", "CORE", "WATERFIELD", "CILL_LEVEL", "BERTHINGSTRUCTURE", "COPELEVEL", "CHAMBER", "STORAGE", "APPROACHCHANNEL", "VEHICLESERVICING", "SHIPTRANSFER", "GATEHEAD", "GUDINGSTRUCTURE", "BELOWWATERLINE", "WEATHERSIDE", "LANDFIELD", "PROTECTION", "LEEWARDSIDE", "ABOVEWATERLINE", "ANCHORAGE", "NAVIGATIONALAREA", "HIGHWATERLINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMarinePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMarinePartTypeEnum::Value Ifc4x3_rc2::IfcMarinePartTypeEnum::FromString(const std::string& s) { - if (s == "CREST") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_CREST; - if (s == "MANUFACTURING") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_MANUFACTURING; - if (s == "LOWWATERLINE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_LOWWATERLINE; - if (s == "CORE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_CORE; - if (s == "WATERFIELD") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_WATERFIELD; - if (s == "CILL_LEVEL") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_CILL_LEVEL; - if (s == "BERTHINGSTRUCTURE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_BERTHINGSTRUCTURE; - if (s == "COPELEVEL") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_COPELEVEL; - if (s == "CHAMBER") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_CHAMBER; - if (s == "STORAGE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_STORAGE; - if (s == "APPROACHCHANNEL") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_APPROACHCHANNEL; - if (s == "VEHICLESERVICING") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_VEHICLESERVICING; - if (s == "SHIPTRANSFER") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_SHIPTRANSFER; - if (s == "GATEHEAD") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_GATEHEAD; - if (s == "GUDINGSTRUCTURE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_GUDINGSTRUCTURE; - if (s == "BELOWWATERLINE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_BELOWWATERLINE; - if (s == "WEATHERSIDE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_WEATHERSIDE; - if (s == "LANDFIELD") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_LANDFIELD; - if (s == "PROTECTION") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_PROTECTION; - if (s == "LEEWARDSIDE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_LEEWARDSIDE; - if (s == "ABOVEWATERLINE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_ABOVEWATERLINE; - if (s == "ANCHORAGE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_ANCHORAGE; - if (s == "NAVIGATIONALAREA") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_NAVIGATIONALAREA; - if (s == "HIGHWATERLINE") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_HIGHWATERLINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMarinePartTypeEnum::IfcMarinePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMarinePartTypeEnum::Value) IFC4X3_RC2_IfcMarinePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMarinePartTypeEnum::operator Ifc4x3_rc2::IfcMarinePartTypeEnum::Value() const { @@ -7282,30 +5843,11 @@ Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const s } const char* Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "COUPLER", "RAILJOINT", "RAILFASTENING", "CHAIN", "ROPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::Value Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "COUPLER") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_COUPLER; - if (s == "RAILJOINT") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILJOINT; - if (s == "RAILFASTENING") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILFASTENING; - if (s == "CHAIN") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_CHAIN; - if (s == "ROPE") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ROPE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::Value) IFC4X3_RC2_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::operator Ifc4x3_rc2::IfcMechanicalFastenerTypeEnum::Value() const { @@ -7334,20 +5876,11 @@ Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::Value Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::Value) IFC4X3_RC2_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::operator Ifc4x3_rc2::IfcMedicalDeviceTypeEnum::Value() const { @@ -7376,34 +5909,11 @@ Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "STIFFENING_RIB", "ARCH_SEGMENT", "SUSPENSION_CABLE", "SUSPENDER", "STAY_CABLE", "STRUCTURALCABLE", "TIEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMemberTypeEnum::Value Ifc4x3_rc2::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "STIFFENING_RIB") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_STIFFENING_RIB; - if (s == "ARCH_SEGMENT") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_ARCH_SEGMENT; - if (s == "SUSPENSION_CABLE") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_SUSPENSION_CABLE; - if (s == "SUSPENDER") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_SUSPENDER; - if (s == "STAY_CABLE") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_STAY_CABLE; - if (s == "STRUCTURALCABLE") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_STRUCTURALCABLE; - if (s == "TIEBAR") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_TIEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMemberTypeEnum::Value) IFC4X3_RC2_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMemberTypeEnum::operator Ifc4x3_rc2::IfcMemberTypeEnum::Value() const { @@ -7432,22 +5942,11 @@ Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunica } const char* Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "E_UTRAN_NODE_B", "REMOTE_RADIO_UNIT", "ACCESSPOINT", "BASETRANSCEIVERSTATION", "REMOTEUNIT", "BASEBANDUNIT", "MASTERUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::Value Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "E_UTRAN_NODE_B") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_E_UTRAN_NODE_B; - if (s == "REMOTE_RADIO_UNIT") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTE_RADIO_UNIT; - if (s == "ACCESSPOINT") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_ACCESSPOINT; - if (s == "BASETRANSCEIVERSTATION") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASETRANSCEIVERSTATION; - if (s == "REMOTEUNIT") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTEUNIT; - if (s == "BASEBANDUNIT") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASEBANDUNIT; - if (s == "MASTERUNIT") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MASTERUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::Value) IFC4X3_RC2_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::operator Ifc4x3_rc2::IfcMobileTelecommunicationsApplianceTypeEnum::Value() const { @@ -7476,20 +5975,11 @@ Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcMooringDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINETENSIONER", "MAGNETICDEVICE", "MOORINGHOOKS", "VACUUMDEVICE", "BOLLARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMooringDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMooringDeviceTypeEnum::Value Ifc4x3_rc2::IfcMooringDeviceTypeEnum::FromString(const std::string& s) { - if (s == "LINETENSIONER") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_LINETENSIONER; - if (s == "MAGNETICDEVICE") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MAGNETICDEVICE; - if (s == "MOORINGHOOKS") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MOORINGHOOKS; - if (s == "VACUUMDEVICE") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_VACUUMDEVICE; - if (s == "BOLLARD") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_BOLLARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMooringDeviceTypeEnum::Value) IFC4X3_RC2_IfcMooringDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMooringDeviceTypeEnum::operator Ifc4x3_rc2::IfcMooringDeviceTypeEnum::Value() const { @@ -7518,18 +6008,11 @@ Ifc4x3_rc2::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::st } const char* Ifc4x3_rc2::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcMotorConnectionTypeEnum::Value Ifc4x3_rc2::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x3_rc2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x3_rc2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x3_rc2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcMotorConnectionTypeEnum::Value) IFC4X3_RC2_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcMotorConnectionTypeEnum::operator Ifc4x3_rc2::IfcMotorConnectionTypeEnum::Value() const { @@ -7558,17 +6041,11 @@ Ifc4x3_rc2::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std } const char* Ifc4x3_rc2::IfcNavigationElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEACON", "BUOY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcNavigationElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcNavigationElementTypeEnum::Value Ifc4x3_rc2::IfcNavigationElementTypeEnum::FromString(const std::string& s) { - if (s == "BEACON") return ::Ifc4x3_rc2::IfcNavigationElementTypeEnum::IfcNavigationElementType_BEACON; - if (s == "BUOY") return ::Ifc4x3_rc2::IfcNavigationElementTypeEnum::IfcNavigationElementType_BUOY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcNavigationElementTypeEnum::IfcNavigationElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcNavigationElementTypeEnum::IfcNavigationElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcNavigationElementTypeEnum::Value) IFC4X3_RC2_IfcNavigationElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcNavigationElementTypeEnum::operator Ifc4x3_rc2::IfcNavigationElementTypeEnum::Value() const { @@ -7597,14 +6074,11 @@ Ifc4x3_rc2::IfcNullStyle::IfcNullStyle(const std::string& v) { } const char* Ifc4x3_rc2::IfcNullStyle::ToString(Value v) { - if ( v < 0 || v >= 1 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NULL" }; - return names[v]; + return IFC4X3_RC2_IfcNullStyle_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcNullStyle::Value Ifc4x3_rc2::IfcNullStyle::FromString(const std::string& s) { - if (s == "NULL") return ::Ifc4x3_rc2::IfcNullStyle::IfcNullStyle_NULL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcNullStyle::Value) IFC4X3_RC2_IfcNullStyle_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcNullStyle::operator Ifc4x3_rc2::IfcNullStyle::Value() const { @@ -7633,21 +6107,11 @@ Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcObjectTypeEnum::Value Ifc4x3_rc2::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcObjectTypeEnum::Value) IFC4X3_RC2_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcObjectTypeEnum::operator Ifc4x3_rc2::IfcObjectTypeEnum::Value() const { @@ -7676,26 +6140,11 @@ Ifc4x3_rc2::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcObjectiveEnum::Value Ifc4x3_rc2::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcObjectiveEnum::Value) IFC4X3_RC2_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcObjectiveEnum::operator Ifc4x3_rc2::IfcObjectiveEnum::Value() const { @@ -7724,22 +6173,11 @@ Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcOccupantTypeEnum::Value Ifc4x3_rc2::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcOccupantTypeEnum::Value) IFC4X3_RC2_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcOccupantTypeEnum::operator Ifc4x3_rc2::IfcOccupantTypeEnum::Value() const { @@ -7768,17 +6206,11 @@ Ifc4x3_rc2::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcOpeningElementTypeEnum::Value Ifc4x3_rc2::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x3_rc2::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x3_rc2::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcOpeningElementTypeEnum::Value) IFC4X3_RC2_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcOpeningElementTypeEnum::operator Ifc4x3_rc2::IfcOpeningElementTypeEnum::Value() const { @@ -7807,20 +6239,11 @@ Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcOutletTypeEnum::Value Ifc4x3_rc2::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcOutletTypeEnum::Value) IFC4X3_RC2_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcOutletTypeEnum::operator Ifc4x3_rc2::IfcOutletTypeEnum::Value() const { @@ -7849,15 +6272,11 @@ Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const s } const char* Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::Value Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::Value) IFC4X3_RC2_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::operator Ifc4x3_rc2::IfcPerformanceHistoryTypeEnum::Value() const { @@ -7886,18 +6305,11 @@ Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum } const char* Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::Value Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::Value) IFC4X3_RC2_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::operator Ifc4x3_rc2::IfcPermeableCoveringOperationEnum::Value() const { @@ -7926,18 +6338,11 @@ Ifc4x3_rc2::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPermitTypeEnum::Value Ifc4x3_rc2::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x3_rc2::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x3_rc2::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x3_rc2::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPermitTypeEnum::Value) IFC4X3_RC2_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPermitTypeEnum::operator Ifc4x3_rc2::IfcPermitTypeEnum::Value() const { @@ -7966,16 +6371,11 @@ Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string } const char* Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::Value Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::Value) IFC4X3_RC2_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::operator Ifc4x3_rc2::IfcPhysicalOrVirtualEnum::Value() const { @@ -8004,19 +6404,11 @@ Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& } const char* Ifc4x3_rc2::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPileConstructionEnum::Value Ifc4x3_rc2::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPileConstructionEnum::Value) IFC4X3_RC2_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPileConstructionEnum::operator Ifc4x3_rc2::IfcPileConstructionEnum::Value() const { @@ -8045,21 +6437,11 @@ Ifc4x3_rc2::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPileTypeEnum::Value Ifc4x3_rc2::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPileTypeEnum::Value) IFC4X3_RC2_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPileTypeEnum::operator Ifc4x3_rc2::IfcPileTypeEnum::Value() const { @@ -8088,22 +6470,11 @@ Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPipeFittingTypeEnum::Value Ifc4x3_rc2::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPipeFittingTypeEnum::Value) IFC4X3_RC2_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPipeFittingTypeEnum::operator Ifc4x3_rc2::IfcPipeFittingTypeEnum::Value() const { @@ -8132,20 +6503,11 @@ Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPipeSegmentTypeEnum::Value Ifc4x3_rc2::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPipeSegmentTypeEnum::Value) IFC4X3_RC2_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPipeSegmentTypeEnum::operator Ifc4x3_rc2::IfcPipeSegmentTypeEnum::Value() const { @@ -8174,24 +6536,11 @@ Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "FLANGE_PLATE", "WEB_PLATE", "STIFFENER_PLATE", "GUSSET_PLATE", "COVER_PLATE", "SPLICE_PLATE", "BASE_PLATE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPlateTypeEnum::Value Ifc4x3_rc2::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "FLANGE_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_FLANGE_PLATE; - if (s == "WEB_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_WEB_PLATE; - if (s == "STIFFENER_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_STIFFENER_PLATE; - if (s == "GUSSET_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_GUSSET_PLATE; - if (s == "COVER_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_COVER_PLATE; - if (s == "SPLICE_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_SPLICE_PLATE; - if (s == "BASE_PLATE") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_BASE_PLATE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPlateTypeEnum::Value) IFC4X3_RC2_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPlateTypeEnum::operator Ifc4x3_rc2::IfcPlateTypeEnum::Value() const { @@ -8220,16 +6569,11 @@ Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepr } const char* Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X3_RC2_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x3_rc2::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -8258,22 +6602,11 @@ Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProcedureTypeEnum::Value Ifc4x3_rc2::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProcedureTypeEnum::Value) IFC4X3_RC2_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProcedureTypeEnum::operator Ifc4x3_rc2::IfcProcedureTypeEnum::Value() const { @@ -8302,15 +6635,11 @@ Ifc4x3_rc2::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4X3_RC2_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProfileTypeEnum::Value Ifc4x3_rc2::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4x3_rc2::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4x3_rc2::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProfileTypeEnum::Value) IFC4X3_RC2_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProfileTypeEnum::operator Ifc4x3_rc2::IfcProfileTypeEnum::Value() const { @@ -8339,20 +6668,11 @@ Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProjectOrderTypeEnum::Value Ifc4x3_rc2::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProjectOrderTypeEnum::Value) IFC4X3_RC2_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProjectOrderTypeEnum::operator Ifc4x3_rc2::IfcProjectOrderTypeEnum::Value() const { @@ -8381,15 +6701,11 @@ Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std } const char* Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::Value Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::Value) IFC4X3_RC2_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::operator Ifc4x3_rc2::IfcProjectedOrTrueLengthEnum::Value() const { @@ -8418,17 +6734,11 @@ Ifc4x3_rc2::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std } const char* Ifc4x3_rc2::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLISTER", "DEVIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProjectionElementTypeEnum::Value Ifc4x3_rc2::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "BLISTER") return ::Ifc4x3_rc2::IfcProjectionElementTypeEnum::IfcProjectionElementType_BLISTER; - if (s == "DEVIATOR") return ::Ifc4x3_rc2::IfcProjectionElementTypeEnum::IfcProjectionElementType_DEVIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProjectionElementTypeEnum::Value) IFC4X3_RC2_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProjectionElementTypeEnum::operator Ifc4x3_rc2::IfcProjectionElementTypeEnum::Value() const { @@ -8457,21 +6767,11 @@ Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const } const char* Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::Value Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::Value) IFC4X3_RC2_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::operator Ifc4x3_rc2::IfcPropertySetTemplateTypeEnum::Value() const { @@ -8500,19 +6800,11 @@ Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTripping } const char* Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X3_RC2_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x3_rc2::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -8541,25 +6833,11 @@ Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std:: } const char* Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "ANTI_ARCING_DEVICE", "SPARKGAP", "VOLTAGELIMITER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "ANTI_ARCING_DEVICE") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_ANTI_ARCING_DEVICE; - if (s == "SPARKGAP") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_SPARKGAP; - if (s == "VOLTAGELIMITER") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VOLTAGELIMITER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::Value) IFC4X3_RC2_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::operator Ifc4x3_rc2::IfcProtectiveDeviceTypeEnum::Value() const { @@ -8588,22 +6866,11 @@ Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcPumpTypeEnum::Value Ifc4x3_rc2::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcPumpTypeEnum::Value) IFC4X3_RC2_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcPumpTypeEnum::operator Ifc4x3_rc2::IfcPumpTypeEnum::Value() const { @@ -8632,21 +6899,11 @@ Ifc4x3_rc2::IfcRailTypeEnum::IfcRailTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRailTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RACKRAIL", "BLADE", "GUARDRAIL", "STOCKRAIL", "CHECKRAIL", "RAIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRailTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRailTypeEnum::Value Ifc4x3_rc2::IfcRailTypeEnum::FromString(const std::string& s) { - if (s == "RACKRAIL") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_RACKRAIL; - if (s == "BLADE") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_BLADE; - if (s == "GUARDRAIL") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_GUARDRAIL; - if (s == "STOCKRAIL") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_STOCKRAIL; - if (s == "CHECKRAIL") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_CHECKRAIL; - if (s == "RAIL") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_RAIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRailTypeEnum::IfcRailType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRailTypeEnum::Value) IFC4X3_RC2_IfcRailTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRailTypeEnum::operator Ifc4x3_rc2::IfcRailTypeEnum::Value() const { @@ -8675,19 +6932,11 @@ Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "FENCE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRailingTypeEnum::Value Ifc4x3_rc2::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "FENCE") return ::Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingType_FENCE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRailingTypeEnum::Value) IFC4X3_RC2_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRailingTypeEnum::operator Ifc4x3_rc2::IfcRailingTypeEnum::Value() const { @@ -8716,23 +6965,11 @@ Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcRailwayPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKSTRUCTURE", "TRACKSTRUCTUREPART", "LINESIDESTRUCTUREPART", "DILATATIONSUPERSTRUCTURE", "PLAINTRACKSUPESTRUCTURE", "LINESIDESTRUCTURE", "SUPERSTRUCTURE", "TURNOUTSUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRailwayPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRailwayPartTypeEnum::Value Ifc4x3_rc2::IfcRailwayPartTypeEnum::FromString(const std::string& s) { - if (s == "TRACKSTRUCTURE") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTURE; - if (s == "TRACKSTRUCTUREPART") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTUREPART; - if (s == "LINESIDESTRUCTUREPART") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTUREPART; - if (s == "DILATATIONSUPERSTRUCTURE") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_DILATATIONSUPERSTRUCTURE; - if (s == "PLAINTRACKSUPESTRUCTURE") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_PLAINTRACKSUPESTRUCTURE; - if (s == "LINESIDESTRUCTURE") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_SUPERSTRUCTURE; - if (s == "TURNOUTSUPERSTRUCTURE") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_TURNOUTSUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRailwayPartTypeEnum::IfcRailwayPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRailwayPartTypeEnum::Value) IFC4X3_RC2_IfcRailwayPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRailwayPartTypeEnum::operator Ifc4x3_rc2::IfcRailwayPartTypeEnum::Value() const { @@ -8761,17 +6998,11 @@ Ifc4x3_rc2::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRampFlightTypeEnum::Value Ifc4x3_rc2::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc2::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4x3_rc2::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRampFlightTypeEnum::Value) IFC4X3_RC2_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRampFlightTypeEnum::operator Ifc4x3_rc2::IfcRampFlightTypeEnum::Value() const { @@ -8800,21 +7031,11 @@ Ifc4x3_rc2::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRampTypeEnum::Value Ifc4x3_rc2::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRampTypeEnum::Value) IFC4X3_RC2_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRampTypeEnum::operator Ifc4x3_rc2::IfcRampTypeEnum::Value() const { @@ -8843,21 +7064,11 @@ Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X3_RC2_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRecurrenceTypeEnum::Value Ifc4x3_rc2::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x3_rc2::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRecurrenceTypeEnum::Value) IFC4X3_RC2_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRecurrenceTypeEnum::operator Ifc4x3_rc2::IfcRecurrenceTypeEnum::Value() const { @@ -8886,19 +7097,11 @@ Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "KILOPOINT", "MILEPOINT", "STATION", "REFERENCEMARKER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReferentTypeEnum::Value Ifc4x3_rc2::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "KILOPOINT") return ::Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "MILEPOINT") return ::Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "STATION") return ::Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "REFERENCEMARKER") return ::Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentType_REFERENCEMARKER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReferentTypeEnum::Value) IFC4X3_RC2_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReferentTypeEnum::operator Ifc4x3_rc2::IfcReferentTypeEnum::Value() const { @@ -8927,23 +7130,11 @@ Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string } const char* Ifc4x3_rc2::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReflectanceMethodEnum::Value Ifc4x3_rc2::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReflectanceMethodEnum::Value) IFC4X3_RC2_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReflectanceMethodEnum::operator Ifc4x3_rc2::IfcReflectanceMethodEnum::Value() const { @@ -8972,21 +7163,11 @@ Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SURCHARGEPRELOADED", "VERTICALLYDRAINED", "DYNAMICALLYCOMPACTED", "REPLACED", "ROLLERCOMPACTED", "GROUTED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::Value Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::FromString(const std::string& s) { - if (s == "SURCHARGEPRELOADED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_SURCHARGEPRELOADED; - if (s == "VERTICALLYDRAINED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_VERTICALLYDRAINED; - if (s == "DYNAMICALLYCOMPACTED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_DYNAMICALLYCOMPACTED; - if (s == "REPLACED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_REPLACED; - if (s == "ROLLERCOMPACTED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_ROLLERCOMPACTED; - if (s == "GROUTED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_GROUTED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::Value) IFC4X3_RC2_IfcReinforcedSoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::operator Ifc4x3_rc2::IfcReinforcedSoilTypeEnum::Value() const { @@ -9015,23 +7196,11 @@ Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::stri } const char* Ifc4x3_rc2::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReinforcingBarRoleEnum::Value Ifc4x3_rc2::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReinforcingBarRoleEnum::Value) IFC4X3_RC2_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReinforcingBarRoleEnum::operator Ifc4x3_rc2::IfcReinforcingBarRoleEnum::Value() const { @@ -9060,15 +7229,11 @@ Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std } const char* Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::Value Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::Value) IFC4X3_RC2_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::operator Ifc4x3_rc2::IfcReinforcingBarSurfaceEnum::Value() const { @@ -9097,24 +7262,11 @@ Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "SPACEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReinforcingBarTypeEnum::Value Ifc4x3_rc2::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "SPACEBAR") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SPACEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReinforcingBarTypeEnum::Value) IFC4X3_RC2_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReinforcingBarTypeEnum::operator Ifc4x3_rc2::IfcReinforcingBarTypeEnum::Value() const { @@ -9143,15 +7295,11 @@ Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::st } const char* Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::Value Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::Value) IFC4X3_RC2_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::operator Ifc4x3_rc2::IfcReinforcingMeshTypeEnum::Value() const { @@ -9180,39 +7328,11 @@ Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRoadPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ROADSIDEPART", "BUS_STOP", "HARDSHOULDER", "INTERSECTION", "PASSINGBAY", "ROADWAYPLATEAU", "ROADSIDE", "REFUGEISLAND", "TOLLPLAZA", "CENTRALRESERVE", "SIDEWALK", "PARKINGBAY", "RAILWAYCROSSING", "PEDESTRIAN_CROSSING", "SOFTSHOULDER", "BICYCLECROSSING", "CENTRALISLAND", "SHOULDER", "TRAFFICLANE", "ROADSEGMENT", "ROUNDABOUT", "LAYBY", "CARRIAGEWAY", "TRAFFICISLAND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRoadPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRoadPartTypeEnum::Value Ifc4x3_rc2::IfcRoadPartTypeEnum::FromString(const std::string& s) { - if (s == "ROADSIDEPART") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDEPART; - if (s == "BUS_STOP") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_BUS_STOP; - if (s == "HARDSHOULDER") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_HARDSHOULDER; - if (s == "INTERSECTION") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_INTERSECTION; - if (s == "PASSINGBAY") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_PASSINGBAY; - if (s == "ROADWAYPLATEAU") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_ROADWAYPLATEAU; - if (s == "ROADSIDE") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDE; - if (s == "REFUGEISLAND") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_REFUGEISLAND; - if (s == "TOLLPLAZA") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_TOLLPLAZA; - if (s == "CENTRALRESERVE") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALRESERVE; - if (s == "SIDEWALK") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_SIDEWALK; - if (s == "PARKINGBAY") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_PARKINGBAY; - if (s == "RAILWAYCROSSING") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_RAILWAYCROSSING; - if (s == "PEDESTRIAN_CROSSING") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_PEDESTRIAN_CROSSING; - if (s == "SOFTSHOULDER") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_SOFTSHOULDER; - if (s == "BICYCLECROSSING") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_BICYCLECROSSING; - if (s == "CENTRALISLAND") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALISLAND; - if (s == "SHOULDER") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_SHOULDER; - if (s == "TRAFFICLANE") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICLANE; - if (s == "ROADSEGMENT") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSEGMENT; - if (s == "ROUNDABOUT") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_ROUNDABOUT; - if (s == "LAYBY") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_LAYBY; - if (s == "CARRIAGEWAY") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_CARRIAGEWAY; - if (s == "TRAFFICISLAND") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICISLAND; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRoadPartTypeEnum::IfcRoadPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRoadPartTypeEnum::Value) IFC4X3_RC2_IfcRoadPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRoadPartTypeEnum::operator Ifc4x3_rc2::IfcRoadPartTypeEnum::Value() const { @@ -9241,36 +7361,11 @@ Ifc4x3_rc2::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRoleEnum::Value Ifc4x3_rc2::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRoleEnum::Value) IFC4X3_RC2_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRoleEnum::operator Ifc4x3_rc2::IfcRoleEnum::Value() const { @@ -9299,28 +7394,11 @@ Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcRoofTypeEnum::Value Ifc4x3_rc2::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcRoofTypeEnum::Value) IFC4X3_RC2_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcRoofTypeEnum::operator Ifc4x3_rc2::IfcRoofTypeEnum::Value() const { @@ -9349,29 +7427,11 @@ Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x3_rc2::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4X3_RC2_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSIPrefix::Value Ifc4x3_rc2::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4x3_rc2::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSIPrefix::Value) IFC4X3_RC2_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSIPrefix::operator Ifc4x3_rc2::IfcSIPrefix::Value() const { @@ -9400,43 +7460,11 @@ Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x3_rc2::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X3_RC2_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSIUnitName::Value Ifc4x3_rc2::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x3_rc2::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSIUnitName::Value) IFC4X3_RC2_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSIUnitName::operator Ifc4x3_rc2::IfcSIUnitName::Value() const { @@ -9465,25 +7493,11 @@ Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std:: } const char* Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::Value Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::Value) IFC4X3_RC2_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::operator Ifc4x3_rc2::IfcSanitaryTerminalTypeEnum::Value() const { @@ -9512,15 +7526,11 @@ Ifc4x3_rc2::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4X3_RC2_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSectionTypeEnum::Value Ifc4x3_rc2::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4x3_rc2::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4x3_rc2::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSectionTypeEnum::Value) IFC4X3_RC2_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSectionTypeEnum::operator Ifc4x3_rc2::IfcSectionTypeEnum::Value() const { @@ -9549,47 +7559,11 @@ Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 34 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "EARTHQUAKESENSOR", "FOREIGNOBJECTDETECTIONSENSOR", "OBSTACLESENSOR", "RAINSENSOR", "SNOWDEPTHSENSOR", "TRAINSENSOR", "TURNOUTCLOSURESENSOR", "WHEELSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSensorTypeEnum::Value Ifc4x3_rc2::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "EARTHQUAKESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_EARTHQUAKESENSOR; - if (s == "FOREIGNOBJECTDETECTIONSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_FOREIGNOBJECTDETECTIONSENSOR; - if (s == "OBSTACLESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_OBSTACLESENSOR; - if (s == "RAINSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_RAINSENSOR; - if (s == "SNOWDEPTHSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_SNOWDEPTHSENSOR; - if (s == "TRAINSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_TRAINSENSOR; - if (s == "TURNOUTCLOSURESENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_TURNOUTCLOSURESENSOR; - if (s == "WHEELSENSOR") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_WHEELSENSOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSensorTypeEnum::Value) IFC4X3_RC2_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSensorTypeEnum::operator Ifc4x3_rc2::IfcSensorTypeEnum::Value() const { @@ -9618,19 +7592,11 @@ Ifc4x3_rc2::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSequenceEnum::Value Ifc4x3_rc2::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4x3_rc2::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4x3_rc2::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4x3_rc2::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4x3_rc2::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSequenceEnum::Value) IFC4X3_RC2_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSequenceEnum::operator Ifc4x3_rc2::IfcSequenceEnum::Value() const { @@ -9659,18 +7625,11 @@ Ifc4x3_rc2::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcShadingDeviceTypeEnum::Value Ifc4x3_rc2::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4x3_rc2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x3_rc2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4x3_rc2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcShadingDeviceTypeEnum::Value) IFC4X3_RC2_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcShadingDeviceTypeEnum::operator Ifc4x3_rc2::IfcShadingDeviceTypeEnum::Value() const { @@ -9699,18 +7658,11 @@ Ifc4x3_rc2::IfcSignTypeEnum::IfcSignTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSignTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARKER", "PICTORAL", "MIRROR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSignTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSignTypeEnum::Value Ifc4x3_rc2::IfcSignTypeEnum::FromString(const std::string& s) { - if (s == "MARKER") return ::Ifc4x3_rc2::IfcSignTypeEnum::IfcSignType_MARKER; - if (s == "PICTORAL") return ::Ifc4x3_rc2::IfcSignTypeEnum::IfcSignType_PICTORAL; - if (s == "MIRROR") return ::Ifc4x3_rc2::IfcSignTypeEnum::IfcSignType_MIRROR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSignTypeEnum::IfcSignType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSignTypeEnum::IfcSignType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSignTypeEnum::Value) IFC4X3_RC2_IfcSignTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSignTypeEnum::operator Ifc4x3_rc2::IfcSignTypeEnum::Value() const { @@ -9739,18 +7691,11 @@ Ifc4x3_rc2::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSignalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VISUAL", "AUDIO", "MIXED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSignalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSignalTypeEnum::Value Ifc4x3_rc2::IfcSignalTypeEnum::FromString(const std::string& s) { - if (s == "VISUAL") return ::Ifc4x3_rc2::IfcSignalTypeEnum::IfcSignalType_VISUAL; - if (s == "AUDIO") return ::Ifc4x3_rc2::IfcSignalTypeEnum::IfcSignalType_AUDIO; - if (s == "MIXED") return ::Ifc4x3_rc2::IfcSignalTypeEnum::IfcSignalType_MIXED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSignalTypeEnum::IfcSignalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSignalTypeEnum::IfcSignalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSignalTypeEnum::Value) IFC4X3_RC2_IfcSignalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSignalTypeEnum::operator Ifc4x3_rc2::IfcSignalTypeEnum::Value() const { @@ -9779,25 +7724,11 @@ Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum } const char* Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X3_RC2_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x3_rc2::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -9826,24 +7757,11 @@ Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "APPROACH_SLAB", "PAVING", "WEARING", "SIDEWALK", "TRACKSLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSlabTypeEnum::Value Ifc4x3_rc2::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "APPROACH_SLAB") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_APPROACH_SLAB; - if (s == "PAVING") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_PAVING; - if (s == "WEARING") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_WEARING; - if (s == "SIDEWALK") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_SIDEWALK; - if (s == "TRACKSLAB") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_TRACKSLAB; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSlabTypeEnum::Value) IFC4X3_RC2_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSlabTypeEnum::operator Ifc4x3_rc2::IfcSlabTypeEnum::Value() const { @@ -9872,17 +7790,11 @@ Ifc4x3_rc2::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSolarDeviceTypeEnum::Value Ifc4x3_rc2::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x3_rc2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x3_rc2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSolarDeviceTypeEnum::Value) IFC4X3_RC2_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSolarDeviceTypeEnum::operator Ifc4x3_rc2::IfcSolarDeviceTypeEnum::Value() const { @@ -9911,17 +7823,11 @@ Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::Value Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::Value) IFC4X3_RC2_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::operator Ifc4x3_rc2::IfcSpaceHeaterTypeEnum::Value() const { @@ -9950,20 +7856,11 @@ Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSpaceTypeEnum::Value Ifc4x3_rc2::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSpaceTypeEnum::Value) IFC4X3_RC2_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSpaceTypeEnum::operator Ifc4x3_rc2::IfcSpaceTypeEnum::Value() const { @@ -9992,24 +7889,11 @@ Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "RESERVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSpatialZoneTypeEnum::Value Ifc4x3_rc2::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "RESERVATION") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_RESERVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSpatialZoneTypeEnum::Value) IFC4X3_RC2_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSpatialZoneTypeEnum::operator Ifc4x3_rc2::IfcSpatialZoneTypeEnum::Value() const { @@ -10038,18 +7922,11 @@ Ifc4x3_rc2::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStackTerminalTypeEnum::Value Ifc4x3_rc2::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x3_rc2::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x3_rc2::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x3_rc2::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStackTerminalTypeEnum::Value) IFC4X3_RC2_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStackTerminalTypeEnum::operator Ifc4x3_rc2::IfcStackTerminalTypeEnum::Value() const { @@ -10078,20 +7955,11 @@ Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStairFlightTypeEnum::Value Ifc4x3_rc2::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStairFlightTypeEnum::Value) IFC4X3_RC2_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStairFlightTypeEnum::operator Ifc4x3_rc2::IfcStairFlightTypeEnum::Value() const { @@ -10120,30 +7988,11 @@ Ifc4x3_rc2::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "LADDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStairTypeEnum::Value Ifc4x3_rc2::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "LADDER") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_LADDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStairTypeEnum::Value) IFC4X3_RC2_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStairTypeEnum::operator Ifc4x3_rc2::IfcStairTypeEnum::Value() const { @@ -10172,18 +8021,11 @@ Ifc4x3_rc2::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4X3_RC2_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStateEnum::Value Ifc4x3_rc2::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4x3_rc2::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4x3_rc2::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4x3_rc2::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4x3_rc2::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4x3_rc2::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStateEnum::Value) IFC4X3_RC2_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStateEnum::operator Ifc4x3_rc2::IfcStateEnum::Value() const { @@ -10212,22 +8054,11 @@ Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEn } const char* Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::Value Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::Value) IFC4X3_RC2_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::operator Ifc4x3_rc2::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -10256,20 +8087,11 @@ Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(c } const char* Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::Value) IFC4X3_RC2_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::operator Ifc4x3_rc2::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -10298,19 +8120,11 @@ Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTy } const char* Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X3_RC2_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x3_rc2::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -10339,18 +8153,11 @@ Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEn } const char* Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X3_RC2_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x3_rc2::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -10379,17 +8186,11 @@ Ifc4x3_rc2::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const } const char* Ifc4x3_rc2::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSubContractResourceTypeEnum::Value Ifc4x3_rc2::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x3_rc2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x3_rc2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSubContractResourceTypeEnum::Value) IFC4X3_RC2_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSubContractResourceTypeEnum::operator Ifc4x3_rc2::IfcSubContractResourceTypeEnum::Value() const { @@ -10418,26 +8219,11 @@ Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "DEFECT", "HATCHMARKING", "LINEMARKING", "PAVEMENTSURFACEMARKING", "SYMBOLMARKING", "NONSKIDSURFACING", "RUMBLESTRIP", "TRANSVERSERUMBLESTRIP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::Value Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "DEFECT") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_DEFECT; - if (s == "HATCHMARKING") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_HATCHMARKING; - if (s == "LINEMARKING") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_LINEMARKING; - if (s == "PAVEMENTSURFACEMARKING") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_PAVEMENTSURFACEMARKING; - if (s == "SYMBOLMARKING") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_SYMBOLMARKING; - if (s == "NONSKIDSURFACING") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NONSKIDSURFACING; - if (s == "RUMBLESTRIP") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_RUMBLESTRIP; - if (s == "TRANSVERSERUMBLESTRIP") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TRANSVERSERUMBLESTRIP; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::Value) IFC4X3_RC2_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::operator Ifc4x3_rc2::IfcSurfaceFeatureTypeEnum::Value() const { @@ -10466,16 +8252,11 @@ Ifc4x3_rc2::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x3_rc2::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4X3_RC2_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSurfaceSide::Value Ifc4x3_rc2::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc2::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc2::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4x3_rc2::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSurfaceSide::Value) IFC4X3_RC2_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSurfaceSide::operator Ifc4x3_rc2::IfcSurfaceSide::Value() const { @@ -10504,26 +8285,11 @@ Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::st } const char* Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "RELAY", "START_AND_STOP_EQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::Value Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "RELAY") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_RELAY; - if (s == "START_AND_STOP_EQUIPMENT") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_START_AND_STOP_EQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::Value) IFC4X3_RC2_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::operator Ifc4x3_rc2::IfcSwitchingDeviceTypeEnum::Value() const { @@ -10552,18 +8318,11 @@ Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum } const char* Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "SUBRACK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::Value Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "SUBRACK") return ::Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_SUBRACK; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::Value) IFC4X3_RC2_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::operator Ifc4x3_rc2::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -10592,23 +8351,11 @@ Ifc4x3_rc2::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "OILRETENTIONTRAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTankTypeEnum::Value Ifc4x3_rc2::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "OILRETENTIONTRAY") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_OILRETENTIONTRAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTankTypeEnum::Value) IFC4X3_RC2_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTankTypeEnum::operator Ifc4x3_rc2::IfcTankTypeEnum::Value() const { @@ -10637,16 +8384,11 @@ Ifc4x3_rc2::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTaskDurationEnum::Value Ifc4x3_rc2::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x3_rc2::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x3_rc2::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTaskDurationEnum::Value) IFC4X3_RC2_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTaskDurationEnum::operator Ifc4x3_rc2::IfcTaskDurationEnum::Value() const { @@ -10675,27 +8417,11 @@ Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTaskTypeEnum::Value Ifc4x3_rc2::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTaskTypeEnum::Value) IFC4X3_RC2_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTaskTypeEnum::operator Ifc4x3_rc2::IfcTaskTypeEnum::Value() const { @@ -10724,18 +8450,11 @@ Ifc4x3_rc2::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTendonAnchorTypeEnum::Value Ifc4x3_rc2::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x3_rc2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x3_rc2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x3_rc2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTendonAnchorTypeEnum::Value) IFC4X3_RC2_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTendonAnchorTypeEnum::operator Ifc4x3_rc2::IfcTendonAnchorTypeEnum::Value() const { @@ -10764,20 +8483,11 @@ Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcTendonConduitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DUCT", "COUPLER", "GROUTING_DUCT", "TRUMPET", "DIABOLO", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTendonConduitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTendonConduitTypeEnum::Value Ifc4x3_rc2::IfcTendonConduitTypeEnum::FromString(const std::string& s) { - if (s == "DUCT") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_DUCT; - if (s == "COUPLER") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_COUPLER; - if (s == "GROUTING_DUCT") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_GROUTING_DUCT; - if (s == "TRUMPET") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_TRUMPET; - if (s == "DIABOLO") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_DIABOLO; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTendonConduitTypeEnum::IfcTendonConduitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTendonConduitTypeEnum::Value) IFC4X3_RC2_IfcTendonConduitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTendonConduitTypeEnum::operator Ifc4x3_rc2::IfcTendonConduitTypeEnum::Value() const { @@ -10806,19 +8516,11 @@ Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTendonTypeEnum::Value Ifc4x3_rc2::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTendonTypeEnum::Value) IFC4X3_RC2_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTendonTypeEnum::operator Ifc4x3_rc2::IfcTendonTypeEnum::Value() const { @@ -10847,17 +8549,11 @@ Ifc4x3_rc2::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x3_rc2::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4X3_RC2_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTextPath::Value Ifc4x3_rc2::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc2::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x3_rc2::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x3_rc2::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4x3_rc2::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTextPath::Value) IFC4X3_RC2_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTextPath::operator Ifc4x3_rc2::IfcTextPath::Value() const { @@ -10886,20 +8582,11 @@ Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::Value Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::Value) IFC4X3_RC2_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::operator Ifc4x3_rc2::IfcTimeSeriesDataTypeEnum::Value() const { @@ -10928,23 +8615,11 @@ Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcTrackElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKENDOFALIGNMENT", "BLOCKINGDEVICE", "VEHICLESTOP", "SLEEPER", "HALF_SET_OF_BLADES", "SPEEDREGULATOR", "DERAILER", "FROG", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTrackElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTrackElementTypeEnum::Value Ifc4x3_rc2::IfcTrackElementTypeEnum::FromString(const std::string& s) { - if (s == "TRACKENDOFALIGNMENT") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_TRACKENDOFALIGNMENT; - if (s == "BLOCKINGDEVICE") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_BLOCKINGDEVICE; - if (s == "VEHICLESTOP") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_VEHICLESTOP; - if (s == "SLEEPER") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_SLEEPER; - if (s == "HALF_SET_OF_BLADES") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_HALF_SET_OF_BLADES; - if (s == "SPEEDREGULATOR") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_SPEEDREGULATOR; - if (s == "DERAILER") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_DERAILER; - if (s == "FROG") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_FROG; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTrackElementTypeEnum::IfcTrackElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTrackElementTypeEnum::Value) IFC4X3_RC2_IfcTrackElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTrackElementTypeEnum::operator Ifc4x3_rc2::IfcTrackElementTypeEnum::Value() const { @@ -10973,22 +8648,11 @@ Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) } const char* Ifc4x3_rc2::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "CHOPPER", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTransformerTypeEnum::Value Ifc4x3_rc2::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "CHOPPER") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_CHOPPER; - if (s == "COMBINED") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTransformerTypeEnum::Value) IFC4X3_RC2_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTransformerTypeEnum::operator Ifc4x3_rc2::IfcTransformerTypeEnum::Value() const { @@ -11017,17 +8681,11 @@ Ifc4x3_rc2::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x3_rc2::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4X3_RC2_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTransitionCode::Value Ifc4x3_rc2::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4x3_rc2::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4x3_rc2::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x3_rc2::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x3_rc2::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTransitionCode::Value) IFC4X3_RC2_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTransitionCode::operator Ifc4x3_rc2::IfcTransitionCode::Value() const { @@ -11056,19 +8714,11 @@ Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType(const std::string& v) } const char* Ifc4x3_rc2::IfcTransitionCurveType::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIQUADRATICPARABOLA", "BLOSSCURVE", "CLOTHOIDCURVE", "COSINECURVE", "CUBICPARABOLA", "SINECURVE" }; - return names[v]; + return IFC4X3_RC2_IfcTransitionCurveType_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTransitionCurveType::Value Ifc4x3_rc2::IfcTransitionCurveType::FromString(const std::string& s) { - if (s == "BIQUADRATICPARABOLA") return ::Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType_BIQUADRATICPARABOLA; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType_BLOSSCURVE; - if (s == "CLOTHOIDCURVE") return ::Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType_CLOTHOIDCURVE; - if (s == "COSINECURVE") return ::Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType_COSINECURVE; - if (s == "CUBICPARABOLA") return ::Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType_CUBICPARABOLA; - if (s == "SINECURVE") return ::Ifc4x3_rc2::IfcTransitionCurveType::IfcTransitionCurveType_SINECURVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTransitionCurveType::Value) IFC4X3_RC2_IfcTransitionCurveType_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTransitionCurveType::operator Ifc4x3_rc2::IfcTransitionCurveType::Value() const { @@ -11097,20 +8747,11 @@ Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedTypeEnum(c } const char* Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::Value Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_LIFTINGGEAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::Value) IFC4X3_RC2_IfcTransportElementFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::operator Ifc4x3_rc2::IfcTransportElementFixedTypeEnum::Value() const { @@ -11139,22 +8780,11 @@ Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType } const char* Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VEHICLE", "VEHICLETRACKED", "ROLLINGSTOCK", "VEHICLEWHEELED", "VEHICLEAIR", "CARGO", "VEHICLEMARINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::Value Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::FromString(const std::string& s) { - if (s == "VEHICLE") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLE; - if (s == "VEHICLETRACKED") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLETRACKED; - if (s == "ROLLINGSTOCK") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_ROLLINGSTOCK; - if (s == "VEHICLEWHEELED") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEWHEELED; - if (s == "VEHICLEAIR") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEAIR; - if (s == "CARGO") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_CARGO; - if (s == "VEHICLEMARINE") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEMARINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::Value) IFC4X3_RC2_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::operator Ifc4x3_rc2::IfcTransportElementNonFixedTypeEnum::Value() const { @@ -11183,16 +8813,11 @@ Ifc4x3_rc2::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4x3_rc2::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC2_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTrimmingPreference::Value Ifc4x3_rc2::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x3_rc2::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x3_rc2::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc2::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTrimmingPreference::Value) IFC4X3_RC2_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTrimmingPreference::operator Ifc4x3_rc2::IfcTrimmingPreference::Value() const { @@ -11221,16 +8846,11 @@ Ifc4x3_rc2::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcTubeBundleTypeEnum::Value Ifc4x3_rc2::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x3_rc2::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcTubeBundleTypeEnum::Value) IFC4X3_RC2_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcTubeBundleTypeEnum::operator Ifc4x3_rc2::IfcTubeBundleTypeEnum::Value() const { @@ -11259,43 +8879,11 @@ Ifc4x3_rc2::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcUnitEnum::Value Ifc4x3_rc2::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcUnitEnum::Value) IFC4X3_RC2_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcUnitEnum::operator Ifc4x3_rc2::IfcUnitEnum::Value() const { @@ -11324,24 +8912,11 @@ Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(c } const char* Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::Value Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "COMBINED") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::Value) IFC4X3_RC2_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::operator Ifc4x3_rc2::IfcUnitaryControlElementTypeEnum::Value() const { @@ -11370,20 +8945,11 @@ Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std:: } const char* Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::Value Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::Value) IFC4X3_RC2_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::operator Ifc4x3_rc2::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -11412,36 +8978,11 @@ Ifc4x3_rc2::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcValveTypeEnum::Value Ifc4x3_rc2::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcValveTypeEnum::Value) IFC4X3_RC2_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcValveTypeEnum::operator Ifc4x3_rc2::IfcValveTypeEnum::Value() const { @@ -11470,21 +9011,11 @@ Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::st } const char* Ifc4x3_rc2::IfcVibrationDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_YIELD", "SHEAR_YIELD", "AXIAL_YIELD", "FRICTION", "VISCOUS", "RUBBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcVibrationDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcVibrationDamperTypeEnum::Value Ifc4x3_rc2::IfcVibrationDamperTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_YIELD") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_BENDING_YIELD; - if (s == "SHEAR_YIELD") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_SHEAR_YIELD; - if (s == "AXIAL_YIELD") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_AXIAL_YIELD; - if (s == "FRICTION") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_FRICTION; - if (s == "VISCOUS") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_VISCOUS; - if (s == "RUBBER") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_RUBBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcVibrationDamperTypeEnum::Value) IFC4X3_RC2_IfcVibrationDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcVibrationDamperTypeEnum::operator Ifc4x3_rc2::IfcVibrationDamperTypeEnum::Value() const { @@ -11513,18 +9044,11 @@ Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std } const char* Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "BASE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::Value Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "BASE") return ::Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_BASE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::Value) IFC4X3_RC2_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::operator Ifc4x3_rc2::IfcVibrationIsolatorTypeEnum::Value() const { @@ -11553,21 +9077,11 @@ Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::Value Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::Value) IFC4X3_RC2_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::operator Ifc4x3_rc2::IfcVoidingFeatureTypeEnum::Value() const { @@ -11596,26 +9110,11 @@ Ifc4x3_rc2::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "RETAININGWALL", "WAVEWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWallTypeEnum::Value Ifc4x3_rc2::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "RETAININGWALL") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_RETAININGWALL; - if (s == "WAVEWALL") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_WAVEWALL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWallTypeEnum::Value) IFC4X3_RC2_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWallTypeEnum::operator Ifc4x3_rc2::IfcWallTypeEnum::Value() const { @@ -11644,22 +9143,11 @@ Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string } const char* Ifc4x3_rc2::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWasteTerminalTypeEnum::Value Ifc4x3_rc2::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWasteTerminalTypeEnum::Value) IFC4X3_RC2_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWasteTerminalTypeEnum::operator Ifc4x3_rc2::IfcWasteTerminalTypeEnum::Value() const { @@ -11688,27 +9176,11 @@ Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std:: } const char* Ifc4x3_rc2::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWindowPanelOperationEnum::Value Ifc4x3_rc2::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWindowPanelOperationEnum::Value) IFC4X3_RC2_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWindowPanelOperationEnum::operator Ifc4x3_rc2::IfcWindowPanelOperationEnum::Value() const { @@ -11737,19 +9209,11 @@ Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::st } const char* Ifc4x3_rc2::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWindowPanelPositionEnum::Value Ifc4x3_rc2::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWindowPanelPositionEnum::Value) IFC4X3_RC2_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWindowPanelPositionEnum::operator Ifc4x3_rc2::IfcWindowPanelPositionEnum::Value() const { @@ -11778,21 +9242,11 @@ Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const } const char* Ifc4x3_rc2::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWindowStyleConstructionEnum::Value Ifc4x3_rc2::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWindowStyleConstructionEnum::Value) IFC4X3_RC2_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWindowStyleConstructionEnum::operator Ifc4x3_rc2::IfcWindowStyleConstructionEnum::Value() const { @@ -11821,24 +9275,11 @@ Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std:: } const char* Ifc4x3_rc2::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWindowStyleOperationEnum::Value Ifc4x3_rc2::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWindowStyleOperationEnum::Value) IFC4X3_RC2_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWindowStyleOperationEnum::operator Ifc4x3_rc2::IfcWindowStyleOperationEnum::Value() const { @@ -11867,18 +9308,11 @@ Ifc4x3_rc2::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWindowTypeEnum::Value Ifc4x3_rc2::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4x3_rc2::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4x3_rc2::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4x3_rc2::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWindowTypeEnum::Value) IFC4X3_RC2_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWindowTypeEnum::operator Ifc4x3_rc2::IfcWindowTypeEnum::Value() const { @@ -11907,24 +9341,11 @@ Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const s } const char* Ifc4x3_rc2::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWindowTypePartitioningEnum::Value Ifc4x3_rc2::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWindowTypePartitioningEnum::Value) IFC4X3_RC2_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWindowTypePartitioningEnum::operator Ifc4x3_rc2::IfcWindowTypePartitioningEnum::Value() const { @@ -11953,18 +9374,11 @@ Ifc4x3_rc2::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWorkCalendarTypeEnum::Value Ifc4x3_rc2::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x3_rc2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x3_rc2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x3_rc2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWorkCalendarTypeEnum::Value) IFC4X3_RC2_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWorkCalendarTypeEnum::operator Ifc4x3_rc2::IfcWorkCalendarTypeEnum::Value() const { @@ -11993,18 +9407,11 @@ Ifc4x3_rc2::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc2::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWorkPlanTypeEnum::Value Ifc4x3_rc2::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc2::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc2::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc2::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWorkPlanTypeEnum::Value) IFC4X3_RC2_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWorkPlanTypeEnum::operator Ifc4x3_rc2::IfcWorkPlanTypeEnum::Value() const { @@ -12033,18 +9440,11 @@ Ifc4x3_rc2::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc2::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC2_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc2::IfcWorkScheduleTypeEnum::Value Ifc4x3_rc2::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc2::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc2::IfcWorkScheduleTypeEnum::Value) IFC4X3_RC2_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc2::IfcWorkScheduleTypeEnum::operator Ifc4x3_rc2::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x3_rc3-schema.cpp b/src/ifcparse/Ifc4x3_rc3-schema.cpp index 68b4918a47..c8cb47ec99 100644 --- a/src/ifcparse/Ifc4x3_rc3-schema.cpp +++ b/src/ifcparse/Ifc4x3_rc3-schema.cpp @@ -2609,6 +2609,3892 @@ class IFC4X3_RC3_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"RAILWAYCROCODILE"s, +"RAILWAYDETONATOR"s, +"IfcAlignmentCantSegmentTypeEnum"s, +"CONSTANTCANT"s, +"LINEARTRANSITION"s, +"HELMERTCURVE"s, +"BLOSSCURVE"s, +"COSINECURVE"s, +"SINECURVE"s, +"VIENNESEBEND"s, +"IfcAlignmentHorizontalSegmentTypeEnum"s, +"LINE"s, +"CIRCULARARC"s, +"CLOTHOID"s, +"CUBIC"s, +"CUBICSPIRAL"s, +"IfcAlignmentTypeEnum"s, +"IfcAlignmentVerticalSegmentTypeEnum"s, +"CONSTANTGRADIENT"s, +"PARABOLICARC"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAnnotationTypeEnum"s, +"ASSUMEDPOINT"s, +"ASBUILTAREA"s, +"ASBUILTLINE"s, +"NON_PHYSICAL_SIGNAL"s, +"ASSUMEDLINE"s, +"WIDTHEVENT"s, +"ASSUMEDAREA"s, +"SUPERELEVATIONEVENT"s, +"ASBUILTPOINT"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"RAILWAY_COMMUNICATION_TERMINAL"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"GIRDER_SEGMENT"s, +"DIAPHRAGM"s, +"PIERCAP"s, +"HATSTONE"s, +"CORNICE"s, +"EDGEBEAM"s, +"IfcBearingTypeDisplacementEnum"s, +"FIXED_MOVEMENT"s, +"GUIDED_LONGITUDINAL"s, +"GUIDED_TRANSVERSAL"s, +"FREE_MOVEMENT"s, +"IfcBearingTypeEnum"s, +"CYLINDRICAL"s, +"SPHERICAL"s, +"ELASTOMERIC"s, +"POT"s, +"GUIDE"s, +"ROCKER"s, +"ROLLER"s, +"DISK"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBridgePartTypeEnum"s, +"ABUTMENT"s, +"DECK"s, +"DECK_SEGMENT"s, +"FOUNDATION"s, +"PIER"s, +"PIER_SEGMENT"s, +"PYLON"s, +"SUBSTRUCTURE"s, +"SUPERSTRUCTURE"s, +"SURFACESTRUCTURE"s, +"IfcBridgeTypeEnum"s, +"ARCHED"s, +"CABLE_STAYED"s, +"CANTILEVER"s, +"CULVERT"s, +"FRAMEWORK"s, +"GIRDER"s, +"SUSPENSION"s, +"TRUSS"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"APRON"s, +"ARMOURUNIT"s, +"SAFETYCAGE"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"REINFORCING"s, +"PRESTRESSING"s, +"EROSIONPREVENTION"s, +"IfcBuiltSystemTypeEnum"s, +"MOORING"s, +"TRACKCIRCUIT"s, +"MOORINGSYSTEM"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"CABLEBRACKET"s, +"CATENARYWIRE"s, +"DROPPER"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"FANOUT"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"CONTACTWIRESEGMENT"s, +"FIBERSEGMENT"s, +"FIBERTUBE"s, +"OPTICALCABLESEGMENT"s, +"STITCHWIRE"s, +"WIREPAIRSEGMENT"s, +"IfcCaissonFoundationTypeEnum"s, +"WELL"s, +"CAISSON"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"PIERSTEM"s, +"PIERSTEM_SEGMENT"s, +"STANDCOLUMN"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"AUTOMATON"s, +"INTELLIGENT_PERIPHERAL"s, +"IP_NETWORK_EQUIPMENT"s, +"OPTICAL_NETWORK_UNIT"s, +"TELECOMMAND"s, +"TELEPHONYEXCHANGE"s, +"TRANSITIONCOMPONENT"s, +"TRANSPONDER"s, +"TRANSPORTEQUIPMENT"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcConveyorSegmentTypeEnum"s, +"CHUTECONVEYOR"s, +"BELTCONVEYOR"s, +"SCREWCONVEYOR"s, +"BUCKETCONVEYOR"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCourseTypeEnum"s, +"ARMOUR"s, +"FILTER"s, +"BALLASTBED"s, +"CORE"s, +"PAVEMENT"s, +"PROTECTION"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"COPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"EXPANSION_JOINT_DEVICE"s, +"CABLEARRANGER"s, +"INSULATOR"s, +"LOCK"s, +"TENSIONINGEQUIPMENT"s, +"RAILPAD"s, +"SLIDINGCHAIR"s, +"RAIL_LUBRICATION"s, +"PANEL_STRENGTHENING"s, +"RAILBRACE"s, +"ELASTIC_CUSHION"s, +"SOUNDABSORPTION"s, +"POINTMACHINEMOUNTINGDEVICE"s, +"POINT_MACHINE_LOCKING_DEVICE"s, +"RAIL_MECHANICAL_EQUIPMENT"s, +"BIRDPROTECTION"s, +"IfcDistributionBoardTypeEnum"s, +"SWITCHBOARD"s, +"CONSUMERUNIT"s, +"MOTORCONTROLCENTRE"s, +"DISTRIBUTIONFRAME"s, +"DISTRIBUTIONBOARD"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"WIRELESS"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"CATENARY_SYSTEM"s, +"OVERHEAD_CONTACTLINE_SYSTEM"s, +"RETURN_CIRCUIT"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"BOOM_BARRIER"s, +"TURNSTILE"s, +"IfcDoorTypeOperationEnum"s, +"DOUBLE_PANEL_SINGLE_SWING"s, +"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_PANEL_DOUBLE_SWING"s, +"DOUBLE_PANEL_SLIDING"s, +"DOUBLE_PANEL_FOLDING"s, +"REVOLVING_HORIZONTAL"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"DOUBLE_PANEL_LIFTING_VERTICAL"s, +"LIFTING_HORIZONTAL"s, +"LIFTING_VERTICAL_LEFT"s, +"LIFTING_VERTICAL_RIGHT"s, +"REVOLVING_VERTICAL"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcEarthworksCutTypeEnum"s, +"DREDGING"s, +"EXCAVATION"s, +"OVEREXCAVATION"s, +"TOPSOILREMOVAL"s, +"STEPEXCAVATION"s, +"PAVEMENTMILLING"s, +"CUT"s, +"BASE_EXCAVATION"s, +"IfcEarthworksFillTypeEnum"s, +"BACKFILL"s, +"COUNTERWEIGHT"s, +"SUBGRADE"s, +"EMBANKMENT"s, +"TRANSITIONSECTION"s, +"SUBGRADEBED"s, +"SLOPEFILL"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"CAPACITOR"s, +"COMPENSATOR"s, +"INDUCTOR"s, +"RECHARGER"s, +"IfcElectricFlowTreatmentDeviceTypeEnum"s, +"ELECTRONICFILTER"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"CROSS_BRACING"s, +"MAST"s, +"SIGNALASSEMBLY"s, +"GRID"s, +"SHELTER"s, +"SUPPORTINGASSEMBLY"s, +"SUSPENSIONASSEMBLY"s, +"TRACTION_SWITCHING_ASSEMBLY"s, +"TRACKPANEL"s, +"TURNOUTPANEL"s, +"DILATATIONPANEL"s, +"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"s, +"ENTRANCEWORKS"s, +"SUMPBUSTER"s, +"TRAFFIC_CALMING_DEVICE"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFacilityPartCommonTypeEnum"s, +"SEGMENT"s, +"ABOVEGROUND"s, +"LEVELCROSSING"s, +"BELOWGROUND"s, +"TERMINAL"s, +"IfcFacilityUsageEnum"s, +"LATERAL"s, +"REGION"s, +"VERTICAL"s, +"LONGITUDINAL"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"FIREMONITOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"COMBINED"s, +"VOLTMETER"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"TECHNICALCABINET"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"SOIL_BORING_POINT"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"TURNOUTHEATING"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcImpactProtectionDeviceTypeEnum"s, +"CRASHCUSHION"s, +"DAMPINGSYSTEM"s, +"FENDER"s, +"BUMPER"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLiquidTerminalTypeEnum"s, +"LOADINGARM"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMarineFacilityTypeEnum"s, +"CANAL"s, +"WATERWAYSHIPLIFT"s, +"REVETMENT"s, +"LAUNCHRECOVERY"s, +"MARINEDEFENCE"s, +"HYDROLIFT"s, +"SHIPYARD"s, +"SHIPLIFT"s, +"PORT"s, +"QUAY"s, +"FLOATINGDOCK"s, +"NAVIGATIONALCHANNEL"s, +"BREAKWATER"s, +"DRYDOCK"s, +"JETTY"s, +"SHIPLOCK"s, +"BARRIERBEACH"s, +"SLIPWAY"s, +"WATERWAY"s, +"IfcMarinePartTypeEnum"s, +"CREST"s, +"MANUFACTURING"s, +"LOWWATERLINE"s, +"WATERFIELD"s, +"CILL_LEVEL"s, +"BERTHINGSTRUCTURE"s, +"COPELEVEL"s, +"CHAMBER"s, +"STORAGE"s, +"APPROACHCHANNEL"s, +"VEHICLESERVICING"s, +"SHIPTRANSFER"s, +"GATEHEAD"s, +"GUDINGSTRUCTURE"s, +"BELOWWATERLINE"s, +"WEATHERSIDE"s, +"LANDFIELD"s, +"LEEWARDSIDE"s, +"ABOVEWATERLINE"s, +"ANCHORAGE"s, +"NAVIGATIONALAREA"s, +"HIGHWATERLINE"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"COUPLER"s, +"RAILJOINT"s, +"RAILFASTENING"s, +"CHAIN"s, +"ROPE"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"STIFFENING_RIB"s, +"ARCH_SEGMENT"s, +"SUSPENSION_CABLE"s, +"SUSPENDER"s, +"STAY_CABLE"s, +"STRUCTURALCABLE"s, +"TIEBAR"s, +"IfcMobileTelecommunicationsApplianceTypeEnum"s, +"E_UTRAN_NODE_B"s, +"REMOTE_RADIO_UNIT"s, +"ACCESSPOINT"s, +"BASETRANSCEIVERSTATION"s, +"REMOTEUNIT"s, +"BASEBANDUNIT"s, +"MASTERUNIT"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMooringDeviceTypeEnum"s, +"LINETENSIONER"s, +"MAGNETICDEVICE"s, +"MOORINGHOOKS"s, +"VACUUMDEVICE"s, +"BOLLARD"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNavigationElementTypeEnum"s, +"BEACON"s, +"BUOY"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPavementTypeEnum"s, +"FLEXIBLE"s, +"RIGID"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"FLANGE_PLATE"s, +"WEB_PLATE"s, +"STIFFENER_PLATE"s, +"GUSSET_PLATE"s, +"COVER_PLATE"s, +"SPLICE_PLATE"s, +"BASE_PLATE"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"BLISTER"s, +"DEVIATOR"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"ANTI_ARCING_DEVICE"s, +"SPARKGAP"s, +"VOLTAGELIMITER"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailTypeEnum"s, +"RACKRAIL"s, +"BLADE"s, +"GUARDRAIL"s, +"STOCKRAIL"s, +"CHECKRAIL"s, +"RAIL"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"BALUSTRADE"s, +"FENCE"s, +"IfcRailwayPartTypeEnum"s, +"TRACKSTRUCTURE"s, +"TRACKSTRUCTUREPART"s, +"LINESIDESTRUCTUREPART"s, +"DILATATIONSUPERSTRUCTURE"s, +"PLAINTRACKSUPESTRUCTURE"s, +"LINESIDESTRUCTURE"s, +"TURNOUTSUPERSTRUCTURE"s, +"IfcRailwayTypeEnum"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"KILOPOINT"s, +"MILEPOINT"s, +"STATION"s, +"REFERENCEMARKER"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcedSoilTypeEnum"s, +"SURCHARGEPRELOADED"s, +"VERTICALLYDRAINED"s, +"DYNAMICALLYCOMPACTED"s, +"REPLACED"s, +"ROLLERCOMPACTED"s, +"GROUTED"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"SPACEBAR"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoadPartTypeEnum"s, +"ROADSIDEPART"s, +"BUS_STOP"s, +"HARDSHOULDER"s, +"PASSINGBAY"s, +"ROADWAYPLATEAU"s, +"ROADSIDE"s, +"REFUGEISLAND"s, +"TOLLPLAZA"s, +"CENTRALRESERVE"s, +"SIDEWALK"s, +"PARKINGBAY"s, +"RAILWAYCROSSING"s, +"PEDESTRIAN_CROSSING"s, +"SOFTSHOULDER"s, +"BICYCLECROSSING"s, +"CENTRALISLAND"s, +"SHOULDER"s, +"TRAFFICLANE"s, +"ROADSEGMENT"s, +"ROUNDABOUT"s, +"LAYBY"s, +"CARRIAGEWAY"s, +"TRAFFICISLAND"s, +"IfcRoadTypeEnum"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"EARTHQUAKESENSOR"s, +"FOREIGNOBJECTDETECTIONSENSOR"s, +"OBSTACLESENSOR"s, +"RAINSENSOR"s, +"SNOWDEPTHSENSOR"s, +"TRAINSENSOR"s, +"TURNOUTCLOSURESENSOR"s, +"WHEELSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSignTypeEnum"s, +"MARKER"s, +"PICTORAL"s, +"IfcSignalTypeEnum"s, +"VISUAL"s, +"AUDIO"s, +"MIXED"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"APPROACH_SLAB"s, +"WEARING"s, +"TRACKSLAB"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"BERTH"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"RESERVATION"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"LADDER"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"DEFECT"s, +"HATCHMARKING"s, +"LINEMARKING"s, +"PAVEMENTSURFACEMARKING"s, +"SYMBOLMARKING"s, +"NONSKIDSURFACING"s, +"RUMBLESTRIP"s, +"TRANSVERSERUMBLESTRIP"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"START_AND_STOP_EQUIPMENT"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"SUBRACK"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"VESSEL"s, +"OILRETENTIONTRAY"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonConduitTypeEnum"s, +"GROUTING_DUCT"s, +"TRUMPET"s, +"DIABOLO"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTrackElementTypeEnum"s, +"TRACKENDOFALIGNMENT"s, +"BLOCKINGDEVICE"s, +"VEHICLESTOP"s, +"SLEEPER"s, +"HALF_SET_OF_BLADES"s, +"SPEEDREGULATOR"s, +"DERAILER"s, +"FROG"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"CHOPPER"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementFixedTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"HAULINGGEAR"s, +"IfcTransportElementNonFixedTypeEnum"s, +"VEHICLE"s, +"VEHICLETRACKED"s, +"ROLLINGSTOCK"s, +"VEHICLEWHEELED"s, +"VEHICLEAIR"s, +"CARGO"s, +"VEHICLEMARINE"s, +"IfcTransportElementTypeSelect"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationDamperTypeEnum"s, +"BENDING_YIELD"s, +"SHEAR_YIELD"s, +"AXIAL_YIELD"s, +"VISCOUS"s, +"RUBBER"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"BASE"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"RETAININGWALL"s, +"WAVEWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcAlignmentParameterSegment"s, +"IfcAlignmentVerticalSegment"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcCurveMeasureSelect"s, +"IfcDerivedMeasureValue"s, +"IfcFacilityPartTypeSelect"s, +"IfcImpactProtectionDeviceTypeSelect"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcAlignmentCantSegment"s, +"IfcAlignmentHorizontalSegment"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenCrossProfileDef"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointByDistanceExpression"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcSegment"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcAxis2PlacementLinear"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcCurveSegment"s, +"IfcDirection"s, +"IfcDirectrixCurveSweptAreaSolid"s, +"IfcDirectrixDistanceSweptAreaSolid"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcInclinedReferenceSweptAreaSolid"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPolynomialCurve"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelAssociatesProfileDef"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelPositions"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSectionedSurface"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcSpiral"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcThirdOrderPolynomialSpiral"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuildingStorey"s, +"IfcBuiltElementType"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcClothoid"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCosine"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCourseType"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCylindricalSurface"s, +"IfcDeepFoundationType"s, +"IfcDirectrixDerivedReferenceSweptAreaSolid"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFacility"s, +"IfcFacilityPart"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGeotechnicalElement"s, +"IfcGeotechnicalStratum"s, +"IfcGradientCurve"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcImpactProtectionDevice"s, +"IfcImpactProtectionDeviceType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcKerbType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLinearElement"s, +"IfcLiquidTerminalType"s, +"IfcMarineFacility"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMobileTelecommunicationsApplianceType"s, +"IfcMooringDeviceType"s, +"IfcMotorConnectionType"s, +"IfcNavigationElementType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPavementType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlant"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailType"s, +"IfcRailingType"s, +"IfcRailway"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAggregates"s, +"IfcRoad"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcSecondOrderPolynomialSpiral"s, +"IfcSegmentedReferenceCurve"s, +"IfcShadingDeviceType"s, +"IfcSign"s, +"IfcSignType"s, +"IfcSignalType"s, +"IfcSine"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSolidStratum"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonConduit"s, +"IfcTendonConduitType"s, +"IfcTendonType"s, +"IfcTrackElementType"s, +"IfcTransformerType"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationDamper"s, +"IfcVibrationDamperType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVienneseBend"s, +"IfcVirtualElement"s, +"IfcVoidStratum"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWaterStratum"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcInterferenceSelect"s, +"IfcSpatialReferenceSelect"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignmentCant"s, +"IfcAlignmentHorizontal"s, +"IfcAlignmentSegment"s, +"IfcAlignmentVertical"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBearingType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBridge"s, +"IfcBuilding"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBuiltElement"s, +"IfcBuiltSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcCaissonFoundationType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcConveyorSegmentType"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCourse"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDeepFoundation"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionBoardType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcEarthworksCut"s, +"IfcEarthworksElement"s, +"IfcEarthworksFill"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricFlowTreatmentDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGeotechnicalAssembly"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcKerb"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcLiquidTerminal"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMobileTelecommunicationsAppliance"s, +"IfcMooringDevice"s, +"IfcMotorConnection"s, +"IfcNavigationElement"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPavement"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRail"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcedSoil"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSignal"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTrackElement"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBearing"s, +"IfcBoiler"s, +"IfcBorehole"s, +"IfcBuildingElementProxy"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcCaissonFoundation"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcConveyorSegment"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionBoard"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricFlowTreatmentDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcGeomodel"s, +"IfcGeoslice"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"RailHeadDistance"s, +"StartDistAlong"s, +"HorizontalLength"s, +"StartCantLeft"s, +"EndCantLeft"s, +"StartCantRight"s, +"EndCantRight"s, +"StartPoint"s, +"StartDirection"s, +"StartRadiusOfCurvature"s, +"EndRadiusOfCurvature"s, +"SegmentLength"s, +"GravityCenterLineHeight"s, +"StartTag"s, +"EndTag"s, +"DesignParameters"s, +"StartHeight"s, +"StartGradient"s, +"EndGradient"s, +"RadiusOfCurvature"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"Radius"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"ClothoidConstant"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Segments"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CosineTerm"s, +"ConstantTerm"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"Placement"s, +"SegmentStart"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"StartDistance"s, +"EndDistance"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"Tag"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"UsageType"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"BaseCurve"s, +"EndPoint"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"FixedAxisVertical"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"Mountable"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"RelativePlacement"s, +"CartesianPosition"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"ScaleY"s, +"ScaleZ"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"PlacementRelTo"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Distance"s, +"HorizontalWidths"s, +"Widths"s, +"Slopes"s, +"Tags"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"SizeInX"s, +"SizeInY"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"CoefficientsX"s, +"CoefficientsY"s, +"CoefficientsZ"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"RestartDistance"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"RelatingProfileDef"s, +"ConnectionGeometry"s, +"RelatingElement"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatingPositioningElement"s, +"RelatedProducts"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"QuadraticTerm"s, +"LinearTerm"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"SpineCurve"s, +"Transition"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"SineTerm"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"Styles"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"QubicTerm"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"StartCurvature"s, +"EndCurvature"s, +"GravityCenterHeight"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"Positions"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"PositionedRelativeTo"s, +"ReferencedInStructures"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"UsingCurves"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"ServicesFacilities"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4X3_RC3"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2620,14498 +6506,11501 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4X3_RC3_populate_schema() { - IFC4X3_RC3_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_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"); - IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BELL"); - items.push_back("BREAKGLASSBUTTON"); - items.push_back("LIGHT"); - items.push_back("MANUALPULLBOX"); - items.push_back("NOTDEFINED"); - items.push_back("RAILWAYCROCODILE"); - items.push_back("RAILWAYDETONATOR"); - items.push_back("SIREN"); - items.push_back("USERDEFINED"); - items.push_back("WHISTLE"); - IFC4X3_RC3_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BLOSSCURVE"); - items.push_back("CONSTANTCANT"); - items.push_back("COSINECURVE"); - items.push_back("HELMERTCURVE"); - items.push_back("LINEARTRANSITION"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type("IfcAlignmentCantSegmentTypeEnum", 32, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BLOSSCURVE"); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("COSINECURVE"); - items.push_back("CUBIC"); - items.push_back("CUBICSPIRAL"); - items.push_back("HELMERTCURVE"); - items.push_back("LINE"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentHorizontalSegmentTypeEnum", 35, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 38, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("CONSTANTGRADIENT"); - items.push_back("PARABOLICARC"); - IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentVerticalSegmentTypeEnum", 41, items); - } - IFC4X3_RC3_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 42, 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"); - IFC4X3_RC3_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 43, 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"); - IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 44, items); - } - IFC4X3_RC3_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 45, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ASBUILTAREA"); - items.push_back("ASBUILTLINE"); - items.push_back("ASBUILTPOINT"); - items.push_back("ASSUMEDAREA"); - items.push_back("ASSUMEDLINE"); - items.push_back("ASSUMEDPOINT"); - items.push_back("NON_PHYSICAL_SIGNAL"); - items.push_back("NOTDEFINED"); - items.push_back("SUPERELEVATIONEVENT"); - items.push_back("USERDEFINED"); - items.push_back("WIDTHEVENT"); - IFC4X3_RC3_IfcAnnotationTypeEnum_type = new enumeration_type("IfcAnnotationTypeEnum", 48, items); - } - IFC4X3_RC3_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 58, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 59, 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"); - IFC4X3_RC3_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 60, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC4X3_RC3_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 61, items); - } - { - std::vector items; items.reserve(14); - 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("RAILWAY_COMMUNICATION_TERMINAL"); - items.push_back("RECEIVER"); - items.push_back("SPEAKER"); - items.push_back("SWITCHER"); - items.push_back("TELEPHONE"); - items.push_back("TUNER"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 66, 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"); - IFC4X3_RC3_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 109, 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"); - IFC4X3_RC3_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 112, 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"); - IFC4X3_RC3_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 75, 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"); - IFC4X3_RC3_IfcBearingTypeDisplacementEnum_type = new enumeration_type("IfcBearingTypeDisplacementEnum", 78, 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"); - IFC4X3_RC3_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 79, 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"); - IFC4X3_RC3_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 80, items); - } - IFC4X3_RC3_IfcBinary_type = new type_declaration("IfcBinary", 82, 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"); - IFC4X3_RC3_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 87, items); - } - IFC4X3_RC3_IfcBoolean_type = new type_declaration("IfcBoolean", 88, 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"); - IFC4X3_RC3_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 91, 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"); - IFC4X3_RC3_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 106, 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"); - IFC4X3_RC3_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 107, items); - } - { - std::vector items; items.reserve(7); - items.push_back("APRON"); - items.push_back("ARMOURUNIT"); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("SAFETYCAGE"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 117, 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"); - IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 120, items); - } - { - std::vector items; items.reserve(11); - items.push_back("EROSIONPREVENTION"); - 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"); - IFC4X3_RC3_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 123, items); - } - { - std::vector items; items.reserve(14); - items.push_back("EROSIONPREVENTION"); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("MOORING"); - items.push_back("MOORINGSYSTEM"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("PRESTRESSING"); - items.push_back("REINFORCING"); - items.push_back("SHADING"); - items.push_back("TRACKCIRCUIT"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcBuiltSystemTypeEnum_type = new enumeration_type("IfcBuiltSystemTypeEnum", 127, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 130, 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"); - IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 133, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CABLEBRACKET"); - items.push_back("CABLELADDERSEGMENT"); - items.push_back("CABLETRAYSEGMENT"); - items.push_back("CABLETRUNKINGSEGMENT"); - items.push_back("CATENARYWIRE"); - items.push_back("CONDUITSEGMENT"); - items.push_back("DROPPER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 136, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONNECTOR"); - items.push_back("ENTRY"); - items.push_back("EXIT"); - items.push_back("FANOUT"); - items.push_back("JUNCTION"); - items.push_back("NOTDEFINED"); - items.push_back("TRANSITION"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 139, items); - } - { - std::vector items; items.reserve(12); - items.push_back("BUSBARSEGMENT"); - items.push_back("CABLESEGMENT"); - items.push_back("CONDUCTORSEGMENT"); - items.push_back("CONTACTWIRESEGMENT"); - items.push_back("CORESEGMENT"); - items.push_back("FIBERSEGMENT"); - items.push_back("FIBERTUBE"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALCABLESEGMENT"); - items.push_back("STITCHWIRE"); - items.push_back("USERDEFINED"); - items.push_back("WIREPAIRSEGMENT"); - IFC4X3_RC3_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 142, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CAISSON"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WELL"); - IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 145, items); - } - IFC4X3_RC3_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 146, 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"); - IFC4X3_RC3_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 157, 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"); - IFC4X3_RC3_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 160, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 163, 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"); - IFC4X3_RC3_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 177, 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"); - IFC4X3_RC3_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 186, items); - } - { - std::vector items; items.reserve(23); - items.push_back("ANTENNA"); - items.push_back("AUTOMATON"); - items.push_back("COMPUTER"); - items.push_back("FAX"); - items.push_back("GATEWAY"); - items.push_back("INTELLIGENT_PERIPHERAL"); - items.push_back("IP_NETWORK_EQUIPMENT"); - items.push_back("MODEM"); - items.push_back("NETWORKAPPLIANCE"); - items.push_back("NETWORKBRIDGE"); - items.push_back("NETWORKHUB"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICAL_NETWORK_UNIT"); - items.push_back("PRINTER"); - items.push_back("REPEATER"); - items.push_back("ROUTER"); - items.push_back("SCANNER"); - items.push_back("TELECOMMAND"); - items.push_back("TELEPHONYEXCHANGE"); - items.push_back("TRANSITIONCOMPONENT"); - items.push_back("TRANSPONDER"); - items.push_back("TRANSPORTEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 189, items); - } - IFC4X3_RC3_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 190, 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"); - IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 193, items); - } - IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 198, 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"); - IFC4X3_RC3_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 201, 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"); - IFC4X3_RC3_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 204, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4X3_RC3_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 212, 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"); - IFC4X3_RC3_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 215, 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"); - IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 218, 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"); - IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 221, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 224, items); - } - IFC4X3_RC3_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 228, 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"); - IFC4X3_RC3_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 233, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BELTCONVEYOR"); - items.push_back("BUCKETCONVEYOR"); - items.push_back("CHUTECONVEYOR"); - items.push_back("NOTDEFINED"); - items.push_back("SCREWCONVEYOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type = new enumeration_type("IfcConveyorSegmentTypeEnum", 238, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 241, 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"); - IFC4X3_RC3_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 244, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 250, 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"); - IFC4X3_RC3_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 252, items); - } - IFC4X3_RC3_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 254, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(8); - items.push_back("ARMOUR"); - items.push_back("BALLASTBED"); - items.push_back("CORE"); - items.push_back("FILTER"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENT"); - items.push_back("PROTECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCourseTypeEnum_type = new enumeration_type("IfcCourseTypeEnum", 257, items); - } - { - 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"); - IFC4X3_RC3_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 260, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 263, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 271, items); - } - IFC4X3_RC3_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 272, 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"); - IFC4X3_RC3_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 277, 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"); - IFC4X3_RC3_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 290, 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"); - IFC4X3_RC3_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 291, items); - } - IFC4X3_RC3_IfcDate_type = new type_declaration("IfcDate", 292, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcDateTime_type = new type_declaration("IfcDateTime", 293, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 294, new simple_type(simple_type::integer_type)); - IFC4X3_RC3_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 295, 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"); - IFC4X3_RC3_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 303, items); - } - IFC4X3_RC3_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 304, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 306, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC3_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 308, items); - } - { - std::vector items; items.reserve(21); - items.push_back("ANCHORPLATE"); - items.push_back("BIRDPROTECTION"); - items.push_back("BRACKET"); - items.push_back("CABLEARRANGER"); - items.push_back("ELASTIC_CUSHION"); - items.push_back("EXPANSION_JOINT_DEVICE"); - items.push_back("INSULATOR"); - items.push_back("LOCK"); - items.push_back("NOTDEFINED"); - items.push_back("PANEL_STRENGTHENING"); - items.push_back("POINTMACHINEMOUNTINGDEVICE"); - items.push_back("POINT_MACHINE_LOCKING_DEVICE"); - items.push_back("RAILBRACE"); - items.push_back("RAILPAD"); - items.push_back("RAIL_LUBRICATION"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT"); - items.push_back("SHOE"); - items.push_back("SLIDINGCHAIR"); - items.push_back("SOUNDABSORPTION"); - items.push_back("TENSIONINGEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 314, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CONSUMERUNIT"); - items.push_back("DISTRIBUTIONBOARD"); - items.push_back("DISTRIBUTIONFRAME"); - items.push_back("MOTORCONTROLCENTRE"); - items.push_back("NOTDEFINED"); - items.push_back("SWITCHBOARD"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcDistributionBoardTypeEnum_type = new enumeration_type("IfcDistributionBoardTypeEnum", 317, 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"); - IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 320, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CABLE"); - items.push_back("CABLECARRIER"); - items.push_back("DUCT"); - items.push_back("NOTDEFINED"); - items.push_back("PIPE"); - items.push_back("USERDEFINED"); - items.push_back("WIRELESS"); - IFC4X3_RC3_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 329, items); - } - { - std::vector items; items.reserve(47); - items.push_back("AIRCONDITIONING"); - items.push_back("AUDIOVISUAL"); - items.push_back("CATENARY_SYSTEM"); - 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("OVERHEAD_CONTACTLINE_SYSTEM"); - items.push_back("POWERGENERATION"); - items.push_back("RAINWATER"); - items.push_back("REFRIGERATION"); - items.push_back("RETURN_CIRCUIT"); - 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"); - IFC4X3_RC3_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 331, 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"); - IFC4X3_RC3_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 332, 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"); - IFC4X3_RC3_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 337, 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"); - IFC4X3_RC3_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 340, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4X3_RC3_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 341, 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"); - IFC4X3_RC3_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 345, 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"); - IFC4X3_RC3_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 346, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BOOM_BARRIER"); - items.push_back("DOOR"); - items.push_back("GATE"); - items.push_back("NOTDEFINED"); - items.push_back("TRAPDOOR"); - items.push_back("TURNSTILE"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 348, items); - } - { - std::vector items; items.reserve(25); - items.push_back("DOUBLE_PANEL_DOUBLE_SWING"); - items.push_back("DOUBLE_PANEL_FOLDING"); - items.push_back("DOUBLE_PANEL_LIFTING_VERTICAL"); - items.push_back("DOUBLE_PANEL_SINGLE_SWING"); - items.push_back("DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT"); - items.push_back("DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT"); - items.push_back("DOUBLE_PANEL_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("LIFTING_HORIZONTAL"); - items.push_back("LIFTING_VERTICAL_LEFT"); - items.push_back("LIFTING_VERTICAL_RIGHT"); - items.push_back("NOTDEFINED"); - items.push_back("REVOLVING_HORIZONTAL"); - items.push_back("REVOLVING_VERTICAL"); - 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"); - IFC4X3_RC3_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 349, items); - } - IFC4X3_RC3_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 350, 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"); - IFC4X3_RC3_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 355, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 358, 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"); - IFC4X3_RC3_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 361, items); - } - IFC4X3_RC3_IfcDuration_type = new type_declaration("IfcDuration", 362, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 363, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("BASE_EXCAVATION"); - items.push_back("CUT"); - items.push_back("DREDGING"); - items.push_back("EXCAVATION"); - items.push_back("NOTDEFINED"); - items.push_back("OVEREXCAVATION"); - items.push_back("PAVEMENTMILLING"); - items.push_back("STEPEXCAVATION"); - items.push_back("TOPSOILREMOVAL"); - items.push_back("TRENCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcEarthworksCutTypeEnum_type = new enumeration_type("IfcEarthworksCutTypeEnum", 365, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BACKFILL"); - items.push_back("COUNTERWEIGHT"); - items.push_back("EMBANKMENT"); - items.push_back("NOTDEFINED"); - items.push_back("SLOPEFILL"); - items.push_back("SUBGRADE"); - items.push_back("SUBGRADEBED"); - items.push_back("TRANSITIONSECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcEarthworksFillTypeEnum_type = new enumeration_type("IfcEarthworksFillTypeEnum", 368, items); - } - { - 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"); - IFC4X3_RC3_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 374, items); - } - IFC4X3_RC3_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 375, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 376, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 377, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 378, 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"); - IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 381, items); - } - { - std::vector items; items.reserve(11); - items.push_back("BATTERY"); - items.push_back("CAPACITOR"); - items.push_back("CAPACITORBANK"); - items.push_back("COMPENSATOR"); - items.push_back("HARMONICFILTER"); - items.push_back("INDUCTOR"); - items.push_back("INDUCTORBANK"); - items.push_back("NOTDEFINED"); - items.push_back("RECHARGER"); - items.push_back("UPS"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 384, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELECTRONICFILTER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowTreatmentDeviceTypeEnum", 387, 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"); - IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 390, 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"); - IFC4X3_RC3_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 393, items); - } - IFC4X3_RC3_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 394, 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"); - IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 397, items); - } - IFC4X3_RC3_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 398, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(30); - 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("DILATATIONPANEL"); - items.push_back("ENTRANCEWORKS"); - items.push_back("GIRDER"); - items.push_back("GRID"); - items.push_back("MAST"); - items.push_back("NOTDEFINED"); - items.push_back("PIER"); - items.push_back("PYLON"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SHELTER"); - items.push_back("SIGNALASSEMBLY"); - items.push_back("SLAB_FIELD"); - items.push_back("SUMPBUSTER"); - items.push_back("SUPPORTINGASSEMBLY"); - items.push_back("SUSPENSIONASSEMBLY"); - items.push_back("TRACKPANEL"); - items.push_back("TRACTION_SWITCHING_ASSEMBLY"); - items.push_back("TRAFFIC_CALMING_DEVICE"); - items.push_back("TRUSS"); - items.push_back("TURNOUTPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 403, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4X3_RC3_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 406, items); - } - IFC4X3_RC3_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 413, 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"); - IFC4X3_RC3_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 416, 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"); - IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 419, 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"); - IFC4X3_RC3_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 422, 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"); - IFC4X3_RC3_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 425, 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"); - IFC4X3_RC3_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 427, 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"); - IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 436, items); - } - { - std::vector items; items.reserve(10); - items.push_back("ABOVEGROUND"); - items.push_back("BELOWGROUND"); - items.push_back("JUNCTION"); - items.push_back("LEVELCROSSING"); - items.push_back("NOTDEFINED"); - items.push_back("SEGMENT"); - items.push_back("SUBSTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TERMINAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type = new enumeration_type("IfcFacilityPartCommonTypeEnum", 449, items); - } - { - std::vector items; items.reserve(6); - items.push_back("LATERAL"); - items.push_back("LONGITUDINAL"); - items.push_back("NOTDEFINED"); - items.push_back("REGION"); - items.push_back("USERDEFINED"); - items.push_back("VERTICAL"); - IFC4X3_RC3_IfcFacilityUsageEnum_type = new enumeration_type("IfcFacilityUsageEnum", 451, 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"); - IFC4X3_RC3_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 455, 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"); - IFC4X3_RC3_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 458, 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"); - IFC4X3_RC3_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 468, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BREECHINGINLET"); - items.push_back("FIREHYDRANT"); - items.push_back("FIREMONITOR"); - items.push_back("HOSEREEL"); - items.push_back("NOTDEFINED"); - items.push_back("SPRINKLER"); - items.push_back("SPRINKLERDEFLECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 471, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4X3_RC3_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 475, items); - } - { - std::vector items; items.reserve(12); - items.push_back("AMMETER"); - items.push_back("COMBINED"); - 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"); - items.push_back("VOLTMETER_PEAK"); - items.push_back("VOLTMETER_RMS"); - IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 480, 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"); - IFC4X3_RC3_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 483, items); - } - IFC4X3_RC3_IfcFontStyle_type = new type_declaration("IfcFontStyle", 494, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcFontVariant_type = new type_declaration("IfcFontVariant", 495, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcFontWeight_type = new type_declaration("IfcFontWeight", 496, 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"); - IFC4X3_RC3_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 499, items); - } - IFC4X3_RC3_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 500, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 501, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - 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("TECHNICALCABINET"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 506, 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"); - IFC4X3_RC3_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 509, 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"); - IFC4X3_RC3_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 511, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4X3_RC3_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 523, items); - } - IFC4X3_RC3_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 522, 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"); - IFC4X3_RC3_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 529, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("TURNOUTHEATING"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 535, items); - } - IFC4X3_RC3_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 536, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 537, 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"); - IFC4X3_RC3_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 540, items); - } - IFC4X3_RC3_IfcIdentifier_type = new type_declaration("IfcIdentifier", 541, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 542, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("BUMPER"); - items.push_back("CRASHCUSHION"); - items.push_back("DAMPINGSYSTEM"); - items.push_back("FENDER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type("IfcImpactProtectionDeviceTypeEnum", 546, items); - } - IFC4X3_RC3_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 555, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcInteger_type = new type_declaration("IfcInteger", 556, new simple_type(simple_type::integer_type)); - IFC4X3_RC3_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 557, 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"); - IFC4X3_RC3_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 560, 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"); - IFC4X3_RC3_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 562, 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"); - IFC4X3_RC3_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 565, items); - } - IFC4X3_RC3_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 566, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 570, 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"); - IFC4X3_RC3_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 573, items); - } - IFC4X3_RC3_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 576, 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"); - IFC4X3_RC3_IfcKnotType_type = new enumeration_type("IfcKnotType", 577, items); - } - IFC4X3_RC3_IfcLabel_type = new type_declaration("IfcLabel", 578, 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"); - IFC4X3_RC3_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 581, 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"); - IFC4X3_RC3_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 585, items); - } - IFC4X3_RC3_IfcLanguageId_type = new type_declaration("IfcLanguageId", 586, new named_type(IFC4X3_RC3_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4X3_RC3_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 588, items); - } - IFC4X3_RC3_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 589, 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"); - IFC4X3_RC3_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 593, 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"); - IFC4X3_RC3_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 596, 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"); - IFC4X3_RC3_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 599, items); - } - IFC4X3_RC3_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 609, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 610, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 613, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 614, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("HOSEREEL"); - items.push_back("LOADINGARM"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type = new enumeration_type("IfcLiquidTerminalTypeEnum", 618, items); - } - { - 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"); - IFC4X3_RC3_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 619, items); - } - IFC4X3_RC3_IfcLogical_type = new type_declaration("IfcLogical", 621, 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"); - IFC4X3_RC3_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 622, items); - } - IFC4X3_RC3_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 625, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 626, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 627, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 628, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 629, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(21); - items.push_back("BARRIERBEACH"); - items.push_back("BREAKWATER"); - items.push_back("CANAL"); - items.push_back("DRYDOCK"); - items.push_back("FLOATINGDOCK"); - items.push_back("HYDROLIFT"); - items.push_back("JETTY"); - items.push_back("LAUNCHRECOVERY"); - items.push_back("MARINEDEFENCE"); - items.push_back("NAVIGATIONALCHANNEL"); - items.push_back("NOTDEFINED"); - items.push_back("PORT"); - items.push_back("QUAY"); - items.push_back("REVETMENT"); - items.push_back("SHIPLIFT"); - items.push_back("SHIPLOCK"); - items.push_back("SHIPYARD"); - items.push_back("SLIPWAY"); - items.push_back("USERDEFINED"); - items.push_back("WATERWAY"); - items.push_back("WATERWAYSHIPLIFT"); - IFC4X3_RC3_IfcMarineFacilityTypeEnum_type = new enumeration_type("IfcMarineFacilityTypeEnum", 634, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ABOVEWATERLINE"); - items.push_back("ANCHORAGE"); - items.push_back("APPROACHCHANNEL"); - items.push_back("BELOWWATERLINE"); - items.push_back("BERTHINGSTRUCTURE"); - items.push_back("CHAMBER"); - items.push_back("CILL_LEVEL"); - items.push_back("COPELEVEL"); - items.push_back("CORE"); - items.push_back("CREST"); - items.push_back("GATEHEAD"); - items.push_back("GUDINGSTRUCTURE"); - items.push_back("HIGHWATERLINE"); - items.push_back("LANDFIELD"); - items.push_back("LEEWARDSIDE"); - items.push_back("LOWWATERLINE"); - items.push_back("MANUFACTURING"); - items.push_back("NAVIGATIONALAREA"); - items.push_back("NOTDEFINED"); - items.push_back("PROTECTION"); - items.push_back("SHIPTRANSFER"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESERVICING"); - items.push_back("WATERFIELD"); - items.push_back("WEATHERSIDE"); - IFC4X3_RC3_IfcMarinePartTypeEnum_type = new enumeration_type("IfcMarinePartTypeEnum", 635, items); - } - IFC4X3_RC3_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 636, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 637, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 638, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 639, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(17); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - items.push_back("CHAIN"); - items.push_back("COUPLER"); - items.push_back("DOWEL"); - items.push_back("NAIL"); - items.push_back("NAILPLATE"); - items.push_back("NOTDEFINED"); - items.push_back("RAILFASTENING"); - items.push_back("RAILJOINT"); - items.push_back("RIVET"); - items.push_back("ROPE"); - items.push_back("SCREW"); - items.push_back("SHEARCONNECTOR"); - items.push_back("STAPLE"); - items.push_back("STUDSHEARCONNECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 664, 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"); - IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 667, items); - } - { - std::vector items; items.reserve(21); - 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("STRUCTURALCABLE"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("SUSPENDER"); - items.push_back("SUSPENSION_CABLE"); - items.push_back("TIEBAR"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 671, items); - } - { - std::vector items; items.reserve(9); - items.push_back("ACCESSPOINT"); - items.push_back("BASEBANDUNIT"); - items.push_back("BASETRANSCEIVERSTATION"); - items.push_back("E_UTRAN_NODE_B"); - items.push_back("MASTERUNIT"); - items.push_back("NOTDEFINED"); - items.push_back("REMOTEUNIT"); - items.push_back("REMOTE_RADIO_UNIT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type("IfcMobileTelecommunicationsApplianceTypeEnum", 677, items); - } - IFC4X3_RC3_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 678, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 679, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 680, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 681, items); - } - IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 682, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type); - IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 683, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 684, items); - } - IFC4X3_RC3_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 685, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 686, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 687, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 688, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 690, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(7); - items.push_back("BOLLARD"); - items.push_back("LINETENSIONER"); - items.push_back("MAGNETICDEVICE"); - items.push_back("MOORINGHOOKS"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VACUUMDEVICE"); - IFC4X3_RC3_IfcMooringDeviceTypeEnum_type = new enumeration_type("IfcMooringDeviceTypeEnum", 693, items); - } - { - 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"); - IFC4X3_RC3_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 696, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BEACON"); - items.push_back("BUOY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcNavigationElementTypeEnum_type = new enumeration_type("IfcNavigationElementTypeEnum", 700, items); - } - IFC4X3_RC3_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 701, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)); - IFC4X3_RC3_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 703, 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"); - IFC4X3_RC3_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 710, 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"); - IFC4X3_RC3_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 707, 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"); - IFC4X3_RC3_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 712, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 719, 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"); - IFC4X3_RC3_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 728, items); - } - IFC4X3_RC3_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 745, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcParameterValue_type = new type_declaration("IfcParameterValue", 731, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGID"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcPavementTypeEnum_type = new enumeration_type("IfcPavementTypeEnum", 735, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 738, 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"); - IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 739, 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"); - IFC4X3_RC3_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 742, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 747, 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"); - IFC4X3_RC3_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 751, 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"); - IFC4X3_RC3_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 753, 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"); - IFC4X3_RC3_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 756, 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"); - IFC4X3_RC3_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 759, items); - } - IFC4X3_RC3_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 764, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 766, 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"); - IFC4X3_RC3_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 771, items); - } - IFC4X3_RC3_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 784, new named_type(IFC4X3_RC3_IfcInteger_type)); - IFC4X3_RC3_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 785, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)); - IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 786, new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type)); - IFC4X3_RC3_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 789, 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"); - IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 796, items); - } - IFC4X3_RC3_IfcPresentableText_type = new type_declaration("IfcPresentableText", 797, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 802, 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"); - IFC4X3_RC3_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 805, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4X3_RC3_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 815, 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"); - IFC4X3_RC3_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 823, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 818, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BLISTER"); - items.push_back("DEVIATOR"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 820, 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"); - IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 838, 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"); - IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 846, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ANTI_ARCING_DEVICE"); - 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("SPARKGAP"); - items.push_back("USERDEFINED"); - items.push_back("VARISTOR"); - items.push_back("VOLTAGELIMITER"); - IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 848, 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"); - IFC4X3_RC3_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 852, items); - } - IFC4X3_RC3_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 860, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(8); - items.push_back("BLADE"); - items.push_back("CHECKRAIL"); - items.push_back("GUARDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("RACKRAIL"); - items.push_back("RAIL"); - items.push_back("STOCKRAIL"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRailTypeEnum_type = new enumeration_type("IfcRailTypeEnum", 866, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BALUSTRADE"); - items.push_back("FENCE"); - items.push_back("GUARDRAIL"); - items.push_back("HANDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 864, items); - } - { - std::vector items; items.reserve(10); - items.push_back("DILATATIONSUPERSTRUCTURE"); - items.push_back("LINESIDESTRUCTURE"); - items.push_back("LINESIDESTRUCTUREPART"); - items.push_back("NOTDEFINED"); - items.push_back("PLAINTRACKSUPESTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TRACKSTRUCTURE"); - items.push_back("TRACKSTRUCTUREPART"); - items.push_back("TURNOUTSUPERSTRUCTURE"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRailwayPartTypeEnum_type = new enumeration_type("IfcRailwayPartTypeEnum", 868, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRailwayTypeEnum_type = new enumeration_type("IfcRailwayTypeEnum", 869, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 873, 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"); - IFC4X3_RC3_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 875, items); - } - IFC4X3_RC3_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 876, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcReal_type = new type_declaration("IfcReal", 879, 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"); - IFC4X3_RC3_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 885, items); - } - { - std::vector items; items.reserve(6); - items.push_back("KILOPOINT"); - items.push_back("MILEPOINT"); - items.push_back("NOTDEFINED"); - items.push_back("REFERENCEMARKER"); - items.push_back("STATION"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 888, 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"); - IFC4X3_RC3_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 889, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DYNAMICALLYCOMPACTED"); - items.push_back("GROUTED"); - items.push_back("NOTDEFINED"); - items.push_back("REPLACED"); - items.push_back("ROLLERCOMPACTED"); - items.push_back("SURCHARGEPRELOADED"); - items.push_back("USERDEFINED"); - items.push_back("VERTICALLYDRAINED"); - IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type = new enumeration_type("IfcReinforcedSoilTypeEnum", 892, 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"); - IFC4X3_RC3_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 896, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 897, 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"); - IFC4X3_RC3_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 899, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 904, items); - } - { - std::vector items; items.reserve(26); - items.push_back("BICYCLECROSSING"); - items.push_back("BUS_STOP"); - items.push_back("CARRIAGEWAY"); - items.push_back("CENTRALISLAND"); - items.push_back("CENTRALRESERVE"); - items.push_back("HARDSHOULDER"); - items.push_back("INTERSECTION"); - items.push_back("LAYBY"); - items.push_back("NOTDEFINED"); - items.push_back("PARKINGBAY"); - items.push_back("PASSINGBAY"); - items.push_back("PEDESTRIAN_CROSSING"); - items.push_back("RAILWAYCROSSING"); - items.push_back("REFUGEISLAND"); - items.push_back("ROADSEGMENT"); - items.push_back("ROADSIDE"); - items.push_back("ROADSIDEPART"); - items.push_back("ROADWAYPLATEAU"); - items.push_back("ROUNDABOUT"); - items.push_back("SHOULDER"); - items.push_back("SIDEWALK"); - items.push_back("SOFTSHOULDER"); - items.push_back("TOLLPLAZA"); - items.push_back("TRAFFICISLAND"); - items.push_back("TRAFFICLANE"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRoadPartTypeEnum_type = new enumeration_type("IfcRoadPartTypeEnum", 972, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcRoadTypeEnum_type = new enumeration_type("IfcRoadTypeEnum", 973, 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"); - IFC4X3_RC3_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 974, 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"); - IFC4X3_RC3_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 977, items); - } - IFC4X3_RC3_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 979, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 980, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 981, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcRotationalStiffnessMeasure_type); - IFC4X3_RC3_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 982, 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"); - IFC4X3_RC3_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 1026, 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"); - IFC4X3_RC3_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 1029, 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"); - IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 986, items); - } - IFC4X3_RC3_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 995, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4X3_RC3_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 998, items); - } - IFC4X3_RC3_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 990, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(34); - items.push_back("CO2SENSOR"); - items.push_back("CONDUCTANCESENSOR"); - items.push_back("CONTACTSENSOR"); - items.push_back("COSENSOR"); - items.push_back("EARTHQUAKESENSOR"); - items.push_back("FIRESENSOR"); - items.push_back("FLOWSENSOR"); - items.push_back("FOREIGNOBJECTDETECTIONSENSOR"); - 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("OBSTACLESENSOR"); - items.push_back("PHSENSOR"); - items.push_back("PRESSURESENSOR"); - items.push_back("RADIATIONSENSOR"); - items.push_back("RADIOACTIVITYSENSOR"); - items.push_back("RAINSENSOR"); - items.push_back("SMOKESENSOR"); - items.push_back("SNOWDEPTHSENSOR"); - items.push_back("SOUNDSENSOR"); - items.push_back("TEMPERATURESENSOR"); - items.push_back("TRAINSENSOR"); - items.push_back("TURNOUTCLOSURESENSOR"); - items.push_back("USERDEFINED"); - items.push_back("WHEELSENSOR"); - items.push_back("WINDSENSOR"); - IFC4X3_RC3_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 1004, 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"); - IFC4X3_RC3_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 1005, 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"); - IFC4X3_RC3_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 1008, items); - } - IFC4X3_RC3_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 1012, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("MARKER"); - items.push_back("MIRROR"); - items.push_back("NOTDEFINED"); - items.push_back("PICTORAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcSignTypeEnum_type = new enumeration_type("IfcSignTypeEnum", 1020, items); - } - { - std::vector items; items.reserve(5); - items.push_back("AUDIO"); - items.push_back("MIXED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VISUAL"); - IFC4X3_RC3_IfcSignalTypeEnum_type = new enumeration_type("IfcSignalTypeEnum", 1018, items); - } - { - 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"); - IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 1023, items); - } - { - std::vector items; items.reserve(11); - 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("TRACKSLAB"); - items.push_back("USERDEFINED"); - items.push_back("WEARING"); - IFC4X3_RC3_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 1035, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 1039, items); - } - IFC4X3_RC3_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 1040, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 1044, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 1045, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 1046, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 1047, 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"); - IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 1052, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BERTH"); - 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"); - IFC4X3_RC3_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 1054, items); - } - { - std::vector items; items.reserve(11); - items.push_back("CONSTRUCTION"); - items.push_back("FIRESAFETY"); - items.push_back("LIGHTING"); - items.push_back("NOTDEFINED"); - items.push_back("OCCUPANCY"); - items.push_back("RESERVATION"); - items.push_back("SECURITY"); - items.push_back("THERMAL"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - items.push_back("VENTILATION"); - IFC4X3_RC3_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 1062, items); - } - IFC4X3_RC3_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 1063, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 1064, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 1066, 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"); - IFC4X3_RC3_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 1072, 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"); - IFC4X3_RC3_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 1076, items); - } - { - std::vector items; items.reserve(17); - 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("LADDER"); - 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"); - IFC4X3_RC3_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 1078, 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"); - IFC4X3_RC3_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 1079, 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"); - IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 1087, 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"); - IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1090, 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"); - IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1116, 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"); - IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1119, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4X3_RC3_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1127, items); - } - { - std::vector items; items.reserve(13); - items.push_back("DEFECT"); - items.push_back("HATCHMARKING"); - items.push_back("LINEMARKING"); - items.push_back("MARK"); - items.push_back("NONSKIDSURFACING"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENTSURFACEMARKING"); - items.push_back("RUMBLESTRIP"); - items.push_back("SYMBOLMARKING"); - items.push_back("TAG"); - items.push_back("TRANSVERSERUMBLESTRIP"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1133, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC3_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1138, items); - } - { - std::vector items; items.reserve(13); - 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("RELAY"); - items.push_back("SELECTORSWITCH"); - items.push_back("STARTER"); - items.push_back("START_AND_STOP_EQUIPMENT"); - items.push_back("SWITCHDISCONNECTOR"); - items.push_back("TOGGLESWITCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1153, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("SUBRACK"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1157, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BASIN"); - items.push_back("BREAKPRESSURE"); - items.push_back("EXPANSION"); - items.push_back("FEEDANDEXPANSION"); - items.push_back("NOTDEFINED"); - items.push_back("OILRETENTIONTRAY"); - items.push_back("PRESSUREVESSEL"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VESSEL"); - IFC4X3_RC3_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1163, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4X3_RC3_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1165, 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"); - IFC4X3_RC3_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1169, items); - } - IFC4X3_RC3_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1171, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1172, 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"); - IFC4X3_RC3_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1176, 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"); - IFC4X3_RC3_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1179, 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"); - IFC4X3_RC3_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1181, items); - } - IFC4X3_RC3_IfcText_type = new type_declaration("IfcText", 1184, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1185, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1186, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1187, 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"); - IFC4X3_RC3_IfcTextPath_type = new enumeration_type("IfcTextPath", 1191, items); - } - IFC4X3_RC3_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1196, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1202, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1203, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1204, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1205, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1206, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1207, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcTime_type = new type_declaration("IfcTime", 1209, new simple_type(simple_type::string_type)); - IFC4X3_RC3_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1210, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcDuration_type); - items.push_back(IFC4X3_RC3_IfcRatioMeasure_type); - IFC4X3_RC3_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1211, 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"); - IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1214, items); - } - IFC4X3_RC3_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1216, new simple_type(simple_type::integer_type)); - IFC4X3_RC3_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1220, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - items.push_back("BLOCKINGDEVICE"); - items.push_back("DERAILER"); - items.push_back("FROG"); - items.push_back("HALF_SET_OF_BLADES"); - items.push_back("NOTDEFINED"); - items.push_back("SLEEPER"); - items.push_back("SPEEDREGULATOR"); - items.push_back("TRACKENDOFALIGNMENT"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESTOP"); - IFC4X3_RC3_IfcTrackElementTypeEnum_type = new enumeration_type("IfcTrackElementTypeEnum", 1223, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CHOPPER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC3_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1226, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4X3_RC3_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1227, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcLinearStiffnessMeasure_type); - IFC4X3_RC3_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1228, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CRANEWAY"); - items.push_back("ELEVATOR"); - items.push_back("ESCALATOR"); - items.push_back("HAULINGGEAR"); - items.push_back("LIFTINGGEAR"); - items.push_back("MOVINGWALKWAY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type = new enumeration_type("IfcTransportElementFixedTypeEnum", 1230, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CARGO"); - items.push_back("NOTDEFINED"); - items.push_back("ROLLINGSTOCK"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLE"); - items.push_back("VEHICLEAIR"); - items.push_back("VEHICLEMARINE"); - items.push_back("VEHICLETRACKED"); - items.push_back("VEHICLEWHEELED"); - IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type("IfcTransportElementNonFixedTypeEnum", 1231, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type); - IFC4X3_RC3_IfcTransportElementTypeSelect_type = new select_type("IfcTransportElementTypeSelect", 1233, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4X3_RC3_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1238, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC3_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1243, items); - } - IFC4X3_RC3_IfcURIReference_type = new type_declaration("IfcURIReference", 1257, 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"); - IFC4X3_RC3_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1256, items); - } - { - std::vector items; items.reserve(11); - items.push_back("ALARMPANEL"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1251, 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"); - IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1254, 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"); - IFC4X3_RC3_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1262, items); - } - IFC4X3_RC3_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1263, 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"); - IFC4X3_RC3_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1271, 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"); - IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1274, 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"); - IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1279, items); - } - IFC4X3_RC3_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1281, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1282, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(13); - 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"); - items.push_back("WAVEWALL"); - IFC4X3_RC3_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1287, items); - } - IFC4X3_RC3_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1288, new simple_type(simple_type::real_type)); - IFC4X3_RC3_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1289, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcWarpingMomentMeasure_type); - IFC4X3_RC3_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1290, 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"); - IFC4X3_RC3_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1293, 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"); - IFC4X3_RC3_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1297, 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"); - IFC4X3_RC3_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1298, 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"); - IFC4X3_RC3_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1302, 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"); - IFC4X3_RC3_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1303, 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"); - IFC4X3_RC3_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1305, 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"); - IFC4X3_RC3_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1306, 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"); - IFC4X3_RC3_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1308, 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"); - IFC4X3_RC3_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1311, 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"); - IFC4X3_RC3_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1313, items); - } - IFC4X3_RC3_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4X3_RC3_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4X3_RC3_IfcAlignmentParameterSegment_type = new entity("IfcAlignmentParameterSegment", true, 36, 0); - IFC4X3_RC3_IfcAlignmentVerticalSegment_type = new entity("IfcAlignmentVerticalSegment", false, 40, IFC4X3_RC3_IfcAlignmentParameterSegment_type); - IFC4X3_RC3_IfcApplication_type = new entity("IfcApplication", false, 49, 0); - IFC4X3_RC3_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 50, 0); - IFC4X3_RC3_IfcApproval_type = new entity("IfcApproval", false, 52, 0); - IFC4X3_RC3_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 94, 0); - IFC4X3_RC3_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 96, IFC4X3_RC3_IfcBoundaryCondition_type); - IFC4X3_RC3_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 97, IFC4X3_RC3_IfcBoundaryCondition_type); - IFC4X3_RC3_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 98, IFC4X3_RC3_IfcBoundaryCondition_type); - IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 99, IFC4X3_RC3_IfcBoundaryNodeCondition_type); - IFC4X3_RC3_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 208, 0); - IFC4X3_RC3_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 210, IFC4X3_RC3_IfcConnectionGeometry_type); - IFC4X3_RC3_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 211, IFC4X3_RC3_IfcConnectionGeometry_type); - IFC4X3_RC3_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 213, IFC4X3_RC3_IfcConnectionGeometry_type); - IFC4X3_RC3_IfcConstraint_type = new entity("IfcConstraint", true, 214, 0); - IFC4X3_RC3_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 245, 0); - IFC4X3_RC3_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 246, 0); - IFC4X3_RC3_IfcCostValue_type = new entity("IfcCostValue", false, 253, IFC4X3_RC3_IfcAppliedValue_type); - IFC4X3_RC3_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 301, 0); - IFC4X3_RC3_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 302, 0); - IFC4X3_RC3_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 305, 0); - IFC4X3_RC3_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 429, 0); - IFC4X3_RC3_IfcExternalReference_type = new entity("IfcExternalReference", true, 433, 0); - IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 430, IFC4X3_RC3_IfcExternalReference_type); - IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 431, IFC4X3_RC3_IfcExternalReference_type); - IFC4X3_RC3_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 432, IFC4X3_RC3_IfcExternalReference_type); - IFC4X3_RC3_IfcGridAxis_type = new entity("IfcGridAxis", false, 526, 0); - IFC4X3_RC3_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 568, 0); - IFC4X3_RC3_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 590, IFC4X3_RC3_IfcExternalInformation_type); - IFC4X3_RC3_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 591, IFC4X3_RC3_IfcExternalReference_type); - IFC4X3_RC3_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 594, 0); - IFC4X3_RC3_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 600, 0); - IFC4X3_RC3_IfcMapConversion_type = new entity("IfcMapConversion", false, 631, IFC4X3_RC3_IfcCoordinateOperation_type); - IFC4X3_RC3_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 641, 0); - IFC4X3_RC3_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 644, 0); - IFC4X3_RC3_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 646, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 647, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 649, IFC4X3_RC3_IfcMaterialLayer_type); - IFC4X3_RC3_IfcMaterialList_type = new entity("IfcMaterialList", false, 650, 0); - IFC4X3_RC3_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 651, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 652, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 655, IFC4X3_RC3_IfcMaterialProfile_type); - IFC4X3_RC3_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 659, 0); - IFC4X3_RC3_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 661, 0); - IFC4X3_RC3_IfcMetric_type = new entity("IfcMetric", false, 672, IFC4X3_RC3_IfcConstraint_type); - IFC4X3_RC3_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 689, 0); - IFC4X3_RC3_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 697, 0); - IFC4X3_RC3_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 708, 0); - IFC4X3_RC3_IfcObjective_type = new entity("IfcObjective", false, 706, IFC4X3_RC3_IfcConstraint_type); - IFC4X3_RC3_IfcOrganization_type = new entity("IfcOrganization", false, 722, 0); - IFC4X3_RC3_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 729, 0); - IFC4X3_RC3_IfcPerson_type = new entity("IfcPerson", false, 743, 0); - IFC4X3_RC3_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 744, 0); - IFC4X3_RC3_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 748, 0); - IFC4X3_RC3_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 749, IFC4X3_RC3_IfcPhysicalQuantity_type); - IFC4X3_RC3_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 788, IFC4X3_RC3_IfcAddress_type); - IFC4X3_RC3_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 798, 0); - IFC4X3_RC3_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 799, 0); - IFC4X3_RC3_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 800, IFC4X3_RC3_IfcPresentationLayerAssignment_type); - IFC4X3_RC3_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 801, 0); - IFC4X3_RC3_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 810, 0); - IFC4X3_RC3_IfcProfileDef_type = new entity("IfcProfileDef", false, 813, 0); - IFC4X3_RC3_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 817, IFC4X3_RC3_IfcCoordinateReferenceSystem_type); - IFC4X3_RC3_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 825, 0); - IFC4X3_RC3_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 830, IFC4X3_RC3_IfcPropertyAbstraction_type); - IFC4X3_RC3_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 853, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 854, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 855, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 857, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 858, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 859, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 884, 0); - IFC4X3_RC3_IfcReference_type = new entity("IfcReference", false, 886, 0); - IFC4X3_RC3_IfcRepresentation_type = new entity("IfcRepresentation", true, 956, 0); - IFC4X3_RC3_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 957, 0); - IFC4X3_RC3_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 958, 0); - IFC4X3_RC3_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 959, 0); - IFC4X3_RC3_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 963, 0); - IFC4X3_RC3_IfcRoot_type = new entity("IfcRoot", true, 978, 0); - IFC4X3_RC3_IfcSIUnit_type = new entity("IfcSIUnit", false, 1028, IFC4X3_RC3_IfcNamedUnit_type); - IFC4X3_RC3_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 987, 0); - IFC4X3_RC3_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 1009, 0); - IFC4X3_RC3_IfcShapeModel_type = new entity("IfcShapeModel", true, 1010, IFC4X3_RC3_IfcRepresentation_type); - IFC4X3_RC3_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 1011, IFC4X3_RC3_IfcShapeModel_type); - IFC4X3_RC3_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 1085, 0); - IFC4X3_RC3_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1095, 0); - IFC4X3_RC3_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1097, IFC4X3_RC3_IfcStructuralLoad_type); - IFC4X3_RC3_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1100, IFC4X3_RC3_IfcStructuralLoad_type); - IFC4X3_RC3_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1106, IFC4X3_RC3_IfcStructuralLoadOrResult_type); - IFC4X3_RC3_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1107, IFC4X3_RC3_IfcStructuralLoadStatic_type); - IFC4X3_RC3_IfcStyleModel_type = new entity("IfcStyleModel", true, 1124, IFC4X3_RC3_IfcRepresentation_type); - IFC4X3_RC3_IfcStyledItem_type = new entity("IfcStyledItem", false, 1122, IFC4X3_RC3_IfcRepresentationItem_type); - IFC4X3_RC3_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1123, IFC4X3_RC3_IfcStyleModel_type); - IFC4X3_RC3_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1137, IFC4X3_RC3_IfcStructuralLoadOrResult_type); - IFC4X3_RC3_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1139, IFC4X3_RC3_IfcPresentationStyle_type); - IFC4X3_RC3_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1141, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1142, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1144, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1145, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1146, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcTable_type = new entity("IfcTable", false, 1158, 0); - IFC4X3_RC3_IfcTableColumn_type = new entity("IfcTableColumn", false, 1159, 0); - IFC4X3_RC3_IfcTableRow_type = new entity("IfcTableRow", false, 1160, 0); - IFC4X3_RC3_IfcTaskTime_type = new entity("IfcTaskTime", false, 1166, IFC4X3_RC3_IfcSchedulingTime_type); - IFC4X3_RC3_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1167, IFC4X3_RC3_IfcTaskTime_type); - IFC4X3_RC3_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1170, IFC4X3_RC3_IfcAddress_type); - IFC4X3_RC3_IfcTextStyle_type = new entity("IfcTextStyle", false, 1192, IFC4X3_RC3_IfcPresentationStyle_type); - IFC4X3_RC3_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1194, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1195, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1197, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1198, IFC4X3_RC3_IfcTextureCoordinate_type); - IFC4X3_RC3_IfcTextureMap_type = new entity("IfcTextureMap", false, 1199, IFC4X3_RC3_IfcTextureCoordinate_type); - IFC4X3_RC3_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1200, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1201, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1212, 0); - IFC4X3_RC3_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1213, 0); - IFC4X3_RC3_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1215, 0); - IFC4X3_RC3_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1217, IFC4X3_RC3_IfcRepresentationItem_type); - IFC4X3_RC3_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1218, IFC4X3_RC3_IfcShapeModel_type); - IFC4X3_RC3_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1255, 0); - IFC4X3_RC3_IfcVertex_type = new entity("IfcVertex", false, 1266, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1268, IFC4X3_RC3_IfcVertex_type); - IFC4X3_RC3_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1277, 0); - IFC4X3_RC3_IfcWorkTime_type = new entity("IfcWorkTime", false, 1314, IFC4X3_RC3_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcOrganization_type); - items.push_back(IFC4X3_RC3_IfcPerson_type); - items.push_back(IFC4X3_RC3_IfcPersonAndOrganization_type); - IFC4X3_RC3_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4X3_RC3_IfcArcIndex_type = new type_declaration("IfcArcIndex", 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcPlaneAngleMeasure_type); - IFC4X3_RC3_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 81, items); - } - IFC4X3_RC3_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 103, new named_type(IFC4X3_RC3_IfcLabel_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcParameterValue_type); - IFC4X3_RC3_IfcCurveMeasureSelect_type = new select_type("IfcCurveMeasureSelect", 278, items); - } - { - std::vector items; items.reserve(71); - items.push_back(IFC4X3_RC3_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4X3_RC3_IfcAccelerationMeasure_type); - items.push_back(IFC4X3_RC3_IfcAngularVelocityMeasure_type); - items.push_back(IFC4X3_RC3_IfcAreaDensityMeasure_type); - items.push_back(IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC3_IfcCurvatureMeasure_type); - items.push_back(IFC4X3_RC3_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4X3_RC3_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4X3_RC3_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcElectricChargeMeasure_type); - items.push_back(IFC4X3_RC3_IfcElectricConductanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcElectricResistanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcElectricVoltageMeasure_type); - items.push_back(IFC4X3_RC3_IfcEnergyMeasure_type); - items.push_back(IFC4X3_RC3_IfcForceMeasure_type); - items.push_back(IFC4X3_RC3_IfcFrequencyMeasure_type); - items.push_back(IFC4X3_RC3_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4X3_RC3_IfcHeatingValueMeasure_type); - items.push_back(IFC4X3_RC3_IfcIlluminanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcInductanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4X3_RC3_IfcIonConcentrationMeasure_type); - items.push_back(IFC4X3_RC3_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4X3_RC3_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4X3_RC3_IfcLinearForceMeasure_type); - items.push_back(IFC4X3_RC3_IfcLinearMomentMeasure_type); - items.push_back(IFC4X3_RC3_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4X3_RC3_IfcLinearVelocityMeasure_type); - items.push_back(IFC4X3_RC3_IfcLuminousFluxMeasure_type); - items.push_back(IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4X3_RC3_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4X3_RC3_IfcMagneticFluxMeasure_type); - items.push_back(IFC4X3_RC3_IfcMassDensityMeasure_type); - items.push_back(IFC4X3_RC3_IfcMassFlowRateMeasure_type); - items.push_back(IFC4X3_RC3_IfcMassPerLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC3_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4X3_RC3_IfcMolecularWeightMeasure_type); - items.push_back(IFC4X3_RC3_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4X3_RC3_IfcMonetaryMeasure_type); - items.push_back(IFC4X3_RC3_IfcPHMeasure_type); - items.push_back(IFC4X3_RC3_IfcPlanarForceMeasure_type); - items.push_back(IFC4X3_RC3_IfcPowerMeasure_type); - items.push_back(IFC4X3_RC3_IfcPressureMeasure_type); - items.push_back(IFC4X3_RC3_IfcRadioActivityMeasure_type); - items.push_back(IFC4X3_RC3_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4X3_RC3_IfcRotationalMassMeasure_type); - items.push_back(IFC4X3_RC3_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4X3_RC3_IfcSectionModulusMeasure_type); - items.push_back(IFC4X3_RC3_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4X3_RC3_IfcShearModulusMeasure_type); - items.push_back(IFC4X3_RC3_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4X3_RC3_IfcSoundPowerMeasure_type); - items.push_back(IFC4X3_RC3_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4X3_RC3_IfcSoundPressureMeasure_type); - items.push_back(IFC4X3_RC3_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4X3_RC3_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4X3_RC3_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4X3_RC3_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcThermalConductivityMeasure_type); - items.push_back(IFC4X3_RC3_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4X3_RC3_IfcThermalResistanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcTorqueMeasure_type); - items.push_back(IFC4X3_RC3_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4X3_RC3_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4X3_RC3_IfcWarpingConstantMeasure_type); - items.push_back(IFC4X3_RC3_IfcWarpingMomentMeasure_type); - IFC4X3_RC3_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 299, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC3_IfcBridgePartTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcMarinePartTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcRailwayPartTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcRoadPartTypeEnum_type); - IFC4X3_RC3_IfcFacilityPartTypeSelect_type = new select_type("IfcFacilityPartTypeSelect", 450, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcVibrationDamperTypeEnum_type); - items.push_back(IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type); - IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type = new select_type("IfcImpactProtectionDeviceTypeSelect", 547, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcRepresentation_type); - items.push_back(IFC4X3_RC3_IfcRepresentationItem_type); - IFC4X3_RC3_IfcLayeredItem_type = new select_type("IfcLayeredItem", 587, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcLibraryInformation_type); - items.push_back(IFC4X3_RC3_IfcLibraryReference_type); - IFC4X3_RC3_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 592, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcExternalReference_type); - items.push_back(IFC4X3_RC3_IfcLightIntensityDistribution_type); - IFC4X3_RC3_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 595, items); - } - IFC4X3_RC3_IfcLineIndex_type = new type_declaration("IfcLineIndex", 615, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC3_IfcMaterialList_type); - items.push_back(IFC4X3_RC3_IfcMaterialUsageDefinition_type); - IFC4X3_RC3_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 658, items); - } - IFC4X3_RC3_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 702, new named_type(IFC4X3_RC3_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4X3_RC3_IfcAddress_type); - items.push_back(IFC4X3_RC3_IfcAppliedValue_type); - items.push_back(IFC4X3_RC3_IfcExternalReference_type); - items.push_back(IFC4X3_RC3_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC3_IfcOrganization_type); - items.push_back(IFC4X3_RC3_IfcPerson_type); - items.push_back(IFC4X3_RC3_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC3_IfcTable_type); - items.push_back(IFC4X3_RC3_IfcTimeSeries_type); - IFC4X3_RC3_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 709, items); - } - IFC4X3_RC3_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 787, new named_type(IFC4X3_RC3_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcArcIndex_type); - items.push_back(IFC4X3_RC3_IfcLineIndex_type); - IFC4X3_RC3_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 1001, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4X3_RC3_IfcBinary_type); - items.push_back(IFC4X3_RC3_IfcBoolean_type); - items.push_back(IFC4X3_RC3_IfcDate_type); - items.push_back(IFC4X3_RC3_IfcDateTime_type); - items.push_back(IFC4X3_RC3_IfcDuration_type); - items.push_back(IFC4X3_RC3_IfcIdentifier_type); - items.push_back(IFC4X3_RC3_IfcInteger_type); - items.push_back(IFC4X3_RC3_IfcLabel_type); - items.push_back(IFC4X3_RC3_IfcLogical_type); - items.push_back(IFC4X3_RC3_IfcPositiveInteger_type); - items.push_back(IFC4X3_RC3_IfcReal_type); - items.push_back(IFC4X3_RC3_IfcText_type); - items.push_back(IFC4X3_RC3_IfcTime_type); - items.push_back(IFC4X3_RC3_IfcTimeStamp_type); - IFC4X3_RC3_IfcSimpleValue_type = new select_type("IfcSimpleValue", 1024, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC3_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC3_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC3_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC3_IfcRatioMeasure_type); - IFC4X3_RC3_IfcSizeSelect_type = new select_type("IfcSizeSelect", 1030, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcSpecularExponent_type); - items.push_back(IFC4X3_RC3_IfcSpecularRoughness_type); - IFC4X3_RC3_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 1065, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4X3_RC3_IfcSurfaceStyleLighting_type); - items.push_back(IFC4X3_RC3_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4X3_RC3_IfcSurfaceStyleShading_type); - items.push_back(IFC4X3_RC3_IfcSurfaceStyleWithTextures_type); - IFC4X3_RC3_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1140, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcDerivedUnit_type); - items.push_back(IFC4X3_RC3_IfcMonetaryUnit_type); - items.push_back(IFC4X3_RC3_IfcNamedUnit_type); - IFC4X3_RC3_IfcUnit_type = new select_type("IfcUnit", 1248, items); - } - IFC4X3_RC3_IfcAlignmentCantSegment_type = new entity("IfcAlignmentCantSegment", false, 31, IFC4X3_RC3_IfcAlignmentParameterSegment_type); - IFC4X3_RC3_IfcAlignmentHorizontalSegment_type = new entity("IfcAlignmentHorizontalSegment", false, 34, IFC4X3_RC3_IfcAlignmentParameterSegment_type); - IFC4X3_RC3_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 53, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 54, IFC4X3_RC3_IfcProfileDef_type); - IFC4X3_RC3_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 55, IFC4X3_RC3_IfcProfileDef_type); - IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 56, IFC4X3_RC3_IfcArbitraryClosedProfileDef_type); - IFC4X3_RC3_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 83, IFC4X3_RC3_IfcSurfaceTexture_type); - IFC4X3_RC3_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 156, IFC4X3_RC3_IfcArbitraryOpenProfileDef_type); - IFC4X3_RC3_IfcClassification_type = new entity("IfcClassification", false, 169, IFC4X3_RC3_IfcExternalInformation_type); - IFC4X3_RC3_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 170, IFC4X3_RC3_IfcExternalReference_type); - IFC4X3_RC3_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 181, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 182, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 197, IFC4X3_RC3_IfcProfileDef_type); - IFC4X3_RC3_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 206, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 207, IFC4X3_RC3_IfcConnectionGeometry_type); - IFC4X3_RC3_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 209, IFC4X3_RC3_IfcConnectionPointGeometry_type); - IFC4X3_RC3_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 229, IFC4X3_RC3_IfcNamedUnit_type); - IFC4X3_RC3_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 234, IFC4X3_RC3_IfcNamedUnit_type); - IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 235, IFC4X3_RC3_IfcConversionBasedUnit_type); - IFC4X3_RC3_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 268, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 282, IFC4X3_RC3_IfcPresentationStyle_type); - IFC4X3_RC3_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 283, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 284, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 285, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 300, IFC4X3_RC3_IfcProfileDef_type); - IFC4X3_RC3_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 333, IFC4X3_RC3_IfcExternalInformation_type); - IFC4X3_RC3_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 334, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 335, IFC4X3_RC3_IfcExternalReference_type); - IFC4X3_RC3_IfcEdge_type = new entity("IfcEdge", false, 369, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 370, IFC4X3_RC3_IfcEdge_type); - IFC4X3_RC3_IfcEventTime_type = new entity("IfcEventTime", false, 424, IFC4X3_RC3_IfcSchedulingTime_type); - IFC4X3_RC3_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 428, IFC4X3_RC3_IfcPropertyAbstraction_type); - IFC4X3_RC3_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 434, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcFace_type = new entity("IfcFace", false, 440, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcFaceBound_type = new entity("IfcFaceBound", false, 442, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 443, IFC4X3_RC3_IfcFaceBound_type); - IFC4X3_RC3_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 444, IFC4X3_RC3_IfcFace_type); - IFC4X3_RC3_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 452, IFC4X3_RC3_IfcStructuralConnectionCondition_type); - IFC4X3_RC3_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 462, IFC4X3_RC3_IfcPresentationStyle_type); - IFC4X3_RC3_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 512, IFC4X3_RC3_IfcRepresentationContext_type); - IFC4X3_RC3_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 513, IFC4X3_RC3_IfcRepresentationItem_type); - IFC4X3_RC3_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 514, IFC4X3_RC3_IfcGeometricRepresentationContext_type); - IFC4X3_RC3_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 515, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 527, IFC4X3_RC3_IfcObjectPlacement_type); - IFC4X3_RC3_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 531, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcImageTexture_type = new entity("IfcImageTexture", false, 543, IFC4X3_RC3_IfcSurfaceTexture_type); - IFC4X3_RC3_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 549, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 553, IFC4X3_RC3_IfcTextureCoordinate_type); - IFC4X3_RC3_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 554, IFC4X3_RC3_IfcIndexedTextureMap_type); - IFC4X3_RC3_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 567, IFC4X3_RC3_IfcTimeSeries_type); - IFC4X3_RC3_IfcLagTime_type = new entity("IfcLagTime", false, 582, IFC4X3_RC3_IfcSchedulingTime_type); - IFC4X3_RC3_IfcLightSource_type = new entity("IfcLightSource", true, 601, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 602, IFC4X3_RC3_IfcLightSource_type); - IFC4X3_RC3_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 603, IFC4X3_RC3_IfcLightSource_type); - IFC4X3_RC3_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 604, IFC4X3_RC3_IfcLightSource_type); - IFC4X3_RC3_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 605, IFC4X3_RC3_IfcLightSource_type); - IFC4X3_RC3_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 606, IFC4X3_RC3_IfcLightSourcePositional_type); - IFC4X3_RC3_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 611, IFC4X3_RC3_IfcObjectPlacement_type); - IFC4X3_RC3_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 620, IFC4X3_RC3_IfcObjectPlacement_type); - IFC4X3_RC3_IfcLoop_type = new entity("IfcLoop", false, 623, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcMappedItem_type = new entity("IfcMappedItem", false, 632, IFC4X3_RC3_IfcRepresentationItem_type); - IFC4X3_RC3_IfcMaterial_type = new entity("IfcMaterial", false, 640, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 642, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 643, IFC4X3_RC3_IfcMaterialDefinition_type); - IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 645, IFC4X3_RC3_IfcProductRepresentation_type); - IFC4X3_RC3_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 648, IFC4X3_RC3_IfcMaterialUsageDefinition_type); - IFC4X3_RC3_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 653, IFC4X3_RC3_IfcMaterialUsageDefinition_type); - IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 654, IFC4X3_RC3_IfcMaterialProfileSetUsage_type); - IFC4X3_RC3_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 656, IFC4X3_RC3_IfcExtendedProperties_type); - IFC4X3_RC3_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 657, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 674, IFC4X3_RC3_IfcDerivedProfileDef_type); - IFC4X3_RC3_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 705, IFC4X3_RC3_IfcRoot_type); - IFC4X3_RC3_IfcOpenCrossProfileDef_type = new entity("IfcOpenCrossProfileDef", false, 717, IFC4X3_RC3_IfcProfileDef_type); - IFC4X3_RC3_IfcOpenShell_type = new entity("IfcOpenShell", false, 721, IFC4X3_RC3_IfcConnectedFaceSet_type); - IFC4X3_RC3_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 723, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 724, IFC4X3_RC3_IfcEdge_type); - IFC4X3_RC3_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 730, IFC4X3_RC3_IfcProfileDef_type); - IFC4X3_RC3_IfcPath_type = new entity("IfcPath", false, 732, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 746, IFC4X3_RC3_IfcPhysicalQuantity_type); - IFC4X3_RC3_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 760, IFC4X3_RC3_IfcSurfaceTexture_type); - IFC4X3_RC3_IfcPlacement_type = new entity("IfcPlacement", true, 761, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 763, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcPoint_type = new entity("IfcPoint", true, 772, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcPointByDistanceExpression_type = new entity("IfcPointByDistanceExpression", false, 773, IFC4X3_RC3_IfcPoint_type); - IFC4X3_RC3_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 774, IFC4X3_RC3_IfcPoint_type); - IFC4X3_RC3_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 775, IFC4X3_RC3_IfcPoint_type); - IFC4X3_RC3_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 780, IFC4X3_RC3_IfcLoop_type); - IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 777, IFC4X3_RC3_IfcHalfSpaceSolid_type); - IFC4X3_RC3_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 792, IFC4X3_RC3_IfcPresentationItem_type); - IFC4X3_RC3_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 793, IFC4X3_RC3_IfcPropertyAbstraction_type); - IFC4X3_RC3_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 795, IFC4X3_RC3_IfcPreDefinedItem_type); - IFC4X3_RC3_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 809, IFC4X3_RC3_IfcProductRepresentation_type); - IFC4X3_RC3_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 814, IFC4X3_RC3_IfcExtendedProperties_type); - IFC4X3_RC3_IfcProperty_type = new entity("IfcProperty", true, 824, IFC4X3_RC3_IfcPropertyAbstraction_type); - IFC4X3_RC3_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 827, IFC4X3_RC3_IfcRoot_type); - IFC4X3_RC3_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 828, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 834, IFC4X3_RC3_IfcPropertyDefinition_type); - IFC4X3_RC3_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 842, IFC4X3_RC3_IfcPropertyDefinition_type); - IFC4X3_RC3_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 856, IFC4X3_RC3_IfcPropertySetDefinition_type); - IFC4X3_RC3_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 881, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 890, IFC4X3_RC3_IfcTimeSeries_type); - IFC4X3_RC3_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 893, IFC4X3_RC3_IfcPreDefinedProperties_type); - IFC4X3_RC3_IfcRelationship_type = new entity("IfcRelationship", true, 922, IFC4X3_RC3_IfcRoot_type); - IFC4X3_RC3_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 961, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 962, IFC4X3_RC3_IfcResourceLevelRelationship_type); - IFC4X3_RC3_IfcResourceTime_type = new entity("IfcResourceTime", false, 966, IFC4X3_RC3_IfcSchedulingTime_type); - IFC4X3_RC3_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 983, IFC4X3_RC3_IfcRectangleProfileDef_type); - IFC4X3_RC3_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 996, IFC4X3_RC3_IfcPreDefinedProperties_type); - IFC4X3_RC3_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 997, IFC4X3_RC3_IfcPreDefinedProperties_type); - IFC4X3_RC3_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 993, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcSegment_type = new entity("IfcSegment", true, 999, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 1014, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 1021, IFC4X3_RC3_IfcProperty_type); - IFC4X3_RC3_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 1036, IFC4X3_RC3_IfcStructuralConnectionCondition_type); - IFC4X3_RC3_IfcSolidModel_type = new entity("IfcSolidModel", true, 1041, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 1099, IFC4X3_RC3_IfcStructuralLoadStatic_type); - IFC4X3_RC3_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 1101, IFC4X3_RC3_IfcStructuralLoadStatic_type); - IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 1102, IFC4X3_RC3_IfcStructuralLoadStatic_type); - IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 1103, IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type); - IFC4X3_RC3_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1104, IFC4X3_RC3_IfcStructuralLoadStatic_type); - IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1105, IFC4X3_RC3_IfcStructuralLoadSingleForce_type); - IFC4X3_RC3_IfcSubedge_type = new entity("IfcSubedge", false, 1128, IFC4X3_RC3_IfcEdge_type); - IFC4X3_RC3_IfcSurface_type = new entity("IfcSurface", true, 1129, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1143, IFC4X3_RC3_IfcSurfaceStyleShading_type); - IFC4X3_RC3_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1147, IFC4X3_RC3_IfcSolidModel_type); - IFC4X3_RC3_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1148, IFC4X3_RC3_IfcSolidModel_type); - IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1149, IFC4X3_RC3_IfcSweptDiskSolid_type); - IFC4X3_RC3_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1150, IFC4X3_RC3_IfcSurface_type); - IFC4X3_RC3_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1240, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1183, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1189, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1190, IFC4X3_RC3_IfcTextLiteral_type); - IFC4X3_RC3_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1193, IFC4X3_RC3_IfcPreDefinedTextFont_type); - IFC4X3_RC3_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1234, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcTypeObject_type = new entity("IfcTypeObject", false, 1244, IFC4X3_RC3_IfcObjectDefinition_type); - IFC4X3_RC3_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1245, IFC4X3_RC3_IfcTypeObject_type); - IFC4X3_RC3_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1246, IFC4X3_RC3_IfcTypeObject_type); - IFC4X3_RC3_IfcTypeResource_type = new entity("IfcTypeResource", true, 1247, IFC4X3_RC3_IfcTypeObject_type); - IFC4X3_RC3_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1258, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcVector_type = new entity("IfcVector", false, 1264, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1267, IFC4X3_RC3_IfcLoop_type); - IFC4X3_RC3_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1301, IFC4X3_RC3_IfcTypeProduct_type); - IFC4X3_RC3_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1316, IFC4X3_RC3_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcClassification_type); - items.push_back(IFC4X3_RC3_IfcClassificationReference_type); - IFC4X3_RC3_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 171, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcClassification_type); - items.push_back(IFC4X3_RC3_IfcClassificationReference_type); - IFC4X3_RC3_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 172, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4X3_RC3_IfcGeometricRepresentationContext_type); - IFC4X3_RC3_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 247, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcObjectDefinition_type); - items.push_back(IFC4X3_RC3_IfcPropertyDefinition_type); - IFC4X3_RC3_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 298, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcDocumentInformation_type); - items.push_back(IFC4X3_RC3_IfcDocumentReference_type); - IFC4X3_RC3_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 336, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcVector_type); - IFC4X3_RC3_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 532, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4X3_RC3_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4X3_RC3_IfcAreaMeasure_type); - items.push_back(IFC4X3_RC3_IfcComplexNumber_type); - items.push_back(IFC4X3_RC3_IfcContextDependentMeasure_type); - items.push_back(IFC4X3_RC3_IfcCountMeasure_type); - items.push_back(IFC4X3_RC3_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC3_IfcElectricCurrentMeasure_type); - items.push_back(IFC4X3_RC3_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4X3_RC3_IfcMassMeasure_type); - items.push_back(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC3_IfcNumericMeasure_type); - items.push_back(IFC4X3_RC3_IfcParameterValue_type); - items.push_back(IFC4X3_RC3_IfcPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC3_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4X3_RC3_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC3_IfcRatioMeasure_type); - items.push_back(IFC4X3_RC3_IfcSolidAngleMeasure_type); - items.push_back(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4X3_RC3_IfcTimeMeasure_type); - items.push_back(IFC4X3_RC3_IfcVolumeMeasure_type); - IFC4X3_RC3_IfcMeasureValue_type = new select_type("IfcMeasureValue", 660, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcPoint_type); - items.push_back(IFC4X3_RC3_IfcVertexPoint_type); - IFC4X3_RC3_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 776, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcProductDefinitionShape_type); - items.push_back(IFC4X3_RC3_IfcRepresentationMap_type); - IFC4X3_RC3_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 811, items); - } - IFC4X3_RC3_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 836, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(17); - items.push_back(IFC4X3_RC3_IfcActorRole_type); - items.push_back(IFC4X3_RC3_IfcAppliedValue_type); - items.push_back(IFC4X3_RC3_IfcApproval_type); - items.push_back(IFC4X3_RC3_IfcConstraint_type); - items.push_back(IFC4X3_RC3_IfcContextDependentUnit_type); - items.push_back(IFC4X3_RC3_IfcConversionBasedUnit_type); - items.push_back(IFC4X3_RC3_IfcExternalInformation_type); - items.push_back(IFC4X3_RC3_IfcExternalReference_type); - items.push_back(IFC4X3_RC3_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC3_IfcOrganization_type); - items.push_back(IFC4X3_RC3_IfcPerson_type); - items.push_back(IFC4X3_RC3_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC3_IfcPhysicalQuantity_type); - items.push_back(IFC4X3_RC3_IfcProfileDef_type); - items.push_back(IFC4X3_RC3_IfcPropertyAbstraction_type); - items.push_back(IFC4X3_RC3_IfcShapeAspect_type); - items.push_back(IFC4X3_RC3_IfcTimeSeries_type); - IFC4X3_RC3_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 964, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4X3_RC3_IfcPreDefinedTextFont_type); - IFC4X3_RC3_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1188, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcDerivedMeasureValue_type); - items.push_back(IFC4X3_RC3_IfcMeasureValue_type); - items.push_back(IFC4X3_RC3_IfcSimpleValue_type); - IFC4X3_RC3_IfcValue_type = new select_type("IfcValue", 1259, items); - } - IFC4X3_RC3_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X3_RC3_IfcFaceSurface_type); - IFC4X3_RC3_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 47, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 63, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 67, IFC4X3_RC3_IfcPlacement_type); - IFC4X3_RC3_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 69, IFC4X3_RC3_IfcPlacement_type); - IFC4X3_RC3_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 70, IFC4X3_RC3_IfcPlacement_type); - IFC4X3_RC3_IfcAxis2PlacementLinear_type = new entity("IfcAxis2PlacementLinear", false, 71, IFC4X3_RC3_IfcPlacement_type); - IFC4X3_RC3_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 92, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 101, IFC4X3_RC3_IfcSurface_type); - IFC4X3_RC3_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 102, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 104, IFC4X3_RC3_IfcHalfSpaceSolid_type); - IFC4X3_RC3_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 267, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 147, IFC4X3_RC3_IfcPoint_type); - IFC4X3_RC3_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 148, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 149, IFC4X3_RC3_IfcCartesianPointList_type); - IFC4X3_RC3_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 150, IFC4X3_RC3_IfcCartesianPointList_type); - IFC4X3_RC3_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 151, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 152, IFC4X3_RC3_IfcCartesianTransformationOperator_type); - IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 153, IFC4X3_RC3_IfcCartesianTransformationOperator2D_type); - IFC4X3_RC3_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 154, IFC4X3_RC3_IfcCartesianTransformationOperator_type); - IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 155, IFC4X3_RC3_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC3_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 166, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcClosedShell_type = new entity("IfcClosedShell", false, 173, IFC4X3_RC3_IfcConnectedFaceSet_type); - IFC4X3_RC3_IfcColourRgb_type = new entity("IfcColourRgb", false, 180, IFC4X3_RC3_IfcColourSpecification_type); - IFC4X3_RC3_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 191, IFC4X3_RC3_IfcProperty_type); - IFC4X3_RC3_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 196, IFC4X3_RC3_IfcSegment_type); - IFC4X3_RC3_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 226, IFC4X3_RC3_IfcTypeResource_type); - IFC4X3_RC3_IfcContext_type = new entity("IfcContext", true, 227, IFC4X3_RC3_IfcObjectDefinition_type); - IFC4X3_RC3_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 262, IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 264, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 266, IFC4X3_RC3_IfcSolidModel_type); - IFC4X3_RC3_IfcCurve_type = new entity("IfcCurve", true, 273, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 274, IFC4X3_RC3_IfcBoundedSurface_type); - IFC4X3_RC3_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 275, IFC4X3_RC3_IfcBoundedSurface_type); - IFC4X3_RC3_IfcCurveSegment_type = new entity("IfcCurveSegment", false, 281, IFC4X3_RC3_IfcSegment_type); - IFC4X3_RC3_IfcDirection_type = new entity("IfcDirection", false, 307, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type = new entity("IfcDirectrixCurveSweptAreaSolid", true, 309, IFC4X3_RC3_IfcSweptAreaSolid_type); - IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type = new entity("IfcDirectrixDistanceSweptAreaSolid", true, 311, IFC4X3_RC3_IfcSweptAreaSolid_type); - IFC4X3_RC3_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 344, IFC4X3_RC3_IfcTypeProduct_type); - IFC4X3_RC3_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 371, IFC4X3_RC3_IfcLoop_type); - IFC4X3_RC3_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 407, IFC4X3_RC3_IfcQuantitySet_type); - IFC4X3_RC3_IfcElementType_type = new entity("IfcElementType", true, 408, IFC4X3_RC3_IfcTypeProduct_type); - IFC4X3_RC3_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 400, IFC4X3_RC3_IfcSurface_type); - IFC4X3_RC3_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 410, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcEventType_type = new entity("IfcEventType", false, 426, IFC4X3_RC3_IfcTypeProcess_type); - IFC4X3_RC3_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 438, IFC4X3_RC3_IfcSweptAreaSolid_type); - IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 439, IFC4X3_RC3_IfcExtrudedAreaSolid_type); - IFC4X3_RC3_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 441, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 463, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 464, IFC4X3_RC3_IfcGeometricRepresentationItem_type); - IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 472, IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC3_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 503, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 505, IFC4X3_RC3_IfcFurnishingElementType_type); - IFC4X3_RC3_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 508, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 510, IFC4X3_RC3_IfcGeometricSet_type); - IFC4X3_RC3_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 569, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type = new entity("IfcInclinedReferenceSweptAreaSolid", false, 548, IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type); - IFC4X3_RC3_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 551, IFC4X3_RC3_IfcTessellatedItem_type); - IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 552, IFC4X3_RC3_IfcIndexedPolygonalFace_type); - IFC4X3_RC3_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 624, IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 580, IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcLine_type = new entity("IfcLine", false, 607, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 630, IFC4X3_RC3_IfcSolidModel_type); - IFC4X3_RC3_IfcObject_type = new entity("IfcObject", true, 704, IFC4X3_RC3_IfcObjectDefinition_type); - IFC4X3_RC3_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 713, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 714, IFC4X3_RC3_IfcOffsetCurve_type); - IFC4X3_RC3_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 715, IFC4X3_RC3_IfcOffsetCurve_type); - IFC4X3_RC3_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 716, IFC4X3_RC3_IfcOffsetCurve_type); - IFC4X3_RC3_IfcPcurve_type = new entity("IfcPcurve", false, 736, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 762, IFC4X3_RC3_IfcPlanarExtent_type); - IFC4X3_RC3_IfcPlane_type = new entity("IfcPlane", false, 765, IFC4X3_RC3_IfcElementarySurface_type); - IFC4X3_RC3_IfcPolynomialCurve_type = new entity("IfcPolynomialCurve", false, 781, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 790, IFC4X3_RC3_IfcPreDefinedItem_type); - IFC4X3_RC3_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 791, IFC4X3_RC3_IfcPreDefinedItem_type); - IFC4X3_RC3_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 794, IFC4X3_RC3_IfcPropertySetDefinition_type); - IFC4X3_RC3_IfcProcedureType_type = new entity("IfcProcedureType", false, 804, IFC4X3_RC3_IfcTypeProcess_type); - IFC4X3_RC3_IfcProcess_type = new entity("IfcProcess", true, 806, IFC4X3_RC3_IfcObject_type); - IFC4X3_RC3_IfcProduct_type = new entity("IfcProduct", true, 808, IFC4X3_RC3_IfcObject_type); - IFC4X3_RC3_IfcProject_type = new entity("IfcProject", false, 816, IFC4X3_RC3_IfcContext_type); - IFC4X3_RC3_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 821, IFC4X3_RC3_IfcContext_type); - IFC4X3_RC3_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 826, IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 829, IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 831, IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 832, IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcPropertySet_type = new entity("IfcPropertySet", false, 833, IFC4X3_RC3_IfcPropertySetDefinition_type); - IFC4X3_RC3_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 837, IFC4X3_RC3_IfcPropertyTemplateDefinition_type); - IFC4X3_RC3_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 839, IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 840, IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 841, IFC4X3_RC3_IfcPropertyTemplateDefinition_type); - IFC4X3_RC3_IfcProxy_type = new entity("IfcProxy", false, 849, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 880, IFC4X3_RC3_IfcRectangleProfileDef_type); - IFC4X3_RC3_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 882, IFC4X3_RC3_IfcCsgPrimitive3D_type); - IFC4X3_RC3_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 883, IFC4X3_RC3_IfcBoundedSurface_type); - IFC4X3_RC3_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 894, IFC4X3_RC3_IfcPreDefinedPropertySet_type); - IFC4X3_RC3_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 906, IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 907, IFC4X3_RC3_IfcRelAssigns_type); - IFC4X3_RC3_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 908, IFC4X3_RC3_IfcRelAssigns_type); - IFC4X3_RC3_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 909, IFC4X3_RC3_IfcRelAssigns_type); - IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 910, IFC4X3_RC3_IfcRelAssignsToGroup_type); - IFC4X3_RC3_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 911, IFC4X3_RC3_IfcRelAssigns_type); - IFC4X3_RC3_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 912, IFC4X3_RC3_IfcRelAssigns_type); - IFC4X3_RC3_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 913, IFC4X3_RC3_IfcRelAssigns_type); - IFC4X3_RC3_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 914, IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 915, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 916, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 917, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 918, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 919, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 920, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelAssociatesProfileDef_type = new entity("IfcRelAssociatesProfileDef", false, 921, IFC4X3_RC3_IfcRelAssociates_type); - IFC4X3_RC3_IfcRelConnects_type = new entity("IfcRelConnects", true, 923, IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 924, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 925, IFC4X3_RC3_IfcRelConnectsElements_type); - IFC4X3_RC3_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 927, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 926, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 928, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 929, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 930, IFC4X3_RC3_IfcRelConnectsStructuralMember_type); - IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 931, IFC4X3_RC3_IfcRelConnectsElements_type); - IFC4X3_RC3_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 932, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 933, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 934, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 935, IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 936, IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRelDefines_type = new entity("IfcRelDefines", true, 937, IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 938, IFC4X3_RC3_IfcRelDefines_type); - IFC4X3_RC3_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 939, IFC4X3_RC3_IfcRelDefines_type); - IFC4X3_RC3_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 940, IFC4X3_RC3_IfcRelDefines_type); - IFC4X3_RC3_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 941, IFC4X3_RC3_IfcRelDefines_type); - IFC4X3_RC3_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 942, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 943, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 944, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelNests_type = new entity("IfcRelNests", false, 945, IFC4X3_RC3_IfcRelDecomposes_type); - IFC4X3_RC3_IfcRelPositions_type = new entity("IfcRelPositions", false, 946, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 947, IFC4X3_RC3_IfcRelDecomposes_type); - IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 948, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelSequence_type = new entity("IfcRelSequence", false, 949, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 950, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 951, IFC4X3_RC3_IfcRelConnects_type); - IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 952, IFC4X3_RC3_IfcRelSpaceBoundary_type); - IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 953, IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC3_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 954, IFC4X3_RC3_IfcRelDecomposes_type); - IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 955, IFC4X3_RC3_IfcCompositeCurveSegment_type); - IFC4X3_RC3_IfcResource_type = new entity("IfcResource", true, 960, IFC4X3_RC3_IfcObject_type); - IFC4X3_RC3_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 967, IFC4X3_RC3_IfcSweptAreaSolid_type); - IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 968, IFC4X3_RC3_IfcRevolvedAreaSolid_type); - IFC4X3_RC3_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 969, IFC4X3_RC3_IfcCsgPrimitive3D_type); - IFC4X3_RC3_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 970, IFC4X3_RC3_IfcCsgPrimitive3D_type); - IFC4X3_RC3_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 991, IFC4X3_RC3_IfcSolidModel_type); - IFC4X3_RC3_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 992, IFC4X3_RC3_IfcSectionedSolid_type); - IFC4X3_RC3_IfcSectionedSurface_type = new entity("IfcSectionedSurface", false, 994, IFC4X3_RC3_IfcSurface_type); - IFC4X3_RC3_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 1022, IFC4X3_RC3_IfcPropertyTemplate_type); - IFC4X3_RC3_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 1055, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 1056, IFC4X3_RC3_IfcTypeProduct_type); - IFC4X3_RC3_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 1058, IFC4X3_RC3_IfcSpatialElement_type); - IFC4X3_RC3_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 1059, IFC4X3_RC3_IfcSpatialElementType_type); - IFC4X3_RC3_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 1060, IFC4X3_RC3_IfcSpatialElement_type); - IFC4X3_RC3_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 1061, IFC4X3_RC3_IfcSpatialElementType_type); - IFC4X3_RC3_IfcSphere_type = new entity("IfcSphere", false, 1067, IFC4X3_RC3_IfcCsgPrimitive3D_type); - IFC4X3_RC3_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 1068, IFC4X3_RC3_IfcElementarySurface_type); - IFC4X3_RC3_IfcSpiral_type = new entity("IfcSpiral", true, 1069, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 1081, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 1093, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1108, IFC4X3_RC3_IfcStructuralItem_type); - IFC4X3_RC3_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1113, IFC4X3_RC3_IfcStructuralActivity_type); - IFC4X3_RC3_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1118, IFC4X3_RC3_IfcStructuralMember_type); - IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1120, IFC4X3_RC3_IfcStructuralSurfaceMember_type); - IFC4X3_RC3_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1121, IFC4X3_RC3_IfcStructuralReaction_type); - IFC4X3_RC3_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1126, IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1130, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1131, IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1134, IFC4X3_RC3_IfcSweptSurface_type); - IFC4X3_RC3_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1135, IFC4X3_RC3_IfcSweptSurface_type); - IFC4X3_RC3_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1156, IFC4X3_RC3_IfcFurnishingElementType_type); - IFC4X3_RC3_IfcTask_type = new entity("IfcTask", false, 1164, IFC4X3_RC3_IfcProcess_type); - IFC4X3_RC3_IfcTaskType_type = new entity("IfcTaskType", false, 1168, IFC4X3_RC3_IfcTypeProcess_type); - IFC4X3_RC3_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1182, IFC4X3_RC3_IfcTessellatedItem_type); - IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type = new entity("IfcThirdOrderPolynomialSpiral", false, 1208, IFC4X3_RC3_IfcSpiral_type); - IFC4X3_RC3_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1219, IFC4X3_RC3_IfcElementarySurface_type); - IFC4X3_RC3_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1232, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1235, IFC4X3_RC3_IfcTessellatedFaceSet_type); - IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1236, IFC4X3_RC3_IfcTriangulatedFaceSet_type); - IFC4X3_RC3_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1296, IFC4X3_RC3_IfcPreDefinedPropertySet_type); - IFC4X3_RC3_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1299, IFC4X3_RC3_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC3_IfcReference_type); - items.push_back(IFC4X3_RC3_IfcValue_type); - IFC4X3_RC3_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 51, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcAxis2Placement2D_type); - items.push_back(IFC4X3_RC3_IfcAxis2Placement3D_type); - IFC4X3_RC3_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 68, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC3_IfcBooleanResult_type); - items.push_back(IFC4X3_RC3_IfcCsgPrimitive3D_type); - items.push_back(IFC4X3_RC3_IfcHalfSpaceSolid_type); - items.push_back(IFC4X3_RC3_IfcSolidModel_type); - items.push_back(IFC4X3_RC3_IfcTessellatedFaceSet_type); - IFC4X3_RC3_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 90, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcColourSpecification_type); - items.push_back(IFC4X3_RC3_IfcPreDefinedColour_type); - IFC4X3_RC3_IfcColour_type = new select_type("IfcColour", 178, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcColourRgb_type); - items.push_back(IFC4X3_RC3_IfcNormalisedRatioMeasure_type); - IFC4X3_RC3_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 179, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBooleanResult_type); - items.push_back(IFC4X3_RC3_IfcCsgPrimitive3D_type); - IFC4X3_RC3_IfcCsgSelect_type = new select_type("IfcCsgSelect", 265, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcCurveStyleFont_type); - items.push_back(IFC4X3_RC3_IfcPreDefinedCurveFont_type); - IFC4X3_RC3_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 286, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X3_RC3_IfcColour_type); - items.push_back(IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X3_RC3_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X3_RC3_IfcFillAreaStyleTiles_type); - IFC4X3_RC3_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 465, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcCurve_type); - items.push_back(IFC4X3_RC3_IfcPoint_type); - items.push_back(IFC4X3_RC3_IfcSurface_type); - IFC4X3_RC3_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 516, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcDirection_type); - items.push_back(IFC4X3_RC3_IfcVirtualGridIntersection_type); - IFC4X3_RC3_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 528, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC3_IfcAppliedValue_type); - items.push_back(IFC4X3_RC3_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC3_IfcReference_type); - items.push_back(IFC4X3_RC3_IfcTable_type); - items.push_back(IFC4X3_RC3_IfcTimeSeries_type); - items.push_back(IFC4X3_RC3_IfcValue_type); - IFC4X3_RC3_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 673, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcProcess_type); - items.push_back(IFC4X3_RC3_IfcTypeProcess_type); - IFC4X3_RC3_IfcProcessSelect_type = new select_type("IfcProcessSelect", 807, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcProduct_type); - items.push_back(IFC4X3_RC3_IfcTypeProduct_type); - IFC4X3_RC3_IfcProductSelect_type = new select_type("IfcProductSelect", 812, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcPropertySetDefinition_type); - items.push_back(IFC4X3_RC3_IfcPropertySetDefinitionSet_type); - IFC4X3_RC3_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 835, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcResource_type); - items.push_back(IFC4X3_RC3_IfcTypeResource_type); - IFC4X3_RC3_IfcResourceSelect_type = new select_type("IfcResourceSelect", 965, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcClosedShell_type); - items.push_back(IFC4X3_RC3_IfcOpenShell_type); - IFC4X3_RC3_IfcShell_type = new select_type("IfcShell", 1013, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcClosedShell_type); - items.push_back(IFC4X3_RC3_IfcSolidModel_type); - IFC4X3_RC3_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 1042, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X3_RC3_IfcFaceSurface_type); - items.push_back(IFC4X3_RC3_IfcSurface_type); - IFC4X3_RC3_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1136, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcCartesianPoint_type); - items.push_back(IFC4X3_RC3_IfcParameterValue_type); - IFC4X3_RC3_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1239, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcDirection_type); - items.push_back(IFC4X3_RC3_IfcVector_type); - IFC4X3_RC3_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1265, items); - } - IFC4X3_RC3_IfcActor_type = new entity("IfcActor", false, 6, IFC4X3_RC3_IfcObject_type); - IFC4X3_RC3_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X3_RC3_IfcManifoldSolidBrep_type); - IFC4X3_RC3_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X3_RC3_IfcAdvancedBrep_type); - IFC4X3_RC3_IfcAnnotation_type = new entity("IfcAnnotation", false, 46, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 111, IFC4X3_RC3_IfcBoundedSurface_type); - IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 113, IFC4X3_RC3_IfcBSplineSurface_type); - IFC4X3_RC3_IfcBlock_type = new entity("IfcBlock", false, 84, IFC4X3_RC3_IfcCsgPrimitive3D_type); - IFC4X3_RC3_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 89, IFC4X3_RC3_IfcBooleanResult_type); - IFC4X3_RC3_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 100, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 121, IFC4X3_RC3_IfcSpatialStructureElement_type); - IFC4X3_RC3_IfcBuiltElementType_type = new entity("IfcBuiltElementType", false, 125, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcChimneyType_type = new entity("IfcChimneyType", false, 162, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 165, IFC4X3_RC3_IfcCircleProfileDef_type); - IFC4X3_RC3_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 168, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcClothoid_type = new entity("IfcClothoid", false, 174, IFC4X3_RC3_IfcSpiral_type); - IFC4X3_RC3_IfcColumnType_type = new entity("IfcColumnType", false, 185, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 192, IFC4X3_RC3_IfcPropertyTemplate_type); - IFC4X3_RC3_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 194, IFC4X3_RC3_IfcBoundedCurve_type); - IFC4X3_RC3_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 195, IFC4X3_RC3_IfcCompositeCurve_type); - IFC4X3_RC3_IfcConic_type = new entity("IfcConic", true, 205, IFC4X3_RC3_IfcCurve_type); - IFC4X3_RC3_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 217, IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 220, IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 223, IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 225, IFC4X3_RC3_IfcResource_type); - IFC4X3_RC3_IfcControl_type = new entity("IfcControl", true, 230, IFC4X3_RC3_IfcObject_type); - IFC4X3_RC3_IfcCosine_type = new entity("IfcCosine", false, 248, IFC4X3_RC3_IfcSpiral_type); - IFC4X3_RC3_IfcCostItem_type = new entity("IfcCostItem", false, 249, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 251, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcCourseType_type = new entity("IfcCourseType", false, 256, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcCoveringType_type = new entity("IfcCoveringType", false, 259, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcCrewResource_type = new entity("IfcCrewResource", false, 261, IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 270, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 287, IFC4X3_RC3_IfcElementarySurface_type); - IFC4X3_RC3_IfcDeepFoundationType_type = new entity("IfcDeepFoundationType", false, 297, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type = new entity("IfcDirectrixDerivedReferenceSweptAreaSolid", false, 310, IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type); - IFC4X3_RC3_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 325, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 327, IFC4X3_RC3_IfcDistributionElementType_type); - IFC4X3_RC3_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 339, IFC4X3_RC3_IfcPreDefinedPropertySet_type); - IFC4X3_RC3_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 342, IFC4X3_RC3_IfcPreDefinedPropertySet_type); - IFC4X3_RC3_IfcDoorType_type = new entity("IfcDoorType", false, 347, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 351, IFC4X3_RC3_IfcPreDefinedColour_type); - IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 352, IFC4X3_RC3_IfcPreDefinedCurveFont_type); - IFC4X3_RC3_IfcElement_type = new entity("IfcElement", true, 399, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 401, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 402, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcElementComponent_type = new entity("IfcElementComponent", true, 404, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 405, IFC4X3_RC3_IfcElementType_type); - IFC4X3_RC3_IfcEllipse_type = new entity("IfcEllipse", false, 409, IFC4X3_RC3_IfcConic_type); - IFC4X3_RC3_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 412, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcEngineType_type = new entity("IfcEngineType", false, 415, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 418, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 421, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcEvent_type = new entity("IfcEvent", false, 423, IFC4X3_RC3_IfcProcess_type); - IFC4X3_RC3_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 437, IFC4X3_RC3_IfcSpatialElement_type); - IFC4X3_RC3_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 445, IFC4X3_RC3_IfcManifoldSolidBrep_type); - IFC4X3_RC3_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 446, IFC4X3_RC3_IfcFacetedBrep_type); - IFC4X3_RC3_IfcFacility_type = new entity("IfcFacility", false, 447, IFC4X3_RC3_IfcSpatialStructureElement_type); - IFC4X3_RC3_IfcFacilityPart_type = new entity("IfcFacilityPart", false, 448, IFC4X3_RC3_IfcSpatialStructureElement_type); - IFC4X3_RC3_IfcFastener_type = new entity("IfcFastener", false, 456, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcFastenerType_type = new entity("IfcFastenerType", false, 457, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 459, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 460, IFC4X3_RC3_IfcFeatureElement_type); - IFC4X3_RC3_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 461, IFC4X3_RC3_IfcFeatureElement_type); - IFC4X3_RC3_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 474, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 477, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 482, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 485, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 487, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 489, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 491, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 493, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcFootingType_type = new entity("IfcFootingType", false, 498, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 502, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcFurniture_type = new entity("IfcFurniture", false, 504, IFC4X3_RC3_IfcFurnishingElement_type); - IFC4X3_RC3_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 507, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcGeotechnicalElement_type = new entity("IfcGeotechnicalElement", true, 520, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcGeotechnicalStratum_type = new entity("IfcGeotechnicalStratum", true, 521, IFC4X3_RC3_IfcGeotechnicalElement_type); - IFC4X3_RC3_IfcGradientCurve_type = new entity("IfcGradientCurve", false, 524, IFC4X3_RC3_IfcCompositeCurve_type); - IFC4X3_RC3_IfcGroup_type = new entity("IfcGroup", false, 530, IFC4X3_RC3_IfcObject_type); - IFC4X3_RC3_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 534, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 539, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcImpactProtectionDevice_type = new entity("IfcImpactProtectionDevice", false, 544, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcImpactProtectionDeviceType_type = new entity("IfcImpactProtectionDeviceType", false, 545, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 550, IFC4X3_RC3_IfcBoundedCurve_type); - IFC4X3_RC3_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 559, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC3_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 563, IFC4X3_RC3_IfcSurfaceCurve_type); - IFC4X3_RC3_IfcInventory_type = new entity("IfcInventory", false, 564, IFC4X3_RC3_IfcGroup_type); - IFC4X3_RC3_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 572, IFC4X3_RC3_IfcFlowFittingType_type); - IFC4X3_RC3_IfcKerbType_type = new entity("IfcKerbType", false, 575, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcLaborResource_type = new entity("IfcLaborResource", false, 579, IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcLampType_type = new entity("IfcLampType", false, 584, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 598, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcLinearElement_type = new entity("IfcLinearElement", true, 608, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcLiquidTerminalType_type = new entity("IfcLiquidTerminalType", false, 617, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcMarineFacility_type = new entity("IfcMarineFacility", false, 633, IFC4X3_RC3_IfcFacility_type); - IFC4X3_RC3_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 662, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 663, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 666, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcMemberType_type = new entity("IfcMemberType", false, 670, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type = new entity("IfcMobileTelecommunicationsApplianceType", false, 676, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcMooringDeviceType_type = new entity("IfcMooringDeviceType", false, 692, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 695, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcNavigationElementType_type = new entity("IfcNavigationElementType", false, 699, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcOccupant_type = new entity("IfcOccupant", false, 711, IFC4X3_RC3_IfcActor_type); - IFC4X3_RC3_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 718, IFC4X3_RC3_IfcFeatureElementSubtraction_type); - IFC4X3_RC3_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 720, IFC4X3_RC3_IfcOpeningElement_type); - IFC4X3_RC3_IfcOutletType_type = new entity("IfcOutletType", false, 727, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcPavementType_type = new entity("IfcPavementType", false, 734, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 737, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 740, IFC4X3_RC3_IfcPreDefinedPropertySet_type); - IFC4X3_RC3_IfcPermit_type = new entity("IfcPermit", false, 741, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcPileType_type = new entity("IfcPileType", false, 752, IFC4X3_RC3_IfcDeepFoundationType_type); - IFC4X3_RC3_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 755, IFC4X3_RC3_IfcFlowFittingType_type); - IFC4X3_RC3_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 758, IFC4X3_RC3_IfcFlowSegmentType_type); - IFC4X3_RC3_IfcPlant_type = new entity("IfcPlant", false, 767, IFC4X3_RC3_IfcGeographicElement_type); - IFC4X3_RC3_IfcPlateType_type = new entity("IfcPlateType", false, 770, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 778, IFC4X3_RC3_IfcTessellatedFaceSet_type); - IFC4X3_RC3_IfcPolyline_type = new entity("IfcPolyline", false, 779, IFC4X3_RC3_IfcBoundedCurve_type); - IFC4X3_RC3_IfcPort_type = new entity("IfcPort", true, 782, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 783, IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcProcedure_type = new entity("IfcProcedure", false, 803, IFC4X3_RC3_IfcProcess_type); - IFC4X3_RC3_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 822, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 819, IFC4X3_RC3_IfcFeatureElementAddition_type); - IFC4X3_RC3_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 847, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcPumpType_type = new entity("IfcPumpType", false, 851, IFC4X3_RC3_IfcFlowMovingDeviceType_type); - IFC4X3_RC3_IfcRailType_type = new entity("IfcRailType", false, 865, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcRailingType_type = new entity("IfcRailingType", false, 863, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcRailway_type = new entity("IfcRailway", false, 867, IFC4X3_RC3_IfcFacility_type); - IFC4X3_RC3_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 872, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcRampType_type = new entity("IfcRampType", false, 874, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 878, IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC3_IfcReferent_type = new entity("IfcReferent", false, 887, IFC4X3_RC3_IfcPositioningElement_type); - IFC4X3_RC3_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 900, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 901, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 902, IFC4X3_RC3_IfcReinforcingElement_type); - IFC4X3_RC3_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 903, IFC4X3_RC3_IfcReinforcingElementType_type); - IFC4X3_RC3_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 905, IFC4X3_RC3_IfcRelDecomposes_type); - IFC4X3_RC3_IfcRoad_type = new entity("IfcRoad", false, 971, IFC4X3_RC3_IfcFacility_type); - IFC4X3_RC3_IfcRoofType_type = new entity("IfcRoofType", false, 976, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 985, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 988, IFC4X3_RC3_IfcSurfaceCurve_type); - IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type = new entity("IfcSecondOrderPolynomialSpiral", false, 989, IFC4X3_RC3_IfcSpiral_type); - IFC4X3_RC3_IfcSegmentedReferenceCurve_type = new entity("IfcSegmentedReferenceCurve", false, 1000, IFC4X3_RC3_IfcCompositeCurve_type); - IFC4X3_RC3_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 1007, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcSign_type = new entity("IfcSign", false, 1015, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcSignType_type = new entity("IfcSignType", false, 1019, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcSignalType_type = new entity("IfcSignalType", false, 1017, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcSine_type = new entity("IfcSine", false, 1025, IFC4X3_RC3_IfcSpiral_type); - IFC4X3_RC3_IfcSite_type = new entity("IfcSite", false, 1027, IFC4X3_RC3_IfcSpatialStructureElement_type); - IFC4X3_RC3_IfcSlabType_type = new entity("IfcSlabType", false, 1034, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 1038, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcSolidStratum_type = new entity("IfcSolidStratum", false, 1043, IFC4X3_RC3_IfcGeotechnicalStratum_type); - IFC4X3_RC3_IfcSpace_type = new entity("IfcSpace", false, 1048, IFC4X3_RC3_IfcSpatialStructureElement_type); - IFC4X3_RC3_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 1051, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcSpaceType_type = new entity("IfcSpaceType", false, 1053, IFC4X3_RC3_IfcSpatialStructureElementType_type); - IFC4X3_RC3_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 1071, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 1075, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcStairType_type = new entity("IfcStairType", false, 1077, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 1080, IFC4X3_RC3_IfcStructuralActivity_type); - IFC4X3_RC3_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 1084, IFC4X3_RC3_IfcStructuralItem_type); - IFC4X3_RC3_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 1086, IFC4X3_RC3_IfcStructuralAction_type); - IFC4X3_RC3_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 1088, IFC4X3_RC3_IfcStructuralConnection_type); - IFC4X3_RC3_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 1089, IFC4X3_RC3_IfcStructuralMember_type); - IFC4X3_RC3_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 1091, IFC4X3_RC3_IfcStructuralCurveMember_type); - IFC4X3_RC3_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 1092, IFC4X3_RC3_IfcStructuralReaction_type); - IFC4X3_RC3_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 1094, IFC4X3_RC3_IfcStructuralCurveAction_type); - IFC4X3_RC3_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 1098, IFC4X3_RC3_IfcGroup_type); - IFC4X3_RC3_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1110, IFC4X3_RC3_IfcStructuralAction_type); - IFC4X3_RC3_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1111, IFC4X3_RC3_IfcStructuralConnection_type); - IFC4X3_RC3_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1112, IFC4X3_RC3_IfcStructuralReaction_type); - IFC4X3_RC3_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1114, IFC4X3_RC3_IfcGroup_type); - IFC4X3_RC3_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1115, IFC4X3_RC3_IfcStructuralAction_type); - IFC4X3_RC3_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1117, IFC4X3_RC3_IfcStructuralConnection_type); - IFC4X3_RC3_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1125, IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1132, IFC4X3_RC3_IfcFeatureElement_type); - IFC4X3_RC3_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1152, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcSystem_type = new entity("IfcSystem", false, 1154, IFC4X3_RC3_IfcGroup_type); - IFC4X3_RC3_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1155, IFC4X3_RC3_IfcFurnishingElement_type); - IFC4X3_RC3_IfcTankType_type = new entity("IfcTankType", false, 1162, IFC4X3_RC3_IfcFlowStorageDeviceType_type); - IFC4X3_RC3_IfcTendon_type = new entity("IfcTendon", false, 1173, IFC4X3_RC3_IfcReinforcingElement_type); - IFC4X3_RC3_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1174, IFC4X3_RC3_IfcReinforcingElement_type); - IFC4X3_RC3_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1175, IFC4X3_RC3_IfcReinforcingElementType_type); - IFC4X3_RC3_IfcTendonConduit_type = new entity("IfcTendonConduit", false, 1177, IFC4X3_RC3_IfcReinforcingElement_type); - IFC4X3_RC3_IfcTendonConduitType_type = new entity("IfcTendonConduitType", false, 1178, IFC4X3_RC3_IfcReinforcingElementType_type); - IFC4X3_RC3_IfcTendonType_type = new entity("IfcTendonType", false, 1180, IFC4X3_RC3_IfcReinforcingElementType_type); - IFC4X3_RC3_IfcTrackElementType_type = new entity("IfcTrackElementType", false, 1222, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcTransformerType_type = new entity("IfcTransformerType", false, 1225, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcTransportElement_type = new entity("IfcTransportElement", false, 1229, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1237, IFC4X3_RC3_IfcBoundedCurve_type); - IFC4X3_RC3_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1242, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1253, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcValveType_type = new entity("IfcValveType", false, 1261, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcVibrationDamper_type = new entity("IfcVibrationDamper", false, 1269, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcVibrationDamperType_type = new entity("IfcVibrationDamperType", false, 1270, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1272, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1273, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcVienneseBend_type = new entity("IfcVienneseBend", false, 1275, IFC4X3_RC3_IfcBoundedCurve_type); - IFC4X3_RC3_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1276, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcVoidStratum_type = new entity("IfcVoidStratum", false, 1280, IFC4X3_RC3_IfcGeotechnicalStratum_type); - IFC4X3_RC3_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1278, IFC4X3_RC3_IfcFeatureElementSubtraction_type); - IFC4X3_RC3_IfcWallType_type = new entity("IfcWallType", false, 1286, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1292, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcWaterStratum_type = new entity("IfcWaterStratum", false, 1294, IFC4X3_RC3_IfcGeotechnicalStratum_type); - IFC4X3_RC3_IfcWindowType_type = new entity("IfcWindowType", false, 1304, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1307, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcWorkControl_type = new entity("IfcWorkControl", true, 1309, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1310, IFC4X3_RC3_IfcWorkControl_type); - IFC4X3_RC3_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1312, IFC4X3_RC3_IfcWorkControl_type); - IFC4X3_RC3_IfcZone_type = new entity("IfcZone", false, 1315, IFC4X3_RC3_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X3_RC3_IfcCurveStyleFontSelect_type); - IFC4X3_RC3_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 276, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC3_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X3_RC3_IfcPcurve_type); - items.push_back(IFC4X3_RC3_IfcSurfaceCurve_type); - IFC4X3_RC3_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 279, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcBoundedCurve_type); - items.push_back(IFC4X3_RC3_IfcEdgeCurve_type); - IFC4X3_RC3_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 280, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcElement_type); - items.push_back(IFC4X3_RC3_IfcSpatialElement_type); - IFC4X3_RC3_IfcInterferenceSelect_type = new select_type("IfcInterferenceSelect", 561, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcGroup_type); - items.push_back(IFC4X3_RC3_IfcProduct_type); - IFC4X3_RC3_IfcSpatialReferenceSelect_type = new select_type("IfcSpatialReferenceSelect", 1057, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcElement_type); - items.push_back(IFC4X3_RC3_IfcStructuralItem_type); - IFC4X3_RC3_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 1082, items); - } - IFC4X3_RC3_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X3_RC3_IfcControl_type); - IFC4X3_RC3_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcAlignmentCant_type = new entity("IfcAlignmentCant", false, 30, IFC4X3_RC3_IfcLinearElement_type); - IFC4X3_RC3_IfcAlignmentHorizontal_type = new entity("IfcAlignmentHorizontal", false, 33, IFC4X3_RC3_IfcLinearElement_type); - IFC4X3_RC3_IfcAlignmentSegment_type = new entity("IfcAlignmentSegment", false, 37, IFC4X3_RC3_IfcLinearElement_type); - IFC4X3_RC3_IfcAlignmentVertical_type = new entity("IfcAlignmentVertical", false, 39, IFC4X3_RC3_IfcLinearElement_type); - IFC4X3_RC3_IfcAsset_type = new entity("IfcAsset", false, 62, IFC4X3_RC3_IfcGroup_type); - IFC4X3_RC3_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 65, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 108, IFC4X3_RC3_IfcBoundedCurve_type); - IFC4X3_RC3_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 110, IFC4X3_RC3_IfcBSplineCurve_type); - IFC4X3_RC3_IfcBeamType_type = new entity("IfcBeamType", false, 74, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcBearingType_type = new entity("IfcBearingType", false, 77, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcBoilerType_type = new entity("IfcBoilerType", false, 86, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 95, IFC4X3_RC3_IfcCompositeCurveOnSurface_type); - IFC4X3_RC3_IfcBridge_type = new entity("IfcBridge", false, 105, IFC4X3_RC3_IfcFacility_type); - IFC4X3_RC3_IfcBuilding_type = new entity("IfcBuilding", false, 114, IFC4X3_RC3_IfcFacility_type); - IFC4X3_RC3_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 115, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 116, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 119, IFC4X3_RC3_IfcBuiltElementType_type); - IFC4X3_RC3_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 122, IFC4X3_RC3_IfcSystem_type); - IFC4X3_RC3_IfcBuiltElement_type = new entity("IfcBuiltElement", false, 124, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcBuiltSystem_type = new entity("IfcBuiltSystem", false, 126, IFC4X3_RC3_IfcSystem_type); - IFC4X3_RC3_IfcBurnerType_type = new entity("IfcBurnerType", false, 129, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 132, IFC4X3_RC3_IfcFlowFittingType_type); - IFC4X3_RC3_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 135, IFC4X3_RC3_IfcFlowSegmentType_type); - IFC4X3_RC3_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 138, IFC4X3_RC3_IfcFlowFittingType_type); - IFC4X3_RC3_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 141, IFC4X3_RC3_IfcFlowSegmentType_type); - IFC4X3_RC3_IfcCaissonFoundationType_type = new entity("IfcCaissonFoundationType", false, 144, IFC4X3_RC3_IfcDeepFoundationType_type); - IFC4X3_RC3_IfcChillerType_type = new entity("IfcChillerType", false, 159, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcChimney_type = new entity("IfcChimney", false, 161, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcCircle_type = new entity("IfcCircle", false, 164, IFC4X3_RC3_IfcConic_type); - IFC4X3_RC3_IfcCivilElement_type = new entity("IfcCivilElement", false, 167, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcCoilType_type = new entity("IfcCoilType", false, 176, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcColumn_type = new entity("IfcColumn", false, 183, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 184, IFC4X3_RC3_IfcColumn_type); - IFC4X3_RC3_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 188, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcCompressorType_type = new entity("IfcCompressorType", false, 200, IFC4X3_RC3_IfcFlowMovingDeviceType_type); - IFC4X3_RC3_IfcCondenserType_type = new entity("IfcCondenserType", false, 203, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 216, IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 219, IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 222, IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcConveyorSegmentType_type = new entity("IfcConveyorSegmentType", false, 237, IFC4X3_RC3_IfcFlowSegmentType_type); - IFC4X3_RC3_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 240, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 243, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcCourse_type = new entity("IfcCourse", false, 255, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcCovering_type = new entity("IfcCovering", false, 258, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 269, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcDamperType_type = new entity("IfcDamperType", false, 289, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcDeepFoundation_type = new entity("IfcDeepFoundation", false, 296, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 312, IFC4X3_RC3_IfcElementComponent_type); - IFC4X3_RC3_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 313, IFC4X3_RC3_IfcElementComponentType_type); - IFC4X3_RC3_IfcDistributionBoardType_type = new entity("IfcDistributionBoardType", false, 316, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 319, IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 323, IFC4X3_RC3_IfcDistributionElementType_type); - IFC4X3_RC3_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 324, IFC4X3_RC3_IfcElement_type); - IFC4X3_RC3_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 326, IFC4X3_RC3_IfcDistributionElement_type); - IFC4X3_RC3_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 328, IFC4X3_RC3_IfcPort_type); - IFC4X3_RC3_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 330, IFC4X3_RC3_IfcSystem_type); - IFC4X3_RC3_IfcDoor_type = new entity("IfcDoor", false, 338, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 343, IFC4X3_RC3_IfcDoor_type); - IFC4X3_RC3_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 354, IFC4X3_RC3_IfcFlowFittingType_type); - IFC4X3_RC3_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 357, IFC4X3_RC3_IfcFlowSegmentType_type); - IFC4X3_RC3_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 360, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC3_IfcEarthworksCut_type = new entity("IfcEarthworksCut", false, 364, IFC4X3_RC3_IfcFeatureElementSubtraction_type); - IFC4X3_RC3_IfcEarthworksElement_type = new entity("IfcEarthworksElement", false, 366, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcEarthworksFill_type = new entity("IfcEarthworksFill", false, 367, IFC4X3_RC3_IfcEarthworksElement_type); - IFC4X3_RC3_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 373, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 380, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 383, IFC4X3_RC3_IfcFlowStorageDeviceType_type); - IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type = new entity("IfcElectricFlowTreatmentDeviceType", false, 386, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC3_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 389, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 392, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - IFC4X3_RC3_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 396, IFC4X3_RC3_IfcFlowControllerType_type); - IFC4X3_RC3_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 411, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcEngine_type = new entity("IfcEngine", false, 414, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 417, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcEvaporator_type = new entity("IfcEvaporator", false, 420, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 435, IFC4X3_RC3_IfcExternalSpatialStructureElement_type); - IFC4X3_RC3_IfcFanType_type = new entity("IfcFanType", false, 454, IFC4X3_RC3_IfcFlowMovingDeviceType_type); - IFC4X3_RC3_IfcFilterType_type = new entity("IfcFilterType", false, 467, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC3_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 470, IFC4X3_RC3_IfcFlowTerminalType_type); - IFC4X3_RC3_IfcFlowController_type = new entity("IfcFlowController", false, 473, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 476, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 479, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 481, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 484, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 486, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 488, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 490, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 492, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcFooting_type = new entity("IfcFooting", false, 497, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcGeotechnicalAssembly_type = new entity("IfcGeotechnicalAssembly", true, 519, IFC4X3_RC3_IfcGeotechnicalElement_type); - IFC4X3_RC3_IfcGrid_type = new entity("IfcGrid", false, 525, IFC4X3_RC3_IfcPositioningElement_type); - IFC4X3_RC3_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 533, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcHumidifier_type = new entity("IfcHumidifier", false, 538, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcInterceptor_type = new entity("IfcInterceptor", false, 558, IFC4X3_RC3_IfcFlowTreatmentDevice_type); - IFC4X3_RC3_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 571, IFC4X3_RC3_IfcFlowFitting_type); - IFC4X3_RC3_IfcKerb_type = new entity("IfcKerb", false, 574, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcLamp_type = new entity("IfcLamp", false, 583, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcLightFixture_type = new entity("IfcLightFixture", false, 597, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", false, 612, IFC4X3_RC3_IfcPositioningElement_type); - IFC4X3_RC3_IfcLiquidTerminal_type = new entity("IfcLiquidTerminal", false, 616, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 665, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcMember_type = new entity("IfcMember", false, 668, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 669, IFC4X3_RC3_IfcMember_type); - IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type = new entity("IfcMobileTelecommunicationsAppliance", false, 675, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcMooringDevice_type = new entity("IfcMooringDevice", false, 691, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 694, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcNavigationElement_type = new entity("IfcNavigationElement", false, 698, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 725, IFC4X3_RC3_IfcBoundaryCurve_type); - IFC4X3_RC3_IfcOutlet_type = new entity("IfcOutlet", false, 726, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcPavement_type = new entity("IfcPavement", false, 733, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcPile_type = new entity("IfcPile", false, 750, IFC4X3_RC3_IfcDeepFoundation_type); - IFC4X3_RC3_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 754, IFC4X3_RC3_IfcFlowFitting_type); - IFC4X3_RC3_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 757, IFC4X3_RC3_IfcFlowSegment_type); - IFC4X3_RC3_IfcPlate_type = new entity("IfcPlate", false, 768, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 769, IFC4X3_RC3_IfcPlate_type); - IFC4X3_RC3_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 843, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 845, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcPump_type = new entity("IfcPump", false, 850, IFC4X3_RC3_IfcFlowMovingDevice_type); - IFC4X3_RC3_IfcRail_type = new entity("IfcRail", false, 861, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcRailing_type = new entity("IfcRailing", false, 862, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcRamp_type = new entity("IfcRamp", false, 870, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcRampFlight_type = new entity("IfcRampFlight", false, 871, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 877, IFC4X3_RC3_IfcBSplineCurveWithKnots_type); - IFC4X3_RC3_IfcReinforcedSoil_type = new entity("IfcReinforcedSoil", false, 891, IFC4X3_RC3_IfcEarthworksElement_type); - IFC4X3_RC3_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 895, IFC4X3_RC3_IfcReinforcingElement_type); - IFC4X3_RC3_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 898, IFC4X3_RC3_IfcReinforcingElementType_type); - IFC4X3_RC3_IfcRoof_type = new entity("IfcRoof", false, 975, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 984, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcSensorType_type = new entity("IfcSensorType", false, 1003, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 1006, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcSignal_type = new entity("IfcSignal", false, 1016, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcSlab_type = new entity("IfcSlab", false, 1031, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 1032, IFC4X3_RC3_IfcSlab_type); - IFC4X3_RC3_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 1033, IFC4X3_RC3_IfcSlab_type); - IFC4X3_RC3_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 1037, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 1050, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 1070, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcStair_type = new entity("IfcStair", false, 1073, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcStairFlight_type = new entity("IfcStairFlight", false, 1074, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 1083, IFC4X3_RC3_IfcSystem_type); - IFC4X3_RC3_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 1096, IFC4X3_RC3_IfcStructuralLoadGroup_type); - IFC4X3_RC3_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1109, IFC4X3_RC3_IfcStructuralSurfaceAction_type); - IFC4X3_RC3_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1151, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcTank_type = new entity("IfcTank", false, 1161, IFC4X3_RC3_IfcFlowStorageDevice_type); - IFC4X3_RC3_IfcTrackElement_type = new entity("IfcTrackElement", false, 1221, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcTransformer_type = new entity("IfcTransformer", false, 1224, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1241, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1250, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1252, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcValve_type = new entity("IfcValve", false, 1260, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcWall_type = new entity("IfcWall", false, 1283, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1284, IFC4X3_RC3_IfcWall_type); - IFC4X3_RC3_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1285, IFC4X3_RC3_IfcWall_type); - IFC4X3_RC3_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1291, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcWindow_type = new entity("IfcWindow", false, 1295, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1300, IFC4X3_RC3_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC3_IfcExternalSpatialElement_type); - items.push_back(IFC4X3_RC3_IfcSpace_type); - IFC4X3_RC3_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 1049, items); - } - IFC4X3_RC3_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X3_RC3_IfcLinearPositioningElement_type); - IFC4X3_RC3_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 64, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcBeam_type = new entity("IfcBeam", false, 72, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 73, IFC4X3_RC3_IfcBeam_type); - IFC4X3_RC3_IfcBearing_type = new entity("IfcBearing", false, 76, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcBoiler_type = new entity("IfcBoiler", false, 85, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcBorehole_type = new entity("IfcBorehole", false, 93, IFC4X3_RC3_IfcGeotechnicalAssembly_type); - IFC4X3_RC3_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 118, IFC4X3_RC3_IfcBuiltElement_type); - IFC4X3_RC3_IfcBurner_type = new entity("IfcBurner", false, 128, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 131, IFC4X3_RC3_IfcFlowFitting_type); - IFC4X3_RC3_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 134, IFC4X3_RC3_IfcFlowSegment_type); - IFC4X3_RC3_IfcCableFitting_type = new entity("IfcCableFitting", false, 137, IFC4X3_RC3_IfcFlowFitting_type); - IFC4X3_RC3_IfcCableSegment_type = new entity("IfcCableSegment", false, 140, IFC4X3_RC3_IfcFlowSegment_type); - IFC4X3_RC3_IfcCaissonFoundation_type = new entity("IfcCaissonFoundation", false, 143, IFC4X3_RC3_IfcDeepFoundation_type); - IFC4X3_RC3_IfcChiller_type = new entity("IfcChiller", false, 158, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcCoil_type = new entity("IfcCoil", false, 175, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 187, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcCompressor_type = new entity("IfcCompressor", false, 199, IFC4X3_RC3_IfcFlowMovingDevice_type); - IFC4X3_RC3_IfcCondenser_type = new entity("IfcCondenser", false, 202, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcControllerType_type = new entity("IfcControllerType", false, 232, IFC4X3_RC3_IfcDistributionControlElementType_type); - IFC4X3_RC3_IfcConveyorSegment_type = new entity("IfcConveyorSegment", false, 236, IFC4X3_RC3_IfcFlowSegment_type); - IFC4X3_RC3_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 239, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 242, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcDamper_type = new entity("IfcDamper", false, 288, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcDistributionBoard_type = new entity("IfcDistributionBoard", false, 315, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 318, IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 321, IFC4X3_RC3_IfcDistributionSystem_type); - IFC4X3_RC3_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 322, IFC4X3_RC3_IfcDistributionElement_type); - IFC4X3_RC3_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 353, IFC4X3_RC3_IfcFlowFitting_type); - IFC4X3_RC3_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 356, IFC4X3_RC3_IfcFlowSegment_type); - IFC4X3_RC3_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 359, IFC4X3_RC3_IfcFlowTreatmentDevice_type); - IFC4X3_RC3_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 372, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 379, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 382, IFC4X3_RC3_IfcFlowStorageDevice_type); - IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type = new entity("IfcElectricFlowTreatmentDevice", false, 385, IFC4X3_RC3_IfcFlowTreatmentDevice_type); - IFC4X3_RC3_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 388, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 391, IFC4X3_RC3_IfcEnergyConversionDevice_type); - IFC4X3_RC3_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 395, IFC4X3_RC3_IfcFlowController_type); - IFC4X3_RC3_IfcFan_type = new entity("IfcFan", false, 453, IFC4X3_RC3_IfcFlowMovingDevice_type); - IFC4X3_RC3_IfcFilter_type = new entity("IfcFilter", false, 466, IFC4X3_RC3_IfcFlowTreatmentDevice_type); - IFC4X3_RC3_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 469, IFC4X3_RC3_IfcFlowTerminal_type); - IFC4X3_RC3_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 478, IFC4X3_RC3_IfcDistributionControlElement_type); - IFC4X3_RC3_IfcGeomodel_type = new entity("IfcGeomodel", false, 517, IFC4X3_RC3_IfcGeotechnicalAssembly_type); - IFC4X3_RC3_IfcGeoslice_type = new entity("IfcGeoslice", false, 518, IFC4X3_RC3_IfcGeotechnicalAssembly_type); - IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 844, IFC4X3_RC3_IfcDistributionControlElement_type); - IFC4X3_RC3_IfcSensor_type = new entity("IfcSensor", false, 1002, IFC4X3_RC3_IfcDistributionControlElement_type); - IFC4X3_RC3_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1249, IFC4X3_RC3_IfcDistributionControlElement_type); - IFC4X3_RC3_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X3_RC3_IfcDistributionControlElement_type); - IFC4X3_RC3_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X3_RC3_IfcDistributionControlElement_type); - IFC4X3_RC3_IfcController_type = new entity("IfcController", false, 231, IFC4X3_RC3_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X3_RC3_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X3_RC3_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC3_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RailHeadDistance", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentCant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartCantLeft", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantLeft", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("StartCantRight", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantRight", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentCantSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("StartRadiusOfCurvature", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndRadiusOfCurvature", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("GravityCenterLineHeight", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentParameterSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DesignParameters", new named_type(IFC4X3_RC3_IfcAlignmentParameterSegment_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X3_RC3_IfcRatioMeasure_type), false)); - attributes.push_back(new attribute("EndGradient", new named_type(IFC4X3_RC3_IfcRatioMeasure_type), false)); - attributes.push_back(new attribute("RadiusOfCurvature", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAlignmentVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAnnotationTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X3_RC3_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X3_RC3_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X3_RC3_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X3_RC3_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X3_RC3_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC3_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC3_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC3_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X3_RC3_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X3_RC3_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X3_RC3_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcAxis2PlacementLinear_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X3_RC3_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X3_RC3_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC3_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X3_RC3_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X3_RC3_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X3_RC3_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC3_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBearingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBearing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBearingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBearingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X3_RC3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X3_RC3_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC3_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X3_RC3_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X3_RC3_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBorehole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X3_RC3_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X3_RC3_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X3_RC3_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X3_RC3_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X3_RC3_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBridgeTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBridge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X3_RC3_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuiltElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuiltElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBuiltSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBuiltSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCaissonFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCaissonFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC3_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X3_RC3_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ClothoidConstant", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcClothoid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X3_RC3_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X3_RC3_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X3_RC3_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X3_RC3_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X3_RC3_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X3_RC3_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X3_RC3_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X3_RC3_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X3_RC3_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC3_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X3_RC3_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X3_RC3_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X3_RC3_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConveyorSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcConveyorSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X3_RC3_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X3_RC3_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CosineTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC3_IfcReal_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCosine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCourseTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCourse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCourseTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCourseType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X3_RC3_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X3_RC3_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X3_RC3_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X3_RC3_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC3_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC3_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC3_IfcPlacement_type), false)); - attributes.push_back(new attribute("SegmentStart", new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC3_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X3_RC3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X3_RC3_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC3_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDeepFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDeepFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC3_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC3_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("StartDistance", new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type), true)); - attributes.push_back(new attribute("EndDistance", new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X3_RC3_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X3_RC3_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC3_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X3_RC3_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC3_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X3_RC3_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC3_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC3_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X3_RC3_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC3_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC3_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC3_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC3_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEarthworksCutTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEarthworksCut_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEarthworksElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEarthworksFillTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEarthworksFill_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X3_RC3_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X3_RC3_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC3_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC3_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X3_RC3_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC3_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC3_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X3_RC3_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X3_RC3_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFacilityPartTypeSelect_type), false)); - attributes.push_back(new attribute("UsageType", new named_type(IFC4X3_RC3_IfcFacilityUsageEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFacilityPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X3_RC3_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X3_RC3_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC3_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X3_RC3_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X3_RC3_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X3_RC3_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X3_RC3_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeomodel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeoslice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeotechnicalAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeotechnicalElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGeotechnicalStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_RC3_IfcPlacement_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGradientCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X3_RC3_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X3_RC3_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X3_RC3_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcImpactProtectionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcImpactProtectionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC3_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X3_RC3_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X3_RC3_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC3_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X3_RC3_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC3_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC3_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X3_RC3_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcKerb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcKerbType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X3_RC3_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC3_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X3_RC3_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC3_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X3_RC3_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X3_RC3_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X3_RC3_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X3_RC3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X3_RC3_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X3_RC3_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X3_RC3_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X3_RC3_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X3_RC3_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X3_RC3_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X3_RC3_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X3_RC3_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLinearElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC3_IfcAxis2PlacementLinear_type), false)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLiquidTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLiquidTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X3_RC3_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("ScaleY", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("ScaleZ", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X3_RC3_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X3_RC3_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMarineFacilityTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMarineFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X3_RC3_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC3_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X3_RC3_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC3_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X3_RC3_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X3_RC3_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X3_RC3_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X3_RC3_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X3_RC3_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC3_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X3_RC3_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X3_RC3_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X3_RC3_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X3_RC3_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X3_RC3_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC3_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC3_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X3_RC3_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X3_RC3_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X3_RC3_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X3_RC3_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC3_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X3_RC3_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMooringDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMooringDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMooringDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMooringDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X3_RC3_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC3_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcNavigationElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcNavigationElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcNavigationElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcNavigationElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X3_RC3_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X3_RC3_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X3_RC3_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HorizontalWidths", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("Widths", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type)), false)); - attributes.push_back(new attribute("Slopes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("Tags", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOpenCrossProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X3_RC3_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X3_RC3_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X3_RC3_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X3_RC3_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X3_RC3_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X3_RC3_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X3_RC3_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X3_RC3_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X3_RC3_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC3_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPavementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPavement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPavementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPavementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC3_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X3_RC3_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X3_RC3_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC3_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC3_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC3_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X3_RC3_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC3_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPlant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPointByDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcPlacement_type), false)); - attributes.push_back(new attribute("CoefficientsX", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true)); - attributes.push_back(new attribute("CoefficientsY", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true)); - attributes.push_back(new attribute("CoefficientsZ", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPolynomialCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC3_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X3_RC3_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X3_RC3_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X3_RC3_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X3_RC3_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X3_RC3_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X3_RC3_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X3_RC3_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X3_RC3_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X3_RC3_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X3_RC3_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X3_RC3_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X3_RC3_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X3_RC3_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4X3_RC3_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X3_RC3_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X3_RC3_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X3_RC3_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X3_RC3_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRailTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRail_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRailTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRailType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRailwayTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRailway_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X3_RC3_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X3_RC3_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcReferentTypeEnum_type), true)); - attributes.push_back(new attribute("RestartDistance", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X3_RC3_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcedSoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X3_RC3_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC3_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X3_RC3_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X3_RC3_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X3_RC3_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X3_RC3_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X3_RC3_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X3_RC3_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC3_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X3_RC3_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X3_RC3_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X3_RC3_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC3_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X3_RC3_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC3_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC3_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X3_RC3_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC3_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProfileDef", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelAssociatesProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X3_RC3_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X3_RC3_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC3_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC3_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC3_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X3_RC3_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X3_RC3_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC3_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X3_RC3_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X3_RC3_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X3_RC3_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC3_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X3_RC3_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC3_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC3_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X3_RC3_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC3_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X3_RC3_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X3_RC3_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X3_RC3_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X3_RC3_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X3_RC3_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC3_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC3_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC3_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPositioningElement", new named_type(IFC4X3_RC3_IfcPositioningElement_type), false)); - attributes.push_back(new attribute("RelatedProducts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProduct_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelPositions_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X3_RC3_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcSpatialReferenceSelect_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC3_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC3_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X3_RC3_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X3_RC3_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X3_RC3_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X3_RC3_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC3_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X3_RC3_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC3_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X3_RC3_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X3_RC3_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X3_RC3_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X3_RC3_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC3_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC3_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC3_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRoadTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X3_RC3_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X3_RC3_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X3_RC3_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC3_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X3_RC3_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X3_RC3_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X3_RC3_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X3_RC3_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcAxis2PlacementLinear_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X3_RC3_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSectionedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Transition", new named_type(IFC4X3_RC3_IfcTransitionCode_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_RC3_IfcPlacement_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSegmentedReferenceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X3_RC3_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X3_RC3_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSignTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSign_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSignTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSignType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSignalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSignal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSignalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSignalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X3_RC3_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X3_RC3_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SineTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X3_RC3_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSolidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X3_RC3_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X3_RC3_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X3_RC3_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X3_RC3_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC3_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X3_RC3_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X3_RC3_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X3_RC3_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X3_RC3_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X3_RC3_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X3_RC3_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X3_RC3_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X3_RC3_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X3_RC3_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X3_RC3_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X3_RC3_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X3_RC3_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X3_RC3_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X3_RC3_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X3_RC3_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X3_RC3_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X3_RC3_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X3_RC3_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X3_RC3_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPresentationStyle_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X3_RC3_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC3_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X3_RC3_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X3_RC3_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X3_RC3_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X3_RC3_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC3_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X3_RC3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X3_RC3_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X3_RC3_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X3_RC3_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X3_RC3_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X3_RC3_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X3_RC3_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC3_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC3_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X3_RC3_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC3_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC3_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X3_RC3_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC3_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X3_RC3_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X3_RC3_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X3_RC3_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X3_RC3_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTendonConduit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTendonConduitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X3_RC3_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X3_RC3_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X3_RC3_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X3_RC3_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X3_RC3_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X3_RC3_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X3_RC3_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X3_RC3_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X3_RC3_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X3_RC3_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X3_RC3_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X3_RC3_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X3_RC3_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X3_RC3_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X3_RC3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X3_RC3_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X3_RC3_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X3_RC3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X3_RC3_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X3_RC3_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X3_RC3_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC3_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("QubicTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC3_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC3_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC3_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC3_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC3_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC3_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC3_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC3_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTrackElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTrackElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTrackElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTrackElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTransportElementTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTransportElementTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC3_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC3_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC3_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC3_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC3_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC3_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC3_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC3_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X3_RC3_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X3_RC3_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC3_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVibrationDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVibrationDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("StartCurvature", new named_type(IFC4X3_RC3_IfcCurvatureMeasure_type), false)); - attributes.push_back(new attribute("EndCurvature", new named_type(IFC4X3_RC3_IfcCurvatureMeasure_type), false)); - attributes.push_back(new attribute("GravityCenterHeight", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVienneseBend_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVoidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWaterStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC3_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC3_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC3_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC3_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC3_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC3_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC3_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC3_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC3_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC3_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC3_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC3_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC3_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X3_RC3_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC3_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X3_RC3_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4X3_RC3_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4X3_RC3_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC3_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC3_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToActor_type, IFC4X3_RC3_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X3_RC3_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPerson_type, IFC4X3_RC3_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcOrganization_type, IFC4X3_RC3_IfcOrganization_type->attributes()[4])); - IFC4X3_RC3_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC3_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesApproval_type, IFC4X3_RC3_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceApprovalRelationship_type, IFC4X3_RC3_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcApprovalRelationship_type, IFC4X3_RC3_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcApprovalRelationship_type, IFC4X3_RC3_IfcApprovalRelationship_type->attributes()[0])); - IFC4X3_RC3_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesClassification_type, IFC4X3_RC3_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcClassificationReference_type, IFC4X3_RC3_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC3_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesClassification_type, IFC4X3_RC3_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcClassificationReference_type, IFC4X3_RC3_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC3_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceConstraintRelationship_type, IFC4X3_RC3_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X3_RC3_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByProperties_type, IFC4X3_RC3_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDeclares_type, IFC4X3_RC3_IfcRelDeclares_type->attributes()[0])); - IFC4X3_RC3_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToControl_type, IFC4X3_RC3_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X3_RC3_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcCoordinateOperation_type, IFC4X3_RC3_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC3_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelCoversSpaces_type, IFC4X3_RC3_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelCoversBldgElements_type, IFC4X3_RC3_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X3_RC3_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelFlowControlElements_type, IFC4X3_RC3_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X3_RC3_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsPortToElement_type, IFC4X3_RC3_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X3_RC3_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelFlowControlElements_type, IFC4X3_RC3_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X3_RC3_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesDocument_type, IFC4X3_RC3_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcDocumentReference_type, IFC4X3_RC3_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcDocumentInformationRelationship_type, IFC4X3_RC3_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcDocumentInformationRelationship_type, IFC4X3_RC3_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X3_RC3_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesDocument_type, IFC4X3_RC3_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X3_RC3_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelFillsElement_type, IFC4X3_RC3_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsElements_type, IFC4X3_RC3_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelInterferesElements_type, IFC4X3_RC3_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelInterferesElements_type, IFC4X3_RC3_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelProjectsElement_type, IFC4X3_RC3_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelVoidsElement_type, IFC4X3_RC3_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary_type, IFC4X3_RC3_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsElements_type, IFC4X3_RC3_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelCoversBldgElements_type, IFC4X3_RC3_IfcRelCoversBldgElements_type->attributes()[0])); - IFC4X3_RC3_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X3_RC3_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary_type, IFC4X3_RC3_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC3_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcTextureMap_type, IFC4X3_RC3_IfcTextureMap_type->attributes()[1])); - IFC4X3_RC3_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcRelProjectsElement_type, IFC4X3_RC3_IfcRelProjectsElement_type->attributes()[1])); - IFC4X3_RC3_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcRelVoidsElement_type, IFC4X3_RC3_IfcRelVoidsElement_type->attributes()[1])); - IFC4X3_RC3_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcGeometricRepresentationSubContext_type, IFC4X3_RC3_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcCoordinateOperation_type, IFC4X3_RC3_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC3_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcGrid_type, IFC4X3_RC3_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcGrid_type, IFC4X3_RC3_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcGrid_type, IFC4X3_RC3_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcVirtualGridIntersection_type, IFC4X3_RC3_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X3_RC3_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToGroup_type, IFC4X3_RC3_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4X3_RC3_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcPolygonalFaceSet_type, IFC4X3_RC3_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4X3_RC3_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesLibrary_type, IFC4X3_RC3_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcLibraryReference_type, IFC4X3_RC3_IfcLibraryReference_type->attributes()[2])); - IFC4X3_RC3_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesLibrary_type, IFC4X3_RC3_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X3_RC3_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcMaterialRelationship_type, IFC4X3_RC3_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcMaterialRelationship_type, IFC4X3_RC3_IfcMaterialRelationship_type->attributes()[0])); - IFC4X3_RC3_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcMaterialConstituentSet_type, IFC4X3_RC3_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X3_RC3_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesMaterial_type, IFC4X3_RC3_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcMaterialProperties_type, IFC4X3_RC3_IfcMaterialProperties_type->attributes()[0])); - IFC4X3_RC3_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcMaterialLayerSet_type, IFC4X3_RC3_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X3_RC3_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcMaterialProfileSet_type, IFC4X3_RC3_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X3_RC3_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcRelAssociatesMaterial_type, IFC4X3_RC3_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X3_RC3_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDefinesByObject_type, IFC4X3_RC3_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByObject_type, IFC4X3_RC3_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDefinesByType_type, IFC4X3_RC3_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByProperties_type, IFC4X3_RC3_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X3_RC3_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssigns_type, IFC4X3_RC3_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelNests_type, IFC4X3_RC3_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelNests_type, IFC4X3_RC3_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDeclares_type, IFC4X3_RC3_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAggregates_type, IFC4X3_RC3_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelAggregates_type, IFC4X3_RC3_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociates_type, IFC4X3_RC3_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC3_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcProduct_type, IFC4X3_RC3_IfcProduct_type->attributes()[0])); - IFC4X3_RC3_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelFillsElement_type, IFC4X3_RC3_IfcRelFillsElement_type->attributes()[0])); - IFC4X3_RC3_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcOrganizationRelationship_type, IFC4X3_RC3_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcOrganizationRelationship_type, IFC4X3_RC3_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPersonAndOrganization_type, IFC4X3_RC3_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X3_RC3_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPersonAndOrganization_type, IFC4X3_RC3_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X3_RC3_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcPhysicalComplexQuantity_type, IFC4X3_RC3_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X3_RC3_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsPortToElement_type, IFC4X3_RC3_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsPorts_type, IFC4X3_RC3_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsPorts_type, IFC4X3_RC3_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X3_RC3_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Positions", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelPositions_type, IFC4X3_RC3_IfcRelPositions_type->attributes()[0])); - IFC4X3_RC3_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSequence_type, IFC4X3_RC3_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSequence_type, IFC4X3_RC3_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProcess_type, IFC4X3_RC3_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC3_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProduct_type, IFC4X3_RC3_IfcRelAssignsToProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PositionedRelativeTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelPositions_type, IFC4X3_RC3_IfcRelPositions_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC3_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcProduct_type, IFC4X3_RC3_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcShapeAspect_type, IFC4X3_RC3_IfcShapeAspect_type->attributes()[4])); - IFC4X3_RC3_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcProfileProperties_type, IFC4X3_RC3_IfcProfileProperties_type->attributes()[0])); - IFC4X3_RC3_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertySet_type, IFC4X3_RC3_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertyDependencyRelationship_type, IFC4X3_RC3_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertyDependencyRelationship_type, IFC4X3_RC3_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcComplexProperty_type, IFC4X3_RC3_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceConstraintRelationship_type, IFC4X3_RC3_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceApprovalRelationship_type, IFC4X3_RC3_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X3_RC3_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDeclares_type, IFC4X3_RC3_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociates_type, IFC4X3_RC3_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC3_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcTypeObject_type, IFC4X3_RC3_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByTemplate_type, IFC4X3_RC3_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByProperties_type, IFC4X3_RC3_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X3_RC3_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByTemplate_type, IFC4X3_RC3_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X3_RC3_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcComplexPropertyTemplate_type, IFC4X3_RC3_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertySetTemplate_type, IFC4X3_RC3_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X3_RC3_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRepresentationMap_type, IFC4X3_RC3_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPresentationLayerAssignment_type, IFC4X3_RC3_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcProductRepresentation_type, IFC4X3_RC3_IfcProductRepresentation_type->attributes()[2])); - IFC4X3_RC3_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRepresentation_type, IFC4X3_RC3_IfcRepresentation_type->attributes()[0])); - IFC4X3_RC3_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcPresentationLayerAssignment_type, IFC4X3_RC3_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcStyledItem_type, IFC4X3_RC3_IfcStyledItem_type->attributes()[0])); - IFC4X3_RC3_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcShapeAspect_type, IFC4X3_RC3_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcMappedItem_type, IFC4X3_RC3_IfcMappedItem_type->attributes()[0])); - IFC4X3_RC3_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToResource_type, IFC4X3_RC3_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC3_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcCompositeCurve_type, IFC4X3_RC3_IfcCompositeCurve_type->attributes()[0])); - IFC4X3_RC3_IfcSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcShapeAspect_type, IFC4X3_RC3_IfcShapeAspect_type->attributes()[0])); - IFC4X3_RC3_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelCoversSpaces_type, IFC4X3_RC3_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary_type, IFC4X3_RC3_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC3_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelServicesBuildings_type, IFC4X3_RC3_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4X3_RC3_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X3_RC3_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcRelConnectsStructuralMember_type, IFC4X3_RC3_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X3_RC3_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X3_RC3_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcStructuralResultGroup_type, IFC4X3_RC3_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcStructuralAnalysisModel_type, IFC4X3_RC3_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X3_RC3_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsStructuralMember_type, IFC4X3_RC3_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X3_RC3_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcStructuralAnalysisModel_type, IFC4X3_RC3_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X3_RC3_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcTextureCoordinate_type, IFC4X3_RC3_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcSurfaceStyleWithTextures_type, IFC4X3_RC3_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X3_RC3_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelServicesBuildings_type, IFC4X3_RC3_IfcRelServicesBuildings_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ServicesFacilities", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC3_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcIndexedColourMap_type, IFC4X3_RC3_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcIndexedTextureMap_type, IFC4X3_RC3_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X3_RC3_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC3_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDefinesByType_type, IFC4X3_RC3_IfcRelDefinesByType_type->attributes()[1])); - IFC4X3_RC3_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProcess_type, IFC4X3_RC3_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC3_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProduct_type, IFC4X3_RC3_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X3_RC3_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToResource_type, IFC4X3_RC3_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC3_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC3_IfcActionRequest_type);defs.push_back(IFC4X3_RC3_IfcCostItem_type);defs.push_back(IFC4X3_RC3_IfcCostSchedule_type);defs.push_back(IFC4X3_RC3_IfcPerformanceHistory_type);defs.push_back(IFC4X3_RC3_IfcPermit_type);defs.push_back(IFC4X3_RC3_IfcProjectOrder_type);defs.push_back(IFC4X3_RC3_IfcWorkCalendar_type);defs.push_back(IFC4X3_RC3_IfcWorkControl_type); - IFC4X3_RC3_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcActor_type);defs.push_back(IFC4X3_RC3_IfcControl_type);defs.push_back(IFC4X3_RC3_IfcGroup_type);defs.push_back(IFC4X3_RC3_IfcProcess_type);defs.push_back(IFC4X3_RC3_IfcProduct_type);defs.push_back(IFC4X3_RC3_IfcResource_type); - IFC4X3_RC3_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC3_IfcActuator_type);defs.push_back(IFC4X3_RC3_IfcAlarm_type);defs.push_back(IFC4X3_RC3_IfcController_type);defs.push_back(IFC4X3_RC3_IfcFlowInstrument_type);defs.push_back(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X3_RC3_IfcSensor_type);defs.push_back(IFC4X3_RC3_IfcUnitaryControlElement_type); - IFC4X3_RC3_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC3_IfcActuatorType_type);defs.push_back(IFC4X3_RC3_IfcAlarmType_type);defs.push_back(IFC4X3_RC3_IfcControllerType_type);defs.push_back(IFC4X3_RC3_IfcFlowInstrumentType_type);defs.push_back(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X3_RC3_IfcSensorType_type);defs.push_back(IFC4X3_RC3_IfcUnitaryControlElementType_type); - IFC4X3_RC3_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcAdvancedBrep_type);defs.push_back(IFC4X3_RC3_IfcFacetedBrep_type); - IFC4X3_RC3_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcAdvancedBrepWithVoids_type); - IFC4X3_RC3_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcAdvancedFace_type); - IFC4X3_RC3_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC3_IfcAirTerminal_type);defs.push_back(IFC4X3_RC3_IfcAudioVisualAppliance_type);defs.push_back(IFC4X3_RC3_IfcCommunicationsAppliance_type);defs.push_back(IFC4X3_RC3_IfcElectricAppliance_type);defs.push_back(IFC4X3_RC3_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X3_RC3_IfcLamp_type);defs.push_back(IFC4X3_RC3_IfcLightFixture_type);defs.push_back(IFC4X3_RC3_IfcLiquidTerminal_type);defs.push_back(IFC4X3_RC3_IfcMedicalDevice_type);defs.push_back(IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type);defs.push_back(IFC4X3_RC3_IfcOutlet_type);defs.push_back(IFC4X3_RC3_IfcSanitaryTerminal_type);defs.push_back(IFC4X3_RC3_IfcSignal_type);defs.push_back(IFC4X3_RC3_IfcSpaceHeater_type);defs.push_back(IFC4X3_RC3_IfcStackTerminal_type);defs.push_back(IFC4X3_RC3_IfcWasteTerminal_type); - IFC4X3_RC3_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcAirTerminalBox_type);defs.push_back(IFC4X3_RC3_IfcDamper_type);defs.push_back(IFC4X3_RC3_IfcDistributionBoard_type);defs.push_back(IFC4X3_RC3_IfcElectricDistributionBoard_type);defs.push_back(IFC4X3_RC3_IfcElectricTimeControl_type);defs.push_back(IFC4X3_RC3_IfcFlowMeter_type);defs.push_back(IFC4X3_RC3_IfcProtectiveDevice_type);defs.push_back(IFC4X3_RC3_IfcSwitchingDevice_type);defs.push_back(IFC4X3_RC3_IfcValve_type); - IFC4X3_RC3_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcAirTerminalBoxType_type);defs.push_back(IFC4X3_RC3_IfcDamperType_type);defs.push_back(IFC4X3_RC3_IfcDistributionBoardType_type);defs.push_back(IFC4X3_RC3_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X3_RC3_IfcElectricTimeControlType_type);defs.push_back(IFC4X3_RC3_IfcFlowMeterType_type);defs.push_back(IFC4X3_RC3_IfcProtectiveDeviceType_type);defs.push_back(IFC4X3_RC3_IfcSwitchingDeviceType_type);defs.push_back(IFC4X3_RC3_IfcValveType_type); - IFC4X3_RC3_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC3_IfcAirTerminalType_type);defs.push_back(IFC4X3_RC3_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X3_RC3_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X3_RC3_IfcElectricApplianceType_type);defs.push_back(IFC4X3_RC3_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X3_RC3_IfcLampType_type);defs.push_back(IFC4X3_RC3_IfcLightFixtureType_type);defs.push_back(IFC4X3_RC3_IfcLiquidTerminalType_type);defs.push_back(IFC4X3_RC3_IfcMedicalDeviceType_type);defs.push_back(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type);defs.push_back(IFC4X3_RC3_IfcOutletType_type);defs.push_back(IFC4X3_RC3_IfcSanitaryTerminalType_type);defs.push_back(IFC4X3_RC3_IfcSignalType_type);defs.push_back(IFC4X3_RC3_IfcSpaceHeaterType_type);defs.push_back(IFC4X3_RC3_IfcStackTerminalType_type);defs.push_back(IFC4X3_RC3_IfcWasteTerminalType_type); - IFC4X3_RC3_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC3_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X3_RC3_IfcBoiler_type);defs.push_back(IFC4X3_RC3_IfcBurner_type);defs.push_back(IFC4X3_RC3_IfcChiller_type);defs.push_back(IFC4X3_RC3_IfcCoil_type);defs.push_back(IFC4X3_RC3_IfcCondenser_type);defs.push_back(IFC4X3_RC3_IfcCooledBeam_type);defs.push_back(IFC4X3_RC3_IfcCoolingTower_type);defs.push_back(IFC4X3_RC3_IfcElectricGenerator_type);defs.push_back(IFC4X3_RC3_IfcElectricMotor_type);defs.push_back(IFC4X3_RC3_IfcEngine_type);defs.push_back(IFC4X3_RC3_IfcEvaporativeCooler_type);defs.push_back(IFC4X3_RC3_IfcEvaporator_type);defs.push_back(IFC4X3_RC3_IfcHeatExchanger_type);defs.push_back(IFC4X3_RC3_IfcHumidifier_type);defs.push_back(IFC4X3_RC3_IfcMotorConnection_type);defs.push_back(IFC4X3_RC3_IfcSolarDevice_type);defs.push_back(IFC4X3_RC3_IfcTransformer_type);defs.push_back(IFC4X3_RC3_IfcTubeBundle_type);defs.push_back(IFC4X3_RC3_IfcUnitaryEquipment_type); - IFC4X3_RC3_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X3_RC3_IfcBoilerType_type);defs.push_back(IFC4X3_RC3_IfcBurnerType_type);defs.push_back(IFC4X3_RC3_IfcChillerType_type);defs.push_back(IFC4X3_RC3_IfcCoilType_type);defs.push_back(IFC4X3_RC3_IfcCondenserType_type);defs.push_back(IFC4X3_RC3_IfcCooledBeamType_type);defs.push_back(IFC4X3_RC3_IfcCoolingTowerType_type);defs.push_back(IFC4X3_RC3_IfcElectricGeneratorType_type);defs.push_back(IFC4X3_RC3_IfcElectricMotorType_type);defs.push_back(IFC4X3_RC3_IfcEngineType_type);defs.push_back(IFC4X3_RC3_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X3_RC3_IfcEvaporatorType_type);defs.push_back(IFC4X3_RC3_IfcHeatExchangerType_type);defs.push_back(IFC4X3_RC3_IfcHumidifierType_type);defs.push_back(IFC4X3_RC3_IfcMotorConnectionType_type);defs.push_back(IFC4X3_RC3_IfcSolarDeviceType_type);defs.push_back(IFC4X3_RC3_IfcTransformerType_type);defs.push_back(IFC4X3_RC3_IfcTubeBundleType_type);defs.push_back(IFC4X3_RC3_IfcUnitaryEquipmentType_type); - IFC4X3_RC3_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcAlignment_type); - IFC4X3_RC3_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcAlignmentCant_type);defs.push_back(IFC4X3_RC3_IfcAlignmentHorizontal_type);defs.push_back(IFC4X3_RC3_IfcAlignmentSegment_type);defs.push_back(IFC4X3_RC3_IfcAlignmentVertical_type); - IFC4X3_RC3_IfcLinearElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcAlignmentCantSegment_type);defs.push_back(IFC4X3_RC3_IfcAlignmentHorizontalSegment_type);defs.push_back(IFC4X3_RC3_IfcAlignmentVerticalSegment_type); - IFC4X3_RC3_IfcAlignmentParameterSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcAnnotation_type);defs.push_back(IFC4X3_RC3_IfcElement_type);defs.push_back(IFC4X3_RC3_IfcLinearElement_type);defs.push_back(IFC4X3_RC3_IfcPort_type);defs.push_back(IFC4X3_RC3_IfcPositioningElement_type);defs.push_back(IFC4X3_RC3_IfcProxy_type);defs.push_back(IFC4X3_RC3_IfcSpatialElement_type);defs.push_back(IFC4X3_RC3_IfcStructuralActivity_type);defs.push_back(IFC4X3_RC3_IfcStructuralItem_type); - IFC4X3_RC3_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(25); - defs.push_back(IFC4X3_RC3_IfcAnnotationFillArea_type);defs.push_back(IFC4X3_RC3_IfcBooleanResult_type);defs.push_back(IFC4X3_RC3_IfcBoundingBox_type);defs.push_back(IFC4X3_RC3_IfcCartesianPointList_type);defs.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X3_RC3_IfcCsgPrimitive3D_type);defs.push_back(IFC4X3_RC3_IfcCurve_type);defs.push_back(IFC4X3_RC3_IfcDirection_type);defs.push_back(IFC4X3_RC3_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X3_RC3_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X3_RC3_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X3_RC3_IfcGeometricSet_type);defs.push_back(IFC4X3_RC3_IfcHalfSpaceSolid_type);defs.push_back(IFC4X3_RC3_IfcLightSource_type);defs.push_back(IFC4X3_RC3_IfcPlacement_type);defs.push_back(IFC4X3_RC3_IfcPlanarExtent_type);defs.push_back(IFC4X3_RC3_IfcPoint_type);defs.push_back(IFC4X3_RC3_IfcSectionedSpine_type);defs.push_back(IFC4X3_RC3_IfcSegment_type);defs.push_back(IFC4X3_RC3_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X3_RC3_IfcSolidModel_type);defs.push_back(IFC4X3_RC3_IfcSurface_type);defs.push_back(IFC4X3_RC3_IfcTessellatedItem_type);defs.push_back(IFC4X3_RC3_IfcTextLiteral_type);defs.push_back(IFC4X3_RC3_IfcVector_type); - IFC4X3_RC3_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcApprovalRelationship_type);defs.push_back(IFC4X3_RC3_IfcCurrencyRelationship_type);defs.push_back(IFC4X3_RC3_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X3_RC3_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X3_RC3_IfcMaterialRelationship_type);defs.push_back(IFC4X3_RC3_IfcOrganizationRelationship_type);defs.push_back(IFC4X3_RC3_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X3_RC3_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X3_RC3_IfcResourceConstraintRelationship_type); - IFC4X3_RC3_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X3_RC3_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X3_RC3_IfcCompositeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcDerivedProfileDef_type);defs.push_back(IFC4X3_RC3_IfcOpenCrossProfileDef_type);defs.push_back(IFC4X3_RC3_IfcParameterizedProfileDef_type); - IFC4X3_RC3_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type); - IFC4X3_RC3_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcAsset_type);defs.push_back(IFC4X3_RC3_IfcInventory_type);defs.push_back(IFC4X3_RC3_IfcStructuralLoadGroup_type);defs.push_back(IFC4X3_RC3_IfcStructuralResultGroup_type);defs.push_back(IFC4X3_RC3_IfcSystem_type); - IFC4X3_RC3_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcCShapeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcCircleProfileDef_type);defs.push_back(IFC4X3_RC3_IfcEllipseProfileDef_type);defs.push_back(IFC4X3_RC3_IfcIShapeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcLShapeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcRectangleProfileDef_type);defs.push_back(IFC4X3_RC3_IfcTShapeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X3_RC3_IfcUShapeProfileDef_type);defs.push_back(IFC4X3_RC3_IfcZShapeProfileDef_type); - IFC4X3_RC3_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcAxis1Placement_type);defs.push_back(IFC4X3_RC3_IfcAxis2Placement2D_type);defs.push_back(IFC4X3_RC3_IfcAxis2Placement3D_type);defs.push_back(IFC4X3_RC3_IfcAxis2PlacementLinear_type); - IFC4X3_RC3_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcBSplineCurve_type);defs.push_back(IFC4X3_RC3_IfcCompositeCurve_type);defs.push_back(IFC4X3_RC3_IfcIndexedPolyCurve_type);defs.push_back(IFC4X3_RC3_IfcPolyline_type);defs.push_back(IFC4X3_RC3_IfcTrimmedCurve_type);defs.push_back(IFC4X3_RC3_IfcVienneseBend_type); - IFC4X3_RC3_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcBSplineCurveWithKnots_type); - IFC4X3_RC3_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcBSplineSurface_type);defs.push_back(IFC4X3_RC3_IfcCurveBoundedPlane_type);defs.push_back(IFC4X3_RC3_IfcCurveBoundedSurface_type);defs.push_back(IFC4X3_RC3_IfcRectangularTrimmedSurface_type); - IFC4X3_RC3_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC3_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X3_RC3_IfcBeam_type);defs.push_back(IFC4X3_RC3_IfcBearing_type);defs.push_back(IFC4X3_RC3_IfcBuildingElementProxy_type);defs.push_back(IFC4X3_RC3_IfcChimney_type);defs.push_back(IFC4X3_RC3_IfcColumn_type);defs.push_back(IFC4X3_RC3_IfcCourse_type);defs.push_back(IFC4X3_RC3_IfcCovering_type);defs.push_back(IFC4X3_RC3_IfcCurtainWall_type);defs.push_back(IFC4X3_RC3_IfcDeepFoundation_type);defs.push_back(IFC4X3_RC3_IfcDoor_type);defs.push_back(IFC4X3_RC3_IfcEarthworksElement_type);defs.push_back(IFC4X3_RC3_IfcFooting_type);defs.push_back(IFC4X3_RC3_IfcKerb_type);defs.push_back(IFC4X3_RC3_IfcMember_type);defs.push_back(IFC4X3_RC3_IfcMooringDevice_type);defs.push_back(IFC4X3_RC3_IfcNavigationElement_type);defs.push_back(IFC4X3_RC3_IfcPavement_type);defs.push_back(IFC4X3_RC3_IfcPlate_type);defs.push_back(IFC4X3_RC3_IfcRail_type);defs.push_back(IFC4X3_RC3_IfcRailing_type);defs.push_back(IFC4X3_RC3_IfcRamp_type);defs.push_back(IFC4X3_RC3_IfcRampFlight_type);defs.push_back(IFC4X3_RC3_IfcRoof_type);defs.push_back(IFC4X3_RC3_IfcShadingDevice_type);defs.push_back(IFC4X3_RC3_IfcSlab_type);defs.push_back(IFC4X3_RC3_IfcStair_type);defs.push_back(IFC4X3_RC3_IfcStairFlight_type);defs.push_back(IFC4X3_RC3_IfcTrackElement_type);defs.push_back(IFC4X3_RC3_IfcWall_type);defs.push_back(IFC4X3_RC3_IfcWindow_type); - IFC4X3_RC3_IfcBuiltElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcBeamStandardCase_type); - IFC4X3_RC3_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(29); - defs.push_back(IFC4X3_RC3_IfcBeamType_type);defs.push_back(IFC4X3_RC3_IfcBearingType_type);defs.push_back(IFC4X3_RC3_IfcBuildingElementProxyType_type);defs.push_back(IFC4X3_RC3_IfcChimneyType_type);defs.push_back(IFC4X3_RC3_IfcColumnType_type);defs.push_back(IFC4X3_RC3_IfcCourseType_type);defs.push_back(IFC4X3_RC3_IfcCoveringType_type);defs.push_back(IFC4X3_RC3_IfcCurtainWallType_type);defs.push_back(IFC4X3_RC3_IfcDeepFoundationType_type);defs.push_back(IFC4X3_RC3_IfcDoorType_type);defs.push_back(IFC4X3_RC3_IfcFootingType_type);defs.push_back(IFC4X3_RC3_IfcKerbType_type);defs.push_back(IFC4X3_RC3_IfcMemberType_type);defs.push_back(IFC4X3_RC3_IfcMooringDeviceType_type);defs.push_back(IFC4X3_RC3_IfcNavigationElementType_type);defs.push_back(IFC4X3_RC3_IfcPavementType_type);defs.push_back(IFC4X3_RC3_IfcPlateType_type);defs.push_back(IFC4X3_RC3_IfcRailType_type);defs.push_back(IFC4X3_RC3_IfcRailingType_type);defs.push_back(IFC4X3_RC3_IfcRampFlightType_type);defs.push_back(IFC4X3_RC3_IfcRampType_type);defs.push_back(IFC4X3_RC3_IfcRoofType_type);defs.push_back(IFC4X3_RC3_IfcShadingDeviceType_type);defs.push_back(IFC4X3_RC3_IfcSlabType_type);defs.push_back(IFC4X3_RC3_IfcStairFlightType_type);defs.push_back(IFC4X3_RC3_IfcStairType_type);defs.push_back(IFC4X3_RC3_IfcTrackElementType_type);defs.push_back(IFC4X3_RC3_IfcWallType_type);defs.push_back(IFC4X3_RC3_IfcWindowType_type); - IFC4X3_RC3_IfcBuiltElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcBlobTexture_type);defs.push_back(IFC4X3_RC3_IfcImageTexture_type);defs.push_back(IFC4X3_RC3_IfcPixelTexture_type); - IFC4X3_RC3_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcBlock_type);defs.push_back(IFC4X3_RC3_IfcRectangularPyramid_type);defs.push_back(IFC4X3_RC3_IfcRightCircularCone_type);defs.push_back(IFC4X3_RC3_IfcRightCircularCylinder_type);defs.push_back(IFC4X3_RC3_IfcSphere_type); - IFC4X3_RC3_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcBooleanClippingResult_type); - IFC4X3_RC3_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcBorehole_type);defs.push_back(IFC4X3_RC3_IfcGeomodel_type);defs.push_back(IFC4X3_RC3_IfcGeoslice_type); - IFC4X3_RC3_IfcGeotechnicalAssembly_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcBoundaryCurve_type); - IFC4X3_RC3_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X3_RC3_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X3_RC3_IfcBoundaryNodeCondition_type); - IFC4X3_RC3_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type); - IFC4X3_RC3_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC3_IfcBoundedCurve_type);defs.push_back(IFC4X3_RC3_IfcConic_type);defs.push_back(IFC4X3_RC3_IfcLine_type);defs.push_back(IFC4X3_RC3_IfcOffsetCurve_type);defs.push_back(IFC4X3_RC3_IfcPcurve_type);defs.push_back(IFC4X3_RC3_IfcPolynomialCurve_type);defs.push_back(IFC4X3_RC3_IfcSpiral_type);defs.push_back(IFC4X3_RC3_IfcSurfaceCurve_type); - IFC4X3_RC3_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcBoundedSurface_type);defs.push_back(IFC4X3_RC3_IfcElementarySurface_type);defs.push_back(IFC4X3_RC3_IfcSectionedSurface_type);defs.push_back(IFC4X3_RC3_IfcSweptSurface_type); - IFC4X3_RC3_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcBoxedHalfSpace_type);defs.push_back(IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type); - IFC4X3_RC3_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcBridge_type);defs.push_back(IFC4X3_RC3_IfcBuilding_type);defs.push_back(IFC4X3_RC3_IfcMarineFacility_type);defs.push_back(IFC4X3_RC3_IfcRailway_type);defs.push_back(IFC4X3_RC3_IfcRoad_type); - IFC4X3_RC3_IfcFacility_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcBuildingElementPart_type);defs.push_back(IFC4X3_RC3_IfcDiscreteAccessory_type);defs.push_back(IFC4X3_RC3_IfcFastener_type);defs.push_back(IFC4X3_RC3_IfcImpactProtectionDevice_type);defs.push_back(IFC4X3_RC3_IfcMechanicalFastener_type);defs.push_back(IFC4X3_RC3_IfcReinforcingElement_type);defs.push_back(IFC4X3_RC3_IfcSign_type);defs.push_back(IFC4X3_RC3_IfcVibrationDamper_type);defs.push_back(IFC4X3_RC3_IfcVibrationIsolator_type); - IFC4X3_RC3_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcBuildingElementPartType_type);defs.push_back(IFC4X3_RC3_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X3_RC3_IfcFastenerType_type);defs.push_back(IFC4X3_RC3_IfcImpactProtectionDeviceType_type);defs.push_back(IFC4X3_RC3_IfcMechanicalFastenerType_type);defs.push_back(IFC4X3_RC3_IfcReinforcingElementType_type);defs.push_back(IFC4X3_RC3_IfcSignType_type);defs.push_back(IFC4X3_RC3_IfcVibrationDamperType_type);defs.push_back(IFC4X3_RC3_IfcVibrationIsolatorType_type); - IFC4X3_RC3_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcBuildingStorey_type);defs.push_back(IFC4X3_RC3_IfcFacility_type);defs.push_back(IFC4X3_RC3_IfcFacilityPart_type);defs.push_back(IFC4X3_RC3_IfcSite_type);defs.push_back(IFC4X3_RC3_IfcSpace_type); - IFC4X3_RC3_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcBuildingSystem_type);defs.push_back(IFC4X3_RC3_IfcBuiltSystem_type);defs.push_back(IFC4X3_RC3_IfcDistributionSystem_type);defs.push_back(IFC4X3_RC3_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X3_RC3_IfcZone_type); - IFC4X3_RC3_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC3_IfcBuiltElement_type);defs.push_back(IFC4X3_RC3_IfcCivilElement_type);defs.push_back(IFC4X3_RC3_IfcDistributionElement_type);defs.push_back(IFC4X3_RC3_IfcElementAssembly_type);defs.push_back(IFC4X3_RC3_IfcElementComponent_type);defs.push_back(IFC4X3_RC3_IfcFeatureElement_type);defs.push_back(IFC4X3_RC3_IfcFurnishingElement_type);defs.push_back(IFC4X3_RC3_IfcGeographicElement_type);defs.push_back(IFC4X3_RC3_IfcGeotechnicalElement_type);defs.push_back(IFC4X3_RC3_IfcTransportElement_type);defs.push_back(IFC4X3_RC3_IfcVirtualElement_type); - IFC4X3_RC3_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC3_IfcBuiltElementType_type);defs.push_back(IFC4X3_RC3_IfcCivilElementType_type);defs.push_back(IFC4X3_RC3_IfcDistributionElementType_type);defs.push_back(IFC4X3_RC3_IfcElementAssemblyType_type);defs.push_back(IFC4X3_RC3_IfcElementComponentType_type);defs.push_back(IFC4X3_RC3_IfcFurnishingElementType_type);defs.push_back(IFC4X3_RC3_IfcGeographicElementType_type);defs.push_back(IFC4X3_RC3_IfcTransportElementType_type); - IFC4X3_RC3_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcCableCarrierFitting_type);defs.push_back(IFC4X3_RC3_IfcCableFitting_type);defs.push_back(IFC4X3_RC3_IfcDuctFitting_type);defs.push_back(IFC4X3_RC3_IfcJunctionBox_type);defs.push_back(IFC4X3_RC3_IfcPipeFitting_type); - IFC4X3_RC3_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcCableCarrierFittingType_type);defs.push_back(IFC4X3_RC3_IfcCableFittingType_type);defs.push_back(IFC4X3_RC3_IfcDuctFittingType_type);defs.push_back(IFC4X3_RC3_IfcJunctionBoxType_type);defs.push_back(IFC4X3_RC3_IfcPipeFittingType_type); - IFC4X3_RC3_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcCableCarrierSegment_type);defs.push_back(IFC4X3_RC3_IfcCableSegment_type);defs.push_back(IFC4X3_RC3_IfcConveyorSegment_type);defs.push_back(IFC4X3_RC3_IfcDuctSegment_type);defs.push_back(IFC4X3_RC3_IfcPipeSegment_type); - IFC4X3_RC3_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X3_RC3_IfcCableSegmentType_type);defs.push_back(IFC4X3_RC3_IfcConveyorSegmentType_type);defs.push_back(IFC4X3_RC3_IfcDuctSegmentType_type);defs.push_back(IFC4X3_RC3_IfcPipeSegmentType_type); - IFC4X3_RC3_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcCaissonFoundation_type);defs.push_back(IFC4X3_RC3_IfcPile_type); - IFC4X3_RC3_IfcDeepFoundation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcCaissonFoundationType_type);defs.push_back(IFC4X3_RC3_IfcPileType_type); - IFC4X3_RC3_IfcDeepFoundationType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcCartesianPoint_type);defs.push_back(IFC4X3_RC3_IfcPointByDistanceExpression_type);defs.push_back(IFC4X3_RC3_IfcPointOnCurve_type);defs.push_back(IFC4X3_RC3_IfcPointOnSurface_type); - IFC4X3_RC3_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcCartesianPointList2D_type);defs.push_back(IFC4X3_RC3_IfcCartesianPointList3D_type); - IFC4X3_RC3_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC3_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X3_RC3_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X3_RC3_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcCenterLineProfileDef_type); - IFC4X3_RC3_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcCircle_type);defs.push_back(IFC4X3_RC3_IfcEllipse_type); - IFC4X3_RC3_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcCircleHollowProfileDef_type); - IFC4X3_RC3_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcClassification_type);defs.push_back(IFC4X3_RC3_IfcDocumentInformation_type);defs.push_back(IFC4X3_RC3_IfcLibraryInformation_type); - IFC4X3_RC3_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcClassificationReference_type);defs.push_back(IFC4X3_RC3_IfcDocumentReference_type);defs.push_back(IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X3_RC3_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X3_RC3_IfcLibraryReference_type); - IFC4X3_RC3_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcClosedShell_type);defs.push_back(IFC4X3_RC3_IfcOpenShell_type); - IFC4X3_RC3_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcClothoid_type);defs.push_back(IFC4X3_RC3_IfcCosine_type);defs.push_back(IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type);defs.push_back(IFC4X3_RC3_IfcSine_type);defs.push_back(IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type); - IFC4X3_RC3_IfcSpiral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcColourRgb_type); - IFC4X3_RC3_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X3_RC3_IfcColourRgbList_type);defs.push_back(IFC4X3_RC3_IfcColourSpecification_type);defs.push_back(IFC4X3_RC3_IfcCurveStyleFont_type);defs.push_back(IFC4X3_RC3_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X3_RC3_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X3_RC3_IfcIndexedColourMap_type);defs.push_back(IFC4X3_RC3_IfcPreDefinedItem_type);defs.push_back(IFC4X3_RC3_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X3_RC3_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X3_RC3_IfcSurfaceStyleShading_type);defs.push_back(IFC4X3_RC3_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X3_RC3_IfcSurfaceTexture_type);defs.push_back(IFC4X3_RC3_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X3_RC3_IfcTextStyleTextModel_type);defs.push_back(IFC4X3_RC3_IfcTextureCoordinate_type);defs.push_back(IFC4X3_RC3_IfcTextureVertex_type);defs.push_back(IFC4X3_RC3_IfcTextureVertexList_type); - IFC4X3_RC3_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcColumnStandardCase_type); - IFC4X3_RC3_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcComplexProperty_type);defs.push_back(IFC4X3_RC3_IfcSimpleProperty_type); - IFC4X3_RC3_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X3_RC3_IfcSimplePropertyTemplate_type); - IFC4X3_RC3_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcCompositeCurveOnSurface_type);defs.push_back(IFC4X3_RC3_IfcGradientCurve_type);defs.push_back(IFC4X3_RC3_IfcSegmentedReferenceCurve_type); - IFC4X3_RC3_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcCompositeCurveSegment_type);defs.push_back(IFC4X3_RC3_IfcCurveSegment_type); - IFC4X3_RC3_IfcSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcCompressor_type);defs.push_back(IFC4X3_RC3_IfcFan_type);defs.push_back(IFC4X3_RC3_IfcPump_type); - IFC4X3_RC3_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcCompressorType_type);defs.push_back(IFC4X3_RC3_IfcFanType_type);defs.push_back(IFC4X3_RC3_IfcPumpType_type); - IFC4X3_RC3_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC3_IfcConnectedFaceSet_type);defs.push_back(IFC4X3_RC3_IfcEdge_type);defs.push_back(IFC4X3_RC3_IfcFace_type);defs.push_back(IFC4X3_RC3_IfcFaceBound_type);defs.push_back(IFC4X3_RC3_IfcLoop_type);defs.push_back(IFC4X3_RC3_IfcPath_type);defs.push_back(IFC4X3_RC3_IfcVertex_type); - IFC4X3_RC3_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X3_RC3_IfcConnectionPointGeometry_type);defs.push_back(IFC4X3_RC3_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X3_RC3_IfcConnectionVolumeGeometry_type); - IFC4X3_RC3_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcConnectionPointEccentricity_type); - IFC4X3_RC3_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X3_RC3_IfcConstructionMaterialResource_type);defs.push_back(IFC4X3_RC3_IfcConstructionProductResource_type);defs.push_back(IFC4X3_RC3_IfcCrewResource_type);defs.push_back(IFC4X3_RC3_IfcLaborResource_type);defs.push_back(IFC4X3_RC3_IfcSubContractResource_type); - IFC4X3_RC3_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X3_RC3_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X3_RC3_IfcConstructionProductResourceType_type);defs.push_back(IFC4X3_RC3_IfcCrewResourceType_type);defs.push_back(IFC4X3_RC3_IfcLaborResourceType_type);defs.push_back(IFC4X3_RC3_IfcSubContractResourceType_type); - IFC4X3_RC3_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcConstructionResource_type); - IFC4X3_RC3_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcConstructionResourceType_type); - IFC4X3_RC3_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcContext_type);defs.push_back(IFC4X3_RC3_IfcObject_type);defs.push_back(IFC4X3_RC3_IfcTypeObject_type); - IFC4X3_RC3_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcContextDependentUnit_type);defs.push_back(IFC4X3_RC3_IfcConversionBasedUnit_type);defs.push_back(IFC4X3_RC3_IfcSIUnit_type); - IFC4X3_RC3_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type); - IFC4X3_RC3_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcCostValue_type); - IFC4X3_RC3_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcCsgSolid_type);defs.push_back(IFC4X3_RC3_IfcManifoldSolidBrep_type);defs.push_back(IFC4X3_RC3_IfcSectionedSolid_type);defs.push_back(IFC4X3_RC3_IfcSweptAreaSolid_type);defs.push_back(IFC4X3_RC3_IfcSweptDiskSolid_type); - IFC4X3_RC3_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcCurveStyle_type);defs.push_back(IFC4X3_RC3_IfcFillAreaStyle_type);defs.push_back(IFC4X3_RC3_IfcSurfaceStyle_type);defs.push_back(IFC4X3_RC3_IfcTextStyle_type); - IFC4X3_RC3_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcCylindricalSurface_type);defs.push_back(IFC4X3_RC3_IfcPlane_type);defs.push_back(IFC4X3_RC3_IfcSphericalSurface_type);defs.push_back(IFC4X3_RC3_IfcToroidalSurface_type); - IFC4X3_RC3_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type);defs.push_back(IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type);defs.push_back(IFC4X3_RC3_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X3_RC3_IfcRevolvedAreaSolid_type); - IFC4X3_RC3_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type); - IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcDistributionChamberElement_type);defs.push_back(IFC4X3_RC3_IfcEnergyConversionDevice_type);defs.push_back(IFC4X3_RC3_IfcFlowController_type);defs.push_back(IFC4X3_RC3_IfcFlowFitting_type);defs.push_back(IFC4X3_RC3_IfcFlowMovingDevice_type);defs.push_back(IFC4X3_RC3_IfcFlowSegment_type);defs.push_back(IFC4X3_RC3_IfcFlowStorageDevice_type);defs.push_back(IFC4X3_RC3_IfcFlowTerminal_type);defs.push_back(IFC4X3_RC3_IfcFlowTreatmentDevice_type); - IFC4X3_RC3_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC3_IfcDistributionChamberElementType_type);defs.push_back(IFC4X3_RC3_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X3_RC3_IfcFlowControllerType_type);defs.push_back(IFC4X3_RC3_IfcFlowFittingType_type);defs.push_back(IFC4X3_RC3_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X3_RC3_IfcFlowSegmentType_type);defs.push_back(IFC4X3_RC3_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC3_IfcFlowTerminalType_type);defs.push_back(IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC3_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcDistributionCircuit_type); - IFC4X3_RC3_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcDistributionControlElement_type);defs.push_back(IFC4X3_RC3_IfcDistributionFlowElement_type); - IFC4X3_RC3_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcDistributionControlElementType_type);defs.push_back(IFC4X3_RC3_IfcDistributionFlowElementType_type); - IFC4X3_RC3_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcDistributionPort_type); - IFC4X3_RC3_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcDoorLiningProperties_type);defs.push_back(IFC4X3_RC3_IfcDoorPanelProperties_type);defs.push_back(IFC4X3_RC3_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X3_RC3_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X3_RC3_IfcWindowLiningProperties_type);defs.push_back(IFC4X3_RC3_IfcWindowPanelProperties_type); - IFC4X3_RC3_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcDoorStandardCase_type); - IFC4X3_RC3_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcDoorStyle_type);defs.push_back(IFC4X3_RC3_IfcElementType_type);defs.push_back(IFC4X3_RC3_IfcSpatialElementType_type);defs.push_back(IFC4X3_RC3_IfcWindowStyle_type); - IFC4X3_RC3_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcDraughtingPreDefinedColour_type); - IFC4X3_RC3_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type); - IFC4X3_RC3_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcDuctSilencer_type);defs.push_back(IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type);defs.push_back(IFC4X3_RC3_IfcFilter_type);defs.push_back(IFC4X3_RC3_IfcInterceptor_type); - IFC4X3_RC3_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcDuctSilencerType_type);defs.push_back(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type);defs.push_back(IFC4X3_RC3_IfcFilterType_type);defs.push_back(IFC4X3_RC3_IfcInterceptorType_type); - IFC4X3_RC3_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcEarthworksCut_type);defs.push_back(IFC4X3_RC3_IfcOpeningElement_type);defs.push_back(IFC4X3_RC3_IfcVoidingFeature_type); - IFC4X3_RC3_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcEarthworksFill_type);defs.push_back(IFC4X3_RC3_IfcReinforcedSoil_type); - IFC4X3_RC3_IfcEarthworksElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcEdgeCurve_type);defs.push_back(IFC4X3_RC3_IfcOrientedEdge_type);defs.push_back(IFC4X3_RC3_IfcSubedge_type); - IFC4X3_RC3_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcEdgeLoop_type);defs.push_back(IFC4X3_RC3_IfcPolyLoop_type);defs.push_back(IFC4X3_RC3_IfcVertexLoop_type); - IFC4X3_RC3_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X3_RC3_IfcTank_type); - IFC4X3_RC3_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC3_IfcTankType_type); - IFC4X3_RC3_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcElementQuantity_type); - IFC4X3_RC3_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcEvent_type);defs.push_back(IFC4X3_RC3_IfcProcedure_type);defs.push_back(IFC4X3_RC3_IfcTask_type); - IFC4X3_RC3_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcEventTime_type);defs.push_back(IFC4X3_RC3_IfcLagTime_type);defs.push_back(IFC4X3_RC3_IfcResourceTime_type);defs.push_back(IFC4X3_RC3_IfcTaskTime_type);defs.push_back(IFC4X3_RC3_IfcWorkTime_type); - IFC4X3_RC3_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcEventType_type);defs.push_back(IFC4X3_RC3_IfcProcedureType_type);defs.push_back(IFC4X3_RC3_IfcTaskType_type); - IFC4X3_RC3_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcExtendedProperties_type);defs.push_back(IFC4X3_RC3_IfcPreDefinedProperties_type);defs.push_back(IFC4X3_RC3_IfcProperty_type);defs.push_back(IFC4X3_RC3_IfcPropertyEnumeration_type); - IFC4X3_RC3_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcExternalSpatialElement_type); - IFC4X3_RC3_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X3_RC3_IfcSpatialStructureElement_type);defs.push_back(IFC4X3_RC3_IfcSpatialZone_type); - IFC4X3_RC3_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type); - IFC4X3_RC3_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcFaceOuterBound_type); - IFC4X3_RC3_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcFaceSurface_type); - IFC4X3_RC3_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcFacetedBrepWithVoids_type); - IFC4X3_RC3_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcFailureConnectionCondition_type);defs.push_back(IFC4X3_RC3_IfcSlippageConnectionCondition_type); - IFC4X3_RC3_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcFeatureElementAddition_type);defs.push_back(IFC4X3_RC3_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X3_RC3_IfcSurfaceFeature_type); - IFC4X3_RC3_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcFurniture_type);defs.push_back(IFC4X3_RC3_IfcSystemFurnitureElement_type); - IFC4X3_RC3_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcFurnitureType_type);defs.push_back(IFC4X3_RC3_IfcSystemFurnitureElementType_type); - IFC4X3_RC3_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcGeometricCurveSet_type); - IFC4X3_RC3_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcGeometricRepresentationContext_type); - IFC4X3_RC3_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X3_RC3_IfcMappedItem_type);defs.push_back(IFC4X3_RC3_IfcStyledItem_type);defs.push_back(IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - IFC4X3_RC3_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcGeometricRepresentationSubContext_type); - IFC4X3_RC3_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcGeotechnicalAssembly_type);defs.push_back(IFC4X3_RC3_IfcGeotechnicalStratum_type); - IFC4X3_RC3_IfcGeotechnicalElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcGrid_type);defs.push_back(IFC4X3_RC3_IfcLinearPositioningElement_type);defs.push_back(IFC4X3_RC3_IfcReferent_type); - IFC4X3_RC3_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcGridPlacement_type);defs.push_back(IFC4X3_RC3_IfcLinearPlacement_type);defs.push_back(IFC4X3_RC3_IfcLocalPlacement_type); - IFC4X3_RC3_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type); - IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X3_RC3_IfcTessellatedFaceSet_type); - IFC4X3_RC3_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X3_RC3_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcIndexedTextureMap_type);defs.push_back(IFC4X3_RC3_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X3_RC3_IfcTextureMap_type); - IFC4X3_RC3_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcIndexedTriangleTextureMap_type); - IFC4X3_RC3_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcIntersectionCurve_type);defs.push_back(IFC4X3_RC3_IfcSeamCurve_type); - IFC4X3_RC3_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcIrregularTimeSeries_type);defs.push_back(IFC4X3_RC3_IfcRegularTimeSeries_type); - IFC4X3_RC3_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcLightSourceAmbient_type);defs.push_back(IFC4X3_RC3_IfcLightSourceDirectional_type);defs.push_back(IFC4X3_RC3_IfcLightSourceGoniometric_type);defs.push_back(IFC4X3_RC3_IfcLightSourcePositional_type); - IFC4X3_RC3_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcLightSourceSpot_type); - IFC4X3_RC3_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcMapConversion_type); - IFC4X3_RC3_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC3_IfcMaterial_type);defs.push_back(IFC4X3_RC3_IfcMaterialConstituent_type);defs.push_back(IFC4X3_RC3_IfcMaterialConstituentSet_type);defs.push_back(IFC4X3_RC3_IfcMaterialLayer_type);defs.push_back(IFC4X3_RC3_IfcMaterialLayerSet_type);defs.push_back(IFC4X3_RC3_IfcMaterialProfile_type);defs.push_back(IFC4X3_RC3_IfcMaterialProfileSet_type); - IFC4X3_RC3_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X3_RC3_IfcProductDefinitionShape_type); - IFC4X3_RC3_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X3_RC3_IfcMaterialProfileSetUsage_type); - IFC4X3_RC3_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcMaterialLayerWithOffsets_type); - IFC4X3_RC3_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type); - IFC4X3_RC3_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcMaterialProfileWithOffsets_type); - IFC4X3_RC3_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcMaterialProperties_type);defs.push_back(IFC4X3_RC3_IfcProfileProperties_type); - IFC4X3_RC3_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcMemberStandardCase_type); - IFC4X3_RC3_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcMetric_type);defs.push_back(IFC4X3_RC3_IfcObjective_type); - IFC4X3_RC3_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcMirroredProfileDef_type); - IFC4X3_RC3_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcObjectDefinition_type);defs.push_back(IFC4X3_RC3_IfcPropertyDefinition_type);defs.push_back(IFC4X3_RC3_IfcRelationship_type); - IFC4X3_RC3_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcOccupant_type); - IFC4X3_RC3_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcOffsetCurve2D_type);defs.push_back(IFC4X3_RC3_IfcOffsetCurve3D_type);defs.push_back(IFC4X3_RC3_IfcOffsetCurveByDistances_type); - IFC4X3_RC3_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcOpeningStandardCase_type); - IFC4X3_RC3_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcOuterBoundaryCurve_type); - IFC4X3_RC3_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC3_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcPlanarBox_type); - IFC4X3_RC3_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcPlant_type); - IFC4X3_RC3_IfcGeographicElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcPlateStandardCase_type); - IFC4X3_RC3_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcPolygonalFaceSet_type);defs.push_back(IFC4X3_RC3_IfcTriangulatedFaceSet_type); - IFC4X3_RC3_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcPostalAddress_type);defs.push_back(IFC4X3_RC3_IfcTelecomAddress_type); - IFC4X3_RC3_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcPreDefinedColour_type);defs.push_back(IFC4X3_RC3_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X3_RC3_IfcPreDefinedTextFont_type); - IFC4X3_RC3_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X3_RC3_IfcPropertySet_type);defs.push_back(IFC4X3_RC3_IfcQuantitySet_type); - IFC4X3_RC3_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcPresentationLayerWithStyle_type); - IFC4X3_RC3_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcProject_type);defs.push_back(IFC4X3_RC3_IfcProjectLibrary_type); - IFC4X3_RC3_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcProjectedCRS_type); - IFC4X3_RC3_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcProjectionElement_type); - IFC4X3_RC3_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcPropertyBoundedValue_type);defs.push_back(IFC4X3_RC3_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X3_RC3_IfcPropertyListValue_type);defs.push_back(IFC4X3_RC3_IfcPropertyReferenceValue_type);defs.push_back(IFC4X3_RC3_IfcPropertySingleValue_type);defs.push_back(IFC4X3_RC3_IfcPropertyTableValue_type); - IFC4X3_RC3_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcPropertySetDefinition_type);defs.push_back(IFC4X3_RC3_IfcPropertyTemplateDefinition_type); - IFC4X3_RC3_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcPropertySetTemplate_type);defs.push_back(IFC4X3_RC3_IfcPropertyTemplate_type); - IFC4X3_RC3_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcQuantityArea_type);defs.push_back(IFC4X3_RC3_IfcQuantityCount_type);defs.push_back(IFC4X3_RC3_IfcQuantityLength_type);defs.push_back(IFC4X3_RC3_IfcQuantityTime_type);defs.push_back(IFC4X3_RC3_IfcQuantityVolume_type);defs.push_back(IFC4X3_RC3_IfcQuantityWeight_type); - IFC4X3_RC3_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type); - IFC4X3_RC3_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X3_RC3_IfcRoundedRectangleProfileDef_type); - IFC4X3_RC3_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcReinforcementBarProperties_type);defs.push_back(IFC4X3_RC3_IfcSectionProperties_type);defs.push_back(IFC4X3_RC3_IfcSectionReinforcementProperties_type); - IFC4X3_RC3_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcReinforcingBar_type);defs.push_back(IFC4X3_RC3_IfcReinforcingMesh_type);defs.push_back(IFC4X3_RC3_IfcTendon_type);defs.push_back(IFC4X3_RC3_IfcTendonAnchor_type);defs.push_back(IFC4X3_RC3_IfcTendonConduit_type); - IFC4X3_RC3_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcReinforcingBarType_type);defs.push_back(IFC4X3_RC3_IfcReinforcingMeshType_type);defs.push_back(IFC4X3_RC3_IfcTendonAnchorType_type);defs.push_back(IFC4X3_RC3_IfcTendonConduitType_type);defs.push_back(IFC4X3_RC3_IfcTendonType_type); - IFC4X3_RC3_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcRelAggregates_type);defs.push_back(IFC4X3_RC3_IfcRelNests_type);defs.push_back(IFC4X3_RC3_IfcRelProjectsElement_type);defs.push_back(IFC4X3_RC3_IfcRelVoidsElement_type); - IFC4X3_RC3_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcRelAssigns_type);defs.push_back(IFC4X3_RC3_IfcRelAssociates_type);defs.push_back(IFC4X3_RC3_IfcRelConnects_type);defs.push_back(IFC4X3_RC3_IfcRelDeclares_type);defs.push_back(IFC4X3_RC3_IfcRelDecomposes_type);defs.push_back(IFC4X3_RC3_IfcRelDefines_type); - IFC4X3_RC3_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC3_IfcRelAssignsToActor_type);defs.push_back(IFC4X3_RC3_IfcRelAssignsToControl_type);defs.push_back(IFC4X3_RC3_IfcRelAssignsToGroup_type);defs.push_back(IFC4X3_RC3_IfcRelAssignsToProcess_type);defs.push_back(IFC4X3_RC3_IfcRelAssignsToProduct_type);defs.push_back(IFC4X3_RC3_IfcRelAssignsToResource_type); - IFC4X3_RC3_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type); - IFC4X3_RC3_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC3_IfcRelAssociatesApproval_type);defs.push_back(IFC4X3_RC3_IfcRelAssociatesClassification_type);defs.push_back(IFC4X3_RC3_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X3_RC3_IfcRelAssociatesDocument_type);defs.push_back(IFC4X3_RC3_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X3_RC3_IfcRelAssociatesMaterial_type);defs.push_back(IFC4X3_RC3_IfcRelAssociatesProfileDef_type); - IFC4X3_RC3_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC3_IfcRelConnectsElements_type);defs.push_back(IFC4X3_RC3_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X3_RC3_IfcRelConnectsPorts_type);defs.push_back(IFC4X3_RC3_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X3_RC3_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X3_RC3_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X3_RC3_IfcRelCoversBldgElements_type);defs.push_back(IFC4X3_RC3_IfcRelCoversSpaces_type);defs.push_back(IFC4X3_RC3_IfcRelFillsElement_type);defs.push_back(IFC4X3_RC3_IfcRelFlowControlElements_type);defs.push_back(IFC4X3_RC3_IfcRelInterferesElements_type);defs.push_back(IFC4X3_RC3_IfcRelPositions_type);defs.push_back(IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X3_RC3_IfcRelSequence_type);defs.push_back(IFC4X3_RC3_IfcRelServicesBuildings_type);defs.push_back(IFC4X3_RC3_IfcRelSpaceBoundary_type); - IFC4X3_RC3_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcRelConnectsPathElements_type);defs.push_back(IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type); - IFC4X3_RC3_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRelConnectsWithEccentricity_type); - IFC4X3_RC3_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC3_IfcRelDefinesByObject_type);defs.push_back(IFC4X3_RC3_IfcRelDefinesByProperties_type);defs.push_back(IFC4X3_RC3_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X3_RC3_IfcRelDefinesByType_type); - IFC4X3_RC3_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC3_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type); - IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type); - IFC4X3_RC3_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type); - IFC4X3_RC3_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcSectionedSolidHorizontal_type); - IFC4X3_RC3_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcShapeModel_type);defs.push_back(IFC4X3_RC3_IfcStyleModel_type); - IFC4X3_RC3_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcShapeRepresentation_type);defs.push_back(IFC4X3_RC3_IfcTopologyRepresentation_type); - IFC4X3_RC3_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcSlabElementedCase_type);defs.push_back(IFC4X3_RC3_IfcSlabStandardCase_type); - IFC4X3_RC3_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcSolidStratum_type);defs.push_back(IFC4X3_RC3_IfcVoidStratum_type);defs.push_back(IFC4X3_RC3_IfcWaterStratum_type); - IFC4X3_RC3_IfcGeotechnicalStratum_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcSpaceType_type); - IFC4X3_RC3_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcSpatialStructureElementType_type);defs.push_back(IFC4X3_RC3_IfcSpatialZoneType_type); - IFC4X3_RC3_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcStructuralAction_type);defs.push_back(IFC4X3_RC3_IfcStructuralReaction_type); - IFC4X3_RC3_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcStructuralConnection_type);defs.push_back(IFC4X3_RC3_IfcStructuralMember_type); - IFC4X3_RC3_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcStructuralCurveAction_type);defs.push_back(IFC4X3_RC3_IfcStructuralPointAction_type);defs.push_back(IFC4X3_RC3_IfcStructuralSurfaceAction_type); - IFC4X3_RC3_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcStructuralCurveConnection_type);defs.push_back(IFC4X3_RC3_IfcStructuralPointConnection_type);defs.push_back(IFC4X3_RC3_IfcStructuralSurfaceConnection_type); - IFC4X3_RC3_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcStructuralCurveMember_type);defs.push_back(IFC4X3_RC3_IfcStructuralSurfaceMember_type); - IFC4X3_RC3_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralCurveMemberVarying_type); - IFC4X3_RC3_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcStructuralCurveReaction_type);defs.push_back(IFC4X3_RC3_IfcStructuralPointReaction_type);defs.push_back(IFC4X3_RC3_IfcStructuralSurfaceReaction_type); - IFC4X3_RC3_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralLinearAction_type); - IFC4X3_RC3_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralLoadCase_type); - IFC4X3_RC3_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X3_RC3_IfcStructuralLoadOrResult_type); - IFC4X3_RC3_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC3_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X3_RC3_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X3_RC3_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X3_RC3_IfcStructuralLoadTemperature_type); - IFC4X3_RC3_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type); - IFC4X3_RC3_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcStructuralLoadStatic_type);defs.push_back(IFC4X3_RC3_IfcSurfaceReinforcementArea_type); - IFC4X3_RC3_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralPlanarAction_type); - IFC4X3_RC3_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type); - IFC4X3_RC3_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcStyledRepresentation_type); - IFC4X3_RC3_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X3_RC3_IfcSurfaceOfRevolution_type); - IFC4X3_RC3_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcSurfaceStyleRendering_type); - IFC4X3_RC3_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type); - IFC4X3_RC3_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcTaskTimeRecurring_type); - IFC4X3_RC3_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcTextLiteralWithExtent_type); - IFC4X3_RC3_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcTextStyleFontModel_type); - IFC4X3_RC3_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type); - IFC4X3_RC3_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC3_IfcTypeProcess_type);defs.push_back(IFC4X3_RC3_IfcTypeProduct_type);defs.push_back(IFC4X3_RC3_IfcTypeResource_type); - IFC4X3_RC3_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcVertexPoint_type); - IFC4X3_RC3_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcWallElementedCase_type);defs.push_back(IFC4X3_RC3_IfcWallStandardCase_type); - IFC4X3_RC3_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC3_IfcWindowStandardCase_type); - IFC4X3_RC3_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC3_IfcWorkPlan_type);defs.push_back(IFC4X3_RC3_IfcWorkSchedule_type); - IFC4X3_RC3_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X3_RC3_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[77], + strings[78], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type(strings[79], 32, { + strings[80], + strings[81], + strings[82], + strings[83], + strings[84], + strings[85], + strings[86] + }); + IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type(strings[87], 35, { + strings[88], + strings[89], + strings[90], + strings[91], + strings[82], + strings[83], + strings[92], + strings[84], + strings[85], + strings[86] + }); + IFC4X3_RC3_IfcAlignmentTypeEnum_type = new enumeration_type(strings[93], 38, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type(strings[94], 41, { + strings[95], + strings[89], + strings[96], + strings[90] + }); + IFC4X3_RC3_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[97], 42, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[98], 43, { + strings[99], + strings[100], + strings[101], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[102], 44, { + strings[103], + strings[104], + strings[105], + strings[106], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAngularVelocityMeasure_type = new type_declaration(strings[107], 45, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcAnnotationTypeEnum_type = new enumeration_type(strings[108], 48, { + strings[109], + strings[110], + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116], + strings[117], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcAreaDensityMeasure_type = new type_declaration(strings[118], 58, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcAreaMeasure_type = new type_declaration(strings[119], 59, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[120], 60, { + strings[121], + strings[122], + strings[123], + strings[124] + }); + IFC4X3_RC3_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[125], 61, { + strings[48], + strings[126], + strings[9] + }); + IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[127], 66, { + strings[128], + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[134], + strings[135], + strings[136], + strings[137], + strings[138], + strings[139], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBSplineCurveForm_type = new enumeration_type(strings[140], 109, { + strings[141], + strings[142], + strings[143], + strings[144], + strings[145], + strings[146] + }); + IFC4X3_RC3_IfcBSplineSurfaceForm_type = new enumeration_type(strings[147], 112, { + strings[148], + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[154], + strings[155], + strings[156], + strings[157], + strings[146] + }); + IFC4X3_RC3_IfcBeamTypeEnum_type = new enumeration_type(strings[158], 75, { + strings[159], + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165], + strings[166], + strings[167], + strings[168], + strings[169], + strings[170], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBearingTypeDisplacementEnum_type = new enumeration_type(strings[171], 78, { + strings[172], + strings[173], + strings[174], + strings[175], + strings[9] + }); + IFC4X3_RC3_IfcBearingTypeEnum_type = new enumeration_type(strings[176], 79, { + strings[177], + strings[178], + strings[179], + strings[180], + strings[181], + strings[182], + strings[183], + strings[184], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBenchmarkEnum_type = new enumeration_type(strings[185], 80, { + strings[186], + strings[187], + strings[188], + strings[189], + strings[190], + strings[191], + strings[192], + strings[193], + strings[194], + strings[195] + }); + IFC4X3_RC3_IfcBinary_type = new type_declaration(strings[196], 82, new simple_type(simple_type::binary_type)); + IFC4X3_RC3_IfcBoilerTypeEnum_type = new enumeration_type(strings[197], 87, { + strings[198], + strings[199], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBoolean_type = new type_declaration(strings[200], 88, new simple_type(simple_type::boolean_type)); + IFC4X3_RC3_IfcBooleanOperator_type = new enumeration_type(strings[201], 91, { + strings[202], + strings[203], + strings[204] + }); + IFC4X3_RC3_IfcBridgePartTypeEnum_type = new enumeration_type(strings[205], 106, { + strings[206], + strings[207], + strings[208], + strings[209], + strings[210], + strings[211], + strings[212], + strings[213], + strings[214], + strings[215], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBridgeTypeEnum_type = new enumeration_type(strings[216], 107, { + strings[217], + strings[218], + strings[219], + strings[220], + strings[221], + strings[222], + strings[223], + strings[224], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[225], 117, { + strings[226], + strings[227], + strings[228], + strings[229], + strings[230], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[231], 120, { + strings[232], + strings[233], + strings[234], + strings[235], + strings[236], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[237], 123, { + strings[238], + strings[209], + strings[239], + strings[240], + strings[241], + strings[23], + strings[242], + strings[243], + strings[244], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBuiltSystemTypeEnum_type = new enumeration_type(strings[245], 127, { + strings[242], + strings[246], + strings[240], + strings[247], + strings[244], + strings[209], + strings[239], + strings[241], + strings[238], + strings[248], + strings[23], + strings[243], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcBurnerTypeEnum_type = new enumeration_type(strings[249], 130, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[250], 133, { + strings[251], + strings[252], + strings[253], + strings[254], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[255], 136, { + strings[256], + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[262], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCableFittingTypeEnum_type = new enumeration_type(strings[263], 139, { + strings[264], + strings[265], + strings[266], + strings[267], + strings[268], + strings[269], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[270], 142, { + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[277], + strings[278], + strings[279], + strings[280], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type = new enumeration_type(strings[281], 145, { + strings[282], + strings[283], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCardinalPointReference_type = new type_declaration(strings[284], 146, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcChangeActionEnum_type = new enumeration_type(strings[285], 157, { + strings[286], + strings[287], + strings[288], + strings[289], + strings[9] + }); + IFC4X3_RC3_IfcChillerTypeEnum_type = new enumeration_type(strings[290], 160, { + strings[291], + strings[292], + strings[293], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcChimneyTypeEnum_type = new enumeration_type(strings[294], 163, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCoilTypeEnum_type = new enumeration_type(strings[295], 177, { + strings[296], + strings[297], + strings[298], + strings[299], + strings[300], + strings[301], + strings[302], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcColumnTypeEnum_type = new enumeration_type(strings[303], 186, { + strings[304], + strings[305], + strings[306], + strings[307], + strings[308], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[309], 189, { + strings[310], + strings[311], + strings[4], + strings[312], + strings[313], + strings[314], + strings[315], + strings[316], + strings[317], + strings[318], + strings[319], + strings[320], + strings[321], + strings[322], + strings[323], + strings[324], + strings[325], + strings[326], + strings[327], + strings[328], + strings[329], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcComplexNumber_type = new type_declaration(strings[330], 190, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[331], 193, { + strings[332], + strings[333] + }); + IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[334], 198, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X3_RC3_IfcCompressorTypeEnum_type = new enumeration_type(strings[335], 201, { + strings[336], + strings[337], + strings[338], + strings[339], + strings[340], + strings[341], + strings[342], + strings[343], + strings[344], + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[350], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCondenserTypeEnum_type = new enumeration_type(strings[351], 204, { + strings[291], + strings[352], + strings[292], + strings[353], + strings[354], + strings[355], + strings[356], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcConnectionTypeEnum_type = new enumeration_type(strings[357], 212, { + strings[358], + strings[359], + strings[360], + strings[9] + }); + IFC4X3_RC3_IfcConstraintEnum_type = new enumeration_type(strings[361], 215, { + strings[362], + strings[363], + strings[364], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[365], 218, { + strings[366], + strings[367], + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[373], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[374], 221, { + strings[375], + strings[376], + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[383], + strings[9], + strings[8] + }); + IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[384], 224, { + strings[385], + strings[386], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcContextDependentMeasure_type = new type_declaration(strings[387], 228, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcControllerTypeEnum_type = new enumeration_type(strings[388], 233, { + strings[389], + strings[390], + strings[391], + strings[392], + strings[393], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type = new enumeration_type(strings[394], 238, { + strings[395], + strings[396], + strings[397], + strings[398], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[399], 241, { + strings[400], + strings[401], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[402], 244, { + strings[403], + strings[404], + strings[405], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCostItemTypeEnum_type = new enumeration_type(strings[406], 250, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[407], 252, { + strings[408], + strings[409], + strings[410], + strings[411], + strings[412], + strings[413], + strings[414], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCountMeasure_type = new type_declaration(strings[415], 254, new simple_type(simple_type::number_type)); + IFC4X3_RC3_IfcCourseTypeEnum_type = new enumeration_type(strings[416], 257, { + strings[417], + strings[418], + strings[419], + strings[420], + strings[421], + strings[422], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCoveringTypeEnum_type = new enumeration_type(strings[423], 260, { + strings[424], + strings[425], + strings[426], + strings[427], + strings[428], + strings[429], + strings[226], + strings[430], + strings[431], + strings[432], + strings[433], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[434], 263, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[435], 271, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcCurvatureMeasure_type = new type_declaration(strings[436], 272, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcCurveInterpolationEnum_type = new enumeration_type(strings[437], 277, { + strings[438], + strings[439], + strings[440], + strings[9] + }); + IFC4X3_RC3_IfcDamperTypeEnum_type = new enumeration_type(strings[441], 290, { + strings[442], + strings[443], + strings[444], + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[452], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDataOriginEnum_type = new enumeration_type(strings[453], 291, { + strings[454], + strings[455], + strings[456], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDate_type = new type_declaration(strings[457], 292, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcDateTime_type = new type_declaration(strings[458], 293, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcDayInMonthNumber_type = new type_declaration(strings[459], 294, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcDayInWeekNumber_type = new type_declaration(strings[460], 295, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcDerivedUnitEnum_type = new enumeration_type(strings[461], 303, { + strings[462], + strings[463], + strings[464], + strings[465], + strings[466], + strings[467], + strings[468], + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[477], + strings[478], + strings[479], + strings[480], + strings[481], + strings[482], + strings[483], + strings[484], + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[502], + strings[503], + strings[504], + strings[505], + strings[506], + strings[507], + strings[508], + strings[509], + strings[510], + strings[511], + strings[512], + strings[513], + strings[8] + }); + IFC4X3_RC3_IfcDescriptiveMeasure_type = new type_declaration(strings[514], 304, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcDimensionCount_type = new type_declaration(strings[515], 306, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcDirectionSenseEnum_type = new enumeration_type(strings[516], 308, { + strings[517], + strings[518] + }); + IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[519], 314, { + strings[520], + strings[521], + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[535], + strings[536], + strings[537], + strings[538], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDistributionBoardTypeEnum_type = new enumeration_type(strings[539], 317, { + strings[540], + strings[541], + strings[542], + strings[543], + strings[544], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[545], 320, { + strings[546], + strings[547], + strings[548], + strings[549], + strings[550], + strings[551], + strings[552], + strings[553], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[554], 329, { + strings[555], + strings[556], + strings[557], + strings[558], + strings[559], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDistributionSystemEnum_type = new enumeration_type(strings[560], 331, { + strings[561], + strings[562], + strings[563], + strings[564], + strings[565], + strings[566], + strings[567], + strings[568], + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[577], + strings[578], + strings[579], + strings[378], + strings[580], + strings[581], + strings[369], + strings[370], + strings[582], + strings[583], + strings[584], + strings[585], + strings[586], + strings[587], + strings[588], + strings[589], + strings[590], + strings[591], + strings[592], + strings[137], + strings[593], + strings[594], + strings[595], + strings[596], + strings[597], + strings[598], + strings[599], + strings[600], + strings[601], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[602], 332, { + strings[603], + strings[604], + strings[605], + strings[606], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDocumentStatusEnum_type = new enumeration_type(strings[607], 337, { + strings[608], + strings[609], + strings[610], + strings[611], + strings[9] + }); + IFC4X3_RC3_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[612], 340, { + strings[613], + strings[614], + strings[615], + strings[616], + strings[617], + strings[618], + strings[619], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[620], 341, { + strings[621], + strings[622], + strings[623], + strings[9] + }); + IFC4X3_RC3_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[624], 345, { + strings[625], + strings[626], + strings[627], + strings[383], + strings[628], + strings[629], + strings[382], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[630], 346, { + strings[631], + strings[632], + strings[633], + strings[634], + strings[635], + strings[636], + strings[637], + strings[638], + strings[639], + strings[640], + strings[641], + strings[642], + strings[643], + strings[644], + strings[617], + strings[618], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDoorTypeEnum_type = new enumeration_type(strings[645], 348, { + strings[646], + strings[647], + strings[648], + strings[649], + strings[650], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[651], 349, { + strings[631], + strings[632], + strings[652], + strings[653], + strings[654], + strings[636], + strings[637], + strings[655], + strings[639], + strings[640], + strings[656], + strings[642], + strings[643], + strings[657], + strings[658], + strings[618], + strings[659], + strings[660], + strings[661], + strings[662], + strings[663], + strings[664], + strings[665], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDoseEquivalentMeasure_type = new type_declaration(strings[666], 350, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[667], 355, { + strings[251], + strings[264], + strings[265], + strings[266], + strings[267], + strings[668], + strings[268], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[669], 358, { + strings[670], + strings[671], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[672], 361, { + strings[673], + strings[674], + strings[675], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcDuration_type = new type_declaration(strings[676], 362, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcDynamicViscosityMeasure_type = new type_declaration(strings[677], 363, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcEarthworksCutTypeEnum_type = new enumeration_type(strings[678], 365, { + strings[552], + strings[679], + strings[680], + strings[681], + strings[682], + strings[683], + strings[684], + strings[685], + strings[686], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcEarthworksFillTypeEnum_type = new enumeration_type(strings[687], 368, { + strings[688], + strings[689], + strings[690], + strings[691], + strings[692], + strings[693], + strings[694], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[695], 374, { + strings[696], + strings[697], + strings[698], + strings[699], + strings[700], + strings[701], + strings[702], + strings[703], + strings[704], + strings[705], + strings[706], + strings[707], + strings[708], + strings[709], + strings[710], + strings[711], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[712], 375, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcElectricChargeMeasure_type = new type_declaration(strings[713], 376, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcElectricConductanceMeasure_type = new type_declaration(strings[714], 377, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcElectricCurrentMeasure_type = new type_declaration(strings[715], 378, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[716], 381, { + strings[541], + strings[544], + strings[542], + strings[540], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[717], 384, { + strings[718], + strings[719], + strings[720], + strings[721], + strings[722], + strings[723], + strings[724], + strings[725], + strings[726], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type(strings[727], 387, { + strings[728], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[729], 390, { + strings[730], + strings[731], + strings[732], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[733], 393, { + strings[734], + strings[735], + strings[736], + strings[737], + strings[738], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricResistanceMeasure_type = new type_declaration(strings[739], 394, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[740], 397, { + strings[741], + strings[742], + strings[743], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElectricVoltageMeasure_type = new type_declaration(strings[744], 398, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[745], 403, { + strings[746], + strings[747], + strings[748], + strings[749], + strings[222], + strings[750], + strings[751], + strings[752], + strings[224], + strings[206], + strings[210], + strings[212], + strings[753], + strings[207], + strings[754], + strings[755], + strings[756], + strings[757], + strings[758], + strings[759], + strings[760], + strings[761], + strings[762], + strings[763], + strings[764], + strings[765], + strings[766], + strings[767], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcElementCompositionEnum_type = new enumeration_type(strings[768], 406, { + strings[232], + strings[233], + strings[234] + }); + IFC4X3_RC3_IfcEnergyMeasure_type = new type_declaration(strings[769], 413, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcEngineTypeEnum_type = new enumeration_type(strings[770], 416, { + strings[771], + strings[772], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[773], 419, { + strings[774], + strings[775], + strings[776], + strings[777], + strings[778], + strings[779], + strings[780], + strings[781], + strings[782], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[783], 422, { + strings[784], + strings[785], + strings[786], + strings[787], + strings[788], + strings[789], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[790], 425, { + strings[791], + strings[792], + strings[793], + strings[794], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcEventTypeEnum_type = new enumeration_type(strings[795], 427, { + strings[796], + strings[797], + strings[798], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[799], 436, { + strings[800], + strings[801], + strings[802], + strings[803], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type = new enumeration_type(strings[804], 449, { + strings[805], + strings[806], + strings[267], + strings[807], + strings[808], + strings[213], + strings[809], + strings[214], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFacilityUsageEnum_type = new enumeration_type(strings[810], 451, { + strings[811], + strings[812], + strings[813], + strings[814], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFanTypeEnum_type = new enumeration_type(strings[815], 455, { + strings[816], + strings[817], + strings[818], + strings[819], + strings[820], + strings[821], + strings[822], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFastenerTypeEnum_type = new enumeration_type(strings[823], 458, { + strings[824], + strings[825], + strings[826], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFilterTypeEnum_type = new enumeration_type(strings[827], 468, { + strings[828], + strings[829], + strings[830], + strings[831], + strings[832], + strings[833], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[834], 471, { + strings[835], + strings[836], + strings[837], + strings[838], + strings[839], + strings[840], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFlowDirectionEnum_type = new enumeration_type(strings[841], 475, { + strings[842], + strings[843], + strings[844], + strings[9] + }); + IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[845], 480, { + strings[846], + strings[847], + strings[848], + strings[849], + strings[850], + strings[851], + strings[852], + strings[853], + strings[854], + strings[855], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[856], 483, { + strings[857], + strings[858], + strings[859], + strings[860], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcFontStyle_type = new type_declaration(strings[861], 494, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcFontVariant_type = new type_declaration(strings[862], 495, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcFontWeight_type = new type_declaration(strings[863], 496, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcFootingTypeEnum_type = new enumeration_type(strings[864], 499, { + strings[865], + strings[866], + strings[867], + strings[868], + strings[869], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcForceMeasure_type = new type_declaration(strings[870], 500, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcFrequencyMeasure_type = new type_declaration(strings[871], 501, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcFurnitureTypeEnum_type = new enumeration_type(strings[872], 506, { + strings[873], + strings[874], + strings[875], + strings[876], + strings[877], + strings[878], + strings[879], + strings[880], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[881], 509, { + strings[882], + strings[883], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcGeometricProjectionEnum_type = new enumeration_type(strings[884], 511, { + strings[885], + strings[886], + strings[887], + strings[888], + strings[889], + strings[890], + strings[891], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[892], 523, { + strings[893], + strings[894] + }); + IFC4X3_RC3_IfcGloballyUniqueId_type = new type_declaration(strings[895], 522, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcGridTypeEnum_type = new enumeration_type(strings[896], 529, { + strings[674], + strings[897], + strings[898], + strings[899], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[900], 535, { + strings[901], + strings[902], + strings[903], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[904], 536, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcHeatingValueMeasure_type = new type_declaration(strings[905], 537, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcHumidifierTypeEnum_type = new enumeration_type(strings[906], 540, { + strings[907], + strings[908], + strings[909], + strings[910], + strings[911], + strings[912], + strings[913], + strings[914], + strings[915], + strings[916], + strings[917], + strings[918], + strings[919], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcIdentifier_type = new type_declaration(strings[920], 541, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcIlluminanceMeasure_type = new type_declaration(strings[921], 542, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type(strings[922], 546, { + strings[923], + strings[924], + strings[925], + strings[926], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcInductanceMeasure_type = new type_declaration(strings[927], 555, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcInteger_type = new type_declaration(strings[928], 556, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcIntegerCountRateMeasure_type = new type_declaration(strings[929], 557, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcInterceptorTypeEnum_type = new enumeration_type(strings[930], 560, { + strings[931], + strings[932], + strings[584], + strings[933], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcInternalOrExternalEnum_type = new enumeration_type(strings[934], 562, { + strings[935], + strings[800], + strings[801], + strings[802], + strings[803], + strings[9] + }); + IFC4X3_RC3_IfcInventoryTypeEnum_type = new enumeration_type(strings[936], 565, { + strings[937], + strings[938], + strings[939], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcIonConcentrationMeasure_type = new type_declaration(strings[940], 566, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[941], 570, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[942], 573, { + strings[570], + strings[943], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcKinematicViscosityMeasure_type = new type_declaration(strings[944], 576, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcKnotType_type = new enumeration_type(strings[945], 577, { + strings[946], + strings[947], + strings[948], + strings[146] + }); + IFC4X3_RC3_IfcLabel_type = new type_declaration(strings[949], 578, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[950], 581, { + strings[951], + strings[952], + strings[953], + strings[376], + strings[377], + strings[954], + strings[955], + strings[425], + strings[956], + strings[957], + strings[958], + strings[380], + strings[959], + strings[371], + strings[960], + strings[427], + strings[961], + strings[962], + strings[963], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcLampTypeEnum_type = new enumeration_type(strings[964], 585, { + strings[965], + strings[966], + strings[967], + strings[968], + strings[969], + strings[970], + strings[971], + strings[972], + strings[973], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcLanguageId_type = new type_declaration(strings[974], 586, new named_type(IFC4X3_RC3_IfcIdentifier_type)); + IFC4X3_RC3_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[975], 588, { + strings[976], + strings[977], + strings[978] + }); + IFC4X3_RC3_IfcLengthMeasure_type = new type_declaration(strings[979], 589, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[980], 593, { + strings[981], + strings[982], + strings[983], + strings[9] + }); + IFC4X3_RC3_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[984], 596, { + strings[965], + strings[966], + strings[968], + strings[969], + strings[985], + strings[986], + strings[987], + strings[988], + strings[971], + strings[973], + strings[9] + }); + IFC4X3_RC3_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[989], 599, { + strings[990], + strings[991], + strings[992], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcLinearForceMeasure_type = new type_declaration(strings[993], 609, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLinearMomentMeasure_type = new type_declaration(strings[994], 610, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLinearStiffnessMeasure_type = new type_declaration(strings[995], 613, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLinearVelocityMeasure_type = new type_declaration(strings[996], 614, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type = new enumeration_type(strings[997], 618, { + strings[998], + strings[837], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[999], 619, { + strings[1000], + strings[1001], + strings[1002], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcLogical_type = new type_declaration(strings[1003], 621, new simple_type(simple_type::logical_type)); + IFC4X3_RC3_IfcLogicalOperatorEnum_type = new enumeration_type(strings[1004], 622, { + strings[1005], + strings[1006], + strings[1007], + strings[1008], + strings[1009] + }); + IFC4X3_RC3_IfcLuminousFluxMeasure_type = new type_declaration(strings[1010], 625, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[1011], 626, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcLuminousIntensityMeasure_type = new type_declaration(strings[1012], 627, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[1013], 628, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMagneticFluxMeasure_type = new type_declaration(strings[1014], 629, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMarineFacilityTypeEnum_type = new enumeration_type(strings[1015], 634, { + strings[1016], + strings[1017], + strings[1018], + strings[1019], + strings[1020], + strings[1021], + strings[1022], + strings[1023], + strings[1024], + strings[1025], + strings[1026], + strings[1027], + strings[1028], + strings[1029], + strings[1030], + strings[1031], + strings[1032], + strings[1033], + strings[1034], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcMarinePartTypeEnum_type = new enumeration_type(strings[1035], 635, { + strings[1036], + strings[1037], + strings[1038], + strings[420], + strings[1039], + strings[1040], + strings[1041], + strings[1042], + strings[1043], + strings[1044], + strings[1045], + strings[1046], + strings[1047], + strings[1048], + strings[1049], + strings[1050], + strings[1051], + strings[1052], + strings[422], + strings[1053], + strings[1054], + strings[1055], + strings[1056], + strings[1057], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcMassDensityMeasure_type = new type_declaration(strings[1058], 636, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMassFlowRateMeasure_type = new type_declaration(strings[1059], 637, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMassMeasure_type = new type_declaration(strings[1060], 638, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMassPerLengthMeasure_type = new type_declaration(strings[1061], 639, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[1062], 664, { + strings[1063], + strings[1064], + strings[1065], + strings[1066], + strings[1067], + strings[1068], + strings[1069], + strings[1070], + strings[1071], + strings[1072], + strings[1073], + strings[1074], + strings[1075], + strings[1076], + strings[1077], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[1078], 667, { + strings[1079], + strings[1080], + strings[1081], + strings[1082], + strings[1083], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcMemberTypeEnum_type = new enumeration_type(strings[1084], 671, { + strings[1085], + strings[1086], + strings[1087], + strings[1088], + strings[1089], + strings[901], + strings[6], + strings[1090], + strings[1091], + strings[1092], + strings[1093], + strings[1094], + strings[1095], + strings[1096], + strings[1097], + strings[1098], + strings[1099], + strings[1100], + strings[1101], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type(strings[1102], 677, { + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[1107], + strings[1108], + strings[1109], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[1110], 678, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[1111], 679, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[1112], 680, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[1113], 681, { + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[1114], 682, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[1115], 683, { + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[1116], 684, { + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X3_RC3_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[1117], 685, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMolecularWeightMeasure_type = new type_declaration(strings[1118], 686, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[1119], 687, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMonetaryMeasure_type = new type_declaration(strings[1120], 688, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcMonthInYearNumber_type = new type_declaration(strings[1121], 690, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcMooringDeviceTypeEnum_type = new enumeration_type(strings[1122], 693, { + strings[1123], + strings[1124], + strings[1125], + strings[1126], + strings[1127], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[1128], 696, { + strings[1129], + strings[1130], + strings[1131], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcNavigationElementTypeEnum_type = new enumeration_type(strings[1132], 700, { + strings[1133], + strings[1134], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[1135], 701, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)); + IFC4X3_RC3_IfcNumericMeasure_type = new type_declaration(strings[1136], 703, new simple_type(simple_type::number_type)); + IFC4X3_RC3_IfcObjectTypeEnum_type = new enumeration_type(strings[1137], 710, { + strings[1138], + strings[1139], + strings[568], + strings[1140], + strings[1141], + strings[1142], + strings[1143], + strings[9] + }); + IFC4X3_RC3_IfcObjectiveEnum_type = new enumeration_type(strings[1144], 707, { + strings[1145], + strings[1146], + strings[1147], + strings[800], + strings[1148], + strings[1149], + strings[1150], + strings[1151], + strings[1152], + strings[1153], + strings[1154], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcOccupantTypeEnum_type = new enumeration_type(strings[1155], 712, { + strings[1156], + strings[1157], + strings[1158], + strings[1159], + strings[1160], + strings[1161], + strings[1162], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[1163], 719, { + strings[1164], + strings[1165], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcOutletTypeEnum_type = new enumeration_type(strings[1166], 728, { + strings[1167], + strings[1168], + strings[1169], + strings[1170], + strings[1171], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPHMeasure_type = new type_declaration(strings[1172], 745, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcParameterValue_type = new type_declaration(strings[1173], 731, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcPavementTypeEnum_type = new enumeration_type(strings[1174], 735, { + strings[1175], + strings[1176], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[1177], 738, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[1178], 739, { + strings[1179], + strings[1180], + strings[1181], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPermitTypeEnum_type = new enumeration_type(strings[1182], 742, { + strings[1183], + strings[1184], + strings[1185], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[1186], 747, { + strings[1187], + strings[1188], + strings[9] + }); + IFC4X3_RC3_IfcPileConstructionEnum_type = new enumeration_type(strings[1189], 751, { + strings[1190], + strings[1191], + strings[1192], + strings[1193], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPileTypeEnum_type = new enumeration_type(strings[1194], 753, { + strings[1195], + strings[1196], + strings[1197], + strings[1198], + strings[1199], + strings[1200], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[1201], 756, { + strings[251], + strings[264], + strings[265], + strings[266], + strings[267], + strings[668], + strings[268], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[1202], 759, { + strings[220], + strings[671], + strings[670], + strings[1203], + strings[1204], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPlanarForceMeasure_type = new type_declaration(strings[1205], 764, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcPlaneAngleMeasure_type = new type_declaration(strings[1206], 766, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcPlateTypeEnum_type = new enumeration_type(strings[1207], 771, { + strings[1208], + strings[1209], + strings[1210], + strings[1211], + strings[1212], + strings[1213], + strings[1214], + strings[1215], + strings[1216], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPositiveInteger_type = new type_declaration(strings[1217], 784, new named_type(IFC4X3_RC3_IfcInteger_type)); + IFC4X3_RC3_IfcPositiveLengthMeasure_type = new type_declaration(strings[1218], 785, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)); + IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[1219], 786, new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type)); + IFC4X3_RC3_IfcPowerMeasure_type = new type_declaration(strings[1220], 789, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[1221], 796, { + strings[1222], + strings[1223], + strings[1224] + }); + IFC4X3_RC3_IfcPresentableText_type = new type_declaration(strings[1225], 797, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcPressureMeasure_type = new type_declaration(strings[1226], 802, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcProcedureTypeEnum_type = new enumeration_type(strings[1227], 805, { + strings[1228], + strings[1229], + strings[1230], + strings[1231], + strings[1232], + strings[1233], + strings[1234], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcProfileTypeEnum_type = new enumeration_type(strings[1235], 815, { + strings[1236], + strings[1237] + }); + IFC4X3_RC3_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[1238], 823, { + strings[1239], + strings[1240], + strings[1241], + strings[1242], + strings[1243], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[1244], 818, { + strings[1245], + strings[1246] + }); + IFC4X3_RC3_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[1247], 820, { + strings[1248], + strings[1249], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[1250], 838, { + strings[1251], + strings[1252], + strings[1253], + strings[1254], + strings[1255], + strings[1256], + strings[1257], + strings[9] + }); + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[1258], 846, { + strings[1259], + strings[1260], + strings[1261], + strings[1262], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[1263], 848, { + strings[1264], + strings[1265], + strings[1266], + strings[1267], + strings[1268], + strings[1269], + strings[1270], + strings[1271], + strings[1272], + strings[1273], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcPumpTypeEnum_type = new enumeration_type(strings[1274], 852, { + strings[1275], + strings[1276], + strings[1277], + strings[1278], + strings[1279], + strings[1280], + strings[1281], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRadioActivityMeasure_type = new type_declaration(strings[1282], 860, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcRailTypeEnum_type = new enumeration_type(strings[1283], 866, { + strings[1284], + strings[1285], + strings[1286], + strings[1287], + strings[1288], + strings[1289], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRailingTypeEnum_type = new enumeration_type(strings[1290], 864, { + strings[1291], + strings[1286], + strings[1292], + strings[1293], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRailwayPartTypeEnum_type = new enumeration_type(strings[1294], 868, { + strings[1295], + strings[1296], + strings[1297], + strings[1298], + strings[1299], + strings[1300], + strings[214], + strings[1301], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRailwayTypeEnum_type = new enumeration_type(strings[1302], 869, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRampFlightTypeEnum_type = new enumeration_type(strings[1303], 873, { + strings[1304], + strings[1305], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRampTypeEnum_type = new enumeration_type(strings[1306], 875, { + strings[1307], + strings[1308], + strings[1309], + strings[1310], + strings[1311], + strings[1312], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRatioMeasure_type = new type_declaration(strings[1313], 876, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcReal_type = new type_declaration(strings[1314], 879, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1315], 885, { + strings[1316], + strings[1317], + strings[1318], + strings[1319], + strings[1320], + strings[1321], + strings[1322], + strings[1323] + }); + IFC4X3_RC3_IfcReferentTypeEnum_type = new enumeration_type(strings[1324], 888, { + strings[1325], + strings[1326], + strings[1327], + strings[1328], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1329], 889, { + strings[1330], + strings[1331], + strings[1332], + strings[1333], + strings[381], + strings[1334], + strings[1335], + strings[382], + strings[1336], + strings[9] + }); + IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type = new enumeration_type(strings[1337], 892, { + strings[1338], + strings[1339], + strings[1340], + strings[1341], + strings[1342], + strings[1343], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1344], 896, { + strings[1345], + strings[1346], + strings[1347], + strings[1094], + strings[1348], + strings[1349], + strings[1350], + strings[1351], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1352], 897, { + strings[1353], + strings[1354] + }); + IFC4X3_RC3_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1355], 899, { + strings[1351], + strings[1349], + strings[1347], + strings[1345], + strings[1348], + strings[1350], + strings[1346], + strings[1094], + strings[1356], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1357], 904, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRoadPartTypeEnum_type = new enumeration_type(strings[1358], 972, { + strings[1359], + strings[1360], + strings[1361], + strings[203], + strings[1362], + strings[1363], + strings[1364], + strings[1365], + strings[1366], + strings[1367], + strings[1368], + strings[1369], + strings[1370], + strings[1371], + strings[1372], + strings[1373], + strings[1374], + strings[1375], + strings[1376], + strings[1377], + strings[1378], + strings[1379], + strings[1380], + strings[1381], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRoadTypeEnum_type = new enumeration_type(strings[1382], 973, { + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRoleEnum_type = new enumeration_type(strings[1383], 974, { + strings[1384], + strings[1385], + strings[1386], + strings[1387], + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[1395], + strings[1396], + strings[1397], + strings[1398], + strings[1399], + strings[1400], + strings[1161], + strings[1401], + strings[1402], + strings[1403], + strings[1404], + strings[8] + }); + IFC4X3_RC3_IfcRoofTypeEnum_type = new enumeration_type(strings[1405], 977, { + strings[1406], + strings[1407], + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[1417], + strings[1418], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1419], 979, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcRotationalMassMeasure_type = new type_declaration(strings[1420], 980, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1421], 981, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcRotationalStiffnessSelect_type = new select_type(strings[1422], 982, { + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcRotationalStiffnessMeasure_type + }); + IFC4X3_RC3_IfcSIPrefix_type = new enumeration_type(strings[1423], 1026, { + strings[1424], + strings[1425], + strings[1426], + strings[1427], + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434], + strings[1435], + strings[1436], + strings[1437], + strings[1438], + strings[1439] + }); + IFC4X3_RC3_IfcSIUnitName_type = new enumeration_type(strings[1440], 1029, { + strings[1441], + strings[1442], + strings[1443], + strings[1444], + strings[1445], + strings[1446], + strings[1447], + strings[1448], + strings[1449], + strings[1450], + strings[1451], + strings[1452], + strings[1453], + strings[1454], + strings[1455], + strings[1456], + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[1466], + strings[1467], + strings[1468], + strings[1469], + strings[1470] + }); + IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1471], 986, { + strings[1472], + strings[1473], + strings[1474], + strings[1475], + strings[843], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[1480], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSectionModulusMeasure_type = new type_declaration(strings[1481], 995, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSectionTypeEnum_type = new enumeration_type(strings[1482], 998, { + strings[1483], + strings[1484] + }); + IFC4X3_RC3_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1485], 990, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSensorTypeEnum_type = new enumeration_type(strings[1486], 1004, { + strings[1487], + strings[1488], + strings[1489], + strings[1490], + strings[1491], + strings[1492], + strings[1493], + strings[1494], + strings[1495], + strings[1496], + strings[1497], + strings[1498], + strings[1499], + strings[1500], + strings[1501], + strings[1502], + strings[1503], + strings[1504], + strings[1505], + strings[1506], + strings[1507], + strings[1508], + strings[1509], + strings[1510], + strings[1511], + strings[1512], + strings[1513], + strings[1514], + strings[1515], + strings[1516], + strings[1517], + strings[1518], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSequenceEnum_type = new enumeration_type(strings[1519], 1005, { + strings[1520], + strings[1521], + strings[1522], + strings[1523], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1524], 1008, { + strings[1525], + strings[1526], + strings[1527], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcShearModulusMeasure_type = new type_declaration(strings[1528], 1012, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSignTypeEnum_type = new enumeration_type(strings[1529], 1020, { + strings[1530], + strings[1531], + strings[1334], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSignalTypeEnum_type = new enumeration_type(strings[1532], 1018, { + strings[1533], + strings[1534], + strings[1535], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1536], 1023, { + strings[1537], + strings[1538], + strings[1539], + strings[1540], + strings[1541], + strings[1542], + strings[1543], + strings[1544], + strings[1545], + strings[1546], + strings[1547], + strings[1548] + }); + IFC4X3_RC3_IfcSlabTypeEnum_type = new enumeration_type(strings[1549], 1035, { + strings[1550], + strings[1551], + strings[1552], + strings[1553], + strings[1554], + strings[371], + strings[1555], + strings[1368], + strings[1556], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1557], 1039, { + strings[1558], + strings[1559], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSolidAngleMeasure_type = new type_declaration(strings[1560], 1040, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1561], 1044, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSoundPowerMeasure_type = new type_declaration(strings[1562], 1045, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1563], 1046, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSoundPressureMeasure_type = new type_declaration(strings[1564], 1047, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1565], 1052, { + strings[1566], + strings[1567], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSpaceTypeEnum_type = new enumeration_type(strings[1568], 1054, { + strings[1569], + strings[1570], + strings[1571], + strings[935], + strings[800], + strings[1572], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1573], 1062, { + strings[1574], + strings[1575], + strings[370], + strings[1576], + strings[589], + strings[1262], + strings[23], + strings[596], + strings[1577], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1578], 1063, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSpecularExponent_type = new type_declaration(strings[1579], 1064, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcSpecularRoughness_type = new type_declaration(strings[1580], 1066, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1581], 1072, { + strings[1582], + strings[1583], + strings[1584], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1585], 1076, { + strings[1304], + strings[1586], + strings[1305], + strings[1587], + strings[1418], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcStairTypeEnum_type = new enumeration_type(strings[1588], 1078, { + strings[1589], + strings[1590], + strings[1591], + strings[1592], + strings[1593], + strings[1594], + strings[1595], + strings[1596], + strings[1597], + strings[1598], + strings[1599], + strings[1600], + strings[1601], + strings[1602], + strings[1603], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcStateEnum_type = new enumeration_type(strings[1604], 1079, { + strings[1605], + strings[1606], + strings[1607], + strings[1608], + strings[1609] + }); + IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1610], 1087, { + strings[1611], + strings[438], + strings[1612], + strings[1613], + strings[1614], + strings[1615], + strings[1616], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1617], 1090, { + strings[1618], + strings[1619], + strings[555], + strings[1620], + strings[1621], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1622], 1116, { + strings[1611], + strings[1623], + strings[1616], + strings[1624], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1625], 1119, { + strings[1626], + strings[1627], + strings[1628], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1629], 1127, { + strings[1630], + strings[1185], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1631], 1133, { + strings[1632], + strings[1633], + strings[1634], + strings[1635], + strings[1636], + strings[1637], + strings[1638], + strings[1639], + strings[1640], + strings[1641], + strings[1642], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSurfaceSide_type = new enumeration_type(strings[1643], 1138, { + strings[517], + strings[518], + strings[1644] + }); + IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1645], 1153, { + strings[1646], + strings[1647], + strings[1648], + strings[1649], + strings[1650], + strings[1651], + strings[1652], + strings[1653], + strings[1654], + strings[743], + strings[1655], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1656], 1157, { + strings[1657], + strings[1658], + strings[1659], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTankTypeEnum_type = new enumeration_type(strings[1660], 1163, { + strings[1661], + strings[1662], + strings[1663], + strings[1664], + strings[1665], + strings[1044], + strings[1666], + strings[1667], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTaskDurationEnum_type = new enumeration_type(strings[1668], 1165, { + strings[1669], + strings[1670], + strings[9] + }); + IFC4X3_RC3_IfcTaskTypeEnum_type = new enumeration_type(strings[1671], 1169, { + strings[1672], + strings[1574], + strings[1673], + strings[1674], + strings[571], + strings[1675], + strings[1676], + strings[1677], + strings[1678], + strings[1679], + strings[1680], + strings[1681], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1682], 1171, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1683], 1172, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1684], 1176, { + strings[1073], + strings[1685], + strings[1686], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTendonConduitTypeEnum_type = new enumeration_type(strings[1687], 1179, { + strings[557], + strings[1073], + strings[1688], + strings[1689], + strings[1690], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTendonTypeEnum_type = new enumeration_type(strings[1691], 1181, { + strings[1692], + strings[1693], + strings[1694], + strings[1695], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcText_type = new type_declaration(strings[1696], 1184, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcTextAlignment_type = new type_declaration(strings[1697], 1185, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcTextDecoration_type = new type_declaration(strings[1698], 1186, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcTextFontName_type = new type_declaration(strings[1699], 1187, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcTextPath_type = new enumeration_type(strings[1700], 1191, { + strings[621], + strings[623], + strings[1701], + strings[1702] + }); + IFC4X3_RC3_IfcTextTransformation_type = new type_declaration(strings[1703], 1196, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1704], 1202, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcThermalConductivityMeasure_type = new type_declaration(strings[1705], 1203, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1706], 1204, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcThermalResistanceMeasure_type = new type_declaration(strings[1707], 1205, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1708], 1206, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1709], 1207, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcTime_type = new type_declaration(strings[1710], 1209, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcTimeMeasure_type = new type_declaration(strings[1711], 1210, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcTimeOrRatioSelect_type = new select_type(strings[1712], 1211, { + IFC4X3_RC3_IfcDuration_type, + IFC4X3_RC3_IfcRatioMeasure_type + }); + IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1713], 1214, { + strings[1714], + strings[1616], + strings[1715], + strings[1716], + strings[1717], + strings[1718], + strings[9] + }); + IFC4X3_RC3_IfcTimeStamp_type = new type_declaration(strings[1719], 1216, new simple_type(simple_type::integer_type)); + IFC4X3_RC3_IfcTorqueMeasure_type = new type_declaration(strings[1720], 1220, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcTrackElementTypeEnum_type = new enumeration_type(strings[1721], 1223, { + strings[1722], + strings[1723], + strings[1724], + strings[1725], + strings[1726], + strings[1727], + strings[1728], + strings[1729], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTransformerTypeEnum_type = new enumeration_type(strings[1730], 1226, { + strings[32], + strings[1731], + strings[1732], + strings[1733], + strings[1734], + strings[1735], + strings[854], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTransitionCode_type = new enumeration_type(strings[1736], 1227, { + strings[1737], + strings[1714], + strings[1738], + strings[1739] + }); + IFC4X3_RC3_IfcTranslationalStiffnessSelect_type = new select_type(strings[1740], 1228, { + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcLinearStiffnessMeasure_type + }); + IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type = new enumeration_type(strings[1741], 1230, { + strings[1742], + strings[1743], + strings[1744], + strings[1745], + strings[1746], + strings[1747], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type(strings[1748], 1231, { + strings[1749], + strings[1750], + strings[1751], + strings[1752], + strings[1753], + strings[1754], + strings[1755], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcTransportElementTypeSelect_type = new select_type(strings[1756], 1233, { + IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type + }); + IFC4X3_RC3_IfcTrimmingPreference_type = new enumeration_type(strings[1757], 1238, { + strings[1758], + strings[1151], + strings[146] + }); + IFC4X3_RC3_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1759], 1243, { + strings[1760], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcURIReference_type = new type_declaration(strings[1761], 1257, new simple_type(simple_type::string_type)); + IFC4X3_RC3_IfcUnitEnum_type = new enumeration_type(strings[1762], 1256, { + strings[1763], + strings[1764], + strings[1765], + strings[1766], + strings[1767], + strings[1768], + strings[1769], + strings[1770], + strings[1771], + strings[1772], + strings[1773], + strings[1774], + strings[1775], + strings[1776], + strings[1777], + strings[1778], + strings[1779], + strings[1780], + strings[1781], + strings[1782], + strings[1783], + strings[1784], + strings[1785], + strings[1786], + strings[1787], + strings[1788], + strings[1789], + strings[1790], + strings[1791], + strings[8] + }); + IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1792], 1251, { + strings[1793], + strings[1794], + strings[1795], + strings[1796], + strings[1797], + strings[1798], + strings[1799], + strings[1800], + strings[854], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1801], 1254, { + strings[1802], + strings[1803], + strings[1804], + strings[1805], + strings[1806], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcValveTypeEnum_type = new enumeration_type(strings[1807], 1262, { + strings[1808], + strings[1809], + strings[1810], + strings[1811], + strings[1812], + strings[1813], + strings[1814], + strings[1815], + strings[1816], + strings[1817], + strings[1818], + strings[1819], + strings[1820], + strings[1821], + strings[1822], + strings[1823], + strings[1824], + strings[1825], + strings[1826], + strings[1827], + strings[1828], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1829], 1263, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcVibrationDamperTypeEnum_type = new enumeration_type(strings[1830], 1271, { + strings[1831], + strings[1832], + strings[1833], + strings[1199], + strings[1834], + strings[1835], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1836], 1274, { + strings[1837], + strings[1838], + strings[1839], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1840], 1279, { + strings[1841], + strings[1842], + strings[1843], + strings[1844], + strings[1845], + strings[1349], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcVolumeMeasure_type = new type_declaration(strings[1846], 1281, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1847], 1282, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcWallTypeEnum_type = new enumeration_type(strings[1848], 1287, { + strings[1849], + strings[1850], + strings[1851], + strings[1852], + strings[1346], + strings[1853], + strings[1854], + strings[1612], + strings[1855], + strings[1856], + strings[1857], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWarpingConstantMeasure_type = new type_declaration(strings[1858], 1288, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcWarpingMomentMeasure_type = new type_declaration(strings[1859], 1289, new simple_type(simple_type::real_type)); + IFC4X3_RC3_IfcWarpingStiffnessSelect_type = new select_type(strings[1860], 1290, { + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC3_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1861], 1293, { + strings[1862], + strings[1863], + strings[1864], + strings[1865], + strings[1866], + strings[1867], + strings[1868], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1869], 1297, { + strings[1870], + strings[1871], + strings[1872], + strings[1873], + strings[1874], + strings[1875], + strings[1876], + strings[1877], + strings[1878], + strings[1879], + strings[1880], + strings[1881], + strings[1882], + strings[9] + }); + IFC4X3_RC3_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1883], 1298, { + strings[621], + strings[622], + strings[623], + strings[1884], + strings[1885], + strings[9] + }); + IFC4X3_RC3_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1886], 1302, { + strings[625], + strings[626], + strings[627], + strings[383], + strings[628], + strings[382], + strings[1887], + strings[9] + }); + IFC4X3_RC3_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1888], 1303, { + strings[1889], + strings[1890], + strings[1891], + strings[1892], + strings[1893], + strings[1894], + strings[1895], + strings[1896], + strings[1897], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWindowTypeEnum_type = new enumeration_type(strings[1898], 1305, { + strings[1899], + strings[1900], + strings[1901], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1902], 1306, { + strings[1889], + strings[1890], + strings[1891], + strings[1892], + strings[1893], + strings[1894], + strings[1895], + strings[1896], + strings[1897], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1903], 1308, { + strings[1904], + strings[1905], + strings[1906], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1907], 1311, { + strings[1908], + strings[1909], + strings[1910], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1911], 1313, { + strings[1908], + strings[1909], + strings[1910], + strings[8], + strings[9] + }); + IFC4X3_RC3_IfcActorRole_type = new entity(strings[1912], false, 7, 0); + IFC4X3_RC3_IfcAddress_type = new entity(strings[1913], true, 12, 0); + IFC4X3_RC3_IfcAlignmentParameterSegment_type = new entity(strings[1914], true, 36, 0); + IFC4X3_RC3_IfcAlignmentVerticalSegment_type = new entity(strings[1915], false, 40, IFC4X3_RC3_IfcAlignmentParameterSegment_type); + IFC4X3_RC3_IfcApplication_type = new entity(strings[1916], false, 49, 0); + IFC4X3_RC3_IfcAppliedValue_type = new entity(strings[1917], false, 50, 0); + IFC4X3_RC3_IfcApproval_type = new entity(strings[1918], false, 52, 0); + IFC4X3_RC3_IfcBoundaryCondition_type = new entity(strings[1919], true, 94, 0); + IFC4X3_RC3_IfcBoundaryEdgeCondition_type = new entity(strings[1920], false, 96, IFC4X3_RC3_IfcBoundaryCondition_type); + IFC4X3_RC3_IfcBoundaryFaceCondition_type = new entity(strings[1921], false, 97, IFC4X3_RC3_IfcBoundaryCondition_type); + IFC4X3_RC3_IfcBoundaryNodeCondition_type = new entity(strings[1922], false, 98, IFC4X3_RC3_IfcBoundaryCondition_type); + IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type = new entity(strings[1923], false, 99, IFC4X3_RC3_IfcBoundaryNodeCondition_type); + IFC4X3_RC3_IfcConnectionGeometry_type = new entity(strings[1924], true, 208, 0); + IFC4X3_RC3_IfcConnectionPointGeometry_type = new entity(strings[1925], false, 210, IFC4X3_RC3_IfcConnectionGeometry_type); + IFC4X3_RC3_IfcConnectionSurfaceGeometry_type = new entity(strings[1926], false, 211, IFC4X3_RC3_IfcConnectionGeometry_type); + IFC4X3_RC3_IfcConnectionVolumeGeometry_type = new entity(strings[1927], false, 213, IFC4X3_RC3_IfcConnectionGeometry_type); + IFC4X3_RC3_IfcConstraint_type = new entity(strings[1928], true, 214, 0); + IFC4X3_RC3_IfcCoordinateOperation_type = new entity(strings[1929], true, 245, 0); + IFC4X3_RC3_IfcCoordinateReferenceSystem_type = new entity(strings[1930], true, 246, 0); + IFC4X3_RC3_IfcCostValue_type = new entity(strings[1931], false, 253, IFC4X3_RC3_IfcAppliedValue_type); + IFC4X3_RC3_IfcDerivedUnit_type = new entity(strings[1932], false, 301, 0); + IFC4X3_RC3_IfcDerivedUnitElement_type = new entity(strings[1933], false, 302, 0); + IFC4X3_RC3_IfcDimensionalExponents_type = new entity(strings[1934], false, 305, 0); + IFC4X3_RC3_IfcExternalInformation_type = new entity(strings[1935], true, 429, 0); + IFC4X3_RC3_IfcExternalReference_type = new entity(strings[1936], true, 433, 0); + IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type = new entity(strings[1937], false, 430, IFC4X3_RC3_IfcExternalReference_type); + IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1938], false, 431, IFC4X3_RC3_IfcExternalReference_type); + IFC4X3_RC3_IfcExternallyDefinedTextFont_type = new entity(strings[1939], false, 432, IFC4X3_RC3_IfcExternalReference_type); + IFC4X3_RC3_IfcGridAxis_type = new entity(strings[1940], false, 526, 0); + IFC4X3_RC3_IfcIrregularTimeSeriesValue_type = new entity(strings[1941], false, 568, 0); + IFC4X3_RC3_IfcLibraryInformation_type = new entity(strings[1942], false, 590, IFC4X3_RC3_IfcExternalInformation_type); + IFC4X3_RC3_IfcLibraryReference_type = new entity(strings[1943], false, 591, IFC4X3_RC3_IfcExternalReference_type); + IFC4X3_RC3_IfcLightDistributionData_type = new entity(strings[1944], false, 594, 0); + IFC4X3_RC3_IfcLightIntensityDistribution_type = new entity(strings[1945], false, 600, 0); + IFC4X3_RC3_IfcMapConversion_type = new entity(strings[1946], false, 631, IFC4X3_RC3_IfcCoordinateOperation_type); + IFC4X3_RC3_IfcMaterialClassificationRelationship_type = new entity(strings[1947], false, 641, 0); + IFC4X3_RC3_IfcMaterialDefinition_type = new entity(strings[1948], true, 644, 0); + IFC4X3_RC3_IfcMaterialLayer_type = new entity(strings[1949], false, 646, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialLayerSet_type = new entity(strings[1950], false, 647, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialLayerWithOffsets_type = new entity(strings[1951], false, 649, IFC4X3_RC3_IfcMaterialLayer_type); + IFC4X3_RC3_IfcMaterialList_type = new entity(strings[1952], false, 650, 0); + IFC4X3_RC3_IfcMaterialProfile_type = new entity(strings[1953], false, 651, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialProfileSet_type = new entity(strings[1954], false, 652, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialProfileWithOffsets_type = new entity(strings[1955], false, 655, IFC4X3_RC3_IfcMaterialProfile_type); + IFC4X3_RC3_IfcMaterialUsageDefinition_type = new entity(strings[1956], true, 659, 0); + IFC4X3_RC3_IfcMeasureWithUnit_type = new entity(strings[1957], false, 661, 0); + IFC4X3_RC3_IfcMetric_type = new entity(strings[1958], false, 672, IFC4X3_RC3_IfcConstraint_type); + IFC4X3_RC3_IfcMonetaryUnit_type = new entity(strings[1959], false, 689, 0); + IFC4X3_RC3_IfcNamedUnit_type = new entity(strings[1960], true, 697, 0); + IFC4X3_RC3_IfcObjectPlacement_type = new entity(strings[1961], true, 708, 0); + IFC4X3_RC3_IfcObjective_type = new entity(strings[1962], false, 706, IFC4X3_RC3_IfcConstraint_type); + IFC4X3_RC3_IfcOrganization_type = new entity(strings[1963], false, 722, 0); + IFC4X3_RC3_IfcOwnerHistory_type = new entity(strings[1964], false, 729, 0); + IFC4X3_RC3_IfcPerson_type = new entity(strings[1965], false, 743, 0); + IFC4X3_RC3_IfcPersonAndOrganization_type = new entity(strings[1966], false, 744, 0); + IFC4X3_RC3_IfcPhysicalQuantity_type = new entity(strings[1967], true, 748, 0); + IFC4X3_RC3_IfcPhysicalSimpleQuantity_type = new entity(strings[1968], true, 749, IFC4X3_RC3_IfcPhysicalQuantity_type); + IFC4X3_RC3_IfcPostalAddress_type = new entity(strings[1969], false, 788, IFC4X3_RC3_IfcAddress_type); + IFC4X3_RC3_IfcPresentationItem_type = new entity(strings[1970], true, 798, 0); + IFC4X3_RC3_IfcPresentationLayerAssignment_type = new entity(strings[1971], false, 799, 0); + IFC4X3_RC3_IfcPresentationLayerWithStyle_type = new entity(strings[1972], false, 800, IFC4X3_RC3_IfcPresentationLayerAssignment_type); + IFC4X3_RC3_IfcPresentationStyle_type = new entity(strings[1973], true, 801, 0); + IFC4X3_RC3_IfcProductRepresentation_type = new entity(strings[1974], true, 810, 0); + IFC4X3_RC3_IfcProfileDef_type = new entity(strings[1975], false, 813, 0); + IFC4X3_RC3_IfcProjectedCRS_type = new entity(strings[1976], false, 817, IFC4X3_RC3_IfcCoordinateReferenceSystem_type); + IFC4X3_RC3_IfcPropertyAbstraction_type = new entity(strings[1977], true, 825, 0); + IFC4X3_RC3_IfcPropertyEnumeration_type = new entity(strings[1978], false, 830, IFC4X3_RC3_IfcPropertyAbstraction_type); + IFC4X3_RC3_IfcQuantityArea_type = new entity(strings[1979], false, 853, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC3_IfcQuantityCount_type = new entity(strings[1980], false, 854, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC3_IfcQuantityLength_type = new entity(strings[1981], false, 855, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC3_IfcQuantityTime_type = new entity(strings[1982], false, 857, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC3_IfcQuantityVolume_type = new entity(strings[1983], false, 858, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC3_IfcQuantityWeight_type = new entity(strings[1984], false, 859, IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC3_IfcRecurrencePattern_type = new entity(strings[1985], false, 884, 0); + IFC4X3_RC3_IfcReference_type = new entity(strings[1986], false, 886, 0); + IFC4X3_RC3_IfcRepresentation_type = new entity(strings[1987], true, 956, 0); + IFC4X3_RC3_IfcRepresentationContext_type = new entity(strings[1988], true, 957, 0); + IFC4X3_RC3_IfcRepresentationItem_type = new entity(strings[1989], true, 958, 0); + IFC4X3_RC3_IfcRepresentationMap_type = new entity(strings[1990], false, 959, 0); + IFC4X3_RC3_IfcResourceLevelRelationship_type = new entity(strings[1991], true, 963, 0); + IFC4X3_RC3_IfcRoot_type = new entity(strings[1992], true, 978, 0); + IFC4X3_RC3_IfcSIUnit_type = new entity(strings[1993], false, 1028, IFC4X3_RC3_IfcNamedUnit_type); + IFC4X3_RC3_IfcSchedulingTime_type = new entity(strings[1994], true, 987, 0); + IFC4X3_RC3_IfcShapeAspect_type = new entity(strings[1995], false, 1009, 0); + IFC4X3_RC3_IfcShapeModel_type = new entity(strings[1996], true, 1010, IFC4X3_RC3_IfcRepresentation_type); + IFC4X3_RC3_IfcShapeRepresentation_type = new entity(strings[1997], false, 1011, IFC4X3_RC3_IfcShapeModel_type); + IFC4X3_RC3_IfcStructuralConnectionCondition_type = new entity(strings[1998], true, 1085, 0); + IFC4X3_RC3_IfcStructuralLoad_type = new entity(strings[1999], true, 1095, 0); + IFC4X3_RC3_IfcStructuralLoadConfiguration_type = new entity(strings[2000], false, 1097, IFC4X3_RC3_IfcStructuralLoad_type); + IFC4X3_RC3_IfcStructuralLoadOrResult_type = new entity(strings[2001], true, 1100, IFC4X3_RC3_IfcStructuralLoad_type); + IFC4X3_RC3_IfcStructuralLoadStatic_type = new entity(strings[2002], true, 1106, IFC4X3_RC3_IfcStructuralLoadOrResult_type); + IFC4X3_RC3_IfcStructuralLoadTemperature_type = new entity(strings[2003], false, 1107, IFC4X3_RC3_IfcStructuralLoadStatic_type); + IFC4X3_RC3_IfcStyleModel_type = new entity(strings[2004], true, 1124, IFC4X3_RC3_IfcRepresentation_type); + IFC4X3_RC3_IfcStyledItem_type = new entity(strings[2005], false, 1122, IFC4X3_RC3_IfcRepresentationItem_type); + IFC4X3_RC3_IfcStyledRepresentation_type = new entity(strings[2006], false, 1123, IFC4X3_RC3_IfcStyleModel_type); + IFC4X3_RC3_IfcSurfaceReinforcementArea_type = new entity(strings[2007], false, 1137, IFC4X3_RC3_IfcStructuralLoadOrResult_type); + IFC4X3_RC3_IfcSurfaceStyle_type = new entity(strings[2008], false, 1139, IFC4X3_RC3_IfcPresentationStyle_type); + IFC4X3_RC3_IfcSurfaceStyleLighting_type = new entity(strings[2009], false, 1141, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcSurfaceStyleRefraction_type = new entity(strings[2010], false, 1142, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcSurfaceStyleShading_type = new entity(strings[2011], false, 1144, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcSurfaceStyleWithTextures_type = new entity(strings[2012], false, 1145, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcSurfaceTexture_type = new entity(strings[2013], true, 1146, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcTable_type = new entity(strings[2014], false, 1158, 0); + IFC4X3_RC3_IfcTableColumn_type = new entity(strings[2015], false, 1159, 0); + IFC4X3_RC3_IfcTableRow_type = new entity(strings[2016], false, 1160, 0); + IFC4X3_RC3_IfcTaskTime_type = new entity(strings[2017], false, 1166, IFC4X3_RC3_IfcSchedulingTime_type); + IFC4X3_RC3_IfcTaskTimeRecurring_type = new entity(strings[2018], false, 1167, IFC4X3_RC3_IfcTaskTime_type); + IFC4X3_RC3_IfcTelecomAddress_type = new entity(strings[2019], false, 1170, IFC4X3_RC3_IfcAddress_type); + IFC4X3_RC3_IfcTextStyle_type = new entity(strings[2020], false, 1192, IFC4X3_RC3_IfcPresentationStyle_type); + IFC4X3_RC3_IfcTextStyleForDefinedFont_type = new entity(strings[2021], false, 1194, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcTextStyleTextModel_type = new entity(strings[2022], false, 1195, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcTextureCoordinate_type = new entity(strings[2023], true, 1197, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcTextureCoordinateGenerator_type = new entity(strings[2024], false, 1198, IFC4X3_RC3_IfcTextureCoordinate_type); + IFC4X3_RC3_IfcTextureMap_type = new entity(strings[2025], false, 1199, IFC4X3_RC3_IfcTextureCoordinate_type); + IFC4X3_RC3_IfcTextureVertex_type = new entity(strings[2026], false, 1200, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcTextureVertexList_type = new entity(strings[2027], false, 1201, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcTimePeriod_type = new entity(strings[2028], false, 1212, 0); + IFC4X3_RC3_IfcTimeSeries_type = new entity(strings[2029], true, 1213, 0); + IFC4X3_RC3_IfcTimeSeriesValue_type = new entity(strings[2030], false, 1215, 0); + IFC4X3_RC3_IfcTopologicalRepresentationItem_type = new entity(strings[2031], true, 1217, IFC4X3_RC3_IfcRepresentationItem_type); + IFC4X3_RC3_IfcTopologyRepresentation_type = new entity(strings[2032], false, 1218, IFC4X3_RC3_IfcShapeModel_type); + IFC4X3_RC3_IfcUnitAssignment_type = new entity(strings[2033], false, 1255, 0); + IFC4X3_RC3_IfcVertex_type = new entity(strings[2034], false, 1266, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcVertexPoint_type = new entity(strings[2035], false, 1268, IFC4X3_RC3_IfcVertex_type); + IFC4X3_RC3_IfcVirtualGridIntersection_type = new entity(strings[2036], false, 1277, 0); + IFC4X3_RC3_IfcWorkTime_type = new entity(strings[2037], false, 1314, IFC4X3_RC3_IfcSchedulingTime_type); + IFC4X3_RC3_IfcActorSelect_type = new select_type(strings[2038], 8, { + IFC4X3_RC3_IfcOrganization_type, + IFC4X3_RC3_IfcPerson_type, + IFC4X3_RC3_IfcPersonAndOrganization_type + }); + IFC4X3_RC3_IfcArcIndex_type = new type_declaration(strings[2039], 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))); + IFC4X3_RC3_IfcBendingParameterSelect_type = new select_type(strings[2040], 81, { + IFC4X3_RC3_IfcLengthMeasure_type, + IFC4X3_RC3_IfcPlaneAngleMeasure_type + }); + IFC4X3_RC3_IfcBoxAlignment_type = new type_declaration(strings[2041], 103, new named_type(IFC4X3_RC3_IfcLabel_type)); + IFC4X3_RC3_IfcCurveMeasureSelect_type = new select_type(strings[2042], 278, { + IFC4X3_RC3_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC3_IfcParameterValue_type + }); + IFC4X3_RC3_IfcDerivedMeasureValue_type = new select_type(strings[2043], 299, { + IFC4X3_RC3_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC3_IfcAccelerationMeasure_type, + IFC4X3_RC3_IfcAngularVelocityMeasure_type, + IFC4X3_RC3_IfcAreaDensityMeasure_type, + IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC3_IfcCurvatureMeasure_type, + IFC4X3_RC3_IfcDoseEquivalentMeasure_type, + IFC4X3_RC3_IfcDynamicViscosityMeasure_type, + IFC4X3_RC3_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC3_IfcElectricChargeMeasure_type, + IFC4X3_RC3_IfcElectricConductanceMeasure_type, + IFC4X3_RC3_IfcElectricResistanceMeasure_type, + IFC4X3_RC3_IfcElectricVoltageMeasure_type, + IFC4X3_RC3_IfcEnergyMeasure_type, + IFC4X3_RC3_IfcForceMeasure_type, + IFC4X3_RC3_IfcFrequencyMeasure_type, + IFC4X3_RC3_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC3_IfcHeatingValueMeasure_type, + IFC4X3_RC3_IfcIlluminanceMeasure_type, + IFC4X3_RC3_IfcInductanceMeasure_type, + IFC4X3_RC3_IfcIntegerCountRateMeasure_type, + IFC4X3_RC3_IfcIonConcentrationMeasure_type, + IFC4X3_RC3_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC3_IfcKinematicViscosityMeasure_type, + IFC4X3_RC3_IfcLinearForceMeasure_type, + IFC4X3_RC3_IfcLinearMomentMeasure_type, + IFC4X3_RC3_IfcLinearStiffnessMeasure_type, + IFC4X3_RC3_IfcLinearVelocityMeasure_type, + IFC4X3_RC3_IfcLuminousFluxMeasure_type, + IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC3_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC3_IfcMagneticFluxMeasure_type, + IFC4X3_RC3_IfcMassDensityMeasure_type, + IFC4X3_RC3_IfcMassFlowRateMeasure_type, + IFC4X3_RC3_IfcMassPerLengthMeasure_type, + IFC4X3_RC3_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC3_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC3_IfcMolecularWeightMeasure_type, + IFC4X3_RC3_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC3_IfcMonetaryMeasure_type, + IFC4X3_RC3_IfcPHMeasure_type, + IFC4X3_RC3_IfcPlanarForceMeasure_type, + IFC4X3_RC3_IfcPowerMeasure_type, + IFC4X3_RC3_IfcPressureMeasure_type, + IFC4X3_RC3_IfcRadioActivityMeasure_type, + IFC4X3_RC3_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC3_IfcRotationalMassMeasure_type, + IFC4X3_RC3_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC3_IfcSectionModulusMeasure_type, + IFC4X3_RC3_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC3_IfcShearModulusMeasure_type, + IFC4X3_RC3_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC3_IfcSoundPowerMeasure_type, + IFC4X3_RC3_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC3_IfcSoundPressureMeasure_type, + IFC4X3_RC3_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC3_IfcTemperatureGradientMeasure_type, + IFC4X3_RC3_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC3_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC3_IfcThermalConductivityMeasure_type, + IFC4X3_RC3_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC3_IfcThermalResistanceMeasure_type, + IFC4X3_RC3_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC3_IfcTorqueMeasure_type, + IFC4X3_RC3_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC3_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC3_IfcWarpingConstantMeasure_type, + IFC4X3_RC3_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC3_IfcFacilityPartTypeSelect_type = new select_type(strings[2044], 450, { + IFC4X3_RC3_IfcBridgePartTypeEnum_type, + IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC3_IfcMarinePartTypeEnum_type, + IFC4X3_RC3_IfcRailwayPartTypeEnum_type, + IFC4X3_RC3_IfcRoadPartTypeEnum_type + }); + IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type = new select_type(strings[2045], 547, { + IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC3_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type + }); + IFC4X3_RC3_IfcLayeredItem_type = new select_type(strings[2046], 587, { + IFC4X3_RC3_IfcRepresentation_type, + IFC4X3_RC3_IfcRepresentationItem_type + }); + IFC4X3_RC3_IfcLibrarySelect_type = new select_type(strings[2047], 592, { + IFC4X3_RC3_IfcLibraryInformation_type, + IFC4X3_RC3_IfcLibraryReference_type + }); + IFC4X3_RC3_IfcLightDistributionDataSourceSelect_type = new select_type(strings[2048], 595, { + IFC4X3_RC3_IfcExternalReference_type, + IFC4X3_RC3_IfcLightIntensityDistribution_type + }); + IFC4X3_RC3_IfcLineIndex_type = new type_declaration(strings[2049], 615, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))); + IFC4X3_RC3_IfcMaterialSelect_type = new select_type(strings[2050], 658, { + IFC4X3_RC3_IfcMaterialDefinition_type, + IFC4X3_RC3_IfcMaterialList_type, + IFC4X3_RC3_IfcMaterialUsageDefinition_type + }); + IFC4X3_RC3_IfcNormalisedRatioMeasure_type = new type_declaration(strings[2051], 702, new named_type(IFC4X3_RC3_IfcRatioMeasure_type)); + IFC4X3_RC3_IfcObjectReferenceSelect_type = new select_type(strings[2052], 709, { + IFC4X3_RC3_IfcAddress_type, + IFC4X3_RC3_IfcAppliedValue_type, + IFC4X3_RC3_IfcExternalReference_type, + IFC4X3_RC3_IfcMaterialDefinition_type, + IFC4X3_RC3_IfcOrganization_type, + IFC4X3_RC3_IfcPerson_type, + IFC4X3_RC3_IfcPersonAndOrganization_type, + IFC4X3_RC3_IfcTable_type, + IFC4X3_RC3_IfcTimeSeries_type + }); + IFC4X3_RC3_IfcPositiveRatioMeasure_type = new type_declaration(strings[2053], 787, new named_type(IFC4X3_RC3_IfcRatioMeasure_type)); + IFC4X3_RC3_IfcSegmentIndexSelect_type = new select_type(strings[2054], 1001, { + IFC4X3_RC3_IfcArcIndex_type, + IFC4X3_RC3_IfcLineIndex_type + }); + IFC4X3_RC3_IfcSimpleValue_type = new select_type(strings[2055], 1024, { + IFC4X3_RC3_IfcBinary_type, + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcDate_type, + IFC4X3_RC3_IfcDateTime_type, + IFC4X3_RC3_IfcDuration_type, + IFC4X3_RC3_IfcIdentifier_type, + IFC4X3_RC3_IfcInteger_type, + IFC4X3_RC3_IfcLabel_type, + IFC4X3_RC3_IfcLogical_type, + IFC4X3_RC3_IfcPositiveInteger_type, + IFC4X3_RC3_IfcReal_type, + IFC4X3_RC3_IfcText_type, + IFC4X3_RC3_IfcTime_type, + IFC4X3_RC3_IfcTimeStamp_type + }); + IFC4X3_RC3_IfcSizeSelect_type = new select_type(strings[2056], 1030, { + IFC4X3_RC3_IfcDescriptiveMeasure_type, + IFC4X3_RC3_IfcLengthMeasure_type, + IFC4X3_RC3_IfcNormalisedRatioMeasure_type, + IFC4X3_RC3_IfcPositiveLengthMeasure_type, + IFC4X3_RC3_IfcPositiveRatioMeasure_type, + IFC4X3_RC3_IfcRatioMeasure_type + }); + IFC4X3_RC3_IfcSpecularHighlightSelect_type = new select_type(strings[2057], 1065, { + IFC4X3_RC3_IfcSpecularExponent_type, + IFC4X3_RC3_IfcSpecularRoughness_type + }); + IFC4X3_RC3_IfcSurfaceStyleElementSelect_type = new select_type(strings[2058], 1140, { + IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC3_IfcSurfaceStyleLighting_type, + IFC4X3_RC3_IfcSurfaceStyleRefraction_type, + IFC4X3_RC3_IfcSurfaceStyleShading_type, + IFC4X3_RC3_IfcSurfaceStyleWithTextures_type + }); + IFC4X3_RC3_IfcUnit_type = new select_type(strings[2059], 1248, { + IFC4X3_RC3_IfcDerivedUnit_type, + IFC4X3_RC3_IfcMonetaryUnit_type, + IFC4X3_RC3_IfcNamedUnit_type + }); + IFC4X3_RC3_IfcAlignmentCantSegment_type = new entity(strings[2060], false, 31, IFC4X3_RC3_IfcAlignmentParameterSegment_type); + IFC4X3_RC3_IfcAlignmentHorizontalSegment_type = new entity(strings[2061], false, 34, IFC4X3_RC3_IfcAlignmentParameterSegment_type); + IFC4X3_RC3_IfcApprovalRelationship_type = new entity(strings[2062], false, 53, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcArbitraryClosedProfileDef_type = new entity(strings[2063], false, 54, IFC4X3_RC3_IfcProfileDef_type); + IFC4X3_RC3_IfcArbitraryOpenProfileDef_type = new entity(strings[2064], false, 55, IFC4X3_RC3_IfcProfileDef_type); + IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type = new entity(strings[2065], false, 56, IFC4X3_RC3_IfcArbitraryClosedProfileDef_type); + IFC4X3_RC3_IfcBlobTexture_type = new entity(strings[2066], false, 83, IFC4X3_RC3_IfcSurfaceTexture_type); + IFC4X3_RC3_IfcCenterLineProfileDef_type = new entity(strings[2067], false, 156, IFC4X3_RC3_IfcArbitraryOpenProfileDef_type); + IFC4X3_RC3_IfcClassification_type = new entity(strings[2068], false, 169, IFC4X3_RC3_IfcExternalInformation_type); + IFC4X3_RC3_IfcClassificationReference_type = new entity(strings[2069], false, 170, IFC4X3_RC3_IfcExternalReference_type); + IFC4X3_RC3_IfcColourRgbList_type = new entity(strings[2070], false, 181, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcColourSpecification_type = new entity(strings[2071], true, 182, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcCompositeProfileDef_type = new entity(strings[2072], false, 197, IFC4X3_RC3_IfcProfileDef_type); + IFC4X3_RC3_IfcConnectedFaceSet_type = new entity(strings[2073], false, 206, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcConnectionCurveGeometry_type = new entity(strings[2074], false, 207, IFC4X3_RC3_IfcConnectionGeometry_type); + IFC4X3_RC3_IfcConnectionPointEccentricity_type = new entity(strings[2075], false, 209, IFC4X3_RC3_IfcConnectionPointGeometry_type); + IFC4X3_RC3_IfcContextDependentUnit_type = new entity(strings[2076], false, 229, IFC4X3_RC3_IfcNamedUnit_type); + IFC4X3_RC3_IfcConversionBasedUnit_type = new entity(strings[2077], false, 234, IFC4X3_RC3_IfcNamedUnit_type); + IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type = new entity(strings[2078], false, 235, IFC4X3_RC3_IfcConversionBasedUnit_type); + IFC4X3_RC3_IfcCurrencyRelationship_type = new entity(strings[2079], false, 268, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcCurveStyle_type = new entity(strings[2080], false, 282, IFC4X3_RC3_IfcPresentationStyle_type); + IFC4X3_RC3_IfcCurveStyleFont_type = new entity(strings[2081], false, 283, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcCurveStyleFontAndScaling_type = new entity(strings[2082], false, 284, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcCurveStyleFontPattern_type = new entity(strings[2083], false, 285, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcDerivedProfileDef_type = new entity(strings[2084], false, 300, IFC4X3_RC3_IfcProfileDef_type); + IFC4X3_RC3_IfcDocumentInformation_type = new entity(strings[2085], false, 333, IFC4X3_RC3_IfcExternalInformation_type); + IFC4X3_RC3_IfcDocumentInformationRelationship_type = new entity(strings[2086], false, 334, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcDocumentReference_type = new entity(strings[2087], false, 335, IFC4X3_RC3_IfcExternalReference_type); + IFC4X3_RC3_IfcEdge_type = new entity(strings[2088], false, 369, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcEdgeCurve_type = new entity(strings[2089], false, 370, IFC4X3_RC3_IfcEdge_type); + IFC4X3_RC3_IfcEventTime_type = new entity(strings[2090], false, 424, IFC4X3_RC3_IfcSchedulingTime_type); + IFC4X3_RC3_IfcExtendedProperties_type = new entity(strings[2091], true, 428, IFC4X3_RC3_IfcPropertyAbstraction_type); + IFC4X3_RC3_IfcExternalReferenceRelationship_type = new entity(strings[2092], false, 434, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcFace_type = new entity(strings[2093], false, 440, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcFaceBound_type = new entity(strings[2094], false, 442, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcFaceOuterBound_type = new entity(strings[2095], false, 443, IFC4X3_RC3_IfcFaceBound_type); + IFC4X3_RC3_IfcFaceSurface_type = new entity(strings[2096], false, 444, IFC4X3_RC3_IfcFace_type); + IFC4X3_RC3_IfcFailureConnectionCondition_type = new entity(strings[2097], false, 452, IFC4X3_RC3_IfcStructuralConnectionCondition_type); + IFC4X3_RC3_IfcFillAreaStyle_type = new entity(strings[2098], false, 462, IFC4X3_RC3_IfcPresentationStyle_type); + IFC4X3_RC3_IfcGeometricRepresentationContext_type = new entity(strings[2099], false, 512, IFC4X3_RC3_IfcRepresentationContext_type); + IFC4X3_RC3_IfcGeometricRepresentationItem_type = new entity(strings[2100], true, 513, IFC4X3_RC3_IfcRepresentationItem_type); + IFC4X3_RC3_IfcGeometricRepresentationSubContext_type = new entity(strings[2101], false, 514, IFC4X3_RC3_IfcGeometricRepresentationContext_type); + IFC4X3_RC3_IfcGeometricSet_type = new entity(strings[2102], false, 515, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcGridPlacement_type = new entity(strings[2103], false, 527, IFC4X3_RC3_IfcObjectPlacement_type); + IFC4X3_RC3_IfcHalfSpaceSolid_type = new entity(strings[2104], false, 531, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcImageTexture_type = new entity(strings[2105], false, 543, IFC4X3_RC3_IfcSurfaceTexture_type); + IFC4X3_RC3_IfcIndexedColourMap_type = new entity(strings[2106], false, 549, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcIndexedTextureMap_type = new entity(strings[2107], true, 553, IFC4X3_RC3_IfcTextureCoordinate_type); + IFC4X3_RC3_IfcIndexedTriangleTextureMap_type = new entity(strings[2108], false, 554, IFC4X3_RC3_IfcIndexedTextureMap_type); + IFC4X3_RC3_IfcIrregularTimeSeries_type = new entity(strings[2109], false, 567, IFC4X3_RC3_IfcTimeSeries_type); + IFC4X3_RC3_IfcLagTime_type = new entity(strings[2110], false, 582, IFC4X3_RC3_IfcSchedulingTime_type); + IFC4X3_RC3_IfcLightSource_type = new entity(strings[2111], true, 601, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcLightSourceAmbient_type = new entity(strings[2112], false, 602, IFC4X3_RC3_IfcLightSource_type); + IFC4X3_RC3_IfcLightSourceDirectional_type = new entity(strings[2113], false, 603, IFC4X3_RC3_IfcLightSource_type); + IFC4X3_RC3_IfcLightSourceGoniometric_type = new entity(strings[2114], false, 604, IFC4X3_RC3_IfcLightSource_type); + IFC4X3_RC3_IfcLightSourcePositional_type = new entity(strings[2115], false, 605, IFC4X3_RC3_IfcLightSource_type); + IFC4X3_RC3_IfcLightSourceSpot_type = new entity(strings[2116], false, 606, IFC4X3_RC3_IfcLightSourcePositional_type); + IFC4X3_RC3_IfcLinearPlacement_type = new entity(strings[2117], false, 611, IFC4X3_RC3_IfcObjectPlacement_type); + IFC4X3_RC3_IfcLocalPlacement_type = new entity(strings[2118], false, 620, IFC4X3_RC3_IfcObjectPlacement_type); + IFC4X3_RC3_IfcLoop_type = new entity(strings[2119], false, 623, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcMappedItem_type = new entity(strings[2120], false, 632, IFC4X3_RC3_IfcRepresentationItem_type); + IFC4X3_RC3_IfcMaterial_type = new entity(strings[2121], false, 640, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialConstituent_type = new entity(strings[2122], false, 642, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialConstituentSet_type = new entity(strings[2123], false, 643, IFC4X3_RC3_IfcMaterialDefinition_type); + IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type = new entity(strings[2124], false, 645, IFC4X3_RC3_IfcProductRepresentation_type); + IFC4X3_RC3_IfcMaterialLayerSetUsage_type = new entity(strings[2125], false, 648, IFC4X3_RC3_IfcMaterialUsageDefinition_type); + IFC4X3_RC3_IfcMaterialProfileSetUsage_type = new entity(strings[2126], false, 653, IFC4X3_RC3_IfcMaterialUsageDefinition_type); + IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type = new entity(strings[2127], false, 654, IFC4X3_RC3_IfcMaterialProfileSetUsage_type); + IFC4X3_RC3_IfcMaterialProperties_type = new entity(strings[2128], false, 656, IFC4X3_RC3_IfcExtendedProperties_type); + IFC4X3_RC3_IfcMaterialRelationship_type = new entity(strings[2129], false, 657, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcMirroredProfileDef_type = new entity(strings[2130], false, 674, IFC4X3_RC3_IfcDerivedProfileDef_type); + IFC4X3_RC3_IfcObjectDefinition_type = new entity(strings[2131], true, 705, IFC4X3_RC3_IfcRoot_type); + IFC4X3_RC3_IfcOpenCrossProfileDef_type = new entity(strings[2132], false, 717, IFC4X3_RC3_IfcProfileDef_type); + IFC4X3_RC3_IfcOpenShell_type = new entity(strings[2133], false, 721, IFC4X3_RC3_IfcConnectedFaceSet_type); + IFC4X3_RC3_IfcOrganizationRelationship_type = new entity(strings[2134], false, 723, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcOrientedEdge_type = new entity(strings[2135], false, 724, IFC4X3_RC3_IfcEdge_type); + IFC4X3_RC3_IfcParameterizedProfileDef_type = new entity(strings[2136], true, 730, IFC4X3_RC3_IfcProfileDef_type); + IFC4X3_RC3_IfcPath_type = new entity(strings[2137], false, 732, IFC4X3_RC3_IfcTopologicalRepresentationItem_type); + IFC4X3_RC3_IfcPhysicalComplexQuantity_type = new entity(strings[2138], false, 746, IFC4X3_RC3_IfcPhysicalQuantity_type); + IFC4X3_RC3_IfcPixelTexture_type = new entity(strings[2139], false, 760, IFC4X3_RC3_IfcSurfaceTexture_type); + IFC4X3_RC3_IfcPlacement_type = new entity(strings[2140], true, 761, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcPlanarExtent_type = new entity(strings[2141], false, 763, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcPoint_type = new entity(strings[2142], true, 772, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcPointByDistanceExpression_type = new entity(strings[2143], false, 773, IFC4X3_RC3_IfcPoint_type); + IFC4X3_RC3_IfcPointOnCurve_type = new entity(strings[2144], false, 774, IFC4X3_RC3_IfcPoint_type); + IFC4X3_RC3_IfcPointOnSurface_type = new entity(strings[2145], false, 775, IFC4X3_RC3_IfcPoint_type); + IFC4X3_RC3_IfcPolyLoop_type = new entity(strings[2146], false, 780, IFC4X3_RC3_IfcLoop_type); + IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type = new entity(strings[2147], false, 777, IFC4X3_RC3_IfcHalfSpaceSolid_type); + IFC4X3_RC3_IfcPreDefinedItem_type = new entity(strings[2148], true, 792, IFC4X3_RC3_IfcPresentationItem_type); + IFC4X3_RC3_IfcPreDefinedProperties_type = new entity(strings[2149], true, 793, IFC4X3_RC3_IfcPropertyAbstraction_type); + IFC4X3_RC3_IfcPreDefinedTextFont_type = new entity(strings[2150], true, 795, IFC4X3_RC3_IfcPreDefinedItem_type); + IFC4X3_RC3_IfcProductDefinitionShape_type = new entity(strings[2151], false, 809, IFC4X3_RC3_IfcProductRepresentation_type); + IFC4X3_RC3_IfcProfileProperties_type = new entity(strings[2152], false, 814, IFC4X3_RC3_IfcExtendedProperties_type); + IFC4X3_RC3_IfcProperty_type = new entity(strings[2153], true, 824, IFC4X3_RC3_IfcPropertyAbstraction_type); + IFC4X3_RC3_IfcPropertyDefinition_type = new entity(strings[2154], true, 827, IFC4X3_RC3_IfcRoot_type); + IFC4X3_RC3_IfcPropertyDependencyRelationship_type = new entity(strings[2155], false, 828, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcPropertySetDefinition_type = new entity(strings[2156], true, 834, IFC4X3_RC3_IfcPropertyDefinition_type); + IFC4X3_RC3_IfcPropertyTemplateDefinition_type = new entity(strings[2157], true, 842, IFC4X3_RC3_IfcPropertyDefinition_type); + IFC4X3_RC3_IfcQuantitySet_type = new entity(strings[2158], true, 856, IFC4X3_RC3_IfcPropertySetDefinition_type); + IFC4X3_RC3_IfcRectangleProfileDef_type = new entity(strings[2159], false, 881, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcRegularTimeSeries_type = new entity(strings[2160], false, 890, IFC4X3_RC3_IfcTimeSeries_type); + IFC4X3_RC3_IfcReinforcementBarProperties_type = new entity(strings[2161], false, 893, IFC4X3_RC3_IfcPreDefinedProperties_type); + IFC4X3_RC3_IfcRelationship_type = new entity(strings[2162], true, 922, IFC4X3_RC3_IfcRoot_type); + IFC4X3_RC3_IfcResourceApprovalRelationship_type = new entity(strings[2163], false, 961, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcResourceConstraintRelationship_type = new entity(strings[2164], false, 962, IFC4X3_RC3_IfcResourceLevelRelationship_type); + IFC4X3_RC3_IfcResourceTime_type = new entity(strings[2165], false, 966, IFC4X3_RC3_IfcSchedulingTime_type); + IFC4X3_RC3_IfcRoundedRectangleProfileDef_type = new entity(strings[2166], false, 983, IFC4X3_RC3_IfcRectangleProfileDef_type); + IFC4X3_RC3_IfcSectionProperties_type = new entity(strings[2167], false, 996, IFC4X3_RC3_IfcPreDefinedProperties_type); + IFC4X3_RC3_IfcSectionReinforcementProperties_type = new entity(strings[2168], false, 997, IFC4X3_RC3_IfcPreDefinedProperties_type); + IFC4X3_RC3_IfcSectionedSpine_type = new entity(strings[2169], false, 993, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcSegment_type = new entity(strings[2170], true, 999, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcShellBasedSurfaceModel_type = new entity(strings[2171], false, 1014, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcSimpleProperty_type = new entity(strings[2172], true, 1021, IFC4X3_RC3_IfcProperty_type); + IFC4X3_RC3_IfcSlippageConnectionCondition_type = new entity(strings[2173], false, 1036, IFC4X3_RC3_IfcStructuralConnectionCondition_type); + IFC4X3_RC3_IfcSolidModel_type = new entity(strings[2174], true, 1041, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcStructuralLoadLinearForce_type = new entity(strings[2175], false, 1099, IFC4X3_RC3_IfcStructuralLoadStatic_type); + IFC4X3_RC3_IfcStructuralLoadPlanarForce_type = new entity(strings[2176], false, 1101, IFC4X3_RC3_IfcStructuralLoadStatic_type); + IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type = new entity(strings[2177], false, 1102, IFC4X3_RC3_IfcStructuralLoadStatic_type); + IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[2178], false, 1103, IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type); + IFC4X3_RC3_IfcStructuralLoadSingleForce_type = new entity(strings[2179], false, 1104, IFC4X3_RC3_IfcStructuralLoadStatic_type); + IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type = new entity(strings[2180], false, 1105, IFC4X3_RC3_IfcStructuralLoadSingleForce_type); + IFC4X3_RC3_IfcSubedge_type = new entity(strings[2181], false, 1128, IFC4X3_RC3_IfcEdge_type); + IFC4X3_RC3_IfcSurface_type = new entity(strings[2182], true, 1129, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcSurfaceStyleRendering_type = new entity(strings[2183], false, 1143, IFC4X3_RC3_IfcSurfaceStyleShading_type); + IFC4X3_RC3_IfcSweptAreaSolid_type = new entity(strings[2184], true, 1147, IFC4X3_RC3_IfcSolidModel_type); + IFC4X3_RC3_IfcSweptDiskSolid_type = new entity(strings[2185], false, 1148, IFC4X3_RC3_IfcSolidModel_type); + IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type = new entity(strings[2186], false, 1149, IFC4X3_RC3_IfcSweptDiskSolid_type); + IFC4X3_RC3_IfcSweptSurface_type = new entity(strings[2187], true, 1150, IFC4X3_RC3_IfcSurface_type); + IFC4X3_RC3_IfcTShapeProfileDef_type = new entity(strings[2188], false, 1240, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcTessellatedItem_type = new entity(strings[2189], true, 1183, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcTextLiteral_type = new entity(strings[2190], false, 1189, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcTextLiteralWithExtent_type = new entity(strings[2191], false, 1190, IFC4X3_RC3_IfcTextLiteral_type); + IFC4X3_RC3_IfcTextStyleFontModel_type = new entity(strings[2192], false, 1193, IFC4X3_RC3_IfcPreDefinedTextFont_type); + IFC4X3_RC3_IfcTrapeziumProfileDef_type = new entity(strings[2193], false, 1234, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcTypeObject_type = new entity(strings[2194], false, 1244, IFC4X3_RC3_IfcObjectDefinition_type); + IFC4X3_RC3_IfcTypeProcess_type = new entity(strings[2195], true, 1245, IFC4X3_RC3_IfcTypeObject_type); + IFC4X3_RC3_IfcTypeProduct_type = new entity(strings[2196], false, 1246, IFC4X3_RC3_IfcTypeObject_type); + IFC4X3_RC3_IfcTypeResource_type = new entity(strings[2197], true, 1247, IFC4X3_RC3_IfcTypeObject_type); + IFC4X3_RC3_IfcUShapeProfileDef_type = new entity(strings[2198], false, 1258, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcVector_type = new entity(strings[2199], false, 1264, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcVertexLoop_type = new entity(strings[2200], false, 1267, IFC4X3_RC3_IfcLoop_type); + IFC4X3_RC3_IfcWindowStyle_type = new entity(strings[2201], false, 1301, IFC4X3_RC3_IfcTypeProduct_type); + IFC4X3_RC3_IfcZShapeProfileDef_type = new entity(strings[2202], false, 1316, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcClassificationReferenceSelect_type = new select_type(strings[2203], 171, { + IFC4X3_RC3_IfcClassification_type, + IFC4X3_RC3_IfcClassificationReference_type + }); + IFC4X3_RC3_IfcClassificationSelect_type = new select_type(strings[2204], 172, { + IFC4X3_RC3_IfcClassification_type, + IFC4X3_RC3_IfcClassificationReference_type + }); + IFC4X3_RC3_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[2205], 247, { + IFC4X3_RC3_IfcCoordinateReferenceSystem_type, + IFC4X3_RC3_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC3_IfcDefinitionSelect_type = new select_type(strings[2206], 298, { + IFC4X3_RC3_IfcObjectDefinition_type, + IFC4X3_RC3_IfcPropertyDefinition_type + }); + IFC4X3_RC3_IfcDocumentSelect_type = new select_type(strings[2207], 336, { + IFC4X3_RC3_IfcDocumentInformation_type, + IFC4X3_RC3_IfcDocumentReference_type + }); + IFC4X3_RC3_IfcHatchLineDistanceSelect_type = new select_type(strings[2208], 532, { + IFC4X3_RC3_IfcPositiveLengthMeasure_type, + IFC4X3_RC3_IfcVector_type + }); + IFC4X3_RC3_IfcMeasureValue_type = new select_type(strings[2209], 660, { + IFC4X3_RC3_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC3_IfcAreaMeasure_type, + IFC4X3_RC3_IfcComplexNumber_type, + IFC4X3_RC3_IfcContextDependentMeasure_type, + IFC4X3_RC3_IfcCountMeasure_type, + IFC4X3_RC3_IfcDescriptiveMeasure_type, + IFC4X3_RC3_IfcElectricCurrentMeasure_type, + IFC4X3_RC3_IfcLengthMeasure_type, + IFC4X3_RC3_IfcLuminousIntensityMeasure_type, + IFC4X3_RC3_IfcMassMeasure_type, + IFC4X3_RC3_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC3_IfcNormalisedRatioMeasure_type, + IFC4X3_RC3_IfcNumericMeasure_type, + IFC4X3_RC3_IfcParameterValue_type, + IFC4X3_RC3_IfcPlaneAngleMeasure_type, + IFC4X3_RC3_IfcPositiveLengthMeasure_type, + IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC3_IfcPositiveRatioMeasure_type, + IFC4X3_RC3_IfcRatioMeasure_type, + IFC4X3_RC3_IfcSolidAngleMeasure_type, + IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC3_IfcTimeMeasure_type, + IFC4X3_RC3_IfcVolumeMeasure_type + }); + IFC4X3_RC3_IfcPointOrVertexPoint_type = new select_type(strings[2210], 776, { + IFC4X3_RC3_IfcPoint_type, + IFC4X3_RC3_IfcVertexPoint_type + }); + IFC4X3_RC3_IfcProductRepresentationSelect_type = new select_type(strings[2211], 811, { + IFC4X3_RC3_IfcProductDefinitionShape_type, + IFC4X3_RC3_IfcRepresentationMap_type + }); + IFC4X3_RC3_IfcPropertySetDefinitionSet_type = new type_declaration(strings[2212], 836, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertySetDefinition_type))); + IFC4X3_RC3_IfcResourceObjectSelect_type = new select_type(strings[2213], 964, { + IFC4X3_RC3_IfcActorRole_type, + IFC4X3_RC3_IfcAppliedValue_type, + IFC4X3_RC3_IfcApproval_type, + IFC4X3_RC3_IfcConstraint_type, + IFC4X3_RC3_IfcContextDependentUnit_type, + IFC4X3_RC3_IfcConversionBasedUnit_type, + IFC4X3_RC3_IfcExternalInformation_type, + IFC4X3_RC3_IfcExternalReference_type, + IFC4X3_RC3_IfcMaterialDefinition_type, + IFC4X3_RC3_IfcOrganization_type, + IFC4X3_RC3_IfcPerson_type, + IFC4X3_RC3_IfcPersonAndOrganization_type, + IFC4X3_RC3_IfcPhysicalQuantity_type, + IFC4X3_RC3_IfcProfileDef_type, + IFC4X3_RC3_IfcPropertyAbstraction_type, + IFC4X3_RC3_IfcShapeAspect_type, + IFC4X3_RC3_IfcTimeSeries_type + }); + IFC4X3_RC3_IfcTextFontSelect_type = new select_type(strings[2214], 1188, { + IFC4X3_RC3_IfcExternallyDefinedTextFont_type, + IFC4X3_RC3_IfcPreDefinedTextFont_type + }); + IFC4X3_RC3_IfcValue_type = new select_type(strings[2215], 1259, { + IFC4X3_RC3_IfcDerivedMeasureValue_type, + IFC4X3_RC3_IfcMeasureValue_type, + IFC4X3_RC3_IfcSimpleValue_type + }); + IFC4X3_RC3_IfcAdvancedFace_type = new entity(strings[2216], false, 16, IFC4X3_RC3_IfcFaceSurface_type); + IFC4X3_RC3_IfcAnnotationFillArea_type = new entity(strings[2217], false, 47, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type = new entity(strings[2218], false, 63, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcAxis1Placement_type = new entity(strings[2219], false, 67, IFC4X3_RC3_IfcPlacement_type); + IFC4X3_RC3_IfcAxis2Placement2D_type = new entity(strings[2220], false, 69, IFC4X3_RC3_IfcPlacement_type); + IFC4X3_RC3_IfcAxis2Placement3D_type = new entity(strings[2221], false, 70, IFC4X3_RC3_IfcPlacement_type); + IFC4X3_RC3_IfcAxis2PlacementLinear_type = new entity(strings[2222], false, 71, IFC4X3_RC3_IfcPlacement_type); + IFC4X3_RC3_IfcBooleanResult_type = new entity(strings[2223], false, 92, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcBoundedSurface_type = new entity(strings[2224], true, 101, IFC4X3_RC3_IfcSurface_type); + IFC4X3_RC3_IfcBoundingBox_type = new entity(strings[2225], false, 102, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcBoxedHalfSpace_type = new entity(strings[2226], false, 104, IFC4X3_RC3_IfcHalfSpaceSolid_type); + IFC4X3_RC3_IfcCShapeProfileDef_type = new entity(strings[2227], false, 267, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcCartesianPoint_type = new entity(strings[2228], false, 147, IFC4X3_RC3_IfcPoint_type); + IFC4X3_RC3_IfcCartesianPointList_type = new entity(strings[2229], true, 148, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcCartesianPointList2D_type = new entity(strings[2230], false, 149, IFC4X3_RC3_IfcCartesianPointList_type); + IFC4X3_RC3_IfcCartesianPointList3D_type = new entity(strings[2231], false, 150, IFC4X3_RC3_IfcCartesianPointList_type); + IFC4X3_RC3_IfcCartesianTransformationOperator_type = new entity(strings[2232], true, 151, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcCartesianTransformationOperator2D_type = new entity(strings[2233], false, 152, IFC4X3_RC3_IfcCartesianTransformationOperator_type); + IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[2234], false, 153, IFC4X3_RC3_IfcCartesianTransformationOperator2D_type); + IFC4X3_RC3_IfcCartesianTransformationOperator3D_type = new entity(strings[2235], false, 154, IFC4X3_RC3_IfcCartesianTransformationOperator_type); + IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[2236], false, 155, IFC4X3_RC3_IfcCartesianTransformationOperator3D_type); + IFC4X3_RC3_IfcCircleProfileDef_type = new entity(strings[2237], false, 166, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcClosedShell_type = new entity(strings[2238], false, 173, IFC4X3_RC3_IfcConnectedFaceSet_type); + IFC4X3_RC3_IfcColourRgb_type = new entity(strings[2239], false, 180, IFC4X3_RC3_IfcColourSpecification_type); + IFC4X3_RC3_IfcComplexProperty_type = new entity(strings[2240], false, 191, IFC4X3_RC3_IfcProperty_type); + IFC4X3_RC3_IfcCompositeCurveSegment_type = new entity(strings[2241], false, 196, IFC4X3_RC3_IfcSegment_type); + IFC4X3_RC3_IfcConstructionResourceType_type = new entity(strings[2242], true, 226, IFC4X3_RC3_IfcTypeResource_type); + IFC4X3_RC3_IfcContext_type = new entity(strings[2243], true, 227, IFC4X3_RC3_IfcObjectDefinition_type); + IFC4X3_RC3_IfcCrewResourceType_type = new entity(strings[2244], false, 262, IFC4X3_RC3_IfcConstructionResourceType_type); + IFC4X3_RC3_IfcCsgPrimitive3D_type = new entity(strings[2245], true, 264, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcCsgSolid_type = new entity(strings[2246], false, 266, IFC4X3_RC3_IfcSolidModel_type); + IFC4X3_RC3_IfcCurve_type = new entity(strings[2247], true, 273, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcCurveBoundedPlane_type = new entity(strings[2248], false, 274, IFC4X3_RC3_IfcBoundedSurface_type); + IFC4X3_RC3_IfcCurveBoundedSurface_type = new entity(strings[2249], false, 275, IFC4X3_RC3_IfcBoundedSurface_type); + IFC4X3_RC3_IfcCurveSegment_type = new entity(strings[2250], false, 281, IFC4X3_RC3_IfcSegment_type); + IFC4X3_RC3_IfcDirection_type = new entity(strings[2251], false, 307, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type = new entity(strings[2252], true, 309, IFC4X3_RC3_IfcSweptAreaSolid_type); + IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type = new entity(strings[2253], true, 311, IFC4X3_RC3_IfcSweptAreaSolid_type); + IFC4X3_RC3_IfcDoorStyle_type = new entity(strings[2254], false, 344, IFC4X3_RC3_IfcTypeProduct_type); + IFC4X3_RC3_IfcEdgeLoop_type = new entity(strings[2255], false, 371, IFC4X3_RC3_IfcLoop_type); + IFC4X3_RC3_IfcElementQuantity_type = new entity(strings[2256], false, 407, IFC4X3_RC3_IfcQuantitySet_type); + IFC4X3_RC3_IfcElementType_type = new entity(strings[2257], true, 408, IFC4X3_RC3_IfcTypeProduct_type); + IFC4X3_RC3_IfcElementarySurface_type = new entity(strings[2258], true, 400, IFC4X3_RC3_IfcSurface_type); + IFC4X3_RC3_IfcEllipseProfileDef_type = new entity(strings[2259], false, 410, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcEventType_type = new entity(strings[2260], false, 426, IFC4X3_RC3_IfcTypeProcess_type); + IFC4X3_RC3_IfcExtrudedAreaSolid_type = new entity(strings[2261], false, 438, IFC4X3_RC3_IfcSweptAreaSolid_type); + IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type = new entity(strings[2262], false, 439, IFC4X3_RC3_IfcExtrudedAreaSolid_type); + IFC4X3_RC3_IfcFaceBasedSurfaceModel_type = new entity(strings[2263], false, 441, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcFillAreaStyleHatching_type = new entity(strings[2264], false, 463, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcFillAreaStyleTiles_type = new entity(strings[2265], false, 464, IFC4X3_RC3_IfcGeometricRepresentationItem_type); + IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[2266], false, 472, IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC3_IfcFurnishingElementType_type = new entity(strings[2267], false, 503, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcFurnitureType_type = new entity(strings[2268], false, 505, IFC4X3_RC3_IfcFurnishingElementType_type); + IFC4X3_RC3_IfcGeographicElementType_type = new entity(strings[2269], false, 508, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcGeometricCurveSet_type = new entity(strings[2270], false, 510, IFC4X3_RC3_IfcGeometricSet_type); + IFC4X3_RC3_IfcIShapeProfileDef_type = new entity(strings[2271], false, 569, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type = new entity(strings[2272], false, 548, IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type); + IFC4X3_RC3_IfcIndexedPolygonalFace_type = new entity(strings[2273], false, 551, IFC4X3_RC3_IfcTessellatedItem_type); + IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[2274], false, 552, IFC4X3_RC3_IfcIndexedPolygonalFace_type); + IFC4X3_RC3_IfcLShapeProfileDef_type = new entity(strings[2275], false, 624, IFC4X3_RC3_IfcParameterizedProfileDef_type); + IFC4X3_RC3_IfcLaborResourceType_type = new entity(strings[2276], false, 580, IFC4X3_RC3_IfcConstructionResourceType_type); + IFC4X3_RC3_IfcLine_type = new entity(strings[2277], false, 607, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcManifoldSolidBrep_type = new entity(strings[2278], true, 630, IFC4X3_RC3_IfcSolidModel_type); + IFC4X3_RC3_IfcObject_type = new entity(strings[2279], true, 704, IFC4X3_RC3_IfcObjectDefinition_type); + IFC4X3_RC3_IfcOffsetCurve_type = new entity(strings[2280], true, 713, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcOffsetCurve2D_type = new entity(strings[2281], false, 714, IFC4X3_RC3_IfcOffsetCurve_type); + IFC4X3_RC3_IfcOffsetCurve3D_type = new entity(strings[2282], false, 715, IFC4X3_RC3_IfcOffsetCurve_type); + IFC4X3_RC3_IfcOffsetCurveByDistances_type = new entity(strings[2283], false, 716, IFC4X3_RC3_IfcOffsetCurve_type); + IFC4X3_RC3_IfcPcurve_type = new entity(strings[2284], false, 736, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcPlanarBox_type = new entity(strings[2285], false, 762, IFC4X3_RC3_IfcPlanarExtent_type); + IFC4X3_RC3_IfcPlane_type = new entity(strings[2286], false, 765, IFC4X3_RC3_IfcElementarySurface_type); + IFC4X3_RC3_IfcPolynomialCurve_type = new entity(strings[2287], false, 781, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcPreDefinedColour_type = new entity(strings[2288], true, 790, IFC4X3_RC3_IfcPreDefinedItem_type); + IFC4X3_RC3_IfcPreDefinedCurveFont_type = new entity(strings[2289], true, 791, IFC4X3_RC3_IfcPreDefinedItem_type); + IFC4X3_RC3_IfcPreDefinedPropertySet_type = new entity(strings[2290], true, 794, IFC4X3_RC3_IfcPropertySetDefinition_type); + IFC4X3_RC3_IfcProcedureType_type = new entity(strings[2291], false, 804, IFC4X3_RC3_IfcTypeProcess_type); + IFC4X3_RC3_IfcProcess_type = new entity(strings[2292], true, 806, IFC4X3_RC3_IfcObject_type); + IFC4X3_RC3_IfcProduct_type = new entity(strings[2293], true, 808, IFC4X3_RC3_IfcObject_type); + IFC4X3_RC3_IfcProject_type = new entity(strings[2294], false, 816, IFC4X3_RC3_IfcContext_type); + IFC4X3_RC3_IfcProjectLibrary_type = new entity(strings[2295], false, 821, IFC4X3_RC3_IfcContext_type); + IFC4X3_RC3_IfcPropertyBoundedValue_type = new entity(strings[2296], false, 826, IFC4X3_RC3_IfcSimpleProperty_type); + IFC4X3_RC3_IfcPropertyEnumeratedValue_type = new entity(strings[2297], false, 829, IFC4X3_RC3_IfcSimpleProperty_type); + IFC4X3_RC3_IfcPropertyListValue_type = new entity(strings[2298], false, 831, IFC4X3_RC3_IfcSimpleProperty_type); + IFC4X3_RC3_IfcPropertyReferenceValue_type = new entity(strings[2299], false, 832, IFC4X3_RC3_IfcSimpleProperty_type); + IFC4X3_RC3_IfcPropertySet_type = new entity(strings[2300], false, 833, IFC4X3_RC3_IfcPropertySetDefinition_type); + IFC4X3_RC3_IfcPropertySetTemplate_type = new entity(strings[2301], false, 837, IFC4X3_RC3_IfcPropertyTemplateDefinition_type); + IFC4X3_RC3_IfcPropertySingleValue_type = new entity(strings[2302], false, 839, IFC4X3_RC3_IfcSimpleProperty_type); + IFC4X3_RC3_IfcPropertyTableValue_type = new entity(strings[2303], false, 840, IFC4X3_RC3_IfcSimpleProperty_type); + IFC4X3_RC3_IfcPropertyTemplate_type = new entity(strings[2304], true, 841, IFC4X3_RC3_IfcPropertyTemplateDefinition_type); + IFC4X3_RC3_IfcProxy_type = new entity(strings[2305], false, 849, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcRectangleHollowProfileDef_type = new entity(strings[2306], false, 880, IFC4X3_RC3_IfcRectangleProfileDef_type); + IFC4X3_RC3_IfcRectangularPyramid_type = new entity(strings[2307], false, 882, IFC4X3_RC3_IfcCsgPrimitive3D_type); + IFC4X3_RC3_IfcRectangularTrimmedSurface_type = new entity(strings[2308], false, 883, IFC4X3_RC3_IfcBoundedSurface_type); + IFC4X3_RC3_IfcReinforcementDefinitionProperties_type = new entity(strings[2309], false, 894, IFC4X3_RC3_IfcPreDefinedPropertySet_type); + IFC4X3_RC3_IfcRelAssigns_type = new entity(strings[2310], true, 906, IFC4X3_RC3_IfcRelationship_type); + IFC4X3_RC3_IfcRelAssignsToActor_type = new entity(strings[2311], false, 907, IFC4X3_RC3_IfcRelAssigns_type); + IFC4X3_RC3_IfcRelAssignsToControl_type = new entity(strings[2312], false, 908, IFC4X3_RC3_IfcRelAssigns_type); + IFC4X3_RC3_IfcRelAssignsToGroup_type = new entity(strings[2313], false, 909, IFC4X3_RC3_IfcRelAssigns_type); + IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type = new entity(strings[2314], false, 910, IFC4X3_RC3_IfcRelAssignsToGroup_type); + IFC4X3_RC3_IfcRelAssignsToProcess_type = new entity(strings[2315], false, 911, IFC4X3_RC3_IfcRelAssigns_type); + IFC4X3_RC3_IfcRelAssignsToProduct_type = new entity(strings[2316], false, 912, IFC4X3_RC3_IfcRelAssigns_type); + IFC4X3_RC3_IfcRelAssignsToResource_type = new entity(strings[2317], false, 913, IFC4X3_RC3_IfcRelAssigns_type); + IFC4X3_RC3_IfcRelAssociates_type = new entity(strings[2318], true, 914, IFC4X3_RC3_IfcRelationship_type); + IFC4X3_RC3_IfcRelAssociatesApproval_type = new entity(strings[2319], false, 915, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelAssociatesClassification_type = new entity(strings[2320], false, 916, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelAssociatesConstraint_type = new entity(strings[2321], false, 917, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelAssociatesDocument_type = new entity(strings[2322], false, 918, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelAssociatesLibrary_type = new entity(strings[2323], false, 919, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelAssociatesMaterial_type = new entity(strings[2324], false, 920, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelAssociatesProfileDef_type = new entity(strings[2325], false, 921, IFC4X3_RC3_IfcRelAssociates_type); + IFC4X3_RC3_IfcRelConnects_type = new entity(strings[2326], true, 923, IFC4X3_RC3_IfcRelationship_type); + IFC4X3_RC3_IfcRelConnectsElements_type = new entity(strings[2327], false, 924, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelConnectsPathElements_type = new entity(strings[2328], false, 925, IFC4X3_RC3_IfcRelConnectsElements_type); + IFC4X3_RC3_IfcRelConnectsPortToElement_type = new entity(strings[2329], false, 927, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelConnectsPorts_type = new entity(strings[2330], false, 926, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelConnectsStructuralActivity_type = new entity(strings[2331], false, 928, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelConnectsStructuralMember_type = new entity(strings[2332], false, 929, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelConnectsWithEccentricity_type = new entity(strings[2333], false, 930, IFC4X3_RC3_IfcRelConnectsStructuralMember_type); + IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type = new entity(strings[2334], false, 931, IFC4X3_RC3_IfcRelConnectsElements_type); + IFC4X3_RC3_IfcRelContainedInSpatialStructure_type = new entity(strings[2335], false, 932, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelCoversBldgElements_type = new entity(strings[2336], false, 933, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelCoversSpaces_type = new entity(strings[2337], false, 934, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelDeclares_type = new entity(strings[2338], false, 935, IFC4X3_RC3_IfcRelationship_type); + IFC4X3_RC3_IfcRelDecomposes_type = new entity(strings[2339], true, 936, IFC4X3_RC3_IfcRelationship_type); + IFC4X3_RC3_IfcRelDefines_type = new entity(strings[2340], true, 937, IFC4X3_RC3_IfcRelationship_type); + IFC4X3_RC3_IfcRelDefinesByObject_type = new entity(strings[2341], false, 938, IFC4X3_RC3_IfcRelDefines_type); + IFC4X3_RC3_IfcRelDefinesByProperties_type = new entity(strings[2342], false, 939, IFC4X3_RC3_IfcRelDefines_type); + IFC4X3_RC3_IfcRelDefinesByTemplate_type = new entity(strings[2343], false, 940, IFC4X3_RC3_IfcRelDefines_type); + IFC4X3_RC3_IfcRelDefinesByType_type = new entity(strings[2344], false, 941, IFC4X3_RC3_IfcRelDefines_type); + IFC4X3_RC3_IfcRelFillsElement_type = new entity(strings[2345], false, 942, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelFlowControlElements_type = new entity(strings[2346], false, 943, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelInterferesElements_type = new entity(strings[2347], false, 944, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelNests_type = new entity(strings[2348], false, 945, IFC4X3_RC3_IfcRelDecomposes_type); + IFC4X3_RC3_IfcRelPositions_type = new entity(strings[2349], false, 946, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelProjectsElement_type = new entity(strings[2350], false, 947, IFC4X3_RC3_IfcRelDecomposes_type); + IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type = new entity(strings[2351], false, 948, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelSequence_type = new entity(strings[2352], false, 949, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelServicesBuildings_type = new entity(strings[2353], false, 950, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelSpaceBoundary_type = new entity(strings[2354], false, 951, IFC4X3_RC3_IfcRelConnects_type); + IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type = new entity(strings[2355], false, 952, IFC4X3_RC3_IfcRelSpaceBoundary_type); + IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[2356], false, 953, IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type); + IFC4X3_RC3_IfcRelVoidsElement_type = new entity(strings[2357], false, 954, IFC4X3_RC3_IfcRelDecomposes_type); + IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[2358], false, 955, IFC4X3_RC3_IfcCompositeCurveSegment_type); + IFC4X3_RC3_IfcResource_type = new entity(strings[2359], true, 960, IFC4X3_RC3_IfcObject_type); + IFC4X3_RC3_IfcRevolvedAreaSolid_type = new entity(strings[2360], false, 967, IFC4X3_RC3_IfcSweptAreaSolid_type); + IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type = new entity(strings[2361], false, 968, IFC4X3_RC3_IfcRevolvedAreaSolid_type); + IFC4X3_RC3_IfcRightCircularCone_type = new entity(strings[2362], false, 969, IFC4X3_RC3_IfcCsgPrimitive3D_type); + IFC4X3_RC3_IfcRightCircularCylinder_type = new entity(strings[2363], false, 970, IFC4X3_RC3_IfcCsgPrimitive3D_type); + IFC4X3_RC3_IfcSectionedSolid_type = new entity(strings[2364], true, 991, IFC4X3_RC3_IfcSolidModel_type); + IFC4X3_RC3_IfcSectionedSolidHorizontal_type = new entity(strings[2365], false, 992, IFC4X3_RC3_IfcSectionedSolid_type); + IFC4X3_RC3_IfcSectionedSurface_type = new entity(strings[2366], false, 994, IFC4X3_RC3_IfcSurface_type); + IFC4X3_RC3_IfcSimplePropertyTemplate_type = new entity(strings[2367], false, 1022, IFC4X3_RC3_IfcPropertyTemplate_type); + IFC4X3_RC3_IfcSpatialElement_type = new entity(strings[2368], true, 1055, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcSpatialElementType_type = new entity(strings[2369], true, 1056, IFC4X3_RC3_IfcTypeProduct_type); + IFC4X3_RC3_IfcSpatialStructureElement_type = new entity(strings[2370], true, 1058, IFC4X3_RC3_IfcSpatialElement_type); + IFC4X3_RC3_IfcSpatialStructureElementType_type = new entity(strings[2371], true, 1059, IFC4X3_RC3_IfcSpatialElementType_type); + IFC4X3_RC3_IfcSpatialZone_type = new entity(strings[2372], false, 1060, IFC4X3_RC3_IfcSpatialElement_type); + IFC4X3_RC3_IfcSpatialZoneType_type = new entity(strings[2373], false, 1061, IFC4X3_RC3_IfcSpatialElementType_type); + IFC4X3_RC3_IfcSphere_type = new entity(strings[2374], false, 1067, IFC4X3_RC3_IfcCsgPrimitive3D_type); + IFC4X3_RC3_IfcSphericalSurface_type = new entity(strings[2375], false, 1068, IFC4X3_RC3_IfcElementarySurface_type); + IFC4X3_RC3_IfcSpiral_type = new entity(strings[2376], true, 1069, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcStructuralActivity_type = new entity(strings[2377], true, 1081, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcStructuralItem_type = new entity(strings[2378], true, 1093, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcStructuralMember_type = new entity(strings[2379], true, 1108, IFC4X3_RC3_IfcStructuralItem_type); + IFC4X3_RC3_IfcStructuralReaction_type = new entity(strings[2380], true, 1113, IFC4X3_RC3_IfcStructuralActivity_type); + IFC4X3_RC3_IfcStructuralSurfaceMember_type = new entity(strings[2381], false, 1118, IFC4X3_RC3_IfcStructuralMember_type); + IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type = new entity(strings[2382], false, 1120, IFC4X3_RC3_IfcStructuralSurfaceMember_type); + IFC4X3_RC3_IfcStructuralSurfaceReaction_type = new entity(strings[2383], false, 1121, IFC4X3_RC3_IfcStructuralReaction_type); + IFC4X3_RC3_IfcSubContractResourceType_type = new entity(strings[2384], false, 1126, IFC4X3_RC3_IfcConstructionResourceType_type); + IFC4X3_RC3_IfcSurfaceCurve_type = new entity(strings[2385], false, 1130, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[2386], false, 1131, IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type = new entity(strings[2387], false, 1134, IFC4X3_RC3_IfcSweptSurface_type); + IFC4X3_RC3_IfcSurfaceOfRevolution_type = new entity(strings[2388], false, 1135, IFC4X3_RC3_IfcSweptSurface_type); + IFC4X3_RC3_IfcSystemFurnitureElementType_type = new entity(strings[2389], false, 1156, IFC4X3_RC3_IfcFurnishingElementType_type); + IFC4X3_RC3_IfcTask_type = new entity(strings[2390], false, 1164, IFC4X3_RC3_IfcProcess_type); + IFC4X3_RC3_IfcTaskType_type = new entity(strings[2391], false, 1168, IFC4X3_RC3_IfcTypeProcess_type); + IFC4X3_RC3_IfcTessellatedFaceSet_type = new entity(strings[2392], true, 1182, IFC4X3_RC3_IfcTessellatedItem_type); + IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type = new entity(strings[2393], false, 1208, IFC4X3_RC3_IfcSpiral_type); + IFC4X3_RC3_IfcToroidalSurface_type = new entity(strings[2394], false, 1219, IFC4X3_RC3_IfcElementarySurface_type); + IFC4X3_RC3_IfcTransportElementType_type = new entity(strings[2395], false, 1232, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcTriangulatedFaceSet_type = new entity(strings[2396], false, 1235, IFC4X3_RC3_IfcTessellatedFaceSet_type); + IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type = new entity(strings[2397], false, 1236, IFC4X3_RC3_IfcTriangulatedFaceSet_type); + IFC4X3_RC3_IfcWindowLiningProperties_type = new entity(strings[2398], false, 1296, IFC4X3_RC3_IfcPreDefinedPropertySet_type); + IFC4X3_RC3_IfcWindowPanelProperties_type = new entity(strings[2399], false, 1299, IFC4X3_RC3_IfcPreDefinedPropertySet_type); + IFC4X3_RC3_IfcAppliedValueSelect_type = new select_type(strings[2400], 51, { + IFC4X3_RC3_IfcMeasureWithUnit_type, + IFC4X3_RC3_IfcReference_type, + IFC4X3_RC3_IfcValue_type + }); + IFC4X3_RC3_IfcAxis2Placement_type = new select_type(strings[2401], 68, { + IFC4X3_RC3_IfcAxis2Placement2D_type, + IFC4X3_RC3_IfcAxis2Placement3D_type + }); + IFC4X3_RC3_IfcBooleanOperand_type = new select_type(strings[2402], 90, { + IFC4X3_RC3_IfcBooleanResult_type, + IFC4X3_RC3_IfcCsgPrimitive3D_type, + IFC4X3_RC3_IfcHalfSpaceSolid_type, + IFC4X3_RC3_IfcSolidModel_type, + IFC4X3_RC3_IfcTessellatedFaceSet_type + }); + IFC4X3_RC3_IfcColour_type = new select_type(strings[2403], 178, { + IFC4X3_RC3_IfcColourSpecification_type, + IFC4X3_RC3_IfcPreDefinedColour_type + }); + IFC4X3_RC3_IfcColourOrFactor_type = new select_type(strings[2404], 179, { + IFC4X3_RC3_IfcColourRgb_type, + IFC4X3_RC3_IfcNormalisedRatioMeasure_type + }); + IFC4X3_RC3_IfcCsgSelect_type = new select_type(strings[2405], 265, { + IFC4X3_RC3_IfcBooleanResult_type, + IFC4X3_RC3_IfcCsgPrimitive3D_type + }); + IFC4X3_RC3_IfcCurveStyleFontSelect_type = new select_type(strings[2406], 286, { + IFC4X3_RC3_IfcCurveStyleFont_type, + IFC4X3_RC3_IfcPreDefinedCurveFont_type + }); + IFC4X3_RC3_IfcFillStyleSelect_type = new select_type(strings[2407], 465, { + IFC4X3_RC3_IfcColour_type, + IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC3_IfcFillAreaStyleHatching_type, + IFC4X3_RC3_IfcFillAreaStyleTiles_type + }); + IFC4X3_RC3_IfcGeometricSetSelect_type = new select_type(strings[2408], 516, { + IFC4X3_RC3_IfcCurve_type, + IFC4X3_RC3_IfcPoint_type, + IFC4X3_RC3_IfcSurface_type + }); + IFC4X3_RC3_IfcGridPlacementDirectionSelect_type = new select_type(strings[2409], 528, { + IFC4X3_RC3_IfcDirection_type, + IFC4X3_RC3_IfcVirtualGridIntersection_type + }); + IFC4X3_RC3_IfcMetricValueSelect_type = new select_type(strings[2410], 673, { + IFC4X3_RC3_IfcAppliedValue_type, + IFC4X3_RC3_IfcMeasureWithUnit_type, + IFC4X3_RC3_IfcReference_type, + IFC4X3_RC3_IfcTable_type, + IFC4X3_RC3_IfcTimeSeries_type, + IFC4X3_RC3_IfcValue_type + }); + IFC4X3_RC3_IfcProcessSelect_type = new select_type(strings[2411], 807, { + IFC4X3_RC3_IfcProcess_type, + IFC4X3_RC3_IfcTypeProcess_type + }); + IFC4X3_RC3_IfcProductSelect_type = new select_type(strings[2412], 812, { + IFC4X3_RC3_IfcProduct_type, + IFC4X3_RC3_IfcTypeProduct_type + }); + IFC4X3_RC3_IfcPropertySetDefinitionSelect_type = new select_type(strings[2413], 835, { + IFC4X3_RC3_IfcPropertySetDefinition_type, + IFC4X3_RC3_IfcPropertySetDefinitionSet_type + }); + IFC4X3_RC3_IfcResourceSelect_type = new select_type(strings[2414], 965, { + IFC4X3_RC3_IfcResource_type, + IFC4X3_RC3_IfcTypeResource_type + }); + IFC4X3_RC3_IfcShell_type = new select_type(strings[2415], 1013, { + IFC4X3_RC3_IfcClosedShell_type, + IFC4X3_RC3_IfcOpenShell_type + }); + IFC4X3_RC3_IfcSolidOrShell_type = new select_type(strings[2416], 1042, { + IFC4X3_RC3_IfcClosedShell_type, + IFC4X3_RC3_IfcSolidModel_type + }); + IFC4X3_RC3_IfcSurfaceOrFaceSurface_type = new select_type(strings[2417], 1136, { + IFC4X3_RC3_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC3_IfcFaceSurface_type, + IFC4X3_RC3_IfcSurface_type + }); + IFC4X3_RC3_IfcTrimmingSelect_type = new select_type(strings[2418], 1239, { + IFC4X3_RC3_IfcCartesianPoint_type, + IFC4X3_RC3_IfcParameterValue_type + }); + IFC4X3_RC3_IfcVectorOrDirection_type = new select_type(strings[2419], 1265, { + IFC4X3_RC3_IfcDirection_type, + IFC4X3_RC3_IfcVector_type + }); + IFC4X3_RC3_IfcActor_type = new entity(strings[2420], false, 6, IFC4X3_RC3_IfcObject_type); + IFC4X3_RC3_IfcAdvancedBrep_type = new entity(strings[2421], false, 14, IFC4X3_RC3_IfcManifoldSolidBrep_type); + IFC4X3_RC3_IfcAdvancedBrepWithVoids_type = new entity(strings[2422], false, 15, IFC4X3_RC3_IfcAdvancedBrep_type); + IFC4X3_RC3_IfcAnnotation_type = new entity(strings[2423], false, 46, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcBSplineSurface_type = new entity(strings[2424], true, 111, IFC4X3_RC3_IfcBoundedSurface_type); + IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type = new entity(strings[2425], false, 113, IFC4X3_RC3_IfcBSplineSurface_type); + IFC4X3_RC3_IfcBlock_type = new entity(strings[2426], false, 84, IFC4X3_RC3_IfcCsgPrimitive3D_type); + IFC4X3_RC3_IfcBooleanClippingResult_type = new entity(strings[2427], false, 89, IFC4X3_RC3_IfcBooleanResult_type); + IFC4X3_RC3_IfcBoundedCurve_type = new entity(strings[2428], true, 100, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcBuildingStorey_type = new entity(strings[2429], false, 121, IFC4X3_RC3_IfcSpatialStructureElement_type); + IFC4X3_RC3_IfcBuiltElementType_type = new entity(strings[2430], false, 125, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcChimneyType_type = new entity(strings[2431], false, 162, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcCircleHollowProfileDef_type = new entity(strings[2432], false, 165, IFC4X3_RC3_IfcCircleProfileDef_type); + IFC4X3_RC3_IfcCivilElementType_type = new entity(strings[2433], false, 168, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcClothoid_type = new entity(strings[2434], false, 174, IFC4X3_RC3_IfcSpiral_type); + IFC4X3_RC3_IfcColumnType_type = new entity(strings[2435], false, 185, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcComplexPropertyTemplate_type = new entity(strings[2436], false, 192, IFC4X3_RC3_IfcPropertyTemplate_type); + IFC4X3_RC3_IfcCompositeCurve_type = new entity(strings[2437], false, 194, IFC4X3_RC3_IfcBoundedCurve_type); + IFC4X3_RC3_IfcCompositeCurveOnSurface_type = new entity(strings[2438], false, 195, IFC4X3_RC3_IfcCompositeCurve_type); + IFC4X3_RC3_IfcConic_type = new entity(strings[2439], true, 205, IFC4X3_RC3_IfcCurve_type); + IFC4X3_RC3_IfcConstructionEquipmentResourceType_type = new entity(strings[2440], false, 217, IFC4X3_RC3_IfcConstructionResourceType_type); + IFC4X3_RC3_IfcConstructionMaterialResourceType_type = new entity(strings[2441], false, 220, IFC4X3_RC3_IfcConstructionResourceType_type); + IFC4X3_RC3_IfcConstructionProductResourceType_type = new entity(strings[2442], false, 223, IFC4X3_RC3_IfcConstructionResourceType_type); + IFC4X3_RC3_IfcConstructionResource_type = new entity(strings[2443], true, 225, IFC4X3_RC3_IfcResource_type); + IFC4X3_RC3_IfcControl_type = new entity(strings[2444], true, 230, IFC4X3_RC3_IfcObject_type); + IFC4X3_RC3_IfcCosine_type = new entity(strings[2445], false, 248, IFC4X3_RC3_IfcSpiral_type); + IFC4X3_RC3_IfcCostItem_type = new entity(strings[2446], false, 249, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcCostSchedule_type = new entity(strings[2447], false, 251, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcCourseType_type = new entity(strings[2448], false, 256, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcCoveringType_type = new entity(strings[2449], false, 259, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcCrewResource_type = new entity(strings[2450], false, 261, IFC4X3_RC3_IfcConstructionResource_type); + IFC4X3_RC3_IfcCurtainWallType_type = new entity(strings[2451], false, 270, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcCylindricalSurface_type = new entity(strings[2452], false, 287, IFC4X3_RC3_IfcElementarySurface_type); + IFC4X3_RC3_IfcDeepFoundationType_type = new entity(strings[2453], false, 297, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type = new entity(strings[2454], false, 310, IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type); + IFC4X3_RC3_IfcDistributionElementType_type = new entity(strings[2455], false, 325, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcDistributionFlowElementType_type = new entity(strings[2456], true, 327, IFC4X3_RC3_IfcDistributionElementType_type); + IFC4X3_RC3_IfcDoorLiningProperties_type = new entity(strings[2457], false, 339, IFC4X3_RC3_IfcPreDefinedPropertySet_type); + IFC4X3_RC3_IfcDoorPanelProperties_type = new entity(strings[2458], false, 342, IFC4X3_RC3_IfcPreDefinedPropertySet_type); + IFC4X3_RC3_IfcDoorType_type = new entity(strings[2459], false, 347, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcDraughtingPreDefinedColour_type = new entity(strings[2460], false, 351, IFC4X3_RC3_IfcPreDefinedColour_type); + IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2461], false, 352, IFC4X3_RC3_IfcPreDefinedCurveFont_type); + IFC4X3_RC3_IfcElement_type = new entity(strings[2462], true, 399, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcElementAssembly_type = new entity(strings[2463], false, 401, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcElementAssemblyType_type = new entity(strings[2464], false, 402, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcElementComponent_type = new entity(strings[2465], true, 404, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcElementComponentType_type = new entity(strings[2466], true, 405, IFC4X3_RC3_IfcElementType_type); + IFC4X3_RC3_IfcEllipse_type = new entity(strings[2467], false, 409, IFC4X3_RC3_IfcConic_type); + IFC4X3_RC3_IfcEnergyConversionDeviceType_type = new entity(strings[2468], true, 412, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcEngineType_type = new entity(strings[2469], false, 415, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcEvaporativeCoolerType_type = new entity(strings[2470], false, 418, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcEvaporatorType_type = new entity(strings[2471], false, 421, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcEvent_type = new entity(strings[2472], false, 423, IFC4X3_RC3_IfcProcess_type); + IFC4X3_RC3_IfcExternalSpatialStructureElement_type = new entity(strings[2473], true, 437, IFC4X3_RC3_IfcSpatialElement_type); + IFC4X3_RC3_IfcFacetedBrep_type = new entity(strings[2474], false, 445, IFC4X3_RC3_IfcManifoldSolidBrep_type); + IFC4X3_RC3_IfcFacetedBrepWithVoids_type = new entity(strings[2475], false, 446, IFC4X3_RC3_IfcFacetedBrep_type); + IFC4X3_RC3_IfcFacility_type = new entity(strings[2476], false, 447, IFC4X3_RC3_IfcSpatialStructureElement_type); + IFC4X3_RC3_IfcFacilityPart_type = new entity(strings[2477], false, 448, IFC4X3_RC3_IfcSpatialStructureElement_type); + IFC4X3_RC3_IfcFastener_type = new entity(strings[2478], false, 456, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcFastenerType_type = new entity(strings[2479], false, 457, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcFeatureElement_type = new entity(strings[2480], true, 459, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcFeatureElementAddition_type = new entity(strings[2481], true, 460, IFC4X3_RC3_IfcFeatureElement_type); + IFC4X3_RC3_IfcFeatureElementSubtraction_type = new entity(strings[2482], true, 461, IFC4X3_RC3_IfcFeatureElement_type); + IFC4X3_RC3_IfcFlowControllerType_type = new entity(strings[2483], true, 474, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFlowFittingType_type = new entity(strings[2484], true, 477, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFlowMeterType_type = new entity(strings[2485], false, 482, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcFlowMovingDeviceType_type = new entity(strings[2486], true, 485, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFlowSegmentType_type = new entity(strings[2487], true, 487, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFlowStorageDeviceType_type = new entity(strings[2488], true, 489, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFlowTerminalType_type = new entity(strings[2489], true, 491, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFlowTreatmentDeviceType_type = new entity(strings[2490], true, 493, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcFootingType_type = new entity(strings[2491], false, 498, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcFurnishingElement_type = new entity(strings[2492], false, 502, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcFurniture_type = new entity(strings[2493], false, 504, IFC4X3_RC3_IfcFurnishingElement_type); + IFC4X3_RC3_IfcGeographicElement_type = new entity(strings[2494], false, 507, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcGeotechnicalElement_type = new entity(strings[2495], true, 520, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcGeotechnicalStratum_type = new entity(strings[2496], true, 521, IFC4X3_RC3_IfcGeotechnicalElement_type); + IFC4X3_RC3_IfcGradientCurve_type = new entity(strings[2497], false, 524, IFC4X3_RC3_IfcCompositeCurve_type); + IFC4X3_RC3_IfcGroup_type = new entity(strings[2498], false, 530, IFC4X3_RC3_IfcObject_type); + IFC4X3_RC3_IfcHeatExchangerType_type = new entity(strings[2499], false, 534, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcHumidifierType_type = new entity(strings[2500], false, 539, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcImpactProtectionDevice_type = new entity(strings[2501], false, 544, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcImpactProtectionDeviceType_type = new entity(strings[2502], false, 545, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcIndexedPolyCurve_type = new entity(strings[2503], false, 550, IFC4X3_RC3_IfcBoundedCurve_type); + IFC4X3_RC3_IfcInterceptorType_type = new entity(strings[2504], false, 559, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC3_IfcIntersectionCurve_type = new entity(strings[2505], false, 563, IFC4X3_RC3_IfcSurfaceCurve_type); + IFC4X3_RC3_IfcInventory_type = new entity(strings[2506], false, 564, IFC4X3_RC3_IfcGroup_type); + IFC4X3_RC3_IfcJunctionBoxType_type = new entity(strings[2507], false, 572, IFC4X3_RC3_IfcFlowFittingType_type); + IFC4X3_RC3_IfcKerbType_type = new entity(strings[2508], false, 575, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcLaborResource_type = new entity(strings[2509], false, 579, IFC4X3_RC3_IfcConstructionResource_type); + IFC4X3_RC3_IfcLampType_type = new entity(strings[2510], false, 584, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcLightFixtureType_type = new entity(strings[2511], false, 598, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcLinearElement_type = new entity(strings[2512], true, 608, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcLiquidTerminalType_type = new entity(strings[2513], false, 617, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcMarineFacility_type = new entity(strings[2514], false, 633, IFC4X3_RC3_IfcFacility_type); + IFC4X3_RC3_IfcMechanicalFastener_type = new entity(strings[2515], false, 662, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcMechanicalFastenerType_type = new entity(strings[2516], false, 663, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcMedicalDeviceType_type = new entity(strings[2517], false, 666, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcMemberType_type = new entity(strings[2518], false, 670, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type = new entity(strings[2519], false, 676, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcMooringDeviceType_type = new entity(strings[2520], false, 692, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcMotorConnectionType_type = new entity(strings[2521], false, 695, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcNavigationElementType_type = new entity(strings[2522], false, 699, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcOccupant_type = new entity(strings[2523], false, 711, IFC4X3_RC3_IfcActor_type); + IFC4X3_RC3_IfcOpeningElement_type = new entity(strings[2524], false, 718, IFC4X3_RC3_IfcFeatureElementSubtraction_type); + IFC4X3_RC3_IfcOpeningStandardCase_type = new entity(strings[2525], false, 720, IFC4X3_RC3_IfcOpeningElement_type); + IFC4X3_RC3_IfcOutletType_type = new entity(strings[2526], false, 727, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcPavementType_type = new entity(strings[2527], false, 734, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcPerformanceHistory_type = new entity(strings[2528], false, 737, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcPermeableCoveringProperties_type = new entity(strings[2529], false, 740, IFC4X3_RC3_IfcPreDefinedPropertySet_type); + IFC4X3_RC3_IfcPermit_type = new entity(strings[2530], false, 741, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcPileType_type = new entity(strings[2531], false, 752, IFC4X3_RC3_IfcDeepFoundationType_type); + IFC4X3_RC3_IfcPipeFittingType_type = new entity(strings[2532], false, 755, IFC4X3_RC3_IfcFlowFittingType_type); + IFC4X3_RC3_IfcPipeSegmentType_type = new entity(strings[2533], false, 758, IFC4X3_RC3_IfcFlowSegmentType_type); + IFC4X3_RC3_IfcPlant_type = new entity(strings[2534], false, 767, IFC4X3_RC3_IfcGeographicElement_type); + IFC4X3_RC3_IfcPlateType_type = new entity(strings[2535], false, 770, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcPolygonalFaceSet_type = new entity(strings[2536], false, 778, IFC4X3_RC3_IfcTessellatedFaceSet_type); + IFC4X3_RC3_IfcPolyline_type = new entity(strings[2537], false, 779, IFC4X3_RC3_IfcBoundedCurve_type); + IFC4X3_RC3_IfcPort_type = new entity(strings[2538], true, 782, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcPositioningElement_type = new entity(strings[2539], true, 783, IFC4X3_RC3_IfcProduct_type); + IFC4X3_RC3_IfcProcedure_type = new entity(strings[2540], false, 803, IFC4X3_RC3_IfcProcess_type); + IFC4X3_RC3_IfcProjectOrder_type = new entity(strings[2541], false, 822, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcProjectionElement_type = new entity(strings[2542], false, 819, IFC4X3_RC3_IfcFeatureElementAddition_type); + IFC4X3_RC3_IfcProtectiveDeviceType_type = new entity(strings[2543], false, 847, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcPumpType_type = new entity(strings[2544], false, 851, IFC4X3_RC3_IfcFlowMovingDeviceType_type); + IFC4X3_RC3_IfcRailType_type = new entity(strings[2545], false, 865, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcRailingType_type = new entity(strings[2546], false, 863, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcRailway_type = new entity(strings[2547], false, 867, IFC4X3_RC3_IfcFacility_type); + IFC4X3_RC3_IfcRampFlightType_type = new entity(strings[2548], false, 872, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcRampType_type = new entity(strings[2549], false, 874, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2550], false, 878, IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type); + IFC4X3_RC3_IfcReferent_type = new entity(strings[2551], false, 887, IFC4X3_RC3_IfcPositioningElement_type); + IFC4X3_RC3_IfcReinforcingElement_type = new entity(strings[2552], true, 900, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcReinforcingElementType_type = new entity(strings[2553], true, 901, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcReinforcingMesh_type = new entity(strings[2554], false, 902, IFC4X3_RC3_IfcReinforcingElement_type); + IFC4X3_RC3_IfcReinforcingMeshType_type = new entity(strings[2555], false, 903, IFC4X3_RC3_IfcReinforcingElementType_type); + IFC4X3_RC3_IfcRelAggregates_type = new entity(strings[2556], false, 905, IFC4X3_RC3_IfcRelDecomposes_type); + IFC4X3_RC3_IfcRoad_type = new entity(strings[2557], false, 971, IFC4X3_RC3_IfcFacility_type); + IFC4X3_RC3_IfcRoofType_type = new entity(strings[2558], false, 976, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcSanitaryTerminalType_type = new entity(strings[2559], false, 985, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcSeamCurve_type = new entity(strings[2560], false, 988, IFC4X3_RC3_IfcSurfaceCurve_type); + IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type = new entity(strings[2561], false, 989, IFC4X3_RC3_IfcSpiral_type); + IFC4X3_RC3_IfcSegmentedReferenceCurve_type = new entity(strings[2562], false, 1000, IFC4X3_RC3_IfcCompositeCurve_type); + IFC4X3_RC3_IfcShadingDeviceType_type = new entity(strings[2563], false, 1007, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcSign_type = new entity(strings[2564], false, 1015, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcSignType_type = new entity(strings[2565], false, 1019, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcSignalType_type = new entity(strings[2566], false, 1017, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcSine_type = new entity(strings[2567], false, 1025, IFC4X3_RC3_IfcSpiral_type); + IFC4X3_RC3_IfcSite_type = new entity(strings[2568], false, 1027, IFC4X3_RC3_IfcSpatialStructureElement_type); + IFC4X3_RC3_IfcSlabType_type = new entity(strings[2569], false, 1034, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcSolarDeviceType_type = new entity(strings[2570], false, 1038, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcSolidStratum_type = new entity(strings[2571], false, 1043, IFC4X3_RC3_IfcGeotechnicalStratum_type); + IFC4X3_RC3_IfcSpace_type = new entity(strings[2572], false, 1048, IFC4X3_RC3_IfcSpatialStructureElement_type); + IFC4X3_RC3_IfcSpaceHeaterType_type = new entity(strings[2573], false, 1051, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcSpaceType_type = new entity(strings[2574], false, 1053, IFC4X3_RC3_IfcSpatialStructureElementType_type); + IFC4X3_RC3_IfcStackTerminalType_type = new entity(strings[2575], false, 1071, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcStairFlightType_type = new entity(strings[2576], false, 1075, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcStairType_type = new entity(strings[2577], false, 1077, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcStructuralAction_type = new entity(strings[2578], true, 1080, IFC4X3_RC3_IfcStructuralActivity_type); + IFC4X3_RC3_IfcStructuralConnection_type = new entity(strings[2579], true, 1084, IFC4X3_RC3_IfcStructuralItem_type); + IFC4X3_RC3_IfcStructuralCurveAction_type = new entity(strings[2580], false, 1086, IFC4X3_RC3_IfcStructuralAction_type); + IFC4X3_RC3_IfcStructuralCurveConnection_type = new entity(strings[2581], false, 1088, IFC4X3_RC3_IfcStructuralConnection_type); + IFC4X3_RC3_IfcStructuralCurveMember_type = new entity(strings[2582], false, 1089, IFC4X3_RC3_IfcStructuralMember_type); + IFC4X3_RC3_IfcStructuralCurveMemberVarying_type = new entity(strings[2583], false, 1091, IFC4X3_RC3_IfcStructuralCurveMember_type); + IFC4X3_RC3_IfcStructuralCurveReaction_type = new entity(strings[2584], false, 1092, IFC4X3_RC3_IfcStructuralReaction_type); + IFC4X3_RC3_IfcStructuralLinearAction_type = new entity(strings[2585], false, 1094, IFC4X3_RC3_IfcStructuralCurveAction_type); + IFC4X3_RC3_IfcStructuralLoadGroup_type = new entity(strings[2586], false, 1098, IFC4X3_RC3_IfcGroup_type); + IFC4X3_RC3_IfcStructuralPointAction_type = new entity(strings[2587], false, 1110, IFC4X3_RC3_IfcStructuralAction_type); + IFC4X3_RC3_IfcStructuralPointConnection_type = new entity(strings[2588], false, 1111, IFC4X3_RC3_IfcStructuralConnection_type); + IFC4X3_RC3_IfcStructuralPointReaction_type = new entity(strings[2589], false, 1112, IFC4X3_RC3_IfcStructuralReaction_type); + IFC4X3_RC3_IfcStructuralResultGroup_type = new entity(strings[2590], false, 1114, IFC4X3_RC3_IfcGroup_type); + IFC4X3_RC3_IfcStructuralSurfaceAction_type = new entity(strings[2591], false, 1115, IFC4X3_RC3_IfcStructuralAction_type); + IFC4X3_RC3_IfcStructuralSurfaceConnection_type = new entity(strings[2592], false, 1117, IFC4X3_RC3_IfcStructuralConnection_type); + IFC4X3_RC3_IfcSubContractResource_type = new entity(strings[2593], false, 1125, IFC4X3_RC3_IfcConstructionResource_type); + IFC4X3_RC3_IfcSurfaceFeature_type = new entity(strings[2594], false, 1132, IFC4X3_RC3_IfcFeatureElement_type); + IFC4X3_RC3_IfcSwitchingDeviceType_type = new entity(strings[2595], false, 1152, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcSystem_type = new entity(strings[2596], false, 1154, IFC4X3_RC3_IfcGroup_type); + IFC4X3_RC3_IfcSystemFurnitureElement_type = new entity(strings[2597], false, 1155, IFC4X3_RC3_IfcFurnishingElement_type); + IFC4X3_RC3_IfcTankType_type = new entity(strings[2598], false, 1162, IFC4X3_RC3_IfcFlowStorageDeviceType_type); + IFC4X3_RC3_IfcTendon_type = new entity(strings[2599], false, 1173, IFC4X3_RC3_IfcReinforcingElement_type); + IFC4X3_RC3_IfcTendonAnchor_type = new entity(strings[2600], false, 1174, IFC4X3_RC3_IfcReinforcingElement_type); + IFC4X3_RC3_IfcTendonAnchorType_type = new entity(strings[2601], false, 1175, IFC4X3_RC3_IfcReinforcingElementType_type); + IFC4X3_RC3_IfcTendonConduit_type = new entity(strings[2602], false, 1177, IFC4X3_RC3_IfcReinforcingElement_type); + IFC4X3_RC3_IfcTendonConduitType_type = new entity(strings[2603], false, 1178, IFC4X3_RC3_IfcReinforcingElementType_type); + IFC4X3_RC3_IfcTendonType_type = new entity(strings[2604], false, 1180, IFC4X3_RC3_IfcReinforcingElementType_type); + IFC4X3_RC3_IfcTrackElementType_type = new entity(strings[2605], false, 1222, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcTransformerType_type = new entity(strings[2606], false, 1225, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcTransportElement_type = new entity(strings[2607], false, 1229, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcTrimmedCurve_type = new entity(strings[2608], false, 1237, IFC4X3_RC3_IfcBoundedCurve_type); + IFC4X3_RC3_IfcTubeBundleType_type = new entity(strings[2609], false, 1242, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcUnitaryEquipmentType_type = new entity(strings[2610], false, 1253, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcValveType_type = new entity(strings[2611], false, 1261, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcVibrationDamper_type = new entity(strings[2612], false, 1269, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcVibrationDamperType_type = new entity(strings[2613], false, 1270, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcVibrationIsolator_type = new entity(strings[2614], false, 1272, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcVibrationIsolatorType_type = new entity(strings[2615], false, 1273, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcVienneseBend_type = new entity(strings[2616], false, 1275, IFC4X3_RC3_IfcBoundedCurve_type); + IFC4X3_RC3_IfcVirtualElement_type = new entity(strings[2617], false, 1276, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcVoidStratum_type = new entity(strings[2618], false, 1280, IFC4X3_RC3_IfcGeotechnicalStratum_type); + IFC4X3_RC3_IfcVoidingFeature_type = new entity(strings[2619], false, 1278, IFC4X3_RC3_IfcFeatureElementSubtraction_type); + IFC4X3_RC3_IfcWallType_type = new entity(strings[2620], false, 1286, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcWasteTerminalType_type = new entity(strings[2621], false, 1292, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcWaterStratum_type = new entity(strings[2622], false, 1294, IFC4X3_RC3_IfcGeotechnicalStratum_type); + IFC4X3_RC3_IfcWindowType_type = new entity(strings[2623], false, 1304, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcWorkCalendar_type = new entity(strings[2624], false, 1307, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcWorkControl_type = new entity(strings[2625], true, 1309, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcWorkPlan_type = new entity(strings[2626], false, 1310, IFC4X3_RC3_IfcWorkControl_type); + IFC4X3_RC3_IfcWorkSchedule_type = new entity(strings[2627], false, 1312, IFC4X3_RC3_IfcWorkControl_type); + IFC4X3_RC3_IfcZone_type = new entity(strings[2628], false, 1315, IFC4X3_RC3_IfcSystem_type); + IFC4X3_RC3_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2629], 276, { + IFC4X3_RC3_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC3_IfcCurveStyleFontSelect_type + }); + IFC4X3_RC3_IfcCurveOnSurface_type = new select_type(strings[2630], 279, { + IFC4X3_RC3_IfcCompositeCurveOnSurface_type, + IFC4X3_RC3_IfcPcurve_type, + IFC4X3_RC3_IfcSurfaceCurve_type + }); + IFC4X3_RC3_IfcCurveOrEdgeCurve_type = new select_type(strings[2631], 280, { + IFC4X3_RC3_IfcBoundedCurve_type, + IFC4X3_RC3_IfcEdgeCurve_type + }); + IFC4X3_RC3_IfcInterferenceSelect_type = new select_type(strings[2632], 561, { + IFC4X3_RC3_IfcElement_type, + IFC4X3_RC3_IfcSpatialElement_type + }); + IFC4X3_RC3_IfcSpatialReferenceSelect_type = new select_type(strings[2633], 1057, { + IFC4X3_RC3_IfcGroup_type, + IFC4X3_RC3_IfcProduct_type + }); + IFC4X3_RC3_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2634], 1082, { + IFC4X3_RC3_IfcElement_type, + IFC4X3_RC3_IfcStructuralItem_type + }); + IFC4X3_RC3_IfcActionRequest_type = new entity(strings[2635], false, 2, IFC4X3_RC3_IfcControl_type); + IFC4X3_RC3_IfcAirTerminalBoxType_type = new entity(strings[2636], false, 19, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcAirTerminalType_type = new entity(strings[2637], false, 21, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type = new entity(strings[2638], false, 24, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcAlignmentCant_type = new entity(strings[2639], false, 30, IFC4X3_RC3_IfcLinearElement_type); + IFC4X3_RC3_IfcAlignmentHorizontal_type = new entity(strings[2640], false, 33, IFC4X3_RC3_IfcLinearElement_type); + IFC4X3_RC3_IfcAlignmentSegment_type = new entity(strings[2641], false, 37, IFC4X3_RC3_IfcLinearElement_type); + IFC4X3_RC3_IfcAlignmentVertical_type = new entity(strings[2642], false, 39, IFC4X3_RC3_IfcLinearElement_type); + IFC4X3_RC3_IfcAsset_type = new entity(strings[2643], false, 62, IFC4X3_RC3_IfcGroup_type); + IFC4X3_RC3_IfcAudioVisualApplianceType_type = new entity(strings[2644], false, 65, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcBSplineCurve_type = new entity(strings[2645], true, 108, IFC4X3_RC3_IfcBoundedCurve_type); + IFC4X3_RC3_IfcBSplineCurveWithKnots_type = new entity(strings[2646], false, 110, IFC4X3_RC3_IfcBSplineCurve_type); + IFC4X3_RC3_IfcBeamType_type = new entity(strings[2647], false, 74, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcBearingType_type = new entity(strings[2648], false, 77, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcBoilerType_type = new entity(strings[2649], false, 86, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcBoundaryCurve_type = new entity(strings[2650], false, 95, IFC4X3_RC3_IfcCompositeCurveOnSurface_type); + IFC4X3_RC3_IfcBridge_type = new entity(strings[2651], false, 105, IFC4X3_RC3_IfcFacility_type); + IFC4X3_RC3_IfcBuilding_type = new entity(strings[2652], false, 114, IFC4X3_RC3_IfcFacility_type); + IFC4X3_RC3_IfcBuildingElementPart_type = new entity(strings[2653], false, 115, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcBuildingElementPartType_type = new entity(strings[2654], false, 116, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcBuildingElementProxyType_type = new entity(strings[2655], false, 119, IFC4X3_RC3_IfcBuiltElementType_type); + IFC4X3_RC3_IfcBuildingSystem_type = new entity(strings[2656], false, 122, IFC4X3_RC3_IfcSystem_type); + IFC4X3_RC3_IfcBuiltElement_type = new entity(strings[2657], false, 124, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcBuiltSystem_type = new entity(strings[2658], false, 126, IFC4X3_RC3_IfcSystem_type); + IFC4X3_RC3_IfcBurnerType_type = new entity(strings[2659], false, 129, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcCableCarrierFittingType_type = new entity(strings[2660], false, 132, IFC4X3_RC3_IfcFlowFittingType_type); + IFC4X3_RC3_IfcCableCarrierSegmentType_type = new entity(strings[2661], false, 135, IFC4X3_RC3_IfcFlowSegmentType_type); + IFC4X3_RC3_IfcCableFittingType_type = new entity(strings[2662], false, 138, IFC4X3_RC3_IfcFlowFittingType_type); + IFC4X3_RC3_IfcCableSegmentType_type = new entity(strings[2663], false, 141, IFC4X3_RC3_IfcFlowSegmentType_type); + IFC4X3_RC3_IfcCaissonFoundationType_type = new entity(strings[2664], false, 144, IFC4X3_RC3_IfcDeepFoundationType_type); + IFC4X3_RC3_IfcChillerType_type = new entity(strings[2665], false, 159, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcChimney_type = new entity(strings[2666], false, 161, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcCircle_type = new entity(strings[2667], false, 164, IFC4X3_RC3_IfcConic_type); + IFC4X3_RC3_IfcCivilElement_type = new entity(strings[2668], false, 167, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcCoilType_type = new entity(strings[2669], false, 176, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcColumn_type = new entity(strings[2670], false, 183, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcColumnStandardCase_type = new entity(strings[2671], false, 184, IFC4X3_RC3_IfcColumn_type); + IFC4X3_RC3_IfcCommunicationsApplianceType_type = new entity(strings[2672], false, 188, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcCompressorType_type = new entity(strings[2673], false, 200, IFC4X3_RC3_IfcFlowMovingDeviceType_type); + IFC4X3_RC3_IfcCondenserType_type = new entity(strings[2674], false, 203, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcConstructionEquipmentResource_type = new entity(strings[2675], false, 216, IFC4X3_RC3_IfcConstructionResource_type); + IFC4X3_RC3_IfcConstructionMaterialResource_type = new entity(strings[2676], false, 219, IFC4X3_RC3_IfcConstructionResource_type); + IFC4X3_RC3_IfcConstructionProductResource_type = new entity(strings[2677], false, 222, IFC4X3_RC3_IfcConstructionResource_type); + IFC4X3_RC3_IfcConveyorSegmentType_type = new entity(strings[2678], false, 237, IFC4X3_RC3_IfcFlowSegmentType_type); + IFC4X3_RC3_IfcCooledBeamType_type = new entity(strings[2679], false, 240, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcCoolingTowerType_type = new entity(strings[2680], false, 243, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcCourse_type = new entity(strings[2681], false, 255, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcCovering_type = new entity(strings[2682], false, 258, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcCurtainWall_type = new entity(strings[2683], false, 269, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcDamperType_type = new entity(strings[2684], false, 289, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcDeepFoundation_type = new entity(strings[2685], false, 296, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcDiscreteAccessory_type = new entity(strings[2686], false, 312, IFC4X3_RC3_IfcElementComponent_type); + IFC4X3_RC3_IfcDiscreteAccessoryType_type = new entity(strings[2687], false, 313, IFC4X3_RC3_IfcElementComponentType_type); + IFC4X3_RC3_IfcDistributionBoardType_type = new entity(strings[2688], false, 316, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcDistributionChamberElementType_type = new entity(strings[2689], false, 319, IFC4X3_RC3_IfcDistributionFlowElementType_type); + IFC4X3_RC3_IfcDistributionControlElementType_type = new entity(strings[2690], true, 323, IFC4X3_RC3_IfcDistributionElementType_type); + IFC4X3_RC3_IfcDistributionElement_type = new entity(strings[2691], false, 324, IFC4X3_RC3_IfcElement_type); + IFC4X3_RC3_IfcDistributionFlowElement_type = new entity(strings[2692], false, 326, IFC4X3_RC3_IfcDistributionElement_type); + IFC4X3_RC3_IfcDistributionPort_type = new entity(strings[2693], false, 328, IFC4X3_RC3_IfcPort_type); + IFC4X3_RC3_IfcDistributionSystem_type = new entity(strings[2694], false, 330, IFC4X3_RC3_IfcSystem_type); + IFC4X3_RC3_IfcDoor_type = new entity(strings[2695], false, 338, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcDoorStandardCase_type = new entity(strings[2696], false, 343, IFC4X3_RC3_IfcDoor_type); + IFC4X3_RC3_IfcDuctFittingType_type = new entity(strings[2697], false, 354, IFC4X3_RC3_IfcFlowFittingType_type); + IFC4X3_RC3_IfcDuctSegmentType_type = new entity(strings[2698], false, 357, IFC4X3_RC3_IfcFlowSegmentType_type); + IFC4X3_RC3_IfcDuctSilencerType_type = new entity(strings[2699], false, 360, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC3_IfcEarthworksCut_type = new entity(strings[2700], false, 364, IFC4X3_RC3_IfcFeatureElementSubtraction_type); + IFC4X3_RC3_IfcEarthworksElement_type = new entity(strings[2701], false, 366, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcEarthworksFill_type = new entity(strings[2702], false, 367, IFC4X3_RC3_IfcEarthworksElement_type); + IFC4X3_RC3_IfcElectricApplianceType_type = new entity(strings[2703], false, 373, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcElectricDistributionBoardType_type = new entity(strings[2704], false, 380, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type = new entity(strings[2705], false, 383, IFC4X3_RC3_IfcFlowStorageDeviceType_type); + IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type = new entity(strings[2706], false, 386, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC3_IfcElectricGeneratorType_type = new entity(strings[2707], false, 389, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcElectricMotorType_type = new entity(strings[2708], false, 392, IFC4X3_RC3_IfcEnergyConversionDeviceType_type); + IFC4X3_RC3_IfcElectricTimeControlType_type = new entity(strings[2709], false, 396, IFC4X3_RC3_IfcFlowControllerType_type); + IFC4X3_RC3_IfcEnergyConversionDevice_type = new entity(strings[2710], false, 411, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcEngine_type = new entity(strings[2711], false, 414, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcEvaporativeCooler_type = new entity(strings[2712], false, 417, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcEvaporator_type = new entity(strings[2713], false, 420, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcExternalSpatialElement_type = new entity(strings[2714], false, 435, IFC4X3_RC3_IfcExternalSpatialStructureElement_type); + IFC4X3_RC3_IfcFanType_type = new entity(strings[2715], false, 454, IFC4X3_RC3_IfcFlowMovingDeviceType_type); + IFC4X3_RC3_IfcFilterType_type = new entity(strings[2716], false, 467, IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC3_IfcFireSuppressionTerminalType_type = new entity(strings[2717], false, 470, IFC4X3_RC3_IfcFlowTerminalType_type); + IFC4X3_RC3_IfcFlowController_type = new entity(strings[2718], false, 473, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFlowFitting_type = new entity(strings[2719], false, 476, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFlowInstrumentType_type = new entity(strings[2720], false, 479, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcFlowMeter_type = new entity(strings[2721], false, 481, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcFlowMovingDevice_type = new entity(strings[2722], false, 484, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFlowSegment_type = new entity(strings[2723], false, 486, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFlowStorageDevice_type = new entity(strings[2724], false, 488, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFlowTerminal_type = new entity(strings[2725], false, 490, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFlowTreatmentDevice_type = new entity(strings[2726], false, 492, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcFooting_type = new entity(strings[2727], false, 497, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcGeotechnicalAssembly_type = new entity(strings[2728], true, 519, IFC4X3_RC3_IfcGeotechnicalElement_type); + IFC4X3_RC3_IfcGrid_type = new entity(strings[2729], false, 525, IFC4X3_RC3_IfcPositioningElement_type); + IFC4X3_RC3_IfcHeatExchanger_type = new entity(strings[2730], false, 533, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcHumidifier_type = new entity(strings[2731], false, 538, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcInterceptor_type = new entity(strings[2732], false, 558, IFC4X3_RC3_IfcFlowTreatmentDevice_type); + IFC4X3_RC3_IfcJunctionBox_type = new entity(strings[2733], false, 571, IFC4X3_RC3_IfcFlowFitting_type); + IFC4X3_RC3_IfcKerb_type = new entity(strings[2734], false, 574, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcLamp_type = new entity(strings[2735], false, 583, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcLightFixture_type = new entity(strings[2736], false, 597, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcLinearPositioningElement_type = new entity(strings[2737], false, 612, IFC4X3_RC3_IfcPositioningElement_type); + IFC4X3_RC3_IfcLiquidTerminal_type = new entity(strings[2738], false, 616, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcMedicalDevice_type = new entity(strings[2739], false, 665, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcMember_type = new entity(strings[2740], false, 668, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcMemberStandardCase_type = new entity(strings[2741], false, 669, IFC4X3_RC3_IfcMember_type); + IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type = new entity(strings[2742], false, 675, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcMooringDevice_type = new entity(strings[2743], false, 691, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcMotorConnection_type = new entity(strings[2744], false, 694, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcNavigationElement_type = new entity(strings[2745], false, 698, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcOuterBoundaryCurve_type = new entity(strings[2746], false, 725, IFC4X3_RC3_IfcBoundaryCurve_type); + IFC4X3_RC3_IfcOutlet_type = new entity(strings[2747], false, 726, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcPavement_type = new entity(strings[2748], false, 733, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcPile_type = new entity(strings[2749], false, 750, IFC4X3_RC3_IfcDeepFoundation_type); + IFC4X3_RC3_IfcPipeFitting_type = new entity(strings[2750], false, 754, IFC4X3_RC3_IfcFlowFitting_type); + IFC4X3_RC3_IfcPipeSegment_type = new entity(strings[2751], false, 757, IFC4X3_RC3_IfcFlowSegment_type); + IFC4X3_RC3_IfcPlate_type = new entity(strings[2752], false, 768, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcPlateStandardCase_type = new entity(strings[2753], false, 769, IFC4X3_RC3_IfcPlate_type); + IFC4X3_RC3_IfcProtectiveDevice_type = new entity(strings[2754], false, 843, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2755], false, 845, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcPump_type = new entity(strings[2756], false, 850, IFC4X3_RC3_IfcFlowMovingDevice_type); + IFC4X3_RC3_IfcRail_type = new entity(strings[2757], false, 861, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcRailing_type = new entity(strings[2758], false, 862, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcRamp_type = new entity(strings[2759], false, 870, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcRampFlight_type = new entity(strings[2760], false, 871, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2761], false, 877, IFC4X3_RC3_IfcBSplineCurveWithKnots_type); + IFC4X3_RC3_IfcReinforcedSoil_type = new entity(strings[2762], false, 891, IFC4X3_RC3_IfcEarthworksElement_type); + IFC4X3_RC3_IfcReinforcingBar_type = new entity(strings[2763], false, 895, IFC4X3_RC3_IfcReinforcingElement_type); + IFC4X3_RC3_IfcReinforcingBarType_type = new entity(strings[2764], false, 898, IFC4X3_RC3_IfcReinforcingElementType_type); + IFC4X3_RC3_IfcRoof_type = new entity(strings[2765], false, 975, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcSanitaryTerminal_type = new entity(strings[2766], false, 984, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcSensorType_type = new entity(strings[2767], false, 1003, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcShadingDevice_type = new entity(strings[2768], false, 1006, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcSignal_type = new entity(strings[2769], false, 1016, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcSlab_type = new entity(strings[2770], false, 1031, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcSlabElementedCase_type = new entity(strings[2771], false, 1032, IFC4X3_RC3_IfcSlab_type); + IFC4X3_RC3_IfcSlabStandardCase_type = new entity(strings[2772], false, 1033, IFC4X3_RC3_IfcSlab_type); + IFC4X3_RC3_IfcSolarDevice_type = new entity(strings[2773], false, 1037, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcSpaceHeater_type = new entity(strings[2774], false, 1050, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcStackTerminal_type = new entity(strings[2775], false, 1070, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcStair_type = new entity(strings[2776], false, 1073, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcStairFlight_type = new entity(strings[2777], false, 1074, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcStructuralAnalysisModel_type = new entity(strings[2778], false, 1083, IFC4X3_RC3_IfcSystem_type); + IFC4X3_RC3_IfcStructuralLoadCase_type = new entity(strings[2779], false, 1096, IFC4X3_RC3_IfcStructuralLoadGroup_type); + IFC4X3_RC3_IfcStructuralPlanarAction_type = new entity(strings[2780], false, 1109, IFC4X3_RC3_IfcStructuralSurfaceAction_type); + IFC4X3_RC3_IfcSwitchingDevice_type = new entity(strings[2781], false, 1151, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcTank_type = new entity(strings[2782], false, 1161, IFC4X3_RC3_IfcFlowStorageDevice_type); + IFC4X3_RC3_IfcTrackElement_type = new entity(strings[2783], false, 1221, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcTransformer_type = new entity(strings[2784], false, 1224, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcTubeBundle_type = new entity(strings[2785], false, 1241, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcUnitaryControlElementType_type = new entity(strings[2786], false, 1250, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcUnitaryEquipment_type = new entity(strings[2787], false, 1252, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcValve_type = new entity(strings[2788], false, 1260, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcWall_type = new entity(strings[2789], false, 1283, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcWallElementedCase_type = new entity(strings[2790], false, 1284, IFC4X3_RC3_IfcWall_type); + IFC4X3_RC3_IfcWallStandardCase_type = new entity(strings[2791], false, 1285, IFC4X3_RC3_IfcWall_type); + IFC4X3_RC3_IfcWasteTerminal_type = new entity(strings[2792], false, 1291, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcWindow_type = new entity(strings[2793], false, 1295, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcWindowStandardCase_type = new entity(strings[2794], false, 1300, IFC4X3_RC3_IfcWindow_type); + IFC4X3_RC3_IfcSpaceBoundarySelect_type = new select_type(strings[2795], 1049, { + IFC4X3_RC3_IfcExternalSpatialElement_type, + IFC4X3_RC3_IfcSpace_type + }); + IFC4X3_RC3_IfcActuatorType_type = new entity(strings[2796], false, 10, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcAirTerminal_type = new entity(strings[2797], false, 17, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcAirTerminalBox_type = new entity(strings[2798], false, 18, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcAirToAirHeatRecovery_type = new entity(strings[2799], false, 23, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcAlarmType_type = new entity(strings[2800], false, 27, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcAlignment_type = new entity(strings[2801], false, 29, IFC4X3_RC3_IfcLinearPositioningElement_type); + IFC4X3_RC3_IfcAudioVisualAppliance_type = new entity(strings[2802], false, 64, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcBeam_type = new entity(strings[2803], false, 72, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcBeamStandardCase_type = new entity(strings[2804], false, 73, IFC4X3_RC3_IfcBeam_type); + IFC4X3_RC3_IfcBearing_type = new entity(strings[2805], false, 76, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcBoiler_type = new entity(strings[2806], false, 85, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcBorehole_type = new entity(strings[2807], false, 93, IFC4X3_RC3_IfcGeotechnicalAssembly_type); + IFC4X3_RC3_IfcBuildingElementProxy_type = new entity(strings[2808], false, 118, IFC4X3_RC3_IfcBuiltElement_type); + IFC4X3_RC3_IfcBurner_type = new entity(strings[2809], false, 128, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcCableCarrierFitting_type = new entity(strings[2810], false, 131, IFC4X3_RC3_IfcFlowFitting_type); + IFC4X3_RC3_IfcCableCarrierSegment_type = new entity(strings[2811], false, 134, IFC4X3_RC3_IfcFlowSegment_type); + IFC4X3_RC3_IfcCableFitting_type = new entity(strings[2812], false, 137, IFC4X3_RC3_IfcFlowFitting_type); + IFC4X3_RC3_IfcCableSegment_type = new entity(strings[2813], false, 140, IFC4X3_RC3_IfcFlowSegment_type); + IFC4X3_RC3_IfcCaissonFoundation_type = new entity(strings[2814], false, 143, IFC4X3_RC3_IfcDeepFoundation_type); + IFC4X3_RC3_IfcChiller_type = new entity(strings[2815], false, 158, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcCoil_type = new entity(strings[2816], false, 175, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcCommunicationsAppliance_type = new entity(strings[2817], false, 187, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcCompressor_type = new entity(strings[2818], false, 199, IFC4X3_RC3_IfcFlowMovingDevice_type); + IFC4X3_RC3_IfcCondenser_type = new entity(strings[2819], false, 202, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcControllerType_type = new entity(strings[2820], false, 232, IFC4X3_RC3_IfcDistributionControlElementType_type); + IFC4X3_RC3_IfcConveyorSegment_type = new entity(strings[2821], false, 236, IFC4X3_RC3_IfcFlowSegment_type); + IFC4X3_RC3_IfcCooledBeam_type = new entity(strings[2822], false, 239, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcCoolingTower_type = new entity(strings[2823], false, 242, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcDamper_type = new entity(strings[2824], false, 288, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcDistributionBoard_type = new entity(strings[2825], false, 315, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcDistributionChamberElement_type = new entity(strings[2826], false, 318, IFC4X3_RC3_IfcDistributionFlowElement_type); + IFC4X3_RC3_IfcDistributionCircuit_type = new entity(strings[2827], false, 321, IFC4X3_RC3_IfcDistributionSystem_type); + IFC4X3_RC3_IfcDistributionControlElement_type = new entity(strings[2828], false, 322, IFC4X3_RC3_IfcDistributionElement_type); + IFC4X3_RC3_IfcDuctFitting_type = new entity(strings[2829], false, 353, IFC4X3_RC3_IfcFlowFitting_type); + IFC4X3_RC3_IfcDuctSegment_type = new entity(strings[2830], false, 356, IFC4X3_RC3_IfcFlowSegment_type); + IFC4X3_RC3_IfcDuctSilencer_type = new entity(strings[2831], false, 359, IFC4X3_RC3_IfcFlowTreatmentDevice_type); + IFC4X3_RC3_IfcElectricAppliance_type = new entity(strings[2832], false, 372, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcElectricDistributionBoard_type = new entity(strings[2833], false, 379, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcElectricFlowStorageDevice_type = new entity(strings[2834], false, 382, IFC4X3_RC3_IfcFlowStorageDevice_type); + IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type = new entity(strings[2835], false, 385, IFC4X3_RC3_IfcFlowTreatmentDevice_type); + IFC4X3_RC3_IfcElectricGenerator_type = new entity(strings[2836], false, 388, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcElectricMotor_type = new entity(strings[2837], false, 391, IFC4X3_RC3_IfcEnergyConversionDevice_type); + IFC4X3_RC3_IfcElectricTimeControl_type = new entity(strings[2838], false, 395, IFC4X3_RC3_IfcFlowController_type); + IFC4X3_RC3_IfcFan_type = new entity(strings[2839], false, 453, IFC4X3_RC3_IfcFlowMovingDevice_type); + IFC4X3_RC3_IfcFilter_type = new entity(strings[2840], false, 466, IFC4X3_RC3_IfcFlowTreatmentDevice_type); + IFC4X3_RC3_IfcFireSuppressionTerminal_type = new entity(strings[2841], false, 469, IFC4X3_RC3_IfcFlowTerminal_type); + IFC4X3_RC3_IfcFlowInstrument_type = new entity(strings[2842], false, 478, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcGeomodel_type = new entity(strings[2843], false, 517, IFC4X3_RC3_IfcGeotechnicalAssembly_type); + IFC4X3_RC3_IfcGeoslice_type = new entity(strings[2844], false, 518, IFC4X3_RC3_IfcGeotechnicalAssembly_type); + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2845], false, 844, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcSensor_type = new entity(strings[2846], false, 1002, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcUnitaryControlElement_type = new entity(strings[2847], false, 1249, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcActuator_type = new entity(strings[2848], false, 9, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcAlarm_type = new entity(strings[2849], false, 26, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcController_type = new entity(strings[2850], false, 231, IFC4X3_RC3_IfcDistributionControlElement_type); + IFC4X3_RC3_IfcActionRequest_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcActor_type->set_attributes({ + new attribute(strings[2854], new named_type(IFC4X3_RC3_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcActorRole_type->set_attributes({ + new attribute(strings[2855], new named_type(IFC4X3_RC3_IfcRoleEnum_type), false), + new attribute(strings[2856], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcActuator_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcActuatorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAddress_type->set_attributes({ + new attribute(strings[2858], new named_type(IFC4X3_RC3_IfcAddressTypeEnum_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[2859], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2860], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlarm_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlarmType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentCant_type->set_attributes({ + new attribute(strings[2861], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentCantSegment_type->set_attributes({ + new attribute(strings[2862], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2863], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2864], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2865], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[2866], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2867], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentHorizontal_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentHorizontalSegment_type->set_attributes({ + new attribute(strings[2868], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false), + new attribute(strings[2869], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2870], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2871], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2873], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentParameterSegment_type->set_attributes({ + new attribute(strings[2874], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcAlignmentSegment_type->set_attributes({ + new attribute(strings[2876], new named_type(IFC4X3_RC3_IfcAlignmentParameterSegment_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentVertical_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAlignmentVerticalSegment_type->set_attributes({ + new attribute(strings[2862], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2863], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2877], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2878], new named_type(IFC4X3_RC3_IfcRatioMeasure_type), false), + new attribute(strings[2879], new named_type(IFC4X3_RC3_IfcRatioMeasure_type), false), + new attribute(strings[2880], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAnnotation_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAnnotationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2881], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[2882], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X3_RC3_IfcApplication_type->set_attributes({ + new attribute(strings[2883], new named_type(IFC4X3_RC3_IfcOrganization_type), false), + new attribute(strings[2884], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2885], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2886], new named_type(IFC4X3_RC3_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[2888], new named_type(IFC4X3_RC3_IfcAppliedValueSelect_type), true), + new attribute(strings[2889], new named_type(IFC4X3_RC3_IfcMeasureWithUnit_type), true), + new attribute(strings[2890], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[2891], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2893], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2894], new named_type(IFC4X3_RC3_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2895], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcApproval_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[2897], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2898], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2899], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[2900], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[2901], new named_type(IFC4X3_RC3_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2902], new named_type(IFC4X3_RC3_IfcApproval_type), false), + new attribute(strings[2903], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2904], new named_type(IFC4X3_RC3_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2906], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcAsset_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2908], new named_type(IFC4X3_RC3_IfcCostValue_type), true), + new attribute(strings[2909], new named_type(IFC4X3_RC3_IfcCostValue_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC3_IfcCostValue_type), true), + new attribute(strings[2911], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[2912], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[2913], new named_type(IFC4X3_RC3_IfcPerson_type), true), + new attribute(strings[2914], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[2915], new named_type(IFC4X3_RC3_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2916], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2917], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2919], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2920], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2921], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2922], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2923], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2924], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2925], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2926], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2927], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC3_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2929], new named_type(IFC4X3_RC3_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC3_IfcDirection_type), true), + new attribute(strings[2929], new named_type(IFC4X3_RC3_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcAxis2PlacementLinear_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC3_IfcDirection_type), true), + new attribute(strings[2929], new named_type(IFC4X3_RC3_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2930], new named_type(IFC4X3_RC3_IfcInteger_type), false), + new attribute(strings[2931], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type)), false), + new attribute(strings[2932], new named_type(IFC4X3_RC3_IfcBSplineCurveForm_type), false), + new attribute(strings[2933], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC3_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2935], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false), + new attribute(strings[2936], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false), + new attribute(strings[2937], new named_type(IFC4X3_RC3_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2938], new named_type(IFC4X3_RC3_IfcInteger_type), false), + new attribute(strings[2939], new named_type(IFC4X3_RC3_IfcInteger_type), false), + new attribute(strings[2931], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type))), false), + new attribute(strings[2940], new named_type(IFC4X3_RC3_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2941], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[2942], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC3_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2943], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false), + new attribute(strings[2944], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false), + new attribute(strings[2945], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false), + new attribute(strings[2946], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false), + new attribute(strings[2937], new named_type(IFC4X3_RC3_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBeam_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBeamType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBearing_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBearingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBearingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBearingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2947], new named_type(IFC4X3_RC3_IfcIdentifier_type), false), + new attribute(strings[2948], new named_type(IFC4X3_RC3_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBlock_type->set_attributes({ + new attribute(strings[2949], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2950], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2951], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcBoiler_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBoilerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2952], new named_type(IFC4X3_RC3_IfcBooleanOperator_type), false), + new attribute(strings[2953], new named_type(IFC4X3_RC3_IfcBooleanOperand_type), false), + new attribute(strings[2954], new named_type(IFC4X3_RC3_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcBorehole_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC3_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC3_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2955], new named_type(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2956], new named_type(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2957], new named_type(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2958], new named_type(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2959], new named_type(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2960], new named_type(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2961], new named_type(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2962], new named_type(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2963], new named_type(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2964], new named_type(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2965], new named_type(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2966], new named_type(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2967], new named_type(IFC4X3_RC3_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2968], new named_type(IFC4X3_RC3_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2969], new named_type(IFC4X3_RC3_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2970], new named_type(IFC4X3_RC3_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2971], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false), + new attribute(strings[2972], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2973], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2974], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2975], new named_type(IFC4X3_RC3_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcBridge_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBridgeTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuilding_type->set_attributes({ + new attribute(strings[2976], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[2977], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[2978], new named_type(IFC4X3_RC3_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2979], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuiltElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuiltElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBuiltSystem_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBuiltSystemTypeEnum_type), true), + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBurner_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcBurnerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2982], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2983], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2984], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2985], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableFitting_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableSegment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCaissonFoundation_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCaissonFoundationType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[2986], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[2987], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type))), false), + new attribute(strings[2988], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC3_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[2987], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type))), false), + new attribute(strings[2988], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC3_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_RC3_IfcDirection_type), true), + new attribute(strings[2990], new named_type(IFC4X3_RC3_IfcDirection_type), true), + new attribute(strings[2991], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false), + new attribute(strings[2992], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[2993], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[2994], new named_type(IFC4X3_RC3_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[2993], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[2995], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[2996], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcChiller_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcChillerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcChimney_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcChimneyType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCircle_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcClassification_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2999], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3000], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3001], new named_type(IFC4X3_RC3_IfcURIReference_type), true), + new attribute(strings[3002], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcClassificationReference_type->set_attributes({ + new attribute(strings[3003], new named_type(IFC4X3_RC3_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3004], new named_type(IFC4X3_RC3_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcClothoid_type->set_attributes({ + new attribute(strings[3005], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcCoil_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCoilType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcColourRgb_type->set_attributes({ + new attribute(strings[3006], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3007], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3008], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcColourRgbList_type->set_attributes({ + new attribute(strings[3009], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X3_RC3_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC3_IfcColumn_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcColumnType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcComplexProperty_type->set_attributes({ + new attribute(strings[3010], new named_type(IFC4X3_RC3_IfcIdentifier_type), false), + new attribute(strings[3011], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[3010], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3012], new named_type(IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[3013], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[3014], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSegment_type)), false), + new attribute(strings[2934], new named_type(IFC4X3_RC3_IfcLogical_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC3_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3016], new named_type(IFC4X3_RC3_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[3017], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false), + new attribute(strings[3018], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcCompressor_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCompressorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCondenser_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCondenserType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConic_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X3_RC3_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[3020], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcFace_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[3021], new named_type(IFC4X3_RC3_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[3022], new named_type(IFC4X3_RC3_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[3023], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3024], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3025], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[3026], new named_type(IFC4X3_RC3_IfcPointOrVertexPoint_type), false), + new attribute(strings[3027], new named_type(IFC4X3_RC3_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_RC3_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[3029], new named_type(IFC4X3_RC3_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[3030], new named_type(IFC4X3_RC3_IfcSolidOrShell_type), false), + new attribute(strings[3031], new named_type(IFC4X3_RC3_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcConstraint_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3032], new named_type(IFC4X3_RC3_IfcConstraintEnum_type), false), + new attribute(strings[3033], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3034], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[3035], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3036], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionResource_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC3_IfcResourceTime_type), true), + new attribute(strings[3038], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAppliedValue_type)), true), + new attribute(strings[3039], new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[3038], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAppliedValue_type)), true), + new attribute(strings[3039], new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcContext_type->set_attributes({ + new attribute(strings[3040], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3041], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3042], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentationContext_type)), true), + new attribute(strings[3043], new named_type(IFC4X3_RC3_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcControl_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcController_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcControllerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[3044], new named_type(IFC4X3_RC3_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[3045], new named_type(IFC4X3_RC3_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcConveyorSegment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcConveyorSegmentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[3046], new named_type(IFC4X3_RC3_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[3047], new named_type(IFC4X3_RC3_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3048], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3049], new named_type(IFC4X3_RC3_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcCosine_type->set_attributes({ + new attribute(strings[3050], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3051], new named_type(IFC4X3_RC3_IfcReal_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcCostItem_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCostItemTypeEnum_type), true), + new attribute(strings[3052], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcCostValue_type)), true), + new attribute(strings[3053], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3054], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3055], new named_type(IFC4X3_RC3_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCourse_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCourseTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCourseType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCourseTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCovering_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCoveringType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCrewResource_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC3_IfcCsgSolid_type->set_attributes({ + new attribute(strings[3056], new named_type(IFC4X3_RC3_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X3_RC3_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[3057], new named_type(IFC4X3_RC3_IfcMonetaryUnit_type), false), + new attribute(strings[3058], new named_type(IFC4X3_RC3_IfcMonetaryUnit_type), false), + new attribute(strings[3059], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), false), + new attribute(strings[3060], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3061], new named_type(IFC4X3_RC3_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[3062], new named_type(IFC4X3_RC3_IfcPlane_type), false), + new attribute(strings[2881], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[2882], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC3_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[3062], new named_type(IFC4X3_RC3_IfcSurface_type), false), + new attribute(strings[3063], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcBoundaryCurve_type)), false), + new attribute(strings[3064], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcCurveSegment_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC3_IfcPlacement_type), false), + new attribute(strings[3066], new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), false), + new attribute(strings[2872], new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), false), + new attribute(strings[3016], new named_type(IFC4X3_RC3_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcCurveStyle_type->set_attributes({ + new attribute(strings[3067], new named_type(IFC4X3_RC3_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[3068], new named_type(IFC4X3_RC3_IfcSizeSelect_type), true), + new attribute(strings[3069], new named_type(IFC4X3_RC3_IfcColour_type), true), + new attribute(strings[3070], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3071], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3067], new named_type(IFC4X3_RC3_IfcCurveStyleFontSelect_type), false), + new attribute(strings[3072], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[3073], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3074], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcDamper_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDamperType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDeepFoundation_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDeepFoundationType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[3075], new named_type(IFC4X3_RC3_IfcProfileDef_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC3_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[3018], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[3076], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDerivedUnitElement_type)), false), + new attribute(strings[3077], new named_type(IFC4X3_RC3_IfcDerivedUnitEnum_type), false), + new attribute(strings[3078], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcNamedUnit_type), false), + new attribute(strings[3080], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[3081], new simple_type(simple_type::integer_type), false), + new attribute(strings[3082], new simple_type(simple_type::integer_type), false), + new attribute(strings[3083], new simple_type(simple_type::integer_type), false), + new attribute(strings[3084], new simple_type(simple_type::integer_type), false), + new attribute(strings[3085], new simple_type(simple_type::integer_type), false), + new attribute(strings[3086], new simple_type(simple_type::integer_type), false), + new attribute(strings[3087], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDirection_type->set_attributes({ + new attribute(strings[3088], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcReal_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3089], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3090], new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), true), + new attribute(strings[3091], new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type->set_attributes({ + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3089], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3092], new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type), true), + new attribute(strings[3093], new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionBoard_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionBoardType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionPort_type->set_attributes({ + new attribute(strings[3094], new named_type(IFC4X3_RC3_IfcFlowDirectionEnum_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[3095], new named_type(IFC4X3_RC3_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), false), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3001], new named_type(IFC4X3_RC3_IfcURIReference_type), true), + new attribute(strings[2858], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3096], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3097], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3098], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3099], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[3100], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorSelect_type)), true), + new attribute(strings[3035], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3101], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3102], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3103], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[3104], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[3105], new named_type(IFC4X3_RC3_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[3106], new named_type(IFC4X3_RC3_IfcDocumentInformation_type), false), + new attribute(strings[3107], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDocumentInformation_type)), false), + new attribute(strings[3108], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3109], new named_type(IFC4X3_RC3_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcDoor_type->set_attributes({ + new attribute(strings[3110], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3111], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDoorTypeEnum_type), true), + new attribute(strings[3112], new named_type(IFC4X3_RC3_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[3113], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[3114], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3115], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3116], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3117], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3119], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3120], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3121], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3122], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3123], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3124], new named_type(IFC4X3_RC3_IfcShapeAspect_type), true), + new attribute(strings[3125], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3126], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[3127], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3128], new named_type(IFC4X3_RC3_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[3129], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3130], new named_type(IFC4X3_RC3_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[3124], new named_type(IFC4X3_RC3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDoorStyle_type->set_attributes({ + new attribute(strings[3112], new named_type(IFC4X3_RC3_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[3131], new named_type(IFC4X3_RC3_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[3132], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3133], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDoorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDoorTypeEnum_type), false), + new attribute(strings[3112], new named_type(IFC4X3_RC3_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[3132], new named_type(IFC4X3_RC3_IfcBoolean_type), true), + new attribute(strings[3113], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEarthworksCut_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEarthworksCutTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEarthworksElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEarthworksFill_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEarthworksFillTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEdge_type->set_attributes({ + new attribute(strings[3134], new named_type(IFC4X3_RC3_IfcVertex_type), false), + new attribute(strings[3135], new named_type(IFC4X3_RC3_IfcVertex_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[3136], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3015], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[3137], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElement_type->set_attributes({ + new attribute(strings[3138], new named_type(IFC4X3_RC3_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementAssembly_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X3_RC3_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementQuantity_type->set_attributes({ + new attribute(strings[3140], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3141], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementType_type->set_attributes({ + new attribute(strings[3142], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcElementarySurface_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC3_IfcEllipse_type->set_attributes({ + new attribute(strings[3143], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3144], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[3143], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3144], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEngine_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEngineType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEvaporator_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEvent_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEventTypeEnum_type), true), + new attribute(strings[3145], new named_type(IFC4X3_RC3_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[3146], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3147], new named_type(IFC4X3_RC3_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEventTime_type->set_attributes({ + new attribute(strings[3148], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3149], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3150], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3151], new named_type(IFC4X3_RC3_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcEventType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcEventTypeEnum_type), false), + new attribute(strings[3145], new named_type(IFC4X3_RC3_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[3146], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3152], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcExternalReference_type->set_attributes({ + new attribute(strings[3001], new named_type(IFC4X3_RC3_IfcURIReference_type), true), + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[3153], new named_type(IFC4X3_RC3_IfcExternalReference_type), false), + new attribute(strings[3154], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[3155], new named_type(IFC4X3_RC3_IfcDirection_type), false), + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3156], new named_type(IFC4X3_RC3_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcFace_type->set_attributes({ + new attribute(strings[3157], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3158], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcFaceBound_type->set_attributes({ + new attribute(strings[3159], new named_type(IFC4X3_RC3_IfcLoop_type), false), + new attribute(strings[3160], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC3_IfcFaceSurface_type->set_attributes({ + new attribute(strings[3161], new named_type(IFC4X3_RC3_IfcSurface_type), false), + new attribute(strings[3015], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2860], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcFacility_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFacilityPart_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFacilityPartTypeSelect_type), false), + new attribute(strings[3162], new named_type(IFC4X3_RC3_IfcFacilityUsageEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[3163], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3164], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3165], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3166], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3167], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3168], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFan_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFanType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFastener_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFastenerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[3169], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcFillStyleSelect_type)), false), + new attribute(strings[3070], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[3170], new named_type(IFC4X3_RC3_IfcCurveStyle_type), false), + new attribute(strings[3171], new named_type(IFC4X3_RC3_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[3172], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), true), + new attribute(strings[3173], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), true), + new attribute(strings[3174], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[3175], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcVector_type)), false), + new attribute(strings[3176], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcStyledItem_type)), false), + new attribute(strings[3177], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcFilter_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFilterType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3178], new named_type(IFC4X3_RC3_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFooting_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFootingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFurniture_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcFurnitureType_type->set_attributes({ + new attribute(strings[3139], new named_type(IFC4X3_RC3_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[3179], new named_type(IFC4X3_RC3_IfcDimensionCount_type), false), + new attribute(strings[3180], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[3181], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false), + new attribute(strings[3182], new named_type(IFC4X3_RC3_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[3183], new named_type(IFC4X3_RC3_IfcGeometricRepresentationContext_type), false), + new attribute(strings[3184], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3185], new named_type(IFC4X3_RC3_IfcGeometricProjectionEnum_type), false), + new attribute(strings[3186], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X3_RC3_IfcGeometricSet_type->set_attributes({ + new attribute(strings[3076], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcGeomodel_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeoslice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeotechnicalAssembly_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeotechnicalElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGeotechnicalStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGradientCurve_type->set_attributes({ + new attribute(strings[3187], new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false), + new attribute(strings[3188], new named_type(IFC4X3_RC3_IfcPlacement_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcGrid_type->set_attributes({ + new attribute(strings[3189], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcGridAxis_type)), false), + new attribute(strings[3190], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcGridAxis_type)), false), + new attribute(strings[3191], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcGridAxis_type)), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcGridAxis_type->set_attributes({ + new attribute(strings[3192], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3193], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3015], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcGridPlacement_type->set_attributes({ + new attribute(strings[3194], new named_type(IFC4X3_RC3_IfcVirtualGridIntersection_type), false), + new attribute(strings[3195], new named_type(IFC4X3_RC3_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[3196], new named_type(IFC4X3_RC3_IfcSurface_type), false), + new attribute(strings[3197], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcHumidifier_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[3111], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2917], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3198], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3199], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3200], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3201], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcImageTexture_type->set_attributes({ + new attribute(strings[3202], new named_type(IFC4X3_RC3_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcImpactProtectionDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcImpactProtectionDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3203], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[3204], new named_type(IFC4X3_RC3_IfcTessellatedFaceSet_type), false), + new attribute(strings[3205], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3206], new named_type(IFC4X3_RC3_IfcColourRgbList_type), false), + new attribute(strings[3207], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[3208], new named_type(IFC4X3_RC3_IfcCartesianPointList_type), false), + new attribute(strings[3014], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2934], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[3209], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[3210], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X3_RC3_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[3204], new named_type(IFC4X3_RC3_IfcTessellatedFaceSet_type), false), + new attribute(strings[3211], new named_type(IFC4X3_RC3_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[3212], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcInterceptor_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcInventory_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcInventoryTypeEnum_type), true), + new attribute(strings[3213], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[3214], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPerson_type)), true), + new attribute(strings[3215], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[2909], new named_type(IFC4X3_RC3_IfcCostValue_type), true), + new attribute(strings[2908], new named_type(IFC4X3_RC3_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[3216], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[3217], new named_type(IFC4X3_RC3_IfcDateTime_type), false), + new attribute(strings[3218], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcKerb_type->set_attributes({ + new attribute(strings[3219], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcKerbType_type->set_attributes({ + new attribute(strings[3219], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2982], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2996], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3199], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3220], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3221], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLaborResource_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLagTime_type->set_attributes({ + new attribute(strings[3222], new named_type(IFC4X3_RC3_IfcTimeOrRatioSelect_type), false), + new attribute(strings[3223], new named_type(IFC4X3_RC3_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcLamp_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLampType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2884], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3224], new named_type(IFC4X3_RC3_IfcActorSelect_type), true), + new attribute(strings[3225], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3001], new named_type(IFC4X3_RC3_IfcURIReference_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3226], new named_type(IFC4X3_RC3_IfcLanguageId_type), true), + new attribute(strings[3227], new named_type(IFC4X3_RC3_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[3228], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false), + new attribute(strings[3229], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3230], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcLightFixture_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[3231], new named_type(IFC4X3_RC3_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[3232], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcLightSource_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3233], new named_type(IFC4X3_RC3_IfcColourRgb_type), false), + new attribute(strings[3234], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3235], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4X3_RC3_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false), + new attribute(strings[3236], new named_type(IFC4X3_RC3_IfcColourRgb_type), true), + new attribute(strings[3237], new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[3238], new named_type(IFC4X3_RC3_IfcLuminousFluxMeasure_type), false), + new attribute(strings[3239], new named_type(IFC4X3_RC3_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[3240], new named_type(IFC4X3_RC3_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false), + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3241], new named_type(IFC4X3_RC3_IfcReal_type), false), + new attribute(strings[3242], new named_type(IFC4X3_RC3_IfcReal_type), false), + new attribute(strings[3243], new named_type(IFC4X3_RC3_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4X3_RC3_IfcDirection_type), false), + new attribute(strings[3244], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[3245], new named_type(IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[3246], new named_type(IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLine_type->set_attributes({ + new attribute(strings[3247], new named_type(IFC4X3_RC3_IfcCartesianPoint_type), false), + new attribute(strings[3248], new named_type(IFC4X3_RC3_IfcVector_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcLinearElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[3249], new named_type(IFC4X3_RC3_IfcAxis2PlacementLinear_type), false), + new attribute(strings[3250], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcLinearPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLiquidTerminal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLiquidTerminalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[3249], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[3251], new named_type(IFC4X3_RC3_IfcClosedShell_type), false) + },{ + false + }); + IFC4X3_RC3_IfcMapConversion_type->set_attributes({ + new attribute(strings[3252], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3253], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3254], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3255], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[3256], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[2992], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[3257], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[3258], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMappedItem_type->set_attributes({ + new attribute(strings[3259], new named_type(IFC4X3_RC3_IfcRepresentationMap_type), false), + new attribute(strings[3260], new named_type(IFC4X3_RC3_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcMarineFacility_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMarineFacilityTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterial_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[3261], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcClassificationSelect_type)), false), + new attribute(strings[3262], new named_type(IFC4X3_RC3_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3263], new named_type(IFC4X3_RC3_IfcMaterial_type), false), + new attribute(strings[3264], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3265], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[3266], new named_type(IFC4X3_RC3_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[3263], new named_type(IFC4X3_RC3_IfcMaterial_type), true), + new attribute(strings[3267], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[3268], new named_type(IFC4X3_RC3_IfcLogical_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3269], new named_type(IFC4X3_RC3_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[3270], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterialLayer_type)), false), + new attribute(strings[3271], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[3272], new named_type(IFC4X3_RC3_IfcMaterialLayerSet_type), false), + new attribute(strings[3273], new named_type(IFC4X3_RC3_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3274], new named_type(IFC4X3_RC3_IfcDirectionSenseEnum_type), false), + new attribute(strings[3275], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3276], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[3277], new named_type(IFC4X3_RC3_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3278], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialList_type->set_attributes({ + new attribute(strings[3279], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterial_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3263], new named_type(IFC4X3_RC3_IfcMaterial_type), true), + new attribute(strings[3280], new named_type(IFC4X3_RC3_IfcProfileDef_type), false), + new attribute(strings[3269], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[2892], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3281], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterialProfile_type)), false), + new attribute(strings[3282], new named_type(IFC4X3_RC3_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[3283], new named_type(IFC4X3_RC3_IfcMaterialProfileSet_type), false), + new attribute(strings[3284], new named_type(IFC4X3_RC3_IfcCardinalPointReference_type), true), + new attribute(strings[3276], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[3285], new named_type(IFC4X3_RC3_IfcMaterialProfileSet_type), false), + new attribute(strings[3286], new named_type(IFC4X3_RC3_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[3278], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[3263], new named_type(IFC4X3_RC3_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[3287], new named_type(IFC4X3_RC3_IfcMaterial_type), false), + new attribute(strings[3288], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcMaterial_type)), false), + new attribute(strings[3289], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[3290], new named_type(IFC4X3_RC3_IfcValue_type), false), + new attribute(strings[3291], new named_type(IFC4X3_RC3_IfcUnit_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[3292], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3293], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[3292], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3293], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMember_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMemberType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMetric_type->set_attributes({ + new attribute(strings[3294], new named_type(IFC4X3_RC3_IfcBenchmarkEnum_type), false), + new attribute(strings[3295], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3296], new named_type(IFC4X3_RC3_IfcMetricValueSelect_type), true), + new attribute(strings[3297], new named_type(IFC4X3_RC3_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[3298], new named_type(IFC4X3_RC3_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC3_IfcMooringDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMooringDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMooringDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMooringDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcNamedUnit_type->set_attributes({ + new attribute(strings[3299], new named_type(IFC4X3_RC3_IfcDimensionalExponents_type), false), + new attribute(strings[3077], new named_type(IFC4X3_RC3_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcNavigationElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcNavigationElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcNavigationElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcNavigationElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcObject_type->set_attributes({ + new attribute(strings[3040], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcObjectPlacement_type->set_attributes({ + new attribute(strings[3300], new named_type(IFC4X3_RC3_IfcObjectPlacement_type), true) + },{ + false + }); + IFC4X3_RC3_IfcObjective_type->set_attributes({ + new attribute(strings[3301], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcConstraint_type)), true), + new attribute(strings[3302], new named_type(IFC4X3_RC3_IfcLogicalOperatorEnum_type), true), + new attribute(strings[3303], new named_type(IFC4X3_RC3_IfcObjectiveEnum_type), false), + new attribute(strings[3304], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOccupant_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[3305], new named_type(IFC4X3_RC3_IfcCurve_type), false) + },{ + false + }); + IFC4X3_RC3_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[3306], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC3_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[3306], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2934], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[2929], new named_type(IFC4X3_RC3_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[3278], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3138], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcOpenCrossProfileDef_type->set_attributes({ + new attribute(strings[3307], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3308], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type)), false), + new attribute(strings[3309], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3310], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOrganization_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3311], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorRole_type)), true), + new attribute(strings[3312], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[3313], new named_type(IFC4X3_RC3_IfcOrganization_type), false), + new attribute(strings[3314], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[3315], new named_type(IFC4X3_RC3_IfcEdge_type), false), + new attribute(strings[3160], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X3_RC3_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC3_IfcOutlet_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOutletType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[3316], new named_type(IFC4X3_RC3_IfcPersonAndOrganization_type), false), + new attribute(strings[3317], new named_type(IFC4X3_RC3_IfcApplication_type), false), + new attribute(strings[3318], new named_type(IFC4X3_RC3_IfcStateEnum_type), true), + new attribute(strings[3319], new named_type(IFC4X3_RC3_IfcChangeActionEnum_type), true), + new attribute(strings[3320], new named_type(IFC4X3_RC3_IfcTimeStamp_type), true), + new attribute(strings[3321], new named_type(IFC4X3_RC3_IfcPersonAndOrganization_type), true), + new attribute(strings[3322], new named_type(IFC4X3_RC3_IfcApplication_type), true), + new attribute(strings[3323], new named_type(IFC4X3_RC3_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcPath_type->set_attributes({ + new attribute(strings[3137], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcPavement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPavementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPavementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPavementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPcurve_type->set_attributes({ + new attribute(strings[3062], new named_type(IFC4X3_RC3_IfcSurface_type), false), + new attribute(strings[3324], new named_type(IFC4X3_RC3_IfcCurve_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[3325], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[3112], new named_type(IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[3130], new named_type(IFC4X3_RC3_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3326], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3327], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3124], new named_type(IFC4X3_RC3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPermit_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPermitTypeEnum_type), true), + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPerson_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3328], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3329], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3330], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3331], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3332], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3311], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorRole_type)), true), + new attribute(strings[3312], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[3333], new named_type(IFC4X3_RC3_IfcPerson_type), false), + new attribute(strings[3334], new named_type(IFC4X3_RC3_IfcOrganization_type), false), + new attribute(strings[3311], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[3335], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPhysicalQuantity_type)), false), + new attribute(strings[3336], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[3337], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3037], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcPile_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPileTypeEnum_type), true), + new attribute(strings[3131], new named_type(IFC4X3_RC3_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPileType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPixelTexture_type->set_attributes({ + new attribute(strings[2982], new named_type(IFC4X3_RC3_IfcInteger_type), false), + new attribute(strings[3338], new named_type(IFC4X3_RC3_IfcInteger_type), false), + new attribute(strings[3339], new named_type(IFC4X3_RC3_IfcInteger_type), false), + new attribute(strings[3340], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPlacement_type->set_attributes({ + new attribute(strings[3001], new named_type(IFC4X3_RC3_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC3_IfcPlanarBox_type->set_attributes({ + new attribute(strings[3065], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[3341], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3342], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcPlant_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPlate_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPlateType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcPointByDistanceExpression_type->set_attributes({ + new attribute(strings[3343], new named_type(IFC4X3_RC3_IfcCurveMeasureSelect_type), false), + new attribute(strings[3344], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3345], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3346], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3305], new named_type(IFC4X3_RC3_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[3305], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3347], new named_type(IFC4X3_RC3_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[3062], new named_type(IFC4X3_RC3_IfcSurface_type), false), + new attribute(strings[3348], new named_type(IFC4X3_RC3_IfcParameterValue_type), false), + new attribute(strings[3349], new named_type(IFC4X3_RC3_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcPolyLoop_type->set_attributes({ + new attribute(strings[3350], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), false), + new attribute(strings[3351], new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[3352], new named_type(IFC4X3_RC3_IfcBoolean_type), true), + new attribute(strings[3353], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[3354], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPolyline_type->set_attributes({ + new attribute(strings[3208], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcPolynomialCurve_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcPlacement_type), false), + new attribute(strings[3355], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true), + new attribute(strings[3356], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true), + new attribute(strings[3357], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPostalAddress_type->set_attributes({ + new attribute(strings[3358], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3359], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3360], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3361], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3362], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3363], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3364], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC3_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3365], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcLayeredItem_type)), false), + new attribute(strings[2896], new named_type(IFC4X3_RC3_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[3366], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[3367], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[3368], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[3369], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC3_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC3_IfcProcedure_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProcedureType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProcess_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProduct_type->set_attributes({ + new attribute(strings[3370], new named_type(IFC4X3_RC3_IfcObjectPlacement_type), true), + new attribute(strings[3371], new named_type(IFC4X3_RC3_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3372], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcProfileDef_type->set_attributes({ + new attribute(strings[3373], new named_type(IFC4X3_RC3_IfcProfileTypeEnum_type), false), + new attribute(strings[3374], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcProfileProperties_type->set_attributes({ + new attribute(strings[3375], new named_type(IFC4X3_RC3_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[3376], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3377], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3378], new named_type(IFC4X3_RC3_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProperty_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcIdentifier_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[3379], new named_type(IFC4X3_RC3_IfcValue_type), true), + new attribute(strings[3380], new named_type(IFC4X3_RC3_IfcValue_type), true), + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcUnit_type), true), + new attribute(strings[3381], new named_type(IFC4X3_RC3_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[3382], new named_type(IFC4X3_RC3_IfcProperty_type), false), + new attribute(strings[3383], new named_type(IFC4X3_RC3_IfcProperty_type), false), + new attribute(strings[3289], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[3384], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true), + new attribute(strings[3385], new named_type(IFC4X3_RC3_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[3384], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), false), + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[3218], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true), + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[3010], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3386], new named_type(IFC4X3_RC3_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertySet_type->set_attributes({ + new attribute(strings[3011], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[3387], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3013], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[3388], new named_type(IFC4X3_RC3_IfcValue_type), true), + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[3389], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true), + new attribute(strings[3390], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true), + new attribute(strings[3289], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3391], new named_type(IFC4X3_RC3_IfcUnit_type), true), + new attribute(strings[3392], new named_type(IFC4X3_RC3_IfcUnit_type), true), + new attribute(strings[3393], new named_type(IFC4X3_RC3_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcProxy_type->set_attributes({ + new attribute(strings[3394], new named_type(IFC4X3_RC3_IfcObjectTypeEnum_type), false), + new attribute(strings[3138], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPump_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcPumpType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcQuantityArea_type->set_attributes({ + new attribute(strings[3395], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), false), + new attribute(strings[3396], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcQuantityCount_type->set_attributes({ + new attribute(strings[3397], new named_type(IFC4X3_RC3_IfcCountMeasure_type), false), + new attribute(strings[3396], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcQuantityLength_type->set_attributes({ + new attribute(strings[3398], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3396], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcQuantityTime_type->set_attributes({ + new attribute(strings[3399], new named_type(IFC4X3_RC3_IfcTimeMeasure_type), false), + new attribute(strings[3396], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[3400], new named_type(IFC4X3_RC3_IfcVolumeMeasure_type), false), + new attribute(strings[3396], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[3401], new named_type(IFC4X3_RC3_IfcMassMeasure_type), false), + new attribute(strings[3396], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcRail_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRailTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRailType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRailTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRailing_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRailingType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRailway_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRailwayTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRamp_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRampFlight_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRampType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[3402], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[3402], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[2983], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3403], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3404], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2972], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2973], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2949], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2950], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3338], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[3062], new named_type(IFC4X3_RC3_IfcSurface_type), false), + new attribute(strings[3405], new named_type(IFC4X3_RC3_IfcParameterValue_type), false), + new attribute(strings[3406], new named_type(IFC4X3_RC3_IfcParameterValue_type), false), + new attribute(strings[3407], new named_type(IFC4X3_RC3_IfcParameterValue_type), false), + new attribute(strings[3408], new named_type(IFC4X3_RC3_IfcParameterValue_type), false), + new attribute(strings[3409], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3410], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[3411], new named_type(IFC4X3_RC3_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[3412], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDayInMonthNumber_type)), true), + new attribute(strings[3413], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDayInWeekNumber_type)), true), + new attribute(strings[3414], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcMonthInYearNumber_type)), true), + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[3415], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[3416], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[3417], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReference_type->set_attributes({ + new attribute(strings[3418], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3419], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3420], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3421], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), true), + new attribute(strings[3422], new named_type(IFC4X3_RC3_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcReferent_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcReferentTypeEnum_type), true), + new attribute(strings[3423], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[3424], new named_type(IFC4X3_RC3_IfcTimeMeasure_type), false), + new attribute(strings[3216], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcedSoil_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[3425], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), false), + new attribute(strings[3426], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[3427], new named_type(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3428], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3429], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3430], new named_type(IFC4X3_RC3_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[3431], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3432], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[3292], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3433], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3434], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[3427], new named_type(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[3292], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3433], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3434], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3427], new named_type(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3435], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3436], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[3426], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[3437], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3438], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3439], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3440], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3441], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3442], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3443], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3444], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[3437], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3438], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3439], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3440], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3441], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3442], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3443], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3444], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3435], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3436], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAggregates_type->set_attributes({ + new attribute(strings[3445], new named_type(IFC4X3_RC3_IfcObjectDefinition_type), false), + new attribute(strings[3446], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssigns_type->set_attributes({ + new attribute(strings[3446], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false), + new attribute(strings[3447], new named_type(IFC4X3_RC3_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[3448], new named_type(IFC4X3_RC3_IfcActor_type), false), + new attribute(strings[3449], new named_type(IFC4X3_RC3_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[3450], new named_type(IFC4X3_RC3_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[3451], new named_type(IFC4X3_RC3_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[3452], new named_type(IFC4X3_RC3_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[3453], new named_type(IFC4X3_RC3_IfcProcessSelect_type), false), + new attribute(strings[3454], new named_type(IFC4X3_RC3_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[3455], new named_type(IFC4X3_RC3_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[3456], new named_type(IFC4X3_RC3_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociates_type->set_attributes({ + new attribute(strings[3446], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2902], new named_type(IFC4X3_RC3_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[3457], new named_type(IFC4X3_RC3_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[3458], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3459], new named_type(IFC4X3_RC3_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[3106], new named_type(IFC4X3_RC3_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC3_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[3287], new named_type(IFC4X3_RC3_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelAssociatesProfileDef_type->set_attributes({ + new attribute(strings[3461], new named_type(IFC4X3_RC3_IfcProfileDef_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[3462], new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), true), + new attribute(strings[3463], new named_type(IFC4X3_RC3_IfcElement_type), false), + new attribute(strings[3464], new named_type(IFC4X3_RC3_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[3465], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false), + new attribute(strings[3466], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false), + new attribute(strings[3467], new named_type(IFC4X3_RC3_IfcConnectionTypeEnum_type), false), + new attribute(strings[3468], new named_type(IFC4X3_RC3_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[3469], new named_type(IFC4X3_RC3_IfcPort_type), false), + new attribute(strings[3464], new named_type(IFC4X3_RC3_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[3469], new named_type(IFC4X3_RC3_IfcPort_type), false), + new attribute(strings[3470], new named_type(IFC4X3_RC3_IfcPort_type), false), + new attribute(strings[3471], new named_type(IFC4X3_RC3_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[3463], new named_type(IFC4X3_RC3_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[3472], new named_type(IFC4X3_RC3_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[3473], new named_type(IFC4X3_RC3_IfcStructuralMember_type), false), + new attribute(strings[3474], new named_type(IFC4X3_RC3_IfcStructuralConnection_type), false), + new attribute(strings[3475], new named_type(IFC4X3_RC3_IfcBoundaryCondition_type), true), + new attribute(strings[3476], new named_type(IFC4X3_RC3_IfcStructuralConnectionCondition_type), true), + new attribute(strings[3477], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3478], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[3479], new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[3480], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcElement_type)), false), + new attribute(strings[3481], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[3482], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProduct_type)), false), + new attribute(strings[3483], new named_type(IFC4X3_RC3_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[3484], new named_type(IFC4X3_RC3_IfcElement_type), false), + new attribute(strings[3485], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[3486], new named_type(IFC4X3_RC3_IfcSpace_type), false), + new attribute(strings[3485], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelDeclares_type->set_attributes({ + new attribute(strings[3487], new named_type(IFC4X3_RC3_IfcContext_type), false), + new attribute(strings[3488], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[3446], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObject_type)), false), + new attribute(strings[3445], new named_type(IFC4X3_RC3_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[3446], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false), + new attribute(strings[3489], new named_type(IFC4X3_RC3_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[3490], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertySetDefinition_type)), false), + new attribute(strings[3491], new named_type(IFC4X3_RC3_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[3446], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcObject_type)), false), + new attribute(strings[3492], new named_type(IFC4X3_RC3_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[3493], new named_type(IFC4X3_RC3_IfcOpeningElement_type), false), + new attribute(strings[3494], new named_type(IFC4X3_RC3_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[3495], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcDistributionControlElement_type)), false), + new attribute(strings[3496], new named_type(IFC4X3_RC3_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[3463], new named_type(IFC4X3_RC3_IfcInterferenceSelect_type), false), + new attribute(strings[3464], new named_type(IFC4X3_RC3_IfcInterferenceSelect_type), false), + new attribute(strings[3497], new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), true), + new attribute(strings[3498], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3499], new named_type(IFC4X3_RC3_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelNests_type->set_attributes({ + new attribute(strings[3445], new named_type(IFC4X3_RC3_IfcObjectDefinition_type), false), + new attribute(strings[3446], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelPositions_type->set_attributes({ + new attribute(strings[3500], new named_type(IFC4X3_RC3_IfcPositioningElement_type), false), + new attribute(strings[3501], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcProduct_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[3463], new named_type(IFC4X3_RC3_IfcElement_type), false), + new attribute(strings[3502], new named_type(IFC4X3_RC3_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[3482], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcSpatialReferenceSelect_type)), false), + new attribute(strings[3483], new named_type(IFC4X3_RC3_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelSequence_type->set_attributes({ + new attribute(strings[3453], new named_type(IFC4X3_RC3_IfcProcess_type), false), + new attribute(strings[3503], new named_type(IFC4X3_RC3_IfcProcess_type), false), + new attribute(strings[3504], new named_type(IFC4X3_RC3_IfcLagTime_type), true), + new attribute(strings[3505], new named_type(IFC4X3_RC3_IfcSequenceEnum_type), true), + new attribute(strings[3506], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3507], new named_type(IFC4X3_RC3_IfcSystem_type), false), + new attribute(strings[3508], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[3486], new named_type(IFC4X3_RC3_IfcSpaceBoundarySelect_type), false), + new attribute(strings[3494], new named_type(IFC4X3_RC3_IfcElement_type), false), + new attribute(strings[3462], new named_type(IFC4X3_RC3_IfcConnectionGeometry_type), true), + new attribute(strings[3509], new named_type(IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3510], new named_type(IFC4X3_RC3_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3511], new named_type(IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3512], new named_type(IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[3484], new named_type(IFC4X3_RC3_IfcElement_type), false), + new attribute(strings[3513], new named_type(IFC4X3_RC3_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3514], new named_type(IFC4X3_RC3_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRepresentation_type->set_attributes({ + new attribute(strings[3515], new named_type(IFC4X3_RC3_IfcRepresentationContext_type), false), + new attribute(strings[3516], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3517], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3518], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3519], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3520], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3521], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false), + new attribute(strings[3522], new named_type(IFC4X3_RC3_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcResource_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[3154], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcResourceObjectSelect_type)), false), + new attribute(strings[2902], new named_type(IFC4X3_RC3_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[3459], new named_type(IFC4X3_RC3_IfcConstraint_type), false), + new attribute(strings[3154], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcResourceTime_type->set_attributes({ + new attribute(strings[3523], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3524], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3525], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3526], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3527], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3528], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3529], new named_type(IFC4X3_RC3_IfcBoolean_type), true), + new attribute(strings[3530], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3531], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3532], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3533], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3534], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3535], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3536], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3537], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC3_IfcAxis1Placement_type), false), + new attribute(strings[3538], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3156], new named_type(IFC4X3_RC3_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[3338], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3539], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[3338], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcRoad_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRoadTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRoof_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRoofType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcRoot_type->set_attributes({ + new attribute(strings[3540], new named_type(IFC4X3_RC3_IfcGloballyUniqueId_type), false), + new attribute(strings[3541], new named_type(IFC4X3_RC3_IfcOwnerHistory_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3542], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSIUnit_type->set_attributes({ + new attribute(strings[3543], new named_type(IFC4X3_RC3_IfcSIPrefix_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X3_RC3_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3544], new named_type(IFC4X3_RC3_IfcDataOriginEnum_type), true), + new attribute(strings[3545], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3546], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3547], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3051], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3548], new named_type(IFC4X3_RC3_IfcSectionTypeEnum_type), false), + new attribute(strings[3549], new named_type(IFC4X3_RC3_IfcProfileDef_type), false), + new attribute(strings[3550], new named_type(IFC4X3_RC3_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3551], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3552], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3553], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3554], new named_type(IFC4X3_RC3_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3555], new named_type(IFC4X3_RC3_IfcSectionProperties_type), false), + new attribute(strings[3556], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[3089], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3557], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3558], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcAxis2PlacementLinear_type)), false), + new attribute(strings[3203], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3559], new named_type(IFC4X3_RC3_IfcCompositeCurve_type), false), + new attribute(strings[3557], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false), + new attribute(strings[3558], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSectionedSurface_type->set_attributes({ + new attribute(strings[3089], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3558], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3557], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC3_IfcProfileDef_type)), false), + new attribute(strings[3203], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSegment_type->set_attributes({ + new attribute(strings[3560], new named_type(IFC4X3_RC3_IfcTransitionCode_type), false) + },{ + false + }); + IFC4X3_RC3_IfcSegmentedReferenceCurve_type->set_attributes({ + new attribute(strings[3187], new named_type(IFC4X3_RC3_IfcBoundedCurve_type), false), + new attribute(strings[3188], new named_type(IFC4X3_RC3_IfcPlacement_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSensor_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSensorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3561], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcShapeModel_type)), false), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3562], new named_type(IFC4X3_RC3_IfcLogical_type), false), + new attribute(strings[3563], new named_type(IFC4X3_RC3_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3564], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcShell_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcSign_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSignTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSignType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSignTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSignal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSignalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSignalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSignalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC3_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3565], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3566], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3567], new named_type(IFC4X3_RC3_IfcPropertyEnumeration_type), true), + new attribute(strings[3568], new named_type(IFC4X3_RC3_IfcUnit_type), true), + new attribute(strings[3569], new named_type(IFC4X3_RC3_IfcUnit_type), true), + new attribute(strings[3289], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3570], new named_type(IFC4X3_RC3_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSine_type->set_attributes({ + new attribute(strings[3571], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3547], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSite_type->set_attributes({ + new attribute(strings[3572], new named_type(IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3573], new named_type(IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3574], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3575], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3576], new named_type(IFC4X3_RC3_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSlab_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSlabType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3577], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3578], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3579], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcSolidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpace_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSpaceTypeEnum_type), true), + new attribute(strings[3580], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpaceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSpaceTypeEnum_type), false), + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[3142], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3581], new named_type(IFC4X3_RC3_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSphere_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcSpiral_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), true) + },{ + false + }); + IFC4X3_RC3_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStair_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStairFlight_type->set_attributes({ + new attribute(strings[3582], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[3583], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[3584], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3585], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStairType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3586], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3587], new named_type(IFC4X3_RC3_IfcStructuralLoad_type), false), + new attribute(strings[3588], new named_type(IFC4X3_RC3_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3589], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true), + new attribute(strings[3590], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3591], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcStructuralResultGroup_type)), true), + new attribute(strings[3592], new named_type(IFC4X3_RC3_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[3475], new named_type(IFC4X3_RC3_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC3_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3593], new named_type(IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2928], new named_type(IFC4X3_RC3_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2928], new named_type(IFC4X3_RC3_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC3_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3594], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[3216], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3595], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC3_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3596], new named_type(IFC4X3_RC3_IfcActionTypeEnum_type), false), + new attribute(strings[3597], new named_type(IFC4X3_RC3_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3598], new named_type(IFC4X3_RC3_IfcRatioMeasure_type), true), + new attribute(strings[2858], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3599], new named_type(IFC4X3_RC3_IfcLinearForceMeasure_type), true), + new attribute(strings[3600], new named_type(IFC4X3_RC3_IfcLinearForceMeasure_type), true), + new attribute(strings[3601], new named_type(IFC4X3_RC3_IfcLinearForceMeasure_type), true), + new attribute(strings[3602], new named_type(IFC4X3_RC3_IfcLinearMomentMeasure_type), true), + new attribute(strings[3603], new named_type(IFC4X3_RC3_IfcLinearMomentMeasure_type), true), + new attribute(strings[3604], new named_type(IFC4X3_RC3_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3605], new named_type(IFC4X3_RC3_IfcPlanarForceMeasure_type), true), + new attribute(strings[3606], new named_type(IFC4X3_RC3_IfcPlanarForceMeasure_type), true), + new attribute(strings[3607], new named_type(IFC4X3_RC3_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3608], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3609], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3610], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3611], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3612], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3613], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3614], new named_type(IFC4X3_RC3_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3615], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3616], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3617], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3618], new named_type(IFC4X3_RC3_IfcTorqueMeasure_type), true), + new attribute(strings[3619], new named_type(IFC4X3_RC3_IfcTorqueMeasure_type), true), + new attribute(strings[3620], new named_type(IFC4X3_RC3_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3621], new named_type(IFC4X3_RC3_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X3_RC3_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3622], new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3623], new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3624], new named_type(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[3478], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3625], new named_type(IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3626], new named_type(IFC4X3_RC3_IfcStructuralLoadGroup_type), true), + new attribute(strings[3627], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3593], new named_type(IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[2996], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcStyledItem_type->set_attributes({ + new attribute(strings[3628], new named_type(IFC4X3_RC3_IfcRepresentationItem_type), true), + new attribute(strings[3629], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPresentationStyle_type)), false), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSubedge_type->set_attributes({ + new attribute(strings[3630], new named_type(IFC4X3_RC3_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3631], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3632], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC3_IfcPcurve_type)), false), + new attribute(strings[3633], new named_type(IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3634], new named_type(IFC4X3_RC3_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[3155], new named_type(IFC4X3_RC3_IfcDirection_type), false), + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3635], new named_type(IFC4X3_RC3_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3636], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), true), + new attribute(strings[3637], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), true), + new attribute(strings[3638], new named_type(IFC4X3_RC3_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3639], new named_type(IFC4X3_RC3_IfcSurfaceSide_type), false), + new attribute(strings[3629], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC3_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3640], new named_type(IFC4X3_RC3_IfcColourRgb_type), false), + new attribute(strings[3641], new named_type(IFC4X3_RC3_IfcColourRgb_type), false), + new attribute(strings[3642], new named_type(IFC4X3_RC3_IfcColourRgb_type), false), + new attribute(strings[3643], new named_type(IFC4X3_RC3_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3644], new named_type(IFC4X3_RC3_IfcReal_type), true), + new attribute(strings[3645], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3646], new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true), + new attribute(strings[3642], new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true), + new attribute(strings[3640], new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true), + new attribute(strings[3647], new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true), + new attribute(strings[3648], new named_type(IFC4X3_RC3_IfcColourOrFactor_type), true), + new attribute(strings[3649], new named_type(IFC4X3_RC3_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3650], new named_type(IFC4X3_RC3_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3651], new named_type(IFC4X3_RC3_IfcColourRgb_type), false), + new attribute(strings[3652], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3653], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3654], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3655], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3656], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3657], new named_type(IFC4X3_RC3_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3658], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3659], new named_type(IFC4X3_RC3_IfcProfileDef_type), false), + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[3089], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[2997], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3660], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3090], new named_type(IFC4X3_RC3_IfcParameterValue_type), true), + new attribute(strings[3091], new named_type(IFC4X3_RC3_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[3199], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3661], new named_type(IFC4X3_RC3_IfcProfileDef_type), false), + new attribute(strings[3019], new named_type(IFC4X3_RC3_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3662], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3198], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3199], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3200], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3663], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3664], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3201], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTable_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3665], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTableRow_type)), true), + new attribute(strings[3666], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcTableColumn_type->set_attributes({ + new attribute(strings[2896], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcUnit_type), true), + new attribute(strings[3297], new named_type(IFC4X3_RC3_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcTableRow_type->set_attributes({ + new attribute(strings[3667], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), true), + new attribute(strings[3668], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcTank_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTankType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTask_type->set_attributes({ + new attribute(strings[2852], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3669], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3670], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3269], new named_type(IFC4X3_RC3_IfcInteger_type), true), + new attribute(strings[3671], new named_type(IFC4X3_RC3_IfcTaskTime_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTaskTime_type->set_attributes({ + new attribute(strings[3223], new named_type(IFC4X3_RC3_IfcTaskDurationEnum_type), true), + new attribute(strings[3672], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3525], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3526], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3673], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3674], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3675], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3676], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3677], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3678], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3679], new named_type(IFC4X3_RC3_IfcBoolean_type), true), + new attribute(strings[3530], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3680], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3533], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3534], new named_type(IFC4X3_RC3_IfcDateTime_type), true), + new attribute(strings[3681], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3537], new named_type(IFC4X3_RC3_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3682], new named_type(IFC4X3_RC3_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTaskType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTaskTypeEnum_type), false), + new attribute(strings[3669], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3683], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3684], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3685], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3686], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcLabel_type)), true), + new attribute(strings[3687], new named_type(IFC4X3_RC3_IfcURIReference_type), true), + new attribute(strings[3688], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTendon_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTendonTypeEnum_type), true), + new attribute(strings[3292], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3433], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3689], new named_type(IFC4X3_RC3_IfcForceMeasure_type), true), + new attribute(strings[3690], new named_type(IFC4X3_RC3_IfcPressureMeasure_type), true), + new attribute(strings[3691], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3692], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3693], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTendonConduit_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTendonConduitType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTendonType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTendonTypeEnum_type), false), + new attribute(strings[3292], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3433], new named_type(IFC4X3_RC3_IfcAreaMeasure_type), true), + new attribute(strings[3694], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[2986], new named_type(IFC4X3_RC3_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X3_RC3_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3695], new named_type(IFC4X3_RC3_IfcPresentableText_type), false), + new attribute(strings[3065], new named_type(IFC4X3_RC3_IfcAxis2Placement_type), false), + new attribute(strings[3696], new named_type(IFC4X3_RC3_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3697], new named_type(IFC4X3_RC3_IfcPlanarExtent_type), false), + new attribute(strings[3698], new named_type(IFC4X3_RC3_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcTextStyle_type->set_attributes({ + new attribute(strings[3699], new named_type(IFC4X3_RC3_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3700], new named_type(IFC4X3_RC3_IfcTextStyleTextModel_type), true), + new attribute(strings[3701], new named_type(IFC4X3_RC3_IfcTextFontSelect_type), false), + new attribute(strings[3070], new named_type(IFC4X3_RC3_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3702], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcTextFontName_type)), false), + new attribute(strings[3703], new named_type(IFC4X3_RC3_IfcFontStyle_type), true), + new attribute(strings[3704], new named_type(IFC4X3_RC3_IfcFontVariant_type), true), + new attribute(strings[3705], new named_type(IFC4X3_RC3_IfcFontWeight_type), true), + new attribute(strings[3706], new named_type(IFC4X3_RC3_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3707], new named_type(IFC4X3_RC3_IfcColour_type), false), + new attribute(strings[3708], new named_type(IFC4X3_RC3_IfcColour_type), true) + },{ + false, false + }); + IFC4X3_RC3_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3709], new named_type(IFC4X3_RC3_IfcSizeSelect_type), true), + new attribute(strings[3710], new named_type(IFC4X3_RC3_IfcTextAlignment_type), true), + new attribute(strings[3711], new named_type(IFC4X3_RC3_IfcTextDecoration_type), true), + new attribute(strings[3712], new named_type(IFC4X3_RC3_IfcSizeSelect_type), true), + new attribute(strings[3713], new named_type(IFC4X3_RC3_IfcSizeSelect_type), true), + new attribute(strings[3714], new named_type(IFC4X3_RC3_IfcTextTransformation_type), true), + new attribute(strings[3715], new named_type(IFC4X3_RC3_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3716], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3656], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[3658], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X3_RC3_IfcTextureMap_type->set_attributes({ + new attribute(strings[3717], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC3_IfcTextureVertex_type)), false), + new attribute(strings[3204], new named_type(IFC4X3_RC3_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcTextureVertex_type->set_attributes({ + new attribute(strings[2986], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3718], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3719], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[3546], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3547], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3051], new named_type(IFC4X3_RC3_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3720], new named_type(IFC4X3_RC3_IfcTime_type), false), + new attribute(strings[3721], new named_type(IFC4X3_RC3_IfcTime_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2887], new named_type(IFC4X3_RC3_IfcLabel_type), false), + new attribute(strings[2857], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3720], new named_type(IFC4X3_RC3_IfcDateTime_type), false), + new attribute(strings[3721], new named_type(IFC4X3_RC3_IfcDateTime_type), false), + new attribute(strings[3722], new named_type(IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3544], new named_type(IFC4X3_RC3_IfcDataOriginEnum_type), false), + new attribute(strings[3545], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3079], new named_type(IFC4X3_RC3_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[3218], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcValue_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3723], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3724], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC3_IfcTrackElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTrackElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTrackElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTrackElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTransformer_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTransformerType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTransportElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTransportElementTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTransportElementTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3725], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3726], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2973], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3727], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3728], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcParameterValue_type))), true), + new attribute(strings[3352], new named_type(IFC4X3_RC3_IfcBoolean_type), true), + new attribute(strings[3209], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC3_IfcPositiveInteger_type))), false), + new attribute(strings[3354], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3729], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[3305], new named_type(IFC4X3_RC3_IfcCurve_type), false), + new attribute(strings[3730], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC3_IfcTrimmingSelect_type)), false), + new attribute(strings[3731], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC3_IfcTrimmingSelect_type)), false), + new attribute(strings[3732], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3633], new named_type(IFC4X3_RC3_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC3_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTypeObject_type->set_attributes({ + new attribute(strings[3733], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[3734], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3735], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3736], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC3_IfcRepresentationMap_type)), true), + new attribute(strings[3138], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcTypeResource_type->set_attributes({ + new attribute(strings[2907], new named_type(IFC4X3_RC3_IfcIdentifier_type), true), + new attribute(strings[2853], new named_type(IFC4X3_RC3_IfcText_type), true), + new attribute(strings[3737], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3662], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3198], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3199], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3220], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3201], new named_type(IFC4X3_RC3_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3738], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcUnit_type)), false) + },{ + false + }); + IFC4X3_RC3_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcValve_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcValveType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVector_type->set_attributes({ + new attribute(strings[3160], new named_type(IFC4X3_RC3_IfcDirection_type), false), + new attribute(strings[3739], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC3_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X3_RC3_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3740], new named_type(IFC4X3_RC3_IfcVertex_type), false) + },{ + false + }); + IFC4X3_RC3_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3741], new named_type(IFC4X3_RC3_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC3_IfcVibrationDamper_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVibrationDamperType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVienneseBend_type->set_attributes({ + new attribute(strings[3742], new named_type(IFC4X3_RC3_IfcCurvatureMeasure_type), false), + new attribute(strings[3743], new named_type(IFC4X3_RC3_IfcCurvatureMeasure_type), false), + new attribute(strings[3744], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false), + new attribute(strings[2872], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC3_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3745], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC3_IfcGridAxis_type)), false), + new attribute(strings[3746], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC3_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X3_RC3_IfcVoidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWall_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWallType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWaterStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWindow_type->set_attributes({ + new attribute(strings[3110], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3111], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWindowTypeEnum_type), true), + new attribute(strings[3747], new named_type(IFC4X3_RC3_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3748], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[3114], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3115], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3118], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3749], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3750], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3751], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3752], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3753], new named_type(IFC4X3_RC3_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3124], new named_type(IFC4X3_RC3_IfcShapeAspect_type), true), + new attribute(strings[3120], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3125], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true), + new attribute(strings[3126], new named_type(IFC4X3_RC3_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[3112], new named_type(IFC4X3_RC3_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[3130], new named_type(IFC4X3_RC3_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3326], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3327], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3124], new named_type(IFC4X3_RC3_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWindowStyle_type->set_attributes({ + new attribute(strings[3131], new named_type(IFC4X3_RC3_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[3112], new named_type(IFC4X3_RC3_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[3132], new named_type(IFC4X3_RC3_IfcBoolean_type), false), + new attribute(strings[3133], new named_type(IFC4X3_RC3_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWindowType_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWindowTypeEnum_type), false), + new attribute(strings[3747], new named_type(IFC4X3_RC3_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[3132], new named_type(IFC4X3_RC3_IfcBoolean_type), true), + new attribute(strings[3748], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3754], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcWorkTime_type)), true), + new attribute(strings[3755], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcWorkTime_type)), true), + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWorkControl_type->set_attributes({ + new attribute(strings[3323], new named_type(IFC4X3_RC3_IfcDateTime_type), false), + new attribute(strings[3756], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC3_IfcPerson_type)), true), + new attribute(strings[2858], new named_type(IFC4X3_RC3_IfcLabel_type), true), + new attribute(strings[3757], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3678], new named_type(IFC4X3_RC3_IfcDuration_type), true), + new attribute(strings[3720], new named_type(IFC4X3_RC3_IfcDateTime_type), false), + new attribute(strings[3758], new named_type(IFC4X3_RC3_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2851], new named_type(IFC4X3_RC3_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcWorkTime_type->set_attributes({ + new attribute(strings[3759], new named_type(IFC4X3_RC3_IfcRecurrencePattern_type), true), + new attribute(strings[3760], new named_type(IFC4X3_RC3_IfcDate_type), true), + new attribute(strings[3761], new named_type(IFC4X3_RC3_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2981], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3662], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2918], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3198], new named_type(IFC4X3_RC3_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3199], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3220], new named_type(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC3_IfcZone_type->set_attributes({ + new attribute(strings[2980], new named_type(IFC4X3_RC3_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC3_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3762], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToActor_type, IFC4X3_RC3_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X3_RC3_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3764], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPerson_type, IFC4X3_RC3_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3765], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcOrganization_type, IFC4X3_RC3_IfcOrganization_type->attributes()[4]) + }); + IFC4X3_RC3_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3766], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC3_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3768], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesApproval_type, IFC4X3_RC3_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3769], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceApprovalRelationship_type, IFC4X3_RC3_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3770], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcApprovalRelationship_type, IFC4X3_RC3_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3771], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcApprovalRelationship_type, IFC4X3_RC3_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC3_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3772], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesClassification_type, IFC4X3_RC3_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3773], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcClassificationReference_type, IFC4X3_RC3_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC3_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3774], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesClassification_type, IFC4X3_RC3_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3773], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcClassificationReference_type, IFC4X3_RC3_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC3_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3775], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceConstraintRelationship_type, IFC4X3_RC3_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X3_RC3_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3776], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByProperties_type, IFC4X3_RC3_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3777], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDeclares_type, IFC4X3_RC3_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X3_RC3_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3778], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToControl_type, IFC4X3_RC3_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X3_RC3_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3779], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcCoordinateOperation_type, IFC4X3_RC3_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC3_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3780], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelCoversSpaces_type, IFC4X3_RC3_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3781], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelCoversBldgElements_type, IFC4X3_RC3_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X3_RC3_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelFlowControlElements_type, IFC4X3_RC3_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X3_RC3_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsPortToElement_type, IFC4X3_RC3_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X3_RC3_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3784], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelFlowControlElements_type, IFC4X3_RC3_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X3_RC3_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesDocument_type, IFC4X3_RC3_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcDocumentReference_type, IFC4X3_RC3_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcDocumentInformationRelationship_type, IFC4X3_RC3_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3788], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcDocumentInformationRelationship_type, IFC4X3_RC3_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X3_RC3_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3789], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesDocument_type, IFC4X3_RC3_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X3_RC3_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelFillsElement_type, IFC4X3_RC3_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsElements_type, IFC4X3_RC3_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3792], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelInterferesElements_type, IFC4X3_RC3_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3793], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelInterferesElements_type, IFC4X3_RC3_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3794], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelProjectsElement_type, IFC4X3_RC3_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3795], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelVoidsElement_type, IFC4X3_RC3_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary_type, IFC4X3_RC3_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsElements_type, IFC4X3_RC3_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3766], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelCoversBldgElements_type, IFC4X3_RC3_IfcRelCoversBldgElements_type->attributes()[0]) + }); + IFC4X3_RC3_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3800], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X3_RC3_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3801], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary_type, IFC4X3_RC3_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC3_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3802], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcTextureMap_type, IFC4X3_RC3_IfcTextureMap_type->attributes()[1]) + }); + IFC4X3_RC3_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3803], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcRelProjectsElement_type, IFC4X3_RC3_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X3_RC3_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3804], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcRelVoidsElement_type, IFC4X3_RC3_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X3_RC3_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3805], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcGeometricRepresentationSubContext_type, IFC4X3_RC3_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3779], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcCoordinateOperation_type, IFC4X3_RC3_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC3_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3806], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcGrid_type, IFC4X3_RC3_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3807], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcGrid_type, IFC4X3_RC3_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3808], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcGrid_type, IFC4X3_RC3_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3809], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcVirtualGridIntersection_type, IFC4X3_RC3_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X3_RC3_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3810], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToGroup_type, IFC4X3_RC3_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4X3_RC3_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3811], inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcPolygonalFaceSet_type, IFC4X3_RC3_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4X3_RC3_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3812], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesLibrary_type, IFC4X3_RC3_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3813], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcLibraryReference_type, IFC4X3_RC3_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X3_RC3_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3814], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesLibrary_type, IFC4X3_RC3_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X3_RC3_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3815], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3770], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcMaterialRelationship_type, IFC4X3_RC3_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3816], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcMaterialRelationship_type, IFC4X3_RC3_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X3_RC3_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3817], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcMaterialConstituentSet_type, IFC4X3_RC3_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X3_RC3_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3818], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociatesMaterial_type, IFC4X3_RC3_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3011], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcMaterialProperties_type, IFC4X3_RC3_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X3_RC3_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3819], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcMaterialLayerSet_type, IFC4X3_RC3_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X3_RC3_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3820], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC3_IfcMaterialProfileSet_type, IFC4X3_RC3_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X3_RC3_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3818], inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcRelAssociatesMaterial_type, IFC4X3_RC3_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X3_RC3_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDefinesByObject_type, IFC4X3_RC3_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3777], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByObject_type, IFC4X3_RC3_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3822], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDefinesByType_type, IFC4X3_RC3_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3776], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByProperties_type, IFC4X3_RC3_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X3_RC3_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3823], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssigns_type, IFC4X3_RC3_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3824], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelNests_type, IFC4X3_RC3_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3825], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelNests_type, IFC4X3_RC3_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3826], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDeclares_type, IFC4X3_RC3_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3827], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAggregates_type, IFC4X3_RC3_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3828], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelAggregates_type, IFC4X3_RC3_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3829], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociates_type, IFC4X3_RC3_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC3_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3830], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcProduct_type, IFC4X3_RC3_IfcProduct_type->attributes()[0]) + }); + IFC4X3_RC3_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3831], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelFillsElement_type, IFC4X3_RC3_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X3_RC3_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3832], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcOrganizationRelationship_type, IFC4X3_RC3_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3771], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcOrganizationRelationship_type, IFC4X3_RC3_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3833], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPersonAndOrganization_type, IFC4X3_RC3_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X3_RC3_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3834], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPersonAndOrganization_type, IFC4X3_RC3_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X3_RC3_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3835], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcPhysicalComplexQuantity_type, IFC4X3_RC3_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X3_RC3_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3836], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsPortToElement_type, IFC4X3_RC3_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsPorts_type, IFC4X3_RC3_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsPorts_type, IFC4X3_RC3_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X3_RC3_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3766], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3837], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelPositions_type, IFC4X3_RC3_IfcRelPositions_type->attributes()[0]) + }); + IFC4X3_RC3_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3838], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSequence_type, IFC4X3_RC3_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3839], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSequence_type, IFC4X3_RC3_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3840], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProcess_type, IFC4X3_RC3_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC3_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3841], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProduct_type, IFC4X3_RC3_IfcRelAssignsToProduct_type->attributes()[0]), + new inverse_attribute(strings[3842], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelPositions_type, IFC4X3_RC3_IfcRelPositions_type->attributes()[1]), + new inverse_attribute(strings[3843], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC3_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3844], inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcProduct_type, IFC4X3_RC3_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3845], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcShapeAspect_type, IFC4X3_RC3_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X3_RC3_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3011], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcProfileProperties_type, IFC4X3_RC3_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X3_RC3_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3846], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertySet_type, IFC4X3_RC3_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3847], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertyDependencyRelationship_type, IFC4X3_RC3_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3848], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertyDependencyRelationship_type, IFC4X3_RC3_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3835], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcComplexProperty_type, IFC4X3_RC3_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceConstraintRelationship_type, IFC4X3_RC3_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3850], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcResourceApprovalRelationship_type, IFC4X3_RC3_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC3_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3826], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDeclares_type, IFC4X3_RC3_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3829], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssociates_type, IFC4X3_RC3_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC3_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3851], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcTypeObject_type, IFC4X3_RC3_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3776], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByTemplate_type, IFC4X3_RC3_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3852], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByProperties_type, IFC4X3_RC3_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X3_RC3_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3853], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelDefinesByTemplate_type, IFC4X3_RC3_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X3_RC3_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3854], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcComplexPropertyTemplate_type, IFC4X3_RC3_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3855], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPropertySetTemplate_type, IFC4X3_RC3_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2882], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3856], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X3_RC3_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3857], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRepresentationMap_type, IFC4X3_RC3_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3858], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcPresentationLayerAssignment_type, IFC4X3_RC3_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3859], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcProductRepresentation_type, IFC4X3_RC3_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X3_RC3_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3860], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRepresentation_type, IFC4X3_RC3_IfcRepresentation_type->attributes()[0]) + }); + IFC4X3_RC3_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3861], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcPresentationLayerAssignment_type, IFC4X3_RC3_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3862], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcStyledItem_type, IFC4X3_RC3_IfcStyledItem_type->attributes()[0]) + }); + IFC4X3_RC3_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3845], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcShapeAspect_type, IFC4X3_RC3_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3863], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcMappedItem_type, IFC4X3_RC3_IfcMappedItem_type->attributes()[0]) + }); + IFC4X3_RC3_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3864], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToResource_type, IFC4X3_RC3_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC3_IfcSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3865], inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcCompositeCurve_type, IFC4X3_RC3_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X3_RC3_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3767], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3866], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcShapeAspect_type, IFC4X3_RC3_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X3_RC3_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelCoversSpaces_type, IFC4X3_RC3_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3801], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelSpaceBoundary_type, IFC4X3_RC3_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC3_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3867], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, IFC4X3_RC3_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3868], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelServicesBuildings_type, IFC4X3_RC3_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3869], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4X3_RC3_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3870], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X3_RC3_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3871], inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcRelConnectsStructuralMember_type, IFC4X3_RC3_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X3_RC3_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3872], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type, IFC4X3_RC3_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X3_RC3_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3873], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcStructuralResultGroup_type, IFC4X3_RC3_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3874], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcStructuralAnalysisModel_type, IFC4X3_RC3_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X3_RC3_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3875], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelConnectsStructuralMember_type, IFC4X3_RC3_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X3_RC3_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3876], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcStructuralAnalysisModel_type, IFC4X3_RC3_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X3_RC3_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3877], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcTextureCoordinate_type, IFC4X3_RC3_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3878], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcSurfaceStyleWithTextures_type, IFC4X3_RC3_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X3_RC3_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3879], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelServicesBuildings_type, IFC4X3_RC3_IfcRelServicesBuildings_type->attributes()[0]), + new inverse_attribute(strings[3880], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC3_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3881], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcIndexedColourMap_type, IFC4X3_RC3_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3882], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcIndexedTextureMap_type, IFC4X3_RC3_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X3_RC3_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3763], inverse_attribute::set_type, 1, -1, IFC4X3_RC3_IfcExternalReferenceRelationship_type, IFC4X3_RC3_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC3_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3883], inverse_attribute::set_type, 0, 1, IFC4X3_RC3_IfcRelDefinesByType_type, IFC4X3_RC3_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X3_RC3_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProcess_type, IFC4X3_RC3_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC3_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3841], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToProduct_type, IFC4X3_RC3_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X3_RC3_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3864], inverse_attribute::set_type, 0, -1, IFC4X3_RC3_IfcRelAssignsToResource_type, IFC4X3_RC3_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC3_IfcControl_type->set_subtypes({ + IFC4X3_RC3_IfcActionRequest_type,IFC4X3_RC3_IfcCostItem_type,IFC4X3_RC3_IfcCostSchedule_type,IFC4X3_RC3_IfcPerformanceHistory_type,IFC4X3_RC3_IfcPermit_type,IFC4X3_RC3_IfcProjectOrder_type,IFC4X3_RC3_IfcWorkCalendar_type,IFC4X3_RC3_IfcWorkControl_type + }); + IFC4X3_RC3_IfcObject_type->set_subtypes({ + IFC4X3_RC3_IfcActor_type,IFC4X3_RC3_IfcControl_type,IFC4X3_RC3_IfcGroup_type,IFC4X3_RC3_IfcProcess_type,IFC4X3_RC3_IfcProduct_type,IFC4X3_RC3_IfcResource_type + }); + IFC4X3_RC3_IfcDistributionControlElement_type->set_subtypes({ + IFC4X3_RC3_IfcActuator_type,IFC4X3_RC3_IfcAlarm_type,IFC4X3_RC3_IfcController_type,IFC4X3_RC3_IfcFlowInstrument_type,IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type,IFC4X3_RC3_IfcSensor_type,IFC4X3_RC3_IfcUnitaryControlElement_type + }); + IFC4X3_RC3_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X3_RC3_IfcActuatorType_type,IFC4X3_RC3_IfcAlarmType_type,IFC4X3_RC3_IfcControllerType_type,IFC4X3_RC3_IfcFlowInstrumentType_type,IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type,IFC4X3_RC3_IfcSensorType_type,IFC4X3_RC3_IfcUnitaryControlElementType_type + }); + IFC4X3_RC3_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X3_RC3_IfcAdvancedBrep_type,IFC4X3_RC3_IfcFacetedBrep_type + }); + IFC4X3_RC3_IfcAdvancedBrep_type->set_subtypes({ + IFC4X3_RC3_IfcAdvancedBrepWithVoids_type + }); + IFC4X3_RC3_IfcFaceSurface_type->set_subtypes({ + IFC4X3_RC3_IfcAdvancedFace_type + }); + IFC4X3_RC3_IfcFlowTerminal_type->set_subtypes({ + IFC4X3_RC3_IfcAirTerminal_type,IFC4X3_RC3_IfcAudioVisualAppliance_type,IFC4X3_RC3_IfcCommunicationsAppliance_type,IFC4X3_RC3_IfcElectricAppliance_type,IFC4X3_RC3_IfcFireSuppressionTerminal_type,IFC4X3_RC3_IfcLamp_type,IFC4X3_RC3_IfcLightFixture_type,IFC4X3_RC3_IfcLiquidTerminal_type,IFC4X3_RC3_IfcMedicalDevice_type,IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type,IFC4X3_RC3_IfcOutlet_type,IFC4X3_RC3_IfcSanitaryTerminal_type,IFC4X3_RC3_IfcSignal_type,IFC4X3_RC3_IfcSpaceHeater_type,IFC4X3_RC3_IfcStackTerminal_type,IFC4X3_RC3_IfcWasteTerminal_type + }); + IFC4X3_RC3_IfcFlowController_type->set_subtypes({ + IFC4X3_RC3_IfcAirTerminalBox_type,IFC4X3_RC3_IfcDamper_type,IFC4X3_RC3_IfcDistributionBoard_type,IFC4X3_RC3_IfcElectricDistributionBoard_type,IFC4X3_RC3_IfcElectricTimeControl_type,IFC4X3_RC3_IfcFlowMeter_type,IFC4X3_RC3_IfcProtectiveDevice_type,IFC4X3_RC3_IfcSwitchingDevice_type,IFC4X3_RC3_IfcValve_type + }); + IFC4X3_RC3_IfcFlowControllerType_type->set_subtypes({ + IFC4X3_RC3_IfcAirTerminalBoxType_type,IFC4X3_RC3_IfcDamperType_type,IFC4X3_RC3_IfcDistributionBoardType_type,IFC4X3_RC3_IfcElectricDistributionBoardType_type,IFC4X3_RC3_IfcElectricTimeControlType_type,IFC4X3_RC3_IfcFlowMeterType_type,IFC4X3_RC3_IfcProtectiveDeviceType_type,IFC4X3_RC3_IfcSwitchingDeviceType_type,IFC4X3_RC3_IfcValveType_type + }); + IFC4X3_RC3_IfcFlowTerminalType_type->set_subtypes({ + IFC4X3_RC3_IfcAirTerminalType_type,IFC4X3_RC3_IfcAudioVisualApplianceType_type,IFC4X3_RC3_IfcCommunicationsApplianceType_type,IFC4X3_RC3_IfcElectricApplianceType_type,IFC4X3_RC3_IfcFireSuppressionTerminalType_type,IFC4X3_RC3_IfcLampType_type,IFC4X3_RC3_IfcLightFixtureType_type,IFC4X3_RC3_IfcLiquidTerminalType_type,IFC4X3_RC3_IfcMedicalDeviceType_type,IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type,IFC4X3_RC3_IfcOutletType_type,IFC4X3_RC3_IfcSanitaryTerminalType_type,IFC4X3_RC3_IfcSignalType_type,IFC4X3_RC3_IfcSpaceHeaterType_type,IFC4X3_RC3_IfcStackTerminalType_type,IFC4X3_RC3_IfcWasteTerminalType_type + }); + IFC4X3_RC3_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X3_RC3_IfcAirToAirHeatRecovery_type,IFC4X3_RC3_IfcBoiler_type,IFC4X3_RC3_IfcBurner_type,IFC4X3_RC3_IfcChiller_type,IFC4X3_RC3_IfcCoil_type,IFC4X3_RC3_IfcCondenser_type,IFC4X3_RC3_IfcCooledBeam_type,IFC4X3_RC3_IfcCoolingTower_type,IFC4X3_RC3_IfcElectricGenerator_type,IFC4X3_RC3_IfcElectricMotor_type,IFC4X3_RC3_IfcEngine_type,IFC4X3_RC3_IfcEvaporativeCooler_type,IFC4X3_RC3_IfcEvaporator_type,IFC4X3_RC3_IfcHeatExchanger_type,IFC4X3_RC3_IfcHumidifier_type,IFC4X3_RC3_IfcMotorConnection_type,IFC4X3_RC3_IfcSolarDevice_type,IFC4X3_RC3_IfcTransformer_type,IFC4X3_RC3_IfcTubeBundle_type,IFC4X3_RC3_IfcUnitaryEquipment_type + }); + IFC4X3_RC3_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type,IFC4X3_RC3_IfcBoilerType_type,IFC4X3_RC3_IfcBurnerType_type,IFC4X3_RC3_IfcChillerType_type,IFC4X3_RC3_IfcCoilType_type,IFC4X3_RC3_IfcCondenserType_type,IFC4X3_RC3_IfcCooledBeamType_type,IFC4X3_RC3_IfcCoolingTowerType_type,IFC4X3_RC3_IfcElectricGeneratorType_type,IFC4X3_RC3_IfcElectricMotorType_type,IFC4X3_RC3_IfcEngineType_type,IFC4X3_RC3_IfcEvaporativeCoolerType_type,IFC4X3_RC3_IfcEvaporatorType_type,IFC4X3_RC3_IfcHeatExchangerType_type,IFC4X3_RC3_IfcHumidifierType_type,IFC4X3_RC3_IfcMotorConnectionType_type,IFC4X3_RC3_IfcSolarDeviceType_type,IFC4X3_RC3_IfcTransformerType_type,IFC4X3_RC3_IfcTubeBundleType_type,IFC4X3_RC3_IfcUnitaryEquipmentType_type + }); + IFC4X3_RC3_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X3_RC3_IfcAlignment_type + }); + IFC4X3_RC3_IfcLinearElement_type->set_subtypes({ + IFC4X3_RC3_IfcAlignmentCant_type,IFC4X3_RC3_IfcAlignmentHorizontal_type,IFC4X3_RC3_IfcAlignmentSegment_type,IFC4X3_RC3_IfcAlignmentVertical_type + }); + IFC4X3_RC3_IfcAlignmentParameterSegment_type->set_subtypes({ + IFC4X3_RC3_IfcAlignmentCantSegment_type,IFC4X3_RC3_IfcAlignmentHorizontalSegment_type,IFC4X3_RC3_IfcAlignmentVerticalSegment_type + }); + IFC4X3_RC3_IfcProduct_type->set_subtypes({ + IFC4X3_RC3_IfcAnnotation_type,IFC4X3_RC3_IfcElement_type,IFC4X3_RC3_IfcLinearElement_type,IFC4X3_RC3_IfcPort_type,IFC4X3_RC3_IfcPositioningElement_type,IFC4X3_RC3_IfcProxy_type,IFC4X3_RC3_IfcSpatialElement_type,IFC4X3_RC3_IfcStructuralActivity_type,IFC4X3_RC3_IfcStructuralItem_type + }); + IFC4X3_RC3_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X3_RC3_IfcAnnotationFillArea_type,IFC4X3_RC3_IfcBooleanResult_type,IFC4X3_RC3_IfcBoundingBox_type,IFC4X3_RC3_IfcCartesianPointList_type,IFC4X3_RC3_IfcCartesianTransformationOperator_type,IFC4X3_RC3_IfcCsgPrimitive3D_type,IFC4X3_RC3_IfcCurve_type,IFC4X3_RC3_IfcDirection_type,IFC4X3_RC3_IfcFaceBasedSurfaceModel_type,IFC4X3_RC3_IfcFillAreaStyleHatching_type,IFC4X3_RC3_IfcFillAreaStyleTiles_type,IFC4X3_RC3_IfcGeometricSet_type,IFC4X3_RC3_IfcHalfSpaceSolid_type,IFC4X3_RC3_IfcLightSource_type,IFC4X3_RC3_IfcPlacement_type,IFC4X3_RC3_IfcPlanarExtent_type,IFC4X3_RC3_IfcPoint_type,IFC4X3_RC3_IfcSectionedSpine_type,IFC4X3_RC3_IfcSegment_type,IFC4X3_RC3_IfcShellBasedSurfaceModel_type,IFC4X3_RC3_IfcSolidModel_type,IFC4X3_RC3_IfcSurface_type,IFC4X3_RC3_IfcTessellatedItem_type,IFC4X3_RC3_IfcTextLiteral_type,IFC4X3_RC3_IfcVector_type + }); + IFC4X3_RC3_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X3_RC3_IfcApprovalRelationship_type,IFC4X3_RC3_IfcCurrencyRelationship_type,IFC4X3_RC3_IfcDocumentInformationRelationship_type,IFC4X3_RC3_IfcExternalReferenceRelationship_type,IFC4X3_RC3_IfcMaterialRelationship_type,IFC4X3_RC3_IfcOrganizationRelationship_type,IFC4X3_RC3_IfcPropertyDependencyRelationship_type,IFC4X3_RC3_IfcResourceApprovalRelationship_type,IFC4X3_RC3_IfcResourceConstraintRelationship_type + }); + IFC4X3_RC3_IfcProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcArbitraryClosedProfileDef_type,IFC4X3_RC3_IfcArbitraryOpenProfileDef_type,IFC4X3_RC3_IfcCompositeProfileDef_type,IFC4X3_RC3_IfcDerivedProfileDef_type,IFC4X3_RC3_IfcOpenCrossProfileDef_type,IFC4X3_RC3_IfcParameterizedProfileDef_type + }); + IFC4X3_RC3_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X3_RC3_IfcGroup_type->set_subtypes({ + IFC4X3_RC3_IfcAsset_type,IFC4X3_RC3_IfcInventory_type,IFC4X3_RC3_IfcStructuralLoadGroup_type,IFC4X3_RC3_IfcStructuralResultGroup_type,IFC4X3_RC3_IfcSystem_type + }); + IFC4X3_RC3_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type,IFC4X3_RC3_IfcCShapeProfileDef_type,IFC4X3_RC3_IfcCircleProfileDef_type,IFC4X3_RC3_IfcEllipseProfileDef_type,IFC4X3_RC3_IfcIShapeProfileDef_type,IFC4X3_RC3_IfcLShapeProfileDef_type,IFC4X3_RC3_IfcRectangleProfileDef_type,IFC4X3_RC3_IfcTShapeProfileDef_type,IFC4X3_RC3_IfcTrapeziumProfileDef_type,IFC4X3_RC3_IfcUShapeProfileDef_type,IFC4X3_RC3_IfcZShapeProfileDef_type + }); + IFC4X3_RC3_IfcPlacement_type->set_subtypes({ + IFC4X3_RC3_IfcAxis1Placement_type,IFC4X3_RC3_IfcAxis2Placement2D_type,IFC4X3_RC3_IfcAxis2Placement3D_type,IFC4X3_RC3_IfcAxis2PlacementLinear_type + }); + IFC4X3_RC3_IfcBoundedCurve_type->set_subtypes({ + IFC4X3_RC3_IfcBSplineCurve_type,IFC4X3_RC3_IfcCompositeCurve_type,IFC4X3_RC3_IfcIndexedPolyCurve_type,IFC4X3_RC3_IfcPolyline_type,IFC4X3_RC3_IfcTrimmedCurve_type,IFC4X3_RC3_IfcVienneseBend_type + }); + IFC4X3_RC3_IfcBSplineCurve_type->set_subtypes({ + IFC4X3_RC3_IfcBSplineCurveWithKnots_type + }); + IFC4X3_RC3_IfcBoundedSurface_type->set_subtypes({ + IFC4X3_RC3_IfcBSplineSurface_type,IFC4X3_RC3_IfcCurveBoundedPlane_type,IFC4X3_RC3_IfcCurveBoundedSurface_type,IFC4X3_RC3_IfcRectangularTrimmedSurface_type + }); + IFC4X3_RC3_IfcBSplineSurface_type->set_subtypes({ + IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type + }); + IFC4X3_RC3_IfcBuiltElement_type->set_subtypes({ + IFC4X3_RC3_IfcBeam_type,IFC4X3_RC3_IfcBearing_type,IFC4X3_RC3_IfcBuildingElementProxy_type,IFC4X3_RC3_IfcChimney_type,IFC4X3_RC3_IfcColumn_type,IFC4X3_RC3_IfcCourse_type,IFC4X3_RC3_IfcCovering_type,IFC4X3_RC3_IfcCurtainWall_type,IFC4X3_RC3_IfcDeepFoundation_type,IFC4X3_RC3_IfcDoor_type,IFC4X3_RC3_IfcEarthworksElement_type,IFC4X3_RC3_IfcFooting_type,IFC4X3_RC3_IfcKerb_type,IFC4X3_RC3_IfcMember_type,IFC4X3_RC3_IfcMooringDevice_type,IFC4X3_RC3_IfcNavigationElement_type,IFC4X3_RC3_IfcPavement_type,IFC4X3_RC3_IfcPlate_type,IFC4X3_RC3_IfcRail_type,IFC4X3_RC3_IfcRailing_type,IFC4X3_RC3_IfcRamp_type,IFC4X3_RC3_IfcRampFlight_type,IFC4X3_RC3_IfcRoof_type,IFC4X3_RC3_IfcShadingDevice_type,IFC4X3_RC3_IfcSlab_type,IFC4X3_RC3_IfcStair_type,IFC4X3_RC3_IfcStairFlight_type,IFC4X3_RC3_IfcTrackElement_type,IFC4X3_RC3_IfcWall_type,IFC4X3_RC3_IfcWindow_type + }); + IFC4X3_RC3_IfcBeam_type->set_subtypes({ + IFC4X3_RC3_IfcBeamStandardCase_type + }); + IFC4X3_RC3_IfcBuiltElementType_type->set_subtypes({ + IFC4X3_RC3_IfcBeamType_type,IFC4X3_RC3_IfcBearingType_type,IFC4X3_RC3_IfcBuildingElementProxyType_type,IFC4X3_RC3_IfcChimneyType_type,IFC4X3_RC3_IfcColumnType_type,IFC4X3_RC3_IfcCourseType_type,IFC4X3_RC3_IfcCoveringType_type,IFC4X3_RC3_IfcCurtainWallType_type,IFC4X3_RC3_IfcDeepFoundationType_type,IFC4X3_RC3_IfcDoorType_type,IFC4X3_RC3_IfcFootingType_type,IFC4X3_RC3_IfcKerbType_type,IFC4X3_RC3_IfcMemberType_type,IFC4X3_RC3_IfcMooringDeviceType_type,IFC4X3_RC3_IfcNavigationElementType_type,IFC4X3_RC3_IfcPavementType_type,IFC4X3_RC3_IfcPlateType_type,IFC4X3_RC3_IfcRailType_type,IFC4X3_RC3_IfcRailingType_type,IFC4X3_RC3_IfcRampFlightType_type,IFC4X3_RC3_IfcRampType_type,IFC4X3_RC3_IfcRoofType_type,IFC4X3_RC3_IfcShadingDeviceType_type,IFC4X3_RC3_IfcSlabType_type,IFC4X3_RC3_IfcStairFlightType_type,IFC4X3_RC3_IfcStairType_type,IFC4X3_RC3_IfcTrackElementType_type,IFC4X3_RC3_IfcWallType_type,IFC4X3_RC3_IfcWindowType_type + }); + IFC4X3_RC3_IfcSurfaceTexture_type->set_subtypes({ + IFC4X3_RC3_IfcBlobTexture_type,IFC4X3_RC3_IfcImageTexture_type,IFC4X3_RC3_IfcPixelTexture_type + }); + IFC4X3_RC3_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X3_RC3_IfcBlock_type,IFC4X3_RC3_IfcRectangularPyramid_type,IFC4X3_RC3_IfcRightCircularCone_type,IFC4X3_RC3_IfcRightCircularCylinder_type,IFC4X3_RC3_IfcSphere_type + }); + IFC4X3_RC3_IfcBooleanResult_type->set_subtypes({ + IFC4X3_RC3_IfcBooleanClippingResult_type + }); + IFC4X3_RC3_IfcGeotechnicalAssembly_type->set_subtypes({ + IFC4X3_RC3_IfcBorehole_type,IFC4X3_RC3_IfcGeomodel_type,IFC4X3_RC3_IfcGeoslice_type + }); + IFC4X3_RC3_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X3_RC3_IfcBoundaryCurve_type + }); + IFC4X3_RC3_IfcBoundaryCondition_type->set_subtypes({ + IFC4X3_RC3_IfcBoundaryEdgeCondition_type,IFC4X3_RC3_IfcBoundaryFaceCondition_type,IFC4X3_RC3_IfcBoundaryNodeCondition_type + }); + IFC4X3_RC3_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type + }); + IFC4X3_RC3_IfcCurve_type->set_subtypes({ + IFC4X3_RC3_IfcBoundedCurve_type,IFC4X3_RC3_IfcConic_type,IFC4X3_RC3_IfcLine_type,IFC4X3_RC3_IfcOffsetCurve_type,IFC4X3_RC3_IfcPcurve_type,IFC4X3_RC3_IfcPolynomialCurve_type,IFC4X3_RC3_IfcSpiral_type,IFC4X3_RC3_IfcSurfaceCurve_type + }); + IFC4X3_RC3_IfcSurface_type->set_subtypes({ + IFC4X3_RC3_IfcBoundedSurface_type,IFC4X3_RC3_IfcElementarySurface_type,IFC4X3_RC3_IfcSectionedSurface_type,IFC4X3_RC3_IfcSweptSurface_type + }); + IFC4X3_RC3_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X3_RC3_IfcBoxedHalfSpace_type,IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X3_RC3_IfcFacility_type->set_subtypes({ + IFC4X3_RC3_IfcBridge_type,IFC4X3_RC3_IfcBuilding_type,IFC4X3_RC3_IfcMarineFacility_type,IFC4X3_RC3_IfcRailway_type,IFC4X3_RC3_IfcRoad_type + }); + IFC4X3_RC3_IfcElementComponent_type->set_subtypes({ + IFC4X3_RC3_IfcBuildingElementPart_type,IFC4X3_RC3_IfcDiscreteAccessory_type,IFC4X3_RC3_IfcFastener_type,IFC4X3_RC3_IfcImpactProtectionDevice_type,IFC4X3_RC3_IfcMechanicalFastener_type,IFC4X3_RC3_IfcReinforcingElement_type,IFC4X3_RC3_IfcSign_type,IFC4X3_RC3_IfcVibrationDamper_type,IFC4X3_RC3_IfcVibrationIsolator_type + }); + IFC4X3_RC3_IfcElementComponentType_type->set_subtypes({ + IFC4X3_RC3_IfcBuildingElementPartType_type,IFC4X3_RC3_IfcDiscreteAccessoryType_type,IFC4X3_RC3_IfcFastenerType_type,IFC4X3_RC3_IfcImpactProtectionDeviceType_type,IFC4X3_RC3_IfcMechanicalFastenerType_type,IFC4X3_RC3_IfcReinforcingElementType_type,IFC4X3_RC3_IfcSignType_type,IFC4X3_RC3_IfcVibrationDamperType_type,IFC4X3_RC3_IfcVibrationIsolatorType_type + }); + IFC4X3_RC3_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC3_IfcBuildingStorey_type,IFC4X3_RC3_IfcFacility_type,IFC4X3_RC3_IfcFacilityPart_type,IFC4X3_RC3_IfcSite_type,IFC4X3_RC3_IfcSpace_type + }); + IFC4X3_RC3_IfcSystem_type->set_subtypes({ + IFC4X3_RC3_IfcBuildingSystem_type,IFC4X3_RC3_IfcBuiltSystem_type,IFC4X3_RC3_IfcDistributionSystem_type,IFC4X3_RC3_IfcStructuralAnalysisModel_type,IFC4X3_RC3_IfcZone_type + }); + IFC4X3_RC3_IfcElement_type->set_subtypes({ + IFC4X3_RC3_IfcBuiltElement_type,IFC4X3_RC3_IfcCivilElement_type,IFC4X3_RC3_IfcDistributionElement_type,IFC4X3_RC3_IfcElementAssembly_type,IFC4X3_RC3_IfcElementComponent_type,IFC4X3_RC3_IfcFeatureElement_type,IFC4X3_RC3_IfcFurnishingElement_type,IFC4X3_RC3_IfcGeographicElement_type,IFC4X3_RC3_IfcGeotechnicalElement_type,IFC4X3_RC3_IfcTransportElement_type,IFC4X3_RC3_IfcVirtualElement_type + }); + IFC4X3_RC3_IfcElementType_type->set_subtypes({ + IFC4X3_RC3_IfcBuiltElementType_type,IFC4X3_RC3_IfcCivilElementType_type,IFC4X3_RC3_IfcDistributionElementType_type,IFC4X3_RC3_IfcElementAssemblyType_type,IFC4X3_RC3_IfcElementComponentType_type,IFC4X3_RC3_IfcFurnishingElementType_type,IFC4X3_RC3_IfcGeographicElementType_type,IFC4X3_RC3_IfcTransportElementType_type + }); + IFC4X3_RC3_IfcFlowFitting_type->set_subtypes({ + IFC4X3_RC3_IfcCableCarrierFitting_type,IFC4X3_RC3_IfcCableFitting_type,IFC4X3_RC3_IfcDuctFitting_type,IFC4X3_RC3_IfcJunctionBox_type,IFC4X3_RC3_IfcPipeFitting_type + }); + IFC4X3_RC3_IfcFlowFittingType_type->set_subtypes({ + IFC4X3_RC3_IfcCableCarrierFittingType_type,IFC4X3_RC3_IfcCableFittingType_type,IFC4X3_RC3_IfcDuctFittingType_type,IFC4X3_RC3_IfcJunctionBoxType_type,IFC4X3_RC3_IfcPipeFittingType_type + }); + IFC4X3_RC3_IfcFlowSegment_type->set_subtypes({ + IFC4X3_RC3_IfcCableCarrierSegment_type,IFC4X3_RC3_IfcCableSegment_type,IFC4X3_RC3_IfcConveyorSegment_type,IFC4X3_RC3_IfcDuctSegment_type,IFC4X3_RC3_IfcPipeSegment_type + }); + IFC4X3_RC3_IfcFlowSegmentType_type->set_subtypes({ + IFC4X3_RC3_IfcCableCarrierSegmentType_type,IFC4X3_RC3_IfcCableSegmentType_type,IFC4X3_RC3_IfcConveyorSegmentType_type,IFC4X3_RC3_IfcDuctSegmentType_type,IFC4X3_RC3_IfcPipeSegmentType_type + }); + IFC4X3_RC3_IfcDeepFoundation_type->set_subtypes({ + IFC4X3_RC3_IfcCaissonFoundation_type,IFC4X3_RC3_IfcPile_type + }); + IFC4X3_RC3_IfcDeepFoundationType_type->set_subtypes({ + IFC4X3_RC3_IfcCaissonFoundationType_type,IFC4X3_RC3_IfcPileType_type + }); + IFC4X3_RC3_IfcPoint_type->set_subtypes({ + IFC4X3_RC3_IfcCartesianPoint_type,IFC4X3_RC3_IfcPointByDistanceExpression_type,IFC4X3_RC3_IfcPointOnCurve_type,IFC4X3_RC3_IfcPointOnSurface_type + }); + IFC4X3_RC3_IfcCartesianPointList_type->set_subtypes({ + IFC4X3_RC3_IfcCartesianPointList2D_type,IFC4X3_RC3_IfcCartesianPointList3D_type + }); + IFC4X3_RC3_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X3_RC3_IfcCartesianTransformationOperator2D_type,IFC4X3_RC3_IfcCartesianTransformationOperator3D_type + }); + IFC4X3_RC3_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X3_RC3_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X3_RC3_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcCenterLineProfileDef_type + }); + IFC4X3_RC3_IfcConic_type->set_subtypes({ + IFC4X3_RC3_IfcCircle_type,IFC4X3_RC3_IfcEllipse_type + }); + IFC4X3_RC3_IfcCircleProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcCircleHollowProfileDef_type + }); + IFC4X3_RC3_IfcExternalInformation_type->set_subtypes({ + IFC4X3_RC3_IfcClassification_type,IFC4X3_RC3_IfcDocumentInformation_type,IFC4X3_RC3_IfcLibraryInformation_type + }); + IFC4X3_RC3_IfcExternalReference_type->set_subtypes({ + IFC4X3_RC3_IfcClassificationReference_type,IFC4X3_RC3_IfcDocumentReference_type,IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type,IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type,IFC4X3_RC3_IfcExternallyDefinedTextFont_type,IFC4X3_RC3_IfcLibraryReference_type + }); + IFC4X3_RC3_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X3_RC3_IfcClosedShell_type,IFC4X3_RC3_IfcOpenShell_type + }); + IFC4X3_RC3_IfcSpiral_type->set_subtypes({ + IFC4X3_RC3_IfcClothoid_type,IFC4X3_RC3_IfcCosine_type,IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type,IFC4X3_RC3_IfcSine_type,IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type + }); + IFC4X3_RC3_IfcColourSpecification_type->set_subtypes({ + IFC4X3_RC3_IfcColourRgb_type + }); + IFC4X3_RC3_IfcPresentationItem_type->set_subtypes({ + IFC4X3_RC3_IfcColourRgbList_type,IFC4X3_RC3_IfcColourSpecification_type,IFC4X3_RC3_IfcCurveStyleFont_type,IFC4X3_RC3_IfcCurveStyleFontAndScaling_type,IFC4X3_RC3_IfcCurveStyleFontPattern_type,IFC4X3_RC3_IfcIndexedColourMap_type,IFC4X3_RC3_IfcPreDefinedItem_type,IFC4X3_RC3_IfcSurfaceStyleLighting_type,IFC4X3_RC3_IfcSurfaceStyleRefraction_type,IFC4X3_RC3_IfcSurfaceStyleShading_type,IFC4X3_RC3_IfcSurfaceStyleWithTextures_type,IFC4X3_RC3_IfcSurfaceTexture_type,IFC4X3_RC3_IfcTextStyleForDefinedFont_type,IFC4X3_RC3_IfcTextStyleTextModel_type,IFC4X3_RC3_IfcTextureCoordinate_type,IFC4X3_RC3_IfcTextureVertex_type,IFC4X3_RC3_IfcTextureVertexList_type + }); + IFC4X3_RC3_IfcColumn_type->set_subtypes({ + IFC4X3_RC3_IfcColumnStandardCase_type + }); + IFC4X3_RC3_IfcProperty_type->set_subtypes({ + IFC4X3_RC3_IfcComplexProperty_type,IFC4X3_RC3_IfcSimpleProperty_type + }); + IFC4X3_RC3_IfcPropertyTemplate_type->set_subtypes({ + IFC4X3_RC3_IfcComplexPropertyTemplate_type,IFC4X3_RC3_IfcSimplePropertyTemplate_type + }); + IFC4X3_RC3_IfcCompositeCurve_type->set_subtypes({ + IFC4X3_RC3_IfcCompositeCurveOnSurface_type,IFC4X3_RC3_IfcGradientCurve_type,IFC4X3_RC3_IfcSegmentedReferenceCurve_type + }); + IFC4X3_RC3_IfcSegment_type->set_subtypes({ + IFC4X3_RC3_IfcCompositeCurveSegment_type,IFC4X3_RC3_IfcCurveSegment_type + }); + IFC4X3_RC3_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X3_RC3_IfcCompressor_type,IFC4X3_RC3_IfcFan_type,IFC4X3_RC3_IfcPump_type + }); + IFC4X3_RC3_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X3_RC3_IfcCompressorType_type,IFC4X3_RC3_IfcFanType_type,IFC4X3_RC3_IfcPumpType_type + }); + IFC4X3_RC3_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X3_RC3_IfcConnectedFaceSet_type,IFC4X3_RC3_IfcEdge_type,IFC4X3_RC3_IfcFace_type,IFC4X3_RC3_IfcFaceBound_type,IFC4X3_RC3_IfcLoop_type,IFC4X3_RC3_IfcPath_type,IFC4X3_RC3_IfcVertex_type + }); + IFC4X3_RC3_IfcConnectionGeometry_type->set_subtypes({ + IFC4X3_RC3_IfcConnectionCurveGeometry_type,IFC4X3_RC3_IfcConnectionPointGeometry_type,IFC4X3_RC3_IfcConnectionSurfaceGeometry_type,IFC4X3_RC3_IfcConnectionVolumeGeometry_type + }); + IFC4X3_RC3_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X3_RC3_IfcConnectionPointEccentricity_type + }); + IFC4X3_RC3_IfcConstructionResource_type->set_subtypes({ + IFC4X3_RC3_IfcConstructionEquipmentResource_type,IFC4X3_RC3_IfcConstructionMaterialResource_type,IFC4X3_RC3_IfcConstructionProductResource_type,IFC4X3_RC3_IfcCrewResource_type,IFC4X3_RC3_IfcLaborResource_type,IFC4X3_RC3_IfcSubContractResource_type + }); + IFC4X3_RC3_IfcConstructionResourceType_type->set_subtypes({ + IFC4X3_RC3_IfcConstructionEquipmentResourceType_type,IFC4X3_RC3_IfcConstructionMaterialResourceType_type,IFC4X3_RC3_IfcConstructionProductResourceType_type,IFC4X3_RC3_IfcCrewResourceType_type,IFC4X3_RC3_IfcLaborResourceType_type,IFC4X3_RC3_IfcSubContractResourceType_type + }); + IFC4X3_RC3_IfcResource_type->set_subtypes({ + IFC4X3_RC3_IfcConstructionResource_type + }); + IFC4X3_RC3_IfcTypeResource_type->set_subtypes({ + IFC4X3_RC3_IfcConstructionResourceType_type + }); + IFC4X3_RC3_IfcObjectDefinition_type->set_subtypes({ + IFC4X3_RC3_IfcContext_type,IFC4X3_RC3_IfcObject_type,IFC4X3_RC3_IfcTypeObject_type + }); + IFC4X3_RC3_IfcNamedUnit_type->set_subtypes({ + IFC4X3_RC3_IfcContextDependentUnit_type,IFC4X3_RC3_IfcConversionBasedUnit_type,IFC4X3_RC3_IfcSIUnit_type + }); + IFC4X3_RC3_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type + }); + IFC4X3_RC3_IfcAppliedValue_type->set_subtypes({ + IFC4X3_RC3_IfcCostValue_type + }); + IFC4X3_RC3_IfcSolidModel_type->set_subtypes({ + IFC4X3_RC3_IfcCsgSolid_type,IFC4X3_RC3_IfcManifoldSolidBrep_type,IFC4X3_RC3_IfcSectionedSolid_type,IFC4X3_RC3_IfcSweptAreaSolid_type,IFC4X3_RC3_IfcSweptDiskSolid_type + }); + IFC4X3_RC3_IfcPresentationStyle_type->set_subtypes({ + IFC4X3_RC3_IfcCurveStyle_type,IFC4X3_RC3_IfcFillAreaStyle_type,IFC4X3_RC3_IfcSurfaceStyle_type,IFC4X3_RC3_IfcTextStyle_type + }); + IFC4X3_RC3_IfcElementarySurface_type->set_subtypes({ + IFC4X3_RC3_IfcCylindricalSurface_type,IFC4X3_RC3_IfcPlane_type,IFC4X3_RC3_IfcSphericalSurface_type,IFC4X3_RC3_IfcToroidalSurface_type + }); + IFC4X3_RC3_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type,IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type,IFC4X3_RC3_IfcExtrudedAreaSolid_type,IFC4X3_RC3_IfcRevolvedAreaSolid_type + }); + IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type + }); + IFC4X3_RC3_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X3_RC3_IfcDistributionChamberElement_type,IFC4X3_RC3_IfcEnergyConversionDevice_type,IFC4X3_RC3_IfcFlowController_type,IFC4X3_RC3_IfcFlowFitting_type,IFC4X3_RC3_IfcFlowMovingDevice_type,IFC4X3_RC3_IfcFlowSegment_type,IFC4X3_RC3_IfcFlowStorageDevice_type,IFC4X3_RC3_IfcFlowTerminal_type,IFC4X3_RC3_IfcFlowTreatmentDevice_type + }); + IFC4X3_RC3_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X3_RC3_IfcDistributionChamberElementType_type,IFC4X3_RC3_IfcEnergyConversionDeviceType_type,IFC4X3_RC3_IfcFlowControllerType_type,IFC4X3_RC3_IfcFlowFittingType_type,IFC4X3_RC3_IfcFlowMovingDeviceType_type,IFC4X3_RC3_IfcFlowSegmentType_type,IFC4X3_RC3_IfcFlowStorageDeviceType_type,IFC4X3_RC3_IfcFlowTerminalType_type,IFC4X3_RC3_IfcFlowTreatmentDeviceType_type + }); + IFC4X3_RC3_IfcDistributionSystem_type->set_subtypes({ + IFC4X3_RC3_IfcDistributionCircuit_type + }); + IFC4X3_RC3_IfcDistributionElement_type->set_subtypes({ + IFC4X3_RC3_IfcDistributionControlElement_type,IFC4X3_RC3_IfcDistributionFlowElement_type + }); + IFC4X3_RC3_IfcDistributionElementType_type->set_subtypes({ + IFC4X3_RC3_IfcDistributionControlElementType_type,IFC4X3_RC3_IfcDistributionFlowElementType_type + }); + IFC4X3_RC3_IfcPort_type->set_subtypes({ + IFC4X3_RC3_IfcDistributionPort_type + }); + IFC4X3_RC3_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X3_RC3_IfcDoorLiningProperties_type,IFC4X3_RC3_IfcDoorPanelProperties_type,IFC4X3_RC3_IfcPermeableCoveringProperties_type,IFC4X3_RC3_IfcReinforcementDefinitionProperties_type,IFC4X3_RC3_IfcWindowLiningProperties_type,IFC4X3_RC3_IfcWindowPanelProperties_type + }); + IFC4X3_RC3_IfcDoor_type->set_subtypes({ + IFC4X3_RC3_IfcDoorStandardCase_type + }); + IFC4X3_RC3_IfcTypeProduct_type->set_subtypes({ + IFC4X3_RC3_IfcDoorStyle_type,IFC4X3_RC3_IfcElementType_type,IFC4X3_RC3_IfcSpatialElementType_type,IFC4X3_RC3_IfcWindowStyle_type + }); + IFC4X3_RC3_IfcPreDefinedColour_type->set_subtypes({ + IFC4X3_RC3_IfcDraughtingPreDefinedColour_type + }); + IFC4X3_RC3_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X3_RC3_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X3_RC3_IfcDuctSilencer_type,IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type,IFC4X3_RC3_IfcFilter_type,IFC4X3_RC3_IfcInterceptor_type + }); + IFC4X3_RC3_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X3_RC3_IfcDuctSilencerType_type,IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type,IFC4X3_RC3_IfcFilterType_type,IFC4X3_RC3_IfcInterceptorType_type + }); + IFC4X3_RC3_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X3_RC3_IfcEarthworksCut_type,IFC4X3_RC3_IfcOpeningElement_type,IFC4X3_RC3_IfcVoidingFeature_type + }); + IFC4X3_RC3_IfcEarthworksElement_type->set_subtypes({ + IFC4X3_RC3_IfcEarthworksFill_type,IFC4X3_RC3_IfcReinforcedSoil_type + }); + IFC4X3_RC3_IfcEdge_type->set_subtypes({ + IFC4X3_RC3_IfcEdgeCurve_type,IFC4X3_RC3_IfcOrientedEdge_type,IFC4X3_RC3_IfcSubedge_type + }); + IFC4X3_RC3_IfcLoop_type->set_subtypes({ + IFC4X3_RC3_IfcEdgeLoop_type,IFC4X3_RC3_IfcPolyLoop_type,IFC4X3_RC3_IfcVertexLoop_type + }); + IFC4X3_RC3_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X3_RC3_IfcElectricFlowStorageDevice_type,IFC4X3_RC3_IfcTank_type + }); + IFC4X3_RC3_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type,IFC4X3_RC3_IfcTankType_type + }); + IFC4X3_RC3_IfcQuantitySet_type->set_subtypes({ + IFC4X3_RC3_IfcElementQuantity_type + }); + IFC4X3_RC3_IfcProcess_type->set_subtypes({ + IFC4X3_RC3_IfcEvent_type,IFC4X3_RC3_IfcProcedure_type,IFC4X3_RC3_IfcTask_type + }); + IFC4X3_RC3_IfcSchedulingTime_type->set_subtypes({ + IFC4X3_RC3_IfcEventTime_type,IFC4X3_RC3_IfcLagTime_type,IFC4X3_RC3_IfcResourceTime_type,IFC4X3_RC3_IfcTaskTime_type,IFC4X3_RC3_IfcWorkTime_type + }); + IFC4X3_RC3_IfcTypeProcess_type->set_subtypes({ + IFC4X3_RC3_IfcEventType_type,IFC4X3_RC3_IfcProcedureType_type,IFC4X3_RC3_IfcTaskType_type + }); + IFC4X3_RC3_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X3_RC3_IfcExtendedProperties_type,IFC4X3_RC3_IfcPreDefinedProperties_type,IFC4X3_RC3_IfcProperty_type,IFC4X3_RC3_IfcPropertyEnumeration_type + }); + IFC4X3_RC3_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC3_IfcExternalSpatialElement_type + }); + IFC4X3_RC3_IfcSpatialElement_type->set_subtypes({ + IFC4X3_RC3_IfcExternalSpatialStructureElement_type,IFC4X3_RC3_IfcSpatialStructureElement_type,IFC4X3_RC3_IfcSpatialZone_type + }); + IFC4X3_RC3_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type + }); + IFC4X3_RC3_IfcFaceBound_type->set_subtypes({ + IFC4X3_RC3_IfcFaceOuterBound_type + }); + IFC4X3_RC3_IfcFace_type->set_subtypes({ + IFC4X3_RC3_IfcFaceSurface_type + }); + IFC4X3_RC3_IfcFacetedBrep_type->set_subtypes({ + IFC4X3_RC3_IfcFacetedBrepWithVoids_type + }); + IFC4X3_RC3_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X3_RC3_IfcFailureConnectionCondition_type,IFC4X3_RC3_IfcSlippageConnectionCondition_type + }); + IFC4X3_RC3_IfcFeatureElement_type->set_subtypes({ + IFC4X3_RC3_IfcFeatureElementAddition_type,IFC4X3_RC3_IfcFeatureElementSubtraction_type,IFC4X3_RC3_IfcSurfaceFeature_type + }); + IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type,IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X3_RC3_IfcFurnishingElement_type->set_subtypes({ + IFC4X3_RC3_IfcFurniture_type,IFC4X3_RC3_IfcSystemFurnitureElement_type + }); + IFC4X3_RC3_IfcFurnishingElementType_type->set_subtypes({ + IFC4X3_RC3_IfcFurnitureType_type,IFC4X3_RC3_IfcSystemFurnitureElementType_type + }); + IFC4X3_RC3_IfcGeometricSet_type->set_subtypes({ + IFC4X3_RC3_IfcGeometricCurveSet_type + }); + IFC4X3_RC3_IfcRepresentationContext_type->set_subtypes({ + IFC4X3_RC3_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC3_IfcRepresentationItem_type->set_subtypes({ + IFC4X3_RC3_IfcGeometricRepresentationItem_type,IFC4X3_RC3_IfcMappedItem_type,IFC4X3_RC3_IfcStyledItem_type,IFC4X3_RC3_IfcTopologicalRepresentationItem_type + }); + IFC4X3_RC3_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X3_RC3_IfcGeometricRepresentationSubContext_type + }); + IFC4X3_RC3_IfcGeotechnicalElement_type->set_subtypes({ + IFC4X3_RC3_IfcGeotechnicalAssembly_type,IFC4X3_RC3_IfcGeotechnicalStratum_type + }); + IFC4X3_RC3_IfcPositioningElement_type->set_subtypes({ + IFC4X3_RC3_IfcGrid_type,IFC4X3_RC3_IfcLinearPositioningElement_type,IFC4X3_RC3_IfcReferent_type + }); + IFC4X3_RC3_IfcObjectPlacement_type->set_subtypes({ + IFC4X3_RC3_IfcGridPlacement_type,IFC4X3_RC3_IfcLinearPlacement_type,IFC4X3_RC3_IfcLocalPlacement_type + }); + IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type + }); + IFC4X3_RC3_IfcTessellatedItem_type->set_subtypes({ + IFC4X3_RC3_IfcIndexedPolygonalFace_type,IFC4X3_RC3_IfcTessellatedFaceSet_type + }); + IFC4X3_RC3_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X3_RC3_IfcTextureCoordinate_type->set_subtypes({ + IFC4X3_RC3_IfcIndexedTextureMap_type,IFC4X3_RC3_IfcTextureCoordinateGenerator_type,IFC4X3_RC3_IfcTextureMap_type + }); + IFC4X3_RC3_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X3_RC3_IfcIndexedTriangleTextureMap_type + }); + IFC4X3_RC3_IfcSurfaceCurve_type->set_subtypes({ + IFC4X3_RC3_IfcIntersectionCurve_type,IFC4X3_RC3_IfcSeamCurve_type + }); + IFC4X3_RC3_IfcTimeSeries_type->set_subtypes({ + IFC4X3_RC3_IfcIrregularTimeSeries_type,IFC4X3_RC3_IfcRegularTimeSeries_type + }); + IFC4X3_RC3_IfcLightSource_type->set_subtypes({ + IFC4X3_RC3_IfcLightSourceAmbient_type,IFC4X3_RC3_IfcLightSourceDirectional_type,IFC4X3_RC3_IfcLightSourceGoniometric_type,IFC4X3_RC3_IfcLightSourcePositional_type + }); + IFC4X3_RC3_IfcLightSourcePositional_type->set_subtypes({ + IFC4X3_RC3_IfcLightSourceSpot_type + }); + IFC4X3_RC3_IfcCoordinateOperation_type->set_subtypes({ + IFC4X3_RC3_IfcMapConversion_type + }); + IFC4X3_RC3_IfcMaterialDefinition_type->set_subtypes({ + IFC4X3_RC3_IfcMaterial_type,IFC4X3_RC3_IfcMaterialConstituent_type,IFC4X3_RC3_IfcMaterialConstituentSet_type,IFC4X3_RC3_IfcMaterialLayer_type,IFC4X3_RC3_IfcMaterialLayerSet_type,IFC4X3_RC3_IfcMaterialProfile_type,IFC4X3_RC3_IfcMaterialProfileSet_type + }); + IFC4X3_RC3_IfcProductRepresentation_type->set_subtypes({ + IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type,IFC4X3_RC3_IfcProductDefinitionShape_type + }); + IFC4X3_RC3_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X3_RC3_IfcMaterialLayerSetUsage_type,IFC4X3_RC3_IfcMaterialProfileSetUsage_type + }); + IFC4X3_RC3_IfcMaterialLayer_type->set_subtypes({ + IFC4X3_RC3_IfcMaterialLayerWithOffsets_type + }); + IFC4X3_RC3_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X3_RC3_IfcMaterialProfile_type->set_subtypes({ + IFC4X3_RC3_IfcMaterialProfileWithOffsets_type + }); + IFC4X3_RC3_IfcExtendedProperties_type->set_subtypes({ + IFC4X3_RC3_IfcMaterialProperties_type,IFC4X3_RC3_IfcProfileProperties_type + }); + IFC4X3_RC3_IfcMember_type->set_subtypes({ + IFC4X3_RC3_IfcMemberStandardCase_type + }); + IFC4X3_RC3_IfcConstraint_type->set_subtypes({ + IFC4X3_RC3_IfcMetric_type,IFC4X3_RC3_IfcObjective_type + }); + IFC4X3_RC3_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcMirroredProfileDef_type + }); + IFC4X3_RC3_IfcRoot_type->set_subtypes({ + IFC4X3_RC3_IfcObjectDefinition_type,IFC4X3_RC3_IfcPropertyDefinition_type,IFC4X3_RC3_IfcRelationship_type + }); + IFC4X3_RC3_IfcActor_type->set_subtypes({ + IFC4X3_RC3_IfcOccupant_type + }); + IFC4X3_RC3_IfcOffsetCurve_type->set_subtypes({ + IFC4X3_RC3_IfcOffsetCurve2D_type,IFC4X3_RC3_IfcOffsetCurve3D_type,IFC4X3_RC3_IfcOffsetCurveByDistances_type + }); + IFC4X3_RC3_IfcOpeningElement_type->set_subtypes({ + IFC4X3_RC3_IfcOpeningStandardCase_type + }); + IFC4X3_RC3_IfcBoundaryCurve_type->set_subtypes({ + IFC4X3_RC3_IfcOuterBoundaryCurve_type + }); + IFC4X3_RC3_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X3_RC3_IfcPhysicalComplexQuantity_type,IFC4X3_RC3_IfcPhysicalSimpleQuantity_type + }); + IFC4X3_RC3_IfcPlanarExtent_type->set_subtypes({ + IFC4X3_RC3_IfcPlanarBox_type + }); + IFC4X3_RC3_IfcGeographicElement_type->set_subtypes({ + IFC4X3_RC3_IfcPlant_type + }); + IFC4X3_RC3_IfcPlate_type->set_subtypes({ + IFC4X3_RC3_IfcPlateStandardCase_type + }); + IFC4X3_RC3_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X3_RC3_IfcPolygonalFaceSet_type,IFC4X3_RC3_IfcTriangulatedFaceSet_type + }); + IFC4X3_RC3_IfcAddress_type->set_subtypes({ + IFC4X3_RC3_IfcPostalAddress_type,IFC4X3_RC3_IfcTelecomAddress_type + }); + IFC4X3_RC3_IfcPreDefinedItem_type->set_subtypes({ + IFC4X3_RC3_IfcPreDefinedColour_type,IFC4X3_RC3_IfcPreDefinedCurveFont_type,IFC4X3_RC3_IfcPreDefinedTextFont_type + }); + IFC4X3_RC3_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X3_RC3_IfcPreDefinedPropertySet_type,IFC4X3_RC3_IfcPropertySet_type,IFC4X3_RC3_IfcQuantitySet_type + }); + IFC4X3_RC3_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X3_RC3_IfcPresentationLayerWithStyle_type + }); + IFC4X3_RC3_IfcContext_type->set_subtypes({ + IFC4X3_RC3_IfcProject_type,IFC4X3_RC3_IfcProjectLibrary_type + }); + IFC4X3_RC3_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X3_RC3_IfcProjectedCRS_type + }); + IFC4X3_RC3_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X3_RC3_IfcProjectionElement_type + }); + IFC4X3_RC3_IfcSimpleProperty_type->set_subtypes({ + IFC4X3_RC3_IfcPropertyBoundedValue_type,IFC4X3_RC3_IfcPropertyEnumeratedValue_type,IFC4X3_RC3_IfcPropertyListValue_type,IFC4X3_RC3_IfcPropertyReferenceValue_type,IFC4X3_RC3_IfcPropertySingleValue_type,IFC4X3_RC3_IfcPropertyTableValue_type + }); + IFC4X3_RC3_IfcPropertyDefinition_type->set_subtypes({ + IFC4X3_RC3_IfcPropertySetDefinition_type,IFC4X3_RC3_IfcPropertyTemplateDefinition_type + }); + IFC4X3_RC3_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X3_RC3_IfcPropertySetTemplate_type,IFC4X3_RC3_IfcPropertyTemplate_type + }); + IFC4X3_RC3_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X3_RC3_IfcQuantityArea_type,IFC4X3_RC3_IfcQuantityCount_type,IFC4X3_RC3_IfcQuantityLength_type,IFC4X3_RC3_IfcQuantityTime_type,IFC4X3_RC3_IfcQuantityVolume_type,IFC4X3_RC3_IfcQuantityWeight_type + }); + IFC4X3_RC3_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X3_RC3_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X3_RC3_IfcRectangleHollowProfileDef_type,IFC4X3_RC3_IfcRoundedRectangleProfileDef_type + }); + IFC4X3_RC3_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X3_RC3_IfcReinforcementBarProperties_type,IFC4X3_RC3_IfcSectionProperties_type,IFC4X3_RC3_IfcSectionReinforcementProperties_type + }); + IFC4X3_RC3_IfcReinforcingElement_type->set_subtypes({ + IFC4X3_RC3_IfcReinforcingBar_type,IFC4X3_RC3_IfcReinforcingMesh_type,IFC4X3_RC3_IfcTendon_type,IFC4X3_RC3_IfcTendonAnchor_type,IFC4X3_RC3_IfcTendonConduit_type + }); + IFC4X3_RC3_IfcReinforcingElementType_type->set_subtypes({ + IFC4X3_RC3_IfcReinforcingBarType_type,IFC4X3_RC3_IfcReinforcingMeshType_type,IFC4X3_RC3_IfcTendonAnchorType_type,IFC4X3_RC3_IfcTendonConduitType_type,IFC4X3_RC3_IfcTendonType_type + }); + IFC4X3_RC3_IfcRelDecomposes_type->set_subtypes({ + IFC4X3_RC3_IfcRelAggregates_type,IFC4X3_RC3_IfcRelNests_type,IFC4X3_RC3_IfcRelProjectsElement_type,IFC4X3_RC3_IfcRelVoidsElement_type + }); + IFC4X3_RC3_IfcRelationship_type->set_subtypes({ + IFC4X3_RC3_IfcRelAssigns_type,IFC4X3_RC3_IfcRelAssociates_type,IFC4X3_RC3_IfcRelConnects_type,IFC4X3_RC3_IfcRelDeclares_type,IFC4X3_RC3_IfcRelDecomposes_type,IFC4X3_RC3_IfcRelDefines_type + }); + IFC4X3_RC3_IfcRelAssigns_type->set_subtypes({ + IFC4X3_RC3_IfcRelAssignsToActor_type,IFC4X3_RC3_IfcRelAssignsToControl_type,IFC4X3_RC3_IfcRelAssignsToGroup_type,IFC4X3_RC3_IfcRelAssignsToProcess_type,IFC4X3_RC3_IfcRelAssignsToProduct_type,IFC4X3_RC3_IfcRelAssignsToResource_type + }); + IFC4X3_RC3_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type + }); + IFC4X3_RC3_IfcRelAssociates_type->set_subtypes({ + IFC4X3_RC3_IfcRelAssociatesApproval_type,IFC4X3_RC3_IfcRelAssociatesClassification_type,IFC4X3_RC3_IfcRelAssociatesConstraint_type,IFC4X3_RC3_IfcRelAssociatesDocument_type,IFC4X3_RC3_IfcRelAssociatesLibrary_type,IFC4X3_RC3_IfcRelAssociatesMaterial_type,IFC4X3_RC3_IfcRelAssociatesProfileDef_type + }); + IFC4X3_RC3_IfcRelConnects_type->set_subtypes({ + IFC4X3_RC3_IfcRelConnectsElements_type,IFC4X3_RC3_IfcRelConnectsPortToElement_type,IFC4X3_RC3_IfcRelConnectsPorts_type,IFC4X3_RC3_IfcRelConnectsStructuralActivity_type,IFC4X3_RC3_IfcRelConnectsStructuralMember_type,IFC4X3_RC3_IfcRelContainedInSpatialStructure_type,IFC4X3_RC3_IfcRelCoversBldgElements_type,IFC4X3_RC3_IfcRelCoversSpaces_type,IFC4X3_RC3_IfcRelFillsElement_type,IFC4X3_RC3_IfcRelFlowControlElements_type,IFC4X3_RC3_IfcRelInterferesElements_type,IFC4X3_RC3_IfcRelPositions_type,IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type,IFC4X3_RC3_IfcRelSequence_type,IFC4X3_RC3_IfcRelServicesBuildings_type,IFC4X3_RC3_IfcRelSpaceBoundary_type + }); + IFC4X3_RC3_IfcRelConnectsElements_type->set_subtypes({ + IFC4X3_RC3_IfcRelConnectsPathElements_type,IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type + }); + IFC4X3_RC3_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X3_RC3_IfcRelConnectsWithEccentricity_type + }); + IFC4X3_RC3_IfcRelDefines_type->set_subtypes({ + IFC4X3_RC3_IfcRelDefinesByObject_type,IFC4X3_RC3_IfcRelDefinesByProperties_type,IFC4X3_RC3_IfcRelDefinesByTemplate_type,IFC4X3_RC3_IfcRelDefinesByType_type + }); + IFC4X3_RC3_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X3_RC3_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X3_RC3_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type + }); + IFC4X3_RC3_IfcSectionedSolid_type->set_subtypes({ + IFC4X3_RC3_IfcSectionedSolidHorizontal_type + }); + IFC4X3_RC3_IfcRepresentation_type->set_subtypes({ + IFC4X3_RC3_IfcShapeModel_type,IFC4X3_RC3_IfcStyleModel_type + }); + IFC4X3_RC3_IfcShapeModel_type->set_subtypes({ + IFC4X3_RC3_IfcShapeRepresentation_type,IFC4X3_RC3_IfcTopologyRepresentation_type + }); + IFC4X3_RC3_IfcSlab_type->set_subtypes({ + IFC4X3_RC3_IfcSlabElementedCase_type,IFC4X3_RC3_IfcSlabStandardCase_type + }); + IFC4X3_RC3_IfcGeotechnicalStratum_type->set_subtypes({ + IFC4X3_RC3_IfcSolidStratum_type,IFC4X3_RC3_IfcVoidStratum_type,IFC4X3_RC3_IfcWaterStratum_type + }); + IFC4X3_RC3_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X3_RC3_IfcSpaceType_type + }); + IFC4X3_RC3_IfcSpatialElementType_type->set_subtypes({ + IFC4X3_RC3_IfcSpatialStructureElementType_type,IFC4X3_RC3_IfcSpatialZoneType_type + }); + IFC4X3_RC3_IfcStructuralActivity_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralAction_type,IFC4X3_RC3_IfcStructuralReaction_type + }); + IFC4X3_RC3_IfcStructuralItem_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralConnection_type,IFC4X3_RC3_IfcStructuralMember_type + }); + IFC4X3_RC3_IfcStructuralAction_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralCurveAction_type,IFC4X3_RC3_IfcStructuralPointAction_type,IFC4X3_RC3_IfcStructuralSurfaceAction_type + }); + IFC4X3_RC3_IfcStructuralConnection_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralCurveConnection_type,IFC4X3_RC3_IfcStructuralPointConnection_type,IFC4X3_RC3_IfcStructuralSurfaceConnection_type + }); + IFC4X3_RC3_IfcStructuralMember_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralCurveMember_type,IFC4X3_RC3_IfcStructuralSurfaceMember_type + }); + IFC4X3_RC3_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralCurveMemberVarying_type + }); + IFC4X3_RC3_IfcStructuralReaction_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralCurveReaction_type,IFC4X3_RC3_IfcStructuralPointReaction_type,IFC4X3_RC3_IfcStructuralSurfaceReaction_type + }); + IFC4X3_RC3_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLinearAction_type + }); + IFC4X3_RC3_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLoadCase_type + }); + IFC4X3_RC3_IfcStructuralLoad_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLoadConfiguration_type,IFC4X3_RC3_IfcStructuralLoadOrResult_type + }); + IFC4X3_RC3_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLoadLinearForce_type,IFC4X3_RC3_IfcStructuralLoadPlanarForce_type,IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type,IFC4X3_RC3_IfcStructuralLoadSingleForce_type,IFC4X3_RC3_IfcStructuralLoadTemperature_type + }); + IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X3_RC3_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X3_RC3_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralLoadStatic_type,IFC4X3_RC3_IfcSurfaceReinforcementArea_type + }); + IFC4X3_RC3_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralPlanarAction_type + }); + IFC4X3_RC3_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X3_RC3_IfcStyleModel_type->set_subtypes({ + IFC4X3_RC3_IfcStyledRepresentation_type + }); + IFC4X3_RC3_IfcSweptSurface_type->set_subtypes({ + IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type,IFC4X3_RC3_IfcSurfaceOfRevolution_type + }); + IFC4X3_RC3_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X3_RC3_IfcSurfaceStyleRendering_type + }); + IFC4X3_RC3_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type + }); + IFC4X3_RC3_IfcTaskTime_type->set_subtypes({ + IFC4X3_RC3_IfcTaskTimeRecurring_type + }); + IFC4X3_RC3_IfcTextLiteral_type->set_subtypes({ + IFC4X3_RC3_IfcTextLiteralWithExtent_type + }); + IFC4X3_RC3_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X3_RC3_IfcTextStyleFontModel_type + }); + IFC4X3_RC3_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type + }); + IFC4X3_RC3_IfcTypeObject_type->set_subtypes({ + IFC4X3_RC3_IfcTypeProcess_type,IFC4X3_RC3_IfcTypeProduct_type,IFC4X3_RC3_IfcTypeResource_type + }); + IFC4X3_RC3_IfcVertex_type->set_subtypes({ + IFC4X3_RC3_IfcVertexPoint_type + }); + IFC4X3_RC3_IfcWall_type->set_subtypes({ + IFC4X3_RC3_IfcWallElementedCase_type,IFC4X3_RC3_IfcWallStandardCase_type + }); + IFC4X3_RC3_IfcWindow_type->set_subtypes({ + IFC4X3_RC3_IfcWindowStandardCase_type + }); + IFC4X3_RC3_IfcWorkControl_type->set_subtypes({ + IFC4X3_RC3_IfcWorkPlan_type,IFC4X3_RC3_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1317); - declarations.push_back(IFC4X3_RC3_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcActionRequest_type); - declarations.push_back(IFC4X3_RC3_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcActionTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcActor_type); - declarations.push_back(IFC4X3_RC3_IfcActorRole_type); - declarations.push_back(IFC4X3_RC3_IfcActorSelect_type); - declarations.push_back(IFC4X3_RC3_IfcActuator_type); - declarations.push_back(IFC4X3_RC3_IfcActuatorType_type); - declarations.push_back(IFC4X3_RC3_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAddress_type); - declarations.push_back(IFC4X3_RC3_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAdvancedBrep_type); - declarations.push_back(IFC4X3_RC3_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC3_IfcAdvancedFace_type); - declarations.push_back(IFC4X3_RC3_IfcAirTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcAirTerminalBox_type); - declarations.push_back(IFC4X3_RC3_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAirTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAlarm_type); - declarations.push_back(IFC4X3_RC3_IfcAlarmType_type); - declarations.push_back(IFC4X3_RC3_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAlignment_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentCant_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentCantSegment_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentHorizontal_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentHorizontalSegment_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentParameterSegment_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentSegment_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentVertical_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentVerticalSegment_type); - declarations.push_back(IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcAnnotation_type); - declarations.push_back(IFC4X3_RC3_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X3_RC3_IfcAnnotationTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcApplication_type); - declarations.push_back(IFC4X3_RC3_IfcAppliedValue_type); - declarations.push_back(IFC4X3_RC3_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X3_RC3_IfcApproval_type); - declarations.push_back(IFC4X3_RC3_IfcApprovalRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X3_RC3_IfcArcIndex_type); - declarations.push_back(IFC4X3_RC3_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcAreaMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAsset_type); - declarations.push_back(IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X3_RC3_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcAxis1Placement_type); - declarations.push_back(IFC4X3_RC3_IfcAxis2Placement_type); - declarations.push_back(IFC4X3_RC3_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X3_RC3_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X3_RC3_IfcAxis2PlacementLinear_type); - declarations.push_back(IFC4X3_RC3_IfcBeam_type); - declarations.push_back(IFC4X3_RC3_IfcBeamStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcBeamType_type); - declarations.push_back(IFC4X3_RC3_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBearing_type); - declarations.push_back(IFC4X3_RC3_IfcBearingType_type); - declarations.push_back(IFC4X3_RC3_IfcBearingTypeDisplacementEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBearingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X3_RC3_IfcBinary_type); - declarations.push_back(IFC4X3_RC3_IfcBlobTexture_type); - declarations.push_back(IFC4X3_RC3_IfcBlock_type); - declarations.push_back(IFC4X3_RC3_IfcBoiler_type); - declarations.push_back(IFC4X3_RC3_IfcBoilerType_type); - declarations.push_back(IFC4X3_RC3_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBoolean_type); - declarations.push_back(IFC4X3_RC3_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X3_RC3_IfcBooleanOperand_type); - declarations.push_back(IFC4X3_RC3_IfcBooleanOperator_type); - declarations.push_back(IFC4X3_RC3_IfcBooleanResult_type); - declarations.push_back(IFC4X3_RC3_IfcBorehole_type); - declarations.push_back(IFC4X3_RC3_IfcBoundaryCondition_type); - declarations.push_back(IFC4X3_RC3_IfcBoundaryCurve_type); - declarations.push_back(IFC4X3_RC3_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X3_RC3_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X3_RC3_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X3_RC3_IfcBoundedCurve_type); - declarations.push_back(IFC4X3_RC3_IfcBoundedSurface_type); - declarations.push_back(IFC4X3_RC3_IfcBoundingBox_type); - declarations.push_back(IFC4X3_RC3_IfcBoxAlignment_type); - declarations.push_back(IFC4X3_RC3_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X3_RC3_IfcBridge_type); - declarations.push_back(IFC4X3_RC3_IfcBridgePartTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBridgeTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBSplineCurve_type); - declarations.push_back(IFC4X3_RC3_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X3_RC3_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC3_IfcBSplineSurface_type); - declarations.push_back(IFC4X3_RC3_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC3_IfcBuilding_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingElementPart_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingStorey_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingSystem_type); - declarations.push_back(IFC4X3_RC3_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBuiltElement_type); - declarations.push_back(IFC4X3_RC3_IfcBuiltElementType_type); - declarations.push_back(IFC4X3_RC3_IfcBuiltSystem_type); - declarations.push_back(IFC4X3_RC3_IfcBuiltSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcBurner_type); - declarations.push_back(IFC4X3_RC3_IfcBurnerType_type); - declarations.push_back(IFC4X3_RC3_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X3_RC3_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X3_RC3_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCableFitting_type); - declarations.push_back(IFC4X3_RC3_IfcCableFittingType_type); - declarations.push_back(IFC4X3_RC3_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCableSegment_type); - declarations.push_back(IFC4X3_RC3_IfcCableSegmentType_type); - declarations.push_back(IFC4X3_RC3_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCaissonFoundation_type); - declarations.push_back(IFC4X3_RC3_IfcCaissonFoundationType_type); - declarations.push_back(IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCardinalPointReference_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianPoint_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianPointList_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X3_RC3_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcChangeActionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcChiller_type); - declarations.push_back(IFC4X3_RC3_IfcChillerType_type); - declarations.push_back(IFC4X3_RC3_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcChimney_type); - declarations.push_back(IFC4X3_RC3_IfcChimneyType_type); - declarations.push_back(IFC4X3_RC3_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCircle_type); - declarations.push_back(IFC4X3_RC3_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcCircleProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcCivilElement_type); - declarations.push_back(IFC4X3_RC3_IfcCivilElementType_type); - declarations.push_back(IFC4X3_RC3_IfcClassification_type); - declarations.push_back(IFC4X3_RC3_IfcClassificationReference_type); - declarations.push_back(IFC4X3_RC3_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcClassificationSelect_type); - declarations.push_back(IFC4X3_RC3_IfcClosedShell_type); - declarations.push_back(IFC4X3_RC3_IfcClothoid_type); - declarations.push_back(IFC4X3_RC3_IfcCoil_type); - declarations.push_back(IFC4X3_RC3_IfcCoilType_type); - declarations.push_back(IFC4X3_RC3_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcColour_type); - declarations.push_back(IFC4X3_RC3_IfcColourOrFactor_type); - declarations.push_back(IFC4X3_RC3_IfcColourRgb_type); - declarations.push_back(IFC4X3_RC3_IfcColourRgbList_type); - declarations.push_back(IFC4X3_RC3_IfcColourSpecification_type); - declarations.push_back(IFC4X3_RC3_IfcColumn_type); - declarations.push_back(IFC4X3_RC3_IfcColumnStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcColumnType_type); - declarations.push_back(IFC4X3_RC3_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC3_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcComplexNumber_type); - declarations.push_back(IFC4X3_RC3_IfcComplexProperty_type); - declarations.push_back(IFC4X3_RC3_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCompositeCurve_type); - declarations.push_back(IFC4X3_RC3_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X3_RC3_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC3_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcCompressor_type); - declarations.push_back(IFC4X3_RC3_IfcCompressorType_type); - declarations.push_back(IFC4X3_RC3_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCondenser_type); - declarations.push_back(IFC4X3_RC3_IfcCondenserType_type); - declarations.push_back(IFC4X3_RC3_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConic_type); - declarations.push_back(IFC4X3_RC3_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionGeometry_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X3_RC3_IfcConstraint_type); - declarations.push_back(IFC4X3_RC3_IfcConstraintEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionProductResource_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionResource_type); - declarations.push_back(IFC4X3_RC3_IfcConstructionResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcContext_type); - declarations.push_back(IFC4X3_RC3_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcContextDependentUnit_type); - declarations.push_back(IFC4X3_RC3_IfcControl_type); - declarations.push_back(IFC4X3_RC3_IfcController_type); - declarations.push_back(IFC4X3_RC3_IfcControllerType_type); - declarations.push_back(IFC4X3_RC3_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X3_RC3_IfcConveyorSegment_type); - declarations.push_back(IFC4X3_RC3_IfcConveyorSegmentType_type); - declarations.push_back(IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCooledBeam_type); - declarations.push_back(IFC4X3_RC3_IfcCooledBeamType_type); - declarations.push_back(IFC4X3_RC3_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCoolingTower_type); - declarations.push_back(IFC4X3_RC3_IfcCoolingTowerType_type); - declarations.push_back(IFC4X3_RC3_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCoordinateOperation_type); - declarations.push_back(IFC4X3_RC3_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X3_RC3_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X3_RC3_IfcCosine_type); - declarations.push_back(IFC4X3_RC3_IfcCostItem_type); - declarations.push_back(IFC4X3_RC3_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCostSchedule_type); - declarations.push_back(IFC4X3_RC3_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCostValue_type); - declarations.push_back(IFC4X3_RC3_IfcCountMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcCourse_type); - declarations.push_back(IFC4X3_RC3_IfcCourseType_type); - declarations.push_back(IFC4X3_RC3_IfcCourseTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCovering_type); - declarations.push_back(IFC4X3_RC3_IfcCoveringType_type); - declarations.push_back(IFC4X3_RC3_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCrewResource_type); - declarations.push_back(IFC4X3_RC3_IfcCrewResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X3_RC3_IfcCsgSelect_type); - declarations.push_back(IFC4X3_RC3_IfcCsgSolid_type); - declarations.push_back(IFC4X3_RC3_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcCurtainWall_type); - declarations.push_back(IFC4X3_RC3_IfcCurtainWallType_type); - declarations.push_back(IFC4X3_RC3_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcCurve_type); - declarations.push_back(IFC4X3_RC3_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X3_RC3_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X3_RC3_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X3_RC3_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcCurveMeasureSelect_type); - declarations.push_back(IFC4X3_RC3_IfcCurveOnSurface_type); - declarations.push_back(IFC4X3_RC3_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X3_RC3_IfcCurveSegment_type); - declarations.push_back(IFC4X3_RC3_IfcCurveStyle_type); - declarations.push_back(IFC4X3_RC3_IfcCurveStyleFont_type); - declarations.push_back(IFC4X3_RC3_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X3_RC3_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X3_RC3_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X3_RC3_IfcCylindricalSurface_type); - declarations.push_back(IFC4X3_RC3_IfcDamper_type); - declarations.push_back(IFC4X3_RC3_IfcDamperType_type); - declarations.push_back(IFC4X3_RC3_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDataOriginEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDate_type); - declarations.push_back(IFC4X3_RC3_IfcDateTime_type); - declarations.push_back(IFC4X3_RC3_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X3_RC3_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X3_RC3_IfcDeepFoundation_type); - declarations.push_back(IFC4X3_RC3_IfcDeepFoundationType_type); - declarations.push_back(IFC4X3_RC3_IfcDefinitionSelect_type); - declarations.push_back(IFC4X3_RC3_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X3_RC3_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcDerivedUnit_type); - declarations.push_back(IFC4X3_RC3_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X3_RC3_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcDimensionalExponents_type); - declarations.push_back(IFC4X3_RC3_IfcDimensionCount_type); - declarations.push_back(IFC4X3_RC3_IfcDirection_type); - declarations.push_back(IFC4X3_RC3_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X3_RC3_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionBoard_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionBoardType_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionCircuit_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionControlElement_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionElement_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionElementType_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionPort_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionSystem_type); - declarations.push_back(IFC4X3_RC3_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDocumentInformation_type); - declarations.push_back(IFC4X3_RC3_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcDocumentReference_type); - declarations.push_back(IFC4X3_RC3_IfcDocumentSelect_type); - declarations.push_back(IFC4X3_RC3_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoor_type); - declarations.push_back(IFC4X3_RC3_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X3_RC3_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X3_RC3_IfcDoorStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcDoorStyle_type); - declarations.push_back(IFC4X3_RC3_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoorType_type); - declarations.push_back(IFC4X3_RC3_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC3_IfcDuctFitting_type); - declarations.push_back(IFC4X3_RC3_IfcDuctFittingType_type); - declarations.push_back(IFC4X3_RC3_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDuctSegment_type); - declarations.push_back(IFC4X3_RC3_IfcDuctSegmentType_type); - declarations.push_back(IFC4X3_RC3_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDuctSilencer_type); - declarations.push_back(IFC4X3_RC3_IfcDuctSilencerType_type); - declarations.push_back(IFC4X3_RC3_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcDuration_type); - declarations.push_back(IFC4X3_RC3_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcEarthworksCut_type); - declarations.push_back(IFC4X3_RC3_IfcEarthworksCutTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcEarthworksElement_type); - declarations.push_back(IFC4X3_RC3_IfcEarthworksFill_type); - declarations.push_back(IFC4X3_RC3_IfcEarthworksFillTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcEdge_type); - declarations.push_back(IFC4X3_RC3_IfcEdgeCurve_type); - declarations.push_back(IFC4X3_RC3_IfcEdgeLoop_type); - declarations.push_back(IFC4X3_RC3_IfcElectricAppliance_type); - declarations.push_back(IFC4X3_RC3_IfcElectricApplianceType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X3_RC3_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricGenerator_type); - declarations.push_back(IFC4X3_RC3_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricMotor_type); - declarations.push_back(IFC4X3_RC3_IfcElectricMotorType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcElectricTimeControl_type); - declarations.push_back(IFC4X3_RC3_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcElement_type); - declarations.push_back(IFC4X3_RC3_IfcElementarySurface_type); - declarations.push_back(IFC4X3_RC3_IfcElementAssembly_type); - declarations.push_back(IFC4X3_RC3_IfcElementAssemblyType_type); - declarations.push_back(IFC4X3_RC3_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElementComponent_type); - declarations.push_back(IFC4X3_RC3_IfcElementComponentType_type); - declarations.push_back(IFC4X3_RC3_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcElementQuantity_type); - declarations.push_back(IFC4X3_RC3_IfcElementType_type); - declarations.push_back(IFC4X3_RC3_IfcEllipse_type); - declarations.push_back(IFC4X3_RC3_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X3_RC3_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcEnergyMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcEngine_type); - declarations.push_back(IFC4X3_RC3_IfcEngineType_type); - declarations.push_back(IFC4X3_RC3_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X3_RC3_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcEvaporator_type); - declarations.push_back(IFC4X3_RC3_IfcEvaporatorType_type); - declarations.push_back(IFC4X3_RC3_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcEvent_type); - declarations.push_back(IFC4X3_RC3_IfcEventTime_type); - declarations.push_back(IFC4X3_RC3_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcEventType_type); - declarations.push_back(IFC4X3_RC3_IfcEventTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcExtendedProperties_type); - declarations.push_back(IFC4X3_RC3_IfcExternalInformation_type); - declarations.push_back(IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X3_RC3_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X3_RC3_IfcExternalReference_type); - declarations.push_back(IFC4X3_RC3_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC3_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC3_IfcFace_type); - declarations.push_back(IFC4X3_RC3_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC3_IfcFaceBound_type); - declarations.push_back(IFC4X3_RC3_IfcFaceOuterBound_type); - declarations.push_back(IFC4X3_RC3_IfcFaceSurface_type); - declarations.push_back(IFC4X3_RC3_IfcFacetedBrep_type); - declarations.push_back(IFC4X3_RC3_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC3_IfcFacility_type); - declarations.push_back(IFC4X3_RC3_IfcFacilityPart_type); - declarations.push_back(IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFacilityPartTypeSelect_type); - declarations.push_back(IFC4X3_RC3_IfcFacilityUsageEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X3_RC3_IfcFan_type); - declarations.push_back(IFC4X3_RC3_IfcFanType_type); - declarations.push_back(IFC4X3_RC3_IfcFanTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFastener_type); - declarations.push_back(IFC4X3_RC3_IfcFastenerType_type); - declarations.push_back(IFC4X3_RC3_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFeatureElement_type); - declarations.push_back(IFC4X3_RC3_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X3_RC3_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X3_RC3_IfcFillAreaStyle_type); - declarations.push_back(IFC4X3_RC3_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X3_RC3_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X3_RC3_IfcFillStyleSelect_type); - declarations.push_back(IFC4X3_RC3_IfcFilter_type); - declarations.push_back(IFC4X3_RC3_IfcFilterType_type); - declarations.push_back(IFC4X3_RC3_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcFlowController_type); - declarations.push_back(IFC4X3_RC3_IfcFlowControllerType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFlowFitting_type); - declarations.push_back(IFC4X3_RC3_IfcFlowFittingType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowInstrument_type); - declarations.push_back(IFC4X3_RC3_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFlowMeter_type); - declarations.push_back(IFC4X3_RC3_IfcFlowMeterType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X3_RC3_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowSegment_type); - declarations.push_back(IFC4X3_RC3_IfcFlowSegmentType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC3_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcFlowTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC3_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcFontStyle_type); - declarations.push_back(IFC4X3_RC3_IfcFontVariant_type); - declarations.push_back(IFC4X3_RC3_IfcFontWeight_type); - declarations.push_back(IFC4X3_RC3_IfcFooting_type); - declarations.push_back(IFC4X3_RC3_IfcFootingType_type); - declarations.push_back(IFC4X3_RC3_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcForceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcFurnishingElement_type); - declarations.push_back(IFC4X3_RC3_IfcFurnishingElementType_type); - declarations.push_back(IFC4X3_RC3_IfcFurniture_type); - declarations.push_back(IFC4X3_RC3_IfcFurnitureType_type); - declarations.push_back(IFC4X3_RC3_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcGeographicElement_type); - declarations.push_back(IFC4X3_RC3_IfcGeographicElementType_type); - declarations.push_back(IFC4X3_RC3_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricSet_type); - declarations.push_back(IFC4X3_RC3_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X3_RC3_IfcGeomodel_type); - declarations.push_back(IFC4X3_RC3_IfcGeoslice_type); - declarations.push_back(IFC4X3_RC3_IfcGeotechnicalAssembly_type); - declarations.push_back(IFC4X3_RC3_IfcGeotechnicalElement_type); - declarations.push_back(IFC4X3_RC3_IfcGeotechnicalStratum_type); - declarations.push_back(IFC4X3_RC3_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X3_RC3_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X3_RC3_IfcGradientCurve_type); - declarations.push_back(IFC4X3_RC3_IfcGrid_type); - declarations.push_back(IFC4X3_RC3_IfcGridAxis_type); - declarations.push_back(IFC4X3_RC3_IfcGridPlacement_type); - declarations.push_back(IFC4X3_RC3_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X3_RC3_IfcGridTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcGroup_type); - declarations.push_back(IFC4X3_RC3_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X3_RC3_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcHeatExchanger_type); - declarations.push_back(IFC4X3_RC3_IfcHeatExchangerType_type); - declarations.push_back(IFC4X3_RC3_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcHumidifier_type); - declarations.push_back(IFC4X3_RC3_IfcHumidifierType_type); - declarations.push_back(IFC4X3_RC3_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcIdentifier_type); - declarations.push_back(IFC4X3_RC3_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcImageTexture_type); - declarations.push_back(IFC4X3_RC3_IfcImpactProtectionDevice_type); - declarations.push_back(IFC4X3_RC3_IfcImpactProtectionDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type); - declarations.push_back(IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcIndexedColourMap_type); - declarations.push_back(IFC4X3_RC3_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X3_RC3_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X3_RC3_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X3_RC3_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X3_RC3_IfcInductanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcInteger_type); - declarations.push_back(IFC4X3_RC3_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcInterceptor_type); - declarations.push_back(IFC4X3_RC3_IfcInterceptorType_type); - declarations.push_back(IFC4X3_RC3_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcInterferenceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X3_RC3_IfcIntersectionCurve_type); - declarations.push_back(IFC4X3_RC3_IfcInventory_type); - declarations.push_back(IFC4X3_RC3_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X3_RC3_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC3_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcJunctionBox_type); - declarations.push_back(IFC4X3_RC3_IfcJunctionBoxType_type); - declarations.push_back(IFC4X3_RC3_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcKerb_type); - declarations.push_back(IFC4X3_RC3_IfcKerbType_type); - declarations.push_back(IFC4X3_RC3_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcKnotType_type); - declarations.push_back(IFC4X3_RC3_IfcLabel_type); - declarations.push_back(IFC4X3_RC3_IfcLaborResource_type); - declarations.push_back(IFC4X3_RC3_IfcLaborResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLagTime_type); - declarations.push_back(IFC4X3_RC3_IfcLamp_type); - declarations.push_back(IFC4X3_RC3_IfcLampType_type); - declarations.push_back(IFC4X3_RC3_IfcLampTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLanguageId_type); - declarations.push_back(IFC4X3_RC3_IfcLayeredItem_type); - declarations.push_back(IFC4X3_RC3_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLengthMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLibraryInformation_type); - declarations.push_back(IFC4X3_RC3_IfcLibraryReference_type); - declarations.push_back(IFC4X3_RC3_IfcLibrarySelect_type); - declarations.push_back(IFC4X3_RC3_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLightDistributionData_type); - declarations.push_back(IFC4X3_RC3_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLightFixture_type); - declarations.push_back(IFC4X3_RC3_IfcLightFixtureType_type); - declarations.push_back(IFC4X3_RC3_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X3_RC3_IfcLightSource_type); - declarations.push_back(IFC4X3_RC3_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X3_RC3_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X3_RC3_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X3_RC3_IfcLightSourcePositional_type); - declarations.push_back(IFC4X3_RC3_IfcLightSourceSpot_type); - declarations.push_back(IFC4X3_RC3_IfcLine_type); - declarations.push_back(IFC4X3_RC3_IfcLinearElement_type); - declarations.push_back(IFC4X3_RC3_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLinearPlacement_type); - declarations.push_back(IFC4X3_RC3_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X3_RC3_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLineIndex_type); - declarations.push_back(IFC4X3_RC3_IfcLiquidTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcLiquidTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLocalPlacement_type); - declarations.push_back(IFC4X3_RC3_IfcLogical_type); - declarations.push_back(IFC4X3_RC3_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X3_RC3_IfcLoop_type); - declarations.push_back(IFC4X3_RC3_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X3_RC3_IfcMapConversion_type); - declarations.push_back(IFC4X3_RC3_IfcMappedItem_type); - declarations.push_back(IFC4X3_RC3_IfcMarineFacility_type); - declarations.push_back(IFC4X3_RC3_IfcMarineFacilityTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcMarinePartTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMassMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMaterial_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialConstituent_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialDefinition_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialLayer_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialList_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialProfile_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialProperties_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialSelect_type); - declarations.push_back(IFC4X3_RC3_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X3_RC3_IfcMeasureValue_type); - declarations.push_back(IFC4X3_RC3_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X3_RC3_IfcMechanicalFastener_type); - declarations.push_back(IFC4X3_RC3_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcMedicalDevice_type); - declarations.push_back(IFC4X3_RC3_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcMember_type); - declarations.push_back(IFC4X3_RC3_IfcMemberStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcMemberType_type); - declarations.push_back(IFC4X3_RC3_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcMetric_type); - declarations.push_back(IFC4X3_RC3_IfcMetricValueSelect_type); - declarations.push_back(IFC4X3_RC3_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC3_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcMonetaryUnit_type); - declarations.push_back(IFC4X3_RC3_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X3_RC3_IfcMooringDevice_type); - declarations.push_back(IFC4X3_RC3_IfcMooringDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcMooringDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcMotorConnection_type); - declarations.push_back(IFC4X3_RC3_IfcMotorConnectionType_type); - declarations.push_back(IFC4X3_RC3_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcNamedUnit_type); - declarations.push_back(IFC4X3_RC3_IfcNavigationElement_type); - declarations.push_back(IFC4X3_RC3_IfcNavigationElementType_type); - declarations.push_back(IFC4X3_RC3_IfcNavigationElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcNumericMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcObject_type); - declarations.push_back(IFC4X3_RC3_IfcObjectDefinition_type); - declarations.push_back(IFC4X3_RC3_IfcObjective_type); - declarations.push_back(IFC4X3_RC3_IfcObjectiveEnum_type); - declarations.push_back(IFC4X3_RC3_IfcObjectPlacement_type); - declarations.push_back(IFC4X3_RC3_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcObjectTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcOccupant_type); - declarations.push_back(IFC4X3_RC3_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcOffsetCurve_type); - declarations.push_back(IFC4X3_RC3_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X3_RC3_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X3_RC3_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X3_RC3_IfcOpenCrossProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcOpeningElement_type); - declarations.push_back(IFC4X3_RC3_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcOpeningStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcOpenShell_type); - declarations.push_back(IFC4X3_RC3_IfcOrganization_type); - declarations.push_back(IFC4X3_RC3_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcOrientedEdge_type); - declarations.push_back(IFC4X3_RC3_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X3_RC3_IfcOutlet_type); - declarations.push_back(IFC4X3_RC3_IfcOutletType_type); - declarations.push_back(IFC4X3_RC3_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcOwnerHistory_type); - declarations.push_back(IFC4X3_RC3_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcParameterValue_type); - declarations.push_back(IFC4X3_RC3_IfcPath_type); - declarations.push_back(IFC4X3_RC3_IfcPavement_type); - declarations.push_back(IFC4X3_RC3_IfcPavementType_type); - declarations.push_back(IFC4X3_RC3_IfcPavementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPcurve_type); - declarations.push_back(IFC4X3_RC3_IfcPerformanceHistory_type); - declarations.push_back(IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X3_RC3_IfcPermit_type); - declarations.push_back(IFC4X3_RC3_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPerson_type); - declarations.push_back(IFC4X3_RC3_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X3_RC3_IfcPHMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X3_RC3_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X3_RC3_IfcPile_type); - declarations.push_back(IFC4X3_RC3_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPileType_type); - declarations.push_back(IFC4X3_RC3_IfcPileTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPipeFitting_type); - declarations.push_back(IFC4X3_RC3_IfcPipeFittingType_type); - declarations.push_back(IFC4X3_RC3_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPipeSegment_type); - declarations.push_back(IFC4X3_RC3_IfcPipeSegmentType_type); - declarations.push_back(IFC4X3_RC3_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPixelTexture_type); - declarations.push_back(IFC4X3_RC3_IfcPlacement_type); - declarations.push_back(IFC4X3_RC3_IfcPlanarBox_type); - declarations.push_back(IFC4X3_RC3_IfcPlanarExtent_type); - declarations.push_back(IFC4X3_RC3_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPlane_type); - declarations.push_back(IFC4X3_RC3_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPlant_type); - declarations.push_back(IFC4X3_RC3_IfcPlate_type); - declarations.push_back(IFC4X3_RC3_IfcPlateStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcPlateType_type); - declarations.push_back(IFC4X3_RC3_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPoint_type); - declarations.push_back(IFC4X3_RC3_IfcPointByDistanceExpression_type); - declarations.push_back(IFC4X3_RC3_IfcPointOnCurve_type); - declarations.push_back(IFC4X3_RC3_IfcPointOnSurface_type); - declarations.push_back(IFC4X3_RC3_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X3_RC3_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X3_RC3_IfcPolyline_type); - declarations.push_back(IFC4X3_RC3_IfcPolyLoop_type); - declarations.push_back(IFC4X3_RC3_IfcPolynomialCurve_type); - declarations.push_back(IFC4X3_RC3_IfcPort_type); - declarations.push_back(IFC4X3_RC3_IfcPositioningElement_type); - declarations.push_back(IFC4X3_RC3_IfcPositiveInteger_type); - declarations.push_back(IFC4X3_RC3_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPostalAddress_type); - declarations.push_back(IFC4X3_RC3_IfcPowerMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcPreDefinedColour_type); - declarations.push_back(IFC4X3_RC3_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC3_IfcPreDefinedItem_type); - declarations.push_back(IFC4X3_RC3_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X3_RC3_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X3_RC3_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcPresentableText_type); - declarations.push_back(IFC4X3_RC3_IfcPresentationItem_type); - declarations.push_back(IFC4X3_RC3_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X3_RC3_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X3_RC3_IfcPresentationStyle_type); - declarations.push_back(IFC4X3_RC3_IfcPressureMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcProcedure_type); - declarations.push_back(IFC4X3_RC3_IfcProcedureType_type); - declarations.push_back(IFC4X3_RC3_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProcess_type); - declarations.push_back(IFC4X3_RC3_IfcProcessSelect_type); - declarations.push_back(IFC4X3_RC3_IfcProduct_type); - declarations.push_back(IFC4X3_RC3_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X3_RC3_IfcProductRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X3_RC3_IfcProductSelect_type); - declarations.push_back(IFC4X3_RC3_IfcProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcProfileProperties_type); - declarations.push_back(IFC4X3_RC3_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProject_type); - declarations.push_back(IFC4X3_RC3_IfcProjectedCRS_type); - declarations.push_back(IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProjectionElement_type); - declarations.push_back(IFC4X3_RC3_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProjectLibrary_type); - declarations.push_back(IFC4X3_RC3_IfcProjectOrder_type); - declarations.push_back(IFC4X3_RC3_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProperty_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyDefinition_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyListValue_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySet_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcPropertySingleValue_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyTableValue_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyTemplate_type); - declarations.push_back(IFC4X3_RC3_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X3_RC3_IfcProtectiveDevice_type); - declarations.push_back(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcProxy_type); - declarations.push_back(IFC4X3_RC3_IfcPump_type); - declarations.push_back(IFC4X3_RC3_IfcPumpType_type); - declarations.push_back(IFC4X3_RC3_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcQuantityArea_type); - declarations.push_back(IFC4X3_RC3_IfcQuantityCount_type); - declarations.push_back(IFC4X3_RC3_IfcQuantityLength_type); - declarations.push_back(IFC4X3_RC3_IfcQuantitySet_type); - declarations.push_back(IFC4X3_RC3_IfcQuantityTime_type); - declarations.push_back(IFC4X3_RC3_IfcQuantityVolume_type); - declarations.push_back(IFC4X3_RC3_IfcQuantityWeight_type); - declarations.push_back(IFC4X3_RC3_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcRail_type); - declarations.push_back(IFC4X3_RC3_IfcRailing_type); - declarations.push_back(IFC4X3_RC3_IfcRailingType_type); - declarations.push_back(IFC4X3_RC3_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRailType_type); - declarations.push_back(IFC4X3_RC3_IfcRailTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRailway_type); - declarations.push_back(IFC4X3_RC3_IfcRailwayPartTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRailwayTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRamp_type); - declarations.push_back(IFC4X3_RC3_IfcRampFlight_type); - declarations.push_back(IFC4X3_RC3_IfcRampFlightType_type); - declarations.push_back(IFC4X3_RC3_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRampType_type); - declarations.push_back(IFC4X3_RC3_IfcRampTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRatioMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC3_IfcReal_type); - declarations.push_back(IFC4X3_RC3_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcRectangularPyramid_type); - declarations.push_back(IFC4X3_RC3_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X3_RC3_IfcRecurrencePattern_type); - declarations.push_back(IFC4X3_RC3_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcReference_type); - declarations.push_back(IFC4X3_RC3_IfcReferent_type); - declarations.push_back(IFC4X3_RC3_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcedSoil_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingBar_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingBarType_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingElement_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingElementType_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingMesh_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRelAggregates_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssigns_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociates_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X3_RC3_IfcRelAssociatesProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnects_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsElements_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X3_RC3_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC3_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X3_RC3_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X3_RC3_IfcRelDeclares_type); - declarations.push_back(IFC4X3_RC3_IfcRelDecomposes_type); - declarations.push_back(IFC4X3_RC3_IfcRelDefines_type); - declarations.push_back(IFC4X3_RC3_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X3_RC3_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X3_RC3_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X3_RC3_IfcRelDefinesByType_type); - declarations.push_back(IFC4X3_RC3_IfcRelFillsElement_type); - declarations.push_back(IFC4X3_RC3_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X3_RC3_IfcRelInterferesElements_type); - declarations.push_back(IFC4X3_RC3_IfcRelNests_type); - declarations.push_back(IFC4X3_RC3_IfcRelPositions_type); - declarations.push_back(IFC4X3_RC3_IfcRelProjectsElement_type); - declarations.push_back(IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC3_IfcRelSequence_type); - declarations.push_back(IFC4X3_RC3_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X3_RC3_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X3_RC3_IfcRelVoidsElement_type); - declarations.push_back(IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC3_IfcRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcRepresentationContext_type); - declarations.push_back(IFC4X3_RC3_IfcRepresentationItem_type); - declarations.push_back(IFC4X3_RC3_IfcRepresentationMap_type); - declarations.push_back(IFC4X3_RC3_IfcResource_type); - declarations.push_back(IFC4X3_RC3_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X3_RC3_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X3_RC3_IfcResourceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcResourceTime_type); - declarations.push_back(IFC4X3_RC3_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC3_IfcRightCircularCone_type); - declarations.push_back(IFC4X3_RC3_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X3_RC3_IfcRoad_type); - declarations.push_back(IFC4X3_RC3_IfcRoadPartTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRoadTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRoleEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRoof_type); - declarations.push_back(IFC4X3_RC3_IfcRoofType_type); - declarations.push_back(IFC4X3_RC3_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcRoot_type); - declarations.push_back(IFC4X3_RC3_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC3_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSchedulingTime_type); - declarations.push_back(IFC4X3_RC3_IfcSeamCurve_type); - declarations.push_back(IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_RC3_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSectionedSolid_type); - declarations.push_back(IFC4X3_RC3_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X3_RC3_IfcSectionedSpine_type); - declarations.push_back(IFC4X3_RC3_IfcSectionedSurface_type); - declarations.push_back(IFC4X3_RC3_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSectionProperties_type); - declarations.push_back(IFC4X3_RC3_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X3_RC3_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSegment_type); - declarations.push_back(IFC4X3_RC3_IfcSegmentedReferenceCurve_type); - declarations.push_back(IFC4X3_RC3_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X3_RC3_IfcSensor_type); - declarations.push_back(IFC4X3_RC3_IfcSensorType_type); - declarations.push_back(IFC4X3_RC3_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSequenceEnum_type); - declarations.push_back(IFC4X3_RC3_IfcShadingDevice_type); - declarations.push_back(IFC4X3_RC3_IfcShadingDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcShapeAspect_type); - declarations.push_back(IFC4X3_RC3_IfcShapeModel_type); - declarations.push_back(IFC4X3_RC3_IfcShapeRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcShell_type); - declarations.push_back(IFC4X3_RC3_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC3_IfcSign_type); - declarations.push_back(IFC4X3_RC3_IfcSignal_type); - declarations.push_back(IFC4X3_RC3_IfcSignalType_type); - declarations.push_back(IFC4X3_RC3_IfcSignalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSignType_type); - declarations.push_back(IFC4X3_RC3_IfcSignTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSimpleProperty_type); - declarations.push_back(IFC4X3_RC3_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSimpleValue_type); - declarations.push_back(IFC4X3_RC3_IfcSine_type); - declarations.push_back(IFC4X3_RC3_IfcSIPrefix_type); - declarations.push_back(IFC4X3_RC3_IfcSite_type); - declarations.push_back(IFC4X3_RC3_IfcSIUnit_type); - declarations.push_back(IFC4X3_RC3_IfcSIUnitName_type); - declarations.push_back(IFC4X3_RC3_IfcSizeSelect_type); - declarations.push_back(IFC4X3_RC3_IfcSlab_type); - declarations.push_back(IFC4X3_RC3_IfcSlabElementedCase_type); - declarations.push_back(IFC4X3_RC3_IfcSlabStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcSlabType_type); - declarations.push_back(IFC4X3_RC3_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X3_RC3_IfcSolarDevice_type); - declarations.push_back(IFC4X3_RC3_IfcSolarDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSolidModel_type); - declarations.push_back(IFC4X3_RC3_IfcSolidOrShell_type); - declarations.push_back(IFC4X3_RC3_IfcSolidStratum_type); - declarations.push_back(IFC4X3_RC3_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSpace_type); - declarations.push_back(IFC4X3_RC3_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X3_RC3_IfcSpaceHeater_type); - declarations.push_back(IFC4X3_RC3_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSpaceType_type); - declarations.push_back(IFC4X3_RC3_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialElement_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialElementType_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialReferenceSelect_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialZone_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialZoneType_type); - declarations.push_back(IFC4X3_RC3_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcSpecularExponent_type); - declarations.push_back(IFC4X3_RC3_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X3_RC3_IfcSpecularRoughness_type); - declarations.push_back(IFC4X3_RC3_IfcSphere_type); - declarations.push_back(IFC4X3_RC3_IfcSphericalSurface_type); - declarations.push_back(IFC4X3_RC3_IfcSpiral_type); - declarations.push_back(IFC4X3_RC3_IfcStackTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcStackTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStair_type); - declarations.push_back(IFC4X3_RC3_IfcStairFlight_type); - declarations.push_back(IFC4X3_RC3_IfcStairFlightType_type); - declarations.push_back(IFC4X3_RC3_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStairType_type); - declarations.push_back(IFC4X3_RC3_IfcStairTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStateEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralAction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralActivity_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralConnection_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralItem_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoad_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralMember_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralPointAction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralReaction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X3_RC3_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X3_RC3_IfcStyledItem_type); - declarations.push_back(IFC4X3_RC3_IfcStyledRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcStyleModel_type); - declarations.push_back(IFC4X3_RC3_IfcSubContractResource_type); - declarations.push_back(IFC4X3_RC3_IfcSubContractResourceType_type); - declarations.push_back(IFC4X3_RC3_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSubedge_type); - declarations.push_back(IFC4X3_RC3_IfcSurface_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceCurve_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceFeature_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceSide_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyle_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X3_RC3_IfcSurfaceTexture_type); - declarations.push_back(IFC4X3_RC3_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC3_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X3_RC3_IfcSweptSurface_type); - declarations.push_back(IFC4X3_RC3_IfcSwitchingDevice_type); - declarations.push_back(IFC4X3_RC3_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcSystem_type); - declarations.push_back(IFC4X3_RC3_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X3_RC3_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTable_type); - declarations.push_back(IFC4X3_RC3_IfcTableColumn_type); - declarations.push_back(IFC4X3_RC3_IfcTableRow_type); - declarations.push_back(IFC4X3_RC3_IfcTank_type); - declarations.push_back(IFC4X3_RC3_IfcTankType_type); - declarations.push_back(IFC4X3_RC3_IfcTankTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTask_type); - declarations.push_back(IFC4X3_RC3_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTaskTime_type); - declarations.push_back(IFC4X3_RC3_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X3_RC3_IfcTaskType_type); - declarations.push_back(IFC4X3_RC3_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTelecomAddress_type); - declarations.push_back(IFC4X3_RC3_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcTendon_type); - declarations.push_back(IFC4X3_RC3_IfcTendonAnchor_type); - declarations.push_back(IFC4X3_RC3_IfcTendonAnchorType_type); - declarations.push_back(IFC4X3_RC3_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTendonConduit_type); - declarations.push_back(IFC4X3_RC3_IfcTendonConduitType_type); - declarations.push_back(IFC4X3_RC3_IfcTendonConduitTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTendonType_type); - declarations.push_back(IFC4X3_RC3_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X3_RC3_IfcTessellatedItem_type); - declarations.push_back(IFC4X3_RC3_IfcText_type); - declarations.push_back(IFC4X3_RC3_IfcTextAlignment_type); - declarations.push_back(IFC4X3_RC3_IfcTextDecoration_type); - declarations.push_back(IFC4X3_RC3_IfcTextFontName_type); - declarations.push_back(IFC4X3_RC3_IfcTextFontSelect_type); - declarations.push_back(IFC4X3_RC3_IfcTextLiteral_type); - declarations.push_back(IFC4X3_RC3_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X3_RC3_IfcTextPath_type); - declarations.push_back(IFC4X3_RC3_IfcTextStyle_type); - declarations.push_back(IFC4X3_RC3_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X3_RC3_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X3_RC3_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X3_RC3_IfcTextTransformation_type); - declarations.push_back(IFC4X3_RC3_IfcTextureCoordinate_type); - declarations.push_back(IFC4X3_RC3_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X3_RC3_IfcTextureMap_type); - declarations.push_back(IFC4X3_RC3_IfcTextureVertex_type); - declarations.push_back(IFC4X3_RC3_IfcTextureVertexList_type); - declarations.push_back(IFC4X3_RC3_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_RC3_IfcTime_type); - declarations.push_back(IFC4X3_RC3_IfcTimeMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X3_RC3_IfcTimePeriod_type); - declarations.push_back(IFC4X3_RC3_IfcTimeSeries_type); - declarations.push_back(IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC3_IfcTimeStamp_type); - declarations.push_back(IFC4X3_RC3_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X3_RC3_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X3_RC3_IfcToroidalSurface_type); - declarations.push_back(IFC4X3_RC3_IfcTorqueMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcTrackElement_type); - declarations.push_back(IFC4X3_RC3_IfcTrackElementType_type); - declarations.push_back(IFC4X3_RC3_IfcTrackElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTransformer_type); - declarations.push_back(IFC4X3_RC3_IfcTransformerType_type); - declarations.push_back(IFC4X3_RC3_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTransitionCode_type); - declarations.push_back(IFC4X3_RC3_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC3_IfcTransportElement_type); - declarations.push_back(IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTransportElementType_type); - declarations.push_back(IFC4X3_RC3_IfcTransportElementTypeSelect_type); - declarations.push_back(IFC4X3_RC3_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X3_RC3_IfcTrimmedCurve_type); - declarations.push_back(IFC4X3_RC3_IfcTrimmingPreference_type); - declarations.push_back(IFC4X3_RC3_IfcTrimmingSelect_type); - declarations.push_back(IFC4X3_RC3_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcTubeBundle_type); - declarations.push_back(IFC4X3_RC3_IfcTubeBundleType_type); - declarations.push_back(IFC4X3_RC3_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcTypeObject_type); - declarations.push_back(IFC4X3_RC3_IfcTypeProcess_type); - declarations.push_back(IFC4X3_RC3_IfcTypeProduct_type); - declarations.push_back(IFC4X3_RC3_IfcTypeResource_type); - declarations.push_back(IFC4X3_RC3_IfcUnit_type); - declarations.push_back(IFC4X3_RC3_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X3_RC3_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X3_RC3_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcUnitAssignment_type); - declarations.push_back(IFC4X3_RC3_IfcUnitEnum_type); - declarations.push_back(IFC4X3_RC3_IfcURIReference_type); - declarations.push_back(IFC4X3_RC3_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X3_RC3_IfcValue_type); - declarations.push_back(IFC4X3_RC3_IfcValve_type); - declarations.push_back(IFC4X3_RC3_IfcValveType_type); - declarations.push_back(IFC4X3_RC3_IfcValveTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcVector_type); - declarations.push_back(IFC4X3_RC3_IfcVectorOrDirection_type); - declarations.push_back(IFC4X3_RC3_IfcVertex_type); - declarations.push_back(IFC4X3_RC3_IfcVertexLoop_type); - declarations.push_back(IFC4X3_RC3_IfcVertexPoint_type); - declarations.push_back(IFC4X3_RC3_IfcVibrationDamper_type); - declarations.push_back(IFC4X3_RC3_IfcVibrationDamperType_type); - declarations.push_back(IFC4X3_RC3_IfcVibrationDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcVibrationIsolator_type); - declarations.push_back(IFC4X3_RC3_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcVienneseBend_type); - declarations.push_back(IFC4X3_RC3_IfcVirtualElement_type); - declarations.push_back(IFC4X3_RC3_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X3_RC3_IfcVoidingFeature_type); - declarations.push_back(IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcVoidStratum_type); - declarations.push_back(IFC4X3_RC3_IfcVolumeMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcWall_type); - declarations.push_back(IFC4X3_RC3_IfcWallElementedCase_type); - declarations.push_back(IFC4X3_RC3_IfcWallStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcWallType_type); - declarations.push_back(IFC4X3_RC3_IfcWallTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X3_RC3_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X3_RC3_IfcWasteTerminal_type); - declarations.push_back(IFC4X3_RC3_IfcWasteTerminalType_type); - declarations.push_back(IFC4X3_RC3_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWaterStratum_type); - declarations.push_back(IFC4X3_RC3_IfcWindow_type); - declarations.push_back(IFC4X3_RC3_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X3_RC3_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X3_RC3_IfcWindowStandardCase_type); - declarations.push_back(IFC4X3_RC3_IfcWindowStyle_type); - declarations.push_back(IFC4X3_RC3_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWindowType_type); - declarations.push_back(IFC4X3_RC3_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWorkCalendar_type); - declarations.push_back(IFC4X3_RC3_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWorkControl_type); - declarations.push_back(IFC4X3_RC3_IfcWorkPlan_type); - declarations.push_back(IFC4X3_RC3_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWorkSchedule_type); - declarations.push_back(IFC4X3_RC3_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC3_IfcWorkTime_type); - declarations.push_back(IFC4X3_RC3_IfcZone_type); - declarations.push_back(IFC4X3_RC3_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X3_RC3", declarations, new IFC4X3_RC3_instance_factory()); + std::vector declarations= { + IFC4X3_RC3_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC3_IfcAccelerationMeasure_type, + IFC4X3_RC3_IfcActionRequest_type, + IFC4X3_RC3_IfcActionRequestTypeEnum_type, + IFC4X3_RC3_IfcActionSourceTypeEnum_type, + IFC4X3_RC3_IfcActionTypeEnum_type, + IFC4X3_RC3_IfcActor_type, + IFC4X3_RC3_IfcActorRole_type, + IFC4X3_RC3_IfcActorSelect_type, + IFC4X3_RC3_IfcActuator_type, + IFC4X3_RC3_IfcActuatorType_type, + IFC4X3_RC3_IfcActuatorTypeEnum_type, + IFC4X3_RC3_IfcAddress_type, + IFC4X3_RC3_IfcAddressTypeEnum_type, + IFC4X3_RC3_IfcAdvancedBrep_type, + IFC4X3_RC3_IfcAdvancedBrepWithVoids_type, + IFC4X3_RC3_IfcAdvancedFace_type, + IFC4X3_RC3_IfcAirTerminal_type, + IFC4X3_RC3_IfcAirTerminalBox_type, + IFC4X3_RC3_IfcAirTerminalBoxType_type, + IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type, + IFC4X3_RC3_IfcAirTerminalType_type, + IFC4X3_RC3_IfcAirTerminalTypeEnum_type, + IFC4X3_RC3_IfcAirToAirHeatRecovery_type, + IFC4X3_RC3_IfcAirToAirHeatRecoveryType_type, + IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X3_RC3_IfcAlarm_type, + IFC4X3_RC3_IfcAlarmType_type, + IFC4X3_RC3_IfcAlarmTypeEnum_type, + IFC4X3_RC3_IfcAlignment_type, + IFC4X3_RC3_IfcAlignmentCant_type, + IFC4X3_RC3_IfcAlignmentCantSegment_type, + IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type, + IFC4X3_RC3_IfcAlignmentHorizontal_type, + IFC4X3_RC3_IfcAlignmentHorizontalSegment_type, + IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type, + IFC4X3_RC3_IfcAlignmentParameterSegment_type, + IFC4X3_RC3_IfcAlignmentSegment_type, + IFC4X3_RC3_IfcAlignmentTypeEnum_type, + IFC4X3_RC3_IfcAlignmentVertical_type, + IFC4X3_RC3_IfcAlignmentVerticalSegment_type, + IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type, + IFC4X3_RC3_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC3_IfcAnalysisModelTypeEnum_type, + IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type, + IFC4X3_RC3_IfcAngularVelocityMeasure_type, + IFC4X3_RC3_IfcAnnotation_type, + IFC4X3_RC3_IfcAnnotationFillArea_type, + IFC4X3_RC3_IfcAnnotationTypeEnum_type, + IFC4X3_RC3_IfcApplication_type, + IFC4X3_RC3_IfcAppliedValue_type, + IFC4X3_RC3_IfcAppliedValueSelect_type, + IFC4X3_RC3_IfcApproval_type, + IFC4X3_RC3_IfcApprovalRelationship_type, + IFC4X3_RC3_IfcArbitraryClosedProfileDef_type, + IFC4X3_RC3_IfcArbitraryOpenProfileDef_type, + IFC4X3_RC3_IfcArbitraryProfileDefWithVoids_type, + IFC4X3_RC3_IfcArcIndex_type, + IFC4X3_RC3_IfcAreaDensityMeasure_type, + IFC4X3_RC3_IfcAreaMeasure_type, + IFC4X3_RC3_IfcArithmeticOperatorEnum_type, + IFC4X3_RC3_IfcAssemblyPlaceEnum_type, + IFC4X3_RC3_IfcAsset_type, + IFC4X3_RC3_IfcAsymmetricIShapeProfileDef_type, + IFC4X3_RC3_IfcAudioVisualAppliance_type, + IFC4X3_RC3_IfcAudioVisualApplianceType_type, + IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type, + IFC4X3_RC3_IfcAxis1Placement_type, + IFC4X3_RC3_IfcAxis2Placement_type, + IFC4X3_RC3_IfcAxis2Placement2D_type, + IFC4X3_RC3_IfcAxis2Placement3D_type, + IFC4X3_RC3_IfcAxis2PlacementLinear_type, + IFC4X3_RC3_IfcBeam_type, + IFC4X3_RC3_IfcBeamStandardCase_type, + IFC4X3_RC3_IfcBeamType_type, + IFC4X3_RC3_IfcBeamTypeEnum_type, + IFC4X3_RC3_IfcBearing_type, + IFC4X3_RC3_IfcBearingType_type, + IFC4X3_RC3_IfcBearingTypeDisplacementEnum_type, + IFC4X3_RC3_IfcBearingTypeEnum_type, + IFC4X3_RC3_IfcBenchmarkEnum_type, + IFC4X3_RC3_IfcBendingParameterSelect_type, + IFC4X3_RC3_IfcBinary_type, + IFC4X3_RC3_IfcBlobTexture_type, + IFC4X3_RC3_IfcBlock_type, + IFC4X3_RC3_IfcBoiler_type, + IFC4X3_RC3_IfcBoilerType_type, + IFC4X3_RC3_IfcBoilerTypeEnum_type, + IFC4X3_RC3_IfcBoolean_type, + IFC4X3_RC3_IfcBooleanClippingResult_type, + IFC4X3_RC3_IfcBooleanOperand_type, + IFC4X3_RC3_IfcBooleanOperator_type, + IFC4X3_RC3_IfcBooleanResult_type, + IFC4X3_RC3_IfcBorehole_type, + IFC4X3_RC3_IfcBoundaryCondition_type, + IFC4X3_RC3_IfcBoundaryCurve_type, + IFC4X3_RC3_IfcBoundaryEdgeCondition_type, + IFC4X3_RC3_IfcBoundaryFaceCondition_type, + IFC4X3_RC3_IfcBoundaryNodeCondition_type, + IFC4X3_RC3_IfcBoundaryNodeConditionWarping_type, + IFC4X3_RC3_IfcBoundedCurve_type, + IFC4X3_RC3_IfcBoundedSurface_type, + IFC4X3_RC3_IfcBoundingBox_type, + IFC4X3_RC3_IfcBoxAlignment_type, + IFC4X3_RC3_IfcBoxedHalfSpace_type, + IFC4X3_RC3_IfcBridge_type, + IFC4X3_RC3_IfcBridgePartTypeEnum_type, + IFC4X3_RC3_IfcBridgeTypeEnum_type, + IFC4X3_RC3_IfcBSplineCurve_type, + IFC4X3_RC3_IfcBSplineCurveForm_type, + IFC4X3_RC3_IfcBSplineCurveWithKnots_type, + IFC4X3_RC3_IfcBSplineSurface_type, + IFC4X3_RC3_IfcBSplineSurfaceForm_type, + IFC4X3_RC3_IfcBSplineSurfaceWithKnots_type, + IFC4X3_RC3_IfcBuilding_type, + IFC4X3_RC3_IfcBuildingElementPart_type, + IFC4X3_RC3_IfcBuildingElementPartType_type, + IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type, + IFC4X3_RC3_IfcBuildingElementProxy_type, + IFC4X3_RC3_IfcBuildingElementProxyType_type, + IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type, + IFC4X3_RC3_IfcBuildingStorey_type, + IFC4X3_RC3_IfcBuildingSystem_type, + IFC4X3_RC3_IfcBuildingSystemTypeEnum_type, + IFC4X3_RC3_IfcBuiltElement_type, + IFC4X3_RC3_IfcBuiltElementType_type, + IFC4X3_RC3_IfcBuiltSystem_type, + IFC4X3_RC3_IfcBuiltSystemTypeEnum_type, + IFC4X3_RC3_IfcBurner_type, + IFC4X3_RC3_IfcBurnerType_type, + IFC4X3_RC3_IfcBurnerTypeEnum_type, + IFC4X3_RC3_IfcCableCarrierFitting_type, + IFC4X3_RC3_IfcCableCarrierFittingType_type, + IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type, + IFC4X3_RC3_IfcCableCarrierSegment_type, + IFC4X3_RC3_IfcCableCarrierSegmentType_type, + IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type, + IFC4X3_RC3_IfcCableFitting_type, + IFC4X3_RC3_IfcCableFittingType_type, + IFC4X3_RC3_IfcCableFittingTypeEnum_type, + IFC4X3_RC3_IfcCableSegment_type, + IFC4X3_RC3_IfcCableSegmentType_type, + IFC4X3_RC3_IfcCableSegmentTypeEnum_type, + IFC4X3_RC3_IfcCaissonFoundation_type, + IFC4X3_RC3_IfcCaissonFoundationType_type, + IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type, + IFC4X3_RC3_IfcCardinalPointReference_type, + IFC4X3_RC3_IfcCartesianPoint_type, + IFC4X3_RC3_IfcCartesianPointList_type, + IFC4X3_RC3_IfcCartesianPointList2D_type, + IFC4X3_RC3_IfcCartesianPointList3D_type, + IFC4X3_RC3_IfcCartesianTransformationOperator_type, + IFC4X3_RC3_IfcCartesianTransformationOperator2D_type, + IFC4X3_RC3_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X3_RC3_IfcCartesianTransformationOperator3D_type, + IFC4X3_RC3_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X3_RC3_IfcCenterLineProfileDef_type, + IFC4X3_RC3_IfcChangeActionEnum_type, + IFC4X3_RC3_IfcChiller_type, + IFC4X3_RC3_IfcChillerType_type, + IFC4X3_RC3_IfcChillerTypeEnum_type, + IFC4X3_RC3_IfcChimney_type, + IFC4X3_RC3_IfcChimneyType_type, + IFC4X3_RC3_IfcChimneyTypeEnum_type, + IFC4X3_RC3_IfcCircle_type, + IFC4X3_RC3_IfcCircleHollowProfileDef_type, + IFC4X3_RC3_IfcCircleProfileDef_type, + IFC4X3_RC3_IfcCivilElement_type, + IFC4X3_RC3_IfcCivilElementType_type, + IFC4X3_RC3_IfcClassification_type, + IFC4X3_RC3_IfcClassificationReference_type, + IFC4X3_RC3_IfcClassificationReferenceSelect_type, + IFC4X3_RC3_IfcClassificationSelect_type, + IFC4X3_RC3_IfcClosedShell_type, + IFC4X3_RC3_IfcClothoid_type, + IFC4X3_RC3_IfcCoil_type, + IFC4X3_RC3_IfcCoilType_type, + IFC4X3_RC3_IfcCoilTypeEnum_type, + IFC4X3_RC3_IfcColour_type, + IFC4X3_RC3_IfcColourOrFactor_type, + IFC4X3_RC3_IfcColourRgb_type, + IFC4X3_RC3_IfcColourRgbList_type, + IFC4X3_RC3_IfcColourSpecification_type, + IFC4X3_RC3_IfcColumn_type, + IFC4X3_RC3_IfcColumnStandardCase_type, + IFC4X3_RC3_IfcColumnType_type, + IFC4X3_RC3_IfcColumnTypeEnum_type, + IFC4X3_RC3_IfcCommunicationsAppliance_type, + IFC4X3_RC3_IfcCommunicationsApplianceType_type, + IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type, + IFC4X3_RC3_IfcComplexNumber_type, + IFC4X3_RC3_IfcComplexProperty_type, + IFC4X3_RC3_IfcComplexPropertyTemplate_type, + IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X3_RC3_IfcCompositeCurve_type, + IFC4X3_RC3_IfcCompositeCurveOnSurface_type, + IFC4X3_RC3_IfcCompositeCurveSegment_type, + IFC4X3_RC3_IfcCompositeProfileDef_type, + IFC4X3_RC3_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC3_IfcCompressor_type, + IFC4X3_RC3_IfcCompressorType_type, + IFC4X3_RC3_IfcCompressorTypeEnum_type, + IFC4X3_RC3_IfcCondenser_type, + IFC4X3_RC3_IfcCondenserType_type, + IFC4X3_RC3_IfcCondenserTypeEnum_type, + IFC4X3_RC3_IfcConic_type, + IFC4X3_RC3_IfcConnectedFaceSet_type, + IFC4X3_RC3_IfcConnectionCurveGeometry_type, + IFC4X3_RC3_IfcConnectionGeometry_type, + IFC4X3_RC3_IfcConnectionPointEccentricity_type, + IFC4X3_RC3_IfcConnectionPointGeometry_type, + IFC4X3_RC3_IfcConnectionSurfaceGeometry_type, + IFC4X3_RC3_IfcConnectionTypeEnum_type, + IFC4X3_RC3_IfcConnectionVolumeGeometry_type, + IFC4X3_RC3_IfcConstraint_type, + IFC4X3_RC3_IfcConstraintEnum_type, + IFC4X3_RC3_IfcConstructionEquipmentResource_type, + IFC4X3_RC3_IfcConstructionEquipmentResourceType_type, + IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X3_RC3_IfcConstructionMaterialResource_type, + IFC4X3_RC3_IfcConstructionMaterialResourceType_type, + IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X3_RC3_IfcConstructionProductResource_type, + IFC4X3_RC3_IfcConstructionProductResourceType_type, + IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type, + IFC4X3_RC3_IfcConstructionResource_type, + IFC4X3_RC3_IfcConstructionResourceType_type, + IFC4X3_RC3_IfcContext_type, + IFC4X3_RC3_IfcContextDependentMeasure_type, + IFC4X3_RC3_IfcContextDependentUnit_type, + IFC4X3_RC3_IfcControl_type, + IFC4X3_RC3_IfcController_type, + IFC4X3_RC3_IfcControllerType_type, + IFC4X3_RC3_IfcControllerTypeEnum_type, + IFC4X3_RC3_IfcConversionBasedUnit_type, + IFC4X3_RC3_IfcConversionBasedUnitWithOffset_type, + IFC4X3_RC3_IfcConveyorSegment_type, + IFC4X3_RC3_IfcConveyorSegmentType_type, + IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type, + IFC4X3_RC3_IfcCooledBeam_type, + IFC4X3_RC3_IfcCooledBeamType_type, + IFC4X3_RC3_IfcCooledBeamTypeEnum_type, + IFC4X3_RC3_IfcCoolingTower_type, + IFC4X3_RC3_IfcCoolingTowerType_type, + IFC4X3_RC3_IfcCoolingTowerTypeEnum_type, + IFC4X3_RC3_IfcCoordinateOperation_type, + IFC4X3_RC3_IfcCoordinateReferenceSystem_type, + IFC4X3_RC3_IfcCoordinateReferenceSystemSelect_type, + IFC4X3_RC3_IfcCosine_type, + IFC4X3_RC3_IfcCostItem_type, + IFC4X3_RC3_IfcCostItemTypeEnum_type, + IFC4X3_RC3_IfcCostSchedule_type, + IFC4X3_RC3_IfcCostScheduleTypeEnum_type, + IFC4X3_RC3_IfcCostValue_type, + IFC4X3_RC3_IfcCountMeasure_type, + IFC4X3_RC3_IfcCourse_type, + IFC4X3_RC3_IfcCourseType_type, + IFC4X3_RC3_IfcCourseTypeEnum_type, + IFC4X3_RC3_IfcCovering_type, + IFC4X3_RC3_IfcCoveringType_type, + IFC4X3_RC3_IfcCoveringTypeEnum_type, + IFC4X3_RC3_IfcCrewResource_type, + IFC4X3_RC3_IfcCrewResourceType_type, + IFC4X3_RC3_IfcCrewResourceTypeEnum_type, + IFC4X3_RC3_IfcCsgPrimitive3D_type, + IFC4X3_RC3_IfcCsgSelect_type, + IFC4X3_RC3_IfcCsgSolid_type, + IFC4X3_RC3_IfcCShapeProfileDef_type, + IFC4X3_RC3_IfcCurrencyRelationship_type, + IFC4X3_RC3_IfcCurtainWall_type, + IFC4X3_RC3_IfcCurtainWallType_type, + IFC4X3_RC3_IfcCurtainWallTypeEnum_type, + IFC4X3_RC3_IfcCurvatureMeasure_type, + IFC4X3_RC3_IfcCurve_type, + IFC4X3_RC3_IfcCurveBoundedPlane_type, + IFC4X3_RC3_IfcCurveBoundedSurface_type, + IFC4X3_RC3_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X3_RC3_IfcCurveInterpolationEnum_type, + IFC4X3_RC3_IfcCurveMeasureSelect_type, + IFC4X3_RC3_IfcCurveOnSurface_type, + IFC4X3_RC3_IfcCurveOrEdgeCurve_type, + IFC4X3_RC3_IfcCurveSegment_type, + IFC4X3_RC3_IfcCurveStyle_type, + IFC4X3_RC3_IfcCurveStyleFont_type, + IFC4X3_RC3_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC3_IfcCurveStyleFontPattern_type, + IFC4X3_RC3_IfcCurveStyleFontSelect_type, + IFC4X3_RC3_IfcCylindricalSurface_type, + IFC4X3_RC3_IfcDamper_type, + IFC4X3_RC3_IfcDamperType_type, + IFC4X3_RC3_IfcDamperTypeEnum_type, + IFC4X3_RC3_IfcDataOriginEnum_type, + IFC4X3_RC3_IfcDate_type, + IFC4X3_RC3_IfcDateTime_type, + IFC4X3_RC3_IfcDayInMonthNumber_type, + IFC4X3_RC3_IfcDayInWeekNumber_type, + IFC4X3_RC3_IfcDeepFoundation_type, + IFC4X3_RC3_IfcDeepFoundationType_type, + IFC4X3_RC3_IfcDefinitionSelect_type, + IFC4X3_RC3_IfcDerivedMeasureValue_type, + IFC4X3_RC3_IfcDerivedProfileDef_type, + IFC4X3_RC3_IfcDerivedUnit_type, + IFC4X3_RC3_IfcDerivedUnitElement_type, + IFC4X3_RC3_IfcDerivedUnitEnum_type, + IFC4X3_RC3_IfcDescriptiveMeasure_type, + IFC4X3_RC3_IfcDimensionalExponents_type, + IFC4X3_RC3_IfcDimensionCount_type, + IFC4X3_RC3_IfcDirection_type, + IFC4X3_RC3_IfcDirectionSenseEnum_type, + IFC4X3_RC3_IfcDirectrixCurveSweptAreaSolid_type, + IFC4X3_RC3_IfcDirectrixDerivedReferenceSweptAreaSolid_type, + IFC4X3_RC3_IfcDirectrixDistanceSweptAreaSolid_type, + IFC4X3_RC3_IfcDiscreteAccessory_type, + IFC4X3_RC3_IfcDiscreteAccessoryType_type, + IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type, + IFC4X3_RC3_IfcDistributionBoard_type, + IFC4X3_RC3_IfcDistributionBoardType_type, + IFC4X3_RC3_IfcDistributionBoardTypeEnum_type, + IFC4X3_RC3_IfcDistributionChamberElement_type, + IFC4X3_RC3_IfcDistributionChamberElementType_type, + IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type, + IFC4X3_RC3_IfcDistributionCircuit_type, + IFC4X3_RC3_IfcDistributionControlElement_type, + IFC4X3_RC3_IfcDistributionControlElementType_type, + IFC4X3_RC3_IfcDistributionElement_type, + IFC4X3_RC3_IfcDistributionElementType_type, + IFC4X3_RC3_IfcDistributionFlowElement_type, + IFC4X3_RC3_IfcDistributionFlowElementType_type, + IFC4X3_RC3_IfcDistributionPort_type, + IFC4X3_RC3_IfcDistributionPortTypeEnum_type, + IFC4X3_RC3_IfcDistributionSystem_type, + IFC4X3_RC3_IfcDistributionSystemEnum_type, + IFC4X3_RC3_IfcDocumentConfidentialityEnum_type, + IFC4X3_RC3_IfcDocumentInformation_type, + IFC4X3_RC3_IfcDocumentInformationRelationship_type, + IFC4X3_RC3_IfcDocumentReference_type, + IFC4X3_RC3_IfcDocumentSelect_type, + IFC4X3_RC3_IfcDocumentStatusEnum_type, + IFC4X3_RC3_IfcDoor_type, + IFC4X3_RC3_IfcDoorLiningProperties_type, + IFC4X3_RC3_IfcDoorPanelOperationEnum_type, + IFC4X3_RC3_IfcDoorPanelPositionEnum_type, + IFC4X3_RC3_IfcDoorPanelProperties_type, + IFC4X3_RC3_IfcDoorStandardCase_type, + IFC4X3_RC3_IfcDoorStyle_type, + IFC4X3_RC3_IfcDoorStyleConstructionEnum_type, + IFC4X3_RC3_IfcDoorStyleOperationEnum_type, + IFC4X3_RC3_IfcDoorType_type, + IFC4X3_RC3_IfcDoorTypeEnum_type, + IFC4X3_RC3_IfcDoorTypeOperationEnum_type, + IFC4X3_RC3_IfcDoseEquivalentMeasure_type, + IFC4X3_RC3_IfcDraughtingPreDefinedColour_type, + IFC4X3_RC3_IfcDraughtingPreDefinedCurveFont_type, + IFC4X3_RC3_IfcDuctFitting_type, + IFC4X3_RC3_IfcDuctFittingType_type, + IFC4X3_RC3_IfcDuctFittingTypeEnum_type, + IFC4X3_RC3_IfcDuctSegment_type, + IFC4X3_RC3_IfcDuctSegmentType_type, + IFC4X3_RC3_IfcDuctSegmentTypeEnum_type, + IFC4X3_RC3_IfcDuctSilencer_type, + IFC4X3_RC3_IfcDuctSilencerType_type, + IFC4X3_RC3_IfcDuctSilencerTypeEnum_type, + IFC4X3_RC3_IfcDuration_type, + IFC4X3_RC3_IfcDynamicViscosityMeasure_type, + IFC4X3_RC3_IfcEarthworksCut_type, + IFC4X3_RC3_IfcEarthworksCutTypeEnum_type, + IFC4X3_RC3_IfcEarthworksElement_type, + IFC4X3_RC3_IfcEarthworksFill_type, + IFC4X3_RC3_IfcEarthworksFillTypeEnum_type, + IFC4X3_RC3_IfcEdge_type, + IFC4X3_RC3_IfcEdgeCurve_type, + IFC4X3_RC3_IfcEdgeLoop_type, + IFC4X3_RC3_IfcElectricAppliance_type, + IFC4X3_RC3_IfcElectricApplianceType_type, + IFC4X3_RC3_IfcElectricApplianceTypeEnum_type, + IFC4X3_RC3_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC3_IfcElectricChargeMeasure_type, + IFC4X3_RC3_IfcElectricConductanceMeasure_type, + IFC4X3_RC3_IfcElectricCurrentMeasure_type, + IFC4X3_RC3_IfcElectricDistributionBoard_type, + IFC4X3_RC3_IfcElectricDistributionBoardType_type, + IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type, + IFC4X3_RC3_IfcElectricFlowStorageDevice_type, + IFC4X3_RC3_IfcElectricFlowStorageDeviceType_type, + IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X3_RC3_IfcElectricFlowTreatmentDevice_type, + IFC4X3_RC3_IfcElectricFlowTreatmentDeviceType_type, + IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type, + IFC4X3_RC3_IfcElectricGenerator_type, + IFC4X3_RC3_IfcElectricGeneratorType_type, + IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type, + IFC4X3_RC3_IfcElectricMotor_type, + IFC4X3_RC3_IfcElectricMotorType_type, + IFC4X3_RC3_IfcElectricMotorTypeEnum_type, + IFC4X3_RC3_IfcElectricResistanceMeasure_type, + IFC4X3_RC3_IfcElectricTimeControl_type, + IFC4X3_RC3_IfcElectricTimeControlType_type, + IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type, + IFC4X3_RC3_IfcElectricVoltageMeasure_type, + IFC4X3_RC3_IfcElement_type, + IFC4X3_RC3_IfcElementarySurface_type, + IFC4X3_RC3_IfcElementAssembly_type, + IFC4X3_RC3_IfcElementAssemblyType_type, + IFC4X3_RC3_IfcElementAssemblyTypeEnum_type, + IFC4X3_RC3_IfcElementComponent_type, + IFC4X3_RC3_IfcElementComponentType_type, + IFC4X3_RC3_IfcElementCompositionEnum_type, + IFC4X3_RC3_IfcElementQuantity_type, + IFC4X3_RC3_IfcElementType_type, + IFC4X3_RC3_IfcEllipse_type, + IFC4X3_RC3_IfcEllipseProfileDef_type, + IFC4X3_RC3_IfcEnergyConversionDevice_type, + IFC4X3_RC3_IfcEnergyConversionDeviceType_type, + IFC4X3_RC3_IfcEnergyMeasure_type, + IFC4X3_RC3_IfcEngine_type, + IFC4X3_RC3_IfcEngineType_type, + IFC4X3_RC3_IfcEngineTypeEnum_type, + IFC4X3_RC3_IfcEvaporativeCooler_type, + IFC4X3_RC3_IfcEvaporativeCoolerType_type, + IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type, + IFC4X3_RC3_IfcEvaporator_type, + IFC4X3_RC3_IfcEvaporatorType_type, + IFC4X3_RC3_IfcEvaporatorTypeEnum_type, + IFC4X3_RC3_IfcEvent_type, + IFC4X3_RC3_IfcEventTime_type, + IFC4X3_RC3_IfcEventTriggerTypeEnum_type, + IFC4X3_RC3_IfcEventType_type, + IFC4X3_RC3_IfcEventTypeEnum_type, + IFC4X3_RC3_IfcExtendedProperties_type, + IFC4X3_RC3_IfcExternalInformation_type, + IFC4X3_RC3_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC3_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC3_IfcExternallyDefinedTextFont_type, + IFC4X3_RC3_IfcExternalReference_type, + IFC4X3_RC3_IfcExternalReferenceRelationship_type, + IFC4X3_RC3_IfcExternalSpatialElement_type, + IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type, + IFC4X3_RC3_IfcExternalSpatialStructureElement_type, + IFC4X3_RC3_IfcExtrudedAreaSolid_type, + IFC4X3_RC3_IfcExtrudedAreaSolidTapered_type, + IFC4X3_RC3_IfcFace_type, + IFC4X3_RC3_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC3_IfcFaceBound_type, + IFC4X3_RC3_IfcFaceOuterBound_type, + IFC4X3_RC3_IfcFaceSurface_type, + IFC4X3_RC3_IfcFacetedBrep_type, + IFC4X3_RC3_IfcFacetedBrepWithVoids_type, + IFC4X3_RC3_IfcFacility_type, + IFC4X3_RC3_IfcFacilityPart_type, + IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC3_IfcFacilityPartTypeSelect_type, + IFC4X3_RC3_IfcFacilityUsageEnum_type, + IFC4X3_RC3_IfcFailureConnectionCondition_type, + IFC4X3_RC3_IfcFan_type, + IFC4X3_RC3_IfcFanType_type, + IFC4X3_RC3_IfcFanTypeEnum_type, + IFC4X3_RC3_IfcFastener_type, + IFC4X3_RC3_IfcFastenerType_type, + IFC4X3_RC3_IfcFastenerTypeEnum_type, + IFC4X3_RC3_IfcFeatureElement_type, + IFC4X3_RC3_IfcFeatureElementAddition_type, + IFC4X3_RC3_IfcFeatureElementSubtraction_type, + IFC4X3_RC3_IfcFillAreaStyle_type, + IFC4X3_RC3_IfcFillAreaStyleHatching_type, + IFC4X3_RC3_IfcFillAreaStyleTiles_type, + IFC4X3_RC3_IfcFillStyleSelect_type, + IFC4X3_RC3_IfcFilter_type, + IFC4X3_RC3_IfcFilterType_type, + IFC4X3_RC3_IfcFilterTypeEnum_type, + IFC4X3_RC3_IfcFireSuppressionTerminal_type, + IFC4X3_RC3_IfcFireSuppressionTerminalType_type, + IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X3_RC3_IfcFixedReferenceSweptAreaSolid_type, + IFC4X3_RC3_IfcFlowController_type, + IFC4X3_RC3_IfcFlowControllerType_type, + IFC4X3_RC3_IfcFlowDirectionEnum_type, + IFC4X3_RC3_IfcFlowFitting_type, + IFC4X3_RC3_IfcFlowFittingType_type, + IFC4X3_RC3_IfcFlowInstrument_type, + IFC4X3_RC3_IfcFlowInstrumentType_type, + IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type, + IFC4X3_RC3_IfcFlowMeter_type, + IFC4X3_RC3_IfcFlowMeterType_type, + IFC4X3_RC3_IfcFlowMeterTypeEnum_type, + IFC4X3_RC3_IfcFlowMovingDevice_type, + IFC4X3_RC3_IfcFlowMovingDeviceType_type, + IFC4X3_RC3_IfcFlowSegment_type, + IFC4X3_RC3_IfcFlowSegmentType_type, + IFC4X3_RC3_IfcFlowStorageDevice_type, + IFC4X3_RC3_IfcFlowStorageDeviceType_type, + IFC4X3_RC3_IfcFlowTerminal_type, + IFC4X3_RC3_IfcFlowTerminalType_type, + IFC4X3_RC3_IfcFlowTreatmentDevice_type, + IFC4X3_RC3_IfcFlowTreatmentDeviceType_type, + IFC4X3_RC3_IfcFontStyle_type, + IFC4X3_RC3_IfcFontVariant_type, + IFC4X3_RC3_IfcFontWeight_type, + IFC4X3_RC3_IfcFooting_type, + IFC4X3_RC3_IfcFootingType_type, + IFC4X3_RC3_IfcFootingTypeEnum_type, + IFC4X3_RC3_IfcForceMeasure_type, + IFC4X3_RC3_IfcFrequencyMeasure_type, + IFC4X3_RC3_IfcFurnishingElement_type, + IFC4X3_RC3_IfcFurnishingElementType_type, + IFC4X3_RC3_IfcFurniture_type, + IFC4X3_RC3_IfcFurnitureType_type, + IFC4X3_RC3_IfcFurnitureTypeEnum_type, + IFC4X3_RC3_IfcGeographicElement_type, + IFC4X3_RC3_IfcGeographicElementType_type, + IFC4X3_RC3_IfcGeographicElementTypeEnum_type, + IFC4X3_RC3_IfcGeometricCurveSet_type, + IFC4X3_RC3_IfcGeometricProjectionEnum_type, + IFC4X3_RC3_IfcGeometricRepresentationContext_type, + IFC4X3_RC3_IfcGeometricRepresentationItem_type, + IFC4X3_RC3_IfcGeometricRepresentationSubContext_type, + IFC4X3_RC3_IfcGeometricSet_type, + IFC4X3_RC3_IfcGeometricSetSelect_type, + IFC4X3_RC3_IfcGeomodel_type, + IFC4X3_RC3_IfcGeoslice_type, + IFC4X3_RC3_IfcGeotechnicalAssembly_type, + IFC4X3_RC3_IfcGeotechnicalElement_type, + IFC4X3_RC3_IfcGeotechnicalStratum_type, + IFC4X3_RC3_IfcGloballyUniqueId_type, + IFC4X3_RC3_IfcGlobalOrLocalEnum_type, + IFC4X3_RC3_IfcGradientCurve_type, + IFC4X3_RC3_IfcGrid_type, + IFC4X3_RC3_IfcGridAxis_type, + IFC4X3_RC3_IfcGridPlacement_type, + IFC4X3_RC3_IfcGridPlacementDirectionSelect_type, + IFC4X3_RC3_IfcGridTypeEnum_type, + IFC4X3_RC3_IfcGroup_type, + IFC4X3_RC3_IfcHalfSpaceSolid_type, + IFC4X3_RC3_IfcHatchLineDistanceSelect_type, + IFC4X3_RC3_IfcHeatExchanger_type, + IFC4X3_RC3_IfcHeatExchangerType_type, + IFC4X3_RC3_IfcHeatExchangerTypeEnum_type, + IFC4X3_RC3_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC3_IfcHeatingValueMeasure_type, + IFC4X3_RC3_IfcHumidifier_type, + IFC4X3_RC3_IfcHumidifierType_type, + IFC4X3_RC3_IfcHumidifierTypeEnum_type, + IFC4X3_RC3_IfcIdentifier_type, + IFC4X3_RC3_IfcIlluminanceMeasure_type, + IFC4X3_RC3_IfcImageTexture_type, + IFC4X3_RC3_IfcImpactProtectionDevice_type, + IFC4X3_RC3_IfcImpactProtectionDeviceType_type, + IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC3_IfcImpactProtectionDeviceTypeSelect_type, + IFC4X3_RC3_IfcInclinedReferenceSweptAreaSolid_type, + IFC4X3_RC3_IfcIndexedColourMap_type, + IFC4X3_RC3_IfcIndexedPolyCurve_type, + IFC4X3_RC3_IfcIndexedPolygonalFace_type, + IFC4X3_RC3_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X3_RC3_IfcIndexedTextureMap_type, + IFC4X3_RC3_IfcIndexedTriangleTextureMap_type, + IFC4X3_RC3_IfcInductanceMeasure_type, + IFC4X3_RC3_IfcInteger_type, + IFC4X3_RC3_IfcIntegerCountRateMeasure_type, + IFC4X3_RC3_IfcInterceptor_type, + IFC4X3_RC3_IfcInterceptorType_type, + IFC4X3_RC3_IfcInterceptorTypeEnum_type, + IFC4X3_RC3_IfcInterferenceSelect_type, + IFC4X3_RC3_IfcInternalOrExternalEnum_type, + IFC4X3_RC3_IfcIntersectionCurve_type, + IFC4X3_RC3_IfcInventory_type, + IFC4X3_RC3_IfcInventoryTypeEnum_type, + IFC4X3_RC3_IfcIonConcentrationMeasure_type, + IFC4X3_RC3_IfcIrregularTimeSeries_type, + IFC4X3_RC3_IfcIrregularTimeSeriesValue_type, + IFC4X3_RC3_IfcIShapeProfileDef_type, + IFC4X3_RC3_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC3_IfcJunctionBox_type, + IFC4X3_RC3_IfcJunctionBoxType_type, + IFC4X3_RC3_IfcJunctionBoxTypeEnum_type, + IFC4X3_RC3_IfcKerb_type, + IFC4X3_RC3_IfcKerbType_type, + IFC4X3_RC3_IfcKinematicViscosityMeasure_type, + IFC4X3_RC3_IfcKnotType_type, + IFC4X3_RC3_IfcLabel_type, + IFC4X3_RC3_IfcLaborResource_type, + IFC4X3_RC3_IfcLaborResourceType_type, + IFC4X3_RC3_IfcLaborResourceTypeEnum_type, + IFC4X3_RC3_IfcLagTime_type, + IFC4X3_RC3_IfcLamp_type, + IFC4X3_RC3_IfcLampType_type, + IFC4X3_RC3_IfcLampTypeEnum_type, + IFC4X3_RC3_IfcLanguageId_type, + IFC4X3_RC3_IfcLayeredItem_type, + IFC4X3_RC3_IfcLayerSetDirectionEnum_type, + IFC4X3_RC3_IfcLengthMeasure_type, + IFC4X3_RC3_IfcLibraryInformation_type, + IFC4X3_RC3_IfcLibraryReference_type, + IFC4X3_RC3_IfcLibrarySelect_type, + IFC4X3_RC3_IfcLightDistributionCurveEnum_type, + IFC4X3_RC3_IfcLightDistributionData_type, + IFC4X3_RC3_IfcLightDistributionDataSourceSelect_type, + IFC4X3_RC3_IfcLightEmissionSourceEnum_type, + IFC4X3_RC3_IfcLightFixture_type, + IFC4X3_RC3_IfcLightFixtureType_type, + IFC4X3_RC3_IfcLightFixtureTypeEnum_type, + IFC4X3_RC3_IfcLightIntensityDistribution_type, + IFC4X3_RC3_IfcLightSource_type, + IFC4X3_RC3_IfcLightSourceAmbient_type, + IFC4X3_RC3_IfcLightSourceDirectional_type, + IFC4X3_RC3_IfcLightSourceGoniometric_type, + IFC4X3_RC3_IfcLightSourcePositional_type, + IFC4X3_RC3_IfcLightSourceSpot_type, + IFC4X3_RC3_IfcLine_type, + IFC4X3_RC3_IfcLinearElement_type, + IFC4X3_RC3_IfcLinearForceMeasure_type, + IFC4X3_RC3_IfcLinearMomentMeasure_type, + IFC4X3_RC3_IfcLinearPlacement_type, + IFC4X3_RC3_IfcLinearPositioningElement_type, + IFC4X3_RC3_IfcLinearStiffnessMeasure_type, + IFC4X3_RC3_IfcLinearVelocityMeasure_type, + IFC4X3_RC3_IfcLineIndex_type, + IFC4X3_RC3_IfcLiquidTerminal_type, + IFC4X3_RC3_IfcLiquidTerminalType_type, + IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type, + IFC4X3_RC3_IfcLoadGroupTypeEnum_type, + IFC4X3_RC3_IfcLocalPlacement_type, + IFC4X3_RC3_IfcLogical_type, + IFC4X3_RC3_IfcLogicalOperatorEnum_type, + IFC4X3_RC3_IfcLoop_type, + IFC4X3_RC3_IfcLShapeProfileDef_type, + IFC4X3_RC3_IfcLuminousFluxMeasure_type, + IFC4X3_RC3_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC3_IfcLuminousIntensityMeasure_type, + IFC4X3_RC3_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC3_IfcMagneticFluxMeasure_type, + IFC4X3_RC3_IfcManifoldSolidBrep_type, + IFC4X3_RC3_IfcMapConversion_type, + IFC4X3_RC3_IfcMappedItem_type, + IFC4X3_RC3_IfcMarineFacility_type, + IFC4X3_RC3_IfcMarineFacilityTypeEnum_type, + IFC4X3_RC3_IfcMarinePartTypeEnum_type, + IFC4X3_RC3_IfcMassDensityMeasure_type, + IFC4X3_RC3_IfcMassFlowRateMeasure_type, + IFC4X3_RC3_IfcMassMeasure_type, + IFC4X3_RC3_IfcMassPerLengthMeasure_type, + IFC4X3_RC3_IfcMaterial_type, + IFC4X3_RC3_IfcMaterialClassificationRelationship_type, + IFC4X3_RC3_IfcMaterialConstituent_type, + IFC4X3_RC3_IfcMaterialConstituentSet_type, + IFC4X3_RC3_IfcMaterialDefinition_type, + IFC4X3_RC3_IfcMaterialDefinitionRepresentation_type, + IFC4X3_RC3_IfcMaterialLayer_type, + IFC4X3_RC3_IfcMaterialLayerSet_type, + IFC4X3_RC3_IfcMaterialLayerSetUsage_type, + IFC4X3_RC3_IfcMaterialLayerWithOffsets_type, + IFC4X3_RC3_IfcMaterialList_type, + IFC4X3_RC3_IfcMaterialProfile_type, + IFC4X3_RC3_IfcMaterialProfileSet_type, + IFC4X3_RC3_IfcMaterialProfileSetUsage_type, + IFC4X3_RC3_IfcMaterialProfileSetUsageTapering_type, + IFC4X3_RC3_IfcMaterialProfileWithOffsets_type, + IFC4X3_RC3_IfcMaterialProperties_type, + IFC4X3_RC3_IfcMaterialRelationship_type, + IFC4X3_RC3_IfcMaterialSelect_type, + IFC4X3_RC3_IfcMaterialUsageDefinition_type, + IFC4X3_RC3_IfcMeasureValue_type, + IFC4X3_RC3_IfcMeasureWithUnit_type, + IFC4X3_RC3_IfcMechanicalFastener_type, + IFC4X3_RC3_IfcMechanicalFastenerType_type, + IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type, + IFC4X3_RC3_IfcMedicalDevice_type, + IFC4X3_RC3_IfcMedicalDeviceType_type, + IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type, + IFC4X3_RC3_IfcMember_type, + IFC4X3_RC3_IfcMemberStandardCase_type, + IFC4X3_RC3_IfcMemberType_type, + IFC4X3_RC3_IfcMemberTypeEnum_type, + IFC4X3_RC3_IfcMetric_type, + IFC4X3_RC3_IfcMetricValueSelect_type, + IFC4X3_RC3_IfcMirroredProfileDef_type, + IFC4X3_RC3_IfcMobileTelecommunicationsAppliance_type, + IFC4X3_RC3_IfcMobileTelecommunicationsApplianceType_type, + IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type, + IFC4X3_RC3_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC3_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC3_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X3_RC3_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC3_IfcModulusOfSubgradeReactionSelect_type, + IFC4X3_RC3_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X3_RC3_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC3_IfcMolecularWeightMeasure_type, + IFC4X3_RC3_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC3_IfcMonetaryMeasure_type, + IFC4X3_RC3_IfcMonetaryUnit_type, + IFC4X3_RC3_IfcMonthInYearNumber_type, + IFC4X3_RC3_IfcMooringDevice_type, + IFC4X3_RC3_IfcMooringDeviceType_type, + IFC4X3_RC3_IfcMooringDeviceTypeEnum_type, + IFC4X3_RC3_IfcMotorConnection_type, + IFC4X3_RC3_IfcMotorConnectionType_type, + IFC4X3_RC3_IfcMotorConnectionTypeEnum_type, + IFC4X3_RC3_IfcNamedUnit_type, + IFC4X3_RC3_IfcNavigationElement_type, + IFC4X3_RC3_IfcNavigationElementType_type, + IFC4X3_RC3_IfcNavigationElementTypeEnum_type, + IFC4X3_RC3_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC3_IfcNormalisedRatioMeasure_type, + IFC4X3_RC3_IfcNumericMeasure_type, + IFC4X3_RC3_IfcObject_type, + IFC4X3_RC3_IfcObjectDefinition_type, + IFC4X3_RC3_IfcObjective_type, + IFC4X3_RC3_IfcObjectiveEnum_type, + IFC4X3_RC3_IfcObjectPlacement_type, + IFC4X3_RC3_IfcObjectReferenceSelect_type, + IFC4X3_RC3_IfcObjectTypeEnum_type, + IFC4X3_RC3_IfcOccupant_type, + IFC4X3_RC3_IfcOccupantTypeEnum_type, + IFC4X3_RC3_IfcOffsetCurve_type, + IFC4X3_RC3_IfcOffsetCurve2D_type, + IFC4X3_RC3_IfcOffsetCurve3D_type, + IFC4X3_RC3_IfcOffsetCurveByDistances_type, + IFC4X3_RC3_IfcOpenCrossProfileDef_type, + IFC4X3_RC3_IfcOpeningElement_type, + IFC4X3_RC3_IfcOpeningElementTypeEnum_type, + IFC4X3_RC3_IfcOpeningStandardCase_type, + IFC4X3_RC3_IfcOpenShell_type, + IFC4X3_RC3_IfcOrganization_type, + IFC4X3_RC3_IfcOrganizationRelationship_type, + IFC4X3_RC3_IfcOrientedEdge_type, + IFC4X3_RC3_IfcOuterBoundaryCurve_type, + IFC4X3_RC3_IfcOutlet_type, + IFC4X3_RC3_IfcOutletType_type, + IFC4X3_RC3_IfcOutletTypeEnum_type, + IFC4X3_RC3_IfcOwnerHistory_type, + IFC4X3_RC3_IfcParameterizedProfileDef_type, + IFC4X3_RC3_IfcParameterValue_type, + IFC4X3_RC3_IfcPath_type, + IFC4X3_RC3_IfcPavement_type, + IFC4X3_RC3_IfcPavementType_type, + IFC4X3_RC3_IfcPavementTypeEnum_type, + IFC4X3_RC3_IfcPcurve_type, + IFC4X3_RC3_IfcPerformanceHistory_type, + IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type, + IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type, + IFC4X3_RC3_IfcPermeableCoveringProperties_type, + IFC4X3_RC3_IfcPermit_type, + IFC4X3_RC3_IfcPermitTypeEnum_type, + IFC4X3_RC3_IfcPerson_type, + IFC4X3_RC3_IfcPersonAndOrganization_type, + IFC4X3_RC3_IfcPHMeasure_type, + IFC4X3_RC3_IfcPhysicalComplexQuantity_type, + IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type, + IFC4X3_RC3_IfcPhysicalQuantity_type, + IFC4X3_RC3_IfcPhysicalSimpleQuantity_type, + IFC4X3_RC3_IfcPile_type, + IFC4X3_RC3_IfcPileConstructionEnum_type, + IFC4X3_RC3_IfcPileType_type, + IFC4X3_RC3_IfcPileTypeEnum_type, + IFC4X3_RC3_IfcPipeFitting_type, + IFC4X3_RC3_IfcPipeFittingType_type, + IFC4X3_RC3_IfcPipeFittingTypeEnum_type, + IFC4X3_RC3_IfcPipeSegment_type, + IFC4X3_RC3_IfcPipeSegmentType_type, + IFC4X3_RC3_IfcPipeSegmentTypeEnum_type, + IFC4X3_RC3_IfcPixelTexture_type, + IFC4X3_RC3_IfcPlacement_type, + IFC4X3_RC3_IfcPlanarBox_type, + IFC4X3_RC3_IfcPlanarExtent_type, + IFC4X3_RC3_IfcPlanarForceMeasure_type, + IFC4X3_RC3_IfcPlane_type, + IFC4X3_RC3_IfcPlaneAngleMeasure_type, + IFC4X3_RC3_IfcPlant_type, + IFC4X3_RC3_IfcPlate_type, + IFC4X3_RC3_IfcPlateStandardCase_type, + IFC4X3_RC3_IfcPlateType_type, + IFC4X3_RC3_IfcPlateTypeEnum_type, + IFC4X3_RC3_IfcPoint_type, + IFC4X3_RC3_IfcPointByDistanceExpression_type, + IFC4X3_RC3_IfcPointOnCurve_type, + IFC4X3_RC3_IfcPointOnSurface_type, + IFC4X3_RC3_IfcPointOrVertexPoint_type, + IFC4X3_RC3_IfcPolygonalBoundedHalfSpace_type, + IFC4X3_RC3_IfcPolygonalFaceSet_type, + IFC4X3_RC3_IfcPolyline_type, + IFC4X3_RC3_IfcPolyLoop_type, + IFC4X3_RC3_IfcPolynomialCurve_type, + IFC4X3_RC3_IfcPort_type, + IFC4X3_RC3_IfcPositioningElement_type, + IFC4X3_RC3_IfcPositiveInteger_type, + IFC4X3_RC3_IfcPositiveLengthMeasure_type, + IFC4X3_RC3_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC3_IfcPositiveRatioMeasure_type, + IFC4X3_RC3_IfcPostalAddress_type, + IFC4X3_RC3_IfcPowerMeasure_type, + IFC4X3_RC3_IfcPreDefinedColour_type, + IFC4X3_RC3_IfcPreDefinedCurveFont_type, + IFC4X3_RC3_IfcPreDefinedItem_type, + IFC4X3_RC3_IfcPreDefinedProperties_type, + IFC4X3_RC3_IfcPreDefinedPropertySet_type, + IFC4X3_RC3_IfcPreDefinedTextFont_type, + IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X3_RC3_IfcPresentableText_type, + IFC4X3_RC3_IfcPresentationItem_type, + IFC4X3_RC3_IfcPresentationLayerAssignment_type, + IFC4X3_RC3_IfcPresentationLayerWithStyle_type, + IFC4X3_RC3_IfcPresentationStyle_type, + IFC4X3_RC3_IfcPressureMeasure_type, + IFC4X3_RC3_IfcProcedure_type, + IFC4X3_RC3_IfcProcedureType_type, + IFC4X3_RC3_IfcProcedureTypeEnum_type, + IFC4X3_RC3_IfcProcess_type, + IFC4X3_RC3_IfcProcessSelect_type, + IFC4X3_RC3_IfcProduct_type, + IFC4X3_RC3_IfcProductDefinitionShape_type, + IFC4X3_RC3_IfcProductRepresentation_type, + IFC4X3_RC3_IfcProductRepresentationSelect_type, + IFC4X3_RC3_IfcProductSelect_type, + IFC4X3_RC3_IfcProfileDef_type, + IFC4X3_RC3_IfcProfileProperties_type, + IFC4X3_RC3_IfcProfileTypeEnum_type, + IFC4X3_RC3_IfcProject_type, + IFC4X3_RC3_IfcProjectedCRS_type, + IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type, + IFC4X3_RC3_IfcProjectionElement_type, + IFC4X3_RC3_IfcProjectionElementTypeEnum_type, + IFC4X3_RC3_IfcProjectLibrary_type, + IFC4X3_RC3_IfcProjectOrder_type, + IFC4X3_RC3_IfcProjectOrderTypeEnum_type, + IFC4X3_RC3_IfcProperty_type, + IFC4X3_RC3_IfcPropertyAbstraction_type, + IFC4X3_RC3_IfcPropertyBoundedValue_type, + IFC4X3_RC3_IfcPropertyDefinition_type, + IFC4X3_RC3_IfcPropertyDependencyRelationship_type, + IFC4X3_RC3_IfcPropertyEnumeratedValue_type, + IFC4X3_RC3_IfcPropertyEnumeration_type, + IFC4X3_RC3_IfcPropertyListValue_type, + IFC4X3_RC3_IfcPropertyReferenceValue_type, + IFC4X3_RC3_IfcPropertySet_type, + IFC4X3_RC3_IfcPropertySetDefinition_type, + IFC4X3_RC3_IfcPropertySetDefinitionSelect_type, + IFC4X3_RC3_IfcPropertySetDefinitionSet_type, + IFC4X3_RC3_IfcPropertySetTemplate_type, + IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type, + IFC4X3_RC3_IfcPropertySingleValue_type, + IFC4X3_RC3_IfcPropertyTableValue_type, + IFC4X3_RC3_IfcPropertyTemplate_type, + IFC4X3_RC3_IfcPropertyTemplateDefinition_type, + IFC4X3_RC3_IfcProtectiveDevice_type, + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnit_type, + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X3_RC3_IfcProtectiveDeviceType_type, + IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type, + IFC4X3_RC3_IfcProxy_type, + IFC4X3_RC3_IfcPump_type, + IFC4X3_RC3_IfcPumpType_type, + IFC4X3_RC3_IfcPumpTypeEnum_type, + IFC4X3_RC3_IfcQuantityArea_type, + IFC4X3_RC3_IfcQuantityCount_type, + IFC4X3_RC3_IfcQuantityLength_type, + IFC4X3_RC3_IfcQuantitySet_type, + IFC4X3_RC3_IfcQuantityTime_type, + IFC4X3_RC3_IfcQuantityVolume_type, + IFC4X3_RC3_IfcQuantityWeight_type, + IFC4X3_RC3_IfcRadioActivityMeasure_type, + IFC4X3_RC3_IfcRail_type, + IFC4X3_RC3_IfcRailing_type, + IFC4X3_RC3_IfcRailingType_type, + IFC4X3_RC3_IfcRailingTypeEnum_type, + IFC4X3_RC3_IfcRailType_type, + IFC4X3_RC3_IfcRailTypeEnum_type, + IFC4X3_RC3_IfcRailway_type, + IFC4X3_RC3_IfcRailwayPartTypeEnum_type, + IFC4X3_RC3_IfcRailwayTypeEnum_type, + IFC4X3_RC3_IfcRamp_type, + IFC4X3_RC3_IfcRampFlight_type, + IFC4X3_RC3_IfcRampFlightType_type, + IFC4X3_RC3_IfcRampFlightTypeEnum_type, + IFC4X3_RC3_IfcRampType_type, + IFC4X3_RC3_IfcRampTypeEnum_type, + IFC4X3_RC3_IfcRatioMeasure_type, + IFC4X3_RC3_IfcRationalBSplineCurveWithKnots_type, + IFC4X3_RC3_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X3_RC3_IfcReal_type, + IFC4X3_RC3_IfcRectangleHollowProfileDef_type, + IFC4X3_RC3_IfcRectangleProfileDef_type, + IFC4X3_RC3_IfcRectangularPyramid_type, + IFC4X3_RC3_IfcRectangularTrimmedSurface_type, + IFC4X3_RC3_IfcRecurrencePattern_type, + IFC4X3_RC3_IfcRecurrenceTypeEnum_type, + IFC4X3_RC3_IfcReference_type, + IFC4X3_RC3_IfcReferent_type, + IFC4X3_RC3_IfcReferentTypeEnum_type, + IFC4X3_RC3_IfcReflectanceMethodEnum_type, + IFC4X3_RC3_IfcRegularTimeSeries_type, + IFC4X3_RC3_IfcReinforcedSoil_type, + IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type, + IFC4X3_RC3_IfcReinforcementBarProperties_type, + IFC4X3_RC3_IfcReinforcementDefinitionProperties_type, + IFC4X3_RC3_IfcReinforcingBar_type, + IFC4X3_RC3_IfcReinforcingBarRoleEnum_type, + IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type, + IFC4X3_RC3_IfcReinforcingBarType_type, + IFC4X3_RC3_IfcReinforcingBarTypeEnum_type, + IFC4X3_RC3_IfcReinforcingElement_type, + IFC4X3_RC3_IfcReinforcingElementType_type, + IFC4X3_RC3_IfcReinforcingMesh_type, + IFC4X3_RC3_IfcReinforcingMeshType_type, + IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type, + IFC4X3_RC3_IfcRelAggregates_type, + IFC4X3_RC3_IfcRelAssigns_type, + IFC4X3_RC3_IfcRelAssignsToActor_type, + IFC4X3_RC3_IfcRelAssignsToControl_type, + IFC4X3_RC3_IfcRelAssignsToGroup_type, + IFC4X3_RC3_IfcRelAssignsToGroupByFactor_type, + IFC4X3_RC3_IfcRelAssignsToProcess_type, + IFC4X3_RC3_IfcRelAssignsToProduct_type, + IFC4X3_RC3_IfcRelAssignsToResource_type, + IFC4X3_RC3_IfcRelAssociates_type, + IFC4X3_RC3_IfcRelAssociatesApproval_type, + IFC4X3_RC3_IfcRelAssociatesClassification_type, + IFC4X3_RC3_IfcRelAssociatesConstraint_type, + IFC4X3_RC3_IfcRelAssociatesDocument_type, + IFC4X3_RC3_IfcRelAssociatesLibrary_type, + IFC4X3_RC3_IfcRelAssociatesMaterial_type, + IFC4X3_RC3_IfcRelAssociatesProfileDef_type, + IFC4X3_RC3_IfcRelationship_type, + IFC4X3_RC3_IfcRelConnects_type, + IFC4X3_RC3_IfcRelConnectsElements_type, + IFC4X3_RC3_IfcRelConnectsPathElements_type, + IFC4X3_RC3_IfcRelConnectsPorts_type, + IFC4X3_RC3_IfcRelConnectsPortToElement_type, + IFC4X3_RC3_IfcRelConnectsStructuralActivity_type, + IFC4X3_RC3_IfcRelConnectsStructuralMember_type, + IFC4X3_RC3_IfcRelConnectsWithEccentricity_type, + IFC4X3_RC3_IfcRelConnectsWithRealizingElements_type, + IFC4X3_RC3_IfcRelContainedInSpatialStructure_type, + IFC4X3_RC3_IfcRelCoversBldgElements_type, + IFC4X3_RC3_IfcRelCoversSpaces_type, + IFC4X3_RC3_IfcRelDeclares_type, + IFC4X3_RC3_IfcRelDecomposes_type, + IFC4X3_RC3_IfcRelDefines_type, + IFC4X3_RC3_IfcRelDefinesByObject_type, + IFC4X3_RC3_IfcRelDefinesByProperties_type, + IFC4X3_RC3_IfcRelDefinesByTemplate_type, + IFC4X3_RC3_IfcRelDefinesByType_type, + IFC4X3_RC3_IfcRelFillsElement_type, + IFC4X3_RC3_IfcRelFlowControlElements_type, + IFC4X3_RC3_IfcRelInterferesElements_type, + IFC4X3_RC3_IfcRelNests_type, + IFC4X3_RC3_IfcRelPositions_type, + IFC4X3_RC3_IfcRelProjectsElement_type, + IFC4X3_RC3_IfcRelReferencedInSpatialStructure_type, + IFC4X3_RC3_IfcRelSequence_type, + IFC4X3_RC3_IfcRelServicesBuildings_type, + IFC4X3_RC3_IfcRelSpaceBoundary_type, + IFC4X3_RC3_IfcRelSpaceBoundary1stLevel_type, + IFC4X3_RC3_IfcRelSpaceBoundary2ndLevel_type, + IFC4X3_RC3_IfcRelVoidsElement_type, + IFC4X3_RC3_IfcReparametrisedCompositeCurveSegment_type, + IFC4X3_RC3_IfcRepresentation_type, + IFC4X3_RC3_IfcRepresentationContext_type, + IFC4X3_RC3_IfcRepresentationItem_type, + IFC4X3_RC3_IfcRepresentationMap_type, + IFC4X3_RC3_IfcResource_type, + IFC4X3_RC3_IfcResourceApprovalRelationship_type, + IFC4X3_RC3_IfcResourceConstraintRelationship_type, + IFC4X3_RC3_IfcResourceLevelRelationship_type, + IFC4X3_RC3_IfcResourceObjectSelect_type, + IFC4X3_RC3_IfcResourceSelect_type, + IFC4X3_RC3_IfcResourceTime_type, + IFC4X3_RC3_IfcRevolvedAreaSolid_type, + IFC4X3_RC3_IfcRevolvedAreaSolidTapered_type, + IFC4X3_RC3_IfcRightCircularCone_type, + IFC4X3_RC3_IfcRightCircularCylinder_type, + IFC4X3_RC3_IfcRoad_type, + IFC4X3_RC3_IfcRoadPartTypeEnum_type, + IFC4X3_RC3_IfcRoadTypeEnum_type, + IFC4X3_RC3_IfcRoleEnum_type, + IFC4X3_RC3_IfcRoof_type, + IFC4X3_RC3_IfcRoofType_type, + IFC4X3_RC3_IfcRoofTypeEnum_type, + IFC4X3_RC3_IfcRoot_type, + IFC4X3_RC3_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC3_IfcRotationalMassMeasure_type, + IFC4X3_RC3_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC3_IfcRotationalStiffnessSelect_type, + IFC4X3_RC3_IfcRoundedRectangleProfileDef_type, + IFC4X3_RC3_IfcSanitaryTerminal_type, + IFC4X3_RC3_IfcSanitaryTerminalType_type, + IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type, + IFC4X3_RC3_IfcSchedulingTime_type, + IFC4X3_RC3_IfcSeamCurve_type, + IFC4X3_RC3_IfcSecondOrderPolynomialSpiral_type, + IFC4X3_RC3_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC3_IfcSectionedSolid_type, + IFC4X3_RC3_IfcSectionedSolidHorizontal_type, + IFC4X3_RC3_IfcSectionedSpine_type, + IFC4X3_RC3_IfcSectionedSurface_type, + IFC4X3_RC3_IfcSectionModulusMeasure_type, + IFC4X3_RC3_IfcSectionProperties_type, + IFC4X3_RC3_IfcSectionReinforcementProperties_type, + IFC4X3_RC3_IfcSectionTypeEnum_type, + IFC4X3_RC3_IfcSegment_type, + IFC4X3_RC3_IfcSegmentedReferenceCurve_type, + IFC4X3_RC3_IfcSegmentIndexSelect_type, + IFC4X3_RC3_IfcSensor_type, + IFC4X3_RC3_IfcSensorType_type, + IFC4X3_RC3_IfcSensorTypeEnum_type, + IFC4X3_RC3_IfcSequenceEnum_type, + IFC4X3_RC3_IfcShadingDevice_type, + IFC4X3_RC3_IfcShadingDeviceType_type, + IFC4X3_RC3_IfcShadingDeviceTypeEnum_type, + IFC4X3_RC3_IfcShapeAspect_type, + IFC4X3_RC3_IfcShapeModel_type, + IFC4X3_RC3_IfcShapeRepresentation_type, + IFC4X3_RC3_IfcShearModulusMeasure_type, + IFC4X3_RC3_IfcShell_type, + IFC4X3_RC3_IfcShellBasedSurfaceModel_type, + IFC4X3_RC3_IfcSign_type, + IFC4X3_RC3_IfcSignal_type, + IFC4X3_RC3_IfcSignalType_type, + IFC4X3_RC3_IfcSignalTypeEnum_type, + IFC4X3_RC3_IfcSignType_type, + IFC4X3_RC3_IfcSignTypeEnum_type, + IFC4X3_RC3_IfcSimpleProperty_type, + IFC4X3_RC3_IfcSimplePropertyTemplate_type, + IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X3_RC3_IfcSimpleValue_type, + IFC4X3_RC3_IfcSine_type, + IFC4X3_RC3_IfcSIPrefix_type, + IFC4X3_RC3_IfcSite_type, + IFC4X3_RC3_IfcSIUnit_type, + IFC4X3_RC3_IfcSIUnitName_type, + IFC4X3_RC3_IfcSizeSelect_type, + IFC4X3_RC3_IfcSlab_type, + IFC4X3_RC3_IfcSlabElementedCase_type, + IFC4X3_RC3_IfcSlabStandardCase_type, + IFC4X3_RC3_IfcSlabType_type, + IFC4X3_RC3_IfcSlabTypeEnum_type, + IFC4X3_RC3_IfcSlippageConnectionCondition_type, + IFC4X3_RC3_IfcSolarDevice_type, + IFC4X3_RC3_IfcSolarDeviceType_type, + IFC4X3_RC3_IfcSolarDeviceTypeEnum_type, + IFC4X3_RC3_IfcSolidAngleMeasure_type, + IFC4X3_RC3_IfcSolidModel_type, + IFC4X3_RC3_IfcSolidOrShell_type, + IFC4X3_RC3_IfcSolidStratum_type, + IFC4X3_RC3_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC3_IfcSoundPowerMeasure_type, + IFC4X3_RC3_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC3_IfcSoundPressureMeasure_type, + IFC4X3_RC3_IfcSpace_type, + IFC4X3_RC3_IfcSpaceBoundarySelect_type, + IFC4X3_RC3_IfcSpaceHeater_type, + IFC4X3_RC3_IfcSpaceHeaterType_type, + IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type, + IFC4X3_RC3_IfcSpaceType_type, + IFC4X3_RC3_IfcSpaceTypeEnum_type, + IFC4X3_RC3_IfcSpatialElement_type, + IFC4X3_RC3_IfcSpatialElementType_type, + IFC4X3_RC3_IfcSpatialReferenceSelect_type, + IFC4X3_RC3_IfcSpatialStructureElement_type, + IFC4X3_RC3_IfcSpatialStructureElementType_type, + IFC4X3_RC3_IfcSpatialZone_type, + IFC4X3_RC3_IfcSpatialZoneType_type, + IFC4X3_RC3_IfcSpatialZoneTypeEnum_type, + IFC4X3_RC3_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC3_IfcSpecularExponent_type, + IFC4X3_RC3_IfcSpecularHighlightSelect_type, + IFC4X3_RC3_IfcSpecularRoughness_type, + IFC4X3_RC3_IfcSphere_type, + IFC4X3_RC3_IfcSphericalSurface_type, + IFC4X3_RC3_IfcSpiral_type, + IFC4X3_RC3_IfcStackTerminal_type, + IFC4X3_RC3_IfcStackTerminalType_type, + IFC4X3_RC3_IfcStackTerminalTypeEnum_type, + IFC4X3_RC3_IfcStair_type, + IFC4X3_RC3_IfcStairFlight_type, + IFC4X3_RC3_IfcStairFlightType_type, + IFC4X3_RC3_IfcStairFlightTypeEnum_type, + IFC4X3_RC3_IfcStairType_type, + IFC4X3_RC3_IfcStairTypeEnum_type, + IFC4X3_RC3_IfcStateEnum_type, + IFC4X3_RC3_IfcStructuralAction_type, + IFC4X3_RC3_IfcStructuralActivity_type, + IFC4X3_RC3_IfcStructuralActivityAssignmentSelect_type, + IFC4X3_RC3_IfcStructuralAnalysisModel_type, + IFC4X3_RC3_IfcStructuralConnection_type, + IFC4X3_RC3_IfcStructuralConnectionCondition_type, + IFC4X3_RC3_IfcStructuralCurveAction_type, + IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type, + IFC4X3_RC3_IfcStructuralCurveConnection_type, + IFC4X3_RC3_IfcStructuralCurveMember_type, + IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type, + IFC4X3_RC3_IfcStructuralCurveMemberVarying_type, + IFC4X3_RC3_IfcStructuralCurveReaction_type, + IFC4X3_RC3_IfcStructuralItem_type, + IFC4X3_RC3_IfcStructuralLinearAction_type, + IFC4X3_RC3_IfcStructuralLoad_type, + IFC4X3_RC3_IfcStructuralLoadCase_type, + IFC4X3_RC3_IfcStructuralLoadConfiguration_type, + IFC4X3_RC3_IfcStructuralLoadGroup_type, + IFC4X3_RC3_IfcStructuralLoadLinearForce_type, + IFC4X3_RC3_IfcStructuralLoadOrResult_type, + IFC4X3_RC3_IfcStructuralLoadPlanarForce_type, + IFC4X3_RC3_IfcStructuralLoadSingleDisplacement_type, + IFC4X3_RC3_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X3_RC3_IfcStructuralLoadSingleForce_type, + IFC4X3_RC3_IfcStructuralLoadSingleForceWarping_type, + IFC4X3_RC3_IfcStructuralLoadStatic_type, + IFC4X3_RC3_IfcStructuralLoadTemperature_type, + IFC4X3_RC3_IfcStructuralMember_type, + IFC4X3_RC3_IfcStructuralPlanarAction_type, + IFC4X3_RC3_IfcStructuralPointAction_type, + IFC4X3_RC3_IfcStructuralPointConnection_type, + IFC4X3_RC3_IfcStructuralPointReaction_type, + IFC4X3_RC3_IfcStructuralReaction_type, + IFC4X3_RC3_IfcStructuralResultGroup_type, + IFC4X3_RC3_IfcStructuralSurfaceAction_type, + IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X3_RC3_IfcStructuralSurfaceConnection_type, + IFC4X3_RC3_IfcStructuralSurfaceMember_type, + IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X3_RC3_IfcStructuralSurfaceMemberVarying_type, + IFC4X3_RC3_IfcStructuralSurfaceReaction_type, + IFC4X3_RC3_IfcStyledItem_type, + IFC4X3_RC3_IfcStyledRepresentation_type, + IFC4X3_RC3_IfcStyleModel_type, + IFC4X3_RC3_IfcSubContractResource_type, + IFC4X3_RC3_IfcSubContractResourceType_type, + IFC4X3_RC3_IfcSubContractResourceTypeEnum_type, + IFC4X3_RC3_IfcSubedge_type, + IFC4X3_RC3_IfcSurface_type, + IFC4X3_RC3_IfcSurfaceCurve_type, + IFC4X3_RC3_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X3_RC3_IfcSurfaceFeature_type, + IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type, + IFC4X3_RC3_IfcSurfaceOfLinearExtrusion_type, + IFC4X3_RC3_IfcSurfaceOfRevolution_type, + IFC4X3_RC3_IfcSurfaceOrFaceSurface_type, + IFC4X3_RC3_IfcSurfaceReinforcementArea_type, + IFC4X3_RC3_IfcSurfaceSide_type, + IFC4X3_RC3_IfcSurfaceStyle_type, + IFC4X3_RC3_IfcSurfaceStyleElementSelect_type, + IFC4X3_RC3_IfcSurfaceStyleLighting_type, + IFC4X3_RC3_IfcSurfaceStyleRefraction_type, + IFC4X3_RC3_IfcSurfaceStyleRendering_type, + IFC4X3_RC3_IfcSurfaceStyleShading_type, + IFC4X3_RC3_IfcSurfaceStyleWithTextures_type, + IFC4X3_RC3_IfcSurfaceTexture_type, + IFC4X3_RC3_IfcSweptAreaSolid_type, + IFC4X3_RC3_IfcSweptDiskSolid_type, + IFC4X3_RC3_IfcSweptDiskSolidPolygonal_type, + IFC4X3_RC3_IfcSweptSurface_type, + IFC4X3_RC3_IfcSwitchingDevice_type, + IFC4X3_RC3_IfcSwitchingDeviceType_type, + IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type, + IFC4X3_RC3_IfcSystem_type, + IFC4X3_RC3_IfcSystemFurnitureElement_type, + IFC4X3_RC3_IfcSystemFurnitureElementType_type, + IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type, + IFC4X3_RC3_IfcTable_type, + IFC4X3_RC3_IfcTableColumn_type, + IFC4X3_RC3_IfcTableRow_type, + IFC4X3_RC3_IfcTank_type, + IFC4X3_RC3_IfcTankType_type, + IFC4X3_RC3_IfcTankTypeEnum_type, + IFC4X3_RC3_IfcTask_type, + IFC4X3_RC3_IfcTaskDurationEnum_type, + IFC4X3_RC3_IfcTaskTime_type, + IFC4X3_RC3_IfcTaskTimeRecurring_type, + IFC4X3_RC3_IfcTaskType_type, + IFC4X3_RC3_IfcTaskTypeEnum_type, + IFC4X3_RC3_IfcTelecomAddress_type, + IFC4X3_RC3_IfcTemperatureGradientMeasure_type, + IFC4X3_RC3_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC3_IfcTendon_type, + IFC4X3_RC3_IfcTendonAnchor_type, + IFC4X3_RC3_IfcTendonAnchorType_type, + IFC4X3_RC3_IfcTendonAnchorTypeEnum_type, + IFC4X3_RC3_IfcTendonConduit_type, + IFC4X3_RC3_IfcTendonConduitType_type, + IFC4X3_RC3_IfcTendonConduitTypeEnum_type, + IFC4X3_RC3_IfcTendonType_type, + IFC4X3_RC3_IfcTendonTypeEnum_type, + IFC4X3_RC3_IfcTessellatedFaceSet_type, + IFC4X3_RC3_IfcTessellatedItem_type, + IFC4X3_RC3_IfcText_type, + IFC4X3_RC3_IfcTextAlignment_type, + IFC4X3_RC3_IfcTextDecoration_type, + IFC4X3_RC3_IfcTextFontName_type, + IFC4X3_RC3_IfcTextFontSelect_type, + IFC4X3_RC3_IfcTextLiteral_type, + IFC4X3_RC3_IfcTextLiteralWithExtent_type, + IFC4X3_RC3_IfcTextPath_type, + IFC4X3_RC3_IfcTextStyle_type, + IFC4X3_RC3_IfcTextStyleFontModel_type, + IFC4X3_RC3_IfcTextStyleForDefinedFont_type, + IFC4X3_RC3_IfcTextStyleTextModel_type, + IFC4X3_RC3_IfcTextTransformation_type, + IFC4X3_RC3_IfcTextureCoordinate_type, + IFC4X3_RC3_IfcTextureCoordinateGenerator_type, + IFC4X3_RC3_IfcTextureMap_type, + IFC4X3_RC3_IfcTextureVertex_type, + IFC4X3_RC3_IfcTextureVertexList_type, + IFC4X3_RC3_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC3_IfcThermalConductivityMeasure_type, + IFC4X3_RC3_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC3_IfcThermalResistanceMeasure_type, + IFC4X3_RC3_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC3_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC3_IfcThirdOrderPolynomialSpiral_type, + IFC4X3_RC3_IfcTime_type, + IFC4X3_RC3_IfcTimeMeasure_type, + IFC4X3_RC3_IfcTimeOrRatioSelect_type, + IFC4X3_RC3_IfcTimePeriod_type, + IFC4X3_RC3_IfcTimeSeries_type, + IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type, + IFC4X3_RC3_IfcTimeSeriesValue_type, + IFC4X3_RC3_IfcTimeStamp_type, + IFC4X3_RC3_IfcTopologicalRepresentationItem_type, + IFC4X3_RC3_IfcTopologyRepresentation_type, + IFC4X3_RC3_IfcToroidalSurface_type, + IFC4X3_RC3_IfcTorqueMeasure_type, + IFC4X3_RC3_IfcTrackElement_type, + IFC4X3_RC3_IfcTrackElementType_type, + IFC4X3_RC3_IfcTrackElementTypeEnum_type, + IFC4X3_RC3_IfcTransformer_type, + IFC4X3_RC3_IfcTransformerType_type, + IFC4X3_RC3_IfcTransformerTypeEnum_type, + IFC4X3_RC3_IfcTransitionCode_type, + IFC4X3_RC3_IfcTranslationalStiffnessSelect_type, + IFC4X3_RC3_IfcTransportElement_type, + IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type, + IFC4X3_RC3_IfcTransportElementType_type, + IFC4X3_RC3_IfcTransportElementTypeSelect_type, + IFC4X3_RC3_IfcTrapeziumProfileDef_type, + IFC4X3_RC3_IfcTriangulatedFaceSet_type, + IFC4X3_RC3_IfcTriangulatedIrregularNetwork_type, + IFC4X3_RC3_IfcTrimmedCurve_type, + IFC4X3_RC3_IfcTrimmingPreference_type, + IFC4X3_RC3_IfcTrimmingSelect_type, + IFC4X3_RC3_IfcTShapeProfileDef_type, + IFC4X3_RC3_IfcTubeBundle_type, + IFC4X3_RC3_IfcTubeBundleType_type, + IFC4X3_RC3_IfcTubeBundleTypeEnum_type, + IFC4X3_RC3_IfcTypeObject_type, + IFC4X3_RC3_IfcTypeProcess_type, + IFC4X3_RC3_IfcTypeProduct_type, + IFC4X3_RC3_IfcTypeResource_type, + IFC4X3_RC3_IfcUnit_type, + IFC4X3_RC3_IfcUnitaryControlElement_type, + IFC4X3_RC3_IfcUnitaryControlElementType_type, + IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type, + IFC4X3_RC3_IfcUnitaryEquipment_type, + IFC4X3_RC3_IfcUnitaryEquipmentType_type, + IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type, + IFC4X3_RC3_IfcUnitAssignment_type, + IFC4X3_RC3_IfcUnitEnum_type, + IFC4X3_RC3_IfcURIReference_type, + IFC4X3_RC3_IfcUShapeProfileDef_type, + IFC4X3_RC3_IfcValue_type, + IFC4X3_RC3_IfcValve_type, + IFC4X3_RC3_IfcValveType_type, + IFC4X3_RC3_IfcValveTypeEnum_type, + IFC4X3_RC3_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC3_IfcVector_type, + IFC4X3_RC3_IfcVectorOrDirection_type, + IFC4X3_RC3_IfcVertex_type, + IFC4X3_RC3_IfcVertexLoop_type, + IFC4X3_RC3_IfcVertexPoint_type, + IFC4X3_RC3_IfcVibrationDamper_type, + IFC4X3_RC3_IfcVibrationDamperType_type, + IFC4X3_RC3_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC3_IfcVibrationIsolator_type, + IFC4X3_RC3_IfcVibrationIsolatorType_type, + IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type, + IFC4X3_RC3_IfcVienneseBend_type, + IFC4X3_RC3_IfcVirtualElement_type, + IFC4X3_RC3_IfcVirtualGridIntersection_type, + IFC4X3_RC3_IfcVoidingFeature_type, + IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type, + IFC4X3_RC3_IfcVoidStratum_type, + IFC4X3_RC3_IfcVolumeMeasure_type, + IFC4X3_RC3_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC3_IfcWall_type, + IFC4X3_RC3_IfcWallElementedCase_type, + IFC4X3_RC3_IfcWallStandardCase_type, + IFC4X3_RC3_IfcWallType_type, + IFC4X3_RC3_IfcWallTypeEnum_type, + IFC4X3_RC3_IfcWarpingConstantMeasure_type, + IFC4X3_RC3_IfcWarpingMomentMeasure_type, + IFC4X3_RC3_IfcWarpingStiffnessSelect_type, + IFC4X3_RC3_IfcWasteTerminal_type, + IFC4X3_RC3_IfcWasteTerminalType_type, + IFC4X3_RC3_IfcWasteTerminalTypeEnum_type, + IFC4X3_RC3_IfcWaterStratum_type, + IFC4X3_RC3_IfcWindow_type, + IFC4X3_RC3_IfcWindowLiningProperties_type, + IFC4X3_RC3_IfcWindowPanelOperationEnum_type, + IFC4X3_RC3_IfcWindowPanelPositionEnum_type, + IFC4X3_RC3_IfcWindowPanelProperties_type, + IFC4X3_RC3_IfcWindowStandardCase_type, + IFC4X3_RC3_IfcWindowStyle_type, + IFC4X3_RC3_IfcWindowStyleConstructionEnum_type, + IFC4X3_RC3_IfcWindowStyleOperationEnum_type, + IFC4X3_RC3_IfcWindowType_type, + IFC4X3_RC3_IfcWindowTypeEnum_type, + IFC4X3_RC3_IfcWindowTypePartitioningEnum_type, + IFC4X3_RC3_IfcWorkCalendar_type, + IFC4X3_RC3_IfcWorkCalendarTypeEnum_type, + IFC4X3_RC3_IfcWorkControl_type, + IFC4X3_RC3_IfcWorkPlan_type, + IFC4X3_RC3_IfcWorkPlanTypeEnum_type, + IFC4X3_RC3_IfcWorkSchedule_type, + IFC4X3_RC3_IfcWorkScheduleTypeEnum_type, + IFC4X3_RC3_IfcWorkTime_type, + IFC4X3_RC3_IfcZone_type, + IFC4X3_RC3_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3884], declarations, new IFC4X3_RC3_instance_factory()); } diff --git a/src/ifcparse/Ifc4x3_rc3.cpp b/src/ifcparse/Ifc4x3_rc3.cpp index 3733a9ede0..d3fffffe97 100644 --- a/src/ifcparse/Ifc4x3_rc3.cpp +++ b/src/ifcparse/Ifc4x3_rc3.cpp @@ -1378,20 +1378,11 @@ Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcActionRequestTypeEnum::Value Ifc4x3_rc3::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcActionRequestTypeEnum::Value) IFC4X3_RC3_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcActionRequestTypeEnum::operator Ifc4x3_rc3::IfcActionRequestTypeEnum::Value() const { @@ -1420,40 +1411,11 @@ Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcActionSourceTypeEnum::Value Ifc4x3_rc3::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcActionSourceTypeEnum::Value) IFC4X3_RC3_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcActionSourceTypeEnum::operator Ifc4x3_rc3::IfcActionSourceTypeEnum::Value() const { @@ -1482,18 +1444,11 @@ Ifc4x3_rc3::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcActionTypeEnum::Value Ifc4x3_rc3::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4x3_rc3::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x3_rc3::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4x3_rc3::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcActionTypeEnum::Value) IFC4X3_RC3_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcActionTypeEnum::operator Ifc4x3_rc3::IfcActionTypeEnum::Value() const { @@ -1522,20 +1477,11 @@ Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcActuatorTypeEnum::Value Ifc4x3_rc3::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcActuatorTypeEnum::Value) IFC4X3_RC3_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcActuatorTypeEnum::operator Ifc4x3_rc3::IfcActuatorTypeEnum::Value() const { @@ -1564,18 +1510,11 @@ Ifc4x3_rc3::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAddressTypeEnum::Value Ifc4x3_rc3::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc3::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc3::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4x3_rc3::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x3_rc3::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAddressTypeEnum::Value) IFC4X3_RC3_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAddressTypeEnum::operator Ifc4x3_rc3::IfcAddressTypeEnum::Value() const { @@ -1604,18 +1543,11 @@ Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::Value Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::Value) IFC4X3_RC3_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::operator Ifc4x3_rc3::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1644,19 +1576,11 @@ Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAirTerminalTypeEnum::Value Ifc4x3_rc3::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAirTerminalTypeEnum::Value) IFC4X3_RC3_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAirTerminalTypeEnum::operator Ifc4x3_rc3::IfcAirTerminalTypeEnum::Value() const { @@ -1685,24 +1609,11 @@ Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(con } const char* Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X3_RC3_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x3_rc3::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1731,23 +1642,11 @@ Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "RAILWAYCROCODILE", "RAILWAYDETONATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAlarmTypeEnum::Value Ifc4x3_rc3::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "RAILWAYCROCODILE") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYCROCODILE; - if (s == "RAILWAYDETONATOR") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYDETONATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAlarmTypeEnum::Value) IFC4X3_RC3_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAlarmTypeEnum::operator Ifc4x3_rc3::IfcAlarmTypeEnum::Value() const { @@ -1776,20 +1675,11 @@ Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(con } const char* Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTCANT", "LINEARTRANSITION", "HELMERTCURVE", "BLOSSCURVE", "COSINECURVE", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::Value Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTCANT") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_CONSTANTCANT; - if (s == "LINEARTRANSITION") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_LINEARTRANSITION; - if (s == "HELMERTCURVE") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_HELMERTCURVE; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_BLOSSCURVE; - if (s == "COSINECURVE") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_COSINECURVE; - if (s == "SINECURVE") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::Value) IFC4X3_RC3_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::operator Ifc4x3_rc3::IfcAlignmentCantSegmentTypeEnum::Value() const { @@ -1818,23 +1708,11 @@ Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegment } const char* Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINE", "CIRCULARARC", "CLOTHOID", "CUBIC", "HELMERTCURVE", "BLOSSCURVE", "CUBICSPIRAL", "COSINECURVE", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::Value Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "LINE") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_LINE; - if (s == "CIRCULARARC") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CIRCULARARC; - if (s == "CLOTHOID") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CLOTHOID; - if (s == "CUBIC") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CUBIC; - if (s == "HELMERTCURVE") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_HELMERTCURVE; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_BLOSSCURVE; - if (s == "CUBICSPIRAL") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CUBICSPIRAL; - if (s == "COSINECURVE") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_COSINECURVE; - if (s == "SINECURVE") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::Value) IFC4X3_RC3_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::operator Ifc4x3_rc3::IfcAlignmentHorizontalSegmentTypeEnum::Value() const { @@ -1863,15 +1741,11 @@ Ifc4x3_rc3::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAlignmentTypeEnum::Value Ifc4x3_rc3::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAlignmentTypeEnum::Value) IFC4X3_RC3_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAlignmentTypeEnum::operator Ifc4x3_rc3::IfcAlignmentTypeEnum::Value() const { @@ -1900,17 +1774,11 @@ Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType } const char* Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTGRADIENT", "CIRCULARARC", "PARABOLICARC", "CLOTHOID" }; - return names[v]; + return IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::Value Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTGRADIENT") return ::Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT; - if (s == "CIRCULARARC") return ::Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CIRCULARARC; - if (s == "PARABOLICARC") return ::Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_PARABOLICARC; - if (s == "CLOTHOID") return ::Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CLOTHOID; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::Value) IFC4X3_RC3_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::operator Ifc4x3_rc3::IfcAlignmentVerticalSegmentTypeEnum::Value() const { @@ -1939,18 +1807,11 @@ Ifc4x3_rc3::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAnalysisModelTypeEnum::Value Ifc4x3_rc3::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x3_rc3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x3_rc3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x3_rc3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAnalysisModelTypeEnum::Value) IFC4X3_RC3_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAnalysisModelTypeEnum::operator Ifc4x3_rc3::IfcAnalysisModelTypeEnum::Value() const { @@ -1979,19 +1840,11 @@ Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::Value) IFC4X3_RC3_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::operator Ifc4x3_rc3::IfcAnalysisTheoryTypeEnum::Value() const { @@ -2020,24 +1873,11 @@ Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcAnnotationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSUMEDPOINT", "ASBUILTAREA", "ASBUILTLINE", "NON_PHYSICAL_SIGNAL", "ASSUMEDLINE", "WIDTHEVENT", "ASSUMEDAREA", "SUPERELEVATIONEVENT", "ASBUILTPOINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAnnotationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAnnotationTypeEnum::Value Ifc4x3_rc3::IfcAnnotationTypeEnum::FromString(const std::string& s) { - if (s == "ASSUMEDPOINT") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDPOINT; - if (s == "ASBUILTAREA") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTAREA; - if (s == "ASBUILTLINE") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTLINE; - if (s == "NON_PHYSICAL_SIGNAL") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_NON_PHYSICAL_SIGNAL; - if (s == "ASSUMEDLINE") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDLINE; - if (s == "WIDTHEVENT") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_WIDTHEVENT; - if (s == "ASSUMEDAREA") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDAREA; - if (s == "SUPERELEVATIONEVENT") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_SUPERELEVATIONEVENT; - if (s == "ASBUILTPOINT") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAnnotationTypeEnum::IfcAnnotationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAnnotationTypeEnum::Value) IFC4X3_RC3_IfcAnnotationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAnnotationTypeEnum::operator Ifc4x3_rc3::IfcAnnotationTypeEnum::Value() const { @@ -2066,17 +1906,11 @@ Ifc4x3_rc3::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::stri } const char* Ifc4x3_rc3::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X3_RC3_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcArithmeticOperatorEnum::Value Ifc4x3_rc3::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x3_rc3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x3_rc3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x3_rc3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x3_rc3::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcArithmeticOperatorEnum::Value) IFC4X3_RC3_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcArithmeticOperatorEnum::operator Ifc4x3_rc3::IfcArithmeticOperatorEnum::Value() const { @@ -2105,16 +1939,11 @@ Ifc4x3_rc3::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAssemblyPlaceEnum::Value Ifc4x3_rc3::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4x3_rc3::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4x3_rc3::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAssemblyPlaceEnum::Value) IFC4X3_RC3_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAssemblyPlaceEnum::operator Ifc4x3_rc3::IfcAssemblyPlaceEnum::Value() const { @@ -2143,27 +1972,11 @@ Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(con } const char* Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "RAILWAY_COMMUNICATION_TERMINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::Value Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "RAILWAY_COMMUNICATION_TERMINAL") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RAILWAY_COMMUNICATION_TERMINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::Value) IFC4X3_RC3_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::operator Ifc4x3_rc3::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -2192,19 +2005,11 @@ Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x3_rc3::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC3_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBSplineCurveForm::Value Ifc4x3_rc3::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc3::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBSplineCurveForm::Value) IFC4X3_RC3_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBSplineCurveForm::operator Ifc4x3_rc3::IfcBSplineCurveForm::Value() const { @@ -2233,24 +2038,11 @@ Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4x3_rc3::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC3_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBSplineSurfaceForm::Value Ifc4x3_rc3::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc3::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBSplineSurfaceForm::Value) IFC4X3_RC3_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBSplineSurfaceForm::operator Ifc4x3_rc3::IfcBSplineSurfaceForm::Value() const { @@ -2279,27 +2071,11 @@ Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "GIRDER_SEGMENT", "DIAPHRAGM", "PIERCAP", "HATSTONE", "CORNICE", "EDGEBEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBeamTypeEnum::Value Ifc4x3_rc3::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "GIRDER_SEGMENT") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_GIRDER_SEGMENT; - if (s == "DIAPHRAGM") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_DIAPHRAGM; - if (s == "PIERCAP") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_PIERCAP; - if (s == "HATSTONE") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_HATSTONE; - if (s == "CORNICE") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_CORNICE; - if (s == "EDGEBEAM") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_EDGEBEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBeamTypeEnum::Value) IFC4X3_RC3_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBeamTypeEnum::operator Ifc4x3_rc3::IfcBeamTypeEnum::Value() const { @@ -2328,18 +2104,11 @@ Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(const } const char* Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXED_MOVEMENT", "GUIDED_LONGITUDINAL", "GUIDED_TRANSVERSAL", "FREE_MOVEMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBearingTypeDisplacementEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::Value Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::FromString(const std::string& s) { - if (s == "FIXED_MOVEMENT") return ::Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FIXED_MOVEMENT; - if (s == "GUIDED_LONGITUDINAL") return ::Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_LONGITUDINAL; - if (s == "GUIDED_TRANSVERSAL") return ::Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_TRANSVERSAL; - if (s == "FREE_MOVEMENT") return ::Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FREE_MOVEMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::Value) IFC4X3_RC3_IfcBearingTypeDisplacementEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::operator Ifc4x3_rc3::IfcBearingTypeDisplacementEnum::Value() const { @@ -2368,23 +2137,11 @@ Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBearingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYLINDRICAL", "SPHERICAL", "ELASTOMERIC", "POT", "GUIDE", "ROCKER", "ROLLER", "DISK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBearingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBearingTypeEnum::Value Ifc4x3_rc3::IfcBearingTypeEnum::FromString(const std::string& s) { - if (s == "CYLINDRICAL") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_CYLINDRICAL; - if (s == "SPHERICAL") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_SPHERICAL; - if (s == "ELASTOMERIC") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_ELASTOMERIC; - if (s == "POT") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_POT; - if (s == "GUIDE") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_GUIDE; - if (s == "ROCKER") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_ROCKER; - if (s == "ROLLER") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_ROLLER; - if (s == "DISK") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_DISK; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBearingTypeEnum::IfcBearingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBearingTypeEnum::Value) IFC4X3_RC3_IfcBearingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBearingTypeEnum::operator Ifc4x3_rc3::IfcBearingTypeEnum::Value() const { @@ -2413,23 +2170,11 @@ Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4X3_RC3_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBenchmarkEnum::Value Ifc4x3_rc3::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4x3_rc3::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBenchmarkEnum::Value) IFC4X3_RC3_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBenchmarkEnum::operator Ifc4x3_rc3::IfcBenchmarkEnum::Value() const { @@ -2458,17 +2203,11 @@ Ifc4x3_rc3::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBoilerTypeEnum::Value Ifc4x3_rc3::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4x3_rc3::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4x3_rc3::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBoilerTypeEnum::Value) IFC4X3_RC3_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBoilerTypeEnum::operator Ifc4x3_rc3::IfcBoilerTypeEnum::Value() const { @@ -2497,16 +2236,11 @@ Ifc4x3_rc3::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x3_rc3::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4X3_RC3_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBooleanOperator::Value Ifc4x3_rc3::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4x3_rc3::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4x3_rc3::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4x3_rc3::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBooleanOperator::Value) IFC4X3_RC3_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBooleanOperator::operator Ifc4x3_rc3::IfcBooleanOperator::Value() const { @@ -2535,25 +2269,11 @@ Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBridgePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "DECK", "DECK_SEGMENT", "FOUNDATION", "PIER", "PIER_SEGMENT", "PYLON", "SUBSTRUCTURE", "SUPERSTRUCTURE", "SURFACESTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBridgePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBridgePartTypeEnum::Value Ifc4x3_rc3::IfcBridgePartTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_ABUTMENT; - if (s == "DECK") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_DECK; - if (s == "DECK_SEGMENT") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_DECK_SEGMENT; - if (s == "FOUNDATION") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_FOUNDATION; - if (s == "PIER") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_PIER; - if (s == "PIER_SEGMENT") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_PIER_SEGMENT; - if (s == "PYLON") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_PYLON; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_SUPERSTRUCTURE; - if (s == "SURFACESTRUCTURE") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_SURFACESTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBridgePartTypeEnum::IfcBridgePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBridgePartTypeEnum::Value) IFC4X3_RC3_IfcBridgePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBridgePartTypeEnum::operator Ifc4x3_rc3::IfcBridgePartTypeEnum::Value() const { @@ -2582,23 +2302,11 @@ Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBridgeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHED", "CABLE_STAYED", "CANTILEVER", "CULVERT", "FRAMEWORK", "GIRDER", "SUSPENSION", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBridgeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBridgeTypeEnum::Value Ifc4x3_rc3::IfcBridgeTypeEnum::FromString(const std::string& s) { - if (s == "ARCHED") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_ARCHED; - if (s == "CABLE_STAYED") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_CABLE_STAYED; - if (s == "CANTILEVER") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_CANTILEVER; - if (s == "CULVERT") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_CULVERT; - if (s == "FRAMEWORK") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_FRAMEWORK; - if (s == "GIRDER") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_GIRDER; - if (s == "SUSPENSION") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_SUSPENSION; - if (s == "TRUSS") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBridgeTypeEnum::IfcBridgeType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBridgeTypeEnum::Value) IFC4X3_RC3_IfcBridgeTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBridgeTypeEnum::operator Ifc4x3_rc3::IfcBridgeTypeEnum::Value() const { @@ -2627,20 +2335,11 @@ Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const } const char* Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "APRON", "ARMOURUNIT", "SAFETYCAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::Value Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "APRON") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_APRON; - if (s == "ARMOURUNIT") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_ARMOURUNIT; - if (s == "SAFETYCAGE") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_SAFETYCAGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::Value) IFC4X3_RC3_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::operator Ifc4x3_rc3::IfcBuildingElementPartTypeEnum::Value() const { @@ -2669,20 +2368,11 @@ Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(con } const char* Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::Value Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::Value) IFC4X3_RC3_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::operator Ifc4x3_rc3::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2711,24 +2401,11 @@ Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "REINFORCING", "PRESTRESSING", "EROSIONPREVENTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBuildingSystemTypeEnum::Value Ifc4x3_rc3::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "REINFORCING") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_REINFORCING; - if (s == "PRESTRESSING") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_PRESTRESSING; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_EROSIONPREVENTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBuildingSystemTypeEnum::Value) IFC4X3_RC3_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBuildingSystemTypeEnum::operator Ifc4x3_rc3::IfcBuildingSystemTypeEnum::Value() const { @@ -2757,27 +2434,11 @@ Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcBuiltSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "REINFORCING", "MOORING", "OUTERSHELL", "TRACKCIRCUIT", "EROSIONPREVENTION", "FOUNDATION", "LOADBEARING", "SHADING", "FENESTRATION", "MOORINGSYSTEM", "TRANSPORT", "PRESTRESSING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBuiltSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBuiltSystemTypeEnum::Value Ifc4x3_rc3::IfcBuiltSystemTypeEnum::FromString(const std::string& s) { - if (s == "REINFORCING") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_REINFORCING; - if (s == "MOORING") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_OUTERSHELL; - if (s == "TRACKCIRCUIT") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRACKCIRCUIT; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_EROSIONPREVENTION; - if (s == "FOUNDATION") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_LOADBEARING; - if (s == "SHADING") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_SHADING; - if (s == "FENESTRATION") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FENESTRATION; - if (s == "MOORINGSYSTEM") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORINGSYSTEM; - if (s == "TRANSPORT") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRANSPORT; - if (s == "PRESTRESSING") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_PRESTRESSING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBuiltSystemTypeEnum::Value) IFC4X3_RC3_IfcBuiltSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBuiltSystemTypeEnum::operator Ifc4x3_rc3::IfcBuiltSystemTypeEnum::Value() const { @@ -2806,15 +2467,11 @@ Ifc4x3_rc3::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcBurnerTypeEnum::Value Ifc4x3_rc3::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcBurnerTypeEnum::Value) IFC4X3_RC3_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcBurnerTypeEnum::operator Ifc4x3_rc3::IfcBurnerTypeEnum::Value() const { @@ -2843,19 +2500,11 @@ Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const } const char* Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::Value Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::Value) IFC4X3_RC3_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::operator Ifc4x3_rc3::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2884,22 +2533,11 @@ Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const } const char* Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "CABLEBRACKET", "CATENARYWIRE", "DROPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::Value Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "CABLEBRACKET") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLEBRACKET; - if (s == "CATENARYWIRE") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CATENARYWIRE; - if (s == "DROPPER") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_DROPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::Value) IFC4X3_RC3_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::operator Ifc4x3_rc3::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2928,21 +2566,11 @@ Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "FANOUT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCableFittingTypeEnum::Value Ifc4x3_rc3::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "FANOUT") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_FANOUT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCableFittingTypeEnum::Value) IFC4X3_RC3_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCableFittingTypeEnum::operator Ifc4x3_rc3::IfcCableFittingTypeEnum::Value() const { @@ -2971,25 +2599,11 @@ Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "CONTACTWIRESEGMENT", "FIBERSEGMENT", "FIBERTUBE", "OPTICALCABLESEGMENT", "STITCHWIRE", "WIREPAIRSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCableSegmentTypeEnum::Value Ifc4x3_rc3::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "CONTACTWIRESEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONTACTWIRESEGMENT; - if (s == "FIBERSEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERSEGMENT; - if (s == "FIBERTUBE") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERTUBE; - if (s == "OPTICALCABLESEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_OPTICALCABLESEGMENT; - if (s == "STITCHWIRE") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_STITCHWIRE; - if (s == "WIREPAIRSEGMENT") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_WIREPAIRSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCableSegmentTypeEnum::Value) IFC4X3_RC3_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCableSegmentTypeEnum::operator Ifc4x3_rc3::IfcCableSegmentTypeEnum::Value() const { @@ -3018,17 +2632,11 @@ Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std } const char* Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WELL", "CAISSON", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::Value Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::FromString(const std::string& s) { - if (s == "WELL") return ::Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_WELL; - if (s == "CAISSON") return ::Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_CAISSON; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::Value) IFC4X3_RC3_IfcCaissonFoundationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::operator Ifc4x3_rc3::IfcCaissonFoundationTypeEnum::Value() const { @@ -3057,18 +2665,11 @@ Ifc4x3_rc3::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcChangeActionEnum::Value Ifc4x3_rc3::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4x3_rc3::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4x3_rc3::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4x3_rc3::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x3_rc3::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcChangeActionEnum::Value) IFC4X3_RC3_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcChangeActionEnum::operator Ifc4x3_rc3::IfcChangeActionEnum::Value() const { @@ -3097,18 +2698,11 @@ Ifc4x3_rc3::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcChillerTypeEnum::Value Ifc4x3_rc3::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc3::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc3::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x3_rc3::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcChillerTypeEnum::Value) IFC4X3_RC3_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcChillerTypeEnum::operator Ifc4x3_rc3::IfcChillerTypeEnum::Value() const { @@ -3137,15 +2731,11 @@ Ifc4x3_rc3::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcChimneyTypeEnum::Value Ifc4x3_rc3::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcChimneyTypeEnum::Value) IFC4X3_RC3_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcChimneyTypeEnum::operator Ifc4x3_rc3::IfcChimneyTypeEnum::Value() const { @@ -3174,22 +2764,11 @@ Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCoilTypeEnum::Value Ifc4x3_rc3::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCoilTypeEnum::Value) IFC4X3_RC3_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCoilTypeEnum::operator Ifc4x3_rc3::IfcCoilTypeEnum::Value() const { @@ -3218,20 +2797,11 @@ Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "PIERSTEM", "PIERSTEM_SEGMENT", "STANDCOLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcColumnTypeEnum::Value Ifc4x3_rc3::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "PIERSTEM") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_PIERSTEM; - if (s == "PIERSTEM_SEGMENT") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_PIERSTEM_SEGMENT; - if (s == "STANDCOLUMN") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_STANDCOLUMN; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcColumnTypeEnum::Value) IFC4X3_RC3_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcColumnTypeEnum::operator Ifc4x3_rc3::IfcColumnTypeEnum::Value() const { @@ -3260,36 +2830,11 @@ Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEn } const char* Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "AUTOMATON", "INTELLIGENT_PERIPHERAL", "IP_NETWORK_EQUIPMENT", "OPTICAL_NETWORK_UNIT", "TELECOMMAND", "TELEPHONYEXCHANGE", "TRANSITIONCOMPONENT", "TRANSPONDER", "TRANSPORTEQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::Value Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "AUTOMATON") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_AUTOMATON; - if (s == "INTELLIGENT_PERIPHERAL") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_INTELLIGENT_PERIPHERAL; - if (s == "IP_NETWORK_EQUIPMENT") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_IP_NETWORK_EQUIPMENT; - if (s == "OPTICAL_NETWORK_UNIT") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICAL_NETWORK_UNIT; - if (s == "TELECOMMAND") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELECOMMAND; - if (s == "TELEPHONYEXCHANGE") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELEPHONYEXCHANGE; - if (s == "TRANSITIONCOMPONENT") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSITIONCOMPONENT; - if (s == "TRANSPONDER") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPONDER; - if (s == "TRANSPORTEQUIPMENT") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::Value) IFC4X3_RC3_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::operator Ifc4x3_rc3::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -3318,15 +2863,11 @@ Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEn } const char* Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X3_RC3_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x3_rc3::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -3355,30 +2896,11 @@ Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCompressorTypeEnum::Value Ifc4x3_rc3::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCompressorTypeEnum::Value) IFC4X3_RC3_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCompressorTypeEnum::operator Ifc4x3_rc3::IfcCompressorTypeEnum::Value() const { @@ -3407,22 +2929,11 @@ Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCondenserTypeEnum::Value Ifc4x3_rc3::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCondenserTypeEnum::Value) IFC4X3_RC3_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCondenserTypeEnum::operator Ifc4x3_rc3::IfcCondenserTypeEnum::Value() const { @@ -3451,17 +2962,11 @@ Ifc4x3_rc3::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcConnectionTypeEnum::Value Ifc4x3_rc3::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4x3_rc3::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x3_rc3::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4x3_rc3::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcConnectionTypeEnum::Value) IFC4X3_RC3_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcConnectionTypeEnum::operator Ifc4x3_rc3::IfcConnectionTypeEnum::Value() const { @@ -3490,18 +2995,11 @@ Ifc4x3_rc3::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcConstraintEnum::Value Ifc4x3_rc3::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4x3_rc3::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x3_rc3::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4x3_rc3::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcConstraintEnum::Value) IFC4X3_RC3_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcConstraintEnum::operator Ifc4x3_rc3::IfcConstraintEnum::Value() const { @@ -3530,23 +3028,11 @@ Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentRe } const char* Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X3_RC3_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x3_rc3::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -3575,24 +3061,11 @@ Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialReso } const char* Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X3_RC3_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x3_rc3::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3621,17 +3094,11 @@ Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResour } const char* Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::Value) IFC4X3_RC3_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::operator Ifc4x3_rc3::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3660,20 +3127,11 @@ Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcControllerTypeEnum::Value Ifc4x3_rc3::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcControllerTypeEnum::Value) IFC4X3_RC3_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcControllerTypeEnum::operator Ifc4x3_rc3::IfcControllerTypeEnum::Value() const { @@ -3702,19 +3160,11 @@ Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::st } const char* Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHUTECONVEYOR", "BELTCONVEYOR", "SCREWCONVEYOR", "BUCKETCONVEYOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::Value Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CHUTECONVEYOR") return ::Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_CHUTECONVEYOR; - if (s == "BELTCONVEYOR") return ::Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BELTCONVEYOR; - if (s == "SCREWCONVEYOR") return ::Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_SCREWCONVEYOR; - if (s == "BUCKETCONVEYOR") return ::Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BUCKETCONVEYOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::Value) IFC4X3_RC3_IfcConveyorSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::operator Ifc4x3_rc3::IfcConveyorSegmentTypeEnum::Value() const { @@ -3743,17 +3193,11 @@ Ifc4x3_rc3::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCooledBeamTypeEnum::Value Ifc4x3_rc3::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x3_rc3::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x3_rc3::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCooledBeamTypeEnum::Value) IFC4X3_RC3_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCooledBeamTypeEnum::operator Ifc4x3_rc3::IfcCooledBeamTypeEnum::Value() const { @@ -3782,18 +3226,11 @@ Ifc4x3_rc3::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCoolingTowerTypeEnum::Value Ifc4x3_rc3::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4x3_rc3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x3_rc3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x3_rc3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCoolingTowerTypeEnum::Value) IFC4X3_RC3_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCoolingTowerTypeEnum::operator Ifc4x3_rc3::IfcCoolingTowerTypeEnum::Value() const { @@ -3822,15 +3259,11 @@ Ifc4x3_rc3::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCostItemTypeEnum::Value Ifc4x3_rc3::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCostItemTypeEnum::Value) IFC4X3_RC3_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCostItemTypeEnum::operator Ifc4x3_rc3::IfcCostItemTypeEnum::Value() const { @@ -3859,22 +3292,11 @@ Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCostScheduleTypeEnum::Value Ifc4x3_rc3::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCostScheduleTypeEnum::Value) IFC4X3_RC3_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCostScheduleTypeEnum::operator Ifc4x3_rc3::IfcCostScheduleTypeEnum::Value() const { @@ -3903,21 +3325,11 @@ Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCourseTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARMOUR", "FILTER", "BALLASTBED", "CORE", "PAVEMENT", "PROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCourseTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCourseTypeEnum::Value Ifc4x3_rc3::IfcCourseTypeEnum::FromString(const std::string& s) { - if (s == "ARMOUR") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_ARMOUR; - if (s == "FILTER") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_FILTER; - if (s == "BALLASTBED") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_BALLASTBED; - if (s == "CORE") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_CORE; - if (s == "PAVEMENT") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_PAVEMENT; - if (s == "PROTECTION") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_PROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCourseTypeEnum::IfcCourseType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCourseTypeEnum::Value) IFC4X3_RC3_IfcCourseTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCourseTypeEnum::operator Ifc4x3_rc3::IfcCourseTypeEnum::Value() const { @@ -3946,26 +3358,11 @@ Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "COPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCoveringTypeEnum::Value Ifc4x3_rc3::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "COPING") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_COPING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCoveringTypeEnum::Value) IFC4X3_RC3_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCoveringTypeEnum::operator Ifc4x3_rc3::IfcCoveringTypeEnum::Value() const { @@ -3994,17 +3391,11 @@ Ifc4x3_rc3::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCrewResourceTypeEnum::Value Ifc4x3_rc3::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc3::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc3::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCrewResourceTypeEnum::Value) IFC4X3_RC3_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCrewResourceTypeEnum::operator Ifc4x3_rc3::IfcCrewResourceTypeEnum::Value() const { @@ -4033,15 +3424,11 @@ Ifc4x3_rc3::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCurtainWallTypeEnum::Value Ifc4x3_rc3::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCurtainWallTypeEnum::Value) IFC4X3_RC3_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCurtainWallTypeEnum::operator Ifc4x3_rc3::IfcCurtainWallTypeEnum::Value() const { @@ -4070,17 +3457,11 @@ Ifc4x3_rc3::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::stri } const char* Ifc4x3_rc3::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcCurveInterpolationEnum::Value Ifc4x3_rc3::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x3_rc3::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x3_rc3::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x3_rc3::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcCurveInterpolationEnum::Value) IFC4X3_RC3_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcCurveInterpolationEnum::operator Ifc4x3_rc3::IfcCurveInterpolationEnum::Value() const { @@ -4109,26 +3490,11 @@ Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDamperTypeEnum::Value Ifc4x3_rc3::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDamperTypeEnum::Value) IFC4X3_RC3_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDamperTypeEnum::operator Ifc4x3_rc3::IfcDamperTypeEnum::Value() const { @@ -4157,18 +3523,11 @@ Ifc4x3_rc3::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDataOriginEnum::Value Ifc4x3_rc3::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x3_rc3::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x3_rc3::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x3_rc3::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDataOriginEnum::Value) IFC4X3_RC3_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDataOriginEnum::operator Ifc4x3_rc3::IfcDataOriginEnum::Value() const { @@ -4197,66 +3556,11 @@ Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDerivedUnitEnum::Value Ifc4x3_rc3::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDerivedUnitEnum::Value) IFC4X3_RC3_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDerivedUnitEnum::operator Ifc4x3_rc3::IfcDerivedUnitEnum::Value() const { @@ -4285,15 +3589,11 @@ Ifc4x3_rc3::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4X3_RC3_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDirectionSenseEnum::Value Ifc4x3_rc3::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc3::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc3::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDirectionSenseEnum::Value) IFC4X3_RC3_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDirectionSenseEnum::operator Ifc4x3_rc3::IfcDirectionSenseEnum::Value() const { @@ -4322,34 +3622,11 @@ Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std } const char* Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "EXPANSION_JOINT_DEVICE", "CABLEARRANGER", "INSULATOR", "LOCK", "TENSIONINGEQUIPMENT", "RAILPAD", "SLIDINGCHAIR", "RAIL_LUBRICATION", "PANEL_STRENGTHENING", "RAILBRACE", "ELASTIC_CUSHION", "SOUNDABSORPTION", "POINTMACHINEMOUNTINGDEVICE", "POINT_MACHINE_LOCKING_DEVICE", "RAIL_MECHANICAL_EQUIPMENT", "BIRDPROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::Value Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "EXPANSION_JOINT_DEVICE") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_EXPANSION_JOINT_DEVICE; - if (s == "CABLEARRANGER") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_CABLEARRANGER; - if (s == "INSULATOR") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_INSULATOR; - if (s == "LOCK") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_LOCK; - if (s == "TENSIONINGEQUIPMENT") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_TENSIONINGEQUIPMENT; - if (s == "RAILPAD") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILPAD; - if (s == "SLIDINGCHAIR") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SLIDINGCHAIR; - if (s == "RAIL_LUBRICATION") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_LUBRICATION; - if (s == "PANEL_STRENGTHENING") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_PANEL_STRENGTHENING; - if (s == "RAILBRACE") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILBRACE; - if (s == "ELASTIC_CUSHION") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ELASTIC_CUSHION; - if (s == "SOUNDABSORPTION") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SOUNDABSORPTION; - if (s == "POINTMACHINEMOUNTINGDEVICE") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_POINTMACHINEMOUNTINGDEVICE; - if (s == "POINT_MACHINE_LOCKING_DEVICE") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_POINT_MACHINE_LOCKING_DEVICE; - if (s == "RAIL_MECHANICAL_EQUIPMENT") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_MECHANICAL_EQUIPMENT; - if (s == "BIRDPROTECTION") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BIRDPROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::Value) IFC4X3_RC3_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::operator Ifc4x3_rc3::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -4378,20 +3655,11 @@ Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std } const char* Ifc4x3_rc3::IfcDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWITCHBOARD", "CONSUMERUNIT", "MOTORCONTROLCENTRE", "DISTRIBUTIONFRAME", "DISTRIBUTIONBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDistributionBoardTypeEnum::Value Ifc4x3_rc3::IfcDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "SWITCHBOARD") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_SWITCHBOARD; - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_CONSUMERUNIT; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "DISTRIBUTIONFRAME") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONFRAME; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDistributionBoardTypeEnum::Value) IFC4X3_RC3_IfcDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDistributionBoardTypeEnum::operator Ifc4x3_rc3::IfcDistributionBoardTypeEnum::Value() const { @@ -4420,23 +3688,11 @@ Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElement } const char* Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::Value Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::Value) IFC4X3_RC3_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::operator Ifc4x3_rc3::IfcDistributionChamberElementTypeEnum::Value() const { @@ -4465,20 +3721,11 @@ Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std:: } const char* Ifc4x3_rc3::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "WIRELESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDistributionPortTypeEnum::Value Ifc4x3_rc3::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "WIRELESS") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_WIRELESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDistributionPortTypeEnum::Value) IFC4X3_RC3_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDistributionPortTypeEnum::operator Ifc4x3_rc3::IfcDistributionPortTypeEnum::Value() const { @@ -4507,60 +3754,11 @@ Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::stri } const char* Ifc4x3_rc3::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 47 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "CATENARY_SYSTEM", "OVERHEAD_CONTACTLINE_SYSTEM", "RETURN_CIRCUIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDistributionSystemEnum::Value Ifc4x3_rc3::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "CATENARY_SYSTEM") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_CATENARY_SYSTEM; - if (s == "OVERHEAD_CONTACTLINE_SYSTEM") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_OVERHEAD_CONTACTLINE_SYSTEM; - if (s == "RETURN_CIRCUIT") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_RETURN_CIRCUIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDistributionSystemEnum::Value) IFC4X3_RC3_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDistributionSystemEnum::operator Ifc4x3_rc3::IfcDistributionSystemEnum::Value() const { @@ -4589,19 +3787,11 @@ Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const } const char* Ifc4x3_rc3::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDocumentConfidentialityEnum::Value Ifc4x3_rc3::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDocumentConfidentialityEnum::Value) IFC4X3_RC3_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDocumentConfidentialityEnum::operator Ifc4x3_rc3::IfcDocumentConfidentialityEnum::Value() const { @@ -4630,18 +3820,11 @@ Ifc4x3_rc3::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDocumentStatusEnum::Value Ifc4x3_rc3::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x3_rc3::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4x3_rc3::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4x3_rc3::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4x3_rc3::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDocumentStatusEnum::Value) IFC4X3_RC3_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDocumentStatusEnum::operator Ifc4x3_rc3::IfcDocumentStatusEnum::Value() const { @@ -4670,22 +3853,11 @@ Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::stri } const char* Ifc4x3_rc3::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDoorPanelOperationEnum::Value Ifc4x3_rc3::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDoorPanelOperationEnum::Value) IFC4X3_RC3_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDoorPanelOperationEnum::operator Ifc4x3_rc3::IfcDoorPanelOperationEnum::Value() const { @@ -4714,17 +3886,11 @@ Ifc4x3_rc3::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string } const char* Ifc4x3_rc3::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDoorPanelPositionEnum::Value Ifc4x3_rc3::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDoorPanelPositionEnum::Value) IFC4X3_RC3_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDoorPanelPositionEnum::operator Ifc4x3_rc3::IfcDoorPanelPositionEnum::Value() const { @@ -4753,22 +3919,11 @@ Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std } const char* Ifc4x3_rc3::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDoorStyleConstructionEnum::Value Ifc4x3_rc3::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDoorStyleConstructionEnum::Value) IFC4X3_RC3_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDoorStyleConstructionEnum::operator Ifc4x3_rc3::IfcDoorStyleConstructionEnum::Value() const { @@ -4797,31 +3952,11 @@ Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::stri } const char* Ifc4x3_rc3::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDoorStyleOperationEnum::Value Ifc4x3_rc3::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDoorStyleOperationEnum::Value) IFC4X3_RC3_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDoorStyleOperationEnum::operator Ifc4x3_rc3::IfcDoorStyleOperationEnum::Value() const { @@ -4850,20 +3985,11 @@ Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "BOOM_BARRIER", "TURNSTILE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDoorTypeEnum::Value Ifc4x3_rc3::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "BOOM_BARRIER") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_BOOM_BARRIER; - if (s == "TURNSTILE") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_TURNSTILE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDoorTypeEnum::Value) IFC4X3_RC3_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDoorTypeEnum::operator Ifc4x3_rc3::IfcDoorTypeEnum::Value() const { @@ -4892,38 +4018,11 @@ Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string } const char* Ifc4x3_rc3::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 25 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_PANEL_SINGLE_SWING", "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_PANEL_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_PANEL_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_PANEL_FOLDING", "REVOLVING_HORIZONTAL", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "DOUBLE_PANEL_LIFTING_VERTICAL", "LIFTING_HORIZONTAL", "LIFTING_VERTICAL_LEFT", "LIFTING_VERTICAL_RIGHT", "REVOLVING_VERTICAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDoorTypeOperationEnum::Value Ifc4x3_rc3::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_PANEL_SINGLE_SWING") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SINGLE_SWING; - if (s == "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_PANEL_DOUBLE_SWING") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_PANEL_SLIDING") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_PANEL_FOLDING") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_FOLDING; - if (s == "REVOLVING_HORIZONTAL") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING_HORIZONTAL; - if (s == "ROLLINGUP") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "DOUBLE_PANEL_LIFTING_VERTICAL") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_LIFTING_VERTICAL; - if (s == "LIFTING_HORIZONTAL") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_HORIZONTAL; - if (s == "LIFTING_VERTICAL_LEFT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_VERTICAL_LEFT; - if (s == "LIFTING_VERTICAL_RIGHT") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_VERTICAL_RIGHT; - if (s == "REVOLVING_VERTICAL") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING_VERTICAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDoorTypeOperationEnum::Value) IFC4X3_RC3_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDoorTypeOperationEnum::operator Ifc4x3_rc3::IfcDoorTypeOperationEnum::Value() const { @@ -4952,22 +4051,11 @@ Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDuctFittingTypeEnum::Value Ifc4x3_rc3::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDuctFittingTypeEnum::Value) IFC4X3_RC3_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDuctFittingTypeEnum::operator Ifc4x3_rc3::IfcDuctFittingTypeEnum::Value() const { @@ -4996,17 +4084,11 @@ Ifc4x3_rc3::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDuctSegmentTypeEnum::Value Ifc4x3_rc3::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDuctSegmentTypeEnum::Value) IFC4X3_RC3_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDuctSegmentTypeEnum::operator Ifc4x3_rc3::IfcDuctSegmentTypeEnum::Value() const { @@ -5035,18 +4117,11 @@ Ifc4x3_rc3::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcDuctSilencerTypeEnum::Value Ifc4x3_rc3::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x3_rc3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x3_rc3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x3_rc3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcDuctSilencerTypeEnum::Value) IFC4X3_RC3_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcDuctSilencerTypeEnum::operator Ifc4x3_rc3::IfcDuctSilencerTypeEnum::Value() const { @@ -5075,24 +4150,11 @@ Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcEarthworksCutTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRENCH", "DREDGING", "EXCAVATION", "OVEREXCAVATION", "TOPSOILREMOVAL", "STEPEXCAVATION", "PAVEMENTMILLING", "CUT", "BASE_EXCAVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEarthworksCutTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEarthworksCutTypeEnum::Value Ifc4x3_rc3::IfcEarthworksCutTypeEnum::FromString(const std::string& s) { - if (s == "TRENCH") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TRENCH; - if (s == "DREDGING") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_DREDGING; - if (s == "EXCAVATION") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_EXCAVATION; - if (s == "OVEREXCAVATION") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_OVEREXCAVATION; - if (s == "TOPSOILREMOVAL") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TOPSOILREMOVAL; - if (s == "STEPEXCAVATION") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_STEPEXCAVATION; - if (s == "PAVEMENTMILLING") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_PAVEMENTMILLING; - if (s == "CUT") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_CUT; - if (s == "BASE_EXCAVATION") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_BASE_EXCAVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEarthworksCutTypeEnum::Value) IFC4X3_RC3_IfcEarthworksCutTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEarthworksCutTypeEnum::operator Ifc4x3_rc3::IfcEarthworksCutTypeEnum::Value() const { @@ -5121,22 +4183,11 @@ Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcEarthworksFillTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKFILL", "COUNTERWEIGHT", "SUBGRADE", "EMBANKMENT", "TRANSITIONSECTION", "SUBGRADEBED", "SLOPEFILL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEarthworksFillTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEarthworksFillTypeEnum::Value Ifc4x3_rc3::IfcEarthworksFillTypeEnum::FromString(const std::string& s) { - if (s == "BACKFILL") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_BACKFILL; - if (s == "COUNTERWEIGHT") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_COUNTERWEIGHT; - if (s == "SUBGRADE") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADE; - if (s == "EMBANKMENT") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_EMBANKMENT; - if (s == "TRANSITIONSECTION") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_TRANSITIONSECTION; - if (s == "SUBGRADEBED") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADEBED; - if (s == "SLOPEFILL") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SLOPEFILL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEarthworksFillTypeEnum::Value) IFC4X3_RC3_IfcEarthworksFillTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEarthworksFillTypeEnum::operator Ifc4x3_rc3::IfcEarthworksFillTypeEnum::Value() const { @@ -5165,31 +4216,11 @@ Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std } const char* Ifc4x3_rc3::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricApplianceTypeEnum::Value Ifc4x3_rc3::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricApplianceTypeEnum::Value) IFC4X3_RC3_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricApplianceTypeEnum::operator Ifc4x3_rc3::IfcElectricApplianceTypeEnum::Value() const { @@ -5218,19 +4249,11 @@ Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTy } const char* Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::Value Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::Value) IFC4X3_RC3_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::operator Ifc4x3_rc3::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -5259,24 +4282,11 @@ Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTy } const char* Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "CAPACITOR", "COMPENSATOR", "INDUCTOR", "RECHARGER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "CAPACITOR") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITOR; - if (s == "COMPENSATOR") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_COMPENSATOR; - if (s == "INDUCTOR") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTOR; - if (s == "RECHARGER") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_RECHARGER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X3_RC3_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x3_rc3::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -5305,16 +4315,11 @@ Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDevi } const char* Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONICFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::Value Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONICFILTER") return ::Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_ELECTRONICFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::Value) IFC4X3_RC3_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::operator Ifc4x3_rc3::IfcElectricFlowTreatmentDeviceTypeEnum::Value() const { @@ -5343,18 +4348,11 @@ Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std } const char* Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::Value Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::Value) IFC4X3_RC3_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::operator Ifc4x3_rc3::IfcElectricGeneratorTypeEnum::Value() const { @@ -5383,20 +4381,11 @@ Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricMotorTypeEnum::Value Ifc4x3_rc3::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricMotorTypeEnum::Value) IFC4X3_RC3_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricMotorTypeEnum::operator Ifc4x3_rc3::IfcElectricMotorTypeEnum::Value() const { @@ -5425,18 +4414,11 @@ Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const } const char* Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::Value Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::Value) IFC4X3_RC3_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::operator Ifc4x3_rc3::IfcElectricTimeControlTypeEnum::Value() const { @@ -5465,43 +4447,11 @@ Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::st } const char* Ifc4x3_rc3::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "ABUTMENT", "PIER", "PYLON", "CROSS_BRACING", "DECK", "MAST", "SIGNALASSEMBLY", "GRID", "SHELTER", "SUPPORTINGASSEMBLY", "SUSPENSIONASSEMBLY", "TRACTION_SWITCHING_ASSEMBLY", "TRACKPANEL", "TURNOUTPANEL", "DILATATIONPANEL", "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY", "ENTRANCEWORKS", "SUMPBUSTER", "TRAFFIC_CALMING_DEVICE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElementAssemblyTypeEnum::Value Ifc4x3_rc3::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "ABUTMENT") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ABUTMENT; - if (s == "PIER") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PIER; - if (s == "PYLON") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PYLON; - if (s == "CROSS_BRACING") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_CROSS_BRACING; - if (s == "DECK") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DECK; - if (s == "MAST") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_MAST; - if (s == "SIGNALASSEMBLY") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SIGNALASSEMBLY; - if (s == "GRID") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GRID; - if (s == "SHELTER") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SHELTER; - if (s == "SUPPORTINGASSEMBLY") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUPPORTINGASSEMBLY; - if (s == "SUSPENSIONASSEMBLY") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUSPENSIONASSEMBLY; - if (s == "TRACTION_SWITCHING_ASSEMBLY") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACTION_SWITCHING_ASSEMBLY; - if (s == "TRACKPANEL") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACKPANEL; - if (s == "TURNOUTPANEL") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TURNOUTPANEL; - if (s == "DILATATIONPANEL") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DILATATIONPANEL; - if (s == "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY; - if (s == "ENTRANCEWORKS") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ENTRANCEWORKS; - if (s == "SUMPBUSTER") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUMPBUSTER; - if (s == "TRAFFIC_CALMING_DEVICE") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRAFFIC_CALMING_DEVICE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElementAssemblyTypeEnum::Value) IFC4X3_RC3_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElementAssemblyTypeEnum::operator Ifc4x3_rc3::IfcElementAssemblyTypeEnum::Value() const { @@ -5530,16 +4480,11 @@ Ifc4x3_rc3::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::stri } const char* Ifc4x3_rc3::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X3_RC3_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcElementCompositionEnum::Value Ifc4x3_rc3::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc3::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc3::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc3::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcElementCompositionEnum::Value) IFC4X3_RC3_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcElementCompositionEnum::operator Ifc4x3_rc3::IfcElementCompositionEnum::Value() const { @@ -5568,17 +4513,11 @@ Ifc4x3_rc3::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEngineTypeEnum::Value Ifc4x3_rc3::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x3_rc3::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x3_rc3::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEngineTypeEnum::Value) IFC4X3_RC3_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEngineTypeEnum::operator Ifc4x3_rc3::IfcEngineTypeEnum::Value() const { @@ -5607,24 +4546,11 @@ Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std } const char* Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::Value Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::Value) IFC4X3_RC3_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::operator Ifc4x3_rc3::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -5653,21 +4579,11 @@ Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEvaporatorTypeEnum::Value Ifc4x3_rc3::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEvaporatorTypeEnum::Value) IFC4X3_RC3_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEvaporatorTypeEnum::operator Ifc4x3_rc3::IfcEvaporatorTypeEnum::Value() const { @@ -5696,19 +4612,11 @@ Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEventTriggerTypeEnum::Value Ifc4x3_rc3::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEventTriggerTypeEnum::Value) IFC4X3_RC3_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEventTriggerTypeEnum::operator Ifc4x3_rc3::IfcEventTriggerTypeEnum::Value() const { @@ -5737,18 +4645,11 @@ Ifc4x3_rc3::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcEventTypeEnum::Value Ifc4x3_rc3::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4x3_rc3::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4x3_rc3::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x3_rc3::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcEventTypeEnum::Value) IFC4X3_RC3_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcEventTypeEnum::operator Ifc4x3_rc3::IfcEventTypeEnum::Value() const { @@ -5777,19 +4678,11 @@ Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum } const char* Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::Value Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::Value) IFC4X3_RC3_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::operator Ifc4x3_rc3::IfcExternalSpatialElementTypeEnum::Value() const { @@ -5818,23 +4711,11 @@ Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const s } const char* Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SEGMENT", "ABOVEGROUND", "JUNCTION", "LEVELCROSSING", "BELOWGROUND", "SUBSTRUCTURE", "TERMINAL", "SUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::Value Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::FromString(const std::string& s) { - if (s == "SEGMENT") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SEGMENT; - if (s == "ABOVEGROUND") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_ABOVEGROUND; - if (s == "JUNCTION") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_JUNCTION; - if (s == "LEVELCROSSING") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_LEVELCROSSING; - if (s == "BELOWGROUND") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_BELOWGROUND; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUBSTRUCTURE; - if (s == "TERMINAL") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_TERMINAL; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::Value) IFC4X3_RC3_IfcFacilityPartCommonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::operator Ifc4x3_rc3::IfcFacilityPartCommonTypeEnum::Value() const { @@ -5863,19 +4744,11 @@ Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFacilityUsageEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LATERAL", "REGION", "VERTICAL", "LONGITUDINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFacilityUsageEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFacilityUsageEnum::Value Ifc4x3_rc3::IfcFacilityUsageEnum::FromString(const std::string& s) { - if (s == "LATERAL") return ::Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsage_LATERAL; - if (s == "REGION") return ::Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsage_REGION; - if (s == "VERTICAL") return ::Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsage_VERTICAL; - if (s == "LONGITUDINAL") return ::Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsage_LONGITUDINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsage_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFacilityUsageEnum::IfcFacilityUsage_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFacilityUsageEnum::Value) IFC4X3_RC3_IfcFacilityUsageEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFacilityUsageEnum::operator Ifc4x3_rc3::IfcFacilityUsageEnum::Value() const { @@ -5904,22 +4777,11 @@ Ifc4x3_rc3::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFanTypeEnum::Value Ifc4x3_rc3::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFanTypeEnum::Value) IFC4X3_RC3_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFanTypeEnum::operator Ifc4x3_rc3::IfcFanTypeEnum::Value() const { @@ -5948,18 +4810,11 @@ Ifc4x3_rc3::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFastenerTypeEnum::Value Ifc4x3_rc3::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x3_rc3::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x3_rc3::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x3_rc3::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFastenerTypeEnum::Value) IFC4X3_RC3_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFastenerTypeEnum::operator Ifc4x3_rc3::IfcFastenerTypeEnum::Value() const { @@ -5988,21 +4843,11 @@ Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFilterTypeEnum::Value Ifc4x3_rc3::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFilterTypeEnum::Value) IFC4X3_RC3_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFilterTypeEnum::operator Ifc4x3_rc3::IfcFilterTypeEnum::Value() const { @@ -6031,21 +4876,11 @@ Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEn } const char* Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "FIREMONITOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "FIREMONITOR") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREMONITOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X3_RC3_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x3_rc3::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -6074,17 +4909,11 @@ Ifc4x3_rc3::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFlowDirectionEnum::Value Ifc4x3_rc3::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4x3_rc3::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4x3_rc3::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4x3_rc3::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFlowDirectionEnum::Value) IFC4X3_RC3_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFlowDirectionEnum::operator Ifc4x3_rc3::IfcFlowDirectionEnum::Value() const { @@ -6113,25 +4942,11 @@ Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "COMBINED", "VOLTMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::Value Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "COMBINED") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_COMBINED; - if (s == "VOLTMETER") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::Value) IFC4X3_RC3_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::operator Ifc4x3_rc3::IfcFlowInstrumentTypeEnum::Value() const { @@ -6160,19 +4975,11 @@ Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFlowMeterTypeEnum::Value Ifc4x3_rc3::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFlowMeterTypeEnum::Value) IFC4X3_RC3_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFlowMeterTypeEnum::operator Ifc4x3_rc3::IfcFlowMeterTypeEnum::Value() const { @@ -6201,20 +5008,11 @@ Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFootingTypeEnum::Value Ifc4x3_rc3::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFootingTypeEnum::Value) IFC4X3_RC3_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFootingTypeEnum::operator Ifc4x3_rc3::IfcFootingTypeEnum::Value() const { @@ -6243,23 +5041,11 @@ Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "TECHNICALCABINET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcFurnitureTypeEnum::Value Ifc4x3_rc3::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "TECHNICALCABINET") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_TECHNICALCABINET; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcFurnitureTypeEnum::Value) IFC4X3_RC3_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcFurnitureTypeEnum::operator Ifc4x3_rc3::IfcFurnitureTypeEnum::Value() const { @@ -6288,17 +5074,11 @@ Ifc4x3_rc3::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std } const char* Ifc4x3_rc3::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "SOIL_BORING_POINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcGeographicElementTypeEnum::Value Ifc4x3_rc3::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4x3_rc3::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "SOIL_BORING_POINT") return ::Ifc4x3_rc3::IfcGeographicElementTypeEnum::IfcGeographicElementType_SOIL_BORING_POINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcGeographicElementTypeEnum::Value) IFC4X3_RC3_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcGeographicElementTypeEnum::operator Ifc4x3_rc3::IfcGeographicElementTypeEnum::Value() const { @@ -6327,22 +5107,11 @@ Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::st } const char* Ifc4x3_rc3::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcGeometricProjectionEnum::Value Ifc4x3_rc3::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcGeometricProjectionEnum::Value) IFC4X3_RC3_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcGeometricProjectionEnum::operator Ifc4x3_rc3::IfcGeometricProjectionEnum::Value() const { @@ -6371,15 +5140,11 @@ Ifc4x3_rc3::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X3_RC3_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcGlobalOrLocalEnum::Value Ifc4x3_rc3::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x3_rc3::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x3_rc3::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcGlobalOrLocalEnum::Value) IFC4X3_RC3_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcGlobalOrLocalEnum::operator Ifc4x3_rc3::IfcGlobalOrLocalEnum::Value() const { @@ -6408,19 +5173,11 @@ Ifc4x3_rc3::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcGridTypeEnum::Value Ifc4x3_rc3::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4x3_rc3::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4x3_rc3::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4x3_rc3::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4x3_rc3::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcGridTypeEnum::Value) IFC4X3_RC3_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcGridTypeEnum::operator Ifc4x3_rc3::IfcGridTypeEnum::Value() const { @@ -6449,18 +5206,11 @@ Ifc4x3_rc3::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "TURNOUTHEATING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcHeatExchangerTypeEnum::Value Ifc4x3_rc3::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x3_rc3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x3_rc3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "TURNOUTHEATING") return ::Ifc4x3_rc3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_TURNOUTHEATING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcHeatExchangerTypeEnum::Value) IFC4X3_RC3_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcHeatExchangerTypeEnum::operator Ifc4x3_rc3::IfcHeatExchangerTypeEnum::Value() const { @@ -6489,28 +5239,11 @@ Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcHumidifierTypeEnum::Value Ifc4x3_rc3::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcHumidifierTypeEnum::Value) IFC4X3_RC3_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcHumidifierTypeEnum::operator Ifc4x3_rc3::IfcHumidifierTypeEnum::Value() const { @@ -6539,19 +5272,11 @@ Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum } const char* Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CRASHCUSHION", "DAMPINGSYSTEM", "FENDER", "BUMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::Value Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CRASHCUSHION") return ::Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_CRASHCUSHION; - if (s == "DAMPINGSYSTEM") return ::Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_DAMPINGSYSTEM; - if (s == "FENDER") return ::Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_FENDER; - if (s == "BUMPER") return ::Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_BUMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::Value) IFC4X3_RC3_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::operator Ifc4x3_rc3::IfcImpactProtectionDeviceTypeEnum::Value() const { @@ -6580,19 +5305,11 @@ Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcInterceptorTypeEnum::Value Ifc4x3_rc3::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcInterceptorTypeEnum::Value) IFC4X3_RC3_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcInterceptorTypeEnum::operator Ifc4x3_rc3::IfcInterceptorTypeEnum::Value() const { @@ -6621,19 +5338,11 @@ Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::stri } const char* Ifc4x3_rc3::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcInternalOrExternalEnum::Value Ifc4x3_rc3::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcInternalOrExternalEnum::Value) IFC4X3_RC3_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcInternalOrExternalEnum::operator Ifc4x3_rc3::IfcInternalOrExternalEnum::Value() const { @@ -6662,18 +5371,11 @@ Ifc4x3_rc3::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcInventoryTypeEnum::Value Ifc4x3_rc3::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x3_rc3::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x3_rc3::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x3_rc3::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcInventoryTypeEnum::Value) IFC4X3_RC3_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcInventoryTypeEnum::operator Ifc4x3_rc3::IfcInventoryTypeEnum::Value() const { @@ -6702,17 +5404,11 @@ Ifc4x3_rc3::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcJunctionBoxTypeEnum::Value Ifc4x3_rc3::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x3_rc3::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x3_rc3::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcJunctionBoxTypeEnum::Value) IFC4X3_RC3_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcJunctionBoxTypeEnum::operator Ifc4x3_rc3::IfcJunctionBoxTypeEnum::Value() const { @@ -6741,17 +5437,11 @@ Ifc4x3_rc3::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x3_rc3::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC3_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcKnotType::Value Ifc4x3_rc3::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4x3_rc3::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x3_rc3::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x3_rc3::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc3::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcKnotType::Value) IFC4X3_RC3_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcKnotType::operator Ifc4x3_rc3::IfcKnotType::Value() const { @@ -6780,34 +5470,11 @@ Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLaborResourceTypeEnum::Value Ifc4x3_rc3::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLaborResourceTypeEnum::Value) IFC4X3_RC3_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLaborResourceTypeEnum::operator Ifc4x3_rc3::IfcLaborResourceTypeEnum::Value() const { @@ -6836,24 +5503,11 @@ Ifc4x3_rc3::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLampTypeEnum::Value Ifc4x3_rc3::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLampTypeEnum::Value) IFC4X3_RC3_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLampTypeEnum::operator Ifc4x3_rc3::IfcLampTypeEnum::Value() const { @@ -6882,16 +5536,11 @@ Ifc4x3_rc3::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string } const char* Ifc4x3_rc3::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X3_RC3_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLayerSetDirectionEnum::Value Ifc4x3_rc3::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x3_rc3::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x3_rc3::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x3_rc3::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLayerSetDirectionEnum::Value) IFC4X3_RC3_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLayerSetDirectionEnum::operator Ifc4x3_rc3::IfcLayerSetDirectionEnum::Value() const { @@ -6920,17 +5569,11 @@ Ifc4x3_rc3::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const s } const char* Ifc4x3_rc3::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLightDistributionCurveEnum::Value Ifc4x3_rc3::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x3_rc3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x3_rc3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x3_rc3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLightDistributionCurveEnum::Value) IFC4X3_RC3_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLightDistributionCurveEnum::operator Ifc4x3_rc3::IfcLightDistributionCurveEnum::Value() const { @@ -6959,24 +5602,11 @@ Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::st } const char* Ifc4x3_rc3::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLightEmissionSourceEnum::Value Ifc4x3_rc3::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLightEmissionSourceEnum::Value) IFC4X3_RC3_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLightEmissionSourceEnum::operator Ifc4x3_rc3::IfcLightEmissionSourceEnum::Value() const { @@ -7005,18 +5635,11 @@ Ifc4x3_rc3::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLightFixtureTypeEnum::Value Ifc4x3_rc3::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4x3_rc3::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4x3_rc3::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x3_rc3::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLightFixtureTypeEnum::Value) IFC4X3_RC3_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLightFixtureTypeEnum::operator Ifc4x3_rc3::IfcLightFixtureTypeEnum::Value() const { @@ -7045,17 +5668,11 @@ Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOADINGARM", "HOSEREEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::Value Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::FromString(const std::string& s) { - if (s == "LOADINGARM") return ::Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_LOADINGARM; - if (s == "HOSEREEL") return ::Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_HOSEREEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::Value) IFC4X3_RC3_IfcLiquidTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::operator Ifc4x3_rc3::IfcLiquidTerminalTypeEnum::Value() const { @@ -7084,18 +5701,11 @@ Ifc4x3_rc3::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLoadGroupTypeEnum::Value Ifc4x3_rc3::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4x3_rc3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4x3_rc3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x3_rc3::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLoadGroupTypeEnum::Value) IFC4X3_RC3_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLoadGroupTypeEnum::operator Ifc4x3_rc3::IfcLoadGroupTypeEnum::Value() const { @@ -7124,18 +5734,11 @@ Ifc4x3_rc3::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4X3_RC3_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcLogicalOperatorEnum::Value Ifc4x3_rc3::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x3_rc3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4x3_rc3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x3_rc3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4x3_rc3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x3_rc3::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcLogicalOperatorEnum::Value) IFC4X3_RC3_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcLogicalOperatorEnum::operator Ifc4x3_rc3::IfcLogicalOperatorEnum::Value() const { @@ -7164,34 +5767,11 @@ Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcMarineFacilityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CANAL", "WATERWAYSHIPLIFT", "REVETMENT", "LAUNCHRECOVERY", "MARINEDEFENCE", "HYDROLIFT", "SHIPYARD", "SHIPLIFT", "PORT", "QUAY", "FLOATINGDOCK", "NAVIGATIONALCHANNEL", "BREAKWATER", "DRYDOCK", "JETTY", "SHIPLOCK", "BARRIERBEACH", "SLIPWAY", "WATERWAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMarineFacilityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMarineFacilityTypeEnum::Value Ifc4x3_rc3::IfcMarineFacilityTypeEnum::FromString(const std::string& s) { - if (s == "CANAL") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_CANAL; - if (s == "WATERWAYSHIPLIFT") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAYSHIPLIFT; - if (s == "REVETMENT") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_REVETMENT; - if (s == "LAUNCHRECOVERY") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_LAUNCHRECOVERY; - if (s == "MARINEDEFENCE") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_MARINEDEFENCE; - if (s == "HYDROLIFT") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_HYDROLIFT; - if (s == "SHIPYARD") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPYARD; - if (s == "SHIPLIFT") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLIFT; - if (s == "PORT") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_PORT; - if (s == "QUAY") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_QUAY; - if (s == "FLOATINGDOCK") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_FLOATINGDOCK; - if (s == "NAVIGATIONALCHANNEL") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NAVIGATIONALCHANNEL; - if (s == "BREAKWATER") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BREAKWATER; - if (s == "DRYDOCK") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_DRYDOCK; - if (s == "JETTY") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_JETTY; - if (s == "SHIPLOCK") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLOCK; - if (s == "BARRIERBEACH") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BARRIERBEACH; - if (s == "SLIPWAY") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SLIPWAY; - if (s == "WATERWAY") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMarineFacilityTypeEnum::Value) IFC4X3_RC3_IfcMarineFacilityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMarineFacilityTypeEnum::operator Ifc4x3_rc3::IfcMarineFacilityTypeEnum::Value() const { @@ -7220,39 +5800,11 @@ Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcMarinePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CREST", "MANUFACTURING", "LOWWATERLINE", "CORE", "WATERFIELD", "CILL_LEVEL", "BERTHINGSTRUCTURE", "COPELEVEL", "CHAMBER", "STORAGE", "APPROACHCHANNEL", "VEHICLESERVICING", "SHIPTRANSFER", "GATEHEAD", "GUDINGSTRUCTURE", "BELOWWATERLINE", "WEATHERSIDE", "LANDFIELD", "PROTECTION", "LEEWARDSIDE", "ABOVEWATERLINE", "ANCHORAGE", "NAVIGATIONALAREA", "HIGHWATERLINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMarinePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMarinePartTypeEnum::Value Ifc4x3_rc3::IfcMarinePartTypeEnum::FromString(const std::string& s) { - if (s == "CREST") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_CREST; - if (s == "MANUFACTURING") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_MANUFACTURING; - if (s == "LOWWATERLINE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_LOWWATERLINE; - if (s == "CORE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_CORE; - if (s == "WATERFIELD") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_WATERFIELD; - if (s == "CILL_LEVEL") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_CILL_LEVEL; - if (s == "BERTHINGSTRUCTURE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_BERTHINGSTRUCTURE; - if (s == "COPELEVEL") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_COPELEVEL; - if (s == "CHAMBER") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_CHAMBER; - if (s == "STORAGE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_STORAGE; - if (s == "APPROACHCHANNEL") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_APPROACHCHANNEL; - if (s == "VEHICLESERVICING") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_VEHICLESERVICING; - if (s == "SHIPTRANSFER") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_SHIPTRANSFER; - if (s == "GATEHEAD") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_GATEHEAD; - if (s == "GUDINGSTRUCTURE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_GUDINGSTRUCTURE; - if (s == "BELOWWATERLINE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_BELOWWATERLINE; - if (s == "WEATHERSIDE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_WEATHERSIDE; - if (s == "LANDFIELD") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_LANDFIELD; - if (s == "PROTECTION") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_PROTECTION; - if (s == "LEEWARDSIDE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_LEEWARDSIDE; - if (s == "ABOVEWATERLINE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_ABOVEWATERLINE; - if (s == "ANCHORAGE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_ANCHORAGE; - if (s == "NAVIGATIONALAREA") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_NAVIGATIONALAREA; - if (s == "HIGHWATERLINE") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_HIGHWATERLINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMarinePartTypeEnum::IfcMarinePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMarinePartTypeEnum::Value) IFC4X3_RC3_IfcMarinePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMarinePartTypeEnum::operator Ifc4x3_rc3::IfcMarinePartTypeEnum::Value() const { @@ -7281,30 +5833,11 @@ Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const s } const char* Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "COUPLER", "RAILJOINT", "RAILFASTENING", "CHAIN", "ROPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::Value Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "COUPLER") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_COUPLER; - if (s == "RAILJOINT") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILJOINT; - if (s == "RAILFASTENING") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILFASTENING; - if (s == "CHAIN") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_CHAIN; - if (s == "ROPE") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ROPE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::Value) IFC4X3_RC3_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::operator Ifc4x3_rc3::IfcMechanicalFastenerTypeEnum::Value() const { @@ -7333,20 +5866,11 @@ Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::Value Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::Value) IFC4X3_RC3_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::operator Ifc4x3_rc3::IfcMedicalDeviceTypeEnum::Value() const { @@ -7375,34 +5899,11 @@ Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "STIFFENING_RIB", "ARCH_SEGMENT", "SUSPENSION_CABLE", "SUSPENDER", "STAY_CABLE", "STRUCTURALCABLE", "TIEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMemberTypeEnum::Value Ifc4x3_rc3::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "STIFFENING_RIB") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_STIFFENING_RIB; - if (s == "ARCH_SEGMENT") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_ARCH_SEGMENT; - if (s == "SUSPENSION_CABLE") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_SUSPENSION_CABLE; - if (s == "SUSPENDER") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_SUSPENDER; - if (s == "STAY_CABLE") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_STAY_CABLE; - if (s == "STRUCTURALCABLE") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_STRUCTURALCABLE; - if (s == "TIEBAR") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_TIEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMemberTypeEnum::Value) IFC4X3_RC3_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMemberTypeEnum::operator Ifc4x3_rc3::IfcMemberTypeEnum::Value() const { @@ -7431,22 +5932,11 @@ Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunica } const char* Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "E_UTRAN_NODE_B", "REMOTE_RADIO_UNIT", "ACCESSPOINT", "BASETRANSCEIVERSTATION", "REMOTEUNIT", "BASEBANDUNIT", "MASTERUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::Value Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "E_UTRAN_NODE_B") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_E_UTRAN_NODE_B; - if (s == "REMOTE_RADIO_UNIT") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTE_RADIO_UNIT; - if (s == "ACCESSPOINT") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_ACCESSPOINT; - if (s == "BASETRANSCEIVERSTATION") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASETRANSCEIVERSTATION; - if (s == "REMOTEUNIT") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTEUNIT; - if (s == "BASEBANDUNIT") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASEBANDUNIT; - if (s == "MASTERUNIT") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MASTERUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::Value) IFC4X3_RC3_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::operator Ifc4x3_rc3::IfcMobileTelecommunicationsApplianceTypeEnum::Value() const { @@ -7475,20 +5965,11 @@ Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcMooringDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINETENSIONER", "MAGNETICDEVICE", "MOORINGHOOKS", "VACUUMDEVICE", "BOLLARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMooringDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMooringDeviceTypeEnum::Value Ifc4x3_rc3::IfcMooringDeviceTypeEnum::FromString(const std::string& s) { - if (s == "LINETENSIONER") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_LINETENSIONER; - if (s == "MAGNETICDEVICE") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MAGNETICDEVICE; - if (s == "MOORINGHOOKS") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MOORINGHOOKS; - if (s == "VACUUMDEVICE") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_VACUUMDEVICE; - if (s == "BOLLARD") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_BOLLARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMooringDeviceTypeEnum::Value) IFC4X3_RC3_IfcMooringDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMooringDeviceTypeEnum::operator Ifc4x3_rc3::IfcMooringDeviceTypeEnum::Value() const { @@ -7517,18 +5998,11 @@ Ifc4x3_rc3::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::st } const char* Ifc4x3_rc3::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcMotorConnectionTypeEnum::Value Ifc4x3_rc3::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x3_rc3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x3_rc3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x3_rc3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcMotorConnectionTypeEnum::Value) IFC4X3_RC3_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcMotorConnectionTypeEnum::operator Ifc4x3_rc3::IfcMotorConnectionTypeEnum::Value() const { @@ -7557,17 +6031,11 @@ Ifc4x3_rc3::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std } const char* Ifc4x3_rc3::IfcNavigationElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEACON", "BUOY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcNavigationElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcNavigationElementTypeEnum::Value Ifc4x3_rc3::IfcNavigationElementTypeEnum::FromString(const std::string& s) { - if (s == "BEACON") return ::Ifc4x3_rc3::IfcNavigationElementTypeEnum::IfcNavigationElementType_BEACON; - if (s == "BUOY") return ::Ifc4x3_rc3::IfcNavigationElementTypeEnum::IfcNavigationElementType_BUOY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcNavigationElementTypeEnum::IfcNavigationElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcNavigationElementTypeEnum::IfcNavigationElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcNavigationElementTypeEnum::Value) IFC4X3_RC3_IfcNavigationElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcNavigationElementTypeEnum::operator Ifc4x3_rc3::IfcNavigationElementTypeEnum::Value() const { @@ -7596,21 +6064,11 @@ Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcObjectTypeEnum::Value Ifc4x3_rc3::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcObjectTypeEnum::Value) IFC4X3_RC3_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcObjectTypeEnum::operator Ifc4x3_rc3::IfcObjectTypeEnum::Value() const { @@ -7639,26 +6097,11 @@ Ifc4x3_rc3::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcObjectiveEnum::Value Ifc4x3_rc3::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcObjectiveEnum::Value) IFC4X3_RC3_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcObjectiveEnum::operator Ifc4x3_rc3::IfcObjectiveEnum::Value() const { @@ -7687,22 +6130,11 @@ Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcOccupantTypeEnum::Value Ifc4x3_rc3::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcOccupantTypeEnum::Value) IFC4X3_RC3_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcOccupantTypeEnum::operator Ifc4x3_rc3::IfcOccupantTypeEnum::Value() const { @@ -7731,17 +6163,11 @@ Ifc4x3_rc3::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcOpeningElementTypeEnum::Value Ifc4x3_rc3::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x3_rc3::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x3_rc3::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcOpeningElementTypeEnum::Value) IFC4X3_RC3_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcOpeningElementTypeEnum::operator Ifc4x3_rc3::IfcOpeningElementTypeEnum::Value() const { @@ -7770,20 +6196,11 @@ Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcOutletTypeEnum::Value Ifc4x3_rc3::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcOutletTypeEnum::Value) IFC4X3_RC3_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcOutletTypeEnum::operator Ifc4x3_rc3::IfcOutletTypeEnum::Value() const { @@ -7812,17 +6229,11 @@ Ifc4x3_rc3::IfcPavementTypeEnum::IfcPavementTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcPavementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLEXIBLE", "RIGID", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPavementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPavementTypeEnum::Value Ifc4x3_rc3::IfcPavementTypeEnum::FromString(const std::string& s) { - if (s == "FLEXIBLE") return ::Ifc4x3_rc3::IfcPavementTypeEnum::IfcPavementType_FLEXIBLE; - if (s == "RIGID") return ::Ifc4x3_rc3::IfcPavementTypeEnum::IfcPavementType_RIGID; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPavementTypeEnum::IfcPavementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPavementTypeEnum::IfcPavementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPavementTypeEnum::Value) IFC4X3_RC3_IfcPavementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPavementTypeEnum::operator Ifc4x3_rc3::IfcPavementTypeEnum::Value() const { @@ -7851,15 +6262,11 @@ Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const s } const char* Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::Value Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::Value) IFC4X3_RC3_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::operator Ifc4x3_rc3::IfcPerformanceHistoryTypeEnum::Value() const { @@ -7888,18 +6295,11 @@ Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum } const char* Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::Value Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::Value) IFC4X3_RC3_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::operator Ifc4x3_rc3::IfcPermeableCoveringOperationEnum::Value() const { @@ -7928,18 +6328,11 @@ Ifc4x3_rc3::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPermitTypeEnum::Value Ifc4x3_rc3::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x3_rc3::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x3_rc3::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x3_rc3::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPermitTypeEnum::Value) IFC4X3_RC3_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPermitTypeEnum::operator Ifc4x3_rc3::IfcPermitTypeEnum::Value() const { @@ -7968,16 +6361,11 @@ Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string } const char* Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::Value Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::Value) IFC4X3_RC3_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::operator Ifc4x3_rc3::IfcPhysicalOrVirtualEnum::Value() const { @@ -8006,19 +6394,11 @@ Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& } const char* Ifc4x3_rc3::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPileConstructionEnum::Value Ifc4x3_rc3::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPileConstructionEnum::Value) IFC4X3_RC3_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPileConstructionEnum::operator Ifc4x3_rc3::IfcPileConstructionEnum::Value() const { @@ -8047,21 +6427,11 @@ Ifc4x3_rc3::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPileTypeEnum::Value Ifc4x3_rc3::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPileTypeEnum::Value) IFC4X3_RC3_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPileTypeEnum::operator Ifc4x3_rc3::IfcPileTypeEnum::Value() const { @@ -8090,22 +6460,11 @@ Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPipeFittingTypeEnum::Value Ifc4x3_rc3::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPipeFittingTypeEnum::Value) IFC4X3_RC3_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPipeFittingTypeEnum::operator Ifc4x3_rc3::IfcPipeFittingTypeEnum::Value() const { @@ -8134,20 +6493,11 @@ Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPipeSegmentTypeEnum::Value Ifc4x3_rc3::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPipeSegmentTypeEnum::Value) IFC4X3_RC3_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPipeSegmentTypeEnum::operator Ifc4x3_rc3::IfcPipeSegmentTypeEnum::Value() const { @@ -8176,24 +6526,11 @@ Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "FLANGE_PLATE", "WEB_PLATE", "STIFFENER_PLATE", "GUSSET_PLATE", "COVER_PLATE", "SPLICE_PLATE", "BASE_PLATE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPlateTypeEnum::Value Ifc4x3_rc3::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "FLANGE_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_FLANGE_PLATE; - if (s == "WEB_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_WEB_PLATE; - if (s == "STIFFENER_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_STIFFENER_PLATE; - if (s == "GUSSET_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_GUSSET_PLATE; - if (s == "COVER_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_COVER_PLATE; - if (s == "SPLICE_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_SPLICE_PLATE; - if (s == "BASE_PLATE") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_BASE_PLATE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPlateTypeEnum::Value) IFC4X3_RC3_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPlateTypeEnum::operator Ifc4x3_rc3::IfcPlateTypeEnum::Value() const { @@ -8222,16 +6559,11 @@ Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepr } const char* Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X3_RC3_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x3_rc3::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -8260,22 +6592,11 @@ Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProcedureTypeEnum::Value Ifc4x3_rc3::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProcedureTypeEnum::Value) IFC4X3_RC3_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProcedureTypeEnum::operator Ifc4x3_rc3::IfcProcedureTypeEnum::Value() const { @@ -8304,15 +6625,11 @@ Ifc4x3_rc3::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4X3_RC3_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProfileTypeEnum::Value Ifc4x3_rc3::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4x3_rc3::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4x3_rc3::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProfileTypeEnum::Value) IFC4X3_RC3_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProfileTypeEnum::operator Ifc4x3_rc3::IfcProfileTypeEnum::Value() const { @@ -8341,20 +6658,11 @@ Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProjectOrderTypeEnum::Value Ifc4x3_rc3::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProjectOrderTypeEnum::Value) IFC4X3_RC3_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProjectOrderTypeEnum::operator Ifc4x3_rc3::IfcProjectOrderTypeEnum::Value() const { @@ -8383,15 +6691,11 @@ Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std } const char* Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::Value Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::Value) IFC4X3_RC3_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::operator Ifc4x3_rc3::IfcProjectedOrTrueLengthEnum::Value() const { @@ -8420,17 +6724,11 @@ Ifc4x3_rc3::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std } const char* Ifc4x3_rc3::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLISTER", "DEVIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProjectionElementTypeEnum::Value Ifc4x3_rc3::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "BLISTER") return ::Ifc4x3_rc3::IfcProjectionElementTypeEnum::IfcProjectionElementType_BLISTER; - if (s == "DEVIATOR") return ::Ifc4x3_rc3::IfcProjectionElementTypeEnum::IfcProjectionElementType_DEVIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProjectionElementTypeEnum::Value) IFC4X3_RC3_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProjectionElementTypeEnum::operator Ifc4x3_rc3::IfcProjectionElementTypeEnum::Value() const { @@ -8459,21 +6757,11 @@ Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const } const char* Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::Value Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::Value) IFC4X3_RC3_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::operator Ifc4x3_rc3::IfcPropertySetTemplateTypeEnum::Value() const { @@ -8502,19 +6790,11 @@ Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTripping } const char* Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X3_RC3_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x3_rc3::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -8543,25 +6823,11 @@ Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std:: } const char* Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "ANTI_ARCING_DEVICE", "SPARKGAP", "VOLTAGELIMITER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "ANTI_ARCING_DEVICE") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_ANTI_ARCING_DEVICE; - if (s == "SPARKGAP") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_SPARKGAP; - if (s == "VOLTAGELIMITER") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VOLTAGELIMITER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::Value) IFC4X3_RC3_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::operator Ifc4x3_rc3::IfcProtectiveDeviceTypeEnum::Value() const { @@ -8590,22 +6856,11 @@ Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcPumpTypeEnum::Value Ifc4x3_rc3::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcPumpTypeEnum::Value) IFC4X3_RC3_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcPumpTypeEnum::operator Ifc4x3_rc3::IfcPumpTypeEnum::Value() const { @@ -8634,21 +6889,11 @@ Ifc4x3_rc3::IfcRailTypeEnum::IfcRailTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRailTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RACKRAIL", "BLADE", "GUARDRAIL", "STOCKRAIL", "CHECKRAIL", "RAIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRailTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRailTypeEnum::Value Ifc4x3_rc3::IfcRailTypeEnum::FromString(const std::string& s) { - if (s == "RACKRAIL") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_RACKRAIL; - if (s == "BLADE") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_BLADE; - if (s == "GUARDRAIL") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_GUARDRAIL; - if (s == "STOCKRAIL") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_STOCKRAIL; - if (s == "CHECKRAIL") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_CHECKRAIL; - if (s == "RAIL") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_RAIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRailTypeEnum::IfcRailType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRailTypeEnum::Value) IFC4X3_RC3_IfcRailTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRailTypeEnum::operator Ifc4x3_rc3::IfcRailTypeEnum::Value() const { @@ -8677,19 +6922,11 @@ Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "FENCE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRailingTypeEnum::Value Ifc4x3_rc3::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "FENCE") return ::Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingType_FENCE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRailingTypeEnum::Value) IFC4X3_RC3_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRailingTypeEnum::operator Ifc4x3_rc3::IfcRailingTypeEnum::Value() const { @@ -8718,23 +6955,11 @@ Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcRailwayPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKSTRUCTURE", "TRACKSTRUCTUREPART", "LINESIDESTRUCTUREPART", "DILATATIONSUPERSTRUCTURE", "PLAINTRACKSUPESTRUCTURE", "LINESIDESTRUCTURE", "SUPERSTRUCTURE", "TURNOUTSUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRailwayPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRailwayPartTypeEnum::Value Ifc4x3_rc3::IfcRailwayPartTypeEnum::FromString(const std::string& s) { - if (s == "TRACKSTRUCTURE") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTURE; - if (s == "TRACKSTRUCTUREPART") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTUREPART; - if (s == "LINESIDESTRUCTUREPART") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTUREPART; - if (s == "DILATATIONSUPERSTRUCTURE") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_DILATATIONSUPERSTRUCTURE; - if (s == "PLAINTRACKSUPESTRUCTURE") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_PLAINTRACKSUPESTRUCTURE; - if (s == "LINESIDESTRUCTURE") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_SUPERSTRUCTURE; - if (s == "TURNOUTSUPERSTRUCTURE") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_TURNOUTSUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRailwayPartTypeEnum::IfcRailwayPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRailwayPartTypeEnum::Value) IFC4X3_RC3_IfcRailwayPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRailwayPartTypeEnum::operator Ifc4x3_rc3::IfcRailwayPartTypeEnum::Value() const { @@ -8763,15 +6988,11 @@ Ifc4x3_rc3::IfcRailwayTypeEnum::IfcRailwayTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRailwayTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRailwayTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRailwayTypeEnum::Value Ifc4x3_rc3::IfcRailwayTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRailwayTypeEnum::IfcRailwayType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRailwayTypeEnum::IfcRailwayType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRailwayTypeEnum::Value) IFC4X3_RC3_IfcRailwayTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRailwayTypeEnum::operator Ifc4x3_rc3::IfcRailwayTypeEnum::Value() const { @@ -8800,17 +7021,11 @@ Ifc4x3_rc3::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRampFlightTypeEnum::Value Ifc4x3_rc3::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc3::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4x3_rc3::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRampFlightTypeEnum::Value) IFC4X3_RC3_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRampFlightTypeEnum::operator Ifc4x3_rc3::IfcRampFlightTypeEnum::Value() const { @@ -8839,21 +7054,11 @@ Ifc4x3_rc3::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRampTypeEnum::Value Ifc4x3_rc3::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRampTypeEnum::Value) IFC4X3_RC3_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRampTypeEnum::operator Ifc4x3_rc3::IfcRampTypeEnum::Value() const { @@ -8882,21 +7087,11 @@ Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X3_RC3_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRecurrenceTypeEnum::Value Ifc4x3_rc3::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x3_rc3::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRecurrenceTypeEnum::Value) IFC4X3_RC3_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRecurrenceTypeEnum::operator Ifc4x3_rc3::IfcRecurrenceTypeEnum::Value() const { @@ -8925,19 +7120,11 @@ Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "KILOPOINT", "MILEPOINT", "STATION", "REFERENCEMARKER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReferentTypeEnum::Value Ifc4x3_rc3::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "KILOPOINT") return ::Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "MILEPOINT") return ::Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "STATION") return ::Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "REFERENCEMARKER") return ::Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentType_REFERENCEMARKER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReferentTypeEnum::Value) IFC4X3_RC3_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReferentTypeEnum::operator Ifc4x3_rc3::IfcReferentTypeEnum::Value() const { @@ -8966,23 +7153,11 @@ Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string } const char* Ifc4x3_rc3::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReflectanceMethodEnum::Value Ifc4x3_rc3::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReflectanceMethodEnum::Value) IFC4X3_RC3_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReflectanceMethodEnum::operator Ifc4x3_rc3::IfcReflectanceMethodEnum::Value() const { @@ -9011,21 +7186,11 @@ Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SURCHARGEPRELOADED", "VERTICALLYDRAINED", "DYNAMICALLYCOMPACTED", "REPLACED", "ROLLERCOMPACTED", "GROUTED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::Value Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::FromString(const std::string& s) { - if (s == "SURCHARGEPRELOADED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_SURCHARGEPRELOADED; - if (s == "VERTICALLYDRAINED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_VERTICALLYDRAINED; - if (s == "DYNAMICALLYCOMPACTED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_DYNAMICALLYCOMPACTED; - if (s == "REPLACED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_REPLACED; - if (s == "ROLLERCOMPACTED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_ROLLERCOMPACTED; - if (s == "GROUTED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_GROUTED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::Value) IFC4X3_RC3_IfcReinforcedSoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::operator Ifc4x3_rc3::IfcReinforcedSoilTypeEnum::Value() const { @@ -9054,23 +7219,11 @@ Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::stri } const char* Ifc4x3_rc3::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReinforcingBarRoleEnum::Value Ifc4x3_rc3::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReinforcingBarRoleEnum::Value) IFC4X3_RC3_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReinforcingBarRoleEnum::operator Ifc4x3_rc3::IfcReinforcingBarRoleEnum::Value() const { @@ -9099,15 +7252,11 @@ Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std } const char* Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::Value Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::Value) IFC4X3_RC3_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::operator Ifc4x3_rc3::IfcReinforcingBarSurfaceEnum::Value() const { @@ -9136,24 +7285,11 @@ Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "SPACEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReinforcingBarTypeEnum::Value Ifc4x3_rc3::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "SPACEBAR") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SPACEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReinforcingBarTypeEnum::Value) IFC4X3_RC3_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReinforcingBarTypeEnum::operator Ifc4x3_rc3::IfcReinforcingBarTypeEnum::Value() const { @@ -9182,15 +7318,11 @@ Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::st } const char* Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::Value Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::Value) IFC4X3_RC3_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::operator Ifc4x3_rc3::IfcReinforcingMeshTypeEnum::Value() const { @@ -9219,39 +7351,11 @@ Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRoadPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ROADSIDEPART", "BUS_STOP", "HARDSHOULDER", "INTERSECTION", "PASSINGBAY", "ROADWAYPLATEAU", "ROADSIDE", "REFUGEISLAND", "TOLLPLAZA", "CENTRALRESERVE", "SIDEWALK", "PARKINGBAY", "RAILWAYCROSSING", "PEDESTRIAN_CROSSING", "SOFTSHOULDER", "BICYCLECROSSING", "CENTRALISLAND", "SHOULDER", "TRAFFICLANE", "ROADSEGMENT", "ROUNDABOUT", "LAYBY", "CARRIAGEWAY", "TRAFFICISLAND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRoadPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRoadPartTypeEnum::Value Ifc4x3_rc3::IfcRoadPartTypeEnum::FromString(const std::string& s) { - if (s == "ROADSIDEPART") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDEPART; - if (s == "BUS_STOP") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_BUS_STOP; - if (s == "HARDSHOULDER") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_HARDSHOULDER; - if (s == "INTERSECTION") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_INTERSECTION; - if (s == "PASSINGBAY") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_PASSINGBAY; - if (s == "ROADWAYPLATEAU") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_ROADWAYPLATEAU; - if (s == "ROADSIDE") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDE; - if (s == "REFUGEISLAND") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_REFUGEISLAND; - if (s == "TOLLPLAZA") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_TOLLPLAZA; - if (s == "CENTRALRESERVE") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALRESERVE; - if (s == "SIDEWALK") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_SIDEWALK; - if (s == "PARKINGBAY") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_PARKINGBAY; - if (s == "RAILWAYCROSSING") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_RAILWAYCROSSING; - if (s == "PEDESTRIAN_CROSSING") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_PEDESTRIAN_CROSSING; - if (s == "SOFTSHOULDER") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_SOFTSHOULDER; - if (s == "BICYCLECROSSING") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_BICYCLECROSSING; - if (s == "CENTRALISLAND") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALISLAND; - if (s == "SHOULDER") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_SHOULDER; - if (s == "TRAFFICLANE") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICLANE; - if (s == "ROADSEGMENT") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSEGMENT; - if (s == "ROUNDABOUT") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_ROUNDABOUT; - if (s == "LAYBY") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_LAYBY; - if (s == "CARRIAGEWAY") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_CARRIAGEWAY; - if (s == "TRAFFICISLAND") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICISLAND; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRoadPartTypeEnum::IfcRoadPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRoadPartTypeEnum::Value) IFC4X3_RC3_IfcRoadPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRoadPartTypeEnum::operator Ifc4x3_rc3::IfcRoadPartTypeEnum::Value() const { @@ -9280,15 +7384,11 @@ Ifc4x3_rc3::IfcRoadTypeEnum::IfcRoadTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRoadTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRoadTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRoadTypeEnum::Value Ifc4x3_rc3::IfcRoadTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRoadTypeEnum::IfcRoadType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRoadTypeEnum::IfcRoadType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRoadTypeEnum::Value) IFC4X3_RC3_IfcRoadTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRoadTypeEnum::operator Ifc4x3_rc3::IfcRoadTypeEnum::Value() const { @@ -9317,36 +7417,11 @@ Ifc4x3_rc3::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRoleEnum::Value Ifc4x3_rc3::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRoleEnum::Value) IFC4X3_RC3_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRoleEnum::operator Ifc4x3_rc3::IfcRoleEnum::Value() const { @@ -9375,28 +7450,11 @@ Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcRoofTypeEnum::Value Ifc4x3_rc3::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcRoofTypeEnum::Value) IFC4X3_RC3_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcRoofTypeEnum::operator Ifc4x3_rc3::IfcRoofTypeEnum::Value() const { @@ -9425,29 +7483,11 @@ Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x3_rc3::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4X3_RC3_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSIPrefix::Value Ifc4x3_rc3::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4x3_rc3::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSIPrefix::Value) IFC4X3_RC3_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSIPrefix::operator Ifc4x3_rc3::IfcSIPrefix::Value() const { @@ -9476,43 +7516,11 @@ Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x3_rc3::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X3_RC3_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSIUnitName::Value Ifc4x3_rc3::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x3_rc3::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSIUnitName::Value) IFC4X3_RC3_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSIUnitName::operator Ifc4x3_rc3::IfcSIUnitName::Value() const { @@ -9541,25 +7549,11 @@ Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std:: } const char* Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::Value Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::Value) IFC4X3_RC3_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::operator Ifc4x3_rc3::IfcSanitaryTerminalTypeEnum::Value() const { @@ -9588,15 +7582,11 @@ Ifc4x3_rc3::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4X3_RC3_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSectionTypeEnum::Value Ifc4x3_rc3::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4x3_rc3::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4x3_rc3::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSectionTypeEnum::Value) IFC4X3_RC3_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSectionTypeEnum::operator Ifc4x3_rc3::IfcSectionTypeEnum::Value() const { @@ -9625,47 +7615,11 @@ Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 34 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "EARTHQUAKESENSOR", "FOREIGNOBJECTDETECTIONSENSOR", "OBSTACLESENSOR", "RAINSENSOR", "SNOWDEPTHSENSOR", "TRAINSENSOR", "TURNOUTCLOSURESENSOR", "WHEELSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSensorTypeEnum::Value Ifc4x3_rc3::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "EARTHQUAKESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_EARTHQUAKESENSOR; - if (s == "FOREIGNOBJECTDETECTIONSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_FOREIGNOBJECTDETECTIONSENSOR; - if (s == "OBSTACLESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_OBSTACLESENSOR; - if (s == "RAINSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_RAINSENSOR; - if (s == "SNOWDEPTHSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_SNOWDEPTHSENSOR; - if (s == "TRAINSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_TRAINSENSOR; - if (s == "TURNOUTCLOSURESENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_TURNOUTCLOSURESENSOR; - if (s == "WHEELSENSOR") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_WHEELSENSOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSensorTypeEnum::Value) IFC4X3_RC3_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSensorTypeEnum::operator Ifc4x3_rc3::IfcSensorTypeEnum::Value() const { @@ -9694,19 +7648,11 @@ Ifc4x3_rc3::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSequenceEnum::Value Ifc4x3_rc3::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4x3_rc3::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4x3_rc3::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4x3_rc3::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4x3_rc3::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSequenceEnum::Value) IFC4X3_RC3_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSequenceEnum::operator Ifc4x3_rc3::IfcSequenceEnum::Value() const { @@ -9735,18 +7681,11 @@ Ifc4x3_rc3::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcShadingDeviceTypeEnum::Value Ifc4x3_rc3::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4x3_rc3::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x3_rc3::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4x3_rc3::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcShadingDeviceTypeEnum::Value) IFC4X3_RC3_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcShadingDeviceTypeEnum::operator Ifc4x3_rc3::IfcShadingDeviceTypeEnum::Value() const { @@ -9775,18 +7714,11 @@ Ifc4x3_rc3::IfcSignTypeEnum::IfcSignTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSignTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARKER", "PICTORAL", "MIRROR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSignTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSignTypeEnum::Value Ifc4x3_rc3::IfcSignTypeEnum::FromString(const std::string& s) { - if (s == "MARKER") return ::Ifc4x3_rc3::IfcSignTypeEnum::IfcSignType_MARKER; - if (s == "PICTORAL") return ::Ifc4x3_rc3::IfcSignTypeEnum::IfcSignType_PICTORAL; - if (s == "MIRROR") return ::Ifc4x3_rc3::IfcSignTypeEnum::IfcSignType_MIRROR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSignTypeEnum::IfcSignType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSignTypeEnum::IfcSignType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSignTypeEnum::Value) IFC4X3_RC3_IfcSignTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSignTypeEnum::operator Ifc4x3_rc3::IfcSignTypeEnum::Value() const { @@ -9815,18 +7747,11 @@ Ifc4x3_rc3::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSignalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VISUAL", "AUDIO", "MIXED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSignalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSignalTypeEnum::Value Ifc4x3_rc3::IfcSignalTypeEnum::FromString(const std::string& s) { - if (s == "VISUAL") return ::Ifc4x3_rc3::IfcSignalTypeEnum::IfcSignalType_VISUAL; - if (s == "AUDIO") return ::Ifc4x3_rc3::IfcSignalTypeEnum::IfcSignalType_AUDIO; - if (s == "MIXED") return ::Ifc4x3_rc3::IfcSignalTypeEnum::IfcSignalType_MIXED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSignalTypeEnum::IfcSignalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSignalTypeEnum::IfcSignalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSignalTypeEnum::Value) IFC4X3_RC3_IfcSignalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSignalTypeEnum::operator Ifc4x3_rc3::IfcSignalTypeEnum::Value() const { @@ -9855,25 +7780,11 @@ Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum } const char* Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X3_RC3_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x3_rc3::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -9902,24 +7813,11 @@ Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "APPROACH_SLAB", "PAVING", "WEARING", "SIDEWALK", "TRACKSLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSlabTypeEnum::Value Ifc4x3_rc3::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "APPROACH_SLAB") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_APPROACH_SLAB; - if (s == "PAVING") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_PAVING; - if (s == "WEARING") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_WEARING; - if (s == "SIDEWALK") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_SIDEWALK; - if (s == "TRACKSLAB") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_TRACKSLAB; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSlabTypeEnum::Value) IFC4X3_RC3_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSlabTypeEnum::operator Ifc4x3_rc3::IfcSlabTypeEnum::Value() const { @@ -9948,17 +7846,11 @@ Ifc4x3_rc3::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSolarDeviceTypeEnum::Value Ifc4x3_rc3::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x3_rc3::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x3_rc3::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSolarDeviceTypeEnum::Value) IFC4X3_RC3_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSolarDeviceTypeEnum::operator Ifc4x3_rc3::IfcSolarDeviceTypeEnum::Value() const { @@ -9987,17 +7879,11 @@ Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::Value Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::Value) IFC4X3_RC3_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::operator Ifc4x3_rc3::IfcSpaceHeaterTypeEnum::Value() const { @@ -10026,21 +7912,11 @@ Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "BERTH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSpaceTypeEnum::Value Ifc4x3_rc3::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "BERTH") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_BERTH; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSpaceTypeEnum::Value) IFC4X3_RC3_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSpaceTypeEnum::operator Ifc4x3_rc3::IfcSpaceTypeEnum::Value() const { @@ -10069,24 +7945,11 @@ Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "RESERVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSpatialZoneTypeEnum::Value Ifc4x3_rc3::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "RESERVATION") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_RESERVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSpatialZoneTypeEnum::Value) IFC4X3_RC3_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSpatialZoneTypeEnum::operator Ifc4x3_rc3::IfcSpatialZoneTypeEnum::Value() const { @@ -10115,18 +7978,11 @@ Ifc4x3_rc3::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStackTerminalTypeEnum::Value Ifc4x3_rc3::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x3_rc3::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x3_rc3::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x3_rc3::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStackTerminalTypeEnum::Value) IFC4X3_RC3_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStackTerminalTypeEnum::operator Ifc4x3_rc3::IfcStackTerminalTypeEnum::Value() const { @@ -10155,20 +8011,11 @@ Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStairFlightTypeEnum::Value Ifc4x3_rc3::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStairFlightTypeEnum::Value) IFC4X3_RC3_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStairFlightTypeEnum::operator Ifc4x3_rc3::IfcStairFlightTypeEnum::Value() const { @@ -10197,30 +8044,11 @@ Ifc4x3_rc3::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "LADDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStairTypeEnum::Value Ifc4x3_rc3::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "LADDER") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_LADDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStairTypeEnum::Value) IFC4X3_RC3_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStairTypeEnum::operator Ifc4x3_rc3::IfcStairTypeEnum::Value() const { @@ -10249,18 +8077,11 @@ Ifc4x3_rc3::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4X3_RC3_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStateEnum::Value Ifc4x3_rc3::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4x3_rc3::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4x3_rc3::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4x3_rc3::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4x3_rc3::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4x3_rc3::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStateEnum::Value) IFC4X3_RC3_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStateEnum::operator Ifc4x3_rc3::IfcStateEnum::Value() const { @@ -10289,22 +8110,11 @@ Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEn } const char* Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::Value Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::Value) IFC4X3_RC3_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::operator Ifc4x3_rc3::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -10333,20 +8143,11 @@ Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(c } const char* Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::Value) IFC4X3_RC3_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::operator Ifc4x3_rc3::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -10375,19 +8176,11 @@ Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTy } const char* Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X3_RC3_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x3_rc3::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -10416,18 +8209,11 @@ Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEn } const char* Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X3_RC3_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x3_rc3::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -10456,17 +8242,11 @@ Ifc4x3_rc3::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const } const char* Ifc4x3_rc3::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSubContractResourceTypeEnum::Value Ifc4x3_rc3::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x3_rc3::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x3_rc3::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSubContractResourceTypeEnum::Value) IFC4X3_RC3_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSubContractResourceTypeEnum::operator Ifc4x3_rc3::IfcSubContractResourceTypeEnum::Value() const { @@ -10495,26 +8275,11 @@ Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "DEFECT", "HATCHMARKING", "LINEMARKING", "PAVEMENTSURFACEMARKING", "SYMBOLMARKING", "NONSKIDSURFACING", "RUMBLESTRIP", "TRANSVERSERUMBLESTRIP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::Value Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "DEFECT") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_DEFECT; - if (s == "HATCHMARKING") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_HATCHMARKING; - if (s == "LINEMARKING") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_LINEMARKING; - if (s == "PAVEMENTSURFACEMARKING") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_PAVEMENTSURFACEMARKING; - if (s == "SYMBOLMARKING") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_SYMBOLMARKING; - if (s == "NONSKIDSURFACING") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NONSKIDSURFACING; - if (s == "RUMBLESTRIP") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_RUMBLESTRIP; - if (s == "TRANSVERSERUMBLESTRIP") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TRANSVERSERUMBLESTRIP; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::Value) IFC4X3_RC3_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::operator Ifc4x3_rc3::IfcSurfaceFeatureTypeEnum::Value() const { @@ -10543,16 +8308,11 @@ Ifc4x3_rc3::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x3_rc3::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4X3_RC3_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSurfaceSide::Value Ifc4x3_rc3::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc3::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc3::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4x3_rc3::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSurfaceSide::Value) IFC4X3_RC3_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSurfaceSide::operator Ifc4x3_rc3::IfcSurfaceSide::Value() const { @@ -10581,26 +8341,11 @@ Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::st } const char* Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "RELAY", "START_AND_STOP_EQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::Value Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "RELAY") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_RELAY; - if (s == "START_AND_STOP_EQUIPMENT") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_START_AND_STOP_EQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::Value) IFC4X3_RC3_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::operator Ifc4x3_rc3::IfcSwitchingDeviceTypeEnum::Value() const { @@ -10629,18 +8374,11 @@ Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum } const char* Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "SUBRACK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::Value Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "SUBRACK") return ::Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_SUBRACK; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::Value) IFC4X3_RC3_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::operator Ifc4x3_rc3::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -10669,23 +8407,11 @@ Ifc4x3_rc3::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "OILRETENTIONTRAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTankTypeEnum::Value Ifc4x3_rc3::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "OILRETENTIONTRAY") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_OILRETENTIONTRAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTankTypeEnum::Value) IFC4X3_RC3_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTankTypeEnum::operator Ifc4x3_rc3::IfcTankTypeEnum::Value() const { @@ -10714,16 +8440,11 @@ Ifc4x3_rc3::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTaskDurationEnum::Value Ifc4x3_rc3::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x3_rc3::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x3_rc3::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTaskDurationEnum::Value) IFC4X3_RC3_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTaskDurationEnum::operator Ifc4x3_rc3::IfcTaskDurationEnum::Value() const { @@ -10752,27 +8473,11 @@ Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTaskTypeEnum::Value Ifc4x3_rc3::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTaskTypeEnum::Value) IFC4X3_RC3_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTaskTypeEnum::operator Ifc4x3_rc3::IfcTaskTypeEnum::Value() const { @@ -10801,18 +8506,11 @@ Ifc4x3_rc3::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTendonAnchorTypeEnum::Value Ifc4x3_rc3::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x3_rc3::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x3_rc3::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x3_rc3::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTendonAnchorTypeEnum::Value) IFC4X3_RC3_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTendonAnchorTypeEnum::operator Ifc4x3_rc3::IfcTendonAnchorTypeEnum::Value() const { @@ -10841,20 +8539,11 @@ Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcTendonConduitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DUCT", "COUPLER", "GROUTING_DUCT", "TRUMPET", "DIABOLO", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTendonConduitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTendonConduitTypeEnum::Value Ifc4x3_rc3::IfcTendonConduitTypeEnum::FromString(const std::string& s) { - if (s == "DUCT") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_DUCT; - if (s == "COUPLER") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_COUPLER; - if (s == "GROUTING_DUCT") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_GROUTING_DUCT; - if (s == "TRUMPET") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_TRUMPET; - if (s == "DIABOLO") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_DIABOLO; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTendonConduitTypeEnum::IfcTendonConduitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTendonConduitTypeEnum::Value) IFC4X3_RC3_IfcTendonConduitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTendonConduitTypeEnum::operator Ifc4x3_rc3::IfcTendonConduitTypeEnum::Value() const { @@ -10883,19 +8572,11 @@ Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTendonTypeEnum::Value Ifc4x3_rc3::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTendonTypeEnum::Value) IFC4X3_RC3_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTendonTypeEnum::operator Ifc4x3_rc3::IfcTendonTypeEnum::Value() const { @@ -10924,17 +8605,11 @@ Ifc4x3_rc3::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x3_rc3::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4X3_RC3_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTextPath::Value Ifc4x3_rc3::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc3::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x3_rc3::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x3_rc3::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4x3_rc3::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTextPath::Value) IFC4X3_RC3_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTextPath::operator Ifc4x3_rc3::IfcTextPath::Value() const { @@ -10963,20 +8638,11 @@ Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::Value Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::Value) IFC4X3_RC3_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::operator Ifc4x3_rc3::IfcTimeSeriesDataTypeEnum::Value() const { @@ -11005,23 +8671,11 @@ Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcTrackElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKENDOFALIGNMENT", "BLOCKINGDEVICE", "VEHICLESTOP", "SLEEPER", "HALF_SET_OF_BLADES", "SPEEDREGULATOR", "DERAILER", "FROG", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTrackElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTrackElementTypeEnum::Value Ifc4x3_rc3::IfcTrackElementTypeEnum::FromString(const std::string& s) { - if (s == "TRACKENDOFALIGNMENT") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_TRACKENDOFALIGNMENT; - if (s == "BLOCKINGDEVICE") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_BLOCKINGDEVICE; - if (s == "VEHICLESTOP") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_VEHICLESTOP; - if (s == "SLEEPER") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_SLEEPER; - if (s == "HALF_SET_OF_BLADES") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_HALF_SET_OF_BLADES; - if (s == "SPEEDREGULATOR") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_SPEEDREGULATOR; - if (s == "DERAILER") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_DERAILER; - if (s == "FROG") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_FROG; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTrackElementTypeEnum::IfcTrackElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTrackElementTypeEnum::Value) IFC4X3_RC3_IfcTrackElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTrackElementTypeEnum::operator Ifc4x3_rc3::IfcTrackElementTypeEnum::Value() const { @@ -11050,22 +8704,11 @@ Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) } const char* Ifc4x3_rc3::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "CHOPPER", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTransformerTypeEnum::Value Ifc4x3_rc3::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "CHOPPER") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_CHOPPER; - if (s == "COMBINED") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTransformerTypeEnum::Value) IFC4X3_RC3_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTransformerTypeEnum::operator Ifc4x3_rc3::IfcTransformerTypeEnum::Value() const { @@ -11094,17 +8737,11 @@ Ifc4x3_rc3::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x3_rc3::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4X3_RC3_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTransitionCode::Value Ifc4x3_rc3::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4x3_rc3::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4x3_rc3::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x3_rc3::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x3_rc3::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTransitionCode::Value) IFC4X3_RC3_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTransitionCode::operator Ifc4x3_rc3::IfcTransitionCode::Value() const { @@ -11133,21 +8770,11 @@ Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedTypeEnum(c } const char* Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "HAULINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::Value Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_LIFTINGGEAR; - if (s == "HAULINGGEAR") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_HAULINGGEAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::Value) IFC4X3_RC3_IfcTransportElementFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::operator Ifc4x3_rc3::IfcTransportElementFixedTypeEnum::Value() const { @@ -11176,22 +8803,11 @@ Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType } const char* Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VEHICLE", "VEHICLETRACKED", "ROLLINGSTOCK", "VEHICLEWHEELED", "VEHICLEAIR", "CARGO", "VEHICLEMARINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::Value Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::FromString(const std::string& s) { - if (s == "VEHICLE") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLE; - if (s == "VEHICLETRACKED") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLETRACKED; - if (s == "ROLLINGSTOCK") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_ROLLINGSTOCK; - if (s == "VEHICLEWHEELED") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEWHEELED; - if (s == "VEHICLEAIR") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEAIR; - if (s == "CARGO") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_CARGO; - if (s == "VEHICLEMARINE") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEMARINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::Value) IFC4X3_RC3_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::operator Ifc4x3_rc3::IfcTransportElementNonFixedTypeEnum::Value() const { @@ -11220,16 +8836,11 @@ Ifc4x3_rc3::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4x3_rc3::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC3_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTrimmingPreference::Value Ifc4x3_rc3::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x3_rc3::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x3_rc3::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc3::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTrimmingPreference::Value) IFC4X3_RC3_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTrimmingPreference::operator Ifc4x3_rc3::IfcTrimmingPreference::Value() const { @@ -11258,16 +8869,11 @@ Ifc4x3_rc3::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcTubeBundleTypeEnum::Value Ifc4x3_rc3::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x3_rc3::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcTubeBundleTypeEnum::Value) IFC4X3_RC3_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcTubeBundleTypeEnum::operator Ifc4x3_rc3::IfcTubeBundleTypeEnum::Value() const { @@ -11296,43 +8902,11 @@ Ifc4x3_rc3::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcUnitEnum::Value Ifc4x3_rc3::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcUnitEnum::Value) IFC4X3_RC3_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcUnitEnum::operator Ifc4x3_rc3::IfcUnitEnum::Value() const { @@ -11361,24 +8935,11 @@ Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(c } const char* Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::Value Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "COMBINED") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::Value) IFC4X3_RC3_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::operator Ifc4x3_rc3::IfcUnitaryControlElementTypeEnum::Value() const { @@ -11407,20 +8968,11 @@ Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std:: } const char* Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::Value Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::Value) IFC4X3_RC3_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::operator Ifc4x3_rc3::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -11449,36 +9001,11 @@ Ifc4x3_rc3::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcValveTypeEnum::Value Ifc4x3_rc3::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcValveTypeEnum::Value) IFC4X3_RC3_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcValveTypeEnum::operator Ifc4x3_rc3::IfcValveTypeEnum::Value() const { @@ -11507,21 +9034,11 @@ Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::st } const char* Ifc4x3_rc3::IfcVibrationDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_YIELD", "SHEAR_YIELD", "AXIAL_YIELD", "FRICTION", "VISCOUS", "RUBBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcVibrationDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcVibrationDamperTypeEnum::Value Ifc4x3_rc3::IfcVibrationDamperTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_YIELD") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_BENDING_YIELD; - if (s == "SHEAR_YIELD") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_SHEAR_YIELD; - if (s == "AXIAL_YIELD") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_AXIAL_YIELD; - if (s == "FRICTION") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_FRICTION; - if (s == "VISCOUS") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_VISCOUS; - if (s == "RUBBER") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_RUBBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcVibrationDamperTypeEnum::Value) IFC4X3_RC3_IfcVibrationDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcVibrationDamperTypeEnum::operator Ifc4x3_rc3::IfcVibrationDamperTypeEnum::Value() const { @@ -11550,18 +9067,11 @@ Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std } const char* Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "BASE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::Value Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "BASE") return ::Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_BASE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::Value) IFC4X3_RC3_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::operator Ifc4x3_rc3::IfcVibrationIsolatorTypeEnum::Value() const { @@ -11590,21 +9100,11 @@ Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::Value Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::Value) IFC4X3_RC3_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::operator Ifc4x3_rc3::IfcVoidingFeatureTypeEnum::Value() const { @@ -11633,26 +9133,11 @@ Ifc4x3_rc3::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "RETAININGWALL", "WAVEWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWallTypeEnum::Value Ifc4x3_rc3::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "RETAININGWALL") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_RETAININGWALL; - if (s == "WAVEWALL") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_WAVEWALL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWallTypeEnum::Value) IFC4X3_RC3_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWallTypeEnum::operator Ifc4x3_rc3::IfcWallTypeEnum::Value() const { @@ -11681,22 +9166,11 @@ Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string } const char* Ifc4x3_rc3::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWasteTerminalTypeEnum::Value Ifc4x3_rc3::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWasteTerminalTypeEnum::Value) IFC4X3_RC3_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWasteTerminalTypeEnum::operator Ifc4x3_rc3::IfcWasteTerminalTypeEnum::Value() const { @@ -11725,27 +9199,11 @@ Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std:: } const char* Ifc4x3_rc3::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWindowPanelOperationEnum::Value Ifc4x3_rc3::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWindowPanelOperationEnum::Value) IFC4X3_RC3_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWindowPanelOperationEnum::operator Ifc4x3_rc3::IfcWindowPanelOperationEnum::Value() const { @@ -11774,19 +9232,11 @@ Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::st } const char* Ifc4x3_rc3::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWindowPanelPositionEnum::Value Ifc4x3_rc3::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWindowPanelPositionEnum::Value) IFC4X3_RC3_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWindowPanelPositionEnum::operator Ifc4x3_rc3::IfcWindowPanelPositionEnum::Value() const { @@ -11815,21 +9265,11 @@ Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const } const char* Ifc4x3_rc3::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWindowStyleConstructionEnum::Value Ifc4x3_rc3::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWindowStyleConstructionEnum::Value) IFC4X3_RC3_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWindowStyleConstructionEnum::operator Ifc4x3_rc3::IfcWindowStyleConstructionEnum::Value() const { @@ -11858,24 +9298,11 @@ Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std:: } const char* Ifc4x3_rc3::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWindowStyleOperationEnum::Value Ifc4x3_rc3::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWindowStyleOperationEnum::Value) IFC4X3_RC3_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWindowStyleOperationEnum::operator Ifc4x3_rc3::IfcWindowStyleOperationEnum::Value() const { @@ -11904,18 +9331,11 @@ Ifc4x3_rc3::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWindowTypeEnum::Value Ifc4x3_rc3::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4x3_rc3::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4x3_rc3::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4x3_rc3::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWindowTypeEnum::Value) IFC4X3_RC3_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWindowTypeEnum::operator Ifc4x3_rc3::IfcWindowTypeEnum::Value() const { @@ -11944,24 +9364,11 @@ Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const s } const char* Ifc4x3_rc3::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWindowTypePartitioningEnum::Value Ifc4x3_rc3::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWindowTypePartitioningEnum::Value) IFC4X3_RC3_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWindowTypePartitioningEnum::operator Ifc4x3_rc3::IfcWindowTypePartitioningEnum::Value() const { @@ -11990,18 +9397,11 @@ Ifc4x3_rc3::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWorkCalendarTypeEnum::Value Ifc4x3_rc3::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x3_rc3::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x3_rc3::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x3_rc3::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWorkCalendarTypeEnum::Value) IFC4X3_RC3_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWorkCalendarTypeEnum::operator Ifc4x3_rc3::IfcWorkCalendarTypeEnum::Value() const { @@ -12030,18 +9430,11 @@ Ifc4x3_rc3::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc3::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWorkPlanTypeEnum::Value Ifc4x3_rc3::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc3::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc3::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc3::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWorkPlanTypeEnum::Value) IFC4X3_RC3_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWorkPlanTypeEnum::operator Ifc4x3_rc3::IfcWorkPlanTypeEnum::Value() const { @@ -12070,18 +9463,11 @@ Ifc4x3_rc3::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc3::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC3_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc3::IfcWorkScheduleTypeEnum::Value Ifc4x3_rc3::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc3::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc3::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc3::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc3::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc3::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc3::IfcWorkScheduleTypeEnum::Value) IFC4X3_RC3_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc3::IfcWorkScheduleTypeEnum::operator Ifc4x3_rc3::IfcWorkScheduleTypeEnum::Value() const { diff --git a/src/ifcparse/Ifc4x3_rc4-schema.cpp b/src/ifcparse/Ifc4x3_rc4-schema.cpp index 0c875db269..d2b935b97b 100644 --- a/src/ifcparse/Ifc4x3_rc4-schema.cpp +++ b/src/ifcparse/Ifc4x3_rc4-schema.cpp @@ -2607,6 +2607,3913 @@ class IFC4X3_RC4_instance_factory : public IfcParse::instance_factory { } }; +using namespace std::string_literals; +static std::string strings[] = {"IfcAbsorbedDoseMeasure"s, +"IfcAccelerationMeasure"s, +"IfcActionRequestTypeEnum"s, +"EMAIL"s, +"FAX"s, +"PHONE"s, +"POST"s, +"VERBAL"s, +"USERDEFINED"s, +"NOTDEFINED"s, +"IfcActionSourceTypeEnum"s, +"DEAD_LOAD_G"s, +"COMPLETION_G1"s, +"LIVE_LOAD_Q"s, +"SNOW_S"s, +"WIND_W"s, +"PRESTRESSING_P"s, +"SETTLEMENT_U"s, +"TEMPERATURE_T"s, +"EARTHQUAKE_E"s, +"FIRE"s, +"IMPULSE"s, +"IMPACT"s, +"TRANSPORT"s, +"ERECTION"s, +"PROPPING"s, +"SYSTEM_IMPERFECTION"s, +"SHRINKAGE"s, +"CREEP"s, +"LACK_OF_FIT"s, +"BUOYANCY"s, +"ICE"s, +"CURRENT"s, +"WAVE"s, +"RAIN"s, +"BRAKES"s, +"IfcActionTypeEnum"s, +"PERMANENT_G"s, +"VARIABLE_Q"s, +"EXTRAORDINARY_A"s, +"IfcActuatorTypeEnum"s, +"ELECTRICACTUATOR"s, +"HANDOPERATEDACTUATOR"s, +"HYDRAULICACTUATOR"s, +"PNEUMATICACTUATOR"s, +"THERMOSTATICACTUATOR"s, +"IfcAddressTypeEnum"s, +"OFFICE"s, +"SITE"s, +"HOME"s, +"DISTRIBUTIONPOINT"s, +"IfcAirTerminalBoxTypeEnum"s, +"CONSTANTFLOW"s, +"VARIABLEFLOWPRESSUREDEPENDANT"s, +"VARIABLEFLOWPRESSUREINDEPENDANT"s, +"IfcAirTerminalTypeEnum"s, +"DIFFUSER"s, +"GRILLE"s, +"LOUVRE"s, +"REGISTER"s, +"IfcAirToAirHeatRecoveryTypeEnum"s, +"FIXEDPLATECOUNTERFLOWEXCHANGER"s, +"FIXEDPLATECROSSFLOWEXCHANGER"s, +"FIXEDPLATEPARALLELFLOWEXCHANGER"s, +"ROTARYWHEEL"s, +"RUNAROUNDCOILLOOP"s, +"HEATPIPE"s, +"TWINTOWERENTHALPYRECOVERYLOOPS"s, +"THERMOSIPHONSEALEDTUBEHEATEXCHANGERS"s, +"THERMOSIPHONCOILTYPEHEATEXCHANGERS"s, +"IfcAlarmTypeEnum"s, +"BELL"s, +"BREAKGLASSBUTTON"s, +"LIGHT"s, +"MANUALPULLBOX"s, +"SIREN"s, +"WHISTLE"s, +"RAILWAYCROCODILE"s, +"RAILWAYDETONATOR"s, +"IfcAlignmentCantSegmentTypeEnum"s, +"BLOSSCURVE"s, +"CONSTANTCANT"s, +"COSINECURVE"s, +"HELMERTCURVE"s, +"LINEARTRANSITION"s, +"SINECURVE"s, +"VIENNESEBEND"s, +"IfcAlignmentHorizontalSegmentTypeEnum"s, +"LINE"s, +"CIRCULARARC"s, +"CLOTHOID"s, +"CUBIC"s, +"IfcAlignmentTypeEnum"s, +"IfcAlignmentVerticalSegmentTypeEnum"s, +"CONSTANTGRADIENT"s, +"PARABOLICARC"s, +"IfcAmountOfSubstanceMeasure"s, +"IfcAnalysisModelTypeEnum"s, +"IN_PLANE_LOADING_2D"s, +"OUT_PLANE_LOADING_2D"s, +"LOADING_3D"s, +"IfcAnalysisTheoryTypeEnum"s, +"FIRST_ORDER_THEORY"s, +"SECOND_ORDER_THEORY"s, +"THIRD_ORDER_THEORY"s, +"FULL_NONLINEAR_THEORY"s, +"IfcAngularVelocityMeasure"s, +"IfcAnnotationTypeEnum"s, +"ASSUMEDPOINT"s, +"ASBUILTAREA"s, +"ASBUILTLINE"s, +"NON_PHYSICAL_SIGNAL"s, +"ASSUMEDLINE"s, +"WIDTHEVENT"s, +"ASSUMEDAREA"s, +"SUPERELEVATIONEVENT"s, +"ASBUILTPOINT"s, +"IfcAreaDensityMeasure"s, +"IfcAreaMeasure"s, +"IfcArithmeticOperatorEnum"s, +"ADD"s, +"DIVIDE"s, +"MULTIPLY"s, +"SUBTRACT"s, +"IfcAssemblyPlaceEnum"s, +"FACTORY"s, +"IfcAudioVisualApplianceTypeEnum"s, +"AMPLIFIER"s, +"CAMERA"s, +"DISPLAY"s, +"MICROPHONE"s, +"PLAYER"s, +"PROJECTOR"s, +"RECEIVER"s, +"SPEAKER"s, +"SWITCHER"s, +"TELEPHONE"s, +"TUNER"s, +"COMMUNICATIONTERMINAL"s, +"RECORDINGEQUIPMENT"s, +"IfcBSplineCurveForm"s, +"POLYLINE_FORM"s, +"CIRCULAR_ARC"s, +"ELLIPTIC_ARC"s, +"PARABOLIC_ARC"s, +"HYPERBOLIC_ARC"s, +"UNSPECIFIED"s, +"IfcBSplineSurfaceForm"s, +"PLANE_SURF"s, +"CYLINDRICAL_SURF"s, +"CONICAL_SURF"s, +"SPHERICAL_SURF"s, +"TOROIDAL_SURF"s, +"SURF_OF_REVOLUTION"s, +"RULED_SURF"s, +"GENERALISED_CONE"s, +"QUADRIC_SURF"s, +"SURF_OF_LINEAR_EXTRUSION"s, +"IfcBeamTypeEnum"s, +"BEAM"s, +"JOIST"s, +"HOLLOWCORE"s, +"LINTEL"s, +"SPANDREL"s, +"T_BEAM"s, +"GIRDER_SEGMENT"s, +"DIAPHRAGM"s, +"PIERCAP"s, +"HATSTONE"s, +"CORNICE"s, +"EDGEBEAM"s, +"IfcBearingTypeDisplacementEnum"s, +"FIXED_MOVEMENT"s, +"GUIDED_LONGITUDINAL"s, +"GUIDED_TRANSVERSAL"s, +"FREE_MOVEMENT"s, +"IfcBearingTypeEnum"s, +"CYLINDRICAL"s, +"SPHERICAL"s, +"ELASTOMERIC"s, +"POT"s, +"GUIDE"s, +"ROCKER"s, +"ROLLER"s, +"DISK"s, +"IfcBenchmarkEnum"s, +"GREATERTHAN"s, +"GREATERTHANOREQUALTO"s, +"LESSTHAN"s, +"LESSTHANOREQUALTO"s, +"EQUALTO"s, +"NOTEQUALTO"s, +"INCLUDES"s, +"NOTINCLUDES"s, +"INCLUDEDIN"s, +"NOTINCLUDEDIN"s, +"IfcBinary"s, +"IfcBoilerTypeEnum"s, +"WATER"s, +"STEAM"s, +"IfcBoolean"s, +"IfcBooleanOperator"s, +"UNION"s, +"INTERSECTION"s, +"DIFFERENCE"s, +"IfcBridgePartTypeEnum"s, +"ABUTMENT"s, +"DECK"s, +"DECK_SEGMENT"s, +"FOUNDATION"s, +"PIER"s, +"PIER_SEGMENT"s, +"PYLON"s, +"SUBSTRUCTURE"s, +"SUPERSTRUCTURE"s, +"SURFACESTRUCTURE"s, +"IfcBridgeTypeEnum"s, +"ARCHED"s, +"CABLE_STAYED"s, +"CANTILEVER"s, +"CULVERT"s, +"FRAMEWORK"s, +"GIRDER"s, +"SUSPENSION"s, +"TRUSS"s, +"IfcBuildingElementPartTypeEnum"s, +"INSULATION"s, +"PRECASTPANEL"s, +"APRON"s, +"ARMOURUNIT"s, +"SAFETYCAGE"s, +"IfcBuildingElementProxyTypeEnum"s, +"COMPLEX"s, +"ELEMENT"s, +"PARTIAL"s, +"PROVISIONFORVOID"s, +"PROVISIONFORSPACE"s, +"IfcBuildingSystemTypeEnum"s, +"FENESTRATION"s, +"LOADBEARING"s, +"OUTERSHELL"s, +"SHADING"s, +"REINFORCING"s, +"PRESTRESSING"s, +"EROSIONPREVENTION"s, +"IfcBuiltSystemTypeEnum"s, +"MOORING"s, +"TRACKCIRCUIT"s, +"IfcBurnerTypeEnum"s, +"IfcCableCarrierFittingTypeEnum"s, +"BEND"s, +"CROSS"s, +"REDUCER"s, +"TEE"s, +"IfcCableCarrierSegmentTypeEnum"s, +"CABLELADDERSEGMENT"s, +"CABLETRAYSEGMENT"s, +"CABLETRUNKINGSEGMENT"s, +"CONDUITSEGMENT"s, +"CABLEBRACKET"s, +"CATENARYWIRE"s, +"DROPPER"s, +"IfcCableFittingTypeEnum"s, +"CONNECTOR"s, +"ENTRY"s, +"EXIT"s, +"JUNCTION"s, +"TRANSITION"s, +"FANOUT"s, +"IfcCableSegmentTypeEnum"s, +"BUSBARSEGMENT"s, +"CABLESEGMENT"s, +"CONDUCTORSEGMENT"s, +"CORESEGMENT"s, +"CONTACTWIRESEGMENT"s, +"FIBERSEGMENT"s, +"FIBERTUBE"s, +"OPTICALCABLESEGMENT"s, +"STITCHWIRE"s, +"WIREPAIRSEGMENT"s, +"IfcCaissonFoundationTypeEnum"s, +"WELL"s, +"CAISSON"s, +"IfcCardinalPointReference"s, +"IfcChangeActionEnum"s, +"NOCHANGE"s, +"MODIFIED"s, +"ADDED"s, +"DELETED"s, +"IfcChillerTypeEnum"s, +"AIRCOOLED"s, +"WATERCOOLED"s, +"HEATRECOVERY"s, +"IfcChimneyTypeEnum"s, +"IfcCoilTypeEnum"s, +"DXCOOLINGCOIL"s, +"ELECTRICHEATINGCOIL"s, +"GASHEATINGCOIL"s, +"HYDRONICCOIL"s, +"STEAMHEATINGCOIL"s, +"WATERCOOLINGCOIL"s, +"WATERHEATINGCOIL"s, +"IfcColumnTypeEnum"s, +"COLUMN"s, +"PILASTER"s, +"PIERSTEM"s, +"PIERSTEM_SEGMENT"s, +"STANDCOLUMN"s, +"IfcCommunicationsApplianceTypeEnum"s, +"ANTENNA"s, +"COMPUTER"s, +"GATEWAY"s, +"MODEM"s, +"NETWORKAPPLIANCE"s, +"NETWORKBRIDGE"s, +"NETWORKHUB"s, +"PRINTER"s, +"REPEATER"s, +"ROUTER"s, +"SCANNER"s, +"AUTOMATON"s, +"INTELLIGENTPERIPHERAL"s, +"IPNETWORKEQUIPMENT"s, +"OPTICALNETWORKUNIT"s, +"TELECOMMAND"s, +"TELEPHONYEXCHANGE"s, +"TRANSITIONCOMPONENT"s, +"TRANSPONDER"s, +"TRANSPORTEQUIPMENT"s, +"OPTICALLINETERMINAL"s, +"LINESIDEELECTRONICUNIT"s, +"RADIOBLOCKCENTER"s, +"IfcComplexNumber"s, +"IfcComplexPropertyTemplateTypeEnum"s, +"P_COMPLEX"s, +"Q_COMPLEX"s, +"IfcCompoundPlaneAngleMeasure"s, +"IfcCompressorTypeEnum"s, +"DYNAMIC"s, +"RECIPROCATING"s, +"ROTARY"s, +"SCROLL"s, +"TROCHOIDAL"s, +"SINGLESTAGE"s, +"BOOSTER"s, +"OPENTYPE"s, +"HERMETIC"s, +"SEMIHERMETIC"s, +"WELDEDSHELLHERMETIC"s, +"ROLLINGPISTON"s, +"ROTARYVANE"s, +"SINGLESCREW"s, +"TWINSCREW"s, +"IfcCondenserTypeEnum"s, +"EVAPORATIVECOOLED"s, +"WATERCOOLEDBRAZEDPLATE"s, +"WATERCOOLEDSHELLCOIL"s, +"WATERCOOLEDSHELLTUBE"s, +"WATERCOOLEDTUBEINTUBE"s, +"IfcConnectionTypeEnum"s, +"ATPATH"s, +"ATSTART"s, +"ATEND"s, +"IfcConstraintEnum"s, +"HARD"s, +"SOFT"s, +"ADVISORY"s, +"IfcConstructionEquipmentResourceTypeEnum"s, +"DEMOLISHING"s, +"EARTHMOVING"s, +"ERECTING"s, +"HEATING"s, +"LIGHTING"s, +"PAVING"s, +"PUMPING"s, +"TRANSPORTING"s, +"IfcConstructionMaterialResourceTypeEnum"s, +"AGGREGATES"s, +"CONCRETE"s, +"DRYWALL"s, +"FUEL"s, +"GYPSUM"s, +"MASONRY"s, +"METAL"s, +"PLASTIC"s, +"WOOD"s, +"IfcConstructionProductResourceTypeEnum"s, +"ASSEMBLY"s, +"FORMWORK"s, +"IfcContextDependentMeasure"s, +"IfcControllerTypeEnum"s, +"FLOATING"s, +"PROGRAMMABLE"s, +"PROPORTIONAL"s, +"MULTIPOSITION"s, +"TWOPOSITION"s, +"IfcConveyorSegmentTypeEnum"s, +"CHUTECONVEYOR"s, +"BELTCONVEYOR"s, +"SCREWCONVEYOR"s, +"BUCKETCONVEYOR"s, +"IfcCooledBeamTypeEnum"s, +"ACTIVE"s, +"PASSIVE"s, +"IfcCoolingTowerTypeEnum"s, +"NATURALDRAFT"s, +"MECHANICALINDUCEDDRAFT"s, +"MECHANICALFORCEDDRAFT"s, +"IfcCostItemTypeEnum"s, +"IfcCostScheduleTypeEnum"s, +"BUDGET"s, +"COSTPLAN"s, +"ESTIMATE"s, +"TENDER"s, +"PRICEDBILLOFQUANTITIES"s, +"UNPRICEDBILLOFQUANTITIES"s, +"SCHEDULEOFRATES"s, +"IfcCountMeasure"s, +"IfcCourseTypeEnum"s, +"ARMOUR"s, +"FILTER"s, +"BALLASTBED"s, +"CORE"s, +"PAVEMENT"s, +"PROTECTION"s, +"IfcCoveringTypeEnum"s, +"CEILING"s, +"FLOORING"s, +"CLADDING"s, +"ROOFING"s, +"MOLDING"s, +"SKIRTINGBOARD"s, +"MEMBRANE"s, +"SLEEVING"s, +"WRAPPING"s, +"COPING"s, +"IfcCrewResourceTypeEnum"s, +"IfcCurtainWallTypeEnum"s, +"IfcCurvatureMeasure"s, +"IfcCurveInterpolationEnum"s, +"LINEAR"s, +"LOG_LINEAR"s, +"LOG_LOG"s, +"IfcDamperTypeEnum"s, +"BACKDRAFTDAMPER"s, +"BALANCINGDAMPER"s, +"BLASTDAMPER"s, +"CONTROLDAMPER"s, +"FIREDAMPER"s, +"FIRESMOKEDAMPER"s, +"FUMEHOODEXHAUST"s, +"GRAVITYDAMPER"s, +"GRAVITYRELIEFDAMPER"s, +"RELIEFDAMPER"s, +"SMOKEDAMPER"s, +"IfcDataOriginEnum"s, +"MEASURED"s, +"PREDICTED"s, +"SIMULATED"s, +"IfcDate"s, +"IfcDateTime"s, +"IfcDayInMonthNumber"s, +"IfcDayInWeekNumber"s, +"IfcDerivedUnitEnum"s, +"ANGULARVELOCITYUNIT"s, +"AREADENSITYUNIT"s, +"COMPOUNDPLANEANGLEUNIT"s, +"DYNAMICVISCOSITYUNIT"s, +"HEATFLUXDENSITYUNIT"s, +"INTEGERCOUNTRATEUNIT"s, +"ISOTHERMALMOISTURECAPACITYUNIT"s, +"KINEMATICVISCOSITYUNIT"s, +"LINEARVELOCITYUNIT"s, +"MASSDENSITYUNIT"s, +"MASSFLOWRATEUNIT"s, +"MOISTUREDIFFUSIVITYUNIT"s, +"MOLECULARWEIGHTUNIT"s, +"SPECIFICHEATCAPACITYUNIT"s, +"THERMALADMITTANCEUNIT"s, +"THERMALCONDUCTANCEUNIT"s, +"THERMALRESISTANCEUNIT"s, +"THERMALTRANSMITTANCEUNIT"s, +"VAPORPERMEABILITYUNIT"s, +"VOLUMETRICFLOWRATEUNIT"s, +"ROTATIONALFREQUENCYUNIT"s, +"TORQUEUNIT"s, +"MOMENTOFINERTIAUNIT"s, +"LINEARMOMENTUNIT"s, +"LINEARFORCEUNIT"s, +"PLANARFORCEUNIT"s, +"MODULUSOFELASTICITYUNIT"s, +"SHEARMODULUSUNIT"s, +"LINEARSTIFFNESSUNIT"s, +"ROTATIONALSTIFFNESSUNIT"s, +"MODULUSOFSUBGRADEREACTIONUNIT"s, +"ACCELERATIONUNIT"s, +"CURVATUREUNIT"s, +"HEATINGVALUEUNIT"s, +"IONCONCENTRATIONUNIT"s, +"LUMINOUSINTENSITYDISTRIBUTIONUNIT"s, +"MASSPERLENGTHUNIT"s, +"MODULUSOFLINEARSUBGRADEREACTIONUNIT"s, +"MODULUSOFROTATIONALSUBGRADEREACTIONUNIT"s, +"PHUNIT"s, +"ROTATIONALMASSUNIT"s, +"SECTIONAREAINTEGRALUNIT"s, +"SECTIONMODULUSUNIT"s, +"SOUNDPOWERLEVELUNIT"s, +"SOUNDPOWERUNIT"s, +"SOUNDPRESSURELEVELUNIT"s, +"SOUNDPRESSUREUNIT"s, +"TEMPERATUREGRADIENTUNIT"s, +"TEMPERATURERATEOFCHANGEUNIT"s, +"THERMALEXPANSIONCOEFFICIENTUNIT"s, +"WARPINGCONSTANTUNIT"s, +"WARPINGMOMENTUNIT"s, +"IfcDescriptiveMeasure"s, +"IfcDimensionCount"s, +"IfcDirectionSenseEnum"s, +"POSITIVE"s, +"NEGATIVE"s, +"IfcDiscreteAccessoryTypeEnum"s, +"ANCHORPLATE"s, +"BRACKET"s, +"SHOE"s, +"EXPANSION_JOINT_DEVICE"s, +"CABLEARRANGER"s, +"INSULATOR"s, +"LOCK"s, +"TENSIONINGEQUIPMENT"s, +"RAILPAD"s, +"SLIDINGCHAIR"s, +"RAIL_LUBRICATION"s, +"PANEL_STRENGTHENING"s, +"RAILBRACE"s, +"ELASTIC_CUSHION"s, +"SOUNDABSORPTION"s, +"POINTMACHINEMOUNTINGDEVICE"s, +"POINT_MACHINE_LOCKING_DEVICE"s, +"RAIL_MECHANICAL_EQUIPMENT"s, +"BIRDPROTECTION"s, +"IfcDistributionBoardTypeEnum"s, +"SWITCHBOARD"s, +"CONSUMERUNIT"s, +"MOTORCONTROLCENTRE"s, +"DISTRIBUTIONFRAME"s, +"DISTRIBUTIONBOARD"s, +"DISPATCHINGBOARD"s, +"IfcDistributionChamberElementTypeEnum"s, +"FORMEDDUCT"s, +"INSPECTIONCHAMBER"s, +"INSPECTIONPIT"s, +"MANHOLE"s, +"METERCHAMBER"s, +"SUMP"s, +"TRENCH"s, +"VALVECHAMBER"s, +"IfcDistributionPortTypeEnum"s, +"CABLE"s, +"CABLECARRIER"s, +"DUCT"s, +"PIPE"s, +"WIRELESS"s, +"IfcDistributionSystemEnum"s, +"AIRCONDITIONING"s, +"AUDIOVISUAL"s, +"CHEMICAL"s, +"CHILLEDWATER"s, +"COMMUNICATION"s, +"COMPRESSEDAIR"s, +"CONDENSERWATER"s, +"CONTROL"s, +"CONVEYING"s, +"DATA"s, +"DISPOSAL"s, +"DOMESTICCOLDWATER"s, +"DOMESTICHOTWATER"s, +"DRAINAGE"s, +"EARTHING"s, +"ELECTRICAL"s, +"ELECTROACOUSTIC"s, +"EXHAUST"s, +"FIREPROTECTION"s, +"GAS"s, +"HAZARDOUS"s, +"LIGHTNINGPROTECTION"s, +"MUNICIPALSOLIDWASTE"s, +"OIL"s, +"OPERATIONAL"s, +"POWERGENERATION"s, +"RAINWATER"s, +"REFRIGERATION"s, +"SECURITY"s, +"SEWAGE"s, +"SIGNAL"s, +"STORMWATER"s, +"TV"s, +"VACUUM"s, +"VENT"s, +"VENTILATION"s, +"WASTEWATER"s, +"WATERSUPPLY"s, +"CATENARY_SYSTEM"s, +"OVERHEAD_CONTACTLINE_SYSTEM"s, +"RETURN_CIRCUIT"s, +"FIXEDTRANSMISSIONNETWORK"s, +"OPERATIONALTELEPHONYSYSTEM"s, +"MOBILENETWORK"s, +"MONITORINGSYSTEM"s, +"IfcDocumentConfidentialityEnum"s, +"PUBLIC"s, +"RESTRICTED"s, +"CONFIDENTIAL"s, +"PERSONAL"s, +"IfcDocumentStatusEnum"s, +"DRAFT"s, +"FINALDRAFT"s, +"FINAL"s, +"REVISION"s, +"IfcDoorPanelOperationEnum"s, +"SWINGING"s, +"DOUBLE_ACTING"s, +"SLIDING"s, +"FOLDING"s, +"REVOLVING"s, +"ROLLINGUP"s, +"FIXEDPANEL"s, +"IfcDoorPanelPositionEnum"s, +"LEFT"s, +"MIDDLE"s, +"RIGHT"s, +"IfcDoorStyleConstructionEnum"s, +"ALUMINIUM"s, +"HIGH_GRADE_STEEL"s, +"STEEL"s, +"ALUMINIUM_WOOD"s, +"ALUMINIUM_PLASTIC"s, +"IfcDoorStyleOperationEnum"s, +"SINGLE_SWING_LEFT"s, +"SINGLE_SWING_RIGHT"s, +"DOUBLE_DOOR_SINGLE_SWING"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_SWING_LEFT"s, +"DOUBLE_SWING_RIGHT"s, +"DOUBLE_DOOR_DOUBLE_SWING"s, +"SLIDING_TO_LEFT"s, +"SLIDING_TO_RIGHT"s, +"DOUBLE_DOOR_SLIDING"s, +"FOLDING_TO_LEFT"s, +"FOLDING_TO_RIGHT"s, +"DOUBLE_DOOR_FOLDING"s, +"IfcDoorTypeEnum"s, +"DOOR"s, +"GATE"s, +"TRAPDOOR"s, +"BOOM_BARRIER"s, +"TURNSTILE"s, +"IfcDoorTypeOperationEnum"s, +"DOUBLE_PANEL_SINGLE_SWING"s, +"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT"s, +"DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT"s, +"DOUBLE_PANEL_DOUBLE_SWING"s, +"DOUBLE_PANEL_SLIDING"s, +"DOUBLE_PANEL_FOLDING"s, +"REVOLVING_HORIZONTAL"s, +"SWING_FIXED_LEFT"s, +"SWING_FIXED_RIGHT"s, +"DOUBLE_PANEL_LIFTING_VERTICAL"s, +"LIFTING_HORIZONTAL"s, +"LIFTING_VERTICAL_LEFT"s, +"LIFTING_VERTICAL_RIGHT"s, +"REVOLVING_VERTICAL"s, +"IfcDoseEquivalentMeasure"s, +"IfcDuctFittingTypeEnum"s, +"OBSTRUCTION"s, +"IfcDuctSegmentTypeEnum"s, +"RIGIDSEGMENT"s, +"FLEXIBLESEGMENT"s, +"IfcDuctSilencerTypeEnum"s, +"FLATOVAL"s, +"RECTANGULAR"s, +"ROUND"s, +"IfcDuration"s, +"IfcDynamicViscosityMeasure"s, +"IfcEarthworksCutTypeEnum"s, +"DREDGING"s, +"EXCAVATION"s, +"OVEREXCAVATION"s, +"TOPSOILREMOVAL"s, +"STEPEXCAVATION"s, +"PAVEMENTMILLING"s, +"CUT"s, +"BASE_EXCAVATION"s, +"IfcEarthworksFillTypeEnum"s, +"BACKFILL"s, +"COUNTERWEIGHT"s, +"SUBGRADE"s, +"EMBANKMENT"s, +"TRANSITIONSECTION"s, +"SUBGRADEBED"s, +"SLOPEFILL"s, +"IfcElectricApplianceTypeEnum"s, +"DISHWASHER"s, +"ELECTRICCOOKER"s, +"FREESTANDINGELECTRICHEATER"s, +"FREESTANDINGFAN"s, +"FREESTANDINGWATERHEATER"s, +"FREESTANDINGWATERCOOLER"s, +"FREEZER"s, +"FRIDGE_FREEZER"s, +"HANDDRYER"s, +"KITCHENMACHINE"s, +"MICROWAVE"s, +"PHOTOCOPIER"s, +"REFRIGERATOR"s, +"TUMBLEDRYER"s, +"VENDINGMACHINE"s, +"WASHINGMACHINE"s, +"IfcElectricCapacitanceMeasure"s, +"IfcElectricChargeMeasure"s, +"IfcElectricConductanceMeasure"s, +"IfcElectricCurrentMeasure"s, +"IfcElectricDistributionBoardTypeEnum"s, +"IfcElectricFlowStorageDeviceTypeEnum"s, +"BATTERY"s, +"CAPACITORBANK"s, +"HARMONICFILTER"s, +"INDUCTORBANK"s, +"UPS"s, +"CAPACITOR"s, +"COMPENSATOR"s, +"INDUCTOR"s, +"RECHARGER"s, +"IfcElectricFlowTreatmentDeviceTypeEnum"s, +"ELECTRONICFILTER"s, +"IfcElectricGeneratorTypeEnum"s, +"CHP"s, +"ENGINEGENERATOR"s, +"STANDALONE"s, +"IfcElectricMotorTypeEnum"s, +"DC"s, +"INDUCTION"s, +"POLYPHASE"s, +"RELUCTANCESYNCHRONOUS"s, +"SYNCHRONOUS"s, +"IfcElectricResistanceMeasure"s, +"IfcElectricTimeControlTypeEnum"s, +"TIMECLOCK"s, +"TIMEDELAY"s, +"RELAY"s, +"IfcElectricVoltageMeasure"s, +"IfcElementAssemblyTypeEnum"s, +"ACCESSORY_ASSEMBLY"s, +"ARCH"s, +"BEAM_GRID"s, +"BRACED_FRAME"s, +"REINFORCEMENT_UNIT"s, +"RIGID_FRAME"s, +"SLAB_FIELD"s, +"CROSS_BRACING"s, +"MAST"s, +"SIGNALASSEMBLY"s, +"GRID"s, +"SHELTER"s, +"SUPPORTINGASSEMBLY"s, +"SUSPENSIONASSEMBLY"s, +"TRACTION_SWITCHING_ASSEMBLY"s, +"TRACKPANEL"s, +"TURNOUTPANEL"s, +"DILATATIONPANEL"s, +"RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"s, +"ENTRANCEWORKS"s, +"SUMPBUSTER"s, +"TRAFFIC_CALMING_DEVICE"s, +"IfcElementCompositionEnum"s, +"IfcEnergyMeasure"s, +"IfcEngineTypeEnum"s, +"EXTERNALCOMBUSTION"s, +"INTERNALCOMBUSTION"s, +"IfcEvaporativeCoolerTypeEnum"s, +"DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER"s, +"DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER"s, +"DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER"s, +"DIRECTEVAPORATIVEAIRWASHER"s, +"INDIRECTEVAPORATIVEPACKAGEAIRCOOLER"s, +"INDIRECTEVAPORATIVEWETCOIL"s, +"INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER"s, +"INDIRECTDIRECTCOMBINATION"s, +"IfcEvaporatorTypeEnum"s, +"DIRECTEXPANSION"s, +"DIRECTEXPANSIONSHELLANDTUBE"s, +"DIRECTEXPANSIONTUBEINTUBE"s, +"DIRECTEXPANSIONBRAZEDPLATE"s, +"FLOODEDSHELLANDTUBE"s, +"SHELLANDCOIL"s, +"IfcEventTriggerTypeEnum"s, +"EVENTRULE"s, +"EVENTMESSAGE"s, +"EVENTTIME"s, +"EVENTCOMPLEX"s, +"IfcEventTypeEnum"s, +"STARTEVENT"s, +"ENDEVENT"s, +"INTERMEDIATEEVENT"s, +"IfcExternalSpatialElementTypeEnum"s, +"EXTERNAL"s, +"EXTERNAL_EARTH"s, +"EXTERNAL_WATER"s, +"EXTERNAL_FIRE"s, +"IfcFacilityPartCommonTypeEnum"s, +"SEGMENT"s, +"ABOVEGROUND"s, +"LEVELCROSSING"s, +"BELOWGROUND"s, +"TERMINAL"s, +"IfcFacilityUsageEnum"s, +"LATERAL"s, +"REGION"s, +"VERTICAL"s, +"LONGITUDINAL"s, +"IfcFanTypeEnum"s, +"CENTRIFUGALFORWARDCURVED"s, +"CENTRIFUGALRADIAL"s, +"CENTRIFUGALBACKWARDINCLINEDCURVED"s, +"CENTRIFUGALAIRFOIL"s, +"TUBEAXIAL"s, +"VANEAXIAL"s, +"PROPELLORAXIAL"s, +"IfcFastenerTypeEnum"s, +"GLUE"s, +"MORTAR"s, +"WELD"s, +"IfcFilterTypeEnum"s, +"AIRPARTICLEFILTER"s, +"COMPRESSEDAIRFILTER"s, +"ODORFILTER"s, +"OILFILTER"s, +"STRAINER"s, +"WATERFILTER"s, +"IfcFireSuppressionTerminalTypeEnum"s, +"BREECHINGINLET"s, +"FIREHYDRANT"s, +"HOSEREEL"s, +"SPRINKLER"s, +"SPRINKLERDEFLECTOR"s, +"FIREMONITOR"s, +"IfcFlowDirectionEnum"s, +"SOURCE"s, +"SINK"s, +"SOURCEANDSINK"s, +"IfcFlowInstrumentTypeEnum"s, +"PRESSUREGAUGE"s, +"THERMOMETER"s, +"AMMETER"s, +"FREQUENCYMETER"s, +"POWERFACTORMETER"s, +"PHASEANGLEMETER"s, +"VOLTMETER_PEAK"s, +"VOLTMETER_RMS"s, +"COMBINED"s, +"VOLTMETER"s, +"IfcFlowMeterTypeEnum"s, +"ENERGYMETER"s, +"GASMETER"s, +"OILMETER"s, +"WATERMETER"s, +"IfcFontStyle"s, +"IfcFontVariant"s, +"IfcFontWeight"s, +"IfcFootingTypeEnum"s, +"CAISSON_FOUNDATION"s, +"FOOTING_BEAM"s, +"PAD_FOOTING"s, +"PILE_CAP"s, +"STRIP_FOOTING"s, +"IfcForceMeasure"s, +"IfcFrequencyMeasure"s, +"IfcFurnitureTypeEnum"s, +"CHAIR"s, +"TABLE"s, +"DESK"s, +"BED"s, +"FILECABINET"s, +"SHELF"s, +"SOFA"s, +"TECHNICALCABINET"s, +"IfcGeographicElementTypeEnum"s, +"TERRAIN"s, +"SOIL_BORING_POINT"s, +"IfcGeometricProjectionEnum"s, +"GRAPH_VIEW"s, +"SKETCH_VIEW"s, +"MODEL_VIEW"s, +"PLAN_VIEW"s, +"REFLECTED_PLAN_VIEW"s, +"SECTION_VIEW"s, +"ELEVATION_VIEW"s, +"IfcGlobalOrLocalEnum"s, +"GLOBAL_COORDS"s, +"LOCAL_COORDS"s, +"IfcGloballyUniqueId"s, +"IfcGridTypeEnum"s, +"RADIAL"s, +"TRIANGULAR"s, +"IRREGULAR"s, +"IfcHeatExchangerTypeEnum"s, +"PLATE"s, +"SHELLANDTUBE"s, +"TURNOUTHEATING"s, +"IfcHeatFluxDensityMeasure"s, +"IfcHeatingValueMeasure"s, +"IfcHumidifierTypeEnum"s, +"STEAMINJECTION"s, +"ADIABATICAIRWASHER"s, +"ADIABATICPAN"s, +"ADIABATICWETTEDELEMENT"s, +"ADIABATICATOMIZING"s, +"ADIABATICULTRASONIC"s, +"ADIABATICRIGIDMEDIA"s, +"ADIABATICCOMPRESSEDAIRNOZZLE"s, +"ASSISTEDELECTRIC"s, +"ASSISTEDNATURALGAS"s, +"ASSISTEDPROPANE"s, +"ASSISTEDBUTANE"s, +"ASSISTEDSTEAM"s, +"IfcIdentifier"s, +"IfcIlluminanceMeasure"s, +"IfcImpactProtectionDeviceTypeEnum"s, +"CRASHCUSHION"s, +"DAMPINGSYSTEM"s, +"FENDER"s, +"BUMPER"s, +"IfcInductanceMeasure"s, +"IfcInteger"s, +"IfcIntegerCountRateMeasure"s, +"IfcInterceptorTypeEnum"s, +"CYCLONIC"s, +"GREASE"s, +"PETROL"s, +"IfcInternalOrExternalEnum"s, +"INTERNAL"s, +"IfcInventoryTypeEnum"s, +"ASSETINVENTORY"s, +"SPACEINVENTORY"s, +"FURNITUREINVENTORY"s, +"IfcIonConcentrationMeasure"s, +"IfcIsothermalMoistureCapacityMeasure"s, +"IfcJunctionBoxTypeEnum"s, +"POWER"s, +"IfcKinematicViscosityMeasure"s, +"IfcKnotType"s, +"UNIFORM_KNOTS"s, +"QUASI_UNIFORM_KNOTS"s, +"PIECEWISE_BEZIER_KNOTS"s, +"IfcLabel"s, +"IfcLaborResourceTypeEnum"s, +"ADMINISTRATION"s, +"CARPENTRY"s, +"CLEANING"s, +"ELECTRIC"s, +"FINISHING"s, +"GENERAL"s, +"HVAC"s, +"LANDSCAPING"s, +"PAINTING"s, +"PLUMBING"s, +"SITEGRADING"s, +"STEELWORK"s, +"SURVEYING"s, +"IfcLampTypeEnum"s, +"COMPACTFLUORESCENT"s, +"FLUORESCENT"s, +"HALOGEN"s, +"HIGHPRESSUREMERCURY"s, +"HIGHPRESSURESODIUM"s, +"LED"s, +"METALHALIDE"s, +"OLED"s, +"TUNGSTENFILAMENT"s, +"IfcLanguageId"s, +"IfcLayerSetDirectionEnum"s, +"AXIS1"s, +"AXIS2"s, +"AXIS3"s, +"IfcLengthMeasure"s, +"IfcLightDistributionCurveEnum"s, +"TYPE_A"s, +"TYPE_B"s, +"TYPE_C"s, +"IfcLightEmissionSourceEnum"s, +"LIGHTEMITTINGDIODE"s, +"LOWPRESSURESODIUM"s, +"LOWVOLTAGEHALOGEN"s, +"MAINVOLTAGEHALOGEN"s, +"IfcLightFixtureTypeEnum"s, +"POINTSOURCE"s, +"DIRECTIONSOURCE"s, +"SECURITYLIGHTING"s, +"IfcLinearForceMeasure"s, +"IfcLinearMomentMeasure"s, +"IfcLinearStiffnessMeasure"s, +"IfcLinearVelocityMeasure"s, +"IfcLiquidTerminalTypeEnum"s, +"LOADINGARM"s, +"IfcLoadGroupTypeEnum"s, +"LOAD_GROUP"s, +"LOAD_CASE"s, +"LOAD_COMBINATION"s, +"IfcLogical"s, +"IfcLogicalOperatorEnum"s, +"LOGICALAND"s, +"LOGICALOR"s, +"LOGICALXOR"s, +"LOGICALNOTAND"s, +"LOGICALNOTOR"s, +"IfcLuminousFluxMeasure"s, +"IfcLuminousIntensityDistributionMeasure"s, +"IfcLuminousIntensityMeasure"s, +"IfcMagneticFluxDensityMeasure"s, +"IfcMagneticFluxMeasure"s, +"IfcMarineFacilityTypeEnum"s, +"CANAL"s, +"WATERWAYSHIPLIFT"s, +"REVETMENT"s, +"LAUNCHRECOVERY"s, +"MARINEDEFENCE"s, +"HYDROLIFT"s, +"SHIPYARD"s, +"SHIPLIFT"s, +"PORT"s, +"QUAY"s, +"FLOATINGDOCK"s, +"NAVIGATIONALCHANNEL"s, +"BREAKWATER"s, +"DRYDOCK"s, +"JETTY"s, +"SHIPLOCK"s, +"BARRIERBEACH"s, +"SLIPWAY"s, +"WATERWAY"s, +"IfcMarinePartTypeEnum"s, +"CREST"s, +"MANUFACTURING"s, +"LOWWATERLINE"s, +"WATERFIELD"s, +"CILL_LEVEL"s, +"BERTHINGSTRUCTURE"s, +"COPELEVEL"s, +"CHAMBER"s, +"STORAGEAREA"s, +"APPROACHCHANNEL"s, +"VEHICLESERVICING"s, +"SHIPTRANSFER"s, +"GATEHEAD"s, +"GUDINGSTRUCTURE"s, +"BELOWWATERLINE"s, +"WEATHERSIDE"s, +"LANDFIELD"s, +"LEEWARDSIDE"s, +"ABOVEWATERLINE"s, +"ANCHORAGE"s, +"NAVIGATIONALAREA"s, +"HIGHWATERLINE"s, +"IfcMassDensityMeasure"s, +"IfcMassFlowRateMeasure"s, +"IfcMassMeasure"s, +"IfcMassPerLengthMeasure"s, +"IfcMechanicalFastenerTypeEnum"s, +"ANCHORBOLT"s, +"BOLT"s, +"DOWEL"s, +"NAIL"s, +"NAILPLATE"s, +"RIVET"s, +"SCREW"s, +"SHEARCONNECTOR"s, +"STAPLE"s, +"STUDSHEARCONNECTOR"s, +"COUPLER"s, +"RAILJOINT"s, +"RAILFASTENING"s, +"CHAIN"s, +"ROPE"s, +"IfcMedicalDeviceTypeEnum"s, +"AIRSTATION"s, +"FEEDAIRUNIT"s, +"OXYGENGENERATOR"s, +"OXYGENPLANT"s, +"VACUUMSTATION"s, +"IfcMemberTypeEnum"s, +"BRACE"s, +"CHORD"s, +"COLLAR"s, +"MEMBER"s, +"MULLION"s, +"PURLIN"s, +"RAFTER"s, +"STRINGER"s, +"STRUT"s, +"STUD"s, +"STIFFENING_RIB"s, +"ARCH_SEGMENT"s, +"SUSPENSION_CABLE"s, +"SUSPENDER"s, +"STAY_CABLE"s, +"STRUCTURALCABLE"s, +"TIEBAR"s, +"IfcMobileTelecommunicationsApplianceTypeEnum"s, +"E_UTRAN_NODE_B"s, +"REMOTERADIOUNIT"s, +"ACCESSPOINT"s, +"BASETRANSCEIVERSTATION"s, +"REMOTEUNIT"s, +"BASEBANDUNIT"s, +"MASTERUNIT"s, +"GATEWAY_GPRS_SUPPORT_NODE"s, +"SUBSCRIBERSERVER"s, +"MOBILESWITCHINGCENTER"s, +"MSCSERVER"s, +"PACKETCONTROLUNIT"s, +"SERVICE_GPRS_SUPPORT_NODE"s, +"IfcModulusOfElasticityMeasure"s, +"IfcModulusOfLinearSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionMeasure"s, +"IfcModulusOfRotationalSubgradeReactionSelect"s, +"IfcModulusOfSubgradeReactionMeasure"s, +"IfcModulusOfSubgradeReactionSelect"s, +"IfcModulusOfTranslationalSubgradeReactionSelect"s, +"IfcMoistureDiffusivityMeasure"s, +"IfcMolecularWeightMeasure"s, +"IfcMomentOfInertiaMeasure"s, +"IfcMonetaryMeasure"s, +"IfcMonthInYearNumber"s, +"IfcMooringDeviceTypeEnum"s, +"LINETENSIONER"s, +"MAGNETICDEVICE"s, +"MOORINGHOOKS"s, +"VACUUMDEVICE"s, +"BOLLARD"s, +"IfcMotorConnectionTypeEnum"s, +"BELTDRIVE"s, +"COUPLING"s, +"DIRECTDRIVE"s, +"IfcNavigationElementTypeEnum"s, +"BEACON"s, +"BUOY"s, +"IfcNonNegativeLengthMeasure"s, +"IfcNumericMeasure"s, +"IfcObjectTypeEnum"s, +"PRODUCT"s, +"PROCESS"s, +"RESOURCE"s, +"ACTOR"s, +"GROUP"s, +"PROJECT"s, +"IfcObjectiveEnum"s, +"CODECOMPLIANCE"s, +"CODEWAIVER"s, +"DESIGNINTENT"s, +"HEALTHANDSAFETY"s, +"MERGECONFLICT"s, +"MODELVIEW"s, +"PARAMETER"s, +"REQUIREMENT"s, +"SPECIFICATION"s, +"TRIGGERCONDITION"s, +"IfcOccupantTypeEnum"s, +"ASSIGNEE"s, +"ASSIGNOR"s, +"LESSEE"s, +"LESSOR"s, +"LETTINGAGENT"s, +"OWNER"s, +"TENANT"s, +"IfcOpeningElementTypeEnum"s, +"OPENING"s, +"RECESS"s, +"IfcOutletTypeEnum"s, +"AUDIOVISUALOUTLET"s, +"COMMUNICATIONSOUTLET"s, +"POWEROUTLET"s, +"DATAOUTLET"s, +"TELEPHONEOUTLET"s, +"IfcPHMeasure"s, +"IfcParameterValue"s, +"IfcPavementTypeEnum"s, +"FLEXIBLE"s, +"RIGID"s, +"IfcPerformanceHistoryTypeEnum"s, +"IfcPermeableCoveringOperationEnum"s, +"GRILL"s, +"LOUVER"s, +"SCREEN"s, +"IfcPermitTypeEnum"s, +"ACCESS"s, +"BUILDING"s, +"WORK"s, +"IfcPhysicalOrVirtualEnum"s, +"PHYSICAL"s, +"VIRTUAL"s, +"IfcPileConstructionEnum"s, +"CAST_IN_PLACE"s, +"COMPOSITE"s, +"PRECAST_CONCRETE"s, +"PREFAB_STEEL"s, +"IfcPileTypeEnum"s, +"BORED"s, +"DRIVEN"s, +"JETGROUTING"s, +"COHESION"s, +"FRICTION"s, +"SUPPORT"s, +"IfcPipeFittingTypeEnum"s, +"IfcPipeSegmentTypeEnum"s, +"GUTTER"s, +"SPOOL"s, +"IfcPlanarForceMeasure"s, +"IfcPlaneAngleMeasure"s, +"IfcPlateTypeEnum"s, +"CURTAIN_PANEL"s, +"SHEET"s, +"FLANGE_PLATE"s, +"WEB_PLATE"s, +"STIFFENER_PLATE"s, +"GUSSET_PLATE"s, +"COVER_PLATE"s, +"SPLICE_PLATE"s, +"BASE_PLATE"s, +"IfcPositiveInteger"s, +"IfcPositiveLengthMeasure"s, +"IfcPositivePlaneAngleMeasure"s, +"IfcPowerMeasure"s, +"IfcPreferredSurfaceCurveRepresentation"s, +"CURVE3D"s, +"PCURVE_S1"s, +"PCURVE_S2"s, +"IfcPresentableText"s, +"IfcPressureMeasure"s, +"IfcProcedureTypeEnum"s, +"ADVICE_CAUTION"s, +"ADVICE_NOTE"s, +"ADVICE_WARNING"s, +"CALIBRATION"s, +"DIAGNOSTIC"s, +"SHUTDOWN"s, +"STARTUP"s, +"IfcProfileTypeEnum"s, +"CURVE"s, +"AREA"s, +"IfcProjectOrderTypeEnum"s, +"CHANGEORDER"s, +"MAINTENANCEWORKORDER"s, +"MOVEORDER"s, +"PURCHASEORDER"s, +"WORKORDER"s, +"IfcProjectedOrTrueLengthEnum"s, +"PROJECTED_LENGTH"s, +"TRUE_LENGTH"s, +"IfcProjectionElementTypeEnum"s, +"BLISTER"s, +"DEVIATOR"s, +"IfcPropertySetTemplateTypeEnum"s, +"PSET_TYPEDRIVENONLY"s, +"PSET_TYPEDRIVENOVERRIDE"s, +"PSET_OCCURRENCEDRIVEN"s, +"PSET_PERFORMANCEDRIVEN"s, +"QTO_TYPEDRIVENONLY"s, +"QTO_TYPEDRIVENOVERRIDE"s, +"QTO_OCCURRENCEDRIVEN"s, +"IfcProtectiveDeviceTrippingUnitTypeEnum"s, +"ELECTRONIC"s, +"ELECTROMAGNETIC"s, +"RESIDUALCURRENT"s, +"THERMAL"s, +"IfcProtectiveDeviceTypeEnum"s, +"CIRCUITBREAKER"s, +"EARTHLEAKAGECIRCUITBREAKER"s, +"EARTHINGSWITCH"s, +"FUSEDISCONNECTOR"s, +"RESIDUALCURRENTCIRCUITBREAKER"s, +"RESIDUALCURRENTSWITCH"s, +"VARISTOR"s, +"ANTI_ARCING_DEVICE"s, +"SPARKGAP"s, +"VOLTAGELIMITER"s, +"IfcPumpTypeEnum"s, +"CIRCULATOR"s, +"ENDSUCTION"s, +"SPLITCASE"s, +"SUBMERSIBLEPUMP"s, +"SUMPPUMP"s, +"VERTICALINLINE"s, +"VERTICALTURBINE"s, +"IfcRadioActivityMeasure"s, +"IfcRailTypeEnum"s, +"RACKRAIL"s, +"BLADE"s, +"GUARDRAIL"s, +"STOCKRAIL"s, +"CHECKRAIL"s, +"RAIL"s, +"IfcRailingTypeEnum"s, +"HANDRAIL"s, +"BALUSTRADE"s, +"FENCE"s, +"IfcRailwayPartTypeEnum"s, +"TRACKSTRUCTURE"s, +"TRACKSTRUCTUREPART"s, +"LINESIDESTRUCTUREPART"s, +"DILATATIONSUPERSTRUCTURE"s, +"PLAINTRACKSUPESTRUCTURE"s, +"LINESIDESTRUCTURE"s, +"TURNOUTSUPERSTRUCTURE"s, +"IfcRailwayTypeEnum"s, +"IfcRampFlightTypeEnum"s, +"STRAIGHT"s, +"SPIRAL"s, +"IfcRampTypeEnum"s, +"STRAIGHT_RUN_RAMP"s, +"TWO_STRAIGHT_RUN_RAMP"s, +"QUARTER_TURN_RAMP"s, +"TWO_QUARTER_TURN_RAMP"s, +"HALF_TURN_RAMP"s, +"SPIRAL_RAMP"s, +"IfcRatioMeasure"s, +"IfcReal"s, +"IfcRecurrenceTypeEnum"s, +"DAILY"s, +"WEEKLY"s, +"MONTHLY_BY_DAY_OF_MONTH"s, +"MONTHLY_BY_POSITION"s, +"BY_DAY_COUNT"s, +"BY_WEEKDAY_COUNT"s, +"YEARLY_BY_DAY_OF_MONTH"s, +"YEARLY_BY_POSITION"s, +"IfcReferentTypeEnum"s, +"KILOPOINT"s, +"MILEPOINT"s, +"STATION"s, +"REFERENCEMARKER"s, +"LANDMARK"s, +"BOUNDARY"s, +"POSITION"s, +"IfcReflectanceMethodEnum"s, +"BLINN"s, +"FLAT"s, +"GLASS"s, +"MATT"s, +"MIRROR"s, +"PHONG"s, +"STRAUSS"s, +"IfcReinforcedSoilTypeEnum"s, +"SURCHARGEPRELOADED"s, +"VERTICALLYDRAINED"s, +"DYNAMICALLYCOMPACTED"s, +"REPLACED"s, +"ROLLERCOMPACTED"s, +"GROUTED"s, +"IfcReinforcingBarRoleEnum"s, +"MAIN"s, +"SHEAR"s, +"LIGATURE"s, +"PUNCHING"s, +"EDGE"s, +"RING"s, +"ANCHORING"s, +"IfcReinforcingBarSurfaceEnum"s, +"PLAIN"s, +"TEXTURED"s, +"IfcReinforcingBarTypeEnum"s, +"SPACEBAR"s, +"IfcReinforcingMeshTypeEnum"s, +"IfcRoadPartTypeEnum"s, +"ROADSIDEPART"s, +"BUS_STOP"s, +"HARDSHOULDER"s, +"PASSINGBAY"s, +"ROADWAYPLATEAU"s, +"ROADSIDE"s, +"REFUGEISLAND"s, +"TOLLPLAZA"s, +"CENTRALRESERVE"s, +"SIDEWALK"s, +"PARKINGBAY"s, +"RAILWAYCROSSING"s, +"PEDESTRIAN_CROSSING"s, +"SOFTSHOULDER"s, +"BICYCLECROSSING"s, +"CENTRALISLAND"s, +"SHOULDER"s, +"TRAFFICLANE"s, +"ROADSEGMENT"s, +"ROUNDABOUT"s, +"LAYBY"s, +"CARRIAGEWAY"s, +"TRAFFICISLAND"s, +"IfcRoadTypeEnum"s, +"IfcRoleEnum"s, +"SUPPLIER"s, +"MANUFACTURER"s, +"CONTRACTOR"s, +"SUBCONTRACTOR"s, +"ARCHITECT"s, +"STRUCTURALENGINEER"s, +"COSTENGINEER"s, +"CLIENT"s, +"BUILDINGOWNER"s, +"BUILDINGOPERATOR"s, +"MECHANICALENGINEER"s, +"ELECTRICALENGINEER"s, +"PROJECTMANAGER"s, +"FACILITIESMANAGER"s, +"CIVILENGINEER"s, +"COMMISSIONINGENGINEER"s, +"ENGINEER"s, +"CONSULTANT"s, +"CONSTRUCTIONMANAGER"s, +"FIELDCONSTRUCTIONMANAGER"s, +"RESELLER"s, +"IfcRoofTypeEnum"s, +"FLAT_ROOF"s, +"SHED_ROOF"s, +"GABLE_ROOF"s, +"HIP_ROOF"s, +"HIPPED_GABLE_ROOF"s, +"GAMBREL_ROOF"s, +"MANSARD_ROOF"s, +"BARREL_ROOF"s, +"RAINBOW_ROOF"s, +"BUTTERFLY_ROOF"s, +"PAVILION_ROOF"s, +"DOME_ROOF"s, +"FREEFORM"s, +"IfcRotationalFrequencyMeasure"s, +"IfcRotationalMassMeasure"s, +"IfcRotationalStiffnessMeasure"s, +"IfcRotationalStiffnessSelect"s, +"IfcSIPrefix"s, +"EXA"s, +"PETA"s, +"TERA"s, +"GIGA"s, +"MEGA"s, +"KILO"s, +"HECTO"s, +"DECA"s, +"DECI"s, +"CENTI"s, +"MILLI"s, +"MICRO"s, +"NANO"s, +"PICO"s, +"FEMTO"s, +"ATTO"s, +"IfcSIUnitName"s, +"AMPERE"s, +"BECQUEREL"s, +"CANDELA"s, +"COULOMB"s, +"CUBIC_METRE"s, +"DEGREE_CELSIUS"s, +"FARAD"s, +"GRAM"s, +"GRAY"s, +"HENRY"s, +"HERTZ"s, +"JOULE"s, +"KELVIN"s, +"LUMEN"s, +"LUX"s, +"METRE"s, +"MOLE"s, +"NEWTON"s, +"OHM"s, +"PASCAL"s, +"RADIAN"s, +"SECOND"s, +"SIEMENS"s, +"SIEVERT"s, +"SQUARE_METRE"s, +"STERADIAN"s, +"TESLA"s, +"VOLT"s, +"WATT"s, +"WEBER"s, +"IfcSanitaryTerminalTypeEnum"s, +"BATH"s, +"BIDET"s, +"CISTERN"s, +"SHOWER"s, +"SANITARYFOUNTAIN"s, +"TOILETPAN"s, +"URINAL"s, +"WASHHANDBASIN"s, +"WCSEAT"s, +"IfcSectionModulusMeasure"s, +"IfcSectionTypeEnum"s, +"UNIFORM"s, +"TAPERED"s, +"IfcSectionalAreaIntegralMeasure"s, +"IfcSensorTypeEnum"s, +"COSENSOR"s, +"CO2SENSOR"s, +"CONDUCTANCESENSOR"s, +"CONTACTSENSOR"s, +"FIRESENSOR"s, +"FLOWSENSOR"s, +"FROSTSENSOR"s, +"GASSENSOR"s, +"HEATSENSOR"s, +"HUMIDITYSENSOR"s, +"IDENTIFIERSENSOR"s, +"IONCONCENTRATIONSENSOR"s, +"LEVELSENSOR"s, +"LIGHTSENSOR"s, +"MOISTURESENSOR"s, +"MOVEMENTSENSOR"s, +"PHSENSOR"s, +"PRESSURESENSOR"s, +"RADIATIONSENSOR"s, +"RADIOACTIVITYSENSOR"s, +"SMOKESENSOR"s, +"SOUNDSENSOR"s, +"TEMPERATURESENSOR"s, +"WINDSENSOR"s, +"EARTHQUAKESENSOR"s, +"FOREIGNOBJECTDETECTIONSENSOR"s, +"OBSTACLESENSOR"s, +"RAINSENSOR"s, +"SNOWDEPTHSENSOR"s, +"TRAINSENSOR"s, +"TURNOUTCLOSURESENSOR"s, +"WHEELSENSOR"s, +"IfcSequenceEnum"s, +"START_START"s, +"START_FINISH"s, +"FINISH_START"s, +"FINISH_FINISH"s, +"IfcShadingDeviceTypeEnum"s, +"JALOUSIE"s, +"SHUTTER"s, +"AWNING"s, +"IfcShearModulusMeasure"s, +"IfcSignTypeEnum"s, +"MARKER"s, +"PICTORAL"s, +"IfcSignalTypeEnum"s, +"VISUAL"s, +"AUDIO"s, +"MIXED"s, +"IfcSimplePropertyTemplateTypeEnum"s, +"P_SINGLEVALUE"s, +"P_ENUMERATEDVALUE"s, +"P_BOUNDEDVALUE"s, +"P_LISTVALUE"s, +"P_TABLEVALUE"s, +"P_REFERENCEVALUE"s, +"Q_LENGTH"s, +"Q_AREA"s, +"Q_VOLUME"s, +"Q_COUNT"s, +"Q_WEIGHT"s, +"Q_TIME"s, +"IfcSlabTypeEnum"s, +"FLOOR"s, +"ROOF"s, +"LANDING"s, +"BASESLAB"s, +"APPROACH_SLAB"s, +"WEARING"s, +"TRACKSLAB"s, +"IfcSolarDeviceTypeEnum"s, +"SOLARCOLLECTOR"s, +"SOLARPANEL"s, +"IfcSolidAngleMeasure"s, +"IfcSoundPowerLevelMeasure"s, +"IfcSoundPowerMeasure"s, +"IfcSoundPressureLevelMeasure"s, +"IfcSoundPressureMeasure"s, +"IfcSpaceHeaterTypeEnum"s, +"CONVECTOR"s, +"RADIATOR"s, +"IfcSpaceTypeEnum"s, +"SPACE"s, +"PARKING"s, +"GFA"s, +"BERTH"s, +"IfcSpatialZoneTypeEnum"s, +"CONSTRUCTION"s, +"FIRESAFETY"s, +"OCCUPANCY"s, +"RESERVATION"s, +"INTERFERENCE"s, +"IfcSpecificHeatCapacityMeasure"s, +"IfcSpecularExponent"s, +"IfcSpecularRoughness"s, +"IfcStackTerminalTypeEnum"s, +"BIRDCAGE"s, +"COWL"s, +"RAINWATERHOPPER"s, +"IfcStairFlightTypeEnum"s, +"WINDER"s, +"CURVED"s, +"IfcStairTypeEnum"s, +"STRAIGHT_RUN_STAIR"s, +"TWO_STRAIGHT_RUN_STAIR"s, +"QUARTER_WINDING_STAIR"s, +"QUARTER_TURN_STAIR"s, +"HALF_WINDING_STAIR"s, +"HALF_TURN_STAIR"s, +"TWO_QUARTER_WINDING_STAIR"s, +"TWO_QUARTER_TURN_STAIR"s, +"THREE_QUARTER_WINDING_STAIR"s, +"THREE_QUARTER_TURN_STAIR"s, +"SPIRAL_STAIR"s, +"DOUBLE_RETURN_STAIR"s, +"CURVED_RUN_STAIR"s, +"TWO_CURVED_RUN_STAIR"s, +"LADDER"s, +"IfcStateEnum"s, +"READWRITE"s, +"READONLY"s, +"LOCKED"s, +"READWRITELOCKED"s, +"READONLYLOCKED"s, +"IfcStructuralCurveActivityTypeEnum"s, +"CONST"s, +"POLYGONAL"s, +"EQUIDISTANT"s, +"SINUS"s, +"PARABOLA"s, +"DISCRETE"s, +"IfcStructuralCurveMemberTypeEnum"s, +"RIGID_JOINED_MEMBER"s, +"PIN_JOINED_MEMBER"s, +"TENSION_MEMBER"s, +"COMPRESSION_MEMBER"s, +"IfcStructuralSurfaceActivityTypeEnum"s, +"BILINEAR"s, +"ISOCONTOUR"s, +"IfcStructuralSurfaceMemberTypeEnum"s, +"BENDING_ELEMENT"s, +"MEMBRANE_ELEMENT"s, +"SHELL"s, +"IfcSubContractResourceTypeEnum"s, +"PURCHASE"s, +"IfcSurfaceFeatureTypeEnum"s, +"MARK"s, +"TAG"s, +"TREATMENT"s, +"DEFECT"s, +"HATCHMARKING"s, +"LINEMARKING"s, +"PAVEMENTSURFACEMARKING"s, +"SYMBOLMARKING"s, +"NONSKIDSURFACING"s, +"RUMBLESTRIP"s, +"TRANSVERSERUMBLESTRIP"s, +"IfcSurfaceSide"s, +"BOTH"s, +"IfcSwitchingDeviceTypeEnum"s, +"CONTACTOR"s, +"DIMMERSWITCH"s, +"EMERGENCYSTOP"s, +"KEYPAD"s, +"MOMENTARYSWITCH"s, +"SELECTORSWITCH"s, +"STARTER"s, +"SWITCHDISCONNECTOR"s, +"TOGGLESWITCH"s, +"START_AND_STOP_EQUIPMENT"s, +"IfcSystemFurnitureElementTypeEnum"s, +"PANEL"s, +"WORKSURFACE"s, +"SUBRACK"s, +"IfcTankTypeEnum"s, +"BASIN"s, +"BREAKPRESSURE"s, +"EXPANSION"s, +"FEEDANDEXPANSION"s, +"PRESSUREVESSEL"s, +"STORAGE"s, +"VESSEL"s, +"OILRETENTIONTRAY"s, +"IfcTaskDurationEnum"s, +"ELAPSEDTIME"s, +"WORKTIME"s, +"IfcTaskTypeEnum"s, +"ATTENDANCE"s, +"DEMOLITION"s, +"DISMANTLE"s, +"INSTALLATION"s, +"LOGISTIC"s, +"MAINTENANCE"s, +"MOVE"s, +"OPERATION"s, +"REMOVAL"s, +"RENOVATION"s, +"IfcTemperatureGradientMeasure"s, +"IfcTemperatureRateOfChangeMeasure"s, +"IfcTendonAnchorTypeEnum"s, +"FIXED_END"s, +"TENSIONING_END"s, +"IfcTendonConduitTypeEnum"s, +"GROUTING_DUCT"s, +"TRUMPET"s, +"DIABOLO"s, +"IfcTendonTypeEnum"s, +"BAR"s, +"COATED"s, +"STRAND"s, +"WIRE"s, +"IfcText"s, +"IfcTextAlignment"s, +"IfcTextDecoration"s, +"IfcTextFontName"s, +"IfcTextPath"s, +"UP"s, +"DOWN"s, +"IfcTextTransformation"s, +"IfcThermalAdmittanceMeasure"s, +"IfcThermalConductivityMeasure"s, +"IfcThermalExpansionCoefficientMeasure"s, +"IfcThermalResistanceMeasure"s, +"IfcThermalTransmittanceMeasure"s, +"IfcThermodynamicTemperatureMeasure"s, +"IfcTime"s, +"IfcTimeMeasure"s, +"IfcTimeOrRatioSelect"s, +"IfcTimeSeriesDataTypeEnum"s, +"CONTINUOUS"s, +"DISCRETEBINARY"s, +"PIECEWISEBINARY"s, +"PIECEWISECONSTANT"s, +"PIECEWISECONTINUOUS"s, +"IfcTimeStamp"s, +"IfcTorqueMeasure"s, +"IfcTrackElementTypeEnum"s, +"TRACKENDOFALIGNMENT"s, +"BLOCKINGDEVICE"s, +"VEHICLESTOP"s, +"SLEEPER"s, +"HALF_SET_OF_BLADES"s, +"SPEEDREGULATOR"s, +"DERAILER"s, +"FROG"s, +"IfcTransformerTypeEnum"s, +"FREQUENCY"s, +"INVERTER"s, +"RECTIFIER"s, +"VOLTAGE"s, +"CHOPPER"s, +"IfcTransitionCode"s, +"DISCONTINUOUS"s, +"CONTSAMEGRADIENT"s, +"CONTSAMEGRADIENTSAMECURVATURE"s, +"IfcTranslationalStiffnessSelect"s, +"IfcTransportElementFixedTypeEnum"s, +"ELEVATOR"s, +"ESCALATOR"s, +"MOVINGWALKWAY"s, +"CRANEWAY"s, +"LIFTINGGEAR"s, +"HAULINGGEAR"s, +"IfcTransportElementNonFixedTypeEnum"s, +"VEHICLE"s, +"VEHICLETRACKED"s, +"ROLLINGSTOCK"s, +"VEHICLEWHEELED"s, +"VEHICLEAIR"s, +"CARGO"s, +"VEHICLEMARINE"s, +"IfcTransportElementTypeSelect"s, +"IfcTrimmingPreference"s, +"CARTESIAN"s, +"IfcTubeBundleTypeEnum"s, +"FINNED"s, +"IfcURIReference"s, +"IfcUnitEnum"s, +"ABSORBEDDOSEUNIT"s, +"AMOUNTOFSUBSTANCEUNIT"s, +"AREAUNIT"s, +"DOSEEQUIVALENTUNIT"s, +"ELECTRICCAPACITANCEUNIT"s, +"ELECTRICCHARGEUNIT"s, +"ELECTRICCONDUCTANCEUNIT"s, +"ELECTRICCURRENTUNIT"s, +"ELECTRICRESISTANCEUNIT"s, +"ELECTRICVOLTAGEUNIT"s, +"ENERGYUNIT"s, +"FORCEUNIT"s, +"FREQUENCYUNIT"s, +"ILLUMINANCEUNIT"s, +"INDUCTANCEUNIT"s, +"LENGTHUNIT"s, +"LUMINOUSFLUXUNIT"s, +"LUMINOUSINTENSITYUNIT"s, +"MAGNETICFLUXDENSITYUNIT"s, +"MAGNETICFLUXUNIT"s, +"MASSUNIT"s, +"PLANEANGLEUNIT"s, +"POWERUNIT"s, +"PRESSUREUNIT"s, +"RADIOACTIVITYUNIT"s, +"SOLIDANGLEUNIT"s, +"THERMODYNAMICTEMPERATUREUNIT"s, +"TIMEUNIT"s, +"VOLUMEUNIT"s, +"IfcUnitaryControlElementTypeEnum"s, +"ALARMPANEL"s, +"CONTROLPANEL"s, +"GASDETECTIONPANEL"s, +"INDICATORPANEL"s, +"MIMICPANEL"s, +"HUMIDISTAT"s, +"THERMOSTAT"s, +"WEATHERSTATION"s, +"BASESTATIONCONTROLLER"s, +"IfcUnitaryEquipmentTypeEnum"s, +"AIRHANDLER"s, +"AIRCONDITIONINGUNIT"s, +"DEHUMIDIFIER"s, +"SPLITSYSTEM"s, +"ROOFTOPUNIT"s, +"IfcValveTypeEnum"s, +"AIRRELEASE"s, +"ANTIVACUUM"s, +"CHANGEOVER"s, +"CHECK"s, +"COMMISSIONING"s, +"DIVERTING"s, +"DRAWOFFCOCK"s, +"DOUBLECHECK"s, +"DOUBLEREGULATING"s, +"FAUCET"s, +"FLUSHING"s, +"GASCOCK"s, +"GASTAP"s, +"ISOLATING"s, +"MIXING"s, +"PRESSUREREDUCING"s, +"PRESSURERELIEF"s, +"REGULATING"s, +"SAFETYCUTOFF"s, +"STEAMTRAP"s, +"STOPCOCK"s, +"IfcVaporPermeabilityMeasure"s, +"IfcVibrationDamperTypeEnum"s, +"BENDING_YIELD"s, +"SHEAR_YIELD"s, +"AXIAL_YIELD"s, +"VISCOUS"s, +"RUBBER"s, +"IfcVibrationIsolatorTypeEnum"s, +"COMPRESSION"s, +"SPRING"s, +"BASE"s, +"IfcVoidingFeatureTypeEnum"s, +"CUTOUT"s, +"NOTCH"s, +"HOLE"s, +"MITER"s, +"CHAMFER"s, +"IfcVolumeMeasure"s, +"IfcVolumetricFlowRateMeasure"s, +"IfcWallTypeEnum"s, +"MOVABLE"s, +"PARAPET"s, +"PARTITIONING"s, +"PLUMBINGWALL"s, +"SOLIDWALL"s, +"STANDARD"s, +"ELEMENTEDWALL"s, +"RETAININGWALL"s, +"WAVEWALL"s, +"IfcWarpingConstantMeasure"s, +"IfcWarpingMomentMeasure"s, +"IfcWarpingStiffnessSelect"s, +"IfcWasteTerminalTypeEnum"s, +"FLOORTRAP"s, +"FLOORWASTE"s, +"GULLYSUMP"s, +"GULLYTRAP"s, +"ROOFDRAIN"s, +"WASTEDISPOSALUNIT"s, +"WASTETRAP"s, +"IfcWindowPanelOperationEnum"s, +"SIDEHUNGRIGHTHAND"s, +"SIDEHUNGLEFTHAND"s, +"TILTANDTURNRIGHTHAND"s, +"TILTANDTURNLEFTHAND"s, +"TOPHUNG"s, +"BOTTOMHUNG"s, +"PIVOTHORIZONTAL"s, +"PIVOTVERTICAL"s, +"SLIDINGHORIZONTAL"s, +"SLIDINGVERTICAL"s, +"REMOVABLECASEMENT"s, +"FIXEDCASEMENT"s, +"OTHEROPERATION"s, +"IfcWindowPanelPositionEnum"s, +"BOTTOM"s, +"TOP"s, +"IfcWindowStyleConstructionEnum"s, +"OTHER_CONSTRUCTION"s, +"IfcWindowStyleOperationEnum"s, +"SINGLE_PANEL"s, +"DOUBLE_PANEL_VERTICAL"s, +"DOUBLE_PANEL_HORIZONTAL"s, +"TRIPLE_PANEL_VERTICAL"s, +"TRIPLE_PANEL_BOTTOM"s, +"TRIPLE_PANEL_TOP"s, +"TRIPLE_PANEL_LEFT"s, +"TRIPLE_PANEL_RIGHT"s, +"TRIPLE_PANEL_HORIZONTAL"s, +"IfcWindowTypeEnum"s, +"WINDOW"s, +"SKYLIGHT"s, +"LIGHTDOME"s, +"IfcWindowTypePartitioningEnum"s, +"IfcWorkCalendarTypeEnum"s, +"FIRSTSHIFT"s, +"SECONDSHIFT"s, +"THIRDSHIFT"s, +"IfcWorkPlanTypeEnum"s, +"ACTUAL"s, +"BASELINE"s, +"PLANNED"s, +"IfcWorkScheduleTypeEnum"s, +"IfcActorRole"s, +"IfcAddress"s, +"IfcAlignmentParameterSegment"s, +"IfcAlignmentVerticalSegment"s, +"IfcApplication"s, +"IfcAppliedValue"s, +"IfcApproval"s, +"IfcBoundaryCondition"s, +"IfcBoundaryEdgeCondition"s, +"IfcBoundaryFaceCondition"s, +"IfcBoundaryNodeCondition"s, +"IfcBoundaryNodeConditionWarping"s, +"IfcConnectionGeometry"s, +"IfcConnectionPointGeometry"s, +"IfcConnectionSurfaceGeometry"s, +"IfcConnectionVolumeGeometry"s, +"IfcConstraint"s, +"IfcCoordinateOperation"s, +"IfcCoordinateReferenceSystem"s, +"IfcCostValue"s, +"IfcDerivedUnit"s, +"IfcDerivedUnitElement"s, +"IfcDimensionalExponents"s, +"IfcExternalInformation"s, +"IfcExternalReference"s, +"IfcExternallyDefinedHatchStyle"s, +"IfcExternallyDefinedSurfaceStyle"s, +"IfcExternallyDefinedTextFont"s, +"IfcGridAxis"s, +"IfcIrregularTimeSeriesValue"s, +"IfcLibraryInformation"s, +"IfcLibraryReference"s, +"IfcLightDistributionData"s, +"IfcLightIntensityDistribution"s, +"IfcMapConversion"s, +"IfcMaterialClassificationRelationship"s, +"IfcMaterialDefinition"s, +"IfcMaterialLayer"s, +"IfcMaterialLayerSet"s, +"IfcMaterialLayerWithOffsets"s, +"IfcMaterialList"s, +"IfcMaterialProfile"s, +"IfcMaterialProfileSet"s, +"IfcMaterialProfileWithOffsets"s, +"IfcMaterialUsageDefinition"s, +"IfcMeasureWithUnit"s, +"IfcMetric"s, +"IfcMonetaryUnit"s, +"IfcNamedUnit"s, +"IfcObjectPlacement"s, +"IfcObjective"s, +"IfcOrganization"s, +"IfcOwnerHistory"s, +"IfcPerson"s, +"IfcPersonAndOrganization"s, +"IfcPhysicalQuantity"s, +"IfcPhysicalSimpleQuantity"s, +"IfcPostalAddress"s, +"IfcPresentationItem"s, +"IfcPresentationLayerAssignment"s, +"IfcPresentationLayerWithStyle"s, +"IfcPresentationStyle"s, +"IfcProductRepresentation"s, +"IfcProfileDef"s, +"IfcProjectedCRS"s, +"IfcPropertyAbstraction"s, +"IfcPropertyEnumeration"s, +"IfcQuantityArea"s, +"IfcQuantityCount"s, +"IfcQuantityLength"s, +"IfcQuantityTime"s, +"IfcQuantityVolume"s, +"IfcQuantityWeight"s, +"IfcRecurrencePattern"s, +"IfcReference"s, +"IfcRepresentation"s, +"IfcRepresentationContext"s, +"IfcRepresentationItem"s, +"IfcRepresentationMap"s, +"IfcResourceLevelRelationship"s, +"IfcRoot"s, +"IfcSIUnit"s, +"IfcSchedulingTime"s, +"IfcShapeAspect"s, +"IfcShapeModel"s, +"IfcShapeRepresentation"s, +"IfcStructuralConnectionCondition"s, +"IfcStructuralLoad"s, +"IfcStructuralLoadConfiguration"s, +"IfcStructuralLoadOrResult"s, +"IfcStructuralLoadStatic"s, +"IfcStructuralLoadTemperature"s, +"IfcStyleModel"s, +"IfcStyledItem"s, +"IfcStyledRepresentation"s, +"IfcSurfaceReinforcementArea"s, +"IfcSurfaceStyle"s, +"IfcSurfaceStyleLighting"s, +"IfcSurfaceStyleRefraction"s, +"IfcSurfaceStyleShading"s, +"IfcSurfaceStyleWithTextures"s, +"IfcSurfaceTexture"s, +"IfcTable"s, +"IfcTableColumn"s, +"IfcTableRow"s, +"IfcTaskTime"s, +"IfcTaskTimeRecurring"s, +"IfcTelecomAddress"s, +"IfcTextStyle"s, +"IfcTextStyleForDefinedFont"s, +"IfcTextStyleTextModel"s, +"IfcTextureCoordinate"s, +"IfcTextureCoordinateGenerator"s, +"IfcTextureMap"s, +"IfcTextureVertex"s, +"IfcTextureVertexList"s, +"IfcTimePeriod"s, +"IfcTimeSeries"s, +"IfcTimeSeriesValue"s, +"IfcTopologicalRepresentationItem"s, +"IfcTopologyRepresentation"s, +"IfcUnitAssignment"s, +"IfcVertex"s, +"IfcVertexPoint"s, +"IfcVirtualGridIntersection"s, +"IfcWorkTime"s, +"IfcActorSelect"s, +"IfcArcIndex"s, +"IfcBendingParameterSelect"s, +"IfcBoxAlignment"s, +"IfcCurveMeasureSelect"s, +"IfcDerivedMeasureValue"s, +"IfcFacilityPartTypeSelect"s, +"IfcImpactProtectionDeviceTypeSelect"s, +"IfcLayeredItem"s, +"IfcLibrarySelect"s, +"IfcLightDistributionDataSourceSelect"s, +"IfcLineIndex"s, +"IfcMaterialSelect"s, +"IfcNormalisedRatioMeasure"s, +"IfcObjectReferenceSelect"s, +"IfcPositiveRatioMeasure"s, +"IfcSegmentIndexSelect"s, +"IfcSimpleValue"s, +"IfcSizeSelect"s, +"IfcSpecularHighlightSelect"s, +"IfcSurfaceStyleElementSelect"s, +"IfcUnit"s, +"IfcAlignmentCantSegment"s, +"IfcAlignmentHorizontalSegment"s, +"IfcApprovalRelationship"s, +"IfcArbitraryClosedProfileDef"s, +"IfcArbitraryOpenProfileDef"s, +"IfcArbitraryProfileDefWithVoids"s, +"IfcBlobTexture"s, +"IfcCenterLineProfileDef"s, +"IfcClassification"s, +"IfcClassificationReference"s, +"IfcColourRgbList"s, +"IfcColourSpecification"s, +"IfcCompositeProfileDef"s, +"IfcConnectedFaceSet"s, +"IfcConnectionCurveGeometry"s, +"IfcConnectionPointEccentricity"s, +"IfcContextDependentUnit"s, +"IfcConversionBasedUnit"s, +"IfcConversionBasedUnitWithOffset"s, +"IfcCurrencyRelationship"s, +"IfcCurveStyle"s, +"IfcCurveStyleFont"s, +"IfcCurveStyleFontAndScaling"s, +"IfcCurveStyleFontPattern"s, +"IfcDerivedProfileDef"s, +"IfcDocumentInformation"s, +"IfcDocumentInformationRelationship"s, +"IfcDocumentReference"s, +"IfcEdge"s, +"IfcEdgeCurve"s, +"IfcEventTime"s, +"IfcExtendedProperties"s, +"IfcExternalReferenceRelationship"s, +"IfcFace"s, +"IfcFaceBound"s, +"IfcFaceOuterBound"s, +"IfcFaceSurface"s, +"IfcFailureConnectionCondition"s, +"IfcFillAreaStyle"s, +"IfcGeometricRepresentationContext"s, +"IfcGeometricRepresentationItem"s, +"IfcGeometricRepresentationSubContext"s, +"IfcGeometricSet"s, +"IfcGridPlacement"s, +"IfcHalfSpaceSolid"s, +"IfcImageTexture"s, +"IfcIndexedColourMap"s, +"IfcIndexedTextureMap"s, +"IfcIndexedTriangleTextureMap"s, +"IfcIrregularTimeSeries"s, +"IfcLagTime"s, +"IfcLightSource"s, +"IfcLightSourceAmbient"s, +"IfcLightSourceDirectional"s, +"IfcLightSourceGoniometric"s, +"IfcLightSourcePositional"s, +"IfcLightSourceSpot"s, +"IfcLinearPlacement"s, +"IfcLocalPlacement"s, +"IfcLoop"s, +"IfcMappedItem"s, +"IfcMaterial"s, +"IfcMaterialConstituent"s, +"IfcMaterialConstituentSet"s, +"IfcMaterialDefinitionRepresentation"s, +"IfcMaterialLayerSetUsage"s, +"IfcMaterialProfileSetUsage"s, +"IfcMaterialProfileSetUsageTapering"s, +"IfcMaterialProperties"s, +"IfcMaterialRelationship"s, +"IfcMirroredProfileDef"s, +"IfcObjectDefinition"s, +"IfcOpenCrossProfileDef"s, +"IfcOpenShell"s, +"IfcOrganizationRelationship"s, +"IfcOrientedEdge"s, +"IfcParameterizedProfileDef"s, +"IfcPath"s, +"IfcPhysicalComplexQuantity"s, +"IfcPixelTexture"s, +"IfcPlacement"s, +"IfcPlanarExtent"s, +"IfcPoint"s, +"IfcPointByDistanceExpression"s, +"IfcPointOnCurve"s, +"IfcPointOnSurface"s, +"IfcPolyLoop"s, +"IfcPolygonalBoundedHalfSpace"s, +"IfcPreDefinedItem"s, +"IfcPreDefinedProperties"s, +"IfcPreDefinedTextFont"s, +"IfcProductDefinitionShape"s, +"IfcProfileProperties"s, +"IfcProperty"s, +"IfcPropertyDefinition"s, +"IfcPropertyDependencyRelationship"s, +"IfcPropertySetDefinition"s, +"IfcPropertyTemplateDefinition"s, +"IfcQuantitySet"s, +"IfcRectangleProfileDef"s, +"IfcRegularTimeSeries"s, +"IfcReinforcementBarProperties"s, +"IfcRelationship"s, +"IfcResourceApprovalRelationship"s, +"IfcResourceConstraintRelationship"s, +"IfcResourceTime"s, +"IfcRoundedRectangleProfileDef"s, +"IfcSectionProperties"s, +"IfcSectionReinforcementProperties"s, +"IfcSectionedSpine"s, +"IfcSegment"s, +"IfcShellBasedSurfaceModel"s, +"IfcSimpleProperty"s, +"IfcSlippageConnectionCondition"s, +"IfcSolidModel"s, +"IfcStructuralLoadLinearForce"s, +"IfcStructuralLoadPlanarForce"s, +"IfcStructuralLoadSingleDisplacement"s, +"IfcStructuralLoadSingleDisplacementDistortion"s, +"IfcStructuralLoadSingleForce"s, +"IfcStructuralLoadSingleForceWarping"s, +"IfcSubedge"s, +"IfcSurface"s, +"IfcSurfaceStyleRendering"s, +"IfcSweptAreaSolid"s, +"IfcSweptDiskSolid"s, +"IfcSweptDiskSolidPolygonal"s, +"IfcSweptSurface"s, +"IfcTShapeProfileDef"s, +"IfcTessellatedItem"s, +"IfcTextLiteral"s, +"IfcTextLiteralWithExtent"s, +"IfcTextStyleFontModel"s, +"IfcTrapeziumProfileDef"s, +"IfcTypeObject"s, +"IfcTypeProcess"s, +"IfcTypeProduct"s, +"IfcTypeResource"s, +"IfcUShapeProfileDef"s, +"IfcVector"s, +"IfcVertexLoop"s, +"IfcWindowStyle"s, +"IfcZShapeProfileDef"s, +"IfcClassificationReferenceSelect"s, +"IfcClassificationSelect"s, +"IfcCoordinateReferenceSystemSelect"s, +"IfcDefinitionSelect"s, +"IfcDocumentSelect"s, +"IfcHatchLineDistanceSelect"s, +"IfcMeasureValue"s, +"IfcPointOrVertexPoint"s, +"IfcProductRepresentationSelect"s, +"IfcPropertySetDefinitionSet"s, +"IfcResourceObjectSelect"s, +"IfcTextFontSelect"s, +"IfcValue"s, +"IfcAdvancedFace"s, +"IfcAnnotationFillArea"s, +"IfcAsymmetricIShapeProfileDef"s, +"IfcAxis1Placement"s, +"IfcAxis2Placement2D"s, +"IfcAxis2Placement3D"s, +"IfcAxis2PlacementLinear"s, +"IfcBooleanResult"s, +"IfcBoundedSurface"s, +"IfcBoundingBox"s, +"IfcBoxedHalfSpace"s, +"IfcCShapeProfileDef"s, +"IfcCartesianPoint"s, +"IfcCartesianPointList"s, +"IfcCartesianPointList2D"s, +"IfcCartesianPointList3D"s, +"IfcCartesianTransformationOperator"s, +"IfcCartesianTransformationOperator2D"s, +"IfcCartesianTransformationOperator2DnonUniform"s, +"IfcCartesianTransformationOperator3D"s, +"IfcCartesianTransformationOperator3DnonUniform"s, +"IfcCircleProfileDef"s, +"IfcClosedShell"s, +"IfcColourRgb"s, +"IfcComplexProperty"s, +"IfcCompositeCurveSegment"s, +"IfcConstructionResourceType"s, +"IfcContext"s, +"IfcCrewResourceType"s, +"IfcCsgPrimitive3D"s, +"IfcCsgSolid"s, +"IfcCurve"s, +"IfcCurveBoundedPlane"s, +"IfcCurveBoundedSurface"s, +"IfcCurveSegment"s, +"IfcDirection"s, +"IfcDirectrixCurveSweptAreaSolid"s, +"IfcDoorStyle"s, +"IfcEdgeLoop"s, +"IfcElementQuantity"s, +"IfcElementType"s, +"IfcElementarySurface"s, +"IfcEllipseProfileDef"s, +"IfcEventType"s, +"IfcExtrudedAreaSolid"s, +"IfcExtrudedAreaSolidTapered"s, +"IfcFaceBasedSurfaceModel"s, +"IfcFillAreaStyleHatching"s, +"IfcFillAreaStyleTiles"s, +"IfcFixedReferenceSweptAreaSolid"s, +"IfcFurnishingElementType"s, +"IfcFurnitureType"s, +"IfcGeographicElementType"s, +"IfcGeometricCurveSet"s, +"IfcIShapeProfileDef"s, +"IfcIndexedPolygonalFace"s, +"IfcIndexedPolygonalFaceWithVoids"s, +"IfcLShapeProfileDef"s, +"IfcLaborResourceType"s, +"IfcLine"s, +"IfcManifoldSolidBrep"s, +"IfcObject"s, +"IfcOffsetCurve"s, +"IfcOffsetCurve2D"s, +"IfcOffsetCurve3D"s, +"IfcOffsetCurveByDistances"s, +"IfcPcurve"s, +"IfcPlanarBox"s, +"IfcPlane"s, +"IfcPolynomialCurve"s, +"IfcPreDefinedColour"s, +"IfcPreDefinedCurveFont"s, +"IfcPreDefinedPropertySet"s, +"IfcProcedureType"s, +"IfcProcess"s, +"IfcProduct"s, +"IfcProject"s, +"IfcProjectLibrary"s, +"IfcPropertyBoundedValue"s, +"IfcPropertyEnumeratedValue"s, +"IfcPropertyListValue"s, +"IfcPropertyReferenceValue"s, +"IfcPropertySet"s, +"IfcPropertySetTemplate"s, +"IfcPropertySingleValue"s, +"IfcPropertyTableValue"s, +"IfcPropertyTemplate"s, +"IfcProxy"s, +"IfcRectangleHollowProfileDef"s, +"IfcRectangularPyramid"s, +"IfcRectangularTrimmedSurface"s, +"IfcReinforcementDefinitionProperties"s, +"IfcRelAssigns"s, +"IfcRelAssignsToActor"s, +"IfcRelAssignsToControl"s, +"IfcRelAssignsToGroup"s, +"IfcRelAssignsToGroupByFactor"s, +"IfcRelAssignsToProcess"s, +"IfcRelAssignsToProduct"s, +"IfcRelAssignsToResource"s, +"IfcRelAssociates"s, +"IfcRelAssociatesApproval"s, +"IfcRelAssociatesClassification"s, +"IfcRelAssociatesConstraint"s, +"IfcRelAssociatesDocument"s, +"IfcRelAssociatesLibrary"s, +"IfcRelAssociatesMaterial"s, +"IfcRelAssociatesProfileDef"s, +"IfcRelConnects"s, +"IfcRelConnectsElements"s, +"IfcRelConnectsPathElements"s, +"IfcRelConnectsPortToElement"s, +"IfcRelConnectsPorts"s, +"IfcRelConnectsStructuralActivity"s, +"IfcRelConnectsStructuralMember"s, +"IfcRelConnectsWithEccentricity"s, +"IfcRelConnectsWithRealizingElements"s, +"IfcRelContainedInSpatialStructure"s, +"IfcRelCoversBldgElements"s, +"IfcRelCoversSpaces"s, +"IfcRelDeclares"s, +"IfcRelDecomposes"s, +"IfcRelDefines"s, +"IfcRelDefinesByObject"s, +"IfcRelDefinesByProperties"s, +"IfcRelDefinesByTemplate"s, +"IfcRelDefinesByType"s, +"IfcRelFillsElement"s, +"IfcRelFlowControlElements"s, +"IfcRelInterferesElements"s, +"IfcRelNests"s, +"IfcRelPositions"s, +"IfcRelProjectsElement"s, +"IfcRelReferencedInSpatialStructure"s, +"IfcRelSequence"s, +"IfcRelServicesBuildings"s, +"IfcRelSpaceBoundary"s, +"IfcRelSpaceBoundary1stLevel"s, +"IfcRelSpaceBoundary2ndLevel"s, +"IfcRelVoidsElement"s, +"IfcReparametrisedCompositeCurveSegment"s, +"IfcResource"s, +"IfcRevolvedAreaSolid"s, +"IfcRevolvedAreaSolidTapered"s, +"IfcRightCircularCone"s, +"IfcRightCircularCylinder"s, +"IfcSectionedSolid"s, +"IfcSectionedSolidHorizontal"s, +"IfcSectionedSurface"s, +"IfcSimplePropertyTemplate"s, +"IfcSpatialElement"s, +"IfcSpatialElementType"s, +"IfcSpatialStructureElement"s, +"IfcSpatialStructureElementType"s, +"IfcSpatialZone"s, +"IfcSpatialZoneType"s, +"IfcSphere"s, +"IfcSphericalSurface"s, +"IfcSpiral"s, +"IfcStructuralActivity"s, +"IfcStructuralItem"s, +"IfcStructuralMember"s, +"IfcStructuralReaction"s, +"IfcStructuralSurfaceMember"s, +"IfcStructuralSurfaceMemberVarying"s, +"IfcStructuralSurfaceReaction"s, +"IfcSubContractResourceType"s, +"IfcSurfaceCurve"s, +"IfcSurfaceCurveSweptAreaSolid"s, +"IfcSurfaceOfLinearExtrusion"s, +"IfcSurfaceOfRevolution"s, +"IfcSystemFurnitureElementType"s, +"IfcTask"s, +"IfcTaskType"s, +"IfcTessellatedFaceSet"s, +"IfcThirdOrderPolynomialSpiral"s, +"IfcToroidalSurface"s, +"IfcTransportElementType"s, +"IfcTriangulatedFaceSet"s, +"IfcTriangulatedIrregularNetwork"s, +"IfcWindowLiningProperties"s, +"IfcWindowPanelProperties"s, +"IfcAppliedValueSelect"s, +"IfcAxis2Placement"s, +"IfcBooleanOperand"s, +"IfcColour"s, +"IfcColourOrFactor"s, +"IfcCsgSelect"s, +"IfcCurveStyleFontSelect"s, +"IfcFillStyleSelect"s, +"IfcGeometricSetSelect"s, +"IfcGridPlacementDirectionSelect"s, +"IfcMetricValueSelect"s, +"IfcProcessSelect"s, +"IfcProductSelect"s, +"IfcPropertySetDefinitionSelect"s, +"IfcResourceSelect"s, +"IfcShell"s, +"IfcSolidOrShell"s, +"IfcSurfaceOrFaceSurface"s, +"IfcTrimmingSelect"s, +"IfcVectorOrDirection"s, +"IfcActor"s, +"IfcAdvancedBrep"s, +"IfcAdvancedBrepWithVoids"s, +"IfcAnnotation"s, +"IfcBSplineSurface"s, +"IfcBSplineSurfaceWithKnots"s, +"IfcBlock"s, +"IfcBooleanClippingResult"s, +"IfcBoundedCurve"s, +"IfcBuildingStorey"s, +"IfcBuiltElementType"s, +"IfcChimneyType"s, +"IfcCircleHollowProfileDef"s, +"IfcCivilElementType"s, +"IfcClothoid"s, +"IfcColumnType"s, +"IfcComplexPropertyTemplate"s, +"IfcCompositeCurve"s, +"IfcCompositeCurveOnSurface"s, +"IfcConic"s, +"IfcConstructionEquipmentResourceType"s, +"IfcConstructionMaterialResourceType"s, +"IfcConstructionProductResourceType"s, +"IfcConstructionResource"s, +"IfcControl"s, +"IfcCosine"s, +"IfcCostItem"s, +"IfcCostSchedule"s, +"IfcCourseType"s, +"IfcCoveringType"s, +"IfcCrewResource"s, +"IfcCurtainWallType"s, +"IfcCylindricalSurface"s, +"IfcDeepFoundationType"s, +"IfcDirectrixDerivedReferenceSweptAreaSolid"s, +"IfcDistributionElementType"s, +"IfcDistributionFlowElementType"s, +"IfcDoorLiningProperties"s, +"IfcDoorPanelProperties"s, +"IfcDoorType"s, +"IfcDraughtingPreDefinedColour"s, +"IfcDraughtingPreDefinedCurveFont"s, +"IfcElement"s, +"IfcElementAssembly"s, +"IfcElementAssemblyType"s, +"IfcElementComponent"s, +"IfcElementComponentType"s, +"IfcEllipse"s, +"IfcEnergyConversionDeviceType"s, +"IfcEngineType"s, +"IfcEvaporativeCoolerType"s, +"IfcEvaporatorType"s, +"IfcEvent"s, +"IfcExternalSpatialStructureElement"s, +"IfcFacetedBrep"s, +"IfcFacetedBrepWithVoids"s, +"IfcFacility"s, +"IfcFacilityPart"s, +"IfcFastener"s, +"IfcFastenerType"s, +"IfcFeatureElement"s, +"IfcFeatureElementAddition"s, +"IfcFeatureElementSubtraction"s, +"IfcFlowControllerType"s, +"IfcFlowFittingType"s, +"IfcFlowMeterType"s, +"IfcFlowMovingDeviceType"s, +"IfcFlowSegmentType"s, +"IfcFlowStorageDeviceType"s, +"IfcFlowTerminalType"s, +"IfcFlowTreatmentDeviceType"s, +"IfcFootingType"s, +"IfcFurnishingElement"s, +"IfcFurniture"s, +"IfcGeographicElement"s, +"IfcGeotechnicalElement"s, +"IfcGeotechnicalStratum"s, +"IfcGradientCurve"s, +"IfcGroup"s, +"IfcHeatExchangerType"s, +"IfcHumidifierType"s, +"IfcImpactProtectionDevice"s, +"IfcImpactProtectionDeviceType"s, +"IfcIndexedPolyCurve"s, +"IfcInterceptorType"s, +"IfcIntersectionCurve"s, +"IfcInventory"s, +"IfcJunctionBoxType"s, +"IfcKerbType"s, +"IfcLaborResource"s, +"IfcLampType"s, +"IfcLightFixtureType"s, +"IfcLinearElement"s, +"IfcLiquidTerminalType"s, +"IfcMarineFacility"s, +"IfcMechanicalFastener"s, +"IfcMechanicalFastenerType"s, +"IfcMedicalDeviceType"s, +"IfcMemberType"s, +"IfcMobileTelecommunicationsApplianceType"s, +"IfcMooringDeviceType"s, +"IfcMotorConnectionType"s, +"IfcNavigationElementType"s, +"IfcOccupant"s, +"IfcOpeningElement"s, +"IfcOpeningStandardCase"s, +"IfcOutletType"s, +"IfcPavementType"s, +"IfcPerformanceHistory"s, +"IfcPermeableCoveringProperties"s, +"IfcPermit"s, +"IfcPileType"s, +"IfcPipeFittingType"s, +"IfcPipeSegmentType"s, +"IfcPlant"s, +"IfcPlateType"s, +"IfcPolygonalFaceSet"s, +"IfcPolyline"s, +"IfcPort"s, +"IfcPositioningElement"s, +"IfcProcedure"s, +"IfcProjectOrder"s, +"IfcProjectionElement"s, +"IfcProtectiveDeviceType"s, +"IfcPumpType"s, +"IfcRailType"s, +"IfcRailingType"s, +"IfcRailway"s, +"IfcRampFlightType"s, +"IfcRampType"s, +"IfcRationalBSplineSurfaceWithKnots"s, +"IfcReferent"s, +"IfcReinforcingElement"s, +"IfcReinforcingElementType"s, +"IfcReinforcingMesh"s, +"IfcReinforcingMeshType"s, +"IfcRelAdheresToElement"s, +"IfcRelAggregates"s, +"IfcRoad"s, +"IfcRoofType"s, +"IfcSanitaryTerminalType"s, +"IfcSeamCurve"s, +"IfcSecondOrderPolynomialSpiral"s, +"IfcSegmentedReferenceCurve"s, +"IfcSeventhOrderPolynomialSpiral"s, +"IfcShadingDeviceType"s, +"IfcSign"s, +"IfcSignType"s, +"IfcSignalType"s, +"IfcSine"s, +"IfcSite"s, +"IfcSlabType"s, +"IfcSolarDeviceType"s, +"IfcSolidStratum"s, +"IfcSpace"s, +"IfcSpaceHeaterType"s, +"IfcSpaceType"s, +"IfcStackTerminalType"s, +"IfcStairFlightType"s, +"IfcStairType"s, +"IfcStructuralAction"s, +"IfcStructuralConnection"s, +"IfcStructuralCurveAction"s, +"IfcStructuralCurveConnection"s, +"IfcStructuralCurveMember"s, +"IfcStructuralCurveMemberVarying"s, +"IfcStructuralCurveReaction"s, +"IfcStructuralLinearAction"s, +"IfcStructuralLoadGroup"s, +"IfcStructuralPointAction"s, +"IfcStructuralPointConnection"s, +"IfcStructuralPointReaction"s, +"IfcStructuralResultGroup"s, +"IfcStructuralSurfaceAction"s, +"IfcStructuralSurfaceConnection"s, +"IfcSubContractResource"s, +"IfcSurfaceFeature"s, +"IfcSwitchingDeviceType"s, +"IfcSystem"s, +"IfcSystemFurnitureElement"s, +"IfcTankType"s, +"IfcTendon"s, +"IfcTendonAnchor"s, +"IfcTendonAnchorType"s, +"IfcTendonConduit"s, +"IfcTendonConduitType"s, +"IfcTendonType"s, +"IfcTrackElementType"s, +"IfcTransformerType"s, +"IfcTransportElement"s, +"IfcTrimmedCurve"s, +"IfcTubeBundleType"s, +"IfcUnitaryEquipmentType"s, +"IfcValveType"s, +"IfcVibrationDamper"s, +"IfcVibrationDamperType"s, +"IfcVibrationIsolator"s, +"IfcVibrationIsolatorType"s, +"IfcVirtualElement"s, +"IfcVoidStratum"s, +"IfcVoidingFeature"s, +"IfcWallType"s, +"IfcWasteTerminalType"s, +"IfcWaterStratum"s, +"IfcWindowType"s, +"IfcWorkCalendar"s, +"IfcWorkControl"s, +"IfcWorkPlan"s, +"IfcWorkSchedule"s, +"IfcZone"s, +"IfcCurveFontOrScaledCurveFontSelect"s, +"IfcCurveOnSurface"s, +"IfcCurveOrEdgeCurve"s, +"IfcInterferenceSelect"s, +"IfcSpatialReferenceSelect"s, +"IfcStructuralActivityAssignmentSelect"s, +"IfcActionRequest"s, +"IfcAirTerminalBoxType"s, +"IfcAirTerminalType"s, +"IfcAirToAirHeatRecoveryType"s, +"IfcAlignmentCant"s, +"IfcAlignmentHorizontal"s, +"IfcAlignmentSegment"s, +"IfcAlignmentVertical"s, +"IfcAsset"s, +"IfcAudioVisualApplianceType"s, +"IfcBSplineCurve"s, +"IfcBSplineCurveWithKnots"s, +"IfcBeamType"s, +"IfcBearingType"s, +"IfcBoilerType"s, +"IfcBoundaryCurve"s, +"IfcBridge"s, +"IfcBuilding"s, +"IfcBuildingElementPart"s, +"IfcBuildingElementPartType"s, +"IfcBuildingElementProxyType"s, +"IfcBuildingSystem"s, +"IfcBuiltElement"s, +"IfcBuiltSystem"s, +"IfcBurnerType"s, +"IfcCableCarrierFittingType"s, +"IfcCableCarrierSegmentType"s, +"IfcCableFittingType"s, +"IfcCableSegmentType"s, +"IfcCaissonFoundationType"s, +"IfcChillerType"s, +"IfcChimney"s, +"IfcCircle"s, +"IfcCivilElement"s, +"IfcCoilType"s, +"IfcColumn"s, +"IfcColumnStandardCase"s, +"IfcCommunicationsApplianceType"s, +"IfcCompressorType"s, +"IfcCondenserType"s, +"IfcConstructionEquipmentResource"s, +"IfcConstructionMaterialResource"s, +"IfcConstructionProductResource"s, +"IfcConveyorSegmentType"s, +"IfcCooledBeamType"s, +"IfcCoolingTowerType"s, +"IfcCourse"s, +"IfcCovering"s, +"IfcCurtainWall"s, +"IfcDamperType"s, +"IfcDeepFoundation"s, +"IfcDiscreteAccessory"s, +"IfcDiscreteAccessoryType"s, +"IfcDistributionBoardType"s, +"IfcDistributionChamberElementType"s, +"IfcDistributionControlElementType"s, +"IfcDistributionElement"s, +"IfcDistributionFlowElement"s, +"IfcDistributionPort"s, +"IfcDistributionSystem"s, +"IfcDoor"s, +"IfcDoorStandardCase"s, +"IfcDuctFittingType"s, +"IfcDuctSegmentType"s, +"IfcDuctSilencerType"s, +"IfcEarthworksCut"s, +"IfcEarthworksElement"s, +"IfcEarthworksFill"s, +"IfcElectricApplianceType"s, +"IfcElectricDistributionBoardType"s, +"IfcElectricFlowStorageDeviceType"s, +"IfcElectricFlowTreatmentDeviceType"s, +"IfcElectricGeneratorType"s, +"IfcElectricMotorType"s, +"IfcElectricTimeControlType"s, +"IfcEnergyConversionDevice"s, +"IfcEngine"s, +"IfcEvaporativeCooler"s, +"IfcEvaporator"s, +"IfcExternalSpatialElement"s, +"IfcFanType"s, +"IfcFilterType"s, +"IfcFireSuppressionTerminalType"s, +"IfcFlowController"s, +"IfcFlowFitting"s, +"IfcFlowInstrumentType"s, +"IfcFlowMeter"s, +"IfcFlowMovingDevice"s, +"IfcFlowSegment"s, +"IfcFlowStorageDevice"s, +"IfcFlowTerminal"s, +"IfcFlowTreatmentDevice"s, +"IfcFooting"s, +"IfcGeotechnicalAssembly"s, +"IfcGrid"s, +"IfcHeatExchanger"s, +"IfcHumidifier"s, +"IfcInterceptor"s, +"IfcJunctionBox"s, +"IfcKerb"s, +"IfcLamp"s, +"IfcLightFixture"s, +"IfcLinearPositioningElement"s, +"IfcLiquidTerminal"s, +"IfcMedicalDevice"s, +"IfcMember"s, +"IfcMemberStandardCase"s, +"IfcMobileTelecommunicationsAppliance"s, +"IfcMooringDevice"s, +"IfcMotorConnection"s, +"IfcNavigationElement"s, +"IfcOuterBoundaryCurve"s, +"IfcOutlet"s, +"IfcPavement"s, +"IfcPile"s, +"IfcPipeFitting"s, +"IfcPipeSegment"s, +"IfcPlate"s, +"IfcPlateStandardCase"s, +"IfcProtectiveDevice"s, +"IfcProtectiveDeviceTrippingUnitType"s, +"IfcPump"s, +"IfcRail"s, +"IfcRailing"s, +"IfcRamp"s, +"IfcRampFlight"s, +"IfcRationalBSplineCurveWithKnots"s, +"IfcReinforcedSoil"s, +"IfcReinforcingBar"s, +"IfcReinforcingBarType"s, +"IfcRoof"s, +"IfcSanitaryTerminal"s, +"IfcSensorType"s, +"IfcShadingDevice"s, +"IfcSignal"s, +"IfcSlab"s, +"IfcSlabElementedCase"s, +"IfcSlabStandardCase"s, +"IfcSolarDevice"s, +"IfcSpaceHeater"s, +"IfcStackTerminal"s, +"IfcStair"s, +"IfcStairFlight"s, +"IfcStructuralAnalysisModel"s, +"IfcStructuralLoadCase"s, +"IfcStructuralPlanarAction"s, +"IfcSwitchingDevice"s, +"IfcTank"s, +"IfcTrackElement"s, +"IfcTransformer"s, +"IfcTubeBundle"s, +"IfcUnitaryControlElementType"s, +"IfcUnitaryEquipment"s, +"IfcValve"s, +"IfcWall"s, +"IfcWallElementedCase"s, +"IfcWallStandardCase"s, +"IfcWasteTerminal"s, +"IfcWindow"s, +"IfcWindowStandardCase"s, +"IfcSpaceBoundarySelect"s, +"IfcActuatorType"s, +"IfcAirTerminal"s, +"IfcAirTerminalBox"s, +"IfcAirToAirHeatRecovery"s, +"IfcAlarmType"s, +"IfcAlignment"s, +"IfcAudioVisualAppliance"s, +"IfcBeam"s, +"IfcBeamStandardCase"s, +"IfcBearing"s, +"IfcBoiler"s, +"IfcBorehole"s, +"IfcBuildingElementProxy"s, +"IfcBurner"s, +"IfcCableCarrierFitting"s, +"IfcCableCarrierSegment"s, +"IfcCableFitting"s, +"IfcCableSegment"s, +"IfcCaissonFoundation"s, +"IfcChiller"s, +"IfcCoil"s, +"IfcCommunicationsAppliance"s, +"IfcCompressor"s, +"IfcCondenser"s, +"IfcControllerType"s, +"IfcConveyorSegment"s, +"IfcCooledBeam"s, +"IfcCoolingTower"s, +"IfcDamper"s, +"IfcDistributionBoard"s, +"IfcDistributionChamberElement"s, +"IfcDistributionCircuit"s, +"IfcDistributionControlElement"s, +"IfcDuctFitting"s, +"IfcDuctSegment"s, +"IfcDuctSilencer"s, +"IfcElectricAppliance"s, +"IfcElectricDistributionBoard"s, +"IfcElectricFlowStorageDevice"s, +"IfcElectricFlowTreatmentDevice"s, +"IfcElectricGenerator"s, +"IfcElectricMotor"s, +"IfcElectricTimeControl"s, +"IfcFan"s, +"IfcFilter"s, +"IfcFireSuppressionTerminal"s, +"IfcFlowInstrument"s, +"IfcGeomodel"s, +"IfcGeoslice"s, +"IfcProtectiveDeviceTrippingUnit"s, +"IfcSensor"s, +"IfcUnitaryControlElement"s, +"IfcActuator"s, +"IfcAlarm"s, +"IfcController"s, +"PredefinedType"s, +"Status"s, +"LongDescription"s, +"TheActor"s, +"Role"s, +"UserDefinedRole"s, +"Description"s, +"Purpose"s, +"UserDefinedPurpose"s, +"Voids"s, +"RailHeadDistance"s, +"StartDistAlong"s, +"HorizontalLength"s, +"StartCantLeft"s, +"EndCantLeft"s, +"StartCantRight"s, +"EndCantRight"s, +"StartPoint"s, +"StartDirection"s, +"StartRadiusOfCurvature"s, +"EndRadiusOfCurvature"s, +"SegmentLength"s, +"GravityCenterLineHeight"s, +"StartTag"s, +"EndTag"s, +"DesignParameters"s, +"StartHeight"s, +"StartGradient"s, +"EndGradient"s, +"RadiusOfCurvature"s, +"OuterBoundary"s, +"InnerBoundaries"s, +"ApplicationDeveloper"s, +"Version"s, +"ApplicationFullName"s, +"ApplicationIdentifier"s, +"Name"s, +"AppliedValue"s, +"UnitBasis"s, +"ApplicableDate"s, +"FixedUntilDate"s, +"Category"s, +"Condition"s, +"ArithmeticOperator"s, +"Components"s, +"Identifier"s, +"TimeOfApproval"s, +"Level"s, +"Qualifier"s, +"RequestingApproval"s, +"GivingApproval"s, +"RelatingApproval"s, +"RelatedApprovals"s, +"OuterCurve"s, +"Curve"s, +"InnerCurves"s, +"Identification"s, +"OriginalValue"s, +"CurrentValue"s, +"TotalReplacementCost"s, +"Owner"s, +"User"s, +"ResponsiblePerson"s, +"IncorporationDate"s, +"DepreciatedValue"s, +"BottomFlangeWidth"s, +"OverallDepth"s, +"WebThickness"s, +"BottomFlangeThickness"s, +"BottomFlangeFilletRadius"s, +"TopFlangeWidth"s, +"TopFlangeThickness"s, +"TopFlangeFilletRadius"s, +"BottomFlangeEdgeRadius"s, +"BottomFlangeSlope"s, +"TopFlangeEdgeRadius"s, +"TopFlangeSlope"s, +"Axis"s, +"RefDirection"s, +"Degree"s, +"ControlPointsList"s, +"CurveForm"s, +"ClosedCurve"s, +"SelfIntersect"s, +"KnotMultiplicities"s, +"Knots"s, +"KnotSpec"s, +"UDegree"s, +"VDegree"s, +"SurfaceForm"s, +"UClosed"s, +"VClosed"s, +"UMultiplicities"s, +"VMultiplicities"s, +"UKnots"s, +"VKnots"s, +"RasterFormat"s, +"RasterCode"s, +"XLength"s, +"YLength"s, +"ZLength"s, +"Operator"s, +"FirstOperand"s, +"SecondOperand"s, +"TranslationalStiffnessByLengthX"s, +"TranslationalStiffnessByLengthY"s, +"TranslationalStiffnessByLengthZ"s, +"RotationalStiffnessByLengthX"s, +"RotationalStiffnessByLengthY"s, +"RotationalStiffnessByLengthZ"s, +"TranslationalStiffnessByAreaX"s, +"TranslationalStiffnessByAreaY"s, +"TranslationalStiffnessByAreaZ"s, +"TranslationalStiffnessX"s, +"TranslationalStiffnessY"s, +"TranslationalStiffnessZ"s, +"RotationalStiffnessX"s, +"RotationalStiffnessY"s, +"RotationalStiffnessZ"s, +"WarpingStiffness"s, +"Corner"s, +"XDim"s, +"YDim"s, +"ZDim"s, +"Enclosure"s, +"ElevationOfRefHeight"s, +"ElevationOfTerrain"s, +"BuildingAddress"s, +"Elevation"s, +"LongName"s, +"Depth"s, +"Width"s, +"WallThickness"s, +"Girth"s, +"InternalFilletRadius"s, +"Coordinates"s, +"CoordList"s, +"TagList"s, +"Axis1"s, +"Axis2"s, +"LocalOrigin"s, +"Scale"s, +"Scale2"s, +"Axis3"s, +"Scale3"s, +"Thickness"s, +"Radius"s, +"Source"s, +"Edition"s, +"EditionDate"s, +"Location"s, +"ReferenceTokens"s, +"ReferencedSource"s, +"Sort"s, +"ClothoidConstant"s, +"Red"s, +"Green"s, +"Blue"s, +"ColourList"s, +"UsageName"s, +"HasProperties"s, +"TemplateType"s, +"HasPropertyTemplates"s, +"Segments"s, +"SameSense"s, +"ParentCurve"s, +"Profiles"s, +"Label"s, +"Position"s, +"CfsFaces"s, +"CurveOnRelatingElement"s, +"CurveOnRelatedElement"s, +"EccentricityInX"s, +"EccentricityInY"s, +"EccentricityInZ"s, +"PointOnRelatingElement"s, +"PointOnRelatedElement"s, +"SurfaceOnRelatingElement"s, +"SurfaceOnRelatedElement"s, +"VolumeOnRelatingElement"s, +"VolumeOnRelatedElement"s, +"ConstraintGrade"s, +"ConstraintSource"s, +"CreatingActor"s, +"CreationTime"s, +"UserDefinedGrade"s, +"Usage"s, +"BaseCosts"s, +"BaseQuantity"s, +"ObjectType"s, +"Phase"s, +"RepresentationContexts"s, +"UnitsInContext"s, +"ConversionFactor"s, +"ConversionOffset"s, +"SourceCRS"s, +"TargetCRS"s, +"GeodeticDatum"s, +"VerticalDatum"s, +"CosineTerm"s, +"ConstantTerm"s, +"CostValues"s, +"CostQuantities"s, +"SubmittedOn"s, +"UpdateDate"s, +"TreeRootExpression"s, +"RelatingMonetaryUnit"s, +"RelatedMonetaryUnit"s, +"ExchangeRate"s, +"RateDateTime"s, +"RateSource"s, +"BasisSurface"s, +"Boundaries"s, +"ImplicitOuter"s, +"Placement"s, +"SegmentStart"s, +"CurveFont"s, +"CurveWidth"s, +"CurveColour"s, +"ModelOrDraughting"s, +"PatternList"s, +"CurveFontScaling"s, +"VisibleSegmentLength"s, +"InvisibleSegmentLength"s, +"ParentProfile"s, +"Elements"s, +"UnitType"s, +"UserDefinedType"s, +"Unit"s, +"Exponent"s, +"LengthExponent"s, +"MassExponent"s, +"TimeExponent"s, +"ElectricCurrentExponent"s, +"ThermodynamicTemperatureExponent"s, +"AmountOfSubstanceExponent"s, +"LuminousIntensityExponent"s, +"DirectionRatios"s, +"Directrix"s, +"StartParam"s, +"EndParam"s, +"FlowDirection"s, +"SystemType"s, +"IntendedUse"s, +"Scope"s, +"Revision"s, +"DocumentOwner"s, +"Editors"s, +"LastRevisionTime"s, +"ElectronicFormat"s, +"ValidFrom"s, +"ValidUntil"s, +"Confidentiality"s, +"RelatingDocument"s, +"RelatedDocuments"s, +"RelationshipType"s, +"ReferencedDocument"s, +"OverallHeight"s, +"OverallWidth"s, +"OperationType"s, +"UserDefinedOperationType"s, +"LiningDepth"s, +"LiningThickness"s, +"ThresholdDepth"s, +"ThresholdThickness"s, +"TransomThickness"s, +"TransomOffset"s, +"LiningOffset"s, +"ThresholdOffset"s, +"CasingThickness"s, +"CasingDepth"s, +"ShapeAspectStyle"s, +"LiningToPanelOffsetX"s, +"LiningToPanelOffsetY"s, +"PanelDepth"s, +"PanelOperation"s, +"PanelWidth"s, +"PanelPosition"s, +"ConstructionType"s, +"ParameterTakesPrecedence"s, +"Sizeable"s, +"EdgeStart"s, +"EdgeEnd"s, +"EdgeGeometry"s, +"EdgeList"s, +"Tag"s, +"AssemblyPlace"s, +"MethodOfMeasurement"s, +"Quantities"s, +"ElementType"s, +"SemiAxis1"s, +"SemiAxis2"s, +"EventTriggerType"s, +"UserDefinedEventTriggerType"s, +"EventOccurenceTime"s, +"ActualDate"s, +"EarlyDate"s, +"LateDate"s, +"ScheduleDate"s, +"Properties"s, +"RelatingReference"s, +"RelatedResourceObjects"s, +"ExtrudedDirection"s, +"EndSweptArea"s, +"Bounds"s, +"FbsmFaces"s, +"Bound"s, +"Orientation"s, +"FaceSurface"s, +"UsageType"s, +"TensionFailureX"s, +"TensionFailureY"s, +"TensionFailureZ"s, +"CompressionFailureX"s, +"CompressionFailureY"s, +"CompressionFailureZ"s, +"FillStyles"s, +"HatchLineAppearance"s, +"StartOfNextHatchLine"s, +"PointOfReferenceHatchLine"s, +"PatternStart"s, +"HatchLineAngle"s, +"TilingPattern"s, +"Tiles"s, +"TilingScale"s, +"FixedReference"s, +"CoordinateSpaceDimension"s, +"Precision"s, +"WorldCoordinateSystem"s, +"TrueNorth"s, +"ParentContext"s, +"TargetScale"s, +"TargetView"s, +"UserDefinedTargetView"s, +"BaseCurve"s, +"EndPoint"s, +"UAxes"s, +"VAxes"s, +"WAxes"s, +"AxisTag"s, +"AxisCurve"s, +"PlacementLocation"s, +"PlacementRefDirection"s, +"BaseSurface"s, +"AgreementFlag"s, +"FlangeThickness"s, +"FilletRadius"s, +"FlangeEdgeRadius"s, +"FlangeSlope"s, +"URLReference"s, +"MappedTo"s, +"Opacity"s, +"Colours"s, +"ColourIndex"s, +"Points"s, +"CoordIndex"s, +"InnerCoordIndices"s, +"TexCoords"s, +"TexCoordIndex"s, +"Jurisdiction"s, +"ResponsiblePersons"s, +"LastUpdateDate"s, +"Values"s, +"TimeStamp"s, +"ListValues"s, +"Mountable"s, +"EdgeRadius"s, +"LegSlope"s, +"LagValue"s, +"DurationType"s, +"Publisher"s, +"VersionDate"s, +"Language"s, +"ReferencedLibrary"s, +"MainPlaneAngle"s, +"SecondaryPlaneAngle"s, +"LuminousIntensity"s, +"LightDistributionCurve"s, +"DistributionData"s, +"LightColour"s, +"AmbientIntensity"s, +"Intensity"s, +"ColourAppearance"s, +"ColourTemperature"s, +"LuminousFlux"s, +"LightEmissionSource"s, +"LightDistributionDataSource"s, +"ConstantAttenuation"s, +"DistanceAttenuation"s, +"QuadricAttenuation"s, +"ConcentrationExponent"s, +"SpreadAngle"s, +"BeamWidthAngle"s, +"Pnt"s, +"Dir"s, +"RelativePlacement"s, +"CartesianPosition"s, +"Outer"s, +"Eastings"s, +"Northings"s, +"OrthogonalHeight"s, +"XAxisAbscissa"s, +"XAxisOrdinate"s, +"ScaleY"s, +"ScaleZ"s, +"MappingSource"s, +"MappingTarget"s, +"MaterialClassifications"s, +"ClassifiedMaterial"s, +"Material"s, +"Fraction"s, +"MaterialConstituents"s, +"RepresentedMaterial"s, +"LayerThickness"s, +"IsVentilated"s, +"Priority"s, +"MaterialLayers"s, +"LayerSetName"s, +"ForLayerSet"s, +"LayerSetDirection"s, +"DirectionSense"s, +"OffsetFromReferenceLine"s, +"ReferenceExtent"s, +"OffsetDirection"s, +"OffsetValues"s, +"Materials"s, +"Profile"s, +"MaterialProfiles"s, +"CompositeProfile"s, +"ForProfileSet"s, +"CardinalPoint"s, +"ForProfileEndSet"s, +"CardinalEndPoint"s, +"RelatingMaterial"s, +"RelatedMaterials"s, +"Expression"s, +"ValueComponent"s, +"UnitComponent"s, +"NominalDiameter"s, +"NominalLength"s, +"Benchmark"s, +"ValueSource"s, +"DataValue"s, +"ReferencePath"s, +"Currency"s, +"Dimensions"s, +"PlacementRelTo"s, +"BenchmarkValues"s, +"LogicalAggregator"s, +"ObjectiveQualifier"s, +"UserDefinedQualifier"s, +"BasisCurve"s, +"Distance"s, +"HorizontalWidths"s, +"Widths"s, +"Slopes"s, +"Tags"s, +"Roles"s, +"Addresses"s, +"RelatingOrganization"s, +"RelatedOrganizations"s, +"EdgeElement"s, +"OwningUser"s, +"OwningApplication"s, +"State"s, +"ChangeAction"s, +"LastModifiedDate"s, +"LastModifyingUser"s, +"LastModifyingApplication"s, +"CreationDate"s, +"ReferenceCurve"s, +"LifeCyclePhase"s, +"FrameDepth"s, +"FrameThickness"s, +"FamilyName"s, +"GivenName"s, +"MiddleNames"s, +"PrefixTitles"s, +"SuffixTitles"s, +"ThePerson"s, +"TheOrganization"s, +"HasQuantities"s, +"Discrimination"s, +"Quality"s, +"Height"s, +"ColourComponents"s, +"Pixel"s, +"SizeInX"s, +"SizeInY"s, +"DistanceAlong"s, +"OffsetLateral"s, +"OffsetVertical"s, +"OffsetLongitudinal"s, +"PointParameter"s, +"PointParameterU"s, +"PointParameterV"s, +"Polygon"s, +"PolygonalBoundary"s, +"Closed"s, +"Faces"s, +"PnIndex"s, +"CoefficientsX"s, +"CoefficientsY"s, +"CoefficientsZ"s, +"InternalLocation"s, +"AddressLines"s, +"PostalBox"s, +"Town"s, +"Region"s, +"PostalCode"s, +"Country"s, +"AssignedItems"s, +"LayerOn"s, +"LayerFrozen"s, +"LayerBlocked"s, +"LayerStyles"s, +"ObjectPlacement"s, +"Representation"s, +"Representations"s, +"ProfileType"s, +"ProfileName"s, +"ProfileDefinition"s, +"MapProjection"s, +"MapZone"s, +"MapUnit"s, +"UpperBoundValue"s, +"LowerBoundValue"s, +"SetPointValue"s, +"DependingProperty"s, +"DependantProperty"s, +"EnumerationValues"s, +"EnumerationReference"s, +"PropertyReference"s, +"ApplicableEntity"s, +"NominalValue"s, +"DefiningValues"s, +"DefinedValues"s, +"DefiningUnit"s, +"DefinedUnit"s, +"CurveInterpolation"s, +"ProxyType"s, +"AreaValue"s, +"Formula"s, +"CountValue"s, +"LengthValue"s, +"TimeValue"s, +"VolumeValue"s, +"WeightValue"s, +"WeightsData"s, +"InnerFilletRadius"s, +"OuterFilletRadius"s, +"U1"s, +"V1"s, +"U2"s, +"V2"s, +"Usense"s, +"Vsense"s, +"RecurrenceType"s, +"DayComponent"s, +"WeekdayComponent"s, +"MonthComponent"s, +"Interval"s, +"Occurrences"s, +"TimePeriods"s, +"TypeIdentifier"s, +"AttributeIdentifier"s, +"InstanceName"s, +"ListPositions"s, +"InnerReference"s, +"RestartDistance"s, +"TimeStep"s, +"TotalCrossSectionArea"s, +"SteelGrade"s, +"BarSurface"s, +"EffectiveDepth"s, +"NominalBarDiameter"s, +"BarCount"s, +"DefinitionType"s, +"ReinforcementSectionDefinitions"s, +"CrossSectionArea"s, +"BarLength"s, +"BendingShapeCode"s, +"BendingParameters"s, +"MeshLength"s, +"MeshWidth"s, +"LongitudinalBarNominalDiameter"s, +"TransverseBarNominalDiameter"s, +"LongitudinalBarCrossSectionArea"s, +"TransverseBarCrossSectionArea"s, +"LongitudinalBarSpacing"s, +"TransverseBarSpacing"s, +"RelatingElement"s, +"RelatedSurfaceFeatures"s, +"RelatingObject"s, +"RelatedObjects"s, +"RelatedObjectsType"s, +"RelatingActor"s, +"ActingRole"s, +"RelatingControl"s, +"RelatingGroup"s, +"Factor"s, +"RelatingProcess"s, +"QuantityInProcess"s, +"RelatingProduct"s, +"RelatingResource"s, +"RelatingClassification"s, +"Intent"s, +"RelatingConstraint"s, +"RelatingLibrary"s, +"RelatingProfileDef"s, +"ConnectionGeometry"s, +"RelatedElement"s, +"RelatingPriorities"s, +"RelatedPriorities"s, +"RelatedConnectionType"s, +"RelatingConnectionType"s, +"RelatingPort"s, +"RelatedPort"s, +"RealizingElement"s, +"RelatedStructuralActivity"s, +"RelatingStructuralMember"s, +"RelatedStructuralConnection"s, +"AppliedCondition"s, +"AdditionalConditions"s, +"SupportedLength"s, +"ConditionCoordinateSystem"s, +"ConnectionConstraint"s, +"RealizingElements"s, +"ConnectionType"s, +"RelatedElements"s, +"RelatingStructure"s, +"RelatingBuildingElement"s, +"RelatedCoverings"s, +"RelatingSpace"s, +"RelatingContext"s, +"RelatedDefinitions"s, +"RelatingPropertyDefinition"s, +"RelatedPropertySets"s, +"RelatingTemplate"s, +"RelatingType"s, +"RelatingOpeningElement"s, +"RelatedBuildingElement"s, +"RelatedControlElements"s, +"RelatingFlowElement"s, +"InterferenceGeometry"s, +"InterferenceSpace"s, +"InterferenceType"s, +"ImpliedOrder"s, +"RelatingPositioningElement"s, +"RelatedProducts"s, +"RelatedFeatureElement"s, +"RelatedProcess"s, +"TimeLag"s, +"SequenceType"s, +"UserDefinedSequenceType"s, +"RelatingSystem"s, +"RelatedBuildings"s, +"PhysicalOrVirtualBoundary"s, +"InternalOrExternalBoundary"s, +"ParentBoundary"s, +"CorrespondingBoundary"s, +"RelatedOpeningElement"s, +"ParamLength"s, +"ContextOfItems"s, +"RepresentationIdentifier"s, +"RepresentationType"s, +"Items"s, +"ContextIdentifier"s, +"ContextType"s, +"MappingOrigin"s, +"MappedRepresentation"s, +"ScheduleWork"s, +"ScheduleUsage"s, +"ScheduleStart"s, +"ScheduleFinish"s, +"ScheduleContour"s, +"LevelingDelay"s, +"IsOverAllocated"s, +"StatusTime"s, +"ActualWork"s, +"ActualUsage"s, +"ActualStart"s, +"ActualFinish"s, +"RemainingWork"s, +"RemainingUsage"s, +"Completion"s, +"Angle"s, +"BottomRadius"s, +"GlobalId"s, +"OwnerHistory"s, +"RoundingRadius"s, +"Prefix"s, +"DataOrigin"s, +"UserDefinedDataOrigin"s, +"QuadraticTerm"s, +"LinearTerm"s, +"SectionType"s, +"StartProfile"s, +"EndProfile"s, +"LongitudinalStartPosition"s, +"LongitudinalEndPosition"s, +"TransversePosition"s, +"ReinforcementRole"s, +"SectionDefinition"s, +"CrossSectionReinforcementDefinitions"s, +"CrossSections"s, +"CrossSectionPositions"s, +"FixedAxisVertical"s, +"SpineCurve"s, +"Transition"s, +"SepticTerm"s, +"SexticTerm"s, +"QuinticTerm"s, +"QuarticTerm"s, +"CubicTerm"s, +"ShapeRepresentations"s, +"ProductDefinitional"s, +"PartOfProductDefinitionShape"s, +"SbsmBoundary"s, +"PrimaryMeasureType"s, +"SecondaryMeasureType"s, +"Enumerators"s, +"PrimaryUnit"s, +"SecondaryUnit"s, +"AccessState"s, +"SineTerm"s, +"RefLatitude"s, +"RefLongitude"s, +"RefElevation"s, +"LandTitleNumber"s, +"SiteAddress"s, +"SlippageX"s, +"SlippageY"s, +"SlippageZ"s, +"ElevationWithFlooring"s, +"CompositionType"s, +"NumberOfRisers"s, +"NumberOfTreads"s, +"RiserHeight"s, +"TreadLength"s, +"DestabilizingLoad"s, +"AppliedLoad"s, +"GlobalOrLocal"s, +"OrientationOf2DPlane"s, +"LoadedBy"s, +"HasResults"s, +"SharedPlacement"s, +"ProjectedOrTrue"s, +"SelfWeightCoefficients"s, +"Locations"s, +"ActionType"s, +"ActionSource"s, +"Coefficient"s, +"LinearForceX"s, +"LinearForceY"s, +"LinearForceZ"s, +"LinearMomentX"s, +"LinearMomentY"s, +"LinearMomentZ"s, +"PlanarForceX"s, +"PlanarForceY"s, +"PlanarForceZ"s, +"DisplacementX"s, +"DisplacementY"s, +"DisplacementZ"s, +"RotationalDisplacementRX"s, +"RotationalDisplacementRY"s, +"RotationalDisplacementRZ"s, +"Distortion"s, +"ForceX"s, +"ForceY"s, +"ForceZ"s, +"MomentX"s, +"MomentY"s, +"MomentZ"s, +"WarpingMoment"s, +"DeltaTConstant"s, +"DeltaTY"s, +"DeltaTZ"s, +"TheoryType"s, +"ResultForLoadGroup"s, +"IsLinear"s, +"Item"s, +"Styles"s, +"ParentEdge"s, +"Curve3D"s, +"AssociatedGeometry"s, +"MasterRepresentation"s, +"ReferenceSurface"s, +"AxisPosition"s, +"SurfaceReinforcement1"s, +"SurfaceReinforcement2"s, +"ShearReinforcement"s, +"Side"s, +"DiffuseTransmissionColour"s, +"DiffuseReflectionColour"s, +"TransmissionColour"s, +"ReflectanceColour"s, +"RefractionIndex"s, +"DispersionFactor"s, +"DiffuseColour"s, +"ReflectionColour"s, +"SpecularColour"s, +"SpecularHighlight"s, +"ReflectanceMethod"s, +"SurfaceColour"s, +"Transparency"s, +"Textures"s, +"RepeatS"s, +"RepeatT"s, +"Mode"s, +"TextureTransform"s, +"Parameter"s, +"SweptArea"s, +"InnerRadius"s, +"SweptCurve"s, +"FlangeWidth"s, +"WebEdgeRadius"s, +"WebSlope"s, +"Rows"s, +"Columns"s, +"RowCells"s, +"IsHeading"s, +"WorkMethod"s, +"IsMilestone"s, +"TaskTime"s, +"ScheduleDuration"s, +"EarlyStart"s, +"EarlyFinish"s, +"LateStart"s, +"LateFinish"s, +"FreeFloat"s, +"TotalFloat"s, +"IsCritical"s, +"ActualDuration"s, +"RemainingTime"s, +"Recurrence"s, +"TelephoneNumbers"s, +"FacsimileNumbers"s, +"PagerNumber"s, +"ElectronicMailAddresses"s, +"WWWHomePageURL"s, +"MessagingIDs"s, +"TensionForce"s, +"PreStress"s, +"FrictionCoefficient"s, +"AnchorageSlip"s, +"MinCurvatureRadius"s, +"SheathDiameter"s, +"Literal"s, +"Path"s, +"Extent"s, +"BoxAlignment"s, +"TextCharacterAppearance"s, +"TextStyle"s, +"TextFontStyle"s, +"FontFamily"s, +"FontStyle"s, +"FontVariant"s, +"FontWeight"s, +"FontSize"s, +"Colour"s, +"BackgroundColour"s, +"TextIndent"s, +"TextAlign"s, +"TextDecoration"s, +"LetterSpacing"s, +"WordSpacing"s, +"TextTransform"s, +"LineHeight"s, +"Maps"s, +"Vertices"s, +"TexCoordsList"s, +"StartTime"s, +"EndTime"s, +"TimeSeriesDataType"s, +"MajorRadius"s, +"MinorRadius"s, +"BottomXDim"s, +"TopXDim"s, +"TopXOffset"s, +"Normals"s, +"Flags"s, +"Trim1"s, +"Trim2"s, +"SenseAgreement"s, +"ApplicableOccurrence"s, +"HasPropertySets"s, +"ProcessType"s, +"RepresentationMaps"s, +"ResourceType"s, +"Units"s, +"Magnitude"s, +"LoopVertex"s, +"VertexGeometry"s, +"IntersectingAxes"s, +"OffsetDistances"s, +"PartitioningType"s, +"UserDefinedPartitioningType"s, +"MullionThickness"s, +"FirstTransomOffset"s, +"SecondTransomOffset"s, +"FirstMullionOffset"s, +"SecondMullionOffset"s, +"WorkingTimes"s, +"ExceptionTimes"s, +"Creators"s, +"Duration"s, +"FinishTime"s, +"RecurrencePattern"s, +"Start"s, +"Finish"s, +"IsActingUpon"s, +"HasExternalReference"s, +"OfPerson"s, +"OfOrganization"s, +"ContainedInStructure"s, +"HasExternalReferences"s, +"ApprovedObjects"s, +"ApprovedResources"s, +"IsRelatedWith"s, +"Relates"s, +"ClassificationForObjects"s, +"HasReferences"s, +"ClassificationRefForObjects"s, +"PropertiesForConstraint"s, +"IsDefinedBy"s, +"Declares"s, +"Controls"s, +"HasCoordinateOperation"s, +"CoversSpaces"s, +"CoversElements"s, +"AssignedToFlowElement"s, +"HasPorts"s, +"HasControlElements"s, +"DocumentInfoForObjects"s, +"HasDocumentReferences"s, +"IsPointedTo"s, +"IsPointer"s, +"DocumentRefForObjects"s, +"FillsVoids"s, +"ConnectedTo"s, +"IsInterferedByElements"s, +"InterferesElements"s, +"HasProjections"s, +"HasOpenings"s, +"IsConnectionRealization"s, +"ProvidesBoundaries"s, +"ConnectedFrom"s, +"HasCoverings"s, +"HasSurfaceFeatures"s, +"ExternalReferenceForResources"s, +"BoundedBy"s, +"HasTextureMaps"s, +"ProjectsElements"s, +"VoidsElements"s, +"HasSubContexts"s, +"PartOfW"s, +"PartOfV"s, +"PartOfU"s, +"HasIntersections"s, +"IsGroupedBy"s, +"ToFaceSet"s, +"LibraryInfoForObjects"s, +"HasLibraryReferences"s, +"LibraryRefForObjects"s, +"HasRepresentation"s, +"RelatesTo"s, +"ToMaterialConstituentSet"s, +"AssociatedTo"s, +"ToMaterialLayerSet"s, +"ToMaterialProfileSet"s, +"IsDeclaredBy"s, +"IsTypedBy"s, +"HasAssignments"s, +"Nests"s, +"IsNestedBy"s, +"HasContext"s, +"IsDecomposedBy"s, +"Decomposes"s, +"HasAssociations"s, +"PlacesObject"s, +"HasFillings"s, +"IsRelatedBy"s, +"Engages"s, +"EngagedIn"s, +"PartOfComplex"s, +"ContainedIn"s, +"Positions"s, +"IsPredecessorTo"s, +"IsSuccessorFrom"s, +"OperatesOn"s, +"ReferencedBy"s, +"PositionedRelativeTo"s, +"ReferencedInStructures"s, +"ShapeOfProduct"s, +"HasShapeAspects"s, +"PartOfPset"s, +"PropertyForDependance"s, +"PropertyDependsOn"s, +"HasConstraints"s, +"HasApprovals"s, +"DefinesType"s, +"DefinesOccurrence"s, +"Defines"s, +"PartOfComplexTemplate"s, +"PartOfPsetTemplate"s, +"Corresponds"s, +"RepresentationMap"s, +"LayerAssignments"s, +"OfProductRepresentation"s, +"RepresentationsInContext"s, +"LayerAssignment"s, +"StyledByItem"s, +"MapUsage"s, +"ResourceOf"s, +"UsingCurves"s, +"OfShapeAspect"s, +"ContainsElements"s, +"ServicedBySystems"s, +"ReferencesElements"s, +"AssignedToStructuralItem"s, +"ConnectsStructuralMembers"s, +"AssignedStructuralActivity"s, +"SourceOfResultGroup"s, +"LoadGroupFor"s, +"ConnectedBy"s, +"ResultGroupFor"s, +"AdheresToElement"s, +"IsMappedBy"s, +"UsedInStyles"s, +"ServicesBuildings"s, +"ServicesFacilities"s, +"HasColours"s, +"HasTextures"s, +"Types"s, +"IFC4X3_RC4"s}; #if defined(__clang__) __attribute__((optnone)) @@ -2618,14514 +6525,11519 @@ __attribute__((optnone)) #endif IfcParse::schema_definition* IFC4X3_RC4_populate_schema() { - IFC4X3_RC4_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type)); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_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"); - IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BELL"); - items.push_back("BREAKGLASSBUTTON"); - items.push_back("LIGHT"); - items.push_back("MANUALPULLBOX"); - items.push_back("NOTDEFINED"); - items.push_back("RAILWAYCROCODILE"); - items.push_back("RAILWAYDETONATOR"); - items.push_back("SIREN"); - items.push_back("USERDEFINED"); - items.push_back("WHISTLE"); - IFC4X3_RC4_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BLOSSCURVE"); - items.push_back("CONSTANTCANT"); - items.push_back("COSINECURVE"); - items.push_back("HELMERTCURVE"); - items.push_back("LINEARTRANSITION"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type("IfcAlignmentCantSegmentTypeEnum", 32, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BLOSSCURVE"); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("COSINECURVE"); - items.push_back("CUBIC"); - items.push_back("HELMERTCURVE"); - items.push_back("LINE"); - items.push_back("SINECURVE"); - items.push_back("VIENNESEBEND"); - IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentHorizontalSegmentTypeEnum", 35, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 38, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CIRCULARARC"); - items.push_back("CLOTHOID"); - items.push_back("CONSTANTGRADIENT"); - items.push_back("PARABOLICARC"); - IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentVerticalSegmentTypeEnum", 41, items); - } - IFC4X3_RC4_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 42, 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"); - IFC4X3_RC4_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 43, 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"); - IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 44, items); - } - IFC4X3_RC4_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 45, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("ASBUILTAREA"); - items.push_back("ASBUILTLINE"); - items.push_back("ASBUILTPOINT"); - items.push_back("ASSUMEDAREA"); - items.push_back("ASSUMEDLINE"); - items.push_back("ASSUMEDPOINT"); - items.push_back("NON_PHYSICAL_SIGNAL"); - items.push_back("NOTDEFINED"); - items.push_back("SUPERELEVATIONEVENT"); - items.push_back("USERDEFINED"); - items.push_back("WIDTHEVENT"); - IFC4X3_RC4_IfcAnnotationTypeEnum_type = new enumeration_type("IfcAnnotationTypeEnum", 48, items); - } - IFC4X3_RC4_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 58, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 59, 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"); - IFC4X3_RC4_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 60, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FACTORY"); - items.push_back("NOTDEFINED"); - items.push_back("SITE"); - IFC4X3_RC4_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 61, items); - } - { - std::vector items; items.reserve(15); - items.push_back("AMPLIFIER"); - items.push_back("CAMERA"); - items.push_back("COMMUNICATIONTERMINAL"); - 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("RECORDINGEQUIPMENT"); - items.push_back("SPEAKER"); - items.push_back("SWITCHER"); - items.push_back("TELEPHONE"); - items.push_back("TUNER"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 66, 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"); - IFC4X3_RC4_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 109, 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"); - IFC4X3_RC4_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 112, 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"); - IFC4X3_RC4_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 75, 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"); - IFC4X3_RC4_IfcBearingTypeDisplacementEnum_type = new enumeration_type("IfcBearingTypeDisplacementEnum", 78, 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"); - IFC4X3_RC4_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 79, 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"); - IFC4X3_RC4_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 80, items); - } - IFC4X3_RC4_IfcBinary_type = new type_declaration("IfcBinary", 82, 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"); - IFC4X3_RC4_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 87, items); - } - IFC4X3_RC4_IfcBoolean_type = new type_declaration("IfcBoolean", 88, 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"); - IFC4X3_RC4_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 91, 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"); - IFC4X3_RC4_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 106, 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"); - IFC4X3_RC4_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 107, items); - } - { - std::vector items; items.reserve(7); - items.push_back("APRON"); - items.push_back("ARMOURUNIT"); - items.push_back("INSULATION"); - items.push_back("NOTDEFINED"); - items.push_back("PRECASTPANEL"); - items.push_back("SAFETYCAGE"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 117, 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"); - IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 120, items); - } - { - std::vector items; items.reserve(11); - items.push_back("EROSIONPREVENTION"); - 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"); - IFC4X3_RC4_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 123, items); - } - { - std::vector items; items.reserve(13); - items.push_back("EROSIONPREVENTION"); - items.push_back("FENESTRATION"); - items.push_back("FOUNDATION"); - items.push_back("LOADBEARING"); - items.push_back("MOORING"); - items.push_back("NOTDEFINED"); - items.push_back("OUTERSHELL"); - items.push_back("PRESTRESSING"); - items.push_back("REINFORCING"); - items.push_back("SHADING"); - items.push_back("TRACKCIRCUIT"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcBuiltSystemTypeEnum_type = new enumeration_type("IfcBuiltSystemTypeEnum", 127, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 130, 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"); - IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 133, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CABLEBRACKET"); - items.push_back("CABLELADDERSEGMENT"); - items.push_back("CABLETRAYSEGMENT"); - items.push_back("CABLETRUNKINGSEGMENT"); - items.push_back("CATENARYWIRE"); - items.push_back("CONDUITSEGMENT"); - items.push_back("DROPPER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 136, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONNECTOR"); - items.push_back("ENTRY"); - items.push_back("EXIT"); - items.push_back("FANOUT"); - items.push_back("JUNCTION"); - items.push_back("NOTDEFINED"); - items.push_back("TRANSITION"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 139, items); - } - { - std::vector items; items.reserve(12); - items.push_back("BUSBARSEGMENT"); - items.push_back("CABLESEGMENT"); - items.push_back("CONDUCTORSEGMENT"); - items.push_back("CONTACTWIRESEGMENT"); - items.push_back("CORESEGMENT"); - items.push_back("FIBERSEGMENT"); - items.push_back("FIBERTUBE"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALCABLESEGMENT"); - items.push_back("STITCHWIRE"); - items.push_back("USERDEFINED"); - items.push_back("WIREPAIRSEGMENT"); - IFC4X3_RC4_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 142, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CAISSON"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("WELL"); - IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 145, items); - } - IFC4X3_RC4_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 146, 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"); - IFC4X3_RC4_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 157, 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"); - IFC4X3_RC4_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 160, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 163, 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"); - IFC4X3_RC4_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 177, 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"); - IFC4X3_RC4_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 186, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ANTENNA"); - items.push_back("AUTOMATON"); - items.push_back("COMPUTER"); - items.push_back("FAX"); - items.push_back("GATEWAY"); - items.push_back("INTELLIGENTPERIPHERAL"); - items.push_back("IPNETWORKEQUIPMENT"); - items.push_back("LINESIDEELECTRONICUNIT"); - items.push_back("MODEM"); - items.push_back("NETWORKAPPLIANCE"); - items.push_back("NETWORKBRIDGE"); - items.push_back("NETWORKHUB"); - items.push_back("NOTDEFINED"); - items.push_back("OPTICALLINETERMINAL"); - items.push_back("OPTICALNETWORKUNIT"); - items.push_back("PRINTER"); - items.push_back("RADIOBLOCKCENTER"); - items.push_back("REPEATER"); - items.push_back("ROUTER"); - items.push_back("SCANNER"); - items.push_back("TELECOMMAND"); - items.push_back("TELEPHONYEXCHANGE"); - items.push_back("TRANSITIONCOMPONENT"); - items.push_back("TRANSPONDER"); - items.push_back("TRANSPORTEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 189, items); - } - IFC4X3_RC4_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 190, 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"); - IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 193, items); - } - IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 198, 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"); - IFC4X3_RC4_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 201, 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"); - IFC4X3_RC4_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 204, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ATEND"); - items.push_back("ATPATH"); - items.push_back("ATSTART"); - items.push_back("NOTDEFINED"); - IFC4X3_RC4_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 212, 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"); - IFC4X3_RC4_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 215, 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"); - IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 218, 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"); - IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 221, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ASSEMBLY"); - items.push_back("FORMWORK"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 224, items); - } - IFC4X3_RC4_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 228, 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"); - IFC4X3_RC4_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 233, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BELTCONVEYOR"); - items.push_back("BUCKETCONVEYOR"); - items.push_back("CHUTECONVEYOR"); - items.push_back("NOTDEFINED"); - items.push_back("SCREWCONVEYOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type = new enumeration_type("IfcConveyorSegmentTypeEnum", 238, items); - } - { - std::vector items; items.reserve(4); - items.push_back("ACTIVE"); - items.push_back("NOTDEFINED"); - items.push_back("PASSIVE"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 241, 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"); - IFC4X3_RC4_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 244, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 250, 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"); - IFC4X3_RC4_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 252, items); - } - IFC4X3_RC4_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 254, new simple_type(simple_type::number_type)); - { - std::vector items; items.reserve(8); - items.push_back("ARMOUR"); - items.push_back("BALLASTBED"); - items.push_back("CORE"); - items.push_back("FILTER"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENT"); - items.push_back("PROTECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCourseTypeEnum_type = new enumeration_type("IfcCourseTypeEnum", 257, items); - } - { - 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"); - IFC4X3_RC4_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 260, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OFFICE"); - items.push_back("SITE"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 263, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 271, items); - } - IFC4X3_RC4_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 272, 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"); - IFC4X3_RC4_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 277, 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"); - IFC4X3_RC4_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 290, 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"); - IFC4X3_RC4_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 291, items); - } - IFC4X3_RC4_IfcDate_type = new type_declaration("IfcDate", 292, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcDateTime_type = new type_declaration("IfcDateTime", 293, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 294, new simple_type(simple_type::integer_type)); - IFC4X3_RC4_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 295, 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"); - IFC4X3_RC4_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 303, items); - } - IFC4X3_RC4_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 304, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 306, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(2); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC4_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 308, items); - } - { - std::vector items; items.reserve(21); - items.push_back("ANCHORPLATE"); - items.push_back("BIRDPROTECTION"); - items.push_back("BRACKET"); - items.push_back("CABLEARRANGER"); - items.push_back("ELASTIC_CUSHION"); - items.push_back("EXPANSION_JOINT_DEVICE"); - items.push_back("INSULATOR"); - items.push_back("LOCK"); - items.push_back("NOTDEFINED"); - items.push_back("PANEL_STRENGTHENING"); - items.push_back("POINTMACHINEMOUNTINGDEVICE"); - items.push_back("POINT_MACHINE_LOCKING_DEVICE"); - items.push_back("RAILBRACE"); - items.push_back("RAILPAD"); - items.push_back("RAIL_LUBRICATION"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT"); - items.push_back("SHOE"); - items.push_back("SLIDINGCHAIR"); - items.push_back("SOUNDABSORPTION"); - items.push_back("TENSIONINGEQUIPMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 313, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CONSUMERUNIT"); - items.push_back("DISPATCHINGBOARD"); - items.push_back("DISTRIBUTIONBOARD"); - items.push_back("DISTRIBUTIONFRAME"); - items.push_back("MOTORCONTROLCENTRE"); - items.push_back("NOTDEFINED"); - items.push_back("SWITCHBOARD"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcDistributionBoardTypeEnum_type = new enumeration_type("IfcDistributionBoardTypeEnum", 316, 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"); - IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 319, items); - } - { - std::vector items; items.reserve(7); - items.push_back("CABLE"); - items.push_back("CABLECARRIER"); - items.push_back("DUCT"); - items.push_back("NOTDEFINED"); - items.push_back("PIPE"); - items.push_back("USERDEFINED"); - items.push_back("WIRELESS"); - IFC4X3_RC4_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 328, items); - } - { - std::vector items; items.reserve(51); - items.push_back("AIRCONDITIONING"); - items.push_back("AUDIOVISUAL"); - items.push_back("CATENARY_SYSTEM"); - 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("FIXEDTRANSMISSIONNETWORK"); - 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("MOBILENETWORK"); - items.push_back("MONITORINGSYSTEM"); - items.push_back("MUNICIPALSOLIDWASTE"); - items.push_back("NOTDEFINED"); - items.push_back("OIL"); - items.push_back("OPERATIONAL"); - items.push_back("OPERATIONALTELEPHONYSYSTEM"); - items.push_back("OVERHEAD_CONTACTLINE_SYSTEM"); - items.push_back("POWERGENERATION"); - items.push_back("RAINWATER"); - items.push_back("REFRIGERATION"); - items.push_back("RETURN_CIRCUIT"); - 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"); - IFC4X3_RC4_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 330, 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"); - IFC4X3_RC4_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 331, 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"); - IFC4X3_RC4_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 336, 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"); - IFC4X3_RC4_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 339, items); - } - { - std::vector items; items.reserve(4); - items.push_back("LEFT"); - items.push_back("MIDDLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGHT"); - IFC4X3_RC4_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 340, 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"); - IFC4X3_RC4_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 344, 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"); - IFC4X3_RC4_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 345, items); - } - { - std::vector items; items.reserve(7); - items.push_back("BOOM_BARRIER"); - items.push_back("DOOR"); - items.push_back("GATE"); - items.push_back("NOTDEFINED"); - items.push_back("TRAPDOOR"); - items.push_back("TURNSTILE"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 347, items); - } - { - std::vector items; items.reserve(25); - items.push_back("DOUBLE_PANEL_DOUBLE_SWING"); - items.push_back("DOUBLE_PANEL_FOLDING"); - items.push_back("DOUBLE_PANEL_LIFTING_VERTICAL"); - items.push_back("DOUBLE_PANEL_SINGLE_SWING"); - items.push_back("DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT"); - items.push_back("DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT"); - items.push_back("DOUBLE_PANEL_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("LIFTING_HORIZONTAL"); - items.push_back("LIFTING_VERTICAL_LEFT"); - items.push_back("LIFTING_VERTICAL_RIGHT"); - items.push_back("NOTDEFINED"); - items.push_back("REVOLVING_HORIZONTAL"); - items.push_back("REVOLVING_VERTICAL"); - 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"); - IFC4X3_RC4_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 348, items); - } - IFC4X3_RC4_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 349, 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"); - IFC4X3_RC4_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 354, items); - } - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLESEGMENT"); - items.push_back("NOTDEFINED"); - items.push_back("RIGIDSEGMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 357, 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"); - IFC4X3_RC4_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 360, items); - } - IFC4X3_RC4_IfcDuration_type = new type_declaration("IfcDuration", 361, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 362, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(11); - items.push_back("BASE_EXCAVATION"); - items.push_back("CUT"); - items.push_back("DREDGING"); - items.push_back("EXCAVATION"); - items.push_back("NOTDEFINED"); - items.push_back("OVEREXCAVATION"); - items.push_back("PAVEMENTMILLING"); - items.push_back("STEPEXCAVATION"); - items.push_back("TOPSOILREMOVAL"); - items.push_back("TRENCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcEarthworksCutTypeEnum_type = new enumeration_type("IfcEarthworksCutTypeEnum", 364, items); - } - { - std::vector items; items.reserve(9); - items.push_back("BACKFILL"); - items.push_back("COUNTERWEIGHT"); - items.push_back("EMBANKMENT"); - items.push_back("NOTDEFINED"); - items.push_back("SLOPEFILL"); - items.push_back("SUBGRADE"); - items.push_back("SUBGRADEBED"); - items.push_back("TRANSITIONSECTION"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcEarthworksFillTypeEnum_type = new enumeration_type("IfcEarthworksFillTypeEnum", 367, items); - } - { - 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"); - IFC4X3_RC4_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 373, items); - } - IFC4X3_RC4_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 374, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 375, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 376, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 377, 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"); - IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 380, items); - } - { - std::vector items; items.reserve(11); - items.push_back("BATTERY"); - items.push_back("CAPACITOR"); - items.push_back("CAPACITORBANK"); - items.push_back("COMPENSATOR"); - items.push_back("HARMONICFILTER"); - items.push_back("INDUCTOR"); - items.push_back("INDUCTORBANK"); - items.push_back("NOTDEFINED"); - items.push_back("RECHARGER"); - items.push_back("UPS"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 383, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELECTRONICFILTER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowTreatmentDeviceTypeEnum", 386, 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"); - IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 389, 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"); - IFC4X3_RC4_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 392, items); - } - IFC4X3_RC4_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 393, 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"); - IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 396, items); - } - IFC4X3_RC4_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 397, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(30); - 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("DILATATIONPANEL"); - items.push_back("ENTRANCEWORKS"); - items.push_back("GIRDER"); - items.push_back("GRID"); - items.push_back("MAST"); - items.push_back("NOTDEFINED"); - items.push_back("PIER"); - items.push_back("PYLON"); - items.push_back("RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY"); - items.push_back("REINFORCEMENT_UNIT"); - items.push_back("RIGID_FRAME"); - items.push_back("SHELTER"); - items.push_back("SIGNALASSEMBLY"); - items.push_back("SLAB_FIELD"); - items.push_back("SUMPBUSTER"); - items.push_back("SUPPORTINGASSEMBLY"); - items.push_back("SUSPENSIONASSEMBLY"); - items.push_back("TRACKPANEL"); - items.push_back("TRACTION_SWITCHING_ASSEMBLY"); - items.push_back("TRAFFIC_CALMING_DEVICE"); - items.push_back("TRUSS"); - items.push_back("TURNOUTPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 402, items); - } - { - std::vector items; items.reserve(3); - items.push_back("COMPLEX"); - items.push_back("ELEMENT"); - items.push_back("PARTIAL"); - IFC4X3_RC4_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 405, items); - } - IFC4X3_RC4_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 412, 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"); - IFC4X3_RC4_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 415, 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"); - IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 418, 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"); - IFC4X3_RC4_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 421, 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"); - IFC4X3_RC4_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 424, 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"); - IFC4X3_RC4_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 426, 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"); - IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 435, items); - } - { - std::vector items; items.reserve(10); - items.push_back("ABOVEGROUND"); - items.push_back("BELOWGROUND"); - items.push_back("JUNCTION"); - items.push_back("LEVELCROSSING"); - items.push_back("NOTDEFINED"); - items.push_back("SEGMENT"); - items.push_back("SUBSTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TERMINAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type = new enumeration_type("IfcFacilityPartCommonTypeEnum", 448, items); - } - { - std::vector items; items.reserve(6); - items.push_back("LATERAL"); - items.push_back("LONGITUDINAL"); - items.push_back("NOTDEFINED"); - items.push_back("REGION"); - items.push_back("USERDEFINED"); - items.push_back("VERTICAL"); - IFC4X3_RC4_IfcFacilityUsageEnum_type = new enumeration_type("IfcFacilityUsageEnum", 450, 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"); - IFC4X3_RC4_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 454, 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"); - IFC4X3_RC4_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 457, 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"); - IFC4X3_RC4_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 467, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BREECHINGINLET"); - items.push_back("FIREHYDRANT"); - items.push_back("FIREMONITOR"); - items.push_back("HOSEREEL"); - items.push_back("NOTDEFINED"); - items.push_back("SPRINKLER"); - items.push_back("SPRINKLERDEFLECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 470, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SINK"); - items.push_back("SOURCE"); - items.push_back("SOURCEANDSINK"); - IFC4X3_RC4_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 474, items); - } - { - std::vector items; items.reserve(12); - items.push_back("AMMETER"); - items.push_back("COMBINED"); - 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"); - items.push_back("VOLTMETER_PEAK"); - items.push_back("VOLTMETER_RMS"); - IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 479, 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"); - IFC4X3_RC4_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 482, items); - } - IFC4X3_RC4_IfcFontStyle_type = new type_declaration("IfcFontStyle", 493, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcFontVariant_type = new type_declaration("IfcFontVariant", 494, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcFontWeight_type = new type_declaration("IfcFontWeight", 495, 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"); - IFC4X3_RC4_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 498, items); - } - IFC4X3_RC4_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 499, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 500, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - 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("TECHNICALCABINET"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 505, 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"); - IFC4X3_RC4_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 508, 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"); - IFC4X3_RC4_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 510, items); - } - { - std::vector items; items.reserve(2); - items.push_back("GLOBAL_COORDS"); - items.push_back("LOCAL_COORDS"); - IFC4X3_RC4_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 522, items); - } - IFC4X3_RC4_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 521, 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"); - IFC4X3_RC4_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 528, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PLATE"); - items.push_back("SHELLANDTUBE"); - items.push_back("TURNOUTHEATING"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 534, items); - } - IFC4X3_RC4_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 535, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 536, 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"); - IFC4X3_RC4_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 539, items); - } - IFC4X3_RC4_IfcIdentifier_type = new type_declaration("IfcIdentifier", 540, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 541, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(6); - items.push_back("BUMPER"); - items.push_back("CRASHCUSHION"); - items.push_back("DAMPINGSYSTEM"); - items.push_back("FENDER"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type("IfcImpactProtectionDeviceTypeEnum", 545, items); - } - IFC4X3_RC4_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 553, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcInteger_type = new type_declaration("IfcInteger", 554, new simple_type(simple_type::integer_type)); - IFC4X3_RC4_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 555, 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"); - IFC4X3_RC4_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 558, 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"); - IFC4X3_RC4_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 560, 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"); - IFC4X3_RC4_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 563, items); - } - IFC4X3_RC4_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 564, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 568, 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"); - IFC4X3_RC4_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 571, items); - } - IFC4X3_RC4_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 574, 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"); - IFC4X3_RC4_IfcKnotType_type = new enumeration_type("IfcKnotType", 575, items); - } - IFC4X3_RC4_IfcLabel_type = new type_declaration("IfcLabel", 576, 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"); - IFC4X3_RC4_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 579, 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"); - IFC4X3_RC4_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 583, items); - } - IFC4X3_RC4_IfcLanguageId_type = new type_declaration("IfcLanguageId", 584, new named_type(IFC4X3_RC4_IfcIdentifier_type)); - { - std::vector items; items.reserve(3); - items.push_back("AXIS1"); - items.push_back("AXIS2"); - items.push_back("AXIS3"); - IFC4X3_RC4_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 586, items); - } - IFC4X3_RC4_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 587, 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"); - IFC4X3_RC4_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 591, 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"); - IFC4X3_RC4_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 594, 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"); - IFC4X3_RC4_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 597, items); - } - IFC4X3_RC4_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 607, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 608, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 611, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 612, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("HOSEREEL"); - items.push_back("LOADINGARM"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type = new enumeration_type("IfcLiquidTerminalTypeEnum", 616, items); - } - { - 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"); - IFC4X3_RC4_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 617, items); - } - IFC4X3_RC4_IfcLogical_type = new type_declaration("IfcLogical", 619, 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"); - IFC4X3_RC4_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 620, items); - } - IFC4X3_RC4_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 623, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 624, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 625, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 626, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 627, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(21); - items.push_back("BARRIERBEACH"); - items.push_back("BREAKWATER"); - items.push_back("CANAL"); - items.push_back("DRYDOCK"); - items.push_back("FLOATINGDOCK"); - items.push_back("HYDROLIFT"); - items.push_back("JETTY"); - items.push_back("LAUNCHRECOVERY"); - items.push_back("MARINEDEFENCE"); - items.push_back("NAVIGATIONALCHANNEL"); - items.push_back("NOTDEFINED"); - items.push_back("PORT"); - items.push_back("QUAY"); - items.push_back("REVETMENT"); - items.push_back("SHIPLIFT"); - items.push_back("SHIPLOCK"); - items.push_back("SHIPYARD"); - items.push_back("SLIPWAY"); - items.push_back("USERDEFINED"); - items.push_back("WATERWAY"); - items.push_back("WATERWAYSHIPLIFT"); - IFC4X3_RC4_IfcMarineFacilityTypeEnum_type = new enumeration_type("IfcMarineFacilityTypeEnum", 632, items); - } - { - std::vector items; items.reserve(26); - items.push_back("ABOVEWATERLINE"); - items.push_back("ANCHORAGE"); - items.push_back("APPROACHCHANNEL"); - items.push_back("BELOWWATERLINE"); - items.push_back("BERTHINGSTRUCTURE"); - items.push_back("CHAMBER"); - items.push_back("CILL_LEVEL"); - items.push_back("COPELEVEL"); - items.push_back("CORE"); - items.push_back("CREST"); - items.push_back("GATEHEAD"); - items.push_back("GUDINGSTRUCTURE"); - items.push_back("HIGHWATERLINE"); - items.push_back("LANDFIELD"); - items.push_back("LEEWARDSIDE"); - items.push_back("LOWWATERLINE"); - items.push_back("MANUFACTURING"); - items.push_back("NAVIGATIONALAREA"); - items.push_back("NOTDEFINED"); - items.push_back("PROTECTION"); - items.push_back("SHIPTRANSFER"); - items.push_back("STORAGEAREA"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESERVICING"); - items.push_back("WATERFIELD"); - items.push_back("WEATHERSIDE"); - IFC4X3_RC4_IfcMarinePartTypeEnum_type = new enumeration_type("IfcMarinePartTypeEnum", 633, items); - } - IFC4X3_RC4_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 634, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 635, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 636, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 637, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(17); - items.push_back("ANCHORBOLT"); - items.push_back("BOLT"); - items.push_back("CHAIN"); - items.push_back("COUPLER"); - items.push_back("DOWEL"); - items.push_back("NAIL"); - items.push_back("NAILPLATE"); - items.push_back("NOTDEFINED"); - items.push_back("RAILFASTENING"); - items.push_back("RAILJOINT"); - items.push_back("RIVET"); - items.push_back("ROPE"); - items.push_back("SCREW"); - items.push_back("SHEARCONNECTOR"); - items.push_back("STAPLE"); - items.push_back("STUDSHEARCONNECTOR"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 662, 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"); - IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 665, items); - } - { - std::vector items; items.reserve(21); - 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("STRUCTURALCABLE"); - items.push_back("STRUT"); - items.push_back("STUD"); - items.push_back("SUSPENDER"); - items.push_back("SUSPENSION_CABLE"); - items.push_back("TIEBAR"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 669, items); - } - { - std::vector items; items.reserve(15); - items.push_back("ACCESSPOINT"); - items.push_back("BASEBANDUNIT"); - items.push_back("BASETRANSCEIVERSTATION"); - items.push_back("E_UTRAN_NODE_B"); - items.push_back("GATEWAY_GPRS_SUPPORT_NODE"); - items.push_back("MASTERUNIT"); - items.push_back("MOBILESWITCHINGCENTER"); - items.push_back("MSCSERVER"); - items.push_back("NOTDEFINED"); - items.push_back("PACKETCONTROLUNIT"); - items.push_back("REMOTERADIOUNIT"); - items.push_back("REMOTEUNIT"); - items.push_back("SERVICE_GPRS_SUPPORT_NODE"); - items.push_back("SUBSCRIBERSERVER"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type("IfcMobileTelecommunicationsApplianceTypeEnum", 675, items); - } - IFC4X3_RC4_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 676, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 677, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 678, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type); - IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 679, items); - } - IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 680, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type); - IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 681, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type); - IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 682, items); - } - IFC4X3_RC4_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 683, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 684, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 685, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 686, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 688, new simple_type(simple_type::integer_type)); - { - std::vector items; items.reserve(7); - items.push_back("BOLLARD"); - items.push_back("LINETENSIONER"); - items.push_back("MAGNETICDEVICE"); - items.push_back("MOORINGHOOKS"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VACUUMDEVICE"); - IFC4X3_RC4_IfcMooringDeviceTypeEnum_type = new enumeration_type("IfcMooringDeviceTypeEnum", 691, items); - } - { - 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"); - IFC4X3_RC4_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 694, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BEACON"); - items.push_back("BUOY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcNavigationElementTypeEnum_type = new enumeration_type("IfcNavigationElementTypeEnum", 698, items); - } - IFC4X3_RC4_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 699, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)); - IFC4X3_RC4_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 701, 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"); - IFC4X3_RC4_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 708, 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"); - IFC4X3_RC4_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 705, 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"); - IFC4X3_RC4_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 710, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("OPENING"); - items.push_back("RECESS"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 717, 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"); - IFC4X3_RC4_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 726, items); - } - IFC4X3_RC4_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 743, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcParameterValue_type = new type_declaration("IfcParameterValue", 729, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(4); - items.push_back("FLEXIBLE"); - items.push_back("NOTDEFINED"); - items.push_back("RIGID"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcPavementTypeEnum_type = new enumeration_type("IfcPavementTypeEnum", 733, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 736, 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"); - IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 737, 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"); - IFC4X3_RC4_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 740, items); - } - { - std::vector items; items.reserve(3); - items.push_back("NOTDEFINED"); - items.push_back("PHYSICAL"); - items.push_back("VIRTUAL"); - IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 745, 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"); - IFC4X3_RC4_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 749, 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"); - IFC4X3_RC4_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 751, 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"); - IFC4X3_RC4_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 754, 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"); - IFC4X3_RC4_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 757, items); - } - IFC4X3_RC4_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 762, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 764, 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"); - IFC4X3_RC4_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 769, items); - } - IFC4X3_RC4_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 782, new named_type(IFC4X3_RC4_IfcInteger_type)); - IFC4X3_RC4_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 783, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)); - IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 784, new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type)); - IFC4X3_RC4_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 787, 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"); - IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 794, items); - } - IFC4X3_RC4_IfcPresentableText_type = new type_declaration("IfcPresentableText", 795, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 800, 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"); - IFC4X3_RC4_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 803, items); - } - { - std::vector items; items.reserve(2); - items.push_back("AREA"); - items.push_back("CURVE"); - IFC4X3_RC4_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 813, 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"); - IFC4X3_RC4_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 821, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PROJECTED_LENGTH"); - items.push_back("TRUE_LENGTH"); - IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 816, items); - } - { - std::vector items; items.reserve(4); - items.push_back("BLISTER"); - items.push_back("DEVIATOR"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 818, 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"); - IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 836, 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"); - IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 844, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ANTI_ARCING_DEVICE"); - 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("SPARKGAP"); - items.push_back("USERDEFINED"); - items.push_back("VARISTOR"); - items.push_back("VOLTAGELIMITER"); - IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 846, 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"); - IFC4X3_RC4_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 850, items); - } - IFC4X3_RC4_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 858, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(8); - items.push_back("BLADE"); - items.push_back("CHECKRAIL"); - items.push_back("GUARDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("RACKRAIL"); - items.push_back("RAIL"); - items.push_back("STOCKRAIL"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRailTypeEnum_type = new enumeration_type("IfcRailTypeEnum", 864, items); - } - { - std::vector items; items.reserve(6); - items.push_back("BALUSTRADE"); - items.push_back("FENCE"); - items.push_back("GUARDRAIL"); - items.push_back("HANDRAIL"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 862, items); - } - { - std::vector items; items.reserve(10); - items.push_back("DILATATIONSUPERSTRUCTURE"); - items.push_back("LINESIDESTRUCTURE"); - items.push_back("LINESIDESTRUCTUREPART"); - items.push_back("NOTDEFINED"); - items.push_back("PLAINTRACKSUPESTRUCTURE"); - items.push_back("SUPERSTRUCTURE"); - items.push_back("TRACKSTRUCTURE"); - items.push_back("TRACKSTRUCTUREPART"); - items.push_back("TURNOUTSUPERSTRUCTURE"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRailwayPartTypeEnum_type = new enumeration_type("IfcRailwayPartTypeEnum", 866, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRailwayTypeEnum_type = new enumeration_type("IfcRailwayTypeEnum", 867, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SPIRAL"); - items.push_back("STRAIGHT"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 871, 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"); - IFC4X3_RC4_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 873, items); - } - IFC4X3_RC4_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 874, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcReal_type = new type_declaration("IfcReal", 877, 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"); - IFC4X3_RC4_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 883, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BOUNDARY"); - items.push_back("INTERSECTION"); - items.push_back("KILOPOINT"); - items.push_back("LANDMARK"); - items.push_back("MILEPOINT"); - items.push_back("NOTDEFINED"); - items.push_back("POSITION"); - items.push_back("REFERENCEMARKER"); - items.push_back("STATION"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 886, 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"); - IFC4X3_RC4_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 887, items); - } - { - std::vector items; items.reserve(8); - items.push_back("DYNAMICALLYCOMPACTED"); - items.push_back("GROUTED"); - items.push_back("NOTDEFINED"); - items.push_back("REPLACED"); - items.push_back("ROLLERCOMPACTED"); - items.push_back("SURCHARGEPRELOADED"); - items.push_back("USERDEFINED"); - items.push_back("VERTICALLYDRAINED"); - IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type = new enumeration_type("IfcReinforcedSoilTypeEnum", 890, 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"); - IFC4X3_RC4_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 894, items); - } - { - std::vector items; items.reserve(2); - items.push_back("PLAIN"); - items.push_back("TEXTURED"); - IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 895, 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"); - IFC4X3_RC4_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 897, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 902, items); - } - { - std::vector items; items.reserve(26); - items.push_back("BICYCLECROSSING"); - items.push_back("BUS_STOP"); - items.push_back("CARRIAGEWAY"); - items.push_back("CENTRALISLAND"); - items.push_back("CENTRALRESERVE"); - items.push_back("HARDSHOULDER"); - items.push_back("INTERSECTION"); - items.push_back("LAYBY"); - items.push_back("NOTDEFINED"); - items.push_back("PARKINGBAY"); - items.push_back("PASSINGBAY"); - items.push_back("PEDESTRIAN_CROSSING"); - items.push_back("RAILWAYCROSSING"); - items.push_back("REFUGEISLAND"); - items.push_back("ROADSEGMENT"); - items.push_back("ROADSIDE"); - items.push_back("ROADSIDEPART"); - items.push_back("ROADWAYPLATEAU"); - items.push_back("ROUNDABOUT"); - items.push_back("SHOULDER"); - items.push_back("SIDEWALK"); - items.push_back("SOFTSHOULDER"); - items.push_back("TOLLPLAZA"); - items.push_back("TRAFFICISLAND"); - items.push_back("TRAFFICLANE"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRoadPartTypeEnum_type = new enumeration_type("IfcRoadPartTypeEnum", 971, items); - } - { - std::vector items; items.reserve(2); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcRoadTypeEnum_type = new enumeration_type("IfcRoadTypeEnum", 972, 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"); - IFC4X3_RC4_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 973, 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"); - IFC4X3_RC4_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 976, items); - } - IFC4X3_RC4_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 978, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 979, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 980, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcRotationalStiffnessMeasure_type); - IFC4X3_RC4_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 981, 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"); - IFC4X3_RC4_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 1026, 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"); - IFC4X3_RC4_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 1029, 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"); - IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 985, items); - } - IFC4X3_RC4_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 994, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back("TAPERED"); - items.push_back("UNIFORM"); - IFC4X3_RC4_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 997, items); - } - IFC4X3_RC4_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 989, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(34); - items.push_back("CO2SENSOR"); - items.push_back("CONDUCTANCESENSOR"); - items.push_back("CONTACTSENSOR"); - items.push_back("COSENSOR"); - items.push_back("EARTHQUAKESENSOR"); - items.push_back("FIRESENSOR"); - items.push_back("FLOWSENSOR"); - items.push_back("FOREIGNOBJECTDETECTIONSENSOR"); - 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("OBSTACLESENSOR"); - items.push_back("PHSENSOR"); - items.push_back("PRESSURESENSOR"); - items.push_back("RADIATIONSENSOR"); - items.push_back("RADIOACTIVITYSENSOR"); - items.push_back("RAINSENSOR"); - items.push_back("SMOKESENSOR"); - items.push_back("SNOWDEPTHSENSOR"); - items.push_back("SOUNDSENSOR"); - items.push_back("TEMPERATURESENSOR"); - items.push_back("TRAINSENSOR"); - items.push_back("TURNOUTCLOSURESENSOR"); - items.push_back("USERDEFINED"); - items.push_back("WHEELSENSOR"); - items.push_back("WINDSENSOR"); - IFC4X3_RC4_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 1003, 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"); - IFC4X3_RC4_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 1004, 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"); - IFC4X3_RC4_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 1008, items); - } - IFC4X3_RC4_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 1012, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(5); - items.push_back("MARKER"); - items.push_back("MIRROR"); - items.push_back("NOTDEFINED"); - items.push_back("PICTORAL"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcSignTypeEnum_type = new enumeration_type("IfcSignTypeEnum", 1020, items); - } - { - std::vector items; items.reserve(5); - items.push_back("AUDIO"); - items.push_back("MIXED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - items.push_back("VISUAL"); - IFC4X3_RC4_IfcSignalTypeEnum_type = new enumeration_type("IfcSignalTypeEnum", 1018, items); - } - { - 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"); - IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 1023, items); - } - { - std::vector items; items.reserve(11); - 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("TRACKSLAB"); - items.push_back("USERDEFINED"); - items.push_back("WEARING"); - IFC4X3_RC4_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 1035, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("SOLARCOLLECTOR"); - items.push_back("SOLARPANEL"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 1039, items); - } - IFC4X3_RC4_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 1040, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 1044, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 1045, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 1046, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 1047, 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"); - IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 1052, items); - } - { - std::vector items; items.reserve(8); - items.push_back("BERTH"); - 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"); - IFC4X3_RC4_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 1054, items); - } - { - std::vector items; items.reserve(12); - items.push_back("CONSTRUCTION"); - items.push_back("FIRESAFETY"); - items.push_back("INTERFERENCE"); - items.push_back("LIGHTING"); - items.push_back("NOTDEFINED"); - items.push_back("OCCUPANCY"); - items.push_back("RESERVATION"); - items.push_back("SECURITY"); - items.push_back("THERMAL"); - items.push_back("TRANSPORT"); - items.push_back("USERDEFINED"); - items.push_back("VENTILATION"); - IFC4X3_RC4_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 1062, items); - } - IFC4X3_RC4_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 1063, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 1064, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 1066, 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"); - IFC4X3_RC4_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 1072, 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"); - IFC4X3_RC4_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 1076, items); - } - { - std::vector items; items.reserve(17); - 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("LADDER"); - 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"); - IFC4X3_RC4_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 1078, 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"); - IFC4X3_RC4_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 1079, 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"); - IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 1087, 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"); - IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1090, 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"); - IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1116, 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"); - IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1119, items); - } - { - std::vector items; items.reserve(4); - items.push_back("NOTDEFINED"); - items.push_back("PURCHASE"); - items.push_back("USERDEFINED"); - items.push_back("WORK"); - IFC4X3_RC4_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1127, items); - } - { - std::vector items; items.reserve(13); - items.push_back("DEFECT"); - items.push_back("HATCHMARKING"); - items.push_back("LINEMARKING"); - items.push_back("MARK"); - items.push_back("NONSKIDSURFACING"); - items.push_back("NOTDEFINED"); - items.push_back("PAVEMENTSURFACEMARKING"); - items.push_back("RUMBLESTRIP"); - items.push_back("SYMBOLMARKING"); - items.push_back("TAG"); - items.push_back("TRANSVERSERUMBLESTRIP"); - items.push_back("TREATMENT"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1133, items); - } - { - std::vector items; items.reserve(3); - items.push_back("BOTH"); - items.push_back("NEGATIVE"); - items.push_back("POSITIVE"); - IFC4X3_RC4_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1138, items); - } - { - std::vector items; items.reserve(13); - 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("RELAY"); - items.push_back("SELECTORSWITCH"); - items.push_back("STARTER"); - items.push_back("START_AND_STOP_EQUIPMENT"); - items.push_back("SWITCHDISCONNECTOR"); - items.push_back("TOGGLESWITCH"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1153, items); - } - { - std::vector items; items.reserve(5); - items.push_back("NOTDEFINED"); - items.push_back("PANEL"); - items.push_back("SUBRACK"); - items.push_back("USERDEFINED"); - items.push_back("WORKSURFACE"); - IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1157, items); - } - { - std::vector items; items.reserve(10); - items.push_back("BASIN"); - items.push_back("BREAKPRESSURE"); - items.push_back("EXPANSION"); - items.push_back("FEEDANDEXPANSION"); - items.push_back("NOTDEFINED"); - items.push_back("OILRETENTIONTRAY"); - items.push_back("PRESSUREVESSEL"); - items.push_back("STORAGE"); - items.push_back("USERDEFINED"); - items.push_back("VESSEL"); - IFC4X3_RC4_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1163, items); - } - { - std::vector items; items.reserve(3); - items.push_back("ELAPSEDTIME"); - items.push_back("NOTDEFINED"); - items.push_back("WORKTIME"); - IFC4X3_RC4_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1165, 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"); - IFC4X3_RC4_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1169, items); - } - IFC4X3_RC4_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1171, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1172, 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"); - IFC4X3_RC4_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1176, 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"); - IFC4X3_RC4_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1179, 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"); - IFC4X3_RC4_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1181, items); - } - IFC4X3_RC4_IfcText_type = new type_declaration("IfcText", 1184, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1185, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1186, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1187, 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"); - IFC4X3_RC4_IfcTextPath_type = new enumeration_type("IfcTextPath", 1191, items); - } - IFC4X3_RC4_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1196, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1202, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1203, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1204, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1205, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1206, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1207, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcTime_type = new type_declaration("IfcTime", 1209, new simple_type(simple_type::string_type)); - IFC4X3_RC4_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1210, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcDuration_type); - items.push_back(IFC4X3_RC4_IfcRatioMeasure_type); - IFC4X3_RC4_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1211, 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"); - IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1214, items); - } - IFC4X3_RC4_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1216, new simple_type(simple_type::integer_type)); - IFC4X3_RC4_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1220, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(10); - items.push_back("BLOCKINGDEVICE"); - items.push_back("DERAILER"); - items.push_back("FROG"); - items.push_back("HALF_SET_OF_BLADES"); - items.push_back("NOTDEFINED"); - items.push_back("SLEEPER"); - items.push_back("SPEEDREGULATOR"); - items.push_back("TRACKENDOFALIGNMENT"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLESTOP"); - IFC4X3_RC4_IfcTrackElementTypeEnum_type = new enumeration_type("IfcTrackElementTypeEnum", 1223, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CHOPPER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC4_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1226, items); - } - { - std::vector items; items.reserve(4); - items.push_back("CONTINUOUS"); - items.push_back("CONTSAMEGRADIENT"); - items.push_back("CONTSAMEGRADIENTSAMECURVATURE"); - items.push_back("DISCONTINUOUS"); - IFC4X3_RC4_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1227, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcLinearStiffnessMeasure_type); - IFC4X3_RC4_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1228, items); - } - { - std::vector items; items.reserve(8); - items.push_back("CRANEWAY"); - items.push_back("ELEVATOR"); - items.push_back("ESCALATOR"); - items.push_back("HAULINGGEAR"); - items.push_back("LIFTINGGEAR"); - items.push_back("MOVINGWALKWAY"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type = new enumeration_type("IfcTransportElementFixedTypeEnum", 1230, items); - } - { - std::vector items; items.reserve(9); - items.push_back("CARGO"); - items.push_back("NOTDEFINED"); - items.push_back("ROLLINGSTOCK"); - items.push_back("USERDEFINED"); - items.push_back("VEHICLE"); - items.push_back("VEHICLEAIR"); - items.push_back("VEHICLEMARINE"); - items.push_back("VEHICLETRACKED"); - items.push_back("VEHICLEWHEELED"); - IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type("IfcTransportElementNonFixedTypeEnum", 1231, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type); - IFC4X3_RC4_IfcTransportElementTypeSelect_type = new select_type("IfcTransportElementTypeSelect", 1233, items); - } - { - std::vector items; items.reserve(3); - items.push_back("CARTESIAN"); - items.push_back("PARAMETER"); - items.push_back("UNSPECIFIED"); - IFC4X3_RC4_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1238, items); - } - { - std::vector items; items.reserve(3); - items.push_back("FINNED"); - items.push_back("NOTDEFINED"); - items.push_back("USERDEFINED"); - IFC4X3_RC4_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1243, items); - } - IFC4X3_RC4_IfcURIReference_type = new type_declaration("IfcURIReference", 1257, 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"); - IFC4X3_RC4_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1256, items); - } - { - std::vector items; items.reserve(12); - items.push_back("ALARMPANEL"); - items.push_back("BASESTATIONCONTROLLER"); - items.push_back("COMBINED"); - 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"); - IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1251, 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"); - IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1254, 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"); - IFC4X3_RC4_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1262, items); - } - IFC4X3_RC4_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1263, 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"); - IFC4X3_RC4_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1271, 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"); - IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1274, 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"); - IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1278, items); - } - IFC4X3_RC4_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1280, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1281, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(13); - 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"); - items.push_back("WAVEWALL"); - IFC4X3_RC4_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1286, items); - } - IFC4X3_RC4_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1287, new simple_type(simple_type::real_type)); - IFC4X3_RC4_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1288, new simple_type(simple_type::real_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcWarpingMomentMeasure_type); - IFC4X3_RC4_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1289, 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"); - IFC4X3_RC4_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1292, 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"); - IFC4X3_RC4_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1296, 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"); - IFC4X3_RC4_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1297, 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"); - IFC4X3_RC4_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1301, 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"); - IFC4X3_RC4_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1302, 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"); - IFC4X3_RC4_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1304, 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"); - IFC4X3_RC4_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1305, 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"); - IFC4X3_RC4_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1307, 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"); - IFC4X3_RC4_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1310, 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"); - IFC4X3_RC4_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1312, items); - } - IFC4X3_RC4_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0); - IFC4X3_RC4_IfcAddress_type = new entity("IfcAddress", true, 12, 0); - IFC4X3_RC4_IfcAlignmentParameterSegment_type = new entity("IfcAlignmentParameterSegment", true, 36, 0); - IFC4X3_RC4_IfcAlignmentVerticalSegment_type = new entity("IfcAlignmentVerticalSegment", false, 40, IFC4X3_RC4_IfcAlignmentParameterSegment_type); - IFC4X3_RC4_IfcApplication_type = new entity("IfcApplication", false, 49, 0); - IFC4X3_RC4_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 50, 0); - IFC4X3_RC4_IfcApproval_type = new entity("IfcApproval", false, 52, 0); - IFC4X3_RC4_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 94, 0); - IFC4X3_RC4_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 96, IFC4X3_RC4_IfcBoundaryCondition_type); - IFC4X3_RC4_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 97, IFC4X3_RC4_IfcBoundaryCondition_type); - IFC4X3_RC4_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 98, IFC4X3_RC4_IfcBoundaryCondition_type); - IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 99, IFC4X3_RC4_IfcBoundaryNodeCondition_type); - IFC4X3_RC4_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 208, 0); - IFC4X3_RC4_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 210, IFC4X3_RC4_IfcConnectionGeometry_type); - IFC4X3_RC4_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 211, IFC4X3_RC4_IfcConnectionGeometry_type); - IFC4X3_RC4_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 213, IFC4X3_RC4_IfcConnectionGeometry_type); - IFC4X3_RC4_IfcConstraint_type = new entity("IfcConstraint", true, 214, 0); - IFC4X3_RC4_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 245, 0); - IFC4X3_RC4_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 246, 0); - IFC4X3_RC4_IfcCostValue_type = new entity("IfcCostValue", false, 253, IFC4X3_RC4_IfcAppliedValue_type); - IFC4X3_RC4_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 301, 0); - IFC4X3_RC4_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 302, 0); - IFC4X3_RC4_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 305, 0); - IFC4X3_RC4_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 428, 0); - IFC4X3_RC4_IfcExternalReference_type = new entity("IfcExternalReference", true, 432, 0); - IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 429, IFC4X3_RC4_IfcExternalReference_type); - IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 430, IFC4X3_RC4_IfcExternalReference_type); - IFC4X3_RC4_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 431, IFC4X3_RC4_IfcExternalReference_type); - IFC4X3_RC4_IfcGridAxis_type = new entity("IfcGridAxis", false, 525, 0); - IFC4X3_RC4_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 566, 0); - IFC4X3_RC4_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 588, IFC4X3_RC4_IfcExternalInformation_type); - IFC4X3_RC4_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 589, IFC4X3_RC4_IfcExternalReference_type); - IFC4X3_RC4_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 592, 0); - IFC4X3_RC4_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 598, 0); - IFC4X3_RC4_IfcMapConversion_type = new entity("IfcMapConversion", false, 629, IFC4X3_RC4_IfcCoordinateOperation_type); - IFC4X3_RC4_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 639, 0); - IFC4X3_RC4_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 642, 0); - IFC4X3_RC4_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 644, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 645, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 647, IFC4X3_RC4_IfcMaterialLayer_type); - IFC4X3_RC4_IfcMaterialList_type = new entity("IfcMaterialList", false, 648, 0); - IFC4X3_RC4_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 649, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 650, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 653, IFC4X3_RC4_IfcMaterialProfile_type); - IFC4X3_RC4_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 657, 0); - IFC4X3_RC4_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 659, 0); - IFC4X3_RC4_IfcMetric_type = new entity("IfcMetric", false, 670, IFC4X3_RC4_IfcConstraint_type); - IFC4X3_RC4_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 687, 0); - IFC4X3_RC4_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 695, 0); - IFC4X3_RC4_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 706, 0); - IFC4X3_RC4_IfcObjective_type = new entity("IfcObjective", false, 704, IFC4X3_RC4_IfcConstraint_type); - IFC4X3_RC4_IfcOrganization_type = new entity("IfcOrganization", false, 720, 0); - IFC4X3_RC4_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 727, 0); - IFC4X3_RC4_IfcPerson_type = new entity("IfcPerson", false, 741, 0); - IFC4X3_RC4_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 742, 0); - IFC4X3_RC4_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 746, 0); - IFC4X3_RC4_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 747, IFC4X3_RC4_IfcPhysicalQuantity_type); - IFC4X3_RC4_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 786, IFC4X3_RC4_IfcAddress_type); - IFC4X3_RC4_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 796, 0); - IFC4X3_RC4_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 797, 0); - IFC4X3_RC4_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 798, IFC4X3_RC4_IfcPresentationLayerAssignment_type); - IFC4X3_RC4_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 799, 0); - IFC4X3_RC4_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 808, 0); - IFC4X3_RC4_IfcProfileDef_type = new entity("IfcProfileDef", false, 811, 0); - IFC4X3_RC4_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 815, IFC4X3_RC4_IfcCoordinateReferenceSystem_type); - IFC4X3_RC4_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 823, 0); - IFC4X3_RC4_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 828, IFC4X3_RC4_IfcPropertyAbstraction_type); - IFC4X3_RC4_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 851, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 852, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 853, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 855, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 856, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 857, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 882, 0); - IFC4X3_RC4_IfcReference_type = new entity("IfcReference", false, 884, 0); - IFC4X3_RC4_IfcRepresentation_type = new entity("IfcRepresentation", true, 955, 0); - IFC4X3_RC4_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 956, 0); - IFC4X3_RC4_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 957, 0); - IFC4X3_RC4_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 958, 0); - IFC4X3_RC4_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 962, 0); - IFC4X3_RC4_IfcRoot_type = new entity("IfcRoot", true, 977, 0); - IFC4X3_RC4_IfcSIUnit_type = new entity("IfcSIUnit", false, 1028, IFC4X3_RC4_IfcNamedUnit_type); - IFC4X3_RC4_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 986, 0); - IFC4X3_RC4_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 1009, 0); - IFC4X3_RC4_IfcShapeModel_type = new entity("IfcShapeModel", true, 1010, IFC4X3_RC4_IfcRepresentation_type); - IFC4X3_RC4_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 1011, IFC4X3_RC4_IfcShapeModel_type); - IFC4X3_RC4_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 1085, 0); - IFC4X3_RC4_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1095, 0); - IFC4X3_RC4_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1097, IFC4X3_RC4_IfcStructuralLoad_type); - IFC4X3_RC4_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1100, IFC4X3_RC4_IfcStructuralLoad_type); - IFC4X3_RC4_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1106, IFC4X3_RC4_IfcStructuralLoadOrResult_type); - IFC4X3_RC4_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1107, IFC4X3_RC4_IfcStructuralLoadStatic_type); - IFC4X3_RC4_IfcStyleModel_type = new entity("IfcStyleModel", true, 1124, IFC4X3_RC4_IfcRepresentation_type); - IFC4X3_RC4_IfcStyledItem_type = new entity("IfcStyledItem", false, 1122, IFC4X3_RC4_IfcRepresentationItem_type); - IFC4X3_RC4_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1123, IFC4X3_RC4_IfcStyleModel_type); - IFC4X3_RC4_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1137, IFC4X3_RC4_IfcStructuralLoadOrResult_type); - IFC4X3_RC4_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1139, IFC4X3_RC4_IfcPresentationStyle_type); - IFC4X3_RC4_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1141, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1142, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1144, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1145, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1146, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcTable_type = new entity("IfcTable", false, 1158, 0); - IFC4X3_RC4_IfcTableColumn_type = new entity("IfcTableColumn", false, 1159, 0); - IFC4X3_RC4_IfcTableRow_type = new entity("IfcTableRow", false, 1160, 0); - IFC4X3_RC4_IfcTaskTime_type = new entity("IfcTaskTime", false, 1166, IFC4X3_RC4_IfcSchedulingTime_type); - IFC4X3_RC4_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1167, IFC4X3_RC4_IfcTaskTime_type); - IFC4X3_RC4_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1170, IFC4X3_RC4_IfcAddress_type); - IFC4X3_RC4_IfcTextStyle_type = new entity("IfcTextStyle", false, 1192, IFC4X3_RC4_IfcPresentationStyle_type); - IFC4X3_RC4_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1194, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1195, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1197, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1198, IFC4X3_RC4_IfcTextureCoordinate_type); - IFC4X3_RC4_IfcTextureMap_type = new entity("IfcTextureMap", false, 1199, IFC4X3_RC4_IfcTextureCoordinate_type); - IFC4X3_RC4_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1200, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1201, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1212, 0); - IFC4X3_RC4_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1213, 0); - IFC4X3_RC4_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1215, 0); - IFC4X3_RC4_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1217, IFC4X3_RC4_IfcRepresentationItem_type); - IFC4X3_RC4_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1218, IFC4X3_RC4_IfcShapeModel_type); - IFC4X3_RC4_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1255, 0); - IFC4X3_RC4_IfcVertex_type = new entity("IfcVertex", false, 1266, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1268, IFC4X3_RC4_IfcVertex_type); - IFC4X3_RC4_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1276, 0); - IFC4X3_RC4_IfcWorkTime_type = new entity("IfcWorkTime", false, 1313, IFC4X3_RC4_IfcSchedulingTime_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcOrganization_type); - items.push_back(IFC4X3_RC4_IfcPerson_type); - items.push_back(IFC4X3_RC4_IfcPersonAndOrganization_type); - IFC4X3_RC4_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items); - } - IFC4X3_RC4_IfcArcIndex_type = new type_declaration("IfcArcIndex", 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcPlaneAngleMeasure_type); - IFC4X3_RC4_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 81, items); - } - IFC4X3_RC4_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 103, new named_type(IFC4X3_RC4_IfcLabel_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcParameterValue_type); - IFC4X3_RC4_IfcCurveMeasureSelect_type = new select_type("IfcCurveMeasureSelect", 278, items); - } - { - std::vector items; items.reserve(71); - items.push_back(IFC4X3_RC4_IfcAbsorbedDoseMeasure_type); - items.push_back(IFC4X3_RC4_IfcAccelerationMeasure_type); - items.push_back(IFC4X3_RC4_IfcAngularVelocityMeasure_type); - items.push_back(IFC4X3_RC4_IfcAreaDensityMeasure_type); - items.push_back(IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC4_IfcCurvatureMeasure_type); - items.push_back(IFC4X3_RC4_IfcDoseEquivalentMeasure_type); - items.push_back(IFC4X3_RC4_IfcDynamicViscosityMeasure_type); - items.push_back(IFC4X3_RC4_IfcElectricCapacitanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcElectricChargeMeasure_type); - items.push_back(IFC4X3_RC4_IfcElectricConductanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcElectricResistanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcElectricVoltageMeasure_type); - items.push_back(IFC4X3_RC4_IfcEnergyMeasure_type); - items.push_back(IFC4X3_RC4_IfcForceMeasure_type); - items.push_back(IFC4X3_RC4_IfcFrequencyMeasure_type); - items.push_back(IFC4X3_RC4_IfcHeatFluxDensityMeasure_type); - items.push_back(IFC4X3_RC4_IfcHeatingValueMeasure_type); - items.push_back(IFC4X3_RC4_IfcIlluminanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcInductanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcIntegerCountRateMeasure_type); - items.push_back(IFC4X3_RC4_IfcIonConcentrationMeasure_type); - items.push_back(IFC4X3_RC4_IfcIsothermalMoistureCapacityMeasure_type); - items.push_back(IFC4X3_RC4_IfcKinematicViscosityMeasure_type); - items.push_back(IFC4X3_RC4_IfcLinearForceMeasure_type); - items.push_back(IFC4X3_RC4_IfcLinearMomentMeasure_type); - items.push_back(IFC4X3_RC4_IfcLinearStiffnessMeasure_type); - items.push_back(IFC4X3_RC4_IfcLinearVelocityMeasure_type); - items.push_back(IFC4X3_RC4_IfcLuminousFluxMeasure_type); - items.push_back(IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type); - items.push_back(IFC4X3_RC4_IfcMagneticFluxDensityMeasure_type); - items.push_back(IFC4X3_RC4_IfcMagneticFluxMeasure_type); - items.push_back(IFC4X3_RC4_IfcMassDensityMeasure_type); - items.push_back(IFC4X3_RC4_IfcMassFlowRateMeasure_type); - items.push_back(IFC4X3_RC4_IfcMassPerLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcModulusOfElasticityMeasure_type); - items.push_back(IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type); - items.push_back(IFC4X3_RC4_IfcMoistureDiffusivityMeasure_type); - items.push_back(IFC4X3_RC4_IfcMolecularWeightMeasure_type); - items.push_back(IFC4X3_RC4_IfcMomentOfInertiaMeasure_type); - items.push_back(IFC4X3_RC4_IfcMonetaryMeasure_type); - items.push_back(IFC4X3_RC4_IfcPHMeasure_type); - items.push_back(IFC4X3_RC4_IfcPlanarForceMeasure_type); - items.push_back(IFC4X3_RC4_IfcPowerMeasure_type); - items.push_back(IFC4X3_RC4_IfcPressureMeasure_type); - items.push_back(IFC4X3_RC4_IfcRadioActivityMeasure_type); - items.push_back(IFC4X3_RC4_IfcRotationalFrequencyMeasure_type); - items.push_back(IFC4X3_RC4_IfcRotationalMassMeasure_type); - items.push_back(IFC4X3_RC4_IfcRotationalStiffnessMeasure_type); - items.push_back(IFC4X3_RC4_IfcSectionModulusMeasure_type); - items.push_back(IFC4X3_RC4_IfcSectionalAreaIntegralMeasure_type); - items.push_back(IFC4X3_RC4_IfcShearModulusMeasure_type); - items.push_back(IFC4X3_RC4_IfcSoundPowerLevelMeasure_type); - items.push_back(IFC4X3_RC4_IfcSoundPowerMeasure_type); - items.push_back(IFC4X3_RC4_IfcSoundPressureLevelMeasure_type); - items.push_back(IFC4X3_RC4_IfcSoundPressureMeasure_type); - items.push_back(IFC4X3_RC4_IfcSpecificHeatCapacityMeasure_type); - items.push_back(IFC4X3_RC4_IfcTemperatureGradientMeasure_type); - items.push_back(IFC4X3_RC4_IfcTemperatureRateOfChangeMeasure_type); - items.push_back(IFC4X3_RC4_IfcThermalAdmittanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcThermalConductivityMeasure_type); - items.push_back(IFC4X3_RC4_IfcThermalExpansionCoefficientMeasure_type); - items.push_back(IFC4X3_RC4_IfcThermalResistanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcThermalTransmittanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcTorqueMeasure_type); - items.push_back(IFC4X3_RC4_IfcVaporPermeabilityMeasure_type); - items.push_back(IFC4X3_RC4_IfcVolumetricFlowRateMeasure_type); - items.push_back(IFC4X3_RC4_IfcWarpingConstantMeasure_type); - items.push_back(IFC4X3_RC4_IfcWarpingMomentMeasure_type); - IFC4X3_RC4_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 299, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC4_IfcBridgePartTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcMarinePartTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcRailwayPartTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcRoadPartTypeEnum_type); - IFC4X3_RC4_IfcFacilityPartTypeSelect_type = new select_type("IfcFacilityPartTypeSelect", 449, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcVibrationDamperTypeEnum_type); - items.push_back(IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type); - IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type = new select_type("IfcImpactProtectionDeviceTypeSelect", 546, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcRepresentation_type); - items.push_back(IFC4X3_RC4_IfcRepresentationItem_type); - IFC4X3_RC4_IfcLayeredItem_type = new select_type("IfcLayeredItem", 585, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcLibraryInformation_type); - items.push_back(IFC4X3_RC4_IfcLibraryReference_type); - IFC4X3_RC4_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 590, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcExternalReference_type); - items.push_back(IFC4X3_RC4_IfcLightIntensityDistribution_type); - IFC4X3_RC4_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 593, items); - } - IFC4X3_RC4_IfcLineIndex_type = new type_declaration("IfcLineIndex", 613, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC4_IfcMaterialList_type); - items.push_back(IFC4X3_RC4_IfcMaterialUsageDefinition_type); - IFC4X3_RC4_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 656, items); - } - IFC4X3_RC4_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 700, new named_type(IFC4X3_RC4_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(9); - items.push_back(IFC4X3_RC4_IfcAddress_type); - items.push_back(IFC4X3_RC4_IfcAppliedValue_type); - items.push_back(IFC4X3_RC4_IfcExternalReference_type); - items.push_back(IFC4X3_RC4_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC4_IfcOrganization_type); - items.push_back(IFC4X3_RC4_IfcPerson_type); - items.push_back(IFC4X3_RC4_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC4_IfcTable_type); - items.push_back(IFC4X3_RC4_IfcTimeSeries_type); - IFC4X3_RC4_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 707, items); - } - IFC4X3_RC4_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 785, new named_type(IFC4X3_RC4_IfcRatioMeasure_type)); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcArcIndex_type); - items.push_back(IFC4X3_RC4_IfcLineIndex_type); - IFC4X3_RC4_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 1000, items); - } - { - std::vector items; items.reserve(14); - items.push_back(IFC4X3_RC4_IfcBinary_type); - items.push_back(IFC4X3_RC4_IfcBoolean_type); - items.push_back(IFC4X3_RC4_IfcDate_type); - items.push_back(IFC4X3_RC4_IfcDateTime_type); - items.push_back(IFC4X3_RC4_IfcDuration_type); - items.push_back(IFC4X3_RC4_IfcIdentifier_type); - items.push_back(IFC4X3_RC4_IfcInteger_type); - items.push_back(IFC4X3_RC4_IfcLabel_type); - items.push_back(IFC4X3_RC4_IfcLogical_type); - items.push_back(IFC4X3_RC4_IfcPositiveInteger_type); - items.push_back(IFC4X3_RC4_IfcReal_type); - items.push_back(IFC4X3_RC4_IfcText_type); - items.push_back(IFC4X3_RC4_IfcTime_type); - items.push_back(IFC4X3_RC4_IfcTimeStamp_type); - IFC4X3_RC4_IfcSimpleValue_type = new select_type("IfcSimpleValue", 1024, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC4_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC4_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC4_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC4_IfcRatioMeasure_type); - IFC4X3_RC4_IfcSizeSelect_type = new select_type("IfcSizeSelect", 1030, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcSpecularExponent_type); - items.push_back(IFC4X3_RC4_IfcSpecularRoughness_type); - IFC4X3_RC4_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 1065, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type); - items.push_back(IFC4X3_RC4_IfcSurfaceStyleLighting_type); - items.push_back(IFC4X3_RC4_IfcSurfaceStyleRefraction_type); - items.push_back(IFC4X3_RC4_IfcSurfaceStyleShading_type); - items.push_back(IFC4X3_RC4_IfcSurfaceStyleWithTextures_type); - IFC4X3_RC4_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1140, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcDerivedUnit_type); - items.push_back(IFC4X3_RC4_IfcMonetaryUnit_type); - items.push_back(IFC4X3_RC4_IfcNamedUnit_type); - IFC4X3_RC4_IfcUnit_type = new select_type("IfcUnit", 1248, items); - } - IFC4X3_RC4_IfcAlignmentCantSegment_type = new entity("IfcAlignmentCantSegment", false, 31, IFC4X3_RC4_IfcAlignmentParameterSegment_type); - IFC4X3_RC4_IfcAlignmentHorizontalSegment_type = new entity("IfcAlignmentHorizontalSegment", false, 34, IFC4X3_RC4_IfcAlignmentParameterSegment_type); - IFC4X3_RC4_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 53, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 54, IFC4X3_RC4_IfcProfileDef_type); - IFC4X3_RC4_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 55, IFC4X3_RC4_IfcProfileDef_type); - IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 56, IFC4X3_RC4_IfcArbitraryClosedProfileDef_type); - IFC4X3_RC4_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 83, IFC4X3_RC4_IfcSurfaceTexture_type); - IFC4X3_RC4_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 156, IFC4X3_RC4_IfcArbitraryOpenProfileDef_type); - IFC4X3_RC4_IfcClassification_type = new entity("IfcClassification", false, 169, IFC4X3_RC4_IfcExternalInformation_type); - IFC4X3_RC4_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 170, IFC4X3_RC4_IfcExternalReference_type); - IFC4X3_RC4_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 181, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 182, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 197, IFC4X3_RC4_IfcProfileDef_type); - IFC4X3_RC4_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 206, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 207, IFC4X3_RC4_IfcConnectionGeometry_type); - IFC4X3_RC4_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 209, IFC4X3_RC4_IfcConnectionPointGeometry_type); - IFC4X3_RC4_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 229, IFC4X3_RC4_IfcNamedUnit_type); - IFC4X3_RC4_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 234, IFC4X3_RC4_IfcNamedUnit_type); - IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 235, IFC4X3_RC4_IfcConversionBasedUnit_type); - IFC4X3_RC4_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 268, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 282, IFC4X3_RC4_IfcPresentationStyle_type); - IFC4X3_RC4_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 283, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 284, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 285, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 300, IFC4X3_RC4_IfcProfileDef_type); - IFC4X3_RC4_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 332, IFC4X3_RC4_IfcExternalInformation_type); - IFC4X3_RC4_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 333, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 334, IFC4X3_RC4_IfcExternalReference_type); - IFC4X3_RC4_IfcEdge_type = new entity("IfcEdge", false, 368, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 369, IFC4X3_RC4_IfcEdge_type); - IFC4X3_RC4_IfcEventTime_type = new entity("IfcEventTime", false, 423, IFC4X3_RC4_IfcSchedulingTime_type); - IFC4X3_RC4_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 427, IFC4X3_RC4_IfcPropertyAbstraction_type); - IFC4X3_RC4_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 433, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcFace_type = new entity("IfcFace", false, 439, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcFaceBound_type = new entity("IfcFaceBound", false, 441, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 442, IFC4X3_RC4_IfcFaceBound_type); - IFC4X3_RC4_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 443, IFC4X3_RC4_IfcFace_type); - IFC4X3_RC4_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 451, IFC4X3_RC4_IfcStructuralConnectionCondition_type); - IFC4X3_RC4_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 461, IFC4X3_RC4_IfcPresentationStyle_type); - IFC4X3_RC4_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 511, IFC4X3_RC4_IfcRepresentationContext_type); - IFC4X3_RC4_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 512, IFC4X3_RC4_IfcRepresentationItem_type); - IFC4X3_RC4_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 513, IFC4X3_RC4_IfcGeometricRepresentationContext_type); - IFC4X3_RC4_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 514, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 526, IFC4X3_RC4_IfcObjectPlacement_type); - IFC4X3_RC4_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 530, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcImageTexture_type = new entity("IfcImageTexture", false, 542, IFC4X3_RC4_IfcSurfaceTexture_type); - IFC4X3_RC4_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 547, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 551, IFC4X3_RC4_IfcTextureCoordinate_type); - IFC4X3_RC4_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 552, IFC4X3_RC4_IfcIndexedTextureMap_type); - IFC4X3_RC4_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 565, IFC4X3_RC4_IfcTimeSeries_type); - IFC4X3_RC4_IfcLagTime_type = new entity("IfcLagTime", false, 580, IFC4X3_RC4_IfcSchedulingTime_type); - IFC4X3_RC4_IfcLightSource_type = new entity("IfcLightSource", true, 599, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 600, IFC4X3_RC4_IfcLightSource_type); - IFC4X3_RC4_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 601, IFC4X3_RC4_IfcLightSource_type); - IFC4X3_RC4_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 602, IFC4X3_RC4_IfcLightSource_type); - IFC4X3_RC4_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 603, IFC4X3_RC4_IfcLightSource_type); - IFC4X3_RC4_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 604, IFC4X3_RC4_IfcLightSourcePositional_type); - IFC4X3_RC4_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 609, IFC4X3_RC4_IfcObjectPlacement_type); - IFC4X3_RC4_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 618, IFC4X3_RC4_IfcObjectPlacement_type); - IFC4X3_RC4_IfcLoop_type = new entity("IfcLoop", false, 621, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcMappedItem_type = new entity("IfcMappedItem", false, 630, IFC4X3_RC4_IfcRepresentationItem_type); - IFC4X3_RC4_IfcMaterial_type = new entity("IfcMaterial", false, 638, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 640, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 641, IFC4X3_RC4_IfcMaterialDefinition_type); - IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 643, IFC4X3_RC4_IfcProductRepresentation_type); - IFC4X3_RC4_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 646, IFC4X3_RC4_IfcMaterialUsageDefinition_type); - IFC4X3_RC4_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 651, IFC4X3_RC4_IfcMaterialUsageDefinition_type); - IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 652, IFC4X3_RC4_IfcMaterialProfileSetUsage_type); - IFC4X3_RC4_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 654, IFC4X3_RC4_IfcExtendedProperties_type); - IFC4X3_RC4_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 655, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 672, IFC4X3_RC4_IfcDerivedProfileDef_type); - IFC4X3_RC4_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 703, IFC4X3_RC4_IfcRoot_type); - IFC4X3_RC4_IfcOpenCrossProfileDef_type = new entity("IfcOpenCrossProfileDef", false, 715, IFC4X3_RC4_IfcProfileDef_type); - IFC4X3_RC4_IfcOpenShell_type = new entity("IfcOpenShell", false, 719, IFC4X3_RC4_IfcConnectedFaceSet_type); - IFC4X3_RC4_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 721, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 722, IFC4X3_RC4_IfcEdge_type); - IFC4X3_RC4_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 728, IFC4X3_RC4_IfcProfileDef_type); - IFC4X3_RC4_IfcPath_type = new entity("IfcPath", false, 730, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 744, IFC4X3_RC4_IfcPhysicalQuantity_type); - IFC4X3_RC4_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 758, IFC4X3_RC4_IfcSurfaceTexture_type); - IFC4X3_RC4_IfcPlacement_type = new entity("IfcPlacement", true, 759, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 761, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcPoint_type = new entity("IfcPoint", true, 770, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcPointByDistanceExpression_type = new entity("IfcPointByDistanceExpression", false, 771, IFC4X3_RC4_IfcPoint_type); - IFC4X3_RC4_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 772, IFC4X3_RC4_IfcPoint_type); - IFC4X3_RC4_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 773, IFC4X3_RC4_IfcPoint_type); - IFC4X3_RC4_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 778, IFC4X3_RC4_IfcLoop_type); - IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 775, IFC4X3_RC4_IfcHalfSpaceSolid_type); - IFC4X3_RC4_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 790, IFC4X3_RC4_IfcPresentationItem_type); - IFC4X3_RC4_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 791, IFC4X3_RC4_IfcPropertyAbstraction_type); - IFC4X3_RC4_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 793, IFC4X3_RC4_IfcPreDefinedItem_type); - IFC4X3_RC4_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 807, IFC4X3_RC4_IfcProductRepresentation_type); - IFC4X3_RC4_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 812, IFC4X3_RC4_IfcExtendedProperties_type); - IFC4X3_RC4_IfcProperty_type = new entity("IfcProperty", true, 822, IFC4X3_RC4_IfcPropertyAbstraction_type); - IFC4X3_RC4_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 825, IFC4X3_RC4_IfcRoot_type); - IFC4X3_RC4_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 826, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 832, IFC4X3_RC4_IfcPropertyDefinition_type); - IFC4X3_RC4_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 840, IFC4X3_RC4_IfcPropertyDefinition_type); - IFC4X3_RC4_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 854, IFC4X3_RC4_IfcPropertySetDefinition_type); - IFC4X3_RC4_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 879, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 888, IFC4X3_RC4_IfcTimeSeries_type); - IFC4X3_RC4_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 891, IFC4X3_RC4_IfcPreDefinedProperties_type); - IFC4X3_RC4_IfcRelationship_type = new entity("IfcRelationship", true, 921, IFC4X3_RC4_IfcRoot_type); - IFC4X3_RC4_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 960, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 961, IFC4X3_RC4_IfcResourceLevelRelationship_type); - IFC4X3_RC4_IfcResourceTime_type = new entity("IfcResourceTime", false, 965, IFC4X3_RC4_IfcSchedulingTime_type); - IFC4X3_RC4_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 982, IFC4X3_RC4_IfcRectangleProfileDef_type); - IFC4X3_RC4_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 995, IFC4X3_RC4_IfcPreDefinedProperties_type); - IFC4X3_RC4_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 996, IFC4X3_RC4_IfcPreDefinedProperties_type); - IFC4X3_RC4_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 992, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcSegment_type = new entity("IfcSegment", true, 998, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 1014, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 1021, IFC4X3_RC4_IfcProperty_type); - IFC4X3_RC4_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 1036, IFC4X3_RC4_IfcStructuralConnectionCondition_type); - IFC4X3_RC4_IfcSolidModel_type = new entity("IfcSolidModel", true, 1041, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 1099, IFC4X3_RC4_IfcStructuralLoadStatic_type); - IFC4X3_RC4_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 1101, IFC4X3_RC4_IfcStructuralLoadStatic_type); - IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 1102, IFC4X3_RC4_IfcStructuralLoadStatic_type); - IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 1103, IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type); - IFC4X3_RC4_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1104, IFC4X3_RC4_IfcStructuralLoadStatic_type); - IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1105, IFC4X3_RC4_IfcStructuralLoadSingleForce_type); - IFC4X3_RC4_IfcSubedge_type = new entity("IfcSubedge", false, 1128, IFC4X3_RC4_IfcEdge_type); - IFC4X3_RC4_IfcSurface_type = new entity("IfcSurface", true, 1129, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1143, IFC4X3_RC4_IfcSurfaceStyleShading_type); - IFC4X3_RC4_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1147, IFC4X3_RC4_IfcSolidModel_type); - IFC4X3_RC4_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1148, IFC4X3_RC4_IfcSolidModel_type); - IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1149, IFC4X3_RC4_IfcSweptDiskSolid_type); - IFC4X3_RC4_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1150, IFC4X3_RC4_IfcSurface_type); - IFC4X3_RC4_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1240, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1183, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1189, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1190, IFC4X3_RC4_IfcTextLiteral_type); - IFC4X3_RC4_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1193, IFC4X3_RC4_IfcPreDefinedTextFont_type); - IFC4X3_RC4_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1234, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcTypeObject_type = new entity("IfcTypeObject", false, 1244, IFC4X3_RC4_IfcObjectDefinition_type); - IFC4X3_RC4_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1245, IFC4X3_RC4_IfcTypeObject_type); - IFC4X3_RC4_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1246, IFC4X3_RC4_IfcTypeObject_type); - IFC4X3_RC4_IfcTypeResource_type = new entity("IfcTypeResource", true, 1247, IFC4X3_RC4_IfcTypeObject_type); - IFC4X3_RC4_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1258, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcVector_type = new entity("IfcVector", false, 1264, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1267, IFC4X3_RC4_IfcLoop_type); - IFC4X3_RC4_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1300, IFC4X3_RC4_IfcTypeProduct_type); - IFC4X3_RC4_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1315, IFC4X3_RC4_IfcParameterizedProfileDef_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcClassification_type); - items.push_back(IFC4X3_RC4_IfcClassificationReference_type); - IFC4X3_RC4_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 171, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcClassification_type); - items.push_back(IFC4X3_RC4_IfcClassificationReference_type); - IFC4X3_RC4_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 172, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcCoordinateReferenceSystem_type); - items.push_back(IFC4X3_RC4_IfcGeometricRepresentationContext_type); - IFC4X3_RC4_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 247, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcObjectDefinition_type); - items.push_back(IFC4X3_RC4_IfcPropertyDefinition_type); - IFC4X3_RC4_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 298, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcDocumentInformation_type); - items.push_back(IFC4X3_RC4_IfcDocumentReference_type); - IFC4X3_RC4_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 335, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcVector_type); - IFC4X3_RC4_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 531, items); - } - { - std::vector items; items.reserve(23); - items.push_back(IFC4X3_RC4_IfcAmountOfSubstanceMeasure_type); - items.push_back(IFC4X3_RC4_IfcAreaMeasure_type); - items.push_back(IFC4X3_RC4_IfcComplexNumber_type); - items.push_back(IFC4X3_RC4_IfcContextDependentMeasure_type); - items.push_back(IFC4X3_RC4_IfcCountMeasure_type); - items.push_back(IFC4X3_RC4_IfcDescriptiveMeasure_type); - items.push_back(IFC4X3_RC4_IfcElectricCurrentMeasure_type); - items.push_back(IFC4X3_RC4_IfcLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcLuminousIntensityMeasure_type); - items.push_back(IFC4X3_RC4_IfcMassMeasure_type); - items.push_back(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcNormalisedRatioMeasure_type); - items.push_back(IFC4X3_RC4_IfcNumericMeasure_type); - items.push_back(IFC4X3_RC4_IfcParameterValue_type); - items.push_back(IFC4X3_RC4_IfcPlaneAngleMeasure_type); - items.push_back(IFC4X3_RC4_IfcPositiveLengthMeasure_type); - items.push_back(IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type); - items.push_back(IFC4X3_RC4_IfcPositiveRatioMeasure_type); - items.push_back(IFC4X3_RC4_IfcRatioMeasure_type); - items.push_back(IFC4X3_RC4_IfcSolidAngleMeasure_type); - items.push_back(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type); - items.push_back(IFC4X3_RC4_IfcTimeMeasure_type); - items.push_back(IFC4X3_RC4_IfcVolumeMeasure_type); - IFC4X3_RC4_IfcMeasureValue_type = new select_type("IfcMeasureValue", 658, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcPoint_type); - items.push_back(IFC4X3_RC4_IfcVertexPoint_type); - IFC4X3_RC4_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 774, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcProductDefinitionShape_type); - items.push_back(IFC4X3_RC4_IfcRepresentationMap_type); - IFC4X3_RC4_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 809, items); - } - IFC4X3_RC4_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 834, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertySetDefinition_type))); - { - std::vector items; items.reserve(17); - items.push_back(IFC4X3_RC4_IfcActorRole_type); - items.push_back(IFC4X3_RC4_IfcAppliedValue_type); - items.push_back(IFC4X3_RC4_IfcApproval_type); - items.push_back(IFC4X3_RC4_IfcConstraint_type); - items.push_back(IFC4X3_RC4_IfcContextDependentUnit_type); - items.push_back(IFC4X3_RC4_IfcConversionBasedUnit_type); - items.push_back(IFC4X3_RC4_IfcExternalInformation_type); - items.push_back(IFC4X3_RC4_IfcExternalReference_type); - items.push_back(IFC4X3_RC4_IfcMaterialDefinition_type); - items.push_back(IFC4X3_RC4_IfcOrganization_type); - items.push_back(IFC4X3_RC4_IfcPerson_type); - items.push_back(IFC4X3_RC4_IfcPersonAndOrganization_type); - items.push_back(IFC4X3_RC4_IfcPhysicalQuantity_type); - items.push_back(IFC4X3_RC4_IfcProfileDef_type); - items.push_back(IFC4X3_RC4_IfcPropertyAbstraction_type); - items.push_back(IFC4X3_RC4_IfcShapeAspect_type); - items.push_back(IFC4X3_RC4_IfcTimeSeries_type); - IFC4X3_RC4_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 963, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcExternallyDefinedTextFont_type); - items.push_back(IFC4X3_RC4_IfcPreDefinedTextFont_type); - IFC4X3_RC4_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1188, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcDerivedMeasureValue_type); - items.push_back(IFC4X3_RC4_IfcMeasureValue_type); - items.push_back(IFC4X3_RC4_IfcSimpleValue_type); - IFC4X3_RC4_IfcValue_type = new select_type("IfcValue", 1259, items); - } - IFC4X3_RC4_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X3_RC4_IfcFaceSurface_type); - IFC4X3_RC4_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 47, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 63, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 67, IFC4X3_RC4_IfcPlacement_type); - IFC4X3_RC4_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 69, IFC4X3_RC4_IfcPlacement_type); - IFC4X3_RC4_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 70, IFC4X3_RC4_IfcPlacement_type); - IFC4X3_RC4_IfcAxis2PlacementLinear_type = new entity("IfcAxis2PlacementLinear", false, 71, IFC4X3_RC4_IfcPlacement_type); - IFC4X3_RC4_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 92, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 101, IFC4X3_RC4_IfcSurface_type); - IFC4X3_RC4_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 102, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 104, IFC4X3_RC4_IfcHalfSpaceSolid_type); - IFC4X3_RC4_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 267, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 147, IFC4X3_RC4_IfcPoint_type); - IFC4X3_RC4_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 148, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 149, IFC4X3_RC4_IfcCartesianPointList_type); - IFC4X3_RC4_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 150, IFC4X3_RC4_IfcCartesianPointList_type); - IFC4X3_RC4_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 151, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 152, IFC4X3_RC4_IfcCartesianTransformationOperator_type); - IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 153, IFC4X3_RC4_IfcCartesianTransformationOperator2D_type); - IFC4X3_RC4_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 154, IFC4X3_RC4_IfcCartesianTransformationOperator_type); - IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 155, IFC4X3_RC4_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC4_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 166, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcClosedShell_type = new entity("IfcClosedShell", false, 173, IFC4X3_RC4_IfcConnectedFaceSet_type); - IFC4X3_RC4_IfcColourRgb_type = new entity("IfcColourRgb", false, 180, IFC4X3_RC4_IfcColourSpecification_type); - IFC4X3_RC4_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 191, IFC4X3_RC4_IfcProperty_type); - IFC4X3_RC4_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 196, IFC4X3_RC4_IfcSegment_type); - IFC4X3_RC4_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 226, IFC4X3_RC4_IfcTypeResource_type); - IFC4X3_RC4_IfcContext_type = new entity("IfcContext", true, 227, IFC4X3_RC4_IfcObjectDefinition_type); - IFC4X3_RC4_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 262, IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 264, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 266, IFC4X3_RC4_IfcSolidModel_type); - IFC4X3_RC4_IfcCurve_type = new entity("IfcCurve", true, 273, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 274, IFC4X3_RC4_IfcBoundedSurface_type); - IFC4X3_RC4_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 275, IFC4X3_RC4_IfcBoundedSurface_type); - IFC4X3_RC4_IfcCurveSegment_type = new entity("IfcCurveSegment", false, 281, IFC4X3_RC4_IfcSegment_type); - IFC4X3_RC4_IfcDirection_type = new entity("IfcDirection", false, 307, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type = new entity("IfcDirectrixCurveSweptAreaSolid", true, 309, IFC4X3_RC4_IfcSweptAreaSolid_type); - IFC4X3_RC4_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 343, IFC4X3_RC4_IfcTypeProduct_type); - IFC4X3_RC4_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 370, IFC4X3_RC4_IfcLoop_type); - IFC4X3_RC4_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 406, IFC4X3_RC4_IfcQuantitySet_type); - IFC4X3_RC4_IfcElementType_type = new entity("IfcElementType", true, 407, IFC4X3_RC4_IfcTypeProduct_type); - IFC4X3_RC4_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 399, IFC4X3_RC4_IfcSurface_type); - IFC4X3_RC4_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 409, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcEventType_type = new entity("IfcEventType", false, 425, IFC4X3_RC4_IfcTypeProcess_type); - IFC4X3_RC4_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 437, IFC4X3_RC4_IfcSweptAreaSolid_type); - IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 438, IFC4X3_RC4_IfcExtrudedAreaSolid_type); - IFC4X3_RC4_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 440, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 462, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 463, IFC4X3_RC4_IfcGeometricRepresentationItem_type); - IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 471, IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC4_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 502, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 504, IFC4X3_RC4_IfcFurnishingElementType_type); - IFC4X3_RC4_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 507, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 509, IFC4X3_RC4_IfcGeometricSet_type); - IFC4X3_RC4_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 567, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 549, IFC4X3_RC4_IfcTessellatedItem_type); - IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 550, IFC4X3_RC4_IfcIndexedPolygonalFace_type); - IFC4X3_RC4_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 622, IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 578, IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcLine_type = new entity("IfcLine", false, 605, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 628, IFC4X3_RC4_IfcSolidModel_type); - IFC4X3_RC4_IfcObject_type = new entity("IfcObject", true, 702, IFC4X3_RC4_IfcObjectDefinition_type); - IFC4X3_RC4_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 711, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 712, IFC4X3_RC4_IfcOffsetCurve_type); - IFC4X3_RC4_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 713, IFC4X3_RC4_IfcOffsetCurve_type); - IFC4X3_RC4_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 714, IFC4X3_RC4_IfcOffsetCurve_type); - IFC4X3_RC4_IfcPcurve_type = new entity("IfcPcurve", false, 734, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 760, IFC4X3_RC4_IfcPlanarExtent_type); - IFC4X3_RC4_IfcPlane_type = new entity("IfcPlane", false, 763, IFC4X3_RC4_IfcElementarySurface_type); - IFC4X3_RC4_IfcPolynomialCurve_type = new entity("IfcPolynomialCurve", false, 779, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 788, IFC4X3_RC4_IfcPreDefinedItem_type); - IFC4X3_RC4_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 789, IFC4X3_RC4_IfcPreDefinedItem_type); - IFC4X3_RC4_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 792, IFC4X3_RC4_IfcPropertySetDefinition_type); - IFC4X3_RC4_IfcProcedureType_type = new entity("IfcProcedureType", false, 802, IFC4X3_RC4_IfcTypeProcess_type); - IFC4X3_RC4_IfcProcess_type = new entity("IfcProcess", true, 804, IFC4X3_RC4_IfcObject_type); - IFC4X3_RC4_IfcProduct_type = new entity("IfcProduct", true, 806, IFC4X3_RC4_IfcObject_type); - IFC4X3_RC4_IfcProject_type = new entity("IfcProject", false, 814, IFC4X3_RC4_IfcContext_type); - IFC4X3_RC4_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 819, IFC4X3_RC4_IfcContext_type); - IFC4X3_RC4_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 824, IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 827, IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 829, IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 830, IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcPropertySet_type = new entity("IfcPropertySet", false, 831, IFC4X3_RC4_IfcPropertySetDefinition_type); - IFC4X3_RC4_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 835, IFC4X3_RC4_IfcPropertyTemplateDefinition_type); - IFC4X3_RC4_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 837, IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 838, IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 839, IFC4X3_RC4_IfcPropertyTemplateDefinition_type); - IFC4X3_RC4_IfcProxy_type = new entity("IfcProxy", false, 847, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 878, IFC4X3_RC4_IfcRectangleProfileDef_type); - IFC4X3_RC4_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 880, IFC4X3_RC4_IfcCsgPrimitive3D_type); - IFC4X3_RC4_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 881, IFC4X3_RC4_IfcBoundedSurface_type); - IFC4X3_RC4_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 892, IFC4X3_RC4_IfcPreDefinedPropertySet_type); - IFC4X3_RC4_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 905, IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 906, IFC4X3_RC4_IfcRelAssigns_type); - IFC4X3_RC4_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 907, IFC4X3_RC4_IfcRelAssigns_type); - IFC4X3_RC4_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 908, IFC4X3_RC4_IfcRelAssigns_type); - IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 909, IFC4X3_RC4_IfcRelAssignsToGroup_type); - IFC4X3_RC4_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 910, IFC4X3_RC4_IfcRelAssigns_type); - IFC4X3_RC4_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 911, IFC4X3_RC4_IfcRelAssigns_type); - IFC4X3_RC4_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 912, IFC4X3_RC4_IfcRelAssigns_type); - IFC4X3_RC4_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 913, IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 914, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 915, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 916, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 917, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 918, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 919, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelAssociatesProfileDef_type = new entity("IfcRelAssociatesProfileDef", false, 920, IFC4X3_RC4_IfcRelAssociates_type); - IFC4X3_RC4_IfcRelConnects_type = new entity("IfcRelConnects", true, 922, IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 923, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 924, IFC4X3_RC4_IfcRelConnectsElements_type); - IFC4X3_RC4_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 926, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 925, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 927, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 928, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 929, IFC4X3_RC4_IfcRelConnectsStructuralMember_type); - IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 930, IFC4X3_RC4_IfcRelConnectsElements_type); - IFC4X3_RC4_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 931, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 932, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 933, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 934, IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 935, IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRelDefines_type = new entity("IfcRelDefines", true, 936, IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 937, IFC4X3_RC4_IfcRelDefines_type); - IFC4X3_RC4_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 938, IFC4X3_RC4_IfcRelDefines_type); - IFC4X3_RC4_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 939, IFC4X3_RC4_IfcRelDefines_type); - IFC4X3_RC4_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 940, IFC4X3_RC4_IfcRelDefines_type); - IFC4X3_RC4_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 941, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 942, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 943, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelNests_type = new entity("IfcRelNests", false, 944, IFC4X3_RC4_IfcRelDecomposes_type); - IFC4X3_RC4_IfcRelPositions_type = new entity("IfcRelPositions", false, 945, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 946, IFC4X3_RC4_IfcRelDecomposes_type); - IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 947, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelSequence_type = new entity("IfcRelSequence", false, 948, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 949, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 950, IFC4X3_RC4_IfcRelConnects_type); - IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 951, IFC4X3_RC4_IfcRelSpaceBoundary_type); - IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 952, IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC4_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 953, IFC4X3_RC4_IfcRelDecomposes_type); - IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 954, IFC4X3_RC4_IfcCompositeCurveSegment_type); - IFC4X3_RC4_IfcResource_type = new entity("IfcResource", true, 959, IFC4X3_RC4_IfcObject_type); - IFC4X3_RC4_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 966, IFC4X3_RC4_IfcSweptAreaSolid_type); - IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 967, IFC4X3_RC4_IfcRevolvedAreaSolid_type); - IFC4X3_RC4_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 968, IFC4X3_RC4_IfcCsgPrimitive3D_type); - IFC4X3_RC4_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 969, IFC4X3_RC4_IfcCsgPrimitive3D_type); - IFC4X3_RC4_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 990, IFC4X3_RC4_IfcSolidModel_type); - IFC4X3_RC4_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 991, IFC4X3_RC4_IfcSectionedSolid_type); - IFC4X3_RC4_IfcSectionedSurface_type = new entity("IfcSectionedSurface", false, 993, IFC4X3_RC4_IfcSurface_type); - IFC4X3_RC4_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 1022, IFC4X3_RC4_IfcPropertyTemplate_type); - IFC4X3_RC4_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 1055, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 1056, IFC4X3_RC4_IfcTypeProduct_type); - IFC4X3_RC4_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 1058, IFC4X3_RC4_IfcSpatialElement_type); - IFC4X3_RC4_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 1059, IFC4X3_RC4_IfcSpatialElementType_type); - IFC4X3_RC4_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 1060, IFC4X3_RC4_IfcSpatialElement_type); - IFC4X3_RC4_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 1061, IFC4X3_RC4_IfcSpatialElementType_type); - IFC4X3_RC4_IfcSphere_type = new entity("IfcSphere", false, 1067, IFC4X3_RC4_IfcCsgPrimitive3D_type); - IFC4X3_RC4_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 1068, IFC4X3_RC4_IfcElementarySurface_type); - IFC4X3_RC4_IfcSpiral_type = new entity("IfcSpiral", true, 1069, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 1081, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 1093, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1108, IFC4X3_RC4_IfcStructuralItem_type); - IFC4X3_RC4_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1113, IFC4X3_RC4_IfcStructuralActivity_type); - IFC4X3_RC4_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1118, IFC4X3_RC4_IfcStructuralMember_type); - IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1120, IFC4X3_RC4_IfcStructuralSurfaceMember_type); - IFC4X3_RC4_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1121, IFC4X3_RC4_IfcStructuralReaction_type); - IFC4X3_RC4_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1126, IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1130, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1131, IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type); - IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1134, IFC4X3_RC4_IfcSweptSurface_type); - IFC4X3_RC4_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1135, IFC4X3_RC4_IfcSweptSurface_type); - IFC4X3_RC4_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1156, IFC4X3_RC4_IfcFurnishingElementType_type); - IFC4X3_RC4_IfcTask_type = new entity("IfcTask", false, 1164, IFC4X3_RC4_IfcProcess_type); - IFC4X3_RC4_IfcTaskType_type = new entity("IfcTaskType", false, 1168, IFC4X3_RC4_IfcTypeProcess_type); - IFC4X3_RC4_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1182, IFC4X3_RC4_IfcTessellatedItem_type); - IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type = new entity("IfcThirdOrderPolynomialSpiral", false, 1208, IFC4X3_RC4_IfcSpiral_type); - IFC4X3_RC4_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1219, IFC4X3_RC4_IfcElementarySurface_type); - IFC4X3_RC4_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1232, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1235, IFC4X3_RC4_IfcTessellatedFaceSet_type); - IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1236, IFC4X3_RC4_IfcTriangulatedFaceSet_type); - IFC4X3_RC4_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1295, IFC4X3_RC4_IfcPreDefinedPropertySet_type); - IFC4X3_RC4_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1298, IFC4X3_RC4_IfcPreDefinedPropertySet_type); - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC4_IfcReference_type); - items.push_back(IFC4X3_RC4_IfcValue_type); - IFC4X3_RC4_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 51, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcAxis2Placement2D_type); - items.push_back(IFC4X3_RC4_IfcAxis2Placement3D_type); - IFC4X3_RC4_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 68, items); - } - { - std::vector items; items.reserve(5); - items.push_back(IFC4X3_RC4_IfcBooleanResult_type); - items.push_back(IFC4X3_RC4_IfcCsgPrimitive3D_type); - items.push_back(IFC4X3_RC4_IfcHalfSpaceSolid_type); - items.push_back(IFC4X3_RC4_IfcSolidModel_type); - items.push_back(IFC4X3_RC4_IfcTessellatedFaceSet_type); - IFC4X3_RC4_IfcBooleanOperand_type = new select_type("IfcBooleanOperand", 90, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcColourSpecification_type); - items.push_back(IFC4X3_RC4_IfcPreDefinedColour_type); - IFC4X3_RC4_IfcColour_type = new select_type("IfcColour", 178, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcColourRgb_type); - items.push_back(IFC4X3_RC4_IfcNormalisedRatioMeasure_type); - IFC4X3_RC4_IfcColourOrFactor_type = new select_type("IfcColourOrFactor", 179, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBooleanResult_type); - items.push_back(IFC4X3_RC4_IfcCsgPrimitive3D_type); - IFC4X3_RC4_IfcCsgSelect_type = new select_type("IfcCsgSelect", 265, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcCurveStyleFont_type); - items.push_back(IFC4X3_RC4_IfcPreDefinedCurveFont_type); - IFC4X3_RC4_IfcCurveStyleFontSelect_type = new select_type("IfcCurveStyleFontSelect", 286, items); - } - { - std::vector items; items.reserve(4); - items.push_back(IFC4X3_RC4_IfcColour_type); - items.push_back(IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type); - items.push_back(IFC4X3_RC4_IfcFillAreaStyleHatching_type); - items.push_back(IFC4X3_RC4_IfcFillAreaStyleTiles_type); - IFC4X3_RC4_IfcFillStyleSelect_type = new select_type("IfcFillStyleSelect", 464, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcCurve_type); - items.push_back(IFC4X3_RC4_IfcPoint_type); - items.push_back(IFC4X3_RC4_IfcSurface_type); - IFC4X3_RC4_IfcGeometricSetSelect_type = new select_type("IfcGeometricSetSelect", 515, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcDirection_type); - items.push_back(IFC4X3_RC4_IfcVirtualGridIntersection_type); - IFC4X3_RC4_IfcGridPlacementDirectionSelect_type = new select_type("IfcGridPlacementDirectionSelect", 527, items); - } - { - std::vector items; items.reserve(6); - items.push_back(IFC4X3_RC4_IfcAppliedValue_type); - items.push_back(IFC4X3_RC4_IfcMeasureWithUnit_type); - items.push_back(IFC4X3_RC4_IfcReference_type); - items.push_back(IFC4X3_RC4_IfcTable_type); - items.push_back(IFC4X3_RC4_IfcTimeSeries_type); - items.push_back(IFC4X3_RC4_IfcValue_type); - IFC4X3_RC4_IfcMetricValueSelect_type = new select_type("IfcMetricValueSelect", 671, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcProcess_type); - items.push_back(IFC4X3_RC4_IfcTypeProcess_type); - IFC4X3_RC4_IfcProcessSelect_type = new select_type("IfcProcessSelect", 805, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcProduct_type); - items.push_back(IFC4X3_RC4_IfcTypeProduct_type); - IFC4X3_RC4_IfcProductSelect_type = new select_type("IfcProductSelect", 810, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcPropertySetDefinition_type); - items.push_back(IFC4X3_RC4_IfcPropertySetDefinitionSet_type); - IFC4X3_RC4_IfcPropertySetDefinitionSelect_type = new select_type("IfcPropertySetDefinitionSelect", 833, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcResource_type); - items.push_back(IFC4X3_RC4_IfcTypeResource_type); - IFC4X3_RC4_IfcResourceSelect_type = new select_type("IfcResourceSelect", 964, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcClosedShell_type); - items.push_back(IFC4X3_RC4_IfcOpenShell_type); - IFC4X3_RC4_IfcShell_type = new select_type("IfcShell", 1013, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcClosedShell_type); - items.push_back(IFC4X3_RC4_IfcSolidModel_type); - IFC4X3_RC4_IfcSolidOrShell_type = new select_type("IfcSolidOrShell", 1042, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcFaceBasedSurfaceModel_type); - items.push_back(IFC4X3_RC4_IfcFaceSurface_type); - items.push_back(IFC4X3_RC4_IfcSurface_type); - IFC4X3_RC4_IfcSurfaceOrFaceSurface_type = new select_type("IfcSurfaceOrFaceSurface", 1136, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcCartesianPoint_type); - items.push_back(IFC4X3_RC4_IfcParameterValue_type); - IFC4X3_RC4_IfcTrimmingSelect_type = new select_type("IfcTrimmingSelect", 1239, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcDirection_type); - items.push_back(IFC4X3_RC4_IfcVector_type); - IFC4X3_RC4_IfcVectorOrDirection_type = new select_type("IfcVectorOrDirection", 1265, items); - } - IFC4X3_RC4_IfcActor_type = new entity("IfcActor", false, 6, IFC4X3_RC4_IfcObject_type); - IFC4X3_RC4_IfcAdvancedBrep_type = new entity("IfcAdvancedBrep", false, 14, IFC4X3_RC4_IfcManifoldSolidBrep_type); - IFC4X3_RC4_IfcAdvancedBrepWithVoids_type = new entity("IfcAdvancedBrepWithVoids", false, 15, IFC4X3_RC4_IfcAdvancedBrep_type); - IFC4X3_RC4_IfcAnnotation_type = new entity("IfcAnnotation", false, 46, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcBSplineSurface_type = new entity("IfcBSplineSurface", true, 111, IFC4X3_RC4_IfcBoundedSurface_type); - IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type = new entity("IfcBSplineSurfaceWithKnots", false, 113, IFC4X3_RC4_IfcBSplineSurface_type); - IFC4X3_RC4_IfcBlock_type = new entity("IfcBlock", false, 84, IFC4X3_RC4_IfcCsgPrimitive3D_type); - IFC4X3_RC4_IfcBooleanClippingResult_type = new entity("IfcBooleanClippingResult", false, 89, IFC4X3_RC4_IfcBooleanResult_type); - IFC4X3_RC4_IfcBoundedCurve_type = new entity("IfcBoundedCurve", true, 100, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcBuildingStorey_type = new entity("IfcBuildingStorey", false, 121, IFC4X3_RC4_IfcSpatialStructureElement_type); - IFC4X3_RC4_IfcBuiltElementType_type = new entity("IfcBuiltElementType", false, 125, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcChimneyType_type = new entity("IfcChimneyType", false, 162, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcCircleHollowProfileDef_type = new entity("IfcCircleHollowProfileDef", false, 165, IFC4X3_RC4_IfcCircleProfileDef_type); - IFC4X3_RC4_IfcCivilElementType_type = new entity("IfcCivilElementType", false, 168, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcClothoid_type = new entity("IfcClothoid", false, 174, IFC4X3_RC4_IfcSpiral_type); - IFC4X3_RC4_IfcColumnType_type = new entity("IfcColumnType", false, 185, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcComplexPropertyTemplate_type = new entity("IfcComplexPropertyTemplate", false, 192, IFC4X3_RC4_IfcPropertyTemplate_type); - IFC4X3_RC4_IfcCompositeCurve_type = new entity("IfcCompositeCurve", false, 194, IFC4X3_RC4_IfcBoundedCurve_type); - IFC4X3_RC4_IfcCompositeCurveOnSurface_type = new entity("IfcCompositeCurveOnSurface", false, 195, IFC4X3_RC4_IfcCompositeCurve_type); - IFC4X3_RC4_IfcConic_type = new entity("IfcConic", true, 205, IFC4X3_RC4_IfcCurve_type); - IFC4X3_RC4_IfcConstructionEquipmentResourceType_type = new entity("IfcConstructionEquipmentResourceType", false, 217, IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcConstructionMaterialResourceType_type = new entity("IfcConstructionMaterialResourceType", false, 220, IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcConstructionProductResourceType_type = new entity("IfcConstructionProductResourceType", false, 223, IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcConstructionResource_type = new entity("IfcConstructionResource", true, 225, IFC4X3_RC4_IfcResource_type); - IFC4X3_RC4_IfcControl_type = new entity("IfcControl", true, 230, IFC4X3_RC4_IfcObject_type); - IFC4X3_RC4_IfcCosine_type = new entity("IfcCosine", false, 248, IFC4X3_RC4_IfcSpiral_type); - IFC4X3_RC4_IfcCostItem_type = new entity("IfcCostItem", false, 249, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcCostSchedule_type = new entity("IfcCostSchedule", false, 251, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcCourseType_type = new entity("IfcCourseType", false, 256, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcCoveringType_type = new entity("IfcCoveringType", false, 259, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcCrewResource_type = new entity("IfcCrewResource", false, 261, IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcCurtainWallType_type = new entity("IfcCurtainWallType", false, 270, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcCylindricalSurface_type = new entity("IfcCylindricalSurface", false, 287, IFC4X3_RC4_IfcElementarySurface_type); - IFC4X3_RC4_IfcDeepFoundationType_type = new entity("IfcDeepFoundationType", false, 297, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type = new entity("IfcDirectrixDerivedReferenceSweptAreaSolid", false, 310, IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type); - IFC4X3_RC4_IfcDistributionElementType_type = new entity("IfcDistributionElementType", false, 324, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcDistributionFlowElementType_type = new entity("IfcDistributionFlowElementType", true, 326, IFC4X3_RC4_IfcDistributionElementType_type); - IFC4X3_RC4_IfcDoorLiningProperties_type = new entity("IfcDoorLiningProperties", false, 338, IFC4X3_RC4_IfcPreDefinedPropertySet_type); - IFC4X3_RC4_IfcDoorPanelProperties_type = new entity("IfcDoorPanelProperties", false, 341, IFC4X3_RC4_IfcPreDefinedPropertySet_type); - IFC4X3_RC4_IfcDoorType_type = new entity("IfcDoorType", false, 346, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcDraughtingPreDefinedColour_type = new entity("IfcDraughtingPreDefinedColour", false, 350, IFC4X3_RC4_IfcPreDefinedColour_type); - IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type = new entity("IfcDraughtingPreDefinedCurveFont", false, 351, IFC4X3_RC4_IfcPreDefinedCurveFont_type); - IFC4X3_RC4_IfcElement_type = new entity("IfcElement", true, 398, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcElementAssembly_type = new entity("IfcElementAssembly", false, 400, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcElementAssemblyType_type = new entity("IfcElementAssemblyType", false, 401, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcElementComponent_type = new entity("IfcElementComponent", true, 403, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcElementComponentType_type = new entity("IfcElementComponentType", true, 404, IFC4X3_RC4_IfcElementType_type); - IFC4X3_RC4_IfcEllipse_type = new entity("IfcEllipse", false, 408, IFC4X3_RC4_IfcConic_type); - IFC4X3_RC4_IfcEnergyConversionDeviceType_type = new entity("IfcEnergyConversionDeviceType", true, 411, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcEngineType_type = new entity("IfcEngineType", false, 414, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcEvaporativeCoolerType_type = new entity("IfcEvaporativeCoolerType", false, 417, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcEvaporatorType_type = new entity("IfcEvaporatorType", false, 420, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcEvent_type = new entity("IfcEvent", false, 422, IFC4X3_RC4_IfcProcess_type); - IFC4X3_RC4_IfcExternalSpatialStructureElement_type = new entity("IfcExternalSpatialStructureElement", true, 436, IFC4X3_RC4_IfcSpatialElement_type); - IFC4X3_RC4_IfcFacetedBrep_type = new entity("IfcFacetedBrep", false, 444, IFC4X3_RC4_IfcManifoldSolidBrep_type); - IFC4X3_RC4_IfcFacetedBrepWithVoids_type = new entity("IfcFacetedBrepWithVoids", false, 445, IFC4X3_RC4_IfcFacetedBrep_type); - IFC4X3_RC4_IfcFacility_type = new entity("IfcFacility", false, 446, IFC4X3_RC4_IfcSpatialStructureElement_type); - IFC4X3_RC4_IfcFacilityPart_type = new entity("IfcFacilityPart", false, 447, IFC4X3_RC4_IfcSpatialStructureElement_type); - IFC4X3_RC4_IfcFastener_type = new entity("IfcFastener", false, 455, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcFastenerType_type = new entity("IfcFastenerType", false, 456, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcFeatureElement_type = new entity("IfcFeatureElement", true, 458, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcFeatureElementAddition_type = new entity("IfcFeatureElementAddition", true, 459, IFC4X3_RC4_IfcFeatureElement_type); - IFC4X3_RC4_IfcFeatureElementSubtraction_type = new entity("IfcFeatureElementSubtraction", true, 460, IFC4X3_RC4_IfcFeatureElement_type); - IFC4X3_RC4_IfcFlowControllerType_type = new entity("IfcFlowControllerType", true, 473, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFlowFittingType_type = new entity("IfcFlowFittingType", true, 476, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFlowMeterType_type = new entity("IfcFlowMeterType", false, 481, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcFlowMovingDeviceType_type = new entity("IfcFlowMovingDeviceType", true, 484, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFlowSegmentType_type = new entity("IfcFlowSegmentType", true, 486, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFlowStorageDeviceType_type = new entity("IfcFlowStorageDeviceType", true, 488, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFlowTerminalType_type = new entity("IfcFlowTerminalType", true, 490, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFlowTreatmentDeviceType_type = new entity("IfcFlowTreatmentDeviceType", true, 492, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcFootingType_type = new entity("IfcFootingType", false, 497, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcFurnishingElement_type = new entity("IfcFurnishingElement", false, 501, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcFurniture_type = new entity("IfcFurniture", false, 503, IFC4X3_RC4_IfcFurnishingElement_type); - IFC4X3_RC4_IfcGeographicElement_type = new entity("IfcGeographicElement", false, 506, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcGeotechnicalElement_type = new entity("IfcGeotechnicalElement", true, 519, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcGeotechnicalStratum_type = new entity("IfcGeotechnicalStratum", true, 520, IFC4X3_RC4_IfcGeotechnicalElement_type); - IFC4X3_RC4_IfcGradientCurve_type = new entity("IfcGradientCurve", false, 523, IFC4X3_RC4_IfcCompositeCurve_type); - IFC4X3_RC4_IfcGroup_type = new entity("IfcGroup", false, 529, IFC4X3_RC4_IfcObject_type); - IFC4X3_RC4_IfcHeatExchangerType_type = new entity("IfcHeatExchangerType", false, 533, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcHumidifierType_type = new entity("IfcHumidifierType", false, 538, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcImpactProtectionDevice_type = new entity("IfcImpactProtectionDevice", false, 543, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcImpactProtectionDeviceType_type = new entity("IfcImpactProtectionDeviceType", false, 544, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcIndexedPolyCurve_type = new entity("IfcIndexedPolyCurve", false, 548, IFC4X3_RC4_IfcBoundedCurve_type); - IFC4X3_RC4_IfcInterceptorType_type = new entity("IfcInterceptorType", false, 557, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC4_IfcIntersectionCurve_type = new entity("IfcIntersectionCurve", false, 561, IFC4X3_RC4_IfcSurfaceCurve_type); - IFC4X3_RC4_IfcInventory_type = new entity("IfcInventory", false, 562, IFC4X3_RC4_IfcGroup_type); - IFC4X3_RC4_IfcJunctionBoxType_type = new entity("IfcJunctionBoxType", false, 570, IFC4X3_RC4_IfcFlowFittingType_type); - IFC4X3_RC4_IfcKerbType_type = new entity("IfcKerbType", false, 573, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcLaborResource_type = new entity("IfcLaborResource", false, 577, IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcLampType_type = new entity("IfcLampType", false, 582, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcLightFixtureType_type = new entity("IfcLightFixtureType", false, 596, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcLinearElement_type = new entity("IfcLinearElement", false, 606, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcLiquidTerminalType_type = new entity("IfcLiquidTerminalType", false, 615, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcMarineFacility_type = new entity("IfcMarineFacility", false, 631, IFC4X3_RC4_IfcFacility_type); - IFC4X3_RC4_IfcMechanicalFastener_type = new entity("IfcMechanicalFastener", false, 660, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcMechanicalFastenerType_type = new entity("IfcMechanicalFastenerType", false, 661, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcMedicalDeviceType_type = new entity("IfcMedicalDeviceType", false, 664, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcMemberType_type = new entity("IfcMemberType", false, 668, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type = new entity("IfcMobileTelecommunicationsApplianceType", false, 674, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcMooringDeviceType_type = new entity("IfcMooringDeviceType", false, 690, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcMotorConnectionType_type = new entity("IfcMotorConnectionType", false, 693, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcNavigationElementType_type = new entity("IfcNavigationElementType", false, 697, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcOccupant_type = new entity("IfcOccupant", false, 709, IFC4X3_RC4_IfcActor_type); - IFC4X3_RC4_IfcOpeningElement_type = new entity("IfcOpeningElement", false, 716, IFC4X3_RC4_IfcFeatureElementSubtraction_type); - IFC4X3_RC4_IfcOpeningStandardCase_type = new entity("IfcOpeningStandardCase", false, 718, IFC4X3_RC4_IfcOpeningElement_type); - IFC4X3_RC4_IfcOutletType_type = new entity("IfcOutletType", false, 725, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcPavementType_type = new entity("IfcPavementType", false, 732, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcPerformanceHistory_type = new entity("IfcPerformanceHistory", false, 735, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcPermeableCoveringProperties_type = new entity("IfcPermeableCoveringProperties", false, 738, IFC4X3_RC4_IfcPreDefinedPropertySet_type); - IFC4X3_RC4_IfcPermit_type = new entity("IfcPermit", false, 739, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcPileType_type = new entity("IfcPileType", false, 750, IFC4X3_RC4_IfcDeepFoundationType_type); - IFC4X3_RC4_IfcPipeFittingType_type = new entity("IfcPipeFittingType", false, 753, IFC4X3_RC4_IfcFlowFittingType_type); - IFC4X3_RC4_IfcPipeSegmentType_type = new entity("IfcPipeSegmentType", false, 756, IFC4X3_RC4_IfcFlowSegmentType_type); - IFC4X3_RC4_IfcPlant_type = new entity("IfcPlant", false, 765, IFC4X3_RC4_IfcGeographicElement_type); - IFC4X3_RC4_IfcPlateType_type = new entity("IfcPlateType", false, 768, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcPolygonalFaceSet_type = new entity("IfcPolygonalFaceSet", false, 776, IFC4X3_RC4_IfcTessellatedFaceSet_type); - IFC4X3_RC4_IfcPolyline_type = new entity("IfcPolyline", false, 777, IFC4X3_RC4_IfcBoundedCurve_type); - IFC4X3_RC4_IfcPort_type = new entity("IfcPort", true, 780, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcPositioningElement_type = new entity("IfcPositioningElement", true, 781, IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcProcedure_type = new entity("IfcProcedure", false, 801, IFC4X3_RC4_IfcProcess_type); - IFC4X3_RC4_IfcProjectOrder_type = new entity("IfcProjectOrder", false, 820, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcProjectionElement_type = new entity("IfcProjectionElement", false, 817, IFC4X3_RC4_IfcFeatureElementAddition_type); - IFC4X3_RC4_IfcProtectiveDeviceType_type = new entity("IfcProtectiveDeviceType", false, 845, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcPumpType_type = new entity("IfcPumpType", false, 849, IFC4X3_RC4_IfcFlowMovingDeviceType_type); - IFC4X3_RC4_IfcRailType_type = new entity("IfcRailType", false, 863, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcRailingType_type = new entity("IfcRailingType", false, 861, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcRailway_type = new entity("IfcRailway", false, 865, IFC4X3_RC4_IfcFacility_type); - IFC4X3_RC4_IfcRampFlightType_type = new entity("IfcRampFlightType", false, 870, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcRampType_type = new entity("IfcRampType", false, 872, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type = new entity("IfcRationalBSplineSurfaceWithKnots", false, 876, IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC4_IfcReferent_type = new entity("IfcReferent", false, 885, IFC4X3_RC4_IfcPositioningElement_type); - IFC4X3_RC4_IfcReinforcingElement_type = new entity("IfcReinforcingElement", true, 898, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcReinforcingElementType_type = new entity("IfcReinforcingElementType", true, 899, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcReinforcingMesh_type = new entity("IfcReinforcingMesh", false, 900, IFC4X3_RC4_IfcReinforcingElement_type); - IFC4X3_RC4_IfcReinforcingMeshType_type = new entity("IfcReinforcingMeshType", false, 901, IFC4X3_RC4_IfcReinforcingElementType_type); - IFC4X3_RC4_IfcRelAdheresToElement_type = new entity("IfcRelAdheresToElement", false, 903, IFC4X3_RC4_IfcRelDecomposes_type); - IFC4X3_RC4_IfcRelAggregates_type = new entity("IfcRelAggregates", false, 904, IFC4X3_RC4_IfcRelDecomposes_type); - IFC4X3_RC4_IfcRoad_type = new entity("IfcRoad", false, 970, IFC4X3_RC4_IfcFacility_type); - IFC4X3_RC4_IfcRoofType_type = new entity("IfcRoofType", false, 975, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcSanitaryTerminalType_type = new entity("IfcSanitaryTerminalType", false, 984, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcSeamCurve_type = new entity("IfcSeamCurve", false, 987, IFC4X3_RC4_IfcSurfaceCurve_type); - IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type = new entity("IfcSecondOrderPolynomialSpiral", false, 988, IFC4X3_RC4_IfcSpiral_type); - IFC4X3_RC4_IfcSegmentedReferenceCurve_type = new entity("IfcSegmentedReferenceCurve", false, 999, IFC4X3_RC4_IfcCompositeCurve_type); - IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type = new entity("IfcSeventhOrderPolynomialSpiral", false, 1005, IFC4X3_RC4_IfcSpiral_type); - IFC4X3_RC4_IfcShadingDeviceType_type = new entity("IfcShadingDeviceType", false, 1007, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcSign_type = new entity("IfcSign", false, 1015, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcSignType_type = new entity("IfcSignType", false, 1019, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcSignalType_type = new entity("IfcSignalType", false, 1017, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcSine_type = new entity("IfcSine", false, 1025, IFC4X3_RC4_IfcSpiral_type); - IFC4X3_RC4_IfcSite_type = new entity("IfcSite", false, 1027, IFC4X3_RC4_IfcSpatialStructureElement_type); - IFC4X3_RC4_IfcSlabType_type = new entity("IfcSlabType", false, 1034, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcSolarDeviceType_type = new entity("IfcSolarDeviceType", false, 1038, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcSolidStratum_type = new entity("IfcSolidStratum", false, 1043, IFC4X3_RC4_IfcGeotechnicalStratum_type); - IFC4X3_RC4_IfcSpace_type = new entity("IfcSpace", false, 1048, IFC4X3_RC4_IfcSpatialStructureElement_type); - IFC4X3_RC4_IfcSpaceHeaterType_type = new entity("IfcSpaceHeaterType", false, 1051, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcSpaceType_type = new entity("IfcSpaceType", false, 1053, IFC4X3_RC4_IfcSpatialStructureElementType_type); - IFC4X3_RC4_IfcStackTerminalType_type = new entity("IfcStackTerminalType", false, 1071, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcStairFlightType_type = new entity("IfcStairFlightType", false, 1075, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcStairType_type = new entity("IfcStairType", false, 1077, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcStructuralAction_type = new entity("IfcStructuralAction", true, 1080, IFC4X3_RC4_IfcStructuralActivity_type); - IFC4X3_RC4_IfcStructuralConnection_type = new entity("IfcStructuralConnection", true, 1084, IFC4X3_RC4_IfcStructuralItem_type); - IFC4X3_RC4_IfcStructuralCurveAction_type = new entity("IfcStructuralCurveAction", false, 1086, IFC4X3_RC4_IfcStructuralAction_type); - IFC4X3_RC4_IfcStructuralCurveConnection_type = new entity("IfcStructuralCurveConnection", false, 1088, IFC4X3_RC4_IfcStructuralConnection_type); - IFC4X3_RC4_IfcStructuralCurveMember_type = new entity("IfcStructuralCurveMember", false, 1089, IFC4X3_RC4_IfcStructuralMember_type); - IFC4X3_RC4_IfcStructuralCurveMemberVarying_type = new entity("IfcStructuralCurveMemberVarying", false, 1091, IFC4X3_RC4_IfcStructuralCurveMember_type); - IFC4X3_RC4_IfcStructuralCurveReaction_type = new entity("IfcStructuralCurveReaction", false, 1092, IFC4X3_RC4_IfcStructuralReaction_type); - IFC4X3_RC4_IfcStructuralLinearAction_type = new entity("IfcStructuralLinearAction", false, 1094, IFC4X3_RC4_IfcStructuralCurveAction_type); - IFC4X3_RC4_IfcStructuralLoadGroup_type = new entity("IfcStructuralLoadGroup", false, 1098, IFC4X3_RC4_IfcGroup_type); - IFC4X3_RC4_IfcStructuralPointAction_type = new entity("IfcStructuralPointAction", false, 1110, IFC4X3_RC4_IfcStructuralAction_type); - IFC4X3_RC4_IfcStructuralPointConnection_type = new entity("IfcStructuralPointConnection", false, 1111, IFC4X3_RC4_IfcStructuralConnection_type); - IFC4X3_RC4_IfcStructuralPointReaction_type = new entity("IfcStructuralPointReaction", false, 1112, IFC4X3_RC4_IfcStructuralReaction_type); - IFC4X3_RC4_IfcStructuralResultGroup_type = new entity("IfcStructuralResultGroup", false, 1114, IFC4X3_RC4_IfcGroup_type); - IFC4X3_RC4_IfcStructuralSurfaceAction_type = new entity("IfcStructuralSurfaceAction", false, 1115, IFC4X3_RC4_IfcStructuralAction_type); - IFC4X3_RC4_IfcStructuralSurfaceConnection_type = new entity("IfcStructuralSurfaceConnection", false, 1117, IFC4X3_RC4_IfcStructuralConnection_type); - IFC4X3_RC4_IfcSubContractResource_type = new entity("IfcSubContractResource", false, 1125, IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcSurfaceFeature_type = new entity("IfcSurfaceFeature", false, 1132, IFC4X3_RC4_IfcFeatureElement_type); - IFC4X3_RC4_IfcSwitchingDeviceType_type = new entity("IfcSwitchingDeviceType", false, 1152, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcSystem_type = new entity("IfcSystem", false, 1154, IFC4X3_RC4_IfcGroup_type); - IFC4X3_RC4_IfcSystemFurnitureElement_type = new entity("IfcSystemFurnitureElement", false, 1155, IFC4X3_RC4_IfcFurnishingElement_type); - IFC4X3_RC4_IfcTankType_type = new entity("IfcTankType", false, 1162, IFC4X3_RC4_IfcFlowStorageDeviceType_type); - IFC4X3_RC4_IfcTendon_type = new entity("IfcTendon", false, 1173, IFC4X3_RC4_IfcReinforcingElement_type); - IFC4X3_RC4_IfcTendonAnchor_type = new entity("IfcTendonAnchor", false, 1174, IFC4X3_RC4_IfcReinforcingElement_type); - IFC4X3_RC4_IfcTendonAnchorType_type = new entity("IfcTendonAnchorType", false, 1175, IFC4X3_RC4_IfcReinforcingElementType_type); - IFC4X3_RC4_IfcTendonConduit_type = new entity("IfcTendonConduit", false, 1177, IFC4X3_RC4_IfcReinforcingElement_type); - IFC4X3_RC4_IfcTendonConduitType_type = new entity("IfcTendonConduitType", false, 1178, IFC4X3_RC4_IfcReinforcingElementType_type); - IFC4X3_RC4_IfcTendonType_type = new entity("IfcTendonType", false, 1180, IFC4X3_RC4_IfcReinforcingElementType_type); - IFC4X3_RC4_IfcTrackElementType_type = new entity("IfcTrackElementType", false, 1222, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcTransformerType_type = new entity("IfcTransformerType", false, 1225, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcTransportElement_type = new entity("IfcTransportElement", false, 1229, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcTrimmedCurve_type = new entity("IfcTrimmedCurve", false, 1237, IFC4X3_RC4_IfcBoundedCurve_type); - IFC4X3_RC4_IfcTubeBundleType_type = new entity("IfcTubeBundleType", false, 1242, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcUnitaryEquipmentType_type = new entity("IfcUnitaryEquipmentType", false, 1253, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcValveType_type = new entity("IfcValveType", false, 1261, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcVibrationDamper_type = new entity("IfcVibrationDamper", false, 1269, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcVibrationDamperType_type = new entity("IfcVibrationDamperType", false, 1270, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcVibrationIsolator_type = new entity("IfcVibrationIsolator", false, 1272, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcVibrationIsolatorType_type = new entity("IfcVibrationIsolatorType", false, 1273, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcVirtualElement_type = new entity("IfcVirtualElement", false, 1275, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcVoidStratum_type = new entity("IfcVoidStratum", false, 1279, IFC4X3_RC4_IfcGeotechnicalStratum_type); - IFC4X3_RC4_IfcVoidingFeature_type = new entity("IfcVoidingFeature", false, 1277, IFC4X3_RC4_IfcFeatureElementSubtraction_type); - IFC4X3_RC4_IfcWallType_type = new entity("IfcWallType", false, 1285, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcWasteTerminalType_type = new entity("IfcWasteTerminalType", false, 1291, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcWaterStratum_type = new entity("IfcWaterStratum", false, 1293, IFC4X3_RC4_IfcGeotechnicalStratum_type); - IFC4X3_RC4_IfcWindowType_type = new entity("IfcWindowType", false, 1303, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcWorkCalendar_type = new entity("IfcWorkCalendar", false, 1306, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcWorkControl_type = new entity("IfcWorkControl", true, 1308, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcWorkPlan_type = new entity("IfcWorkPlan", false, 1309, IFC4X3_RC4_IfcWorkControl_type); - IFC4X3_RC4_IfcWorkSchedule_type = new entity("IfcWorkSchedule", false, 1311, IFC4X3_RC4_IfcWorkControl_type); - IFC4X3_RC4_IfcZone_type = new entity("IfcZone", false, 1314, IFC4X3_RC4_IfcSystem_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcCurveStyleFontAndScaling_type); - items.push_back(IFC4X3_RC4_IfcCurveStyleFontSelect_type); - IFC4X3_RC4_IfcCurveFontOrScaledCurveFontSelect_type = new select_type("IfcCurveFontOrScaledCurveFontSelect", 276, items); - } - { - std::vector items; items.reserve(3); - items.push_back(IFC4X3_RC4_IfcCompositeCurveOnSurface_type); - items.push_back(IFC4X3_RC4_IfcPcurve_type); - items.push_back(IFC4X3_RC4_IfcSurfaceCurve_type); - IFC4X3_RC4_IfcCurveOnSurface_type = new select_type("IfcCurveOnSurface", 279, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcBoundedCurve_type); - items.push_back(IFC4X3_RC4_IfcEdgeCurve_type); - IFC4X3_RC4_IfcCurveOrEdgeCurve_type = new select_type("IfcCurveOrEdgeCurve", 280, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcElement_type); - items.push_back(IFC4X3_RC4_IfcSpatialElement_type); - IFC4X3_RC4_IfcInterferenceSelect_type = new select_type("IfcInterferenceSelect", 559, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcGroup_type); - items.push_back(IFC4X3_RC4_IfcProduct_type); - IFC4X3_RC4_IfcSpatialReferenceSelect_type = new select_type("IfcSpatialReferenceSelect", 1057, items); - } - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcElement_type); - items.push_back(IFC4X3_RC4_IfcStructuralItem_type); - IFC4X3_RC4_IfcStructuralActivityAssignmentSelect_type = new select_type("IfcStructuralActivityAssignmentSelect", 1082, items); - } - IFC4X3_RC4_IfcActionRequest_type = new entity("IfcActionRequest", false, 2, IFC4X3_RC4_IfcControl_type); - IFC4X3_RC4_IfcAirTerminalBoxType_type = new entity("IfcAirTerminalBoxType", false, 19, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcAirTerminalType_type = new entity("IfcAirTerminalType", false, 21, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type = new entity("IfcAirToAirHeatRecoveryType", false, 24, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcAlignmentCant_type = new entity("IfcAlignmentCant", false, 30, IFC4X3_RC4_IfcLinearElement_type); - IFC4X3_RC4_IfcAlignmentHorizontal_type = new entity("IfcAlignmentHorizontal", false, 33, IFC4X3_RC4_IfcLinearElement_type); - IFC4X3_RC4_IfcAlignmentSegment_type = new entity("IfcAlignmentSegment", false, 37, IFC4X3_RC4_IfcLinearElement_type); - IFC4X3_RC4_IfcAlignmentVertical_type = new entity("IfcAlignmentVertical", false, 39, IFC4X3_RC4_IfcLinearElement_type); - IFC4X3_RC4_IfcAsset_type = new entity("IfcAsset", false, 62, IFC4X3_RC4_IfcGroup_type); - IFC4X3_RC4_IfcAudioVisualApplianceType_type = new entity("IfcAudioVisualApplianceType", false, 65, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcBSplineCurve_type = new entity("IfcBSplineCurve", true, 108, IFC4X3_RC4_IfcBoundedCurve_type); - IFC4X3_RC4_IfcBSplineCurveWithKnots_type = new entity("IfcBSplineCurveWithKnots", false, 110, IFC4X3_RC4_IfcBSplineCurve_type); - IFC4X3_RC4_IfcBeamType_type = new entity("IfcBeamType", false, 74, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcBearingType_type = new entity("IfcBearingType", false, 77, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcBoilerType_type = new entity("IfcBoilerType", false, 86, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcBoundaryCurve_type = new entity("IfcBoundaryCurve", false, 95, IFC4X3_RC4_IfcCompositeCurveOnSurface_type); - IFC4X3_RC4_IfcBridge_type = new entity("IfcBridge", false, 105, IFC4X3_RC4_IfcFacility_type); - IFC4X3_RC4_IfcBuilding_type = new entity("IfcBuilding", false, 114, IFC4X3_RC4_IfcFacility_type); - IFC4X3_RC4_IfcBuildingElementPart_type = new entity("IfcBuildingElementPart", false, 115, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcBuildingElementPartType_type = new entity("IfcBuildingElementPartType", false, 116, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcBuildingElementProxyType_type = new entity("IfcBuildingElementProxyType", false, 119, IFC4X3_RC4_IfcBuiltElementType_type); - IFC4X3_RC4_IfcBuildingSystem_type = new entity("IfcBuildingSystem", false, 122, IFC4X3_RC4_IfcSystem_type); - IFC4X3_RC4_IfcBuiltElement_type = new entity("IfcBuiltElement", false, 124, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcBuiltSystem_type = new entity("IfcBuiltSystem", false, 126, IFC4X3_RC4_IfcSystem_type); - IFC4X3_RC4_IfcBurnerType_type = new entity("IfcBurnerType", false, 129, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcCableCarrierFittingType_type = new entity("IfcCableCarrierFittingType", false, 132, IFC4X3_RC4_IfcFlowFittingType_type); - IFC4X3_RC4_IfcCableCarrierSegmentType_type = new entity("IfcCableCarrierSegmentType", false, 135, IFC4X3_RC4_IfcFlowSegmentType_type); - IFC4X3_RC4_IfcCableFittingType_type = new entity("IfcCableFittingType", false, 138, IFC4X3_RC4_IfcFlowFittingType_type); - IFC4X3_RC4_IfcCableSegmentType_type = new entity("IfcCableSegmentType", false, 141, IFC4X3_RC4_IfcFlowSegmentType_type); - IFC4X3_RC4_IfcCaissonFoundationType_type = new entity("IfcCaissonFoundationType", false, 144, IFC4X3_RC4_IfcDeepFoundationType_type); - IFC4X3_RC4_IfcChillerType_type = new entity("IfcChillerType", false, 159, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcChimney_type = new entity("IfcChimney", false, 161, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcCircle_type = new entity("IfcCircle", false, 164, IFC4X3_RC4_IfcConic_type); - IFC4X3_RC4_IfcCivilElement_type = new entity("IfcCivilElement", false, 167, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcCoilType_type = new entity("IfcCoilType", false, 176, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcColumn_type = new entity("IfcColumn", false, 183, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcColumnStandardCase_type = new entity("IfcColumnStandardCase", false, 184, IFC4X3_RC4_IfcColumn_type); - IFC4X3_RC4_IfcCommunicationsApplianceType_type = new entity("IfcCommunicationsApplianceType", false, 188, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcCompressorType_type = new entity("IfcCompressorType", false, 200, IFC4X3_RC4_IfcFlowMovingDeviceType_type); - IFC4X3_RC4_IfcCondenserType_type = new entity("IfcCondenserType", false, 203, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcConstructionEquipmentResource_type = new entity("IfcConstructionEquipmentResource", false, 216, IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcConstructionMaterialResource_type = new entity("IfcConstructionMaterialResource", false, 219, IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcConstructionProductResource_type = new entity("IfcConstructionProductResource", false, 222, IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcConveyorSegmentType_type = new entity("IfcConveyorSegmentType", false, 237, IFC4X3_RC4_IfcFlowSegmentType_type); - IFC4X3_RC4_IfcCooledBeamType_type = new entity("IfcCooledBeamType", false, 240, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcCoolingTowerType_type = new entity("IfcCoolingTowerType", false, 243, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcCourse_type = new entity("IfcCourse", false, 255, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcCovering_type = new entity("IfcCovering", false, 258, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcCurtainWall_type = new entity("IfcCurtainWall", false, 269, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcDamperType_type = new entity("IfcDamperType", false, 289, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcDeepFoundation_type = new entity("IfcDeepFoundation", false, 296, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcDiscreteAccessory_type = new entity("IfcDiscreteAccessory", false, 311, IFC4X3_RC4_IfcElementComponent_type); - IFC4X3_RC4_IfcDiscreteAccessoryType_type = new entity("IfcDiscreteAccessoryType", false, 312, IFC4X3_RC4_IfcElementComponentType_type); - IFC4X3_RC4_IfcDistributionBoardType_type = new entity("IfcDistributionBoardType", false, 315, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcDistributionChamberElementType_type = new entity("IfcDistributionChamberElementType", false, 318, IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcDistributionControlElementType_type = new entity("IfcDistributionControlElementType", true, 322, IFC4X3_RC4_IfcDistributionElementType_type); - IFC4X3_RC4_IfcDistributionElement_type = new entity("IfcDistributionElement", false, 323, IFC4X3_RC4_IfcElement_type); - IFC4X3_RC4_IfcDistributionFlowElement_type = new entity("IfcDistributionFlowElement", false, 325, IFC4X3_RC4_IfcDistributionElement_type); - IFC4X3_RC4_IfcDistributionPort_type = new entity("IfcDistributionPort", false, 327, IFC4X3_RC4_IfcPort_type); - IFC4X3_RC4_IfcDistributionSystem_type = new entity("IfcDistributionSystem", false, 329, IFC4X3_RC4_IfcSystem_type); - IFC4X3_RC4_IfcDoor_type = new entity("IfcDoor", false, 337, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcDoorStandardCase_type = new entity("IfcDoorStandardCase", false, 342, IFC4X3_RC4_IfcDoor_type); - IFC4X3_RC4_IfcDuctFittingType_type = new entity("IfcDuctFittingType", false, 353, IFC4X3_RC4_IfcFlowFittingType_type); - IFC4X3_RC4_IfcDuctSegmentType_type = new entity("IfcDuctSegmentType", false, 356, IFC4X3_RC4_IfcFlowSegmentType_type); - IFC4X3_RC4_IfcDuctSilencerType_type = new entity("IfcDuctSilencerType", false, 359, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC4_IfcEarthworksCut_type = new entity("IfcEarthworksCut", false, 363, IFC4X3_RC4_IfcFeatureElementSubtraction_type); - IFC4X3_RC4_IfcEarthworksElement_type = new entity("IfcEarthworksElement", false, 365, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcEarthworksFill_type = new entity("IfcEarthworksFill", false, 366, IFC4X3_RC4_IfcEarthworksElement_type); - IFC4X3_RC4_IfcElectricApplianceType_type = new entity("IfcElectricApplianceType", false, 372, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcElectricDistributionBoardType_type = new entity("IfcElectricDistributionBoardType", false, 379, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type = new entity("IfcElectricFlowStorageDeviceType", false, 382, IFC4X3_RC4_IfcFlowStorageDeviceType_type); - IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type = new entity("IfcElectricFlowTreatmentDeviceType", false, 385, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC4_IfcElectricGeneratorType_type = new entity("IfcElectricGeneratorType", false, 388, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcElectricMotorType_type = new entity("IfcElectricMotorType", false, 391, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - IFC4X3_RC4_IfcElectricTimeControlType_type = new entity("IfcElectricTimeControlType", false, 395, IFC4X3_RC4_IfcFlowControllerType_type); - IFC4X3_RC4_IfcEnergyConversionDevice_type = new entity("IfcEnergyConversionDevice", false, 410, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcEngine_type = new entity("IfcEngine", false, 413, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcEvaporativeCooler_type = new entity("IfcEvaporativeCooler", false, 416, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcEvaporator_type = new entity("IfcEvaporator", false, 419, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcExternalSpatialElement_type = new entity("IfcExternalSpatialElement", false, 434, IFC4X3_RC4_IfcExternalSpatialStructureElement_type); - IFC4X3_RC4_IfcFanType_type = new entity("IfcFanType", false, 453, IFC4X3_RC4_IfcFlowMovingDeviceType_type); - IFC4X3_RC4_IfcFilterType_type = new entity("IfcFilterType", false, 466, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC4_IfcFireSuppressionTerminalType_type = new entity("IfcFireSuppressionTerminalType", false, 469, IFC4X3_RC4_IfcFlowTerminalType_type); - IFC4X3_RC4_IfcFlowController_type = new entity("IfcFlowController", false, 472, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFlowFitting_type = new entity("IfcFlowFitting", false, 475, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFlowInstrumentType_type = new entity("IfcFlowInstrumentType", false, 478, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcFlowMeter_type = new entity("IfcFlowMeter", false, 480, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcFlowMovingDevice_type = new entity("IfcFlowMovingDevice", false, 483, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFlowSegment_type = new entity("IfcFlowSegment", false, 485, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFlowStorageDevice_type = new entity("IfcFlowStorageDevice", false, 487, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFlowTerminal_type = new entity("IfcFlowTerminal", false, 489, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFlowTreatmentDevice_type = new entity("IfcFlowTreatmentDevice", false, 491, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcFooting_type = new entity("IfcFooting", false, 496, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcGeotechnicalAssembly_type = new entity("IfcGeotechnicalAssembly", true, 518, IFC4X3_RC4_IfcGeotechnicalElement_type); - IFC4X3_RC4_IfcGrid_type = new entity("IfcGrid", false, 524, IFC4X3_RC4_IfcPositioningElement_type); - IFC4X3_RC4_IfcHeatExchanger_type = new entity("IfcHeatExchanger", false, 532, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcHumidifier_type = new entity("IfcHumidifier", false, 537, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcInterceptor_type = new entity("IfcInterceptor", false, 556, IFC4X3_RC4_IfcFlowTreatmentDevice_type); - IFC4X3_RC4_IfcJunctionBox_type = new entity("IfcJunctionBox", false, 569, IFC4X3_RC4_IfcFlowFitting_type); - IFC4X3_RC4_IfcKerb_type = new entity("IfcKerb", false, 572, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcLamp_type = new entity("IfcLamp", false, 581, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcLightFixture_type = new entity("IfcLightFixture", false, 595, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcLinearPositioningElement_type = new entity("IfcLinearPositioningElement", false, 610, IFC4X3_RC4_IfcPositioningElement_type); - IFC4X3_RC4_IfcLiquidTerminal_type = new entity("IfcLiquidTerminal", false, 614, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcMedicalDevice_type = new entity("IfcMedicalDevice", false, 663, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcMember_type = new entity("IfcMember", false, 666, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcMemberStandardCase_type = new entity("IfcMemberStandardCase", false, 667, IFC4X3_RC4_IfcMember_type); - IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type = new entity("IfcMobileTelecommunicationsAppliance", false, 673, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcMooringDevice_type = new entity("IfcMooringDevice", false, 689, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcMotorConnection_type = new entity("IfcMotorConnection", false, 692, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcNavigationElement_type = new entity("IfcNavigationElement", false, 696, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcOuterBoundaryCurve_type = new entity("IfcOuterBoundaryCurve", false, 723, IFC4X3_RC4_IfcBoundaryCurve_type); - IFC4X3_RC4_IfcOutlet_type = new entity("IfcOutlet", false, 724, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcPavement_type = new entity("IfcPavement", false, 731, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcPile_type = new entity("IfcPile", false, 748, IFC4X3_RC4_IfcDeepFoundation_type); - IFC4X3_RC4_IfcPipeFitting_type = new entity("IfcPipeFitting", false, 752, IFC4X3_RC4_IfcFlowFitting_type); - IFC4X3_RC4_IfcPipeSegment_type = new entity("IfcPipeSegment", false, 755, IFC4X3_RC4_IfcFlowSegment_type); - IFC4X3_RC4_IfcPlate_type = new entity("IfcPlate", false, 766, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcPlateStandardCase_type = new entity("IfcPlateStandardCase", false, 767, IFC4X3_RC4_IfcPlate_type); - IFC4X3_RC4_IfcProtectiveDevice_type = new entity("IfcProtectiveDevice", false, 841, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type = new entity("IfcProtectiveDeviceTrippingUnitType", false, 843, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcPump_type = new entity("IfcPump", false, 848, IFC4X3_RC4_IfcFlowMovingDevice_type); - IFC4X3_RC4_IfcRail_type = new entity("IfcRail", false, 859, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcRailing_type = new entity("IfcRailing", false, 860, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcRamp_type = new entity("IfcRamp", false, 868, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcRampFlight_type = new entity("IfcRampFlight", false, 869, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type = new entity("IfcRationalBSplineCurveWithKnots", false, 875, IFC4X3_RC4_IfcBSplineCurveWithKnots_type); - IFC4X3_RC4_IfcReinforcedSoil_type = new entity("IfcReinforcedSoil", false, 889, IFC4X3_RC4_IfcEarthworksElement_type); - IFC4X3_RC4_IfcReinforcingBar_type = new entity("IfcReinforcingBar", false, 893, IFC4X3_RC4_IfcReinforcingElement_type); - IFC4X3_RC4_IfcReinforcingBarType_type = new entity("IfcReinforcingBarType", false, 896, IFC4X3_RC4_IfcReinforcingElementType_type); - IFC4X3_RC4_IfcRoof_type = new entity("IfcRoof", false, 974, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcSanitaryTerminal_type = new entity("IfcSanitaryTerminal", false, 983, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcSensorType_type = new entity("IfcSensorType", false, 1002, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcShadingDevice_type = new entity("IfcShadingDevice", false, 1006, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcSignal_type = new entity("IfcSignal", false, 1016, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcSlab_type = new entity("IfcSlab", false, 1031, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcSlabElementedCase_type = new entity("IfcSlabElementedCase", false, 1032, IFC4X3_RC4_IfcSlab_type); - IFC4X3_RC4_IfcSlabStandardCase_type = new entity("IfcSlabStandardCase", false, 1033, IFC4X3_RC4_IfcSlab_type); - IFC4X3_RC4_IfcSolarDevice_type = new entity("IfcSolarDevice", false, 1037, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcSpaceHeater_type = new entity("IfcSpaceHeater", false, 1050, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcStackTerminal_type = new entity("IfcStackTerminal", false, 1070, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcStair_type = new entity("IfcStair", false, 1073, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcStairFlight_type = new entity("IfcStairFlight", false, 1074, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcStructuralAnalysisModel_type = new entity("IfcStructuralAnalysisModel", false, 1083, IFC4X3_RC4_IfcSystem_type); - IFC4X3_RC4_IfcStructuralLoadCase_type = new entity("IfcStructuralLoadCase", false, 1096, IFC4X3_RC4_IfcStructuralLoadGroup_type); - IFC4X3_RC4_IfcStructuralPlanarAction_type = new entity("IfcStructuralPlanarAction", false, 1109, IFC4X3_RC4_IfcStructuralSurfaceAction_type); - IFC4X3_RC4_IfcSwitchingDevice_type = new entity("IfcSwitchingDevice", false, 1151, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcTank_type = new entity("IfcTank", false, 1161, IFC4X3_RC4_IfcFlowStorageDevice_type); - IFC4X3_RC4_IfcTrackElement_type = new entity("IfcTrackElement", false, 1221, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcTransformer_type = new entity("IfcTransformer", false, 1224, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcTubeBundle_type = new entity("IfcTubeBundle", false, 1241, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcUnitaryControlElementType_type = new entity("IfcUnitaryControlElementType", false, 1250, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcUnitaryEquipment_type = new entity("IfcUnitaryEquipment", false, 1252, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcValve_type = new entity("IfcValve", false, 1260, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcWall_type = new entity("IfcWall", false, 1282, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcWallElementedCase_type = new entity("IfcWallElementedCase", false, 1283, IFC4X3_RC4_IfcWall_type); - IFC4X3_RC4_IfcWallStandardCase_type = new entity("IfcWallStandardCase", false, 1284, IFC4X3_RC4_IfcWall_type); - IFC4X3_RC4_IfcWasteTerminal_type = new entity("IfcWasteTerminal", false, 1290, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcWindow_type = new entity("IfcWindow", false, 1294, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcWindowStandardCase_type = new entity("IfcWindowStandardCase", false, 1299, IFC4X3_RC4_IfcWindow_type); - { - std::vector items; items.reserve(2); - items.push_back(IFC4X3_RC4_IfcExternalSpatialElement_type); - items.push_back(IFC4X3_RC4_IfcSpace_type); - IFC4X3_RC4_IfcSpaceBoundarySelect_type = new select_type("IfcSpaceBoundarySelect", 1049, items); - } - IFC4X3_RC4_IfcActuatorType_type = new entity("IfcActuatorType", false, 10, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcAirTerminal_type = new entity("IfcAirTerminal", false, 17, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcAirTerminalBox_type = new entity("IfcAirTerminalBox", false, 18, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcAirToAirHeatRecovery_type = new entity("IfcAirToAirHeatRecovery", false, 23, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcAlarmType_type = new entity("IfcAlarmType", false, 27, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcAlignment_type = new entity("IfcAlignment", false, 29, IFC4X3_RC4_IfcLinearPositioningElement_type); - IFC4X3_RC4_IfcAudioVisualAppliance_type = new entity("IfcAudioVisualAppliance", false, 64, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcBeam_type = new entity("IfcBeam", false, 72, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcBeamStandardCase_type = new entity("IfcBeamStandardCase", false, 73, IFC4X3_RC4_IfcBeam_type); - IFC4X3_RC4_IfcBearing_type = new entity("IfcBearing", false, 76, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcBoiler_type = new entity("IfcBoiler", false, 85, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcBorehole_type = new entity("IfcBorehole", false, 93, IFC4X3_RC4_IfcGeotechnicalAssembly_type); - IFC4X3_RC4_IfcBuildingElementProxy_type = new entity("IfcBuildingElementProxy", false, 118, IFC4X3_RC4_IfcBuiltElement_type); - IFC4X3_RC4_IfcBurner_type = new entity("IfcBurner", false, 128, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcCableCarrierFitting_type = new entity("IfcCableCarrierFitting", false, 131, IFC4X3_RC4_IfcFlowFitting_type); - IFC4X3_RC4_IfcCableCarrierSegment_type = new entity("IfcCableCarrierSegment", false, 134, IFC4X3_RC4_IfcFlowSegment_type); - IFC4X3_RC4_IfcCableFitting_type = new entity("IfcCableFitting", false, 137, IFC4X3_RC4_IfcFlowFitting_type); - IFC4X3_RC4_IfcCableSegment_type = new entity("IfcCableSegment", false, 140, IFC4X3_RC4_IfcFlowSegment_type); - IFC4X3_RC4_IfcCaissonFoundation_type = new entity("IfcCaissonFoundation", false, 143, IFC4X3_RC4_IfcDeepFoundation_type); - IFC4X3_RC4_IfcChiller_type = new entity("IfcChiller", false, 158, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcCoil_type = new entity("IfcCoil", false, 175, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcCommunicationsAppliance_type = new entity("IfcCommunicationsAppliance", false, 187, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcCompressor_type = new entity("IfcCompressor", false, 199, IFC4X3_RC4_IfcFlowMovingDevice_type); - IFC4X3_RC4_IfcCondenser_type = new entity("IfcCondenser", false, 202, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcControllerType_type = new entity("IfcControllerType", false, 232, IFC4X3_RC4_IfcDistributionControlElementType_type); - IFC4X3_RC4_IfcConveyorSegment_type = new entity("IfcConveyorSegment", false, 236, IFC4X3_RC4_IfcFlowSegment_type); - IFC4X3_RC4_IfcCooledBeam_type = new entity("IfcCooledBeam", false, 239, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcCoolingTower_type = new entity("IfcCoolingTower", false, 242, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcDamper_type = new entity("IfcDamper", false, 288, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcDistributionBoard_type = new entity("IfcDistributionBoard", false, 314, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcDistributionChamberElement_type = new entity("IfcDistributionChamberElement", false, 317, IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcDistributionCircuit_type = new entity("IfcDistributionCircuit", false, 320, IFC4X3_RC4_IfcDistributionSystem_type); - IFC4X3_RC4_IfcDistributionControlElement_type = new entity("IfcDistributionControlElement", false, 321, IFC4X3_RC4_IfcDistributionElement_type); - IFC4X3_RC4_IfcDuctFitting_type = new entity("IfcDuctFitting", false, 352, IFC4X3_RC4_IfcFlowFitting_type); - IFC4X3_RC4_IfcDuctSegment_type = new entity("IfcDuctSegment", false, 355, IFC4X3_RC4_IfcFlowSegment_type); - IFC4X3_RC4_IfcDuctSilencer_type = new entity("IfcDuctSilencer", false, 358, IFC4X3_RC4_IfcFlowTreatmentDevice_type); - IFC4X3_RC4_IfcElectricAppliance_type = new entity("IfcElectricAppliance", false, 371, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcElectricDistributionBoard_type = new entity("IfcElectricDistributionBoard", false, 378, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcElectricFlowStorageDevice_type = new entity("IfcElectricFlowStorageDevice", false, 381, IFC4X3_RC4_IfcFlowStorageDevice_type); - IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type = new entity("IfcElectricFlowTreatmentDevice", false, 384, IFC4X3_RC4_IfcFlowTreatmentDevice_type); - IFC4X3_RC4_IfcElectricGenerator_type = new entity("IfcElectricGenerator", false, 387, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcElectricMotor_type = new entity("IfcElectricMotor", false, 390, IFC4X3_RC4_IfcEnergyConversionDevice_type); - IFC4X3_RC4_IfcElectricTimeControl_type = new entity("IfcElectricTimeControl", false, 394, IFC4X3_RC4_IfcFlowController_type); - IFC4X3_RC4_IfcFan_type = new entity("IfcFan", false, 452, IFC4X3_RC4_IfcFlowMovingDevice_type); - IFC4X3_RC4_IfcFilter_type = new entity("IfcFilter", false, 465, IFC4X3_RC4_IfcFlowTreatmentDevice_type); - IFC4X3_RC4_IfcFireSuppressionTerminal_type = new entity("IfcFireSuppressionTerminal", false, 468, IFC4X3_RC4_IfcFlowTerminal_type); - IFC4X3_RC4_IfcFlowInstrument_type = new entity("IfcFlowInstrument", false, 477, IFC4X3_RC4_IfcDistributionControlElement_type); - IFC4X3_RC4_IfcGeomodel_type = new entity("IfcGeomodel", false, 516, IFC4X3_RC4_IfcGeotechnicalAssembly_type); - IFC4X3_RC4_IfcGeoslice_type = new entity("IfcGeoslice", false, 517, IFC4X3_RC4_IfcGeotechnicalAssembly_type); - IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type = new entity("IfcProtectiveDeviceTrippingUnit", false, 842, IFC4X3_RC4_IfcDistributionControlElement_type); - IFC4X3_RC4_IfcSensor_type = new entity("IfcSensor", false, 1001, IFC4X3_RC4_IfcDistributionControlElement_type); - IFC4X3_RC4_IfcUnitaryControlElement_type = new entity("IfcUnitaryControlElement", false, 1249, IFC4X3_RC4_IfcDistributionControlElement_type); - IFC4X3_RC4_IfcActuator_type = new entity("IfcActuator", false, 9, IFC4X3_RC4_IfcDistributionControlElement_type); - IFC4X3_RC4_IfcAlarm_type = new entity("IfcAlarm", false, 26, IFC4X3_RC4_IfcDistributionControlElement_type); - IFC4X3_RC4_IfcController_type = new entity("IfcController", false, 231, IFC4X3_RC4_IfcDistributionControlElement_type); - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcActionRequestTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcActionRequest_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TheActor", new named_type(IFC4X3_RC4_IfcActorSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Role", new named_type(IFC4X3_RC4_IfcRoleEnum_type), false)); - attributes.push_back(new attribute("UserDefinedRole", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcActorRole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcActuatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcActuator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcActuatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcActuatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC4_IfcAddressTypeEnum_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("UserDefinedPurpose", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcAdvancedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAdvancedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAdvancedFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAirTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAirTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAirTerminalBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAirTerminalBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAirTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAirTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAirToAirHeatRecovery_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAlarmTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlarm_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAlarmTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlarmType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAlignmentTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RailHeadDistance", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentCant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("StartCantLeft", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantLeft", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("StartCantRight", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndCantRight", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentCantSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartPoint", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("StartDirection", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("StartRadiusOfCurvature", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("EndRadiusOfCurvature", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("GravityCenterLineHeight", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentHorizontalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTag", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("EndTag", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentParameterSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DesignParameters", new named_type(IFC4X3_RC4_IfcAlignmentParameterSegment_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentVertical_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("StartDistAlong", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("HorizontalLength", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("StartHeight", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("StartGradient", new named_type(IFC4X3_RC4_IfcRatioMeasure_type), false)); - attributes.push_back(new attribute("EndGradient", new named_type(IFC4X3_RC4_IfcRatioMeasure_type), false)); - attributes.push_back(new attribute("RadiusOfCurvature", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAlignmentVerticalSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAnnotationTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAnnotation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCurve_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAnnotationFillArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ApplicationDeveloper", new named_type(IFC4X3_RC4_IfcOrganization_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationFullName", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("ApplicationIdentifier", new named_type(IFC4X3_RC4_IfcIdentifier_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcApplication_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(10); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("AppliedValue", new named_type(IFC4X3_RC4_IfcAppliedValueSelect_type), true)); - attributes.push_back(new attribute("UnitBasis", new named_type(IFC4X3_RC4_IfcMeasureWithUnit_type), true)); - attributes.push_back(new attribute("ApplicableDate", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("FixedUntilDate", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Condition", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ArithmeticOperator", new named_type(IFC4X3_RC4_IfcArithmeticOperatorEnum_type), true)); - attributes.push_back(new attribute("Components", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAppliedValue_type)), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAppliedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("TimeOfApproval", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Level", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Qualifier", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("RequestingApproval", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("GivingApproval", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC4_IfcApproval_type), false)); - attributes.push_back(new attribute("RelatedApprovals", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcApproval_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OuterCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcArbitraryClosedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Curve", new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcArbitraryOpenProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCurves", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCurve_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("TotalReplacementCost", new named_type(IFC4X3_RC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("Owner", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("User", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePerson", new named_type(IFC4X3_RC4_IfcPerson_type), true)); - attributes.push_back(new attribute("IncorporationDate", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("DepreciatedValue", new named_type(IFC4X3_RC4_IfcCostValue_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAsset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("BottomFlangeWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomFlangeFilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopFlangeThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeFilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeEdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("BottomFlangeSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeEdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TopFlangeSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(15); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAudioVisualAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAudioVisualApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAxis1Placement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAxis2Placement2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAxis2Placement3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcAxis2PlacementLinear_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Degree", new named_type(IFC4X3_RC4_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type)), false)); - attributes.push_back(new attribute("CurveForm", new named_type(IFC4X3_RC4_IfcBSplineCurveForm_type), false)); - attributes.push_back(new attribute("ClosedCurve", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBSplineCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("KnotMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("Knots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC4_IfcKnotType_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("UDegree", new named_type(IFC4X3_RC4_IfcInteger_type), false)); - attributes.push_back(new attribute("VDegree", new named_type(IFC4X3_RC4_IfcInteger_type), false)); - attributes.push_back(new attribute("ControlPointsList", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type))), false)); - attributes.push_back(new attribute("SurfaceForm", new named_type(IFC4X3_RC4_IfcBSplineSurfaceForm_type), false)); - attributes.push_back(new attribute("UClosed", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("VClosed", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBSplineSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("UMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("VMultiplicities", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("UKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("VKnots", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false)); - attributes.push_back(new attribute("KnotSpec", new named_type(IFC4X3_RC4_IfcKnotType_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBeamStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBearingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBearing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBearingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBearingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RasterFormat", new named_type(IFC4X3_RC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("RasterCode", new named_type(IFC4X3_RC4_IfcBinary_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBlobTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBlock_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBoilerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoiler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBoilerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoilerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBooleanClippingResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC4_IfcBooleanOperator_type), false)); - attributes.push_back(new attribute("FirstOperand", new named_type(IFC4X3_RC4_IfcBooleanOperand_type), false)); - attributes.push_back(new attribute("SecondOperand", new named_type(IFC4X3_RC4_IfcBooleanOperand_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBooleanResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBorehole_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcBoundaryCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessByLengthX", new named_type(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthY", new named_type(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByLengthZ", new named_type(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthX", new named_type(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthY", new named_type(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessByLengthZ", new named_type(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoundaryEdgeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TranslationalStiffnessByAreaX", new named_type(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaY", new named_type(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessByAreaZ", new named_type(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoundaryFaceCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TranslationalStiffnessX", new named_type(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessY", new named_type(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("TranslationalStiffnessZ", new named_type(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessX", new named_type(IFC4X3_RC4_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessY", new named_type(IFC4X3_RC4_IfcRotationalStiffnessSelect_type), true)); - attributes.push_back(new attribute("RotationalStiffnessZ", new named_type(IFC4X3_RC4_IfcRotationalStiffnessSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoundaryNodeCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingStiffness", new named_type(IFC4X3_RC4_IfcWarpingStiffnessSelect_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcBoundedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Corner", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ZDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoundingBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Enclosure", new named_type(IFC4X3_RC4_IfcBoundingBox_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBoxedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBridgeTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBridge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ElevationOfRefHeight", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ElevationOfTerrain", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BuildingAddress", new named_type(IFC4X3_RC4_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuilding_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuildingElementPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuildingElementPartType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuildingElementProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuildingElementProxyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elevation", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuildingStorey_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBuildingSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuildingSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuiltElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuiltElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBuiltSystemTypeEnum_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBuiltSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBurnerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBurner_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcBurnerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcBurnerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Girth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InternalFilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableCarrierFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableCarrierFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableCarrierSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableCarrierSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCableSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCableSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCaissonFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCaissonFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcCartesianPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcCartesianPointList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianPointList2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CoordList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type))), false)); - attributes.push_back(new attribute("TagList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianPointList3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Axis1", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - attributes.push_back(new attribute("Axis2", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - attributes.push_back(new attribute("LocalOrigin", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC4_IfcReal_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianTransformationOperator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianTransformationOperator2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC4_IfcReal_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis3", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianTransformationOperator3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Scale2", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("Scale3", new named_type(IFC4X3_RC4_IfcReal_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCenterLineProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcChillerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcChiller_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcChillerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcChillerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcChimneyTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcChimney_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcChimneyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcChimneyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCircle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCircleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCircleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCivilElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCivilElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Source", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Edition", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("EditionDate", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("ReferenceTokens", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ReferencedSource", new named_type(IFC4X3_RC4_IfcClassificationReferenceSelect_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Sort", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcClassificationReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcClosedShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ClothoidConstant", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcClothoid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCoilTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoilType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Red", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Green", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), false)); - attributes.push_back(new attribute("Blue", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcColourRgb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ColourList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcColourRgbList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcColourSpecification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcColumnTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcColumnStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcColumnTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcColumnType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProperty_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcComplexProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertyTemplate_type)), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcComplexPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSegment_type)), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCompositeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCompositeCurveOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Profiles", new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCompositeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCompressorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCompressor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCompressorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCompressorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCondenserTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCondenser_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCondenserTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCondenserType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcConic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CfsFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcFace_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcConnectedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CurveOnRelatingElement", new named_type(IFC4X3_RC4_IfcCurveOrEdgeCurve_type), false)); - attributes.push_back(new attribute("CurveOnRelatedElement", new named_type(IFC4X3_RC4_IfcCurveOrEdgeCurve_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConnectionCurveGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcConnectionGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("EccentricityInX", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInY", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("EccentricityInZ", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConnectionPointEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PointOnRelatingElement", new named_type(IFC4X3_RC4_IfcPointOrVertexPoint_type), false)); - attributes.push_back(new attribute("PointOnRelatedElement", new named_type(IFC4X3_RC4_IfcPointOrVertexPoint_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConnectionPointGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceOnRelatingElement", new named_type(IFC4X3_RC4_IfcSurfaceOrFaceSurface_type), false)); - attributes.push_back(new attribute("SurfaceOnRelatedElement", new named_type(IFC4X3_RC4_IfcSurfaceOrFaceSurface_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConnectionSurfaceGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeOnRelatingElement", new named_type(IFC4X3_RC4_IfcSolidOrShell_type), false)); - attributes.push_back(new attribute("VolumeOnRelatedElement", new named_type(IFC4X3_RC4_IfcSolidOrShell_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConnectionVolumeGeometry_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("ConstraintGrade", new named_type(IFC4X3_RC4_IfcConstraintEnum_type), false)); - attributes.push_back(new attribute("ConstraintSource", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("CreatingActor", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("UserDefinedGrade", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionEquipmentResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionEquipmentResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionMaterialResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionMaterialResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionProductResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionProductResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC4_IfcResourceTime_type), true)); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCosts", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAppliedValue_type)), true)); - attributes.push_back(new attribute("BaseQuantity", new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConstructionResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Phase", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationContexts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentationContext_type)), true)); - attributes.push_back(new attribute("UnitsInContext", new named_type(IFC4X3_RC4_IfcUnitAssignment_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcContextDependentUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcControllerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcControllerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("ConversionFactor", new named_type(IFC4X3_RC4_IfcMeasureWithUnit_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConversionBasedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConversionOffset", new named_type(IFC4X3_RC4_IfcReal_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConveyorSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcConveyorSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCooledBeamTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCooledBeam_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCooledBeamTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCooledBeamType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCoolingTowerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoolingTower_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCoolingTowerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoolingTowerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SourceCRS", new named_type(IFC4X3_RC4_IfcCoordinateReferenceSystemSelect_type), false)); - attributes.push_back(new attribute("TargetCRS", new named_type(IFC4X3_RC4_IfcCoordinateReferenceSystem_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoordinateOperation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("GeodeticDatum", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("VerticalDatum", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoordinateReferenceSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CosineTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCosine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCostItemTypeEnum_type), true)); - attributes.push_back(new attribute("CostValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcCostValue_type)), true)); - attributes.push_back(new attribute("CostQuantities", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCostItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCostScheduleTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("SubmittedOn", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("UpdateDate", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCostSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCostValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCourseTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCourse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCourseTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCourseType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCoveringTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCovering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCoveringTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCoveringType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCrewResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCrewResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCrewResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCrewResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcCsgPrimitive3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TreeRootExpression", new named_type(IFC4X3_RC4_IfcCsgSelect_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcCsgSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingMonetaryUnit", new named_type(IFC4X3_RC4_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("RelatedMonetaryUnit", new named_type(IFC4X3_RC4_IfcMonetaryUnit_type), false)); - attributes.push_back(new attribute("ExchangeRate", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), false)); - attributes.push_back(new attribute("RateDateTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("RateSource", new named_type(IFC4X3_RC4_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurrencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCurtainWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurtainWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcCurtainWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurtainWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC4_IfcPlane_type), false)); - attributes.push_back(new attribute("OuterBoundary", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("InnerBoundaries", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC4_IfcCurve_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveBoundedPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - attributes.push_back(new attribute("Boundaries", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcBoundaryCurve_type)), false)); - attributes.push_back(new attribute("ImplicitOuter", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveBoundedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC4_IfcPlacement_type), false)); - attributes.push_back(new attribute("SegmentStart", new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("SegmentLength", new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("ParentCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC4_IfcCurveFontOrScaledCurveFontSelect_type), true)); - attributes.push_back(new attribute("CurveWidth", new named_type(IFC4X3_RC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("CurveColour", new named_type(IFC4X3_RC4_IfcColour_type), true)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("PatternList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcCurveStyleFontPattern_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveStyleFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("CurveFont", new named_type(IFC4X3_RC4_IfcCurveStyleFontSelect_type), false)); - attributes.push_back(new attribute("CurveFontScaling", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveStyleFontAndScaling_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VisibleSegmentLength", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("InvisibleSegmentLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCurveStyleFontPattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcCylindricalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDamperTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDeepFoundation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDeepFoundationType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ParentProfile", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Operator", new named_type(IFC4X3_RC4_IfcCartesianTransformationOperator2D_type), false)); - attributes.push_back(new attribute("Label", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDerivedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDerivedUnitElement_type)), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC4_IfcDerivedUnitEnum_type), false)); - attributes.push_back(new attribute("UserDefinedType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDerivedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcNamedUnit_type), false)); - attributes.push_back(new attribute("Exponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDerivedUnitElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("LengthExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("MassExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("TimeExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ElectricCurrentExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("ThermodynamicTemperatureExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("AmountOfSubstanceExponent", new simple_type(simple_type::integer_type), false)); - attributes.push_back(new attribute("LuminousIntensityExponent", new simple_type(simple_type::integer_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDimensionalExponents_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DirectionRatios", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcReal_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcDirection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDiscreteAccessory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDiscreteAccessoryType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionChamberElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionChamberElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionCircuit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionFlowElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionFlowElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("FlowDirection", new named_type(IFC4X3_RC4_IfcFlowDirectionEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDistributionPortTypeEnum_type), true)); - attributes.push_back(new attribute("SystemType", new named_type(IFC4X3_RC4_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDistributionSystemEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDistributionSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("IntendedUse", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Scope", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Revision", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("DocumentOwner", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("Editors", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorSelect_type)), true)); - attributes.push_back(new attribute("CreationTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LastRevisionTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ElectronicFormat", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ValidFrom", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("ValidUntil", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("Confidentiality", new named_type(IFC4X3_RC4_IfcDocumentConfidentialityEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcDocumentStatusEnum_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDocumentInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC4_IfcDocumentInformation_type), false)); - attributes.push_back(new attribute("RelatedDocuments", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDocumentInformation_type)), false)); - attributes.push_back(new attribute("RelationshipType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDocumentInformationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("ReferencedDocument", new named_type(IFC4X3_RC4_IfcDocumentInformation_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDocumentReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDoorTypeEnum_type), true)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC4_IfcDoorTypeOperationEnum_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDoor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(13); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomOffset", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ThresholdOffset", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CasingDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC4_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDoorLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PanelDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PanelOperation", new named_type(IFC4X3_RC4_IfcDoorPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelWidth", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC4_IfcDoorPanelPositionEnum_type), false)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC4_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDoorPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDoorStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC4_IfcDoorStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC4_IfcDoorStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDoorStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDoorTypeEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC4_IfcDoorTypeOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedOperationType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDoorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcDraughtingPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDuctFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDuctFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDuctFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDuctFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDuctSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDuctSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDuctSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDuctSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDuctSilencerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDuctSilencer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcDuctSilencerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcDuctSilencerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEarthworksCutTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEarthworksCut_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEarthworksElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEarthworksFillTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEarthworksFill_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeStart", new named_type(IFC4X3_RC4_IfcVertex_type), false)); - attributes.push_back(new attribute("EdgeEnd", new named_type(IFC4X3_RC4_IfcVertex_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeGeometry", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEdgeCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcEdgeLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricDistributionBoard_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricDistributionBoardType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricGeneratorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricMotorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricMotor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricMotorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricMotorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricTimeControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElectricTimeControlType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC4_IfcAssemblyPlaceEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElementAssemblyTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElementAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcElementAssemblyTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElementAssemblyType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElementComponent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElementComponentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MethodOfMeasurement", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Quantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElementQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcElementarySurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEllipse_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SemiAxis1", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("SemiAxis2", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEllipseProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEnergyConversionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEnergyConversionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEngineTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEngine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEngineTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEngineType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEvaporativeCooler_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEvaporativeCoolerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEvaporatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEvaporator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEvaporatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEvaporatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEventTypeEnum_type), true)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC4_IfcEventTriggerTypeEnum_type), true)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("EventOccurenceTime", new named_type(IFC4X3_RC4_IfcEventTime_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEvent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ActualDate", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyDate", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateDate", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleDate", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEventTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcEventTypeEnum_type), false)); - attributes.push_back(new attribute("EventTriggerType", new named_type(IFC4X3_RC4_IfcEventTriggerTypeEnum_type), false)); - attributes.push_back(new attribute("UserDefinedEventTriggerType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcEventType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Properties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProperty_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExtendedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcExternalInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternalReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingReference", new named_type(IFC4X3_RC4_IfcExternalReference_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternalReferenceRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternalSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternalSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExternallyDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExtrudedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Bounds", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcFaceBound_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FbsmFaces", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcConnectedFaceSet_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcFaceBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Bound", new named_type(IFC4X3_RC4_IfcLoop_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFaceBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFaceOuterBound_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FaceSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFaceSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcFacetedBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Voids", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcClosedShell_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFacetedBrepWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFacilityPartTypeSelect_type), false)); - attributes.push_back(new attribute("UsageType", new named_type(IFC4X3_RC4_IfcFacilityUsageEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFacilityPart_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TensionFailureX", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureY", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("TensionFailureZ", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureX", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureY", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("CompressionFailureZ", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFailureConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFanTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFanTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFanType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFastenerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFeatureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFeatureElementAddition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFeatureElementSubtraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("FillStyles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcFillStyleSelect_type)), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFillAreaStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("HatchLineAppearance", new named_type(IFC4X3_RC4_IfcCurveStyle_type), false)); - attributes.push_back(new attribute("StartOfNextHatchLine", new named_type(IFC4X3_RC4_IfcHatchLineDistanceSelect_type), false)); - attributes.push_back(new attribute("PointOfReferenceHatchLine", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("PatternStart", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), true)); - attributes.push_back(new attribute("HatchLineAngle", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFillAreaStyleHatching_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TilingPattern", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcVector_type)), false)); - attributes.push_back(new attribute("Tiles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcStyledItem_type)), false)); - attributes.push_back(new attribute("TilingScale", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFillAreaStyleTiles_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFilterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFilter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFilterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFilterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFireSuppressionTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFireSuppressionTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FixedReference", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowController_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowControllerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowInstrument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowInstrumentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFlowMeterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowMeter_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFlowMeterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowMeterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowMovingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowMovingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowStorageDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowStorageDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowTreatmentDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFlowTreatmentDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFootingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFooting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFootingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFootingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFurnishingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFurnishingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFurniture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AssemblyPlace", new named_type(IFC4X3_RC4_IfcAssemblyPlaceEnum_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcFurnitureTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcFurnitureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcGeographicElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeographicElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcGeographicElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeographicElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcGeometricCurveSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CoordinateSpaceDimension", new named_type(IFC4X3_RC4_IfcDimensionCount_type), false)); - attributes.push_back(new attribute("Precision", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("WorldCoordinateSystem", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("TrueNorth", new named_type(IFC4X3_RC4_IfcDirection_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeometricRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcGeometricRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ParentContext", new named_type(IFC4X3_RC4_IfcGeometricRepresentationContext_type), false)); - attributes.push_back(new attribute("TargetScale", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("TargetView", new named_type(IFC4X3_RC4_IfcGeometricProjectionEnum_type), false)); - attributes.push_back(new attribute("UserDefinedTargetView", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeometricRepresentationSubContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Elements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcGeometricSetSelect_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcGeometricSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeomodel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeoslice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeotechnicalAssembly_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeotechnicalElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGeotechnicalStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_RC4_IfcPlacement_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGradientCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("VAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("WAxes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcGridAxis_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcGridTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGrid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("AxisTag", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("AxisCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("SameSense", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGridAxis_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PlacementLocation", new named_type(IFC4X3_RC4_IfcVirtualGridIntersection_type), false)); - attributes.push_back(new attribute("PlacementRefDirection", new named_type(IFC4X3_RC4_IfcGridPlacementDirectionSelect_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGridPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - attributes.push_back(new attribute("AgreementFlag", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcHalfSpaceSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcHeatExchangerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcHeatExchanger_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcHeatExchangerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcHeatExchangerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcHumidifierTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcHumidifier_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcHumidifierTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcHumidifierType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("OverallDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("URLReference", new named_type(IFC4X3_RC4_IfcURIReference_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcImageTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcImpactProtectionDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcImpactProtectionDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC4_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("Opacity", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Colours", new named_type(IFC4X3_RC4_IfcColourRgbList_type), false)); - attributes.push_back(new attribute("ColourIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIndexedColourMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Points", new named_type(IFC4X3_RC4_IfcCartesianPointList_type), false)); - attributes.push_back(new attribute("Segments", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSegmentIndexSelect_type)), true)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIndexedPolyCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcIndexedPolygonalFace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("InnerCoordIndices", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC4_IfcTessellatedFaceSet_type), false)); - attributes.push_back(new attribute("TexCoords", new named_type(IFC4X3_RC4_IfcTextureVertexList_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIndexedTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIndexedTriangleTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcInterceptorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcInterceptor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcInterceptorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcInterceptorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIntersectionCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcInventoryTypeEnum_type), true)); - attributes.push_back(new attribute("Jurisdiction", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("ResponsiblePersons", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPerson_type)), true)); - attributes.push_back(new attribute("LastUpdateDate", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("CurrentValue", new named_type(IFC4X3_RC4_IfcCostValue_type), true)); - attributes.push_back(new attribute("OriginalValue", new named_type(IFC4X3_RC4_IfcCostValue_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcInventory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIrregularTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIrregularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStamp", new named_type(IFC4X3_RC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcIrregularTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcJunctionBoxTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcJunctionBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcJunctionBoxTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcJunctionBoxType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcKerb_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Mountable", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcKerbType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("LegSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLaborResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLaborResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLaborResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLaborResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LagValue", new named_type(IFC4X3_RC4_IfcTimeOrRatioSelect_type), false)); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC4_IfcTaskDurationEnum_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLagTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Version", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Publisher", new named_type(IFC4X3_RC4_IfcActorSelect_type), true)); - attributes.push_back(new attribute("VersionDate", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLibraryInformation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Language", new named_type(IFC4X3_RC4_IfcLanguageId_type), true)); - attributes.push_back(new attribute("ReferencedLibrary", new named_type(IFC4X3_RC4_IfcLibraryInformation_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLibraryReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MainPlaneAngle", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("SecondaryPlaneAngle", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("LuminousIntensity", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightDistributionData_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLightFixtureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightFixture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLightFixtureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightFixtureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LightDistributionCurve", new named_type(IFC4X3_RC4_IfcLightDistributionCurveEnum_type), false)); - attributes.push_back(new attribute("DistributionData", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLightDistributionData_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightIntensityDistribution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LightColour", new named_type(IFC4X3_RC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("AmbientIntensity", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Intensity", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightSource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightSourceAmbient_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightSourceDirectional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("ColourAppearance", new named_type(IFC4X3_RC4_IfcColourRgb_type), true)); - attributes.push_back(new attribute("ColourTemperature", new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), false)); - attributes.push_back(new attribute("LuminousFlux", new named_type(IFC4X3_RC4_IfcLuminousFluxMeasure_type), false)); - attributes.push_back(new attribute("LightEmissionSource", new named_type(IFC4X3_RC4_IfcLightEmissionSourceEnum_type), false)); - attributes.push_back(new attribute("LightDistributionDataSource", new named_type(IFC4X3_RC4_IfcLightDistributionDataSourceSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightSourceGoniometric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("ConstantAttenuation", new named_type(IFC4X3_RC4_IfcReal_type), false)); - attributes.push_back(new attribute("DistanceAttenuation", new named_type(IFC4X3_RC4_IfcReal_type), false)); - attributes.push_back(new attribute("QuadricAttenuation", new named_type(IFC4X3_RC4_IfcReal_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightSourcePositional_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - attributes.push_back(new attribute("ConcentrationExponent", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("SpreadAngle", new named_type(IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type), false)); - attributes.push_back(new attribute("BeamWidthAngle", new named_type(IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLightSourceSpot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Pnt", new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false)); - attributes.push_back(new attribute("Dir", new named_type(IFC4X3_RC4_IfcVector_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLinearElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC4_IfcAxis2PlacementLinear_type), false)); - attributes.push_back(new attribute("CartesianPosition", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLinearPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLinearPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLiquidTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLiquidTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelativePlacement", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcLocalPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Outer", new named_type(IFC4X3_RC4_IfcClosedShell_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcManifoldSolidBrep_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Eastings", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Northings", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("OrthogonalHeight", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("XAxisAbscissa", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("XAxisOrdinate", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("Scale", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("ScaleY", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("ScaleZ", new named_type(IFC4X3_RC4_IfcReal_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMapConversion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingSource", new named_type(IFC4X3_RC4_IfcRepresentationMap_type), false)); - attributes.push_back(new attribute("MappingTarget", new named_type(IFC4X3_RC4_IfcCartesianTransformationOperator_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMappedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMarineFacilityTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMarineFacility_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MaterialClassifications", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcClassificationSelect_type)), false)); - attributes.push_back(new attribute("ClassifiedMaterial", new named_type(IFC4X3_RC4_IfcMaterial_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialClassificationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC4_IfcMaterial_type), false)); - attributes.push_back(new attribute("Fraction", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialConstituent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("MaterialConstituents", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterialConstituent_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialConstituentSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcMaterialDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RepresentedMaterial", new named_type(IFC4X3_RC4_IfcMaterial_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC4_IfcMaterial_type), true)); - attributes.push_back(new attribute("LayerThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false)); - attributes.push_back(new attribute("IsVentilated", new named_type(IFC4X3_RC4_IfcLogical_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialLayer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MaterialLayers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterialLayer_type)), false)); - attributes.push_back(new attribute("LayerSetName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialLayerSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ForLayerSet", new named_type(IFC4X3_RC4_IfcMaterialLayerSet_type), false)); - attributes.push_back(new attribute("LayerSetDirection", new named_type(IFC4X3_RC4_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("DirectionSense", new named_type(IFC4X3_RC4_IfcDirectionSenseEnum_type), false)); - attributes.push_back(new attribute("OffsetFromReferenceLine", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialLayerSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetDirection", new named_type(IFC4X3_RC4_IfcLayerSetDirectionEnum_type), false)); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialLayerWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Materials", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterial_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcMaterialList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC4_IfcMaterial_type), true)); - attributes.push_back(new attribute("Profile", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("Category", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialProfile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("MaterialProfiles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterialProfile_type)), false)); - attributes.push_back(new attribute("CompositeProfile", new named_type(IFC4X3_RC4_IfcCompositeProfileDef_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialProfileSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ForProfileSet", new named_type(IFC4X3_RC4_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalPoint", new named_type(IFC4X3_RC4_IfcCardinalPointReference_type), true)); - attributes.push_back(new attribute("ReferenceExtent", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialProfileSetUsage_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ForProfileEndSet", new named_type(IFC4X3_RC4_IfcMaterialProfileSet_type), false)); - attributes.push_back(new attribute("CardinalEndPoint", new named_type(IFC4X3_RC4_IfcCardinalPointReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialProfileWithOffsets_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Material", new named_type(IFC4X3_RC4_IfcMaterialDefinition_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC4_IfcMaterial_type), false)); - attributes.push_back(new attribute("RelatedMaterials", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterial_type)), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMaterialRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcMaterialUsageDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ValueComponent", new named_type(IFC4X3_RC4_IfcValue_type), false)); - attributes.push_back(new attribute("UnitComponent", new named_type(IFC4X3_RC4_IfcUnit_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMeasureWithUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMechanicalFastener_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMechanicalFastenerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMedicalDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMedicalDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMemberTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMemberStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMemberTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMemberType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Benchmark", new named_type(IFC4X3_RC4_IfcBenchmarkEnum_type), false)); - attributes.push_back(new attribute("ValueSource", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("DataValue", new named_type(IFC4X3_RC4_IfcMetricValueSelect_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC4_IfcReference_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMetric_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(true); derived.push_back(false); - IFC4X3_RC4_IfcMirroredProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Currency", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcMonetaryUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMooringDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMooringDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMooringDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMooringDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMotorConnectionTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMotorConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcMotorConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcMotorConnectionType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Dimensions", new named_type(IFC4X3_RC4_IfcDimensionalExponents_type), false)); - attributes.push_back(new attribute("UnitType", new named_type(IFC4X3_RC4_IfcUnitEnum_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcNamedUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcNavigationElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcNavigationElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcNavigationElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcNavigationElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ObjectType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcObjectDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PlacementRelTo", new named_type(IFC4X3_RC4_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcObjectPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BenchmarkValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcConstraint_type)), true)); - attributes.push_back(new attribute("LogicalAggregator", new named_type(IFC4X3_RC4_IfcLogicalOperatorEnum_type), true)); - attributes.push_back(new attribute("ObjectiveQualifier", new named_type(IFC4X3_RC4_IfcObjectiveEnum_type), false)); - attributes.push_back(new attribute("UserDefinedQualifier", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcObjective_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcOccupantTypeEnum_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOccupant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcOffsetCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOffsetCurve2D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Distance", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SelfIntersect", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("RefDirection", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOffsetCurve3D_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("OffsetValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOffsetCurveByDistances_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HorizontalWidths", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Widths", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type)), false)); - attributes.push_back(new attribute("Slopes", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type)), false)); - attributes.push_back(new attribute("Tags", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOpenCrossProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcOpenShell_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcOpeningElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOpeningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOpeningStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAddress_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOrganization", new named_type(IFC4X3_RC4_IfcOrganization_type), false)); - attributes.push_back(new attribute("RelatedOrganizations", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcOrganization_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOrganizationRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EdgeElement", new named_type(IFC4X3_RC4_IfcEdge_type), false)); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(true); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOrientedEdge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOuterBoundaryCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcOutletTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOutlet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcOutletTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOutletType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("OwningUser", new named_type(IFC4X3_RC4_IfcPersonAndOrganization_type), false)); - attributes.push_back(new attribute("OwningApplication", new named_type(IFC4X3_RC4_IfcApplication_type), false)); - attributes.push_back(new attribute("State", new named_type(IFC4X3_RC4_IfcStateEnum_type), true)); - attributes.push_back(new attribute("ChangeAction", new named_type(IFC4X3_RC4_IfcChangeActionEnum_type), true)); - attributes.push_back(new attribute("LastModifiedDate", new named_type(IFC4X3_RC4_IfcTimeStamp_type), true)); - attributes.push_back(new attribute("LastModifyingUser", new named_type(IFC4X3_RC4_IfcPersonAndOrganization_type), true)); - attributes.push_back(new attribute("LastModifyingApplication", new named_type(IFC4X3_RC4_IfcApplication_type), true)); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC4_IfcTimeStamp_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcOwnerHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement2D_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcParameterizedProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EdgeList", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcOrientedEdge_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPath_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPavementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPavement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPavementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPavementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - attributes.push_back(new attribute("ReferenceCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPcurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LifeCyclePhase", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPerformanceHistory_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC4_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC4_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPermeableCoveringProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPermitTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPermit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("FamilyName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("GivenName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("MiddleNames", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("PrefixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("SuffixTitles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorRole_type)), true)); - attributes.push_back(new attribute("Addresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAddress_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPerson_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ThePerson", new named_type(IFC4X3_RC4_IfcPerson_type), false)); - attributes.push_back(new attribute("TheOrganization", new named_type(IFC4X3_RC4_IfcOrganization_type), false)); - attributes.push_back(new attribute("Roles", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorRole_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPersonAndOrganization_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("HasQuantities", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type)), false)); - attributes.push_back(new attribute("Discrimination", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Quality", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Usage", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPhysicalComplexQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPhysicalQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPhysicalSimpleQuantity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPileTypeEnum_type), true)); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC4_IfcPileConstructionEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPile_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPileTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPileType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPipeFittingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPipeFitting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPipeFittingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPipeFittingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPipeSegmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPipeSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPipeSegmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPipeSegmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Width", new named_type(IFC4X3_RC4_IfcInteger_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC4_IfcInteger_type), false)); - attributes.push_back(new attribute("ColourComponents", new named_type(IFC4X3_RC4_IfcInteger_type), false)); - attributes.push_back(new attribute("Pixel", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcBinary_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPixelTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Location", new named_type(IFC4X3_RC4_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPlacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPlanarBox_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SizeInX", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SizeInY", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPlanarExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPlane_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPlant_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPlateTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPlate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPlateStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPlateTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPlateType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("DistanceAlong", new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), false)); - attributes.push_back(new attribute("OffsetLateral", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetVertical", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("OffsetLongitudinal", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPointByDistanceExpression_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("PointParameter", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPointOnCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - attributes.push_back(new attribute("PointParameterU", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("PointParameterV", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPointOnSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Polygon", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPolyLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false)); - attributes.push_back(new attribute("PolygonalBoundary", new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("Faces", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIndexedPolygonalFace_type)), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPolygonalFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Points", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPolyline_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcPlacement_type), false)); - attributes.push_back(new attribute("CoefficientsX", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true)); - attributes.push_back(new attribute("CoefficientsY", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true)); - attributes.push_back(new attribute("CoefficientsZ", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPolynomialCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPort_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPositioningElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("InternalLocation", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("AddressLines", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("PostalBox", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Town", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Region", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("PostalCode", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Country", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPostalAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPreDefinedColour_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPreDefinedCurveFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPreDefinedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcPreDefinedProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPreDefinedPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPreDefinedTextFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcPresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("AssignedItems", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcLayeredItem_type)), false)); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPresentationLayerAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("LayerOn", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerFrozen", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerBlocked", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("LayerStyles", new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC4_IfcPresentationStyle_type)), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPresentationLayerWithStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcPresentationStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProcedureTypeEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProcedure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProcedureTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProcedureType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ObjectPlacement", new named_type(IFC4X3_RC4_IfcObjectPlacement_type), true)); - attributes.push_back(new attribute("Representation", new named_type(IFC4X3_RC4_IfcProductRepresentation_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProductDefinitionShape_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Representations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentation_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProductRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProfileType", new named_type(IFC4X3_RC4_IfcProfileTypeEnum_type), false)); - attributes.push_back(new attribute("ProfileName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ProfileDefinition", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProfileProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProjectLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProjectOrderTypeEnum_type), true)); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProjectOrder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("MapProjection", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapZone", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("MapUnit", new named_type(IFC4X3_RC4_IfcNamedUnit_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProjectedCRS_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProjectionElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProjectionElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcIdentifier_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcPropertyAbstraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("UpperBoundValue", new named_type(IFC4X3_RC4_IfcValue_type), true)); - attributes.push_back(new attribute("LowerBoundValue", new named_type(IFC4X3_RC4_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - attributes.push_back(new attribute("SetPointValue", new named_type(IFC4X3_RC4_IfcValue_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyBoundedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DependingProperty", new named_type(IFC4X3_RC4_IfcProperty_type), false)); - attributes.push_back(new attribute("DependantProperty", new named_type(IFC4X3_RC4_IfcProperty_type), false)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyDependencyRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true)); - attributes.push_back(new attribute("EnumerationReference", new named_type(IFC4X3_RC4_IfcPropertyEnumeration_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyEnumeratedValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("EnumerationValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), false)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyEnumeration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyListValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("UsageName", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("PropertyReference", new named_type(IFC4X3_RC4_IfcObjectReferenceSelect_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyReferenceValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("HasProperties", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProperty_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertySetDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("ApplicableEntity", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertyTemplates", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertyTemplate_type)), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertySetTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("NominalValue", new named_type(IFC4X3_RC4_IfcValue_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertySingleValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DefiningValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true)); - attributes.push_back(new attribute("DefinedValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("DefiningUnit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - attributes.push_back(new attribute("DefinedUnit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - attributes.push_back(new attribute("CurveInterpolation", new named_type(IFC4X3_RC4_IfcCurveInterpolationEnum_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyTableValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPropertyTemplateDefinition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProtectiveDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProtectiveDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProxyType", new named_type(IFC4X3_RC4_IfcObjectTypeEnum_type), false)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcProxy_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPumpTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPump_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcPumpTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcPumpType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AreaValue", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantityArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CountValue", new named_type(IFC4X3_RC4_IfcCountMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantityCount_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("LengthValue", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantityLength_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantitySet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeValue", new named_type(IFC4X3_RC4_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantityTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("VolumeValue", new named_type(IFC4X3_RC4_IfcVolumeMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantityVolume_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("WeightValue", new named_type(IFC4X3_RC4_IfcMassMeasure_type), false)); - attributes.push_back(new attribute("Formula", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcQuantityWeight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRailTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRail_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRailTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRailType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRailingTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRailing_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRailingTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRailingType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRailwayTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRailway_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRampTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRamp_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRampFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRampFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRampFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRampFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRampTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRampType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WeightsData", new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type))), false)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WallThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerFilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("OuterFilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRectangleHollowProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("XDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("XLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRectangularPyramid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("BasisSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - attributes.push_back(new attribute("U1", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V1", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("U2", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("V2", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - attributes.push_back(new attribute("Usense", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Vsense", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRectangularTrimmedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("RecurrenceType", new named_type(IFC4X3_RC4_IfcRecurrenceTypeEnum_type), false)); - attributes.push_back(new attribute("DayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDayInMonthNumber_type)), true)); - attributes.push_back(new attribute("WeekdayComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDayInWeekNumber_type)), true)); - attributes.push_back(new attribute("MonthComponent", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcMonthInYearNumber_type)), true)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("Interval", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("Occurrences", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("TimePeriods", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTimePeriod_type)), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRecurrencePattern_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("TypeIdentifier", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("AttributeIdentifier", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("InstanceName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ListPositions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), true)); - attributes.push_back(new attribute("InnerReference", new named_type(IFC4X3_RC4_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReference_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcReferentTypeEnum_type), true)); - attributes.push_back(new attribute("RestartDistance", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReferent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("TimeStep", new named_type(IFC4X3_RC4_IfcTimeMeasure_type), false)); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTimeSeriesValue_type)), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRegularTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcedSoil_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TotalCrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), false)); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("EffectiveDepth", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("NominalBarDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarCount", new named_type(IFC4X3_RC4_IfcCountMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcementBarProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("DefinitionType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ReinforcementSectionDefinitions", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSectionReinforcementProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcementDefinitionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcReinforcingBarTypeEnum_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcingBar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcReinforcingBarTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("BarLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BarSurface", new named_type(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcingBarType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SteelGrade", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcingElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcingElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcingMesh_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(11); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type), false)); - attributes.push_back(new attribute("MeshLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MeshWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarNominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarNominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarCrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarCrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("LongitudinalBarSpacing", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TransverseBarSpacing", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("BendingShapeCode", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("BendingParameters", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcBendingParameterSelect_type)), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReinforcingMeshType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedSurfaceFeatures", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcSurfaceFeature_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAdheresToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC4_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAggregates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatedObjectsType", new named_type(IFC4X3_RC4_IfcObjectTypeEnum_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssigns_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingActor", new named_type(IFC4X3_RC4_IfcActor_type), false)); - attributes.push_back(new attribute("ActingRole", new named_type(IFC4X3_RC4_IfcActorRole_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToActor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingControl", new named_type(IFC4X3_RC4_IfcControl_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingGroup", new named_type(IFC4X3_RC4_IfcGroup_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Factor", new named_type(IFC4X3_RC4_IfcRatioMeasure_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC4_IfcProcessSelect_type), false)); - attributes.push_back(new attribute("QuantityInProcess", new named_type(IFC4X3_RC4_IfcMeasureWithUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProduct", new named_type(IFC4X3_RC4_IfcProductSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingResource", new named_type(IFC4X3_RC4_IfcResourceSelect_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssignsToResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociates_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC4_IfcApproval_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesApproval_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingClassification", new named_type(IFC4X3_RC4_IfcClassificationSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesClassification_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Intent", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC4_IfcConstraint_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesConstraint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingDocument", new named_type(IFC4X3_RC4_IfcDocumentSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesDocument_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingLibrary", new named_type(IFC4X3_RC4_IfcLibrarySelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesLibrary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingMaterial", new named_type(IFC4X3_RC4_IfcMaterialSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesMaterial_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RelatingProfileDef", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelAssociatesProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnects_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("RelatingPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedPriorities", new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false)); - attributes.push_back(new attribute("RelatedConnectionType", new named_type(IFC4X3_RC4_IfcConnectionTypeEnum_type), false)); - attributes.push_back(new attribute("RelatingConnectionType", new named_type(IFC4X3_RC4_IfcConnectionTypeEnum_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsPathElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC4_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC4_IfcDistributionElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsPortToElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RelatingPort", new named_type(IFC4X3_RC4_IfcPort_type), false)); - attributes.push_back(new attribute("RelatedPort", new named_type(IFC4X3_RC4_IfcPort_type), false)); - attributes.push_back(new attribute("RealizingElement", new named_type(IFC4X3_RC4_IfcElement_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsPorts_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC4_IfcStructuralActivityAssignmentSelect_type), false)); - attributes.push_back(new attribute("RelatedStructuralActivity", new named_type(IFC4X3_RC4_IfcStructuralActivity_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingStructuralMember", new named_type(IFC4X3_RC4_IfcStructuralMember_type), false)); - attributes.push_back(new attribute("RelatedStructuralConnection", new named_type(IFC4X3_RC4_IfcStructuralConnection_type), false)); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC4_IfcBoundaryCondition_type), true)); - attributes.push_back(new attribute("AdditionalConditions", new named_type(IFC4X3_RC4_IfcStructuralConnectionCondition_type), true)); - attributes.push_back(new attribute("SupportedLength", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConnectionConstraint", new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), false)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsWithEccentricity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RealizingElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcElement_type)), false)); - attributes.push_back(new attribute("ConnectionType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProduct_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC4_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelCoversBldgElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC4_IfcSpace_type), false)); - attributes.push_back(new attribute("RelatedCoverings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCovering_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelCoversSpaces_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingContext", new named_type(IFC4X3_RC4_IfcContext_type), false)); - attributes.push_back(new attribute("RelatedDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDefinitionSelect_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDeclares_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDecomposes_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDefines_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC4_IfcObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDefinesByObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false)); - attributes.push_back(new attribute("RelatingPropertyDefinition", new named_type(IFC4X3_RC4_IfcPropertySetDefinitionSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDefinesByProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertySetDefinition_type)), false)); - attributes.push_back(new attribute("RelatingTemplate", new named_type(IFC4X3_RC4_IfcPropertySetTemplate_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDefinesByTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObject_type)), false)); - attributes.push_back(new attribute("RelatingType", new named_type(IFC4X3_RC4_IfcTypeObject_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelDefinesByType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingOpeningElement", new named_type(IFC4X3_RC4_IfcOpeningElement_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelFillsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedControlElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDistributionControlElement_type)), false)); - attributes.push_back(new attribute("RelatingFlowElement", new named_type(IFC4X3_RC4_IfcDistributionFlowElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelFlowControlElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC4_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("RelatedElement", new named_type(IFC4X3_RC4_IfcInterferenceSelect_type), false)); - attributes.push_back(new attribute("InterferenceGeometry", new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("InterferenceSpace", new named_type(IFC4X3_RC4_IfcSpatialZone_type), true)); - attributes.push_back(new attribute("InterferenceType", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("ImpliedOrder", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelInterferesElements_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingObject", new named_type(IFC4X3_RC4_IfcObjectDefinition_type), false)); - attributes.push_back(new attribute("RelatedObjects", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelNests_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingPositioningElement", new named_type(IFC4X3_RC4_IfcPositioningElement_type), false)); - attributes.push_back(new attribute("RelatedProducts", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProduct_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelPositions_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedFeatureElement", new named_type(IFC4X3_RC4_IfcFeatureElementAddition_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelProjectsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedElements", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcSpatialReferenceSelect_type)), false)); - attributes.push_back(new attribute("RelatingStructure", new named_type(IFC4X3_RC4_IfcSpatialElement_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingProcess", new named_type(IFC4X3_RC4_IfcProcess_type), false)); - attributes.push_back(new attribute("RelatedProcess", new named_type(IFC4X3_RC4_IfcProcess_type), false)); - attributes.push_back(new attribute("TimeLag", new named_type(IFC4X3_RC4_IfcLagTime_type), true)); - attributes.push_back(new attribute("SequenceType", new named_type(IFC4X3_RC4_IfcSequenceEnum_type), true)); - attributes.push_back(new attribute("UserDefinedSequenceType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelSequence_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingSystem", new named_type(IFC4X3_RC4_IfcSystem_type), false)); - attributes.push_back(new attribute("RelatedBuildings", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcSpatialElement_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelServicesBuildings_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RelatingSpace", new named_type(IFC4X3_RC4_IfcSpaceBoundarySelect_type), false)); - attributes.push_back(new attribute("RelatedBuildingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - attributes.push_back(new attribute("ConnectionGeometry", new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), true)); - attributes.push_back(new attribute("PhysicalOrVirtualBoundary", new named_type(IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type), false)); - attributes.push_back(new attribute("InternalOrExternalBoundary", new named_type(IFC4X3_RC4_IfcInternalOrExternalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelSpaceBoundary_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentBoundary", new named_type(IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CorrespondingBoundary", new named_type(IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingBuildingElement", new named_type(IFC4X3_RC4_IfcElement_type), false)); - attributes.push_back(new attribute("RelatedOpeningElement", new named_type(IFC4X3_RC4_IfcFeatureElementSubtraction_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelVoidsElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParamLength", new named_type(IFC4X3_RC4_IfcParameterValue_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ContextOfItems", new named_type(IFC4X3_RC4_IfcRepresentationContext_type), false)); - attributes.push_back(new attribute("RepresentationIdentifier", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("RepresentationType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Items", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentationItem_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ContextIdentifier", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ContextType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRepresentationContext_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MappingOrigin", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("MappedRepresentation", new named_type(IFC4X3_RC4_IfcRepresentation_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRepresentationMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcResourceObjectSelect_type)), false)); - attributes.push_back(new attribute("RelatingApproval", new named_type(IFC4X3_RC4_IfcApproval_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcResourceApprovalRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RelatingConstraint", new named_type(IFC4X3_RC4_IfcConstraint_type), false)); - attributes.push_back(new attribute("RelatedResourceObjects", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcResourceObjectSelect_type)), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcResourceConstraintRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcResourceLevelRelationship_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(15); - attributes.push_back(new attribute("ScheduleWork", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleUsage", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleContour", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("LevelingDelay", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("IsOverAllocated", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualWork", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualUsage", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingWork", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("RemainingUsage", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(18); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcResourceTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC4_IfcAxis1Placement_type), false)); - attributes.push_back(new attribute("Angle", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRevolvedAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("EndSweptArea", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("BottomRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRightCircularCone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Height", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRightCircularCylinder_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRoadTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRoofTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRoof_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcRoofTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRoofType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("GlobalId", new named_type(IFC4X3_RC4_IfcGloballyUniqueId_type), false)); - attributes.push_back(new attribute("OwnerHistory", new named_type(IFC4X3_RC4_IfcOwnerHistory_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRoot_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("RoundingRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcRoundedRectangleProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Prefix", new named_type(IFC4X3_RC4_IfcSIPrefix_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcSIUnitName_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(true); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSIUnit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSanitaryTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSanitaryTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC4_IfcDataOriginEnum_type), true)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSchedulingTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSeamCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SectionType", new named_type(IFC4X3_RC4_IfcSectionTypeEnum_type), false)); - attributes.push_back(new attribute("StartProfile", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("EndProfile", new named_type(IFC4X3_RC4_IfcProfileDef_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSectionProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LongitudinalStartPosition", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LongitudinalEndPosition", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("TransversePosition", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ReinforcementRole", new named_type(IFC4X3_RC4_IfcReinforcingBarRoleEnum_type), false)); - attributes.push_back(new attribute("SectionDefinition", new named_type(IFC4X3_RC4_IfcSectionProperties_type), false)); - attributes.push_back(new attribute("CrossSectionReinforcementDefinitions", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcReinforcementBarProperties_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSectionReinforcementProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSectionedSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcAxis2PlacementLinear_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSectionedSolidHorizontal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SpineCurve", new named_type(IFC4X3_RC4_IfcCompositeCurve_type), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSectionedSpine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("CrossSectionPositions", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcPointByDistanceExpression_type)), false)); - attributes.push_back(new attribute("CrossSections", new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false)); - attributes.push_back(new attribute("FixedAxisVertical", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSectionedSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Transition", new named_type(IFC4X3_RC4_IfcTransitionCode_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcSegment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("BaseCurve", new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false)); - attributes.push_back(new attribute("EndPoint", new named_type(IFC4X3_RC4_IfcPlacement_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSegmentedReferenceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSensorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSensor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSensorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSensorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("SepticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("SexticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("QuinticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("QuarticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("CubicTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcShadingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcShadingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcShadingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcShadingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("ShapeRepresentations", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcShapeModel_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("ProductDefinitional", new named_type(IFC4X3_RC4_IfcLogical_type), false)); - attributes.push_back(new attribute("PartOfProductDefinitionShape", new named_type(IFC4X3_RC4_IfcProductRepresentationSelect_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcShapeAspect_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcShapeModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcShapeRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SbsmBoundary", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcShell_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcShellBasedSurfaceModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSignTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSign_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSignTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSignType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSignalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSignal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSignalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSignalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSimpleProperty_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("TemplateType", new named_type(IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type), true)); - attributes.push_back(new attribute("PrimaryMeasureType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("SecondaryMeasureType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Enumerators", new named_type(IFC4X3_RC4_IfcPropertyEnumeration_type), true)); - attributes.push_back(new attribute("PrimaryUnit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - attributes.push_back(new attribute("SecondaryUnit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - attributes.push_back(new attribute("Expression", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("AccessState", new named_type(IFC4X3_RC4_IfcStateEnum_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSimplePropertyTemplate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SineTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSine_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RefLatitude", new named_type(IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefLongitude", new named_type(IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RefElevation", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LandTitleNumber", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("SiteAddress", new named_type(IFC4X3_RC4_IfcPostalAddress_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSite_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSlabTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSlab_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSlabElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSlabStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSlabTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSlabType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SlippageX", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageY", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("SlippageZ", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSlippageConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSolarDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSolarDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSolarDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSolarDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcSolidModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSolidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSpaceTypeEnum_type), true)); - attributes.push_back(new attribute("ElevationWithFlooring", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpace_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpaceHeater_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpaceHeaterType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSpaceTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpaceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpatialElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ElementType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpatialElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("CompositionType", new named_type(IFC4X3_RC4_IfcElementCompositionEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpatialStructureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpatialStructureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSpatialZoneTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpatialZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSpatialZoneTypeEnum_type), false)); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSpatialZoneType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSphere_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSphericalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStackTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStackTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStackTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStackTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStairTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStair_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("NumberOfRisers", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("NumberOfTreads", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("RiserHeight", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("TreadLength", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStairFlightTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStairFlight_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStairFlightTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStairFlightType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStairTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStairType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("DestabilizingLoad", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("AppliedLoad", new named_type(IFC4X3_RC4_IfcStructuralLoad_type), false)); - attributes.push_back(new attribute("GlobalOrLocal", new named_type(IFC4X3_RC4_IfcGlobalOrLocalEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralActivity_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcAnalysisModelTypeEnum_type), false)); - attributes.push_back(new attribute("OrientationOf2DPlane", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true)); - attributes.push_back(new attribute("LoadedBy", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcStructuralLoadGroup_type)), true)); - attributes.push_back(new attribute("HasResults", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcStructuralResultGroup_type)), true)); - attributes.push_back(new attribute("SharedPlacement", new named_type(IFC4X3_RC4_IfcObjectPlacement_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralAnalysisModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AppliedCondition", new named_type(IFC4X3_RC4_IfcBoundaryCondition_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcStructuralConnectionCondition_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralCurveAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralCurveConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Axis", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralCurveMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralCurveMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralCurveReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLinearAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoad_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("SelfWeightCoefficients", new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcRatioMeasure_type)), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Values", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcStructuralLoadOrResult_type)), false)); - attributes.push_back(new attribute("Locations", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type))), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadConfiguration_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcLoadGroupTypeEnum_type), false)); - attributes.push_back(new attribute("ActionType", new named_type(IFC4X3_RC4_IfcActionTypeEnum_type), false)); - attributes.push_back(new attribute("ActionSource", new named_type(IFC4X3_RC4_IfcActionSourceTypeEnum_type), false)); - attributes.push_back(new attribute("Coefficient", new named_type(IFC4X3_RC4_IfcRatioMeasure_type), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("LinearForceX", new named_type(IFC4X3_RC4_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceY", new named_type(IFC4X3_RC4_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearForceZ", new named_type(IFC4X3_RC4_IfcLinearForceMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentX", new named_type(IFC4X3_RC4_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentY", new named_type(IFC4X3_RC4_IfcLinearMomentMeasure_type), true)); - attributes.push_back(new attribute("LinearMomentZ", new named_type(IFC4X3_RC4_IfcLinearMomentMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadLinearForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadOrResult_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("PlanarForceX", new named_type(IFC4X3_RC4_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceY", new named_type(IFC4X3_RC4_IfcPlanarForceMeasure_type), true)); - attributes.push_back(new attribute("PlanarForceZ", new named_type(IFC4X3_RC4_IfcPlanarForceMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadPlanarForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("DisplacementX", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementY", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("DisplacementZ", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRX", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRY", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("RotationalDisplacementRZ", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Distortion", new named_type(IFC4X3_RC4_IfcCurvatureMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("ForceX", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceY", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("ForceZ", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("MomentX", new named_type(IFC4X3_RC4_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentY", new named_type(IFC4X3_RC4_IfcTorqueMeasure_type), true)); - attributes.push_back(new attribute("MomentZ", new named_type(IFC4X3_RC4_IfcTorqueMeasure_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadSingleForce_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("WarpingMoment", new named_type(IFC4X3_RC4_IfcWarpingMomentMeasure_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadStatic_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("DeltaTConstant", new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTY", new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), true)); - attributes.push_back(new attribute("DeltaTZ", new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralLoadTemperature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralPlanarAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralPointAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ConditionCoordinateSystem", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralPointConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralPointReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("TheoryType", new named_type(IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type), false)); - attributes.push_back(new attribute("ResultForLoadGroup", new named_type(IFC4X3_RC4_IfcStructuralLoadGroup_type), true)); - attributes.push_back(new attribute("IsLinear", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralResultGroup_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ProjectedOrTrue", new named_type(IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralSurfaceAction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralSurfaceConnection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type), false)); - attributes.push_back(new attribute("Thickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralSurfaceMember_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStructuralSurfaceReaction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStyleModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Item", new named_type(IFC4X3_RC4_IfcRepresentationItem_type), true)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPresentationStyle_type)), false)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStyledItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcStyledRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSubContractResourceTypeEnum_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSubContractResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSubContractResourceTypeEnum_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSubContractResourceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ParentEdge", new named_type(IFC4X3_RC4_IfcEdge_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSubedge_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Curve3D", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("AssociatedGeometry", new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC4_IfcPcurve_type)), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ReferenceSurface", new named_type(IFC4X3_RC4_IfcSurface_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ExtrudedDirection", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("AxisPosition", new named_type(IFC4X3_RC4_IfcAxis1Placement_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceOfRevolution_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("SurfaceReinforcement1", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("SurfaceReinforcement2", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), true)); - attributes.push_back(new attribute("ShearReinforcement", new named_type(IFC4X3_RC4_IfcRatioMeasure_type), true)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceReinforcementArea_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Side", new named_type(IFC4X3_RC4_IfcSurfaceSide_type), false)); - attributes.push_back(new attribute("Styles", new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC4_IfcSurfaceStyleElementSelect_type)), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("DiffuseReflectionColour", new named_type(IFC4X3_RC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("ReflectanceColour", new named_type(IFC4X3_RC4_IfcColourRgb_type), false)); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceStyleLighting_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RefractionIndex", new named_type(IFC4X3_RC4_IfcReal_type), true)); - attributes.push_back(new attribute("DispersionFactor", new named_type(IFC4X3_RC4_IfcReal_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceStyleRefraction_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("DiffuseColour", new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("TransmissionColour", new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("DiffuseTransmissionColour", new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("ReflectionColour", new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularColour", new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true)); - attributes.push_back(new attribute("SpecularHighlight", new named_type(IFC4X3_RC4_IfcSpecularHighlightSelect_type), true)); - attributes.push_back(new attribute("ReflectanceMethod", new named_type(IFC4X3_RC4_IfcReflectanceMethodEnum_type), false)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceStyleRendering_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SurfaceColour", new named_type(IFC4X3_RC4_IfcColourRgb_type), false)); - attributes.push_back(new attribute("Transparency", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceStyleShading_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Textures", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcSurfaceStyleWithTextures_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("RepeatS", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("RepeatT", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("TextureTransform", new named_type(IFC4X3_RC4_IfcCartesianTransformationOperator2D_type), true)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIdentifier_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSurfaceTexture_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptArea", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSweptAreaSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Directrix", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("Radius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("InnerRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("StartParam", new named_type(IFC4X3_RC4_IfcParameterValue_type), true)); - attributes.push_back(new attribute("EndParam", new named_type(IFC4X3_RC4_IfcParameterValue_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSweptDiskSolid_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("SweptCurve", new named_type(IFC4X3_RC4_IfcProfileDef_type), false)); - attributes.push_back(new attribute("Position", new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSweptSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSwitchingDevice_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSwitchingDeviceType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSystem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSystemFurnitureElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcSystemFurnitureElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(9); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeEdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebEdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("WebSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Rows", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTableRow_type)), true)); - attributes.push_back(new attribute("Columns", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTableColumn_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTable_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("Identifier", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - attributes.push_back(new attribute("ReferencePath", new named_type(IFC4X3_RC4_IfcReference_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTableColumn_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RowCells", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true)); - attributes.push_back(new attribute("IsHeading", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTableRow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTankTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTank_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTankTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTankType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Status", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("IsMilestone", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Priority", new named_type(IFC4X3_RC4_IfcInteger_type), true)); - attributes.push_back(new attribute("TaskTime", new named_type(IFC4X3_RC4_IfcTaskTime_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTaskTypeEnum_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTask_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(17); - attributes.push_back(new attribute("DurationType", new named_type(IFC4X3_RC4_IfcTaskDurationEnum_type), true)); - attributes.push_back(new attribute("ScheduleDuration", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ScheduleStart", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ScheduleFinish", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyStart", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("EarlyFinish", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateStart", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("LateFinish", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("FreeFloat", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("IsCritical", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("StatusTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualDuration", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("ActualStart", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("ActualFinish", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - attributes.push_back(new attribute("RemainingTime", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("Completion", new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true)); - std::vector derived; derived.reserve(20); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTaskTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Recurrence", new named_type(IFC4X3_RC4_IfcRecurrencePattern_type), false)); - std::vector derived; derived.reserve(21); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTaskTimeRecurring_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTaskTypeEnum_type), false)); - attributes.push_back(new attribute("WorkMethod", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(11); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTaskType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("TelephoneNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("FacsimileNumbers", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("PagerNumber", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("ElectronicMailAddresses", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true)); - attributes.push_back(new attribute("WWWHomePageURL", new named_type(IFC4X3_RC4_IfcURIReference_type), true)); - attributes.push_back(new attribute("MessagingIDs", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcURIReference_type)), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTelecomAddress_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTendonTypeEnum_type), true)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("TensionForce", new named_type(IFC4X3_RC4_IfcForceMeasure_type), true)); - attributes.push_back(new attribute("PreStress", new named_type(IFC4X3_RC4_IfcPressureMeasure_type), true)); - attributes.push_back(new attribute("FrictionCoefficient", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("AnchorageSlip", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("MinCurvatureRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(17); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTendon_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTendonAnchorTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTendonAnchor_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTendonAnchorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTendonAnchorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTendonConduit_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTendonConduitTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTendonConduitType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTendonTypeEnum_type), false)); - attributes.push_back(new attribute("NominalDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("CrossSectionArea", new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true)); - attributes.push_back(new attribute("SheathDiameter", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTendonType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new named_type(IFC4X3_RC4_IfcCartesianPointList3D_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcTessellatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcTessellatedItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Literal", new named_type(IFC4X3_RC4_IfcPresentableText_type), false)); - attributes.push_back(new attribute("Placement", new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false)); - attributes.push_back(new attribute("Path", new named_type(IFC4X3_RC4_IfcTextPath_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextLiteral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Extent", new named_type(IFC4X3_RC4_IfcPlanarExtent_type), false)); - attributes.push_back(new attribute("BoxAlignment", new named_type(IFC4X3_RC4_IfcBoxAlignment_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextLiteralWithExtent_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("TextCharacterAppearance", new named_type(IFC4X3_RC4_IfcTextStyleForDefinedFont_type), true)); - attributes.push_back(new attribute("TextStyle", new named_type(IFC4X3_RC4_IfcTextStyleTextModel_type), true)); - attributes.push_back(new attribute("TextFontStyle", new named_type(IFC4X3_RC4_IfcTextFontSelect_type), false)); - attributes.push_back(new attribute("ModelOrDraughting", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("FontFamily", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTextFontName_type)), false)); - attributes.push_back(new attribute("FontStyle", new named_type(IFC4X3_RC4_IfcFontStyle_type), true)); - attributes.push_back(new attribute("FontVariant", new named_type(IFC4X3_RC4_IfcFontVariant_type), true)); - attributes.push_back(new attribute("FontWeight", new named_type(IFC4X3_RC4_IfcFontWeight_type), true)); - attributes.push_back(new attribute("FontSize", new named_type(IFC4X3_RC4_IfcSizeSelect_type), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextStyleFontModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Colour", new named_type(IFC4X3_RC4_IfcColour_type), false)); - attributes.push_back(new attribute("BackgroundColour", new named_type(IFC4X3_RC4_IfcColour_type), true)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextStyleForDefinedFont_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("TextIndent", new named_type(IFC4X3_RC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextAlign", new named_type(IFC4X3_RC4_IfcTextAlignment_type), true)); - attributes.push_back(new attribute("TextDecoration", new named_type(IFC4X3_RC4_IfcTextDecoration_type), true)); - attributes.push_back(new attribute("LetterSpacing", new named_type(IFC4X3_RC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("WordSpacing", new named_type(IFC4X3_RC4_IfcSizeSelect_type), true)); - attributes.push_back(new attribute("TextTransform", new named_type(IFC4X3_RC4_IfcTextTransformation_type), true)); - attributes.push_back(new attribute("LineHeight", new named_type(IFC4X3_RC4_IfcSizeSelect_type), true)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextStyleTextModel_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Maps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSurfaceTexture_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcTextureCoordinate_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Mode", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Parameter", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextureCoordinateGenerator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Vertices", new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcTextureVertex_type)), false)); - attributes.push_back(new attribute("MappedTo", new named_type(IFC4X3_RC4_IfcFace_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTextureMap_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Coordinates", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcTextureVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("TexCoordsList", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcParameterValue_type))), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcTextureVertexList_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("CubicTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - attributes.push_back(new attribute("QuadraticTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LinearTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("ConstantTerm", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC4_IfcTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC4_IfcTime_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTimePeriod_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(8); - attributes.push_back(new attribute("Name", new named_type(IFC4X3_RC4_IfcLabel_type), false)); - attributes.push_back(new attribute("Description", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("EndTime", new named_type(IFC4X3_RC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("TimeSeriesDataType", new named_type(IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type), false)); - attributes.push_back(new attribute("DataOrigin", new named_type(IFC4X3_RC4_IfcDataOriginEnum_type), false)); - attributes.push_back(new attribute("UserDefinedDataOrigin", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Unit", new named_type(IFC4X3_RC4_IfcUnit_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTimeSeries_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("ListValues", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcTimeSeriesValue_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcTopologicalRepresentationItem_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(4); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTopologyRepresentation_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("MajorRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("MinorRadius", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - std::vector derived; derived.reserve(3); - derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcToroidalSurface_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTrackElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTrackElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTrackElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTrackElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTransformerTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTransformer_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTransformerTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTransformerType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTransportElementTypeSelect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTransportElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTransportElementTypeSelect_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTransportElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("BottomXDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("YDim", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("TopXOffset", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(7); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTrapeziumProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("Normals", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcParameterValue_type))), true)); - attributes.push_back(new attribute("Closed", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("CoordIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))), false)); - attributes.push_back(new attribute("PnIndex", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), true)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTriangulatedFaceSet_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Flags", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("BasisCurve", new named_type(IFC4X3_RC4_IfcCurve_type), false)); - attributes.push_back(new attribute("Trim1", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC4_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("Trim2", new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC4_IfcTrimmingSelect_type)), false)); - attributes.push_back(new attribute("SenseAgreement", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("MasterRepresentation", new named_type(IFC4X3_RC4_IfcTrimmingPreference_type), false)); - std::vector derived; derived.reserve(5); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTrimmedCurve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTubeBundleTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTubeBundle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcTubeBundleTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTubeBundleType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("ApplicableOccurrence", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("HasPropertySets", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertySetDefinition_type)), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTypeObject_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("ProcessType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTypeProcess_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("RepresentationMaps", new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentationMap_type)), true)); - attributes.push_back(new attribute("Tag", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTypeProduct_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("Identification", new named_type(IFC4X3_RC4_IfcIdentifier_type), true)); - attributes.push_back(new attribute("LongDescription", new named_type(IFC4X3_RC4_IfcText_type), true)); - attributes.push_back(new attribute("ResourceType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcTypeResource_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FlangeSlope", new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcUShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("Units", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcUnit_type)), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcUnitAssignment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcUnitaryControlElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcUnitaryControlElementType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcUnitaryEquipment_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcUnitaryEquipmentType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcValveTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcValve_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcValveTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcValveType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("Orientation", new named_type(IFC4X3_RC4_IfcDirection_type), false)); - attributes.push_back(new attribute("Magnitude", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVector_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(0); - - IFC4X3_RC4_IfcVertex_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LoopVertex", new named_type(IFC4X3_RC4_IfcVertex_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcVertexLoop_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("VertexGeometry", new named_type(IFC4X3_RC4_IfcPoint_type), false)); - std::vector derived; derived.reserve(1); - derived.push_back(false); - IFC4X3_RC4_IfcVertexPoint_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVibrationDamper_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcVibrationDamperTypeEnum_type), true)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVibrationDamperType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVibrationIsolator_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVibrationIsolatorType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVirtualElement_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new attribute("IntersectingAxes", new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcGridAxis_type)), false)); - attributes.push_back(new attribute("OffsetDistances", new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false)); - std::vector derived; derived.reserve(2); - derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVirtualGridIntersection_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVoidStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcVoidingFeature_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWallTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWall_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWallElementedCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWallStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWallTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWallType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWasteTerminalTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWasteTerminal_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWasteTerminalTypeEnum_type), false)); - std::vector derived; derived.reserve(10); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWasteTerminalType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(8); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWaterStratum_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OverallHeight", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("OverallWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWindowTypeEnum_type), true)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC4_IfcWindowTypePartitioningEnum_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWindow_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new attribute("LiningDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("TransomThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("MullionThickness", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("FirstTransomOffset", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondTransomOffset", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("FirstMullionOffset", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("SecondMullionOffset", new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC4_IfcShapeAspect_type), true)); - attributes.push_back(new attribute("LiningOffset", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetX", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - attributes.push_back(new attribute("LiningToPanelOffsetY", new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true)); - std::vector derived; derived.reserve(16); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWindowLiningProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC4_IfcWindowPanelOperationEnum_type), false)); - attributes.push_back(new attribute("PanelPosition", new named_type(IFC4X3_RC4_IfcWindowPanelPositionEnum_type), false)); - attributes.push_back(new attribute("FrameDepth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("FrameThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true)); - attributes.push_back(new attribute("ShapeAspectStyle", new named_type(IFC4X3_RC4_IfcShapeAspect_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWindowPanelProperties_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(0); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWindowStandardCase_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("ConstructionType", new named_type(IFC4X3_RC4_IfcWindowStyleConstructionEnum_type), false)); - attributes.push_back(new attribute("OperationType", new named_type(IFC4X3_RC4_IfcWindowStyleOperationEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - attributes.push_back(new attribute("Sizeable", new named_type(IFC4X3_RC4_IfcBoolean_type), false)); - std::vector derived; derived.reserve(12); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWindowStyle_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWindowTypeEnum_type), false)); - attributes.push_back(new attribute("PartitioningType", new named_type(IFC4X3_RC4_IfcWindowTypePartitioningEnum_type), false)); - attributes.push_back(new attribute("ParameterTakesPrecedence", new named_type(IFC4X3_RC4_IfcBoolean_type), true)); - attributes.push_back(new attribute("UserDefinedPartitioningType", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWindowType_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("WorkingTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("ExceptionTimes", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcWorkTime_type)), true)); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWorkCalendarTypeEnum_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWorkCalendar_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new attribute("CreationDate", new named_type(IFC4X3_RC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("Creators", new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPerson_type)), true)); - attributes.push_back(new attribute("Purpose", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - attributes.push_back(new attribute("Duration", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("TotalFloat", new named_type(IFC4X3_RC4_IfcDuration_type), true)); - attributes.push_back(new attribute("StartTime", new named_type(IFC4X3_RC4_IfcDateTime_type), false)); - attributes.push_back(new attribute("FinishTime", new named_type(IFC4X3_RC4_IfcDateTime_type), true)); - std::vector derived; derived.reserve(13); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWorkControl_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWorkPlanTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWorkPlan_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("PredefinedType", new named_type(IFC4X3_RC4_IfcWorkScheduleTypeEnum_type), true)); - std::vector derived; derived.reserve(14); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWorkSchedule_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new attribute("RecurrencePattern", new named_type(IFC4X3_RC4_IfcRecurrencePattern_type), true)); - attributes.push_back(new attribute("Start", new named_type(IFC4X3_RC4_IfcDate_type), true)); - attributes.push_back(new attribute("Finish", new named_type(IFC4X3_RC4_IfcDate_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcWorkTime_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new attribute("Depth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeWidth", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("WebThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FlangeThickness", new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false)); - attributes.push_back(new attribute("FilletRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - attributes.push_back(new attribute("EdgeRadius", new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true)); - std::vector derived; derived.reserve(9); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcZShapeProfileDef_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new attribute("LongName", new named_type(IFC4X3_RC4_IfcLabel_type), true)); - std::vector derived; derived.reserve(6); - derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); derived.push_back(false); - IFC4X3_RC4_IfcZone_type->set_attributes(attributes, derived); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsActingUpon", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToActor_type, IFC4X3_RC4_IfcRelAssignsToActor_type->attributes()[0])); - IFC4X3_RC4_IfcActor_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcActorRole_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("OfPerson", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPerson_type, IFC4X3_RC4_IfcPerson_type->attributes()[7])); - attributes.push_back(new inverse_attribute("OfOrganization", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcOrganization_type, IFC4X3_RC4_IfcOrganization_type->attributes()[4])); - IFC4X3_RC4_IfcAddress_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC4_IfcAnnotation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcAppliedValue_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(5); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ApprovedObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesApproval_type, IFC4X3_RC4_IfcRelAssociatesApproval_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ApprovedResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceApprovalRelationship_type, IFC4X3_RC4_IfcResourceApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcApprovalRelationship_type, IFC4X3_RC4_IfcApprovalRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcApprovalRelationship_type, IFC4X3_RC4_IfcApprovalRelationship_type->attributes()[0])); - IFC4X3_RC4_IfcApproval_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesClassification_type, IFC4X3_RC4_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcClassificationReference_type, IFC4X3_RC4_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC4_IfcClassification_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ClassificationRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesClassification_type, IFC4X3_RC4_IfcRelAssociatesClassification_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcClassificationReference_type, IFC4X3_RC4_IfcClassificationReference_type->attributes()[0])); - IFC4X3_RC4_IfcClassificationReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PropertiesForConstraint", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceConstraintRelationship_type, IFC4X3_RC4_IfcResourceConstraintRelationship_type->attributes()[0])); - IFC4X3_RC4_IfcConstraint_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByProperties_type, IFC4X3_RC4_IfcRelDefinesByProperties_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDeclares_type, IFC4X3_RC4_IfcRelDeclares_type->attributes()[0])); - IFC4X3_RC4_IfcContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcContextDependentUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Controls", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToControl_type, IFC4X3_RC4_IfcRelAssignsToControl_type->attributes()[0])); - IFC4X3_RC4_IfcControl_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcConversionBasedUnit_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcCoordinateOperation_type, IFC4X3_RC4_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC4_IfcCoordinateReferenceSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("CoversSpaces", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelCoversSpaces_type, IFC4X3_RC4_IfcRelCoversSpaces_type->attributes()[1])); - attributes.push_back(new inverse_attribute("CoversElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelCoversBldgElements_type, IFC4X3_RC4_IfcRelCoversBldgElements_type->attributes()[1])); - IFC4X3_RC4_IfcCovering_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToFlowElement", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelFlowControlElements_type, IFC4X3_RC4_IfcRelFlowControlElements_type->attributes()[0])); - IFC4X3_RC4_IfcDistributionControlElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasPorts", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsPortToElement_type, IFC4X3_RC4_IfcRelConnectsPortToElement_type->attributes()[1])); - IFC4X3_RC4_IfcDistributionElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasControlElements", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelFlowControlElements_type, IFC4X3_RC4_IfcRelFlowControlElements_type->attributes()[1])); - IFC4X3_RC4_IfcDistributionFlowElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("DocumentInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesDocument_type, IFC4X3_RC4_IfcRelAssociatesDocument_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasDocumentReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcDocumentReference_type, IFC4X3_RC4_IfcDocumentReference_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcDocumentInformationRelationship_type, IFC4X3_RC4_IfcDocumentInformationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsPointer", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcDocumentInformationRelationship_type, IFC4X3_RC4_IfcDocumentInformationRelationship_type->attributes()[0])); - IFC4X3_RC4_IfcDocumentInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("DocumentRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesDocument_type, IFC4X3_RC4_IfcRelAssociatesDocument_type->attributes()[0])); - IFC4X3_RC4_IfcDocumentReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(12); - attributes.push_back(new inverse_attribute("FillsVoids", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelFillsElement_type, IFC4X3_RC4_IfcRelFillsElement_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsElements_type, IFC4X3_RC4_IfcRelConnectsElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsInterferedByElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelInterferesElements_type, IFC4X3_RC4_IfcRelInterferesElements_type->attributes()[1])); - attributes.push_back(new inverse_attribute("InterferesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelInterferesElements_type, IFC4X3_RC4_IfcRelInterferesElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasProjections", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelProjectsElement_type, IFC4X3_RC4_IfcRelProjectsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasOpenings", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelVoidsElement_type, IFC4X3_RC4_IfcRelVoidsElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsConnectionRealization", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ProvidesBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary_type, IFC4X3_RC4_IfcRelSpaceBoundary_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsElements_type, IFC4X3_RC4_IfcRelConnectsElements_type->attributes()[2])); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelCoversBldgElements_type, IFC4X3_RC4_IfcRelCoversBldgElements_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasSurfaceFeatures", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAdheresToElement_type, IFC4X3_RC4_IfcRelAdheresToElement_type->attributes()[0])); - IFC4X3_RC4_IfcElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ExternalReferenceForResources", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[0])); - IFC4X3_RC4_IfcExternalReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary_type, IFC4X3_RC4_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC4_IfcExternalSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasTextureMaps", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcTextureMap_type, IFC4X3_RC4_IfcTextureMap_type->attributes()[1])); - IFC4X3_RC4_IfcFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ProjectsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcRelProjectsElement_type, IFC4X3_RC4_IfcRelProjectsElement_type->attributes()[1])); - IFC4X3_RC4_IfcFeatureElementAddition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("VoidsElements", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcRelVoidsElement_type, IFC4X3_RC4_IfcRelVoidsElement_type->attributes()[1])); - IFC4X3_RC4_IfcFeatureElementSubtraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasSubContexts", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcGeometricRepresentationSubContext_type, IFC4X3_RC4_IfcGeometricRepresentationSubContext_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasCoordinateOperation", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcCoordinateOperation_type, IFC4X3_RC4_IfcCoordinateOperation_type->attributes()[0])); - IFC4X3_RC4_IfcGeometricRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("PartOfW", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcGrid_type, IFC4X3_RC4_IfcGrid_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfV", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcGrid_type, IFC4X3_RC4_IfcGrid_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfU", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcGrid_type, IFC4X3_RC4_IfcGrid_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasIntersections", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcVirtualGridIntersection_type, IFC4X3_RC4_IfcVirtualGridIntersection_type->attributes()[0])); - IFC4X3_RC4_IfcGridAxis_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("IsGroupedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToGroup_type, IFC4X3_RC4_IfcRelAssignsToGroup_type->attributes()[0])); - IFC4X3_RC4_IfcGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToFaceSet", inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcPolygonalFaceSet_type, IFC4X3_RC4_IfcPolygonalFaceSet_type->attributes()[1])); - IFC4X3_RC4_IfcIndexedPolygonalFace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LibraryInfoForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesLibrary_type, IFC4X3_RC4_IfcRelAssociatesLibrary_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasLibraryReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcLibraryReference_type, IFC4X3_RC4_IfcLibraryReference_type->attributes()[2])); - IFC4X3_RC4_IfcLibraryInformation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("LibraryRefForObjects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesLibrary_type, IFC4X3_RC4_IfcRelAssociatesLibrary_type->attributes()[0])); - IFC4X3_RC4_IfcLibraryReference_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("HasRepresentation", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsRelatedWith", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcMaterialRelationship_type, IFC4X3_RC4_IfcMaterialRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("RelatesTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcMaterialRelationship_type, IFC4X3_RC4_IfcMaterialRelationship_type->attributes()[0])); - IFC4X3_RC4_IfcMaterial_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialConstituentSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcMaterialConstituentSet_type, IFC4X3_RC4_IfcMaterialConstituentSet_type->attributes()[2])); - IFC4X3_RC4_IfcMaterialConstituent_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesMaterial_type, IFC4X3_RC4_IfcRelAssociatesMaterial_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcMaterialProperties_type, IFC4X3_RC4_IfcMaterialProperties_type->attributes()[0])); - IFC4X3_RC4_IfcMaterialDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialLayerSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcMaterialLayerSet_type, IFC4X3_RC4_IfcMaterialLayerSet_type->attributes()[0])); - IFC4X3_RC4_IfcMaterialLayer_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ToMaterialProfileSet", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcMaterialProfileSet_type, IFC4X3_RC4_IfcMaterialProfileSet_type->attributes()[2])); - IFC4X3_RC4_IfcMaterialProfile_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssociatedTo", inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcRelAssociatesMaterial_type, IFC4X3_RC4_IfcRelAssociatesMaterial_type->attributes()[0])); - IFC4X3_RC4_IfcMaterialUsageDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(4); - attributes.push_back(new inverse_attribute("IsDeclaredBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDefinesByObject_type, IFC4X3_RC4_IfcRelDefinesByObject_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Declares", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByObject_type, IFC4X3_RC4_IfcRelDefinesByObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsTypedBy", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDefinesByType_type, IFC4X3_RC4_IfcRelDefinesByType_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByProperties_type, IFC4X3_RC4_IfcRelDefinesByProperties_type->attributes()[0])); - IFC4X3_RC4_IfcObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(7); - attributes.push_back(new inverse_attribute("HasAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssigns_type, IFC4X3_RC4_IfcRelAssigns_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Nests", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelNests_type, IFC4X3_RC4_IfcRelNests_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsNestedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelNests_type, IFC4X3_RC4_IfcRelNests_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDeclares_type, IFC4X3_RC4_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDecomposedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAggregates_type, IFC4X3_RC4_IfcRelAggregates_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Decomposes", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelAggregates_type, IFC4X3_RC4_IfcRelAggregates_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociates_type, IFC4X3_RC4_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC4_IfcObjectDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("PlacesObject", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcProduct_type, IFC4X3_RC4_IfcProduct_type->attributes()[0])); - IFC4X3_RC4_IfcObjectPlacement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasFillings", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelFillsElement_type, IFC4X3_RC4_IfcRelFillsElement_type->attributes()[0])); - IFC4X3_RC4_IfcOpeningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsRelatedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcOrganizationRelationship_type, IFC4X3_RC4_IfcOrganizationRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("Relates", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcOrganizationRelationship_type, IFC4X3_RC4_IfcOrganizationRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Engages", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPersonAndOrganization_type, IFC4X3_RC4_IfcPersonAndOrganization_type->attributes()[1])); - IFC4X3_RC4_IfcOrganization_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("EngagedIn", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPersonAndOrganization_type, IFC4X3_RC4_IfcPersonAndOrganization_type->attributes()[0])); - IFC4X3_RC4_IfcPerson_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcPhysicalComplexQuantity_type, IFC4X3_RC4_IfcPhysicalComplexQuantity_type->attributes()[0])); - IFC4X3_RC4_IfcPhysicalQuantity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainedIn", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsPortToElement_type, IFC4X3_RC4_IfcRelConnectsPortToElement_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ConnectedFrom", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsPorts_type, IFC4X3_RC4_IfcRelConnectsPorts_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ConnectedTo", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsPorts_type, IFC4X3_RC4_IfcRelConnectsPorts_type->attributes()[0])); - IFC4X3_RC4_IfcPort_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ContainedInStructure", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[0])); - attributes.push_back(new inverse_attribute("Positions", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelPositions_type, IFC4X3_RC4_IfcRelPositions_type->attributes()[0])); - IFC4X3_RC4_IfcPositioningElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("IsPredecessorTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSequence_type, IFC4X3_RC4_IfcRelSequence_type->attributes()[0])); - attributes.push_back(new inverse_attribute("IsSuccessorFrom", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSequence_type, IFC4X3_RC4_IfcRelSequence_type->attributes()[1])); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProcess_type, IFC4X3_RC4_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC4_IfcProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProduct_type, IFC4X3_RC4_IfcRelAssignsToProduct_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PositionedRelativeTo", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelPositions_type, IFC4X3_RC4_IfcRelPositions_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencedInStructures", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC4_IfcProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ShapeOfProduct", inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcProduct_type, IFC4X3_RC4_IfcProduct_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcShapeAspect_type, IFC4X3_RC4_IfcShapeAspect_type->attributes()[4])); - IFC4X3_RC4_IfcProductDefinitionShape_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasProperties", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcProfileProperties_type, IFC4X3_RC4_IfcProfileProperties_type->attributes()[0])); - IFC4X3_RC4_IfcProfileDef_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(6); - attributes.push_back(new inverse_attribute("PartOfPset", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertySet_type, IFC4X3_RC4_IfcPropertySet_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyForDependance", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertyDependencyRelationship_type, IFC4X3_RC4_IfcPropertyDependencyRelationship_type->attributes()[0])); - attributes.push_back(new inverse_attribute("PropertyDependsOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertyDependencyRelationship_type, IFC4X3_RC4_IfcPropertyDependencyRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("PartOfComplex", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcComplexProperty_type, IFC4X3_RC4_IfcComplexProperty_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasConstraints", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceConstraintRelationship_type, IFC4X3_RC4_IfcResourceConstraintRelationship_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasApprovals", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceApprovalRelationship_type, IFC4X3_RC4_IfcResourceApprovalRelationship_type->attributes()[0])); - IFC4X3_RC4_IfcProperty_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcPropertyAbstraction_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasContext", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDeclares_type, IFC4X3_RC4_IfcRelDeclares_type->attributes()[1])); - attributes.push_back(new inverse_attribute("HasAssociations", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociates_type, IFC4X3_RC4_IfcRelAssociates_type->attributes()[0])); - IFC4X3_RC4_IfcPropertyDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("DefinesType", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcTypeObject_type, IFC4X3_RC4_IfcTypeObject_type->attributes()[1])); - attributes.push_back(new inverse_attribute("IsDefinedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByTemplate_type, IFC4X3_RC4_IfcRelDefinesByTemplate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("DefinesOccurrence", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByProperties_type, IFC4X3_RC4_IfcRelDefinesByProperties_type->attributes()[1])); - IFC4X3_RC4_IfcPropertySetDefinition_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Defines", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByTemplate_type, IFC4X3_RC4_IfcRelDefinesByTemplate_type->attributes()[1])); - IFC4X3_RC4_IfcPropertySetTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("PartOfComplexTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcComplexPropertyTemplate_type, IFC4X3_RC4_IfcComplexPropertyTemplate_type->attributes()[2])); - attributes.push_back(new inverse_attribute("PartOfPsetTemplate", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertySetTemplate_type, IFC4X3_RC4_IfcPropertySetTemplate_type->attributes()[2])); - IFC4X3_RC4_IfcPropertyTemplate_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("InnerBoundaries", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->attributes()[0])); - IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Corresponds", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type->attributes()[0])); - IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("RepresentationMap", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRepresentationMap_type, IFC4X3_RC4_IfcRepresentationMap_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LayerAssignments", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPresentationLayerAssignment_type, IFC4X3_RC4_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("OfProductRepresentation", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcProductRepresentation_type, IFC4X3_RC4_IfcProductRepresentation_type->attributes()[2])); - IFC4X3_RC4_IfcRepresentation_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("RepresentationsInContext", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRepresentation_type, IFC4X3_RC4_IfcRepresentation_type->attributes()[0])); - IFC4X3_RC4_IfcRepresentationContext_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("LayerAssignment", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcPresentationLayerAssignment_type, IFC4X3_RC4_IfcPresentationLayerAssignment_type->attributes()[2])); - attributes.push_back(new inverse_attribute("StyledByItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcStyledItem_type, IFC4X3_RC4_IfcStyledItem_type->attributes()[0])); - IFC4X3_RC4_IfcRepresentationItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasShapeAspects", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcShapeAspect_type, IFC4X3_RC4_IfcShapeAspect_type->attributes()[4])); - attributes.push_back(new inverse_attribute("MapUsage", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcMappedItem_type, IFC4X3_RC4_IfcMappedItem_type->attributes()[0])); - IFC4X3_RC4_IfcRepresentationMap_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToResource_type, IFC4X3_RC4_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC4_IfcResource_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("UsingCurves", inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcCompositeCurve_type, IFC4X3_RC4_IfcCompositeCurve_type->attributes()[0])); - IFC4X3_RC4_IfcSegment_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReferences", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcShapeAspect_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OfShapeAspect", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcShapeAspect_type, IFC4X3_RC4_IfcShapeAspect_type->attributes()[0])); - IFC4X3_RC4_IfcShapeModel_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasCoverings", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelCoversSpaces_type, IFC4X3_RC4_IfcRelCoversSpaces_type->attributes()[0])); - attributes.push_back(new inverse_attribute("BoundedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary_type, IFC4X3_RC4_IfcRelSpaceBoundary_type->attributes()[0])); - IFC4X3_RC4_IfcSpace_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(3); - attributes.push_back(new inverse_attribute("ContainsElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ServicedBySystems", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelServicesBuildings_type, IFC4X3_RC4_IfcRelServicesBuildings_type->attributes()[1])); - attributes.push_back(new inverse_attribute("ReferencesElements", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->attributes()[1])); - IFC4X3_RC4_IfcSpatialElement_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedToStructuralItem", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type->attributes()[1])); - IFC4X3_RC4_IfcStructuralActivity_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectsStructuralMembers", inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcRelConnectsStructuralMember_type, IFC4X3_RC4_IfcRelConnectsStructuralMember_type->attributes()[1])); - IFC4X3_RC4_IfcStructuralConnection_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AssignedStructuralActivity", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type->attributes()[0])); - IFC4X3_RC4_IfcStructuralItem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("SourceOfResultGroup", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcStructuralResultGroup_type, IFC4X3_RC4_IfcStructuralResultGroup_type->attributes()[1])); - attributes.push_back(new inverse_attribute("LoadGroupFor", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcStructuralAnalysisModel_type, IFC4X3_RC4_IfcStructuralAnalysisModel_type->attributes()[2])); - IFC4X3_RC4_IfcStructuralLoadGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ConnectedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsStructuralMember_type, IFC4X3_RC4_IfcRelConnectsStructuralMember_type->attributes()[0])); - IFC4X3_RC4_IfcStructuralMember_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResultGroupFor", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcStructuralAnalysisModel_type, IFC4X3_RC4_IfcStructuralAnalysisModel_type->attributes()[3])); - IFC4X3_RC4_IfcStructuralResultGroup_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("AdheresToElement", inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcRelAdheresToElement_type, IFC4X3_RC4_IfcRelAdheresToElement_type->attributes()[1])); - IFC4X3_RC4_IfcSurfaceFeature_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("IsMappedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcTextureCoordinate_type, IFC4X3_RC4_IfcTextureCoordinate_type->attributes()[0])); - attributes.push_back(new inverse_attribute("UsedInStyles", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcSurfaceStyleWithTextures_type, IFC4X3_RC4_IfcSurfaceStyleWithTextures_type->attributes()[0])); - IFC4X3_RC4_IfcSurfaceTexture_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("ServicesBuildings", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelServicesBuildings_type, IFC4X3_RC4_IfcRelServicesBuildings_type->attributes()[0])); - attributes.push_back(new inverse_attribute("ServicesFacilities", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->attributes()[0])); - IFC4X3_RC4_IfcSystem_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(2); - attributes.push_back(new inverse_attribute("HasColours", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcIndexedColourMap_type, IFC4X3_RC4_IfcIndexedColourMap_type->attributes()[0])); - attributes.push_back(new inverse_attribute("HasTextures", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcIndexedTextureMap_type, IFC4X3_RC4_IfcIndexedTextureMap_type->attributes()[0])); - IFC4X3_RC4_IfcTessellatedFaceSet_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("HasExternalReference", inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1])); - IFC4X3_RC4_IfcTimeSeries_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("Types", inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDefinesByType_type, IFC4X3_RC4_IfcRelDefinesByType_type->attributes()[1])); - IFC4X3_RC4_IfcTypeObject_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("OperatesOn", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProcess_type, IFC4X3_RC4_IfcRelAssignsToProcess_type->attributes()[0])); - IFC4X3_RC4_IfcTypeProcess_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ReferencedBy", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProduct_type, IFC4X3_RC4_IfcRelAssignsToProduct_type->attributes()[0])); - IFC4X3_RC4_IfcTypeProduct_type->set_inverse_attributes(attributes); - } - { - std::vector attributes; attributes.reserve(1); - attributes.push_back(new inverse_attribute("ResourceOf", inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToResource_type, IFC4X3_RC4_IfcRelAssignsToResource_type->attributes()[0])); - IFC4X3_RC4_IfcTypeResource_type->set_inverse_attributes(attributes); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC4_IfcActionRequest_type);defs.push_back(IFC4X3_RC4_IfcCostItem_type);defs.push_back(IFC4X3_RC4_IfcCostSchedule_type);defs.push_back(IFC4X3_RC4_IfcPerformanceHistory_type);defs.push_back(IFC4X3_RC4_IfcPermit_type);defs.push_back(IFC4X3_RC4_IfcProjectOrder_type);defs.push_back(IFC4X3_RC4_IfcWorkCalendar_type);defs.push_back(IFC4X3_RC4_IfcWorkControl_type); - IFC4X3_RC4_IfcControl_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcActor_type);defs.push_back(IFC4X3_RC4_IfcControl_type);defs.push_back(IFC4X3_RC4_IfcGroup_type);defs.push_back(IFC4X3_RC4_IfcProcess_type);defs.push_back(IFC4X3_RC4_IfcProduct_type);defs.push_back(IFC4X3_RC4_IfcResource_type); - IFC4X3_RC4_IfcObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC4_IfcActuator_type);defs.push_back(IFC4X3_RC4_IfcAlarm_type);defs.push_back(IFC4X3_RC4_IfcController_type);defs.push_back(IFC4X3_RC4_IfcFlowInstrument_type);defs.push_back(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type);defs.push_back(IFC4X3_RC4_IfcSensor_type);defs.push_back(IFC4X3_RC4_IfcUnitaryControlElement_type); - IFC4X3_RC4_IfcDistributionControlElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC4_IfcActuatorType_type);defs.push_back(IFC4X3_RC4_IfcAlarmType_type);defs.push_back(IFC4X3_RC4_IfcControllerType_type);defs.push_back(IFC4X3_RC4_IfcFlowInstrumentType_type);defs.push_back(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type);defs.push_back(IFC4X3_RC4_IfcSensorType_type);defs.push_back(IFC4X3_RC4_IfcUnitaryControlElementType_type); - IFC4X3_RC4_IfcDistributionControlElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcAdvancedBrep_type);defs.push_back(IFC4X3_RC4_IfcFacetedBrep_type); - IFC4X3_RC4_IfcManifoldSolidBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcAdvancedBrepWithVoids_type); - IFC4X3_RC4_IfcAdvancedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcAdvancedFace_type); - IFC4X3_RC4_IfcFaceSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC4_IfcAirTerminal_type);defs.push_back(IFC4X3_RC4_IfcAudioVisualAppliance_type);defs.push_back(IFC4X3_RC4_IfcCommunicationsAppliance_type);defs.push_back(IFC4X3_RC4_IfcElectricAppliance_type);defs.push_back(IFC4X3_RC4_IfcFireSuppressionTerminal_type);defs.push_back(IFC4X3_RC4_IfcLamp_type);defs.push_back(IFC4X3_RC4_IfcLightFixture_type);defs.push_back(IFC4X3_RC4_IfcLiquidTerminal_type);defs.push_back(IFC4X3_RC4_IfcMedicalDevice_type);defs.push_back(IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type);defs.push_back(IFC4X3_RC4_IfcOutlet_type);defs.push_back(IFC4X3_RC4_IfcSanitaryTerminal_type);defs.push_back(IFC4X3_RC4_IfcSignal_type);defs.push_back(IFC4X3_RC4_IfcSpaceHeater_type);defs.push_back(IFC4X3_RC4_IfcStackTerminal_type);defs.push_back(IFC4X3_RC4_IfcWasteTerminal_type); - IFC4X3_RC4_IfcFlowTerminal_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcAirTerminalBox_type);defs.push_back(IFC4X3_RC4_IfcDamper_type);defs.push_back(IFC4X3_RC4_IfcDistributionBoard_type);defs.push_back(IFC4X3_RC4_IfcElectricDistributionBoard_type);defs.push_back(IFC4X3_RC4_IfcElectricTimeControl_type);defs.push_back(IFC4X3_RC4_IfcFlowMeter_type);defs.push_back(IFC4X3_RC4_IfcProtectiveDevice_type);defs.push_back(IFC4X3_RC4_IfcSwitchingDevice_type);defs.push_back(IFC4X3_RC4_IfcValve_type); - IFC4X3_RC4_IfcFlowController_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcAirTerminalBoxType_type);defs.push_back(IFC4X3_RC4_IfcDamperType_type);defs.push_back(IFC4X3_RC4_IfcDistributionBoardType_type);defs.push_back(IFC4X3_RC4_IfcElectricDistributionBoardType_type);defs.push_back(IFC4X3_RC4_IfcElectricTimeControlType_type);defs.push_back(IFC4X3_RC4_IfcFlowMeterType_type);defs.push_back(IFC4X3_RC4_IfcProtectiveDeviceType_type);defs.push_back(IFC4X3_RC4_IfcSwitchingDeviceType_type);defs.push_back(IFC4X3_RC4_IfcValveType_type); - IFC4X3_RC4_IfcFlowControllerType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC4_IfcAirTerminalType_type);defs.push_back(IFC4X3_RC4_IfcAudioVisualApplianceType_type);defs.push_back(IFC4X3_RC4_IfcCommunicationsApplianceType_type);defs.push_back(IFC4X3_RC4_IfcElectricApplianceType_type);defs.push_back(IFC4X3_RC4_IfcFireSuppressionTerminalType_type);defs.push_back(IFC4X3_RC4_IfcLampType_type);defs.push_back(IFC4X3_RC4_IfcLightFixtureType_type);defs.push_back(IFC4X3_RC4_IfcLiquidTerminalType_type);defs.push_back(IFC4X3_RC4_IfcMedicalDeviceType_type);defs.push_back(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type);defs.push_back(IFC4X3_RC4_IfcOutletType_type);defs.push_back(IFC4X3_RC4_IfcSanitaryTerminalType_type);defs.push_back(IFC4X3_RC4_IfcSignalType_type);defs.push_back(IFC4X3_RC4_IfcSpaceHeaterType_type);defs.push_back(IFC4X3_RC4_IfcStackTerminalType_type);defs.push_back(IFC4X3_RC4_IfcWasteTerminalType_type); - IFC4X3_RC4_IfcFlowTerminalType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC4_IfcAirToAirHeatRecovery_type);defs.push_back(IFC4X3_RC4_IfcBoiler_type);defs.push_back(IFC4X3_RC4_IfcBurner_type);defs.push_back(IFC4X3_RC4_IfcChiller_type);defs.push_back(IFC4X3_RC4_IfcCoil_type);defs.push_back(IFC4X3_RC4_IfcCondenser_type);defs.push_back(IFC4X3_RC4_IfcCooledBeam_type);defs.push_back(IFC4X3_RC4_IfcCoolingTower_type);defs.push_back(IFC4X3_RC4_IfcElectricGenerator_type);defs.push_back(IFC4X3_RC4_IfcElectricMotor_type);defs.push_back(IFC4X3_RC4_IfcEngine_type);defs.push_back(IFC4X3_RC4_IfcEvaporativeCooler_type);defs.push_back(IFC4X3_RC4_IfcEvaporator_type);defs.push_back(IFC4X3_RC4_IfcHeatExchanger_type);defs.push_back(IFC4X3_RC4_IfcHumidifier_type);defs.push_back(IFC4X3_RC4_IfcMotorConnection_type);defs.push_back(IFC4X3_RC4_IfcSolarDevice_type);defs.push_back(IFC4X3_RC4_IfcTransformer_type);defs.push_back(IFC4X3_RC4_IfcTubeBundle_type);defs.push_back(IFC4X3_RC4_IfcUnitaryEquipment_type); - IFC4X3_RC4_IfcEnergyConversionDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(20); - defs.push_back(IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type);defs.push_back(IFC4X3_RC4_IfcBoilerType_type);defs.push_back(IFC4X3_RC4_IfcBurnerType_type);defs.push_back(IFC4X3_RC4_IfcChillerType_type);defs.push_back(IFC4X3_RC4_IfcCoilType_type);defs.push_back(IFC4X3_RC4_IfcCondenserType_type);defs.push_back(IFC4X3_RC4_IfcCooledBeamType_type);defs.push_back(IFC4X3_RC4_IfcCoolingTowerType_type);defs.push_back(IFC4X3_RC4_IfcElectricGeneratorType_type);defs.push_back(IFC4X3_RC4_IfcElectricMotorType_type);defs.push_back(IFC4X3_RC4_IfcEngineType_type);defs.push_back(IFC4X3_RC4_IfcEvaporativeCoolerType_type);defs.push_back(IFC4X3_RC4_IfcEvaporatorType_type);defs.push_back(IFC4X3_RC4_IfcHeatExchangerType_type);defs.push_back(IFC4X3_RC4_IfcHumidifierType_type);defs.push_back(IFC4X3_RC4_IfcMotorConnectionType_type);defs.push_back(IFC4X3_RC4_IfcSolarDeviceType_type);defs.push_back(IFC4X3_RC4_IfcTransformerType_type);defs.push_back(IFC4X3_RC4_IfcTubeBundleType_type);defs.push_back(IFC4X3_RC4_IfcUnitaryEquipmentType_type); - IFC4X3_RC4_IfcEnergyConversionDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcAlignment_type); - IFC4X3_RC4_IfcLinearPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcAlignmentCant_type);defs.push_back(IFC4X3_RC4_IfcAlignmentHorizontal_type);defs.push_back(IFC4X3_RC4_IfcAlignmentSegment_type);defs.push_back(IFC4X3_RC4_IfcAlignmentVertical_type); - IFC4X3_RC4_IfcLinearElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcAlignmentCantSegment_type);defs.push_back(IFC4X3_RC4_IfcAlignmentHorizontalSegment_type);defs.push_back(IFC4X3_RC4_IfcAlignmentVerticalSegment_type); - IFC4X3_RC4_IfcAlignmentParameterSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcAnnotation_type);defs.push_back(IFC4X3_RC4_IfcElement_type);defs.push_back(IFC4X3_RC4_IfcLinearElement_type);defs.push_back(IFC4X3_RC4_IfcPort_type);defs.push_back(IFC4X3_RC4_IfcPositioningElement_type);defs.push_back(IFC4X3_RC4_IfcProxy_type);defs.push_back(IFC4X3_RC4_IfcSpatialElement_type);defs.push_back(IFC4X3_RC4_IfcStructuralActivity_type);defs.push_back(IFC4X3_RC4_IfcStructuralItem_type); - IFC4X3_RC4_IfcProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(25); - defs.push_back(IFC4X3_RC4_IfcAnnotationFillArea_type);defs.push_back(IFC4X3_RC4_IfcBooleanResult_type);defs.push_back(IFC4X3_RC4_IfcBoundingBox_type);defs.push_back(IFC4X3_RC4_IfcCartesianPointList_type);defs.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator_type);defs.push_back(IFC4X3_RC4_IfcCsgPrimitive3D_type);defs.push_back(IFC4X3_RC4_IfcCurve_type);defs.push_back(IFC4X3_RC4_IfcDirection_type);defs.push_back(IFC4X3_RC4_IfcFaceBasedSurfaceModel_type);defs.push_back(IFC4X3_RC4_IfcFillAreaStyleHatching_type);defs.push_back(IFC4X3_RC4_IfcFillAreaStyleTiles_type);defs.push_back(IFC4X3_RC4_IfcGeometricSet_type);defs.push_back(IFC4X3_RC4_IfcHalfSpaceSolid_type);defs.push_back(IFC4X3_RC4_IfcLightSource_type);defs.push_back(IFC4X3_RC4_IfcPlacement_type);defs.push_back(IFC4X3_RC4_IfcPlanarExtent_type);defs.push_back(IFC4X3_RC4_IfcPoint_type);defs.push_back(IFC4X3_RC4_IfcSectionedSpine_type);defs.push_back(IFC4X3_RC4_IfcSegment_type);defs.push_back(IFC4X3_RC4_IfcShellBasedSurfaceModel_type);defs.push_back(IFC4X3_RC4_IfcSolidModel_type);defs.push_back(IFC4X3_RC4_IfcSurface_type);defs.push_back(IFC4X3_RC4_IfcTessellatedItem_type);defs.push_back(IFC4X3_RC4_IfcTextLiteral_type);defs.push_back(IFC4X3_RC4_IfcVector_type); - IFC4X3_RC4_IfcGeometricRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcApprovalRelationship_type);defs.push_back(IFC4X3_RC4_IfcCurrencyRelationship_type);defs.push_back(IFC4X3_RC4_IfcDocumentInformationRelationship_type);defs.push_back(IFC4X3_RC4_IfcExternalReferenceRelationship_type);defs.push_back(IFC4X3_RC4_IfcMaterialRelationship_type);defs.push_back(IFC4X3_RC4_IfcOrganizationRelationship_type);defs.push_back(IFC4X3_RC4_IfcPropertyDependencyRelationship_type);defs.push_back(IFC4X3_RC4_IfcResourceApprovalRelationship_type);defs.push_back(IFC4X3_RC4_IfcResourceConstraintRelationship_type); - IFC4X3_RC4_IfcResourceLevelRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcArbitraryClosedProfileDef_type);defs.push_back(IFC4X3_RC4_IfcArbitraryOpenProfileDef_type);defs.push_back(IFC4X3_RC4_IfcCompositeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcDerivedProfileDef_type);defs.push_back(IFC4X3_RC4_IfcOpenCrossProfileDef_type);defs.push_back(IFC4X3_RC4_IfcParameterizedProfileDef_type); - IFC4X3_RC4_IfcProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type); - IFC4X3_RC4_IfcArbitraryClosedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcAsset_type);defs.push_back(IFC4X3_RC4_IfcInventory_type);defs.push_back(IFC4X3_RC4_IfcStructuralLoadGroup_type);defs.push_back(IFC4X3_RC4_IfcStructuralResultGroup_type);defs.push_back(IFC4X3_RC4_IfcSystem_type); - IFC4X3_RC4_IfcGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcCShapeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcCircleProfileDef_type);defs.push_back(IFC4X3_RC4_IfcEllipseProfileDef_type);defs.push_back(IFC4X3_RC4_IfcIShapeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcLShapeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcRectangleProfileDef_type);defs.push_back(IFC4X3_RC4_IfcTShapeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcTrapeziumProfileDef_type);defs.push_back(IFC4X3_RC4_IfcUShapeProfileDef_type);defs.push_back(IFC4X3_RC4_IfcZShapeProfileDef_type); - IFC4X3_RC4_IfcParameterizedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcAxis1Placement_type);defs.push_back(IFC4X3_RC4_IfcAxis2Placement2D_type);defs.push_back(IFC4X3_RC4_IfcAxis2Placement3D_type);defs.push_back(IFC4X3_RC4_IfcAxis2PlacementLinear_type); - IFC4X3_RC4_IfcPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcBSplineCurve_type);defs.push_back(IFC4X3_RC4_IfcCompositeCurve_type);defs.push_back(IFC4X3_RC4_IfcIndexedPolyCurve_type);defs.push_back(IFC4X3_RC4_IfcPolyline_type);defs.push_back(IFC4X3_RC4_IfcTrimmedCurve_type); - IFC4X3_RC4_IfcBoundedCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcBSplineCurveWithKnots_type); - IFC4X3_RC4_IfcBSplineCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcBSplineSurface_type);defs.push_back(IFC4X3_RC4_IfcCurveBoundedPlane_type);defs.push_back(IFC4X3_RC4_IfcCurveBoundedSurface_type);defs.push_back(IFC4X3_RC4_IfcRectangularTrimmedSurface_type); - IFC4X3_RC4_IfcBoundedSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type); - IFC4X3_RC4_IfcBSplineSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(30); - defs.push_back(IFC4X3_RC4_IfcBeam_type);defs.push_back(IFC4X3_RC4_IfcBearing_type);defs.push_back(IFC4X3_RC4_IfcBuildingElementProxy_type);defs.push_back(IFC4X3_RC4_IfcChimney_type);defs.push_back(IFC4X3_RC4_IfcColumn_type);defs.push_back(IFC4X3_RC4_IfcCourse_type);defs.push_back(IFC4X3_RC4_IfcCovering_type);defs.push_back(IFC4X3_RC4_IfcCurtainWall_type);defs.push_back(IFC4X3_RC4_IfcDeepFoundation_type);defs.push_back(IFC4X3_RC4_IfcDoor_type);defs.push_back(IFC4X3_RC4_IfcEarthworksElement_type);defs.push_back(IFC4X3_RC4_IfcFooting_type);defs.push_back(IFC4X3_RC4_IfcKerb_type);defs.push_back(IFC4X3_RC4_IfcMember_type);defs.push_back(IFC4X3_RC4_IfcMooringDevice_type);defs.push_back(IFC4X3_RC4_IfcNavigationElement_type);defs.push_back(IFC4X3_RC4_IfcPavement_type);defs.push_back(IFC4X3_RC4_IfcPlate_type);defs.push_back(IFC4X3_RC4_IfcRail_type);defs.push_back(IFC4X3_RC4_IfcRailing_type);defs.push_back(IFC4X3_RC4_IfcRamp_type);defs.push_back(IFC4X3_RC4_IfcRampFlight_type);defs.push_back(IFC4X3_RC4_IfcRoof_type);defs.push_back(IFC4X3_RC4_IfcShadingDevice_type);defs.push_back(IFC4X3_RC4_IfcSlab_type);defs.push_back(IFC4X3_RC4_IfcStair_type);defs.push_back(IFC4X3_RC4_IfcStairFlight_type);defs.push_back(IFC4X3_RC4_IfcTrackElement_type);defs.push_back(IFC4X3_RC4_IfcWall_type);defs.push_back(IFC4X3_RC4_IfcWindow_type); - IFC4X3_RC4_IfcBuiltElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcBeamStandardCase_type); - IFC4X3_RC4_IfcBeam_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(29); - defs.push_back(IFC4X3_RC4_IfcBeamType_type);defs.push_back(IFC4X3_RC4_IfcBearingType_type);defs.push_back(IFC4X3_RC4_IfcBuildingElementProxyType_type);defs.push_back(IFC4X3_RC4_IfcChimneyType_type);defs.push_back(IFC4X3_RC4_IfcColumnType_type);defs.push_back(IFC4X3_RC4_IfcCourseType_type);defs.push_back(IFC4X3_RC4_IfcCoveringType_type);defs.push_back(IFC4X3_RC4_IfcCurtainWallType_type);defs.push_back(IFC4X3_RC4_IfcDeepFoundationType_type);defs.push_back(IFC4X3_RC4_IfcDoorType_type);defs.push_back(IFC4X3_RC4_IfcFootingType_type);defs.push_back(IFC4X3_RC4_IfcKerbType_type);defs.push_back(IFC4X3_RC4_IfcMemberType_type);defs.push_back(IFC4X3_RC4_IfcMooringDeviceType_type);defs.push_back(IFC4X3_RC4_IfcNavigationElementType_type);defs.push_back(IFC4X3_RC4_IfcPavementType_type);defs.push_back(IFC4X3_RC4_IfcPlateType_type);defs.push_back(IFC4X3_RC4_IfcRailType_type);defs.push_back(IFC4X3_RC4_IfcRailingType_type);defs.push_back(IFC4X3_RC4_IfcRampFlightType_type);defs.push_back(IFC4X3_RC4_IfcRampType_type);defs.push_back(IFC4X3_RC4_IfcRoofType_type);defs.push_back(IFC4X3_RC4_IfcShadingDeviceType_type);defs.push_back(IFC4X3_RC4_IfcSlabType_type);defs.push_back(IFC4X3_RC4_IfcStairFlightType_type);defs.push_back(IFC4X3_RC4_IfcStairType_type);defs.push_back(IFC4X3_RC4_IfcTrackElementType_type);defs.push_back(IFC4X3_RC4_IfcWallType_type);defs.push_back(IFC4X3_RC4_IfcWindowType_type); - IFC4X3_RC4_IfcBuiltElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcBlobTexture_type);defs.push_back(IFC4X3_RC4_IfcImageTexture_type);defs.push_back(IFC4X3_RC4_IfcPixelTexture_type); - IFC4X3_RC4_IfcSurfaceTexture_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcBlock_type);defs.push_back(IFC4X3_RC4_IfcRectangularPyramid_type);defs.push_back(IFC4X3_RC4_IfcRightCircularCone_type);defs.push_back(IFC4X3_RC4_IfcRightCircularCylinder_type);defs.push_back(IFC4X3_RC4_IfcSphere_type); - IFC4X3_RC4_IfcCsgPrimitive3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcBooleanClippingResult_type); - IFC4X3_RC4_IfcBooleanResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcBorehole_type);defs.push_back(IFC4X3_RC4_IfcGeomodel_type);defs.push_back(IFC4X3_RC4_IfcGeoslice_type); - IFC4X3_RC4_IfcGeotechnicalAssembly_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcBoundaryCurve_type); - IFC4X3_RC4_IfcCompositeCurveOnSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcBoundaryEdgeCondition_type);defs.push_back(IFC4X3_RC4_IfcBoundaryFaceCondition_type);defs.push_back(IFC4X3_RC4_IfcBoundaryNodeCondition_type); - IFC4X3_RC4_IfcBoundaryCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type); - IFC4X3_RC4_IfcBoundaryNodeCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC4_IfcBoundedCurve_type);defs.push_back(IFC4X3_RC4_IfcConic_type);defs.push_back(IFC4X3_RC4_IfcLine_type);defs.push_back(IFC4X3_RC4_IfcOffsetCurve_type);defs.push_back(IFC4X3_RC4_IfcPcurve_type);defs.push_back(IFC4X3_RC4_IfcPolynomialCurve_type);defs.push_back(IFC4X3_RC4_IfcSpiral_type);defs.push_back(IFC4X3_RC4_IfcSurfaceCurve_type); - IFC4X3_RC4_IfcCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcBoundedSurface_type);defs.push_back(IFC4X3_RC4_IfcElementarySurface_type);defs.push_back(IFC4X3_RC4_IfcSectionedSurface_type);defs.push_back(IFC4X3_RC4_IfcSweptSurface_type); - IFC4X3_RC4_IfcSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcBoxedHalfSpace_type);defs.push_back(IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type); - IFC4X3_RC4_IfcHalfSpaceSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcBridge_type);defs.push_back(IFC4X3_RC4_IfcBuilding_type);defs.push_back(IFC4X3_RC4_IfcMarineFacility_type);defs.push_back(IFC4X3_RC4_IfcRailway_type);defs.push_back(IFC4X3_RC4_IfcRoad_type); - IFC4X3_RC4_IfcFacility_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcBuildingElementPart_type);defs.push_back(IFC4X3_RC4_IfcDiscreteAccessory_type);defs.push_back(IFC4X3_RC4_IfcFastener_type);defs.push_back(IFC4X3_RC4_IfcImpactProtectionDevice_type);defs.push_back(IFC4X3_RC4_IfcMechanicalFastener_type);defs.push_back(IFC4X3_RC4_IfcReinforcingElement_type);defs.push_back(IFC4X3_RC4_IfcSign_type);defs.push_back(IFC4X3_RC4_IfcVibrationDamper_type);defs.push_back(IFC4X3_RC4_IfcVibrationIsolator_type); - IFC4X3_RC4_IfcElementComponent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcBuildingElementPartType_type);defs.push_back(IFC4X3_RC4_IfcDiscreteAccessoryType_type);defs.push_back(IFC4X3_RC4_IfcFastenerType_type);defs.push_back(IFC4X3_RC4_IfcImpactProtectionDeviceType_type);defs.push_back(IFC4X3_RC4_IfcMechanicalFastenerType_type);defs.push_back(IFC4X3_RC4_IfcReinforcingElementType_type);defs.push_back(IFC4X3_RC4_IfcSignType_type);defs.push_back(IFC4X3_RC4_IfcVibrationDamperType_type);defs.push_back(IFC4X3_RC4_IfcVibrationIsolatorType_type); - IFC4X3_RC4_IfcElementComponentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcBuildingStorey_type);defs.push_back(IFC4X3_RC4_IfcFacility_type);defs.push_back(IFC4X3_RC4_IfcFacilityPart_type);defs.push_back(IFC4X3_RC4_IfcSite_type);defs.push_back(IFC4X3_RC4_IfcSpace_type); - IFC4X3_RC4_IfcSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcBuildingSystem_type);defs.push_back(IFC4X3_RC4_IfcBuiltSystem_type);defs.push_back(IFC4X3_RC4_IfcDistributionSystem_type);defs.push_back(IFC4X3_RC4_IfcStructuralAnalysisModel_type);defs.push_back(IFC4X3_RC4_IfcZone_type); - IFC4X3_RC4_IfcSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(11); - defs.push_back(IFC4X3_RC4_IfcBuiltElement_type);defs.push_back(IFC4X3_RC4_IfcCivilElement_type);defs.push_back(IFC4X3_RC4_IfcDistributionElement_type);defs.push_back(IFC4X3_RC4_IfcElementAssembly_type);defs.push_back(IFC4X3_RC4_IfcElementComponent_type);defs.push_back(IFC4X3_RC4_IfcFeatureElement_type);defs.push_back(IFC4X3_RC4_IfcFurnishingElement_type);defs.push_back(IFC4X3_RC4_IfcGeographicElement_type);defs.push_back(IFC4X3_RC4_IfcGeotechnicalElement_type);defs.push_back(IFC4X3_RC4_IfcTransportElement_type);defs.push_back(IFC4X3_RC4_IfcVirtualElement_type); - IFC4X3_RC4_IfcElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(8); - defs.push_back(IFC4X3_RC4_IfcBuiltElementType_type);defs.push_back(IFC4X3_RC4_IfcCivilElementType_type);defs.push_back(IFC4X3_RC4_IfcDistributionElementType_type);defs.push_back(IFC4X3_RC4_IfcElementAssemblyType_type);defs.push_back(IFC4X3_RC4_IfcElementComponentType_type);defs.push_back(IFC4X3_RC4_IfcFurnishingElementType_type);defs.push_back(IFC4X3_RC4_IfcGeographicElementType_type);defs.push_back(IFC4X3_RC4_IfcTransportElementType_type); - IFC4X3_RC4_IfcElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcCableCarrierFitting_type);defs.push_back(IFC4X3_RC4_IfcCableFitting_type);defs.push_back(IFC4X3_RC4_IfcDuctFitting_type);defs.push_back(IFC4X3_RC4_IfcJunctionBox_type);defs.push_back(IFC4X3_RC4_IfcPipeFitting_type); - IFC4X3_RC4_IfcFlowFitting_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcCableCarrierFittingType_type);defs.push_back(IFC4X3_RC4_IfcCableFittingType_type);defs.push_back(IFC4X3_RC4_IfcDuctFittingType_type);defs.push_back(IFC4X3_RC4_IfcJunctionBoxType_type);defs.push_back(IFC4X3_RC4_IfcPipeFittingType_type); - IFC4X3_RC4_IfcFlowFittingType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcCableCarrierSegment_type);defs.push_back(IFC4X3_RC4_IfcCableSegment_type);defs.push_back(IFC4X3_RC4_IfcConveyorSegment_type);defs.push_back(IFC4X3_RC4_IfcDuctSegment_type);defs.push_back(IFC4X3_RC4_IfcPipeSegment_type); - IFC4X3_RC4_IfcFlowSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcCableCarrierSegmentType_type);defs.push_back(IFC4X3_RC4_IfcCableSegmentType_type);defs.push_back(IFC4X3_RC4_IfcConveyorSegmentType_type);defs.push_back(IFC4X3_RC4_IfcDuctSegmentType_type);defs.push_back(IFC4X3_RC4_IfcPipeSegmentType_type); - IFC4X3_RC4_IfcFlowSegmentType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcCaissonFoundation_type);defs.push_back(IFC4X3_RC4_IfcPile_type); - IFC4X3_RC4_IfcDeepFoundation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcCaissonFoundationType_type);defs.push_back(IFC4X3_RC4_IfcPileType_type); - IFC4X3_RC4_IfcDeepFoundationType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcCartesianPoint_type);defs.push_back(IFC4X3_RC4_IfcPointByDistanceExpression_type);defs.push_back(IFC4X3_RC4_IfcPointOnCurve_type);defs.push_back(IFC4X3_RC4_IfcPointOnSurface_type); - IFC4X3_RC4_IfcPoint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcCartesianPointList2D_type);defs.push_back(IFC4X3_RC4_IfcCartesianPointList3D_type); - IFC4X3_RC4_IfcCartesianPointList_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator2D_type);defs.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator3D_type); - IFC4X3_RC4_IfcCartesianTransformationOperator_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type); - IFC4X3_RC4_IfcCartesianTransformationOperator2D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type); - IFC4X3_RC4_IfcCartesianTransformationOperator3D_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcCenterLineProfileDef_type); - IFC4X3_RC4_IfcArbitraryOpenProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcCircle_type);defs.push_back(IFC4X3_RC4_IfcEllipse_type); - IFC4X3_RC4_IfcConic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcCircleHollowProfileDef_type); - IFC4X3_RC4_IfcCircleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcClassification_type);defs.push_back(IFC4X3_RC4_IfcDocumentInformation_type);defs.push_back(IFC4X3_RC4_IfcLibraryInformation_type); - IFC4X3_RC4_IfcExternalInformation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcClassificationReference_type);defs.push_back(IFC4X3_RC4_IfcDocumentReference_type);defs.push_back(IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type);defs.push_back(IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type);defs.push_back(IFC4X3_RC4_IfcExternallyDefinedTextFont_type);defs.push_back(IFC4X3_RC4_IfcLibraryReference_type); - IFC4X3_RC4_IfcExternalReference_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcClosedShell_type);defs.push_back(IFC4X3_RC4_IfcOpenShell_type); - IFC4X3_RC4_IfcConnectedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcClothoid_type);defs.push_back(IFC4X3_RC4_IfcCosine_type);defs.push_back(IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type);defs.push_back(IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type);defs.push_back(IFC4X3_RC4_IfcSine_type);defs.push_back(IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type); - IFC4X3_RC4_IfcSpiral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcColourRgb_type); - IFC4X3_RC4_IfcColourSpecification_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(17); - defs.push_back(IFC4X3_RC4_IfcColourRgbList_type);defs.push_back(IFC4X3_RC4_IfcColourSpecification_type);defs.push_back(IFC4X3_RC4_IfcCurveStyleFont_type);defs.push_back(IFC4X3_RC4_IfcCurveStyleFontAndScaling_type);defs.push_back(IFC4X3_RC4_IfcCurveStyleFontPattern_type);defs.push_back(IFC4X3_RC4_IfcIndexedColourMap_type);defs.push_back(IFC4X3_RC4_IfcPreDefinedItem_type);defs.push_back(IFC4X3_RC4_IfcSurfaceStyleLighting_type);defs.push_back(IFC4X3_RC4_IfcSurfaceStyleRefraction_type);defs.push_back(IFC4X3_RC4_IfcSurfaceStyleShading_type);defs.push_back(IFC4X3_RC4_IfcSurfaceStyleWithTextures_type);defs.push_back(IFC4X3_RC4_IfcSurfaceTexture_type);defs.push_back(IFC4X3_RC4_IfcTextStyleForDefinedFont_type);defs.push_back(IFC4X3_RC4_IfcTextStyleTextModel_type);defs.push_back(IFC4X3_RC4_IfcTextureCoordinate_type);defs.push_back(IFC4X3_RC4_IfcTextureVertex_type);defs.push_back(IFC4X3_RC4_IfcTextureVertexList_type); - IFC4X3_RC4_IfcPresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcColumnStandardCase_type); - IFC4X3_RC4_IfcColumn_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcComplexProperty_type);defs.push_back(IFC4X3_RC4_IfcSimpleProperty_type); - IFC4X3_RC4_IfcProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcComplexPropertyTemplate_type);defs.push_back(IFC4X3_RC4_IfcSimplePropertyTemplate_type); - IFC4X3_RC4_IfcPropertyTemplate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcCompositeCurveOnSurface_type);defs.push_back(IFC4X3_RC4_IfcGradientCurve_type);defs.push_back(IFC4X3_RC4_IfcSegmentedReferenceCurve_type); - IFC4X3_RC4_IfcCompositeCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcCompositeCurveSegment_type);defs.push_back(IFC4X3_RC4_IfcCurveSegment_type); - IFC4X3_RC4_IfcSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcCompressor_type);defs.push_back(IFC4X3_RC4_IfcFan_type);defs.push_back(IFC4X3_RC4_IfcPump_type); - IFC4X3_RC4_IfcFlowMovingDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcCompressorType_type);defs.push_back(IFC4X3_RC4_IfcFanType_type);defs.push_back(IFC4X3_RC4_IfcPumpType_type); - IFC4X3_RC4_IfcFlowMovingDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC4_IfcConnectedFaceSet_type);defs.push_back(IFC4X3_RC4_IfcEdge_type);defs.push_back(IFC4X3_RC4_IfcFace_type);defs.push_back(IFC4X3_RC4_IfcFaceBound_type);defs.push_back(IFC4X3_RC4_IfcLoop_type);defs.push_back(IFC4X3_RC4_IfcPath_type);defs.push_back(IFC4X3_RC4_IfcVertex_type); - IFC4X3_RC4_IfcTopologicalRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcConnectionCurveGeometry_type);defs.push_back(IFC4X3_RC4_IfcConnectionPointGeometry_type);defs.push_back(IFC4X3_RC4_IfcConnectionSurfaceGeometry_type);defs.push_back(IFC4X3_RC4_IfcConnectionVolumeGeometry_type); - IFC4X3_RC4_IfcConnectionGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcConnectionPointEccentricity_type); - IFC4X3_RC4_IfcConnectionPointGeometry_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcConstructionEquipmentResource_type);defs.push_back(IFC4X3_RC4_IfcConstructionMaterialResource_type);defs.push_back(IFC4X3_RC4_IfcConstructionProductResource_type);defs.push_back(IFC4X3_RC4_IfcCrewResource_type);defs.push_back(IFC4X3_RC4_IfcLaborResource_type);defs.push_back(IFC4X3_RC4_IfcSubContractResource_type); - IFC4X3_RC4_IfcConstructionResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcConstructionEquipmentResourceType_type);defs.push_back(IFC4X3_RC4_IfcConstructionMaterialResourceType_type);defs.push_back(IFC4X3_RC4_IfcConstructionProductResourceType_type);defs.push_back(IFC4X3_RC4_IfcCrewResourceType_type);defs.push_back(IFC4X3_RC4_IfcLaborResourceType_type);defs.push_back(IFC4X3_RC4_IfcSubContractResourceType_type); - IFC4X3_RC4_IfcConstructionResourceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcConstructionResource_type); - IFC4X3_RC4_IfcResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcConstructionResourceType_type); - IFC4X3_RC4_IfcTypeResource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcContext_type);defs.push_back(IFC4X3_RC4_IfcObject_type);defs.push_back(IFC4X3_RC4_IfcTypeObject_type); - IFC4X3_RC4_IfcObjectDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcContextDependentUnit_type);defs.push_back(IFC4X3_RC4_IfcConversionBasedUnit_type);defs.push_back(IFC4X3_RC4_IfcSIUnit_type); - IFC4X3_RC4_IfcNamedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type); - IFC4X3_RC4_IfcConversionBasedUnit_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcCostValue_type); - IFC4X3_RC4_IfcAppliedValue_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcCsgSolid_type);defs.push_back(IFC4X3_RC4_IfcManifoldSolidBrep_type);defs.push_back(IFC4X3_RC4_IfcSectionedSolid_type);defs.push_back(IFC4X3_RC4_IfcSweptAreaSolid_type);defs.push_back(IFC4X3_RC4_IfcSweptDiskSolid_type); - IFC4X3_RC4_IfcSolidModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcCurveStyle_type);defs.push_back(IFC4X3_RC4_IfcFillAreaStyle_type);defs.push_back(IFC4X3_RC4_IfcSurfaceStyle_type);defs.push_back(IFC4X3_RC4_IfcTextStyle_type); - IFC4X3_RC4_IfcPresentationStyle_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcCylindricalSurface_type);defs.push_back(IFC4X3_RC4_IfcPlane_type);defs.push_back(IFC4X3_RC4_IfcSphericalSurface_type);defs.push_back(IFC4X3_RC4_IfcToroidalSurface_type); - IFC4X3_RC4_IfcElementarySurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type);defs.push_back(IFC4X3_RC4_IfcExtrudedAreaSolid_type);defs.push_back(IFC4X3_RC4_IfcRevolvedAreaSolid_type); - IFC4X3_RC4_IfcSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type); - IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcDistributionChamberElement_type);defs.push_back(IFC4X3_RC4_IfcEnergyConversionDevice_type);defs.push_back(IFC4X3_RC4_IfcFlowController_type);defs.push_back(IFC4X3_RC4_IfcFlowFitting_type);defs.push_back(IFC4X3_RC4_IfcFlowMovingDevice_type);defs.push_back(IFC4X3_RC4_IfcFlowSegment_type);defs.push_back(IFC4X3_RC4_IfcFlowStorageDevice_type);defs.push_back(IFC4X3_RC4_IfcFlowTerminal_type);defs.push_back(IFC4X3_RC4_IfcFlowTreatmentDevice_type); - IFC4X3_RC4_IfcDistributionFlowElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(9); - defs.push_back(IFC4X3_RC4_IfcDistributionChamberElementType_type);defs.push_back(IFC4X3_RC4_IfcEnergyConversionDeviceType_type);defs.push_back(IFC4X3_RC4_IfcFlowControllerType_type);defs.push_back(IFC4X3_RC4_IfcFlowFittingType_type);defs.push_back(IFC4X3_RC4_IfcFlowMovingDeviceType_type);defs.push_back(IFC4X3_RC4_IfcFlowSegmentType_type);defs.push_back(IFC4X3_RC4_IfcFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC4_IfcFlowTerminalType_type);defs.push_back(IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); - IFC4X3_RC4_IfcDistributionFlowElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcDistributionCircuit_type); - IFC4X3_RC4_IfcDistributionSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcDistributionControlElement_type);defs.push_back(IFC4X3_RC4_IfcDistributionFlowElement_type); - IFC4X3_RC4_IfcDistributionElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcDistributionControlElementType_type);defs.push_back(IFC4X3_RC4_IfcDistributionFlowElementType_type); - IFC4X3_RC4_IfcDistributionElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcDistributionPort_type); - IFC4X3_RC4_IfcPort_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcDoorLiningProperties_type);defs.push_back(IFC4X3_RC4_IfcDoorPanelProperties_type);defs.push_back(IFC4X3_RC4_IfcPermeableCoveringProperties_type);defs.push_back(IFC4X3_RC4_IfcReinforcementDefinitionProperties_type);defs.push_back(IFC4X3_RC4_IfcWindowLiningProperties_type);defs.push_back(IFC4X3_RC4_IfcWindowPanelProperties_type); - IFC4X3_RC4_IfcPreDefinedPropertySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcDoorStandardCase_type); - IFC4X3_RC4_IfcDoor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcDoorStyle_type);defs.push_back(IFC4X3_RC4_IfcElementType_type);defs.push_back(IFC4X3_RC4_IfcSpatialElementType_type);defs.push_back(IFC4X3_RC4_IfcWindowStyle_type); - IFC4X3_RC4_IfcTypeProduct_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcDraughtingPreDefinedColour_type); - IFC4X3_RC4_IfcPreDefinedColour_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type); - IFC4X3_RC4_IfcPreDefinedCurveFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcDuctSilencer_type);defs.push_back(IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type);defs.push_back(IFC4X3_RC4_IfcFilter_type);defs.push_back(IFC4X3_RC4_IfcInterceptor_type); - IFC4X3_RC4_IfcFlowTreatmentDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcDuctSilencerType_type);defs.push_back(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type);defs.push_back(IFC4X3_RC4_IfcFilterType_type);defs.push_back(IFC4X3_RC4_IfcInterceptorType_type); - IFC4X3_RC4_IfcFlowTreatmentDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcEarthworksCut_type);defs.push_back(IFC4X3_RC4_IfcOpeningElement_type);defs.push_back(IFC4X3_RC4_IfcVoidingFeature_type); - IFC4X3_RC4_IfcFeatureElementSubtraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcEarthworksFill_type);defs.push_back(IFC4X3_RC4_IfcReinforcedSoil_type); - IFC4X3_RC4_IfcEarthworksElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcEdgeCurve_type);defs.push_back(IFC4X3_RC4_IfcOrientedEdge_type);defs.push_back(IFC4X3_RC4_IfcSubedge_type); - IFC4X3_RC4_IfcEdge_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcEdgeLoop_type);defs.push_back(IFC4X3_RC4_IfcPolyLoop_type);defs.push_back(IFC4X3_RC4_IfcVertexLoop_type); - IFC4X3_RC4_IfcLoop_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcElectricFlowStorageDevice_type);defs.push_back(IFC4X3_RC4_IfcTank_type); - IFC4X3_RC4_IfcFlowStorageDevice_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type);defs.push_back(IFC4X3_RC4_IfcTankType_type); - IFC4X3_RC4_IfcFlowStorageDeviceType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcElementQuantity_type); - IFC4X3_RC4_IfcQuantitySet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcEvent_type);defs.push_back(IFC4X3_RC4_IfcProcedure_type);defs.push_back(IFC4X3_RC4_IfcTask_type); - IFC4X3_RC4_IfcProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcEventTime_type);defs.push_back(IFC4X3_RC4_IfcLagTime_type);defs.push_back(IFC4X3_RC4_IfcResourceTime_type);defs.push_back(IFC4X3_RC4_IfcTaskTime_type);defs.push_back(IFC4X3_RC4_IfcWorkTime_type); - IFC4X3_RC4_IfcSchedulingTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcEventType_type);defs.push_back(IFC4X3_RC4_IfcProcedureType_type);defs.push_back(IFC4X3_RC4_IfcTaskType_type); - IFC4X3_RC4_IfcTypeProcess_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcExtendedProperties_type);defs.push_back(IFC4X3_RC4_IfcPreDefinedProperties_type);defs.push_back(IFC4X3_RC4_IfcProperty_type);defs.push_back(IFC4X3_RC4_IfcPropertyEnumeration_type); - IFC4X3_RC4_IfcPropertyAbstraction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcExternalSpatialElement_type); - IFC4X3_RC4_IfcExternalSpatialStructureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcExternalSpatialStructureElement_type);defs.push_back(IFC4X3_RC4_IfcSpatialStructureElement_type);defs.push_back(IFC4X3_RC4_IfcSpatialZone_type); - IFC4X3_RC4_IfcSpatialElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type); - IFC4X3_RC4_IfcExtrudedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcFaceOuterBound_type); - IFC4X3_RC4_IfcFaceBound_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcFaceSurface_type); - IFC4X3_RC4_IfcFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcFacetedBrepWithVoids_type); - IFC4X3_RC4_IfcFacetedBrep_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcFailureConnectionCondition_type);defs.push_back(IFC4X3_RC4_IfcSlippageConnectionCondition_type); - IFC4X3_RC4_IfcStructuralConnectionCondition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcFeatureElementAddition_type);defs.push_back(IFC4X3_RC4_IfcFeatureElementSubtraction_type);defs.push_back(IFC4X3_RC4_IfcSurfaceFeature_type); - IFC4X3_RC4_IfcFeatureElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type);defs.push_back(IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type); - IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcFurniture_type);defs.push_back(IFC4X3_RC4_IfcSystemFurnitureElement_type); - IFC4X3_RC4_IfcFurnishingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcFurnitureType_type);defs.push_back(IFC4X3_RC4_IfcSystemFurnitureElementType_type); - IFC4X3_RC4_IfcFurnishingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcGeometricCurveSet_type); - IFC4X3_RC4_IfcGeometricSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcGeometricRepresentationContext_type); - IFC4X3_RC4_IfcRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcGeometricRepresentationItem_type);defs.push_back(IFC4X3_RC4_IfcMappedItem_type);defs.push_back(IFC4X3_RC4_IfcStyledItem_type);defs.push_back(IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - IFC4X3_RC4_IfcRepresentationItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcGeometricRepresentationSubContext_type); - IFC4X3_RC4_IfcGeometricRepresentationContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcGeotechnicalAssembly_type);defs.push_back(IFC4X3_RC4_IfcGeotechnicalStratum_type); - IFC4X3_RC4_IfcGeotechnicalElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcGrid_type);defs.push_back(IFC4X3_RC4_IfcLinearPositioningElement_type);defs.push_back(IFC4X3_RC4_IfcReferent_type); - IFC4X3_RC4_IfcPositioningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcGridPlacement_type);defs.push_back(IFC4X3_RC4_IfcLinearPlacement_type);defs.push_back(IFC4X3_RC4_IfcLocalPlacement_type); - IFC4X3_RC4_IfcObjectPlacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcIndexedPolygonalFace_type);defs.push_back(IFC4X3_RC4_IfcTessellatedFaceSet_type); - IFC4X3_RC4_IfcTessellatedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type); - IFC4X3_RC4_IfcIndexedPolygonalFace_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcIndexedTextureMap_type);defs.push_back(IFC4X3_RC4_IfcTextureCoordinateGenerator_type);defs.push_back(IFC4X3_RC4_IfcTextureMap_type); - IFC4X3_RC4_IfcTextureCoordinate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcIndexedTriangleTextureMap_type); - IFC4X3_RC4_IfcIndexedTextureMap_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcIntersectionCurve_type);defs.push_back(IFC4X3_RC4_IfcSeamCurve_type); - IFC4X3_RC4_IfcSurfaceCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcIrregularTimeSeries_type);defs.push_back(IFC4X3_RC4_IfcRegularTimeSeries_type); - IFC4X3_RC4_IfcTimeSeries_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcLightSourceAmbient_type);defs.push_back(IFC4X3_RC4_IfcLightSourceDirectional_type);defs.push_back(IFC4X3_RC4_IfcLightSourceGoniometric_type);defs.push_back(IFC4X3_RC4_IfcLightSourcePositional_type); - IFC4X3_RC4_IfcLightSource_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcLightSourceSpot_type); - IFC4X3_RC4_IfcLightSourcePositional_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcMapConversion_type); - IFC4X3_RC4_IfcCoordinateOperation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC4_IfcMaterial_type);defs.push_back(IFC4X3_RC4_IfcMaterialConstituent_type);defs.push_back(IFC4X3_RC4_IfcMaterialConstituentSet_type);defs.push_back(IFC4X3_RC4_IfcMaterialLayer_type);defs.push_back(IFC4X3_RC4_IfcMaterialLayerSet_type);defs.push_back(IFC4X3_RC4_IfcMaterialProfile_type);defs.push_back(IFC4X3_RC4_IfcMaterialProfileSet_type); - IFC4X3_RC4_IfcMaterialDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type);defs.push_back(IFC4X3_RC4_IfcProductDefinitionShape_type); - IFC4X3_RC4_IfcProductRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcMaterialLayerSetUsage_type);defs.push_back(IFC4X3_RC4_IfcMaterialProfileSetUsage_type); - IFC4X3_RC4_IfcMaterialUsageDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcMaterialLayerWithOffsets_type); - IFC4X3_RC4_IfcMaterialLayer_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type); - IFC4X3_RC4_IfcMaterialProfileSetUsage_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcMaterialProfileWithOffsets_type); - IFC4X3_RC4_IfcMaterialProfile_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcMaterialProperties_type);defs.push_back(IFC4X3_RC4_IfcProfileProperties_type); - IFC4X3_RC4_IfcExtendedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcMemberStandardCase_type); - IFC4X3_RC4_IfcMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcMetric_type);defs.push_back(IFC4X3_RC4_IfcObjective_type); - IFC4X3_RC4_IfcConstraint_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcMirroredProfileDef_type); - IFC4X3_RC4_IfcDerivedProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcObjectDefinition_type);defs.push_back(IFC4X3_RC4_IfcPropertyDefinition_type);defs.push_back(IFC4X3_RC4_IfcRelationship_type); - IFC4X3_RC4_IfcRoot_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcOccupant_type); - IFC4X3_RC4_IfcActor_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcOffsetCurve2D_type);defs.push_back(IFC4X3_RC4_IfcOffsetCurve3D_type);defs.push_back(IFC4X3_RC4_IfcOffsetCurveByDistances_type); - IFC4X3_RC4_IfcOffsetCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcOpeningStandardCase_type); - IFC4X3_RC4_IfcOpeningElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcOuterBoundaryCurve_type); - IFC4X3_RC4_IfcBoundaryCurve_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcPhysicalComplexQuantity_type);defs.push_back(IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - IFC4X3_RC4_IfcPhysicalQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcPlanarBox_type); - IFC4X3_RC4_IfcPlanarExtent_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcPlant_type); - IFC4X3_RC4_IfcGeographicElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcPlateStandardCase_type); - IFC4X3_RC4_IfcPlate_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcPolygonalFaceSet_type);defs.push_back(IFC4X3_RC4_IfcTriangulatedFaceSet_type); - IFC4X3_RC4_IfcTessellatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcPostalAddress_type);defs.push_back(IFC4X3_RC4_IfcTelecomAddress_type); - IFC4X3_RC4_IfcAddress_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcPreDefinedColour_type);defs.push_back(IFC4X3_RC4_IfcPreDefinedCurveFont_type);defs.push_back(IFC4X3_RC4_IfcPreDefinedTextFont_type); - IFC4X3_RC4_IfcPreDefinedItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcPreDefinedPropertySet_type);defs.push_back(IFC4X3_RC4_IfcPropertySet_type);defs.push_back(IFC4X3_RC4_IfcQuantitySet_type); - IFC4X3_RC4_IfcPropertySetDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcPresentationLayerWithStyle_type); - IFC4X3_RC4_IfcPresentationLayerAssignment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcProject_type);defs.push_back(IFC4X3_RC4_IfcProjectLibrary_type); - IFC4X3_RC4_IfcContext_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcProjectedCRS_type); - IFC4X3_RC4_IfcCoordinateReferenceSystem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcProjectionElement_type); - IFC4X3_RC4_IfcFeatureElementAddition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcPropertyBoundedValue_type);defs.push_back(IFC4X3_RC4_IfcPropertyEnumeratedValue_type);defs.push_back(IFC4X3_RC4_IfcPropertyListValue_type);defs.push_back(IFC4X3_RC4_IfcPropertyReferenceValue_type);defs.push_back(IFC4X3_RC4_IfcPropertySingleValue_type);defs.push_back(IFC4X3_RC4_IfcPropertyTableValue_type); - IFC4X3_RC4_IfcSimpleProperty_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcPropertySetDefinition_type);defs.push_back(IFC4X3_RC4_IfcPropertyTemplateDefinition_type); - IFC4X3_RC4_IfcPropertyDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcPropertySetTemplate_type);defs.push_back(IFC4X3_RC4_IfcPropertyTemplate_type); - IFC4X3_RC4_IfcPropertyTemplateDefinition_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcQuantityArea_type);defs.push_back(IFC4X3_RC4_IfcQuantityCount_type);defs.push_back(IFC4X3_RC4_IfcQuantityLength_type);defs.push_back(IFC4X3_RC4_IfcQuantityTime_type);defs.push_back(IFC4X3_RC4_IfcQuantityVolume_type);defs.push_back(IFC4X3_RC4_IfcQuantityWeight_type); - IFC4X3_RC4_IfcPhysicalSimpleQuantity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type); - IFC4X3_RC4_IfcBSplineCurveWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type); - IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcRectangleHollowProfileDef_type);defs.push_back(IFC4X3_RC4_IfcRoundedRectangleProfileDef_type); - IFC4X3_RC4_IfcRectangleProfileDef_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcReinforcementBarProperties_type);defs.push_back(IFC4X3_RC4_IfcSectionProperties_type);defs.push_back(IFC4X3_RC4_IfcSectionReinforcementProperties_type); - IFC4X3_RC4_IfcPreDefinedProperties_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcReinforcingBar_type);defs.push_back(IFC4X3_RC4_IfcReinforcingMesh_type);defs.push_back(IFC4X3_RC4_IfcTendon_type);defs.push_back(IFC4X3_RC4_IfcTendonAnchor_type);defs.push_back(IFC4X3_RC4_IfcTendonConduit_type); - IFC4X3_RC4_IfcReinforcingElement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcReinforcingBarType_type);defs.push_back(IFC4X3_RC4_IfcReinforcingMeshType_type);defs.push_back(IFC4X3_RC4_IfcTendonAnchorType_type);defs.push_back(IFC4X3_RC4_IfcTendonConduitType_type);defs.push_back(IFC4X3_RC4_IfcTendonType_type); - IFC4X3_RC4_IfcReinforcingElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcRelAdheresToElement_type);defs.push_back(IFC4X3_RC4_IfcRelAggregates_type);defs.push_back(IFC4X3_RC4_IfcRelNests_type);defs.push_back(IFC4X3_RC4_IfcRelProjectsElement_type);defs.push_back(IFC4X3_RC4_IfcRelVoidsElement_type); - IFC4X3_RC4_IfcRelDecomposes_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcRelAssigns_type);defs.push_back(IFC4X3_RC4_IfcRelAssociates_type);defs.push_back(IFC4X3_RC4_IfcRelConnects_type);defs.push_back(IFC4X3_RC4_IfcRelDeclares_type);defs.push_back(IFC4X3_RC4_IfcRelDecomposes_type);defs.push_back(IFC4X3_RC4_IfcRelDefines_type); - IFC4X3_RC4_IfcRelationship_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(6); - defs.push_back(IFC4X3_RC4_IfcRelAssignsToActor_type);defs.push_back(IFC4X3_RC4_IfcRelAssignsToControl_type);defs.push_back(IFC4X3_RC4_IfcRelAssignsToGroup_type);defs.push_back(IFC4X3_RC4_IfcRelAssignsToProcess_type);defs.push_back(IFC4X3_RC4_IfcRelAssignsToProduct_type);defs.push_back(IFC4X3_RC4_IfcRelAssignsToResource_type); - IFC4X3_RC4_IfcRelAssigns_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type); - IFC4X3_RC4_IfcRelAssignsToGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(7); - defs.push_back(IFC4X3_RC4_IfcRelAssociatesApproval_type);defs.push_back(IFC4X3_RC4_IfcRelAssociatesClassification_type);defs.push_back(IFC4X3_RC4_IfcRelAssociatesConstraint_type);defs.push_back(IFC4X3_RC4_IfcRelAssociatesDocument_type);defs.push_back(IFC4X3_RC4_IfcRelAssociatesLibrary_type);defs.push_back(IFC4X3_RC4_IfcRelAssociatesMaterial_type);defs.push_back(IFC4X3_RC4_IfcRelAssociatesProfileDef_type); - IFC4X3_RC4_IfcRelAssociates_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(16); - defs.push_back(IFC4X3_RC4_IfcRelConnectsElements_type);defs.push_back(IFC4X3_RC4_IfcRelConnectsPortToElement_type);defs.push_back(IFC4X3_RC4_IfcRelConnectsPorts_type);defs.push_back(IFC4X3_RC4_IfcRelConnectsStructuralActivity_type);defs.push_back(IFC4X3_RC4_IfcRelConnectsStructuralMember_type);defs.push_back(IFC4X3_RC4_IfcRelContainedInSpatialStructure_type);defs.push_back(IFC4X3_RC4_IfcRelCoversBldgElements_type);defs.push_back(IFC4X3_RC4_IfcRelCoversSpaces_type);defs.push_back(IFC4X3_RC4_IfcRelFillsElement_type);defs.push_back(IFC4X3_RC4_IfcRelFlowControlElements_type);defs.push_back(IFC4X3_RC4_IfcRelInterferesElements_type);defs.push_back(IFC4X3_RC4_IfcRelPositions_type);defs.push_back(IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type);defs.push_back(IFC4X3_RC4_IfcRelSequence_type);defs.push_back(IFC4X3_RC4_IfcRelServicesBuildings_type);defs.push_back(IFC4X3_RC4_IfcRelSpaceBoundary_type); - IFC4X3_RC4_IfcRelConnects_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcRelConnectsPathElements_type);defs.push_back(IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type); - IFC4X3_RC4_IfcRelConnectsElements_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRelConnectsWithEccentricity_type); - IFC4X3_RC4_IfcRelConnectsStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(4); - defs.push_back(IFC4X3_RC4_IfcRelDefinesByObject_type);defs.push_back(IFC4X3_RC4_IfcRelDefinesByProperties_type);defs.push_back(IFC4X3_RC4_IfcRelDefinesByTemplate_type);defs.push_back(IFC4X3_RC4_IfcRelDefinesByType_type); - IFC4X3_RC4_IfcRelDefines_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type); - IFC4X3_RC4_IfcRelSpaceBoundary_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type); - IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type); - IFC4X3_RC4_IfcCompositeCurveSegment_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type); - IFC4X3_RC4_IfcRevolvedAreaSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcSectionedSolidHorizontal_type); - IFC4X3_RC4_IfcSectionedSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcShapeModel_type);defs.push_back(IFC4X3_RC4_IfcStyleModel_type); - IFC4X3_RC4_IfcRepresentation_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcShapeRepresentation_type);defs.push_back(IFC4X3_RC4_IfcTopologyRepresentation_type); - IFC4X3_RC4_IfcShapeModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcSlabElementedCase_type);defs.push_back(IFC4X3_RC4_IfcSlabStandardCase_type); - IFC4X3_RC4_IfcSlab_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcSolidStratum_type);defs.push_back(IFC4X3_RC4_IfcVoidStratum_type);defs.push_back(IFC4X3_RC4_IfcWaterStratum_type); - IFC4X3_RC4_IfcGeotechnicalStratum_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcSpaceType_type); - IFC4X3_RC4_IfcSpatialStructureElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcSpatialStructureElementType_type);defs.push_back(IFC4X3_RC4_IfcSpatialZoneType_type); - IFC4X3_RC4_IfcSpatialElementType_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcStructuralAction_type);defs.push_back(IFC4X3_RC4_IfcStructuralReaction_type); - IFC4X3_RC4_IfcStructuralActivity_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcStructuralConnection_type);defs.push_back(IFC4X3_RC4_IfcStructuralMember_type); - IFC4X3_RC4_IfcStructuralItem_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcStructuralCurveAction_type);defs.push_back(IFC4X3_RC4_IfcStructuralPointAction_type);defs.push_back(IFC4X3_RC4_IfcStructuralSurfaceAction_type); - IFC4X3_RC4_IfcStructuralAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcStructuralCurveConnection_type);defs.push_back(IFC4X3_RC4_IfcStructuralPointConnection_type);defs.push_back(IFC4X3_RC4_IfcStructuralSurfaceConnection_type); - IFC4X3_RC4_IfcStructuralConnection_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcStructuralCurveMember_type);defs.push_back(IFC4X3_RC4_IfcStructuralSurfaceMember_type); - IFC4X3_RC4_IfcStructuralMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralCurveMemberVarying_type); - IFC4X3_RC4_IfcStructuralCurveMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcStructuralCurveReaction_type);defs.push_back(IFC4X3_RC4_IfcStructuralPointReaction_type);defs.push_back(IFC4X3_RC4_IfcStructuralSurfaceReaction_type); - IFC4X3_RC4_IfcStructuralReaction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralLinearAction_type); - IFC4X3_RC4_IfcStructuralCurveAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralLoadCase_type); - IFC4X3_RC4_IfcStructuralLoadGroup_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcStructuralLoadConfiguration_type);defs.push_back(IFC4X3_RC4_IfcStructuralLoadOrResult_type); - IFC4X3_RC4_IfcStructuralLoad_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(5); - defs.push_back(IFC4X3_RC4_IfcStructuralLoadLinearForce_type);defs.push_back(IFC4X3_RC4_IfcStructuralLoadPlanarForce_type);defs.push_back(IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type);defs.push_back(IFC4X3_RC4_IfcStructuralLoadSingleForce_type);defs.push_back(IFC4X3_RC4_IfcStructuralLoadTemperature_type); - IFC4X3_RC4_IfcStructuralLoadStatic_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type); - IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type); - IFC4X3_RC4_IfcStructuralLoadSingleForce_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcStructuralLoadStatic_type);defs.push_back(IFC4X3_RC4_IfcSurfaceReinforcementArea_type); - IFC4X3_RC4_IfcStructuralLoadOrResult_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralPlanarAction_type); - IFC4X3_RC4_IfcStructuralSurfaceAction_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type); - IFC4X3_RC4_IfcStructuralSurfaceMember_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcStyledRepresentation_type); - IFC4X3_RC4_IfcStyleModel_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type);defs.push_back(IFC4X3_RC4_IfcSurfaceOfRevolution_type); - IFC4X3_RC4_IfcSweptSurface_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcSurfaceStyleRendering_type); - IFC4X3_RC4_IfcSurfaceStyleShading_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type); - IFC4X3_RC4_IfcSweptDiskSolid_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcTaskTimeRecurring_type); - IFC4X3_RC4_IfcTaskTime_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcTextLiteralWithExtent_type); - IFC4X3_RC4_IfcTextLiteral_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcTextStyleFontModel_type); - IFC4X3_RC4_IfcPreDefinedTextFont_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type); - IFC4X3_RC4_IfcTriangulatedFaceSet_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(3); - defs.push_back(IFC4X3_RC4_IfcTypeProcess_type);defs.push_back(IFC4X3_RC4_IfcTypeProduct_type);defs.push_back(IFC4X3_RC4_IfcTypeResource_type); - IFC4X3_RC4_IfcTypeObject_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcVertexPoint_type); - IFC4X3_RC4_IfcVertex_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcWallElementedCase_type);defs.push_back(IFC4X3_RC4_IfcWallStandardCase_type); - IFC4X3_RC4_IfcWall_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(1); - defs.push_back(IFC4X3_RC4_IfcWindowStandardCase_type); - IFC4X3_RC4_IfcWindow_type->set_subtypes(defs); - } - { - std::vector defs; defs.reserve(2); - defs.push_back(IFC4X3_RC4_IfcWorkPlan_type);defs.push_back(IFC4X3_RC4_IfcWorkSchedule_type); - IFC4X3_RC4_IfcWorkControl_type->set_subtypes(defs); - } + IFC4X3_RC4_IfcAbsorbedDoseMeasure_type = new type_declaration(strings[0], 0, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcAccelerationMeasure_type = new type_declaration(strings[1], 1, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcActionRequestTypeEnum_type = new enumeration_type(strings[2], 3, { + strings[3], + strings[4], + strings[5], + strings[6], + strings[7], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcActionSourceTypeEnum_type = new enumeration_type(strings[10], 4, { + strings[11], + strings[12], + strings[13], + strings[14], + strings[15], + strings[16], + strings[17], + strings[18], + strings[19], + strings[20], + strings[21], + strings[22], + strings[23], + strings[24], + strings[25], + strings[26], + strings[27], + strings[28], + strings[29], + strings[30], + strings[31], + strings[32], + strings[33], + strings[34], + strings[35], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcActionTypeEnum_type = new enumeration_type(strings[36], 5, { + strings[37], + strings[38], + strings[39], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcActuatorTypeEnum_type = new enumeration_type(strings[40], 11, { + strings[41], + strings[42], + strings[43], + strings[44], + strings[45], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAddressTypeEnum_type = new enumeration_type(strings[46], 13, { + strings[47], + strings[48], + strings[49], + strings[50], + strings[8] + }); + IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type = new enumeration_type(strings[51], 20, { + strings[52], + strings[53], + strings[54], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAirTerminalTypeEnum_type = new enumeration_type(strings[55], 22, { + strings[56], + strings[57], + strings[58], + strings[59], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type(strings[60], 25, { + strings[61], + strings[62], + strings[63], + strings[64], + strings[65], + strings[66], + strings[67], + strings[68], + strings[69], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAlarmTypeEnum_type = new enumeration_type(strings[70], 28, { + strings[71], + strings[72], + strings[73], + strings[74], + strings[75], + strings[76], + strings[77], + strings[78], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type(strings[79], 32, { + strings[80], + strings[81], + strings[82], + strings[83], + strings[84], + strings[85], + strings[86] + }); + IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type(strings[87], 35, { + strings[88], + strings[89], + strings[90], + strings[91], + strings[83], + strings[80], + strings[82], + strings[85], + strings[86] + }); + IFC4X3_RC4_IfcAlignmentTypeEnum_type = new enumeration_type(strings[92], 38, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type(strings[93], 41, { + strings[94], + strings[89], + strings[95], + strings[90] + }); + IFC4X3_RC4_IfcAmountOfSubstanceMeasure_type = new type_declaration(strings[96], 42, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcAnalysisModelTypeEnum_type = new enumeration_type(strings[97], 43, { + strings[98], + strings[99], + strings[100], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type = new enumeration_type(strings[101], 44, { + strings[102], + strings[103], + strings[104], + strings[105], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAngularVelocityMeasure_type = new type_declaration(strings[106], 45, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcAnnotationTypeEnum_type = new enumeration_type(strings[107], 48, { + strings[108], + strings[109], + strings[110], + strings[111], + strings[112], + strings[113], + strings[114], + strings[115], + strings[116], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcAreaDensityMeasure_type = new type_declaration(strings[117], 58, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcAreaMeasure_type = new type_declaration(strings[118], 59, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcArithmeticOperatorEnum_type = new enumeration_type(strings[119], 60, { + strings[120], + strings[121], + strings[122], + strings[123] + }); + IFC4X3_RC4_IfcAssemblyPlaceEnum_type = new enumeration_type(strings[124], 61, { + strings[48], + strings[125], + strings[9] + }); + IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type(strings[126], 66, { + strings[127], + strings[128], + strings[129], + strings[130], + strings[131], + strings[132], + strings[133], + strings[134], + strings[135], + strings[136], + strings[137], + strings[138], + strings[139], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBSplineCurveForm_type = new enumeration_type(strings[140], 109, { + strings[141], + strings[142], + strings[143], + strings[144], + strings[145], + strings[146] + }); + IFC4X3_RC4_IfcBSplineSurfaceForm_type = new enumeration_type(strings[147], 112, { + strings[148], + strings[149], + strings[150], + strings[151], + strings[152], + strings[153], + strings[154], + strings[155], + strings[156], + strings[157], + strings[146] + }); + IFC4X3_RC4_IfcBeamTypeEnum_type = new enumeration_type(strings[158], 75, { + strings[159], + strings[160], + strings[161], + strings[162], + strings[163], + strings[164], + strings[165], + strings[166], + strings[167], + strings[168], + strings[169], + strings[170], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBearingTypeDisplacementEnum_type = new enumeration_type(strings[171], 78, { + strings[172], + strings[173], + strings[174], + strings[175], + strings[9] + }); + IFC4X3_RC4_IfcBearingTypeEnum_type = new enumeration_type(strings[176], 79, { + strings[177], + strings[178], + strings[179], + strings[180], + strings[181], + strings[182], + strings[183], + strings[184], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBenchmarkEnum_type = new enumeration_type(strings[185], 80, { + strings[186], + strings[187], + strings[188], + strings[189], + strings[190], + strings[191], + strings[192], + strings[193], + strings[194], + strings[195] + }); + IFC4X3_RC4_IfcBinary_type = new type_declaration(strings[196], 82, new simple_type(simple_type::binary_type)); + IFC4X3_RC4_IfcBoilerTypeEnum_type = new enumeration_type(strings[197], 87, { + strings[198], + strings[199], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBoolean_type = new type_declaration(strings[200], 88, new simple_type(simple_type::boolean_type)); + IFC4X3_RC4_IfcBooleanOperator_type = new enumeration_type(strings[201], 91, { + strings[202], + strings[203], + strings[204] + }); + IFC4X3_RC4_IfcBridgePartTypeEnum_type = new enumeration_type(strings[205], 106, { + strings[206], + strings[207], + strings[208], + strings[209], + strings[210], + strings[211], + strings[212], + strings[213], + strings[214], + strings[215], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBridgeTypeEnum_type = new enumeration_type(strings[216], 107, { + strings[217], + strings[218], + strings[219], + strings[220], + strings[221], + strings[222], + strings[223], + strings[224], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type = new enumeration_type(strings[225], 117, { + strings[226], + strings[227], + strings[228], + strings[229], + strings[230], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type = new enumeration_type(strings[231], 120, { + strings[232], + strings[233], + strings[234], + strings[235], + strings[236], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBuildingSystemTypeEnum_type = new enumeration_type(strings[237], 123, { + strings[238], + strings[209], + strings[239], + strings[240], + strings[241], + strings[23], + strings[242], + strings[243], + strings[244], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBuiltSystemTypeEnum_type = new enumeration_type(strings[245], 127, { + strings[242], + strings[246], + strings[240], + strings[247], + strings[244], + strings[209], + strings[239], + strings[241], + strings[238], + strings[23], + strings[243], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcBurnerTypeEnum_type = new enumeration_type(strings[248], 130, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type = new enumeration_type(strings[249], 133, { + strings[250], + strings[251], + strings[252], + strings[253], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type(strings[254], 136, { + strings[255], + strings[256], + strings[257], + strings[258], + strings[259], + strings[260], + strings[261], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCableFittingTypeEnum_type = new enumeration_type(strings[262], 139, { + strings[263], + strings[264], + strings[265], + strings[266], + strings[267], + strings[268], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCableSegmentTypeEnum_type = new enumeration_type(strings[269], 142, { + strings[270], + strings[271], + strings[272], + strings[273], + strings[274], + strings[275], + strings[276], + strings[277], + strings[278], + strings[279], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type = new enumeration_type(strings[280], 145, { + strings[281], + strings[282], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCardinalPointReference_type = new type_declaration(strings[283], 146, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcChangeActionEnum_type = new enumeration_type(strings[284], 157, { + strings[285], + strings[286], + strings[287], + strings[288], + strings[9] + }); + IFC4X3_RC4_IfcChillerTypeEnum_type = new enumeration_type(strings[289], 160, { + strings[290], + strings[291], + strings[292], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcChimneyTypeEnum_type = new enumeration_type(strings[293], 163, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCoilTypeEnum_type = new enumeration_type(strings[294], 177, { + strings[295], + strings[296], + strings[297], + strings[298], + strings[299], + strings[300], + strings[301], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcColumnTypeEnum_type = new enumeration_type(strings[302], 186, { + strings[303], + strings[304], + strings[305], + strings[306], + strings[307], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type(strings[308], 189, { + strings[309], + strings[310], + strings[4], + strings[311], + strings[312], + strings[313], + strings[314], + strings[315], + strings[316], + strings[317], + strings[318], + strings[319], + strings[320], + strings[321], + strings[322], + strings[323], + strings[324], + strings[325], + strings[326], + strings[327], + strings[328], + strings[329], + strings[330], + strings[331], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcComplexNumber_type = new type_declaration(strings[332], 190, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type))); + IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type(strings[333], 193, { + strings[334], + strings[335] + }); + IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type = new type_declaration(strings[336], 198, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type))); + IFC4X3_RC4_IfcCompressorTypeEnum_type = new enumeration_type(strings[337], 201, { + strings[338], + strings[339], + strings[340], + strings[341], + strings[342], + strings[343], + strings[344], + strings[345], + strings[346], + strings[347], + strings[348], + strings[349], + strings[350], + strings[351], + strings[352], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCondenserTypeEnum_type = new enumeration_type(strings[353], 204, { + strings[290], + strings[354], + strings[291], + strings[355], + strings[356], + strings[357], + strings[358], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcConnectionTypeEnum_type = new enumeration_type(strings[359], 212, { + strings[360], + strings[361], + strings[362], + strings[9] + }); + IFC4X3_RC4_IfcConstraintEnum_type = new enumeration_type(strings[363], 215, { + strings[364], + strings[365], + strings[366], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type(strings[367], 218, { + strings[368], + strings[369], + strings[370], + strings[371], + strings[372], + strings[373], + strings[374], + strings[375], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type(strings[376], 221, { + strings[377], + strings[378], + strings[379], + strings[380], + strings[381], + strings[382], + strings[383], + strings[384], + strings[385], + strings[9], + strings[8] + }); + IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type = new enumeration_type(strings[386], 224, { + strings[387], + strings[388], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcContextDependentMeasure_type = new type_declaration(strings[389], 228, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcControllerTypeEnum_type = new enumeration_type(strings[390], 233, { + strings[391], + strings[392], + strings[393], + strings[394], + strings[395], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type = new enumeration_type(strings[396], 238, { + strings[397], + strings[398], + strings[399], + strings[400], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCooledBeamTypeEnum_type = new enumeration_type(strings[401], 241, { + strings[402], + strings[403], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCoolingTowerTypeEnum_type = new enumeration_type(strings[404], 244, { + strings[405], + strings[406], + strings[407], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCostItemTypeEnum_type = new enumeration_type(strings[408], 250, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCostScheduleTypeEnum_type = new enumeration_type(strings[409], 252, { + strings[410], + strings[411], + strings[412], + strings[413], + strings[414], + strings[415], + strings[416], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCountMeasure_type = new type_declaration(strings[417], 254, new simple_type(simple_type::number_type)); + IFC4X3_RC4_IfcCourseTypeEnum_type = new enumeration_type(strings[418], 257, { + strings[419], + strings[420], + strings[421], + strings[422], + strings[423], + strings[424], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCoveringTypeEnum_type = new enumeration_type(strings[425], 260, { + strings[426], + strings[427], + strings[428], + strings[429], + strings[430], + strings[431], + strings[226], + strings[432], + strings[433], + strings[434], + strings[435], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCrewResourceTypeEnum_type = new enumeration_type(strings[436], 263, { + strings[47], + strings[48], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCurtainWallTypeEnum_type = new enumeration_type(strings[437], 271, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcCurvatureMeasure_type = new type_declaration(strings[438], 272, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcCurveInterpolationEnum_type = new enumeration_type(strings[439], 277, { + strings[440], + strings[441], + strings[442], + strings[9] + }); + IFC4X3_RC4_IfcDamperTypeEnum_type = new enumeration_type(strings[443], 290, { + strings[444], + strings[445], + strings[446], + strings[447], + strings[448], + strings[449], + strings[450], + strings[451], + strings[452], + strings[453], + strings[454], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDataOriginEnum_type = new enumeration_type(strings[455], 291, { + strings[456], + strings[457], + strings[458], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDate_type = new type_declaration(strings[459], 292, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcDateTime_type = new type_declaration(strings[460], 293, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcDayInMonthNumber_type = new type_declaration(strings[461], 294, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcDayInWeekNumber_type = new type_declaration(strings[462], 295, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcDerivedUnitEnum_type = new enumeration_type(strings[463], 303, { + strings[464], + strings[465], + strings[466], + strings[467], + strings[468], + strings[469], + strings[470], + strings[471], + strings[472], + strings[473], + strings[474], + strings[475], + strings[476], + strings[477], + strings[478], + strings[479], + strings[480], + strings[481], + strings[482], + strings[483], + strings[484], + strings[485], + strings[486], + strings[487], + strings[488], + strings[489], + strings[490], + strings[491], + strings[492], + strings[493], + strings[494], + strings[495], + strings[496], + strings[497], + strings[498], + strings[499], + strings[500], + strings[501], + strings[502], + strings[503], + strings[504], + strings[505], + strings[506], + strings[507], + strings[508], + strings[509], + strings[510], + strings[511], + strings[512], + strings[513], + strings[514], + strings[515], + strings[8] + }); + IFC4X3_RC4_IfcDescriptiveMeasure_type = new type_declaration(strings[516], 304, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcDimensionCount_type = new type_declaration(strings[517], 306, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcDirectionSenseEnum_type = new enumeration_type(strings[518], 308, { + strings[519], + strings[520] + }); + IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type(strings[521], 313, { + strings[522], + strings[523], + strings[524], + strings[525], + strings[526], + strings[527], + strings[528], + strings[529], + strings[530], + strings[531], + strings[532], + strings[533], + strings[534], + strings[535], + strings[536], + strings[537], + strings[538], + strings[539], + strings[540], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDistributionBoardTypeEnum_type = new enumeration_type(strings[541], 316, { + strings[542], + strings[543], + strings[544], + strings[545], + strings[546], + strings[547], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type = new enumeration_type(strings[548], 319, { + strings[549], + strings[550], + strings[551], + strings[552], + strings[553], + strings[554], + strings[555], + strings[556], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDistributionPortTypeEnum_type = new enumeration_type(strings[557], 328, { + strings[558], + strings[559], + strings[560], + strings[561], + strings[562], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDistributionSystemEnum_type = new enumeration_type(strings[563], 330, { + strings[564], + strings[565], + strings[566], + strings[567], + strings[568], + strings[569], + strings[570], + strings[571], + strings[572], + strings[573], + strings[574], + strings[575], + strings[576], + strings[577], + strings[578], + strings[579], + strings[580], + strings[581], + strings[582], + strings[380], + strings[583], + strings[584], + strings[371], + strings[372], + strings[585], + strings[586], + strings[587], + strings[588], + strings[589], + strings[590], + strings[591], + strings[592], + strings[593], + strings[594], + strings[595], + strings[136], + strings[596], + strings[597], + strings[598], + strings[599], + strings[600], + strings[601], + strings[602], + strings[603], + strings[604], + strings[605], + strings[606], + strings[607], + strings[608], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDocumentConfidentialityEnum_type = new enumeration_type(strings[609], 331, { + strings[610], + strings[611], + strings[612], + strings[613], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDocumentStatusEnum_type = new enumeration_type(strings[614], 336, { + strings[615], + strings[616], + strings[617], + strings[618], + strings[9] + }); + IFC4X3_RC4_IfcDoorPanelOperationEnum_type = new enumeration_type(strings[619], 339, { + strings[620], + strings[621], + strings[622], + strings[623], + strings[624], + strings[625], + strings[626], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDoorPanelPositionEnum_type = new enumeration_type(strings[627], 340, { + strings[628], + strings[629], + strings[630], + strings[9] + }); + IFC4X3_RC4_IfcDoorStyleConstructionEnum_type = new enumeration_type(strings[631], 344, { + strings[632], + strings[633], + strings[634], + strings[385], + strings[635], + strings[636], + strings[384], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDoorStyleOperationEnum_type = new enumeration_type(strings[637], 345, { + strings[638], + strings[639], + strings[640], + strings[641], + strings[642], + strings[643], + strings[644], + strings[645], + strings[646], + strings[647], + strings[648], + strings[649], + strings[650], + strings[651], + strings[624], + strings[625], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDoorTypeEnum_type = new enumeration_type(strings[652], 347, { + strings[653], + strings[654], + strings[655], + strings[656], + strings[657], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDoorTypeOperationEnum_type = new enumeration_type(strings[658], 348, { + strings[638], + strings[639], + strings[659], + strings[660], + strings[661], + strings[643], + strings[644], + strings[662], + strings[646], + strings[647], + strings[663], + strings[649], + strings[650], + strings[664], + strings[665], + strings[625], + strings[666], + strings[667], + strings[668], + strings[669], + strings[670], + strings[671], + strings[672], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDoseEquivalentMeasure_type = new type_declaration(strings[673], 349, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcDuctFittingTypeEnum_type = new enumeration_type(strings[674], 354, { + strings[250], + strings[263], + strings[264], + strings[265], + strings[266], + strings[675], + strings[267], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDuctSegmentTypeEnum_type = new enumeration_type(strings[676], 357, { + strings[677], + strings[678], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDuctSilencerTypeEnum_type = new enumeration_type(strings[679], 360, { + strings[680], + strings[681], + strings[682], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcDuration_type = new type_declaration(strings[683], 361, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcDynamicViscosityMeasure_type = new type_declaration(strings[684], 362, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcEarthworksCutTypeEnum_type = new enumeration_type(strings[685], 364, { + strings[555], + strings[686], + strings[687], + strings[688], + strings[689], + strings[690], + strings[691], + strings[692], + strings[693], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcEarthworksFillTypeEnum_type = new enumeration_type(strings[694], 367, { + strings[695], + strings[696], + strings[697], + strings[698], + strings[699], + strings[700], + strings[701], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricApplianceTypeEnum_type = new enumeration_type(strings[702], 373, { + strings[703], + strings[704], + strings[705], + strings[706], + strings[707], + strings[708], + strings[709], + strings[710], + strings[711], + strings[712], + strings[713], + strings[714], + strings[715], + strings[716], + strings[717], + strings[718], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricCapacitanceMeasure_type = new type_declaration(strings[719], 374, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcElectricChargeMeasure_type = new type_declaration(strings[720], 375, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcElectricConductanceMeasure_type = new type_declaration(strings[721], 376, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcElectricCurrentMeasure_type = new type_declaration(strings[722], 377, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type(strings[723], 380, { + strings[543], + strings[546], + strings[544], + strings[542], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type(strings[724], 383, { + strings[725], + strings[726], + strings[727], + strings[728], + strings[729], + strings[730], + strings[731], + strings[732], + strings[733], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type(strings[734], 386, { + strings[735], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type = new enumeration_type(strings[736], 389, { + strings[737], + strings[738], + strings[739], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricMotorTypeEnum_type = new enumeration_type(strings[740], 392, { + strings[741], + strings[742], + strings[743], + strings[744], + strings[745], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricResistanceMeasure_type = new type_declaration(strings[746], 393, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type = new enumeration_type(strings[747], 396, { + strings[748], + strings[749], + strings[750], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElectricVoltageMeasure_type = new type_declaration(strings[751], 397, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcElementAssemblyTypeEnum_type = new enumeration_type(strings[752], 402, { + strings[753], + strings[754], + strings[755], + strings[756], + strings[222], + strings[757], + strings[758], + strings[759], + strings[224], + strings[206], + strings[210], + strings[212], + strings[760], + strings[207], + strings[761], + strings[762], + strings[763], + strings[764], + strings[765], + strings[766], + strings[767], + strings[768], + strings[769], + strings[770], + strings[771], + strings[772], + strings[773], + strings[774], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcElementCompositionEnum_type = new enumeration_type(strings[775], 405, { + strings[232], + strings[233], + strings[234] + }); + IFC4X3_RC4_IfcEnergyMeasure_type = new type_declaration(strings[776], 412, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcEngineTypeEnum_type = new enumeration_type(strings[777], 415, { + strings[778], + strings[779], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type(strings[780], 418, { + strings[781], + strings[782], + strings[783], + strings[784], + strings[785], + strings[786], + strings[787], + strings[788], + strings[789], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcEvaporatorTypeEnum_type = new enumeration_type(strings[790], 421, { + strings[791], + strings[792], + strings[793], + strings[794], + strings[795], + strings[796], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcEventTriggerTypeEnum_type = new enumeration_type(strings[797], 424, { + strings[798], + strings[799], + strings[800], + strings[801], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcEventTypeEnum_type = new enumeration_type(strings[802], 426, { + strings[803], + strings[804], + strings[805], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type = new enumeration_type(strings[806], 435, { + strings[807], + strings[808], + strings[809], + strings[810], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type = new enumeration_type(strings[811], 448, { + strings[812], + strings[813], + strings[266], + strings[814], + strings[815], + strings[213], + strings[816], + strings[214], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFacilityUsageEnum_type = new enumeration_type(strings[817], 450, { + strings[818], + strings[819], + strings[820], + strings[821], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFanTypeEnum_type = new enumeration_type(strings[822], 454, { + strings[823], + strings[824], + strings[825], + strings[826], + strings[827], + strings[828], + strings[829], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFastenerTypeEnum_type = new enumeration_type(strings[830], 457, { + strings[831], + strings[832], + strings[833], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFilterTypeEnum_type = new enumeration_type(strings[834], 467, { + strings[835], + strings[836], + strings[837], + strings[838], + strings[839], + strings[840], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type(strings[841], 470, { + strings[842], + strings[843], + strings[844], + strings[845], + strings[846], + strings[847], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFlowDirectionEnum_type = new enumeration_type(strings[848], 474, { + strings[849], + strings[850], + strings[851], + strings[9] + }); + IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type = new enumeration_type(strings[852], 479, { + strings[853], + strings[854], + strings[855], + strings[856], + strings[857], + strings[858], + strings[859], + strings[860], + strings[861], + strings[862], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFlowMeterTypeEnum_type = new enumeration_type(strings[863], 482, { + strings[864], + strings[865], + strings[866], + strings[867], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcFontStyle_type = new type_declaration(strings[868], 493, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcFontVariant_type = new type_declaration(strings[869], 494, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcFontWeight_type = new type_declaration(strings[870], 495, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcFootingTypeEnum_type = new enumeration_type(strings[871], 498, { + strings[872], + strings[873], + strings[874], + strings[875], + strings[876], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcForceMeasure_type = new type_declaration(strings[877], 499, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcFrequencyMeasure_type = new type_declaration(strings[878], 500, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcFurnitureTypeEnum_type = new enumeration_type(strings[879], 505, { + strings[880], + strings[881], + strings[882], + strings[883], + strings[884], + strings[885], + strings[886], + strings[887], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcGeographicElementTypeEnum_type = new enumeration_type(strings[888], 508, { + strings[889], + strings[890], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcGeometricProjectionEnum_type = new enumeration_type(strings[891], 510, { + strings[892], + strings[893], + strings[894], + strings[895], + strings[896], + strings[897], + strings[898], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcGlobalOrLocalEnum_type = new enumeration_type(strings[899], 522, { + strings[900], + strings[901] + }); + IFC4X3_RC4_IfcGloballyUniqueId_type = new type_declaration(strings[902], 521, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcGridTypeEnum_type = new enumeration_type(strings[903], 528, { + strings[681], + strings[904], + strings[905], + strings[906], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcHeatExchangerTypeEnum_type = new enumeration_type(strings[907], 534, { + strings[908], + strings[909], + strings[910], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcHeatFluxDensityMeasure_type = new type_declaration(strings[911], 535, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcHeatingValueMeasure_type = new type_declaration(strings[912], 536, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcHumidifierTypeEnum_type = new enumeration_type(strings[913], 539, { + strings[914], + strings[915], + strings[916], + strings[917], + strings[918], + strings[919], + strings[920], + strings[921], + strings[922], + strings[923], + strings[924], + strings[925], + strings[926], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcIdentifier_type = new type_declaration(strings[927], 540, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcIlluminanceMeasure_type = new type_declaration(strings[928], 541, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type(strings[929], 545, { + strings[930], + strings[931], + strings[932], + strings[933], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcInductanceMeasure_type = new type_declaration(strings[934], 553, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcInteger_type = new type_declaration(strings[935], 554, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcIntegerCountRateMeasure_type = new type_declaration(strings[936], 555, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcInterceptorTypeEnum_type = new enumeration_type(strings[937], 558, { + strings[938], + strings[939], + strings[587], + strings[940], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcInternalOrExternalEnum_type = new enumeration_type(strings[941], 560, { + strings[942], + strings[807], + strings[808], + strings[809], + strings[810], + strings[9] + }); + IFC4X3_RC4_IfcInventoryTypeEnum_type = new enumeration_type(strings[943], 563, { + strings[944], + strings[945], + strings[946], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcIonConcentrationMeasure_type = new type_declaration(strings[947], 564, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration(strings[948], 568, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcJunctionBoxTypeEnum_type = new enumeration_type(strings[949], 571, { + strings[573], + strings[950], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcKinematicViscosityMeasure_type = new type_declaration(strings[951], 574, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcKnotType_type = new enumeration_type(strings[952], 575, { + strings[953], + strings[954], + strings[955], + strings[146] + }); + IFC4X3_RC4_IfcLabel_type = new type_declaration(strings[956], 576, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcLaborResourceTypeEnum_type = new enumeration_type(strings[957], 579, { + strings[958], + strings[959], + strings[960], + strings[378], + strings[379], + strings[961], + strings[962], + strings[427], + strings[963], + strings[964], + strings[965], + strings[382], + strings[966], + strings[373], + strings[967], + strings[429], + strings[968], + strings[969], + strings[970], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcLampTypeEnum_type = new enumeration_type(strings[971], 583, { + strings[972], + strings[973], + strings[974], + strings[975], + strings[976], + strings[977], + strings[978], + strings[979], + strings[980], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcLanguageId_type = new type_declaration(strings[981], 584, new named_type(IFC4X3_RC4_IfcIdentifier_type)); + IFC4X3_RC4_IfcLayerSetDirectionEnum_type = new enumeration_type(strings[982], 586, { + strings[983], + strings[984], + strings[985] + }); + IFC4X3_RC4_IfcLengthMeasure_type = new type_declaration(strings[986], 587, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLightDistributionCurveEnum_type = new enumeration_type(strings[987], 591, { + strings[988], + strings[989], + strings[990], + strings[9] + }); + IFC4X3_RC4_IfcLightEmissionSourceEnum_type = new enumeration_type(strings[991], 594, { + strings[972], + strings[973], + strings[975], + strings[976], + strings[992], + strings[993], + strings[994], + strings[995], + strings[978], + strings[980], + strings[9] + }); + IFC4X3_RC4_IfcLightFixtureTypeEnum_type = new enumeration_type(strings[996], 597, { + strings[997], + strings[998], + strings[999], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcLinearForceMeasure_type = new type_declaration(strings[1000], 607, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLinearMomentMeasure_type = new type_declaration(strings[1001], 608, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLinearStiffnessMeasure_type = new type_declaration(strings[1002], 611, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLinearVelocityMeasure_type = new type_declaration(strings[1003], 612, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type = new enumeration_type(strings[1004], 616, { + strings[1005], + strings[844], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcLoadGroupTypeEnum_type = new enumeration_type(strings[1006], 617, { + strings[1007], + strings[1008], + strings[1009], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcLogical_type = new type_declaration(strings[1010], 619, new simple_type(simple_type::logical_type)); + IFC4X3_RC4_IfcLogicalOperatorEnum_type = new enumeration_type(strings[1011], 620, { + strings[1012], + strings[1013], + strings[1014], + strings[1015], + strings[1016] + }); + IFC4X3_RC4_IfcLuminousFluxMeasure_type = new type_declaration(strings[1017], 623, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type = new type_declaration(strings[1018], 624, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcLuminousIntensityMeasure_type = new type_declaration(strings[1019], 625, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMagneticFluxDensityMeasure_type = new type_declaration(strings[1020], 626, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMagneticFluxMeasure_type = new type_declaration(strings[1021], 627, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMarineFacilityTypeEnum_type = new enumeration_type(strings[1022], 632, { + strings[1023], + strings[1024], + strings[1025], + strings[1026], + strings[1027], + strings[1028], + strings[1029], + strings[1030], + strings[1031], + strings[1032], + strings[1033], + strings[1034], + strings[1035], + strings[1036], + strings[1037], + strings[1038], + strings[1039], + strings[1040], + strings[1041], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcMarinePartTypeEnum_type = new enumeration_type(strings[1042], 633, { + strings[1043], + strings[1044], + strings[1045], + strings[422], + strings[1046], + strings[1047], + strings[1048], + strings[1049], + strings[1050], + strings[1051], + strings[1052], + strings[1053], + strings[1054], + strings[1055], + strings[1056], + strings[1057], + strings[1058], + strings[1059], + strings[424], + strings[1060], + strings[1061], + strings[1062], + strings[1063], + strings[1064], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcMassDensityMeasure_type = new type_declaration(strings[1065], 634, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMassFlowRateMeasure_type = new type_declaration(strings[1066], 635, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMassMeasure_type = new type_declaration(strings[1067], 636, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMassPerLengthMeasure_type = new type_declaration(strings[1068], 637, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type = new enumeration_type(strings[1069], 662, { + strings[1070], + strings[1071], + strings[1072], + strings[1073], + strings[1074], + strings[1075], + strings[1076], + strings[1077], + strings[1078], + strings[1079], + strings[1080], + strings[1081], + strings[1082], + strings[1083], + strings[1084], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type = new enumeration_type(strings[1085], 665, { + strings[1086], + strings[1087], + strings[1088], + strings[1089], + strings[1090], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcMemberTypeEnum_type = new enumeration_type(strings[1091], 669, { + strings[1092], + strings[1093], + strings[1094], + strings[1095], + strings[1096], + strings[908], + strings[6], + strings[1097], + strings[1098], + strings[1099], + strings[1100], + strings[1101], + strings[1102], + strings[1103], + strings[1104], + strings[1105], + strings[1106], + strings[1107], + strings[1108], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type(strings[1109], 675, { + strings[1110], + strings[1111], + strings[1112], + strings[1113], + strings[1114], + strings[1115], + strings[1116], + strings[1117], + strings[1118], + strings[1119], + strings[1120], + strings[1121], + strings[1122], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcModulusOfElasticityMeasure_type = new type_declaration(strings[1123], 676, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration(strings[1124], 677, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration(strings[1125], 678, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type(strings[1126], 679, { + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type + }); + IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration(strings[1127], 680, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type = new select_type(strings[1128], 681, { + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type + }); + IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type(strings[1129], 682, { + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type + }); + IFC4X3_RC4_IfcMoistureDiffusivityMeasure_type = new type_declaration(strings[1130], 683, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMolecularWeightMeasure_type = new type_declaration(strings[1131], 684, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMomentOfInertiaMeasure_type = new type_declaration(strings[1132], 685, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMonetaryMeasure_type = new type_declaration(strings[1133], 686, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcMonthInYearNumber_type = new type_declaration(strings[1134], 688, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcMooringDeviceTypeEnum_type = new enumeration_type(strings[1135], 691, { + strings[1136], + strings[1137], + strings[1138], + strings[1139], + strings[1140], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcMotorConnectionTypeEnum_type = new enumeration_type(strings[1141], 694, { + strings[1142], + strings[1143], + strings[1144], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcNavigationElementTypeEnum_type = new enumeration_type(strings[1145], 698, { + strings[1146], + strings[1147], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcNonNegativeLengthMeasure_type = new type_declaration(strings[1148], 699, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)); + IFC4X3_RC4_IfcNumericMeasure_type = new type_declaration(strings[1149], 701, new simple_type(simple_type::number_type)); + IFC4X3_RC4_IfcObjectTypeEnum_type = new enumeration_type(strings[1150], 708, { + strings[1151], + strings[1152], + strings[571], + strings[1153], + strings[1154], + strings[1155], + strings[1156], + strings[9] + }); + IFC4X3_RC4_IfcObjectiveEnum_type = new enumeration_type(strings[1157], 705, { + strings[1158], + strings[1159], + strings[1160], + strings[807], + strings[1161], + strings[1162], + strings[1163], + strings[1164], + strings[1165], + strings[1166], + strings[1167], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcOccupantTypeEnum_type = new enumeration_type(strings[1168], 710, { + strings[1169], + strings[1170], + strings[1171], + strings[1172], + strings[1173], + strings[1174], + strings[1175], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcOpeningElementTypeEnum_type = new enumeration_type(strings[1176], 717, { + strings[1177], + strings[1178], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcOutletTypeEnum_type = new enumeration_type(strings[1179], 726, { + strings[1180], + strings[1181], + strings[1182], + strings[1183], + strings[1184], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPHMeasure_type = new type_declaration(strings[1185], 743, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcParameterValue_type = new type_declaration(strings[1186], 729, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcPavementTypeEnum_type = new enumeration_type(strings[1187], 733, { + strings[1188], + strings[1189], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type = new enumeration_type(strings[1190], 736, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type = new enumeration_type(strings[1191], 737, { + strings[1192], + strings[1193], + strings[1194], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPermitTypeEnum_type = new enumeration_type(strings[1195], 740, { + strings[1196], + strings[1197], + strings[1198], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type = new enumeration_type(strings[1199], 745, { + strings[1200], + strings[1201], + strings[9] + }); + IFC4X3_RC4_IfcPileConstructionEnum_type = new enumeration_type(strings[1202], 749, { + strings[1203], + strings[1204], + strings[1205], + strings[1206], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPileTypeEnum_type = new enumeration_type(strings[1207], 751, { + strings[1208], + strings[1209], + strings[1210], + strings[1211], + strings[1212], + strings[1213], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPipeFittingTypeEnum_type = new enumeration_type(strings[1214], 754, { + strings[250], + strings[263], + strings[264], + strings[265], + strings[266], + strings[675], + strings[267], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPipeSegmentTypeEnum_type = new enumeration_type(strings[1215], 757, { + strings[220], + strings[678], + strings[677], + strings[1216], + strings[1217], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPlanarForceMeasure_type = new type_declaration(strings[1218], 762, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcPlaneAngleMeasure_type = new type_declaration(strings[1219], 764, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcPlateTypeEnum_type = new enumeration_type(strings[1220], 769, { + strings[1221], + strings[1222], + strings[1223], + strings[1224], + strings[1225], + strings[1226], + strings[1227], + strings[1228], + strings[1229], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPositiveInteger_type = new type_declaration(strings[1230], 782, new named_type(IFC4X3_RC4_IfcInteger_type)); + IFC4X3_RC4_IfcPositiveLengthMeasure_type = new type_declaration(strings[1231], 783, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)); + IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type = new type_declaration(strings[1232], 784, new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type)); + IFC4X3_RC4_IfcPowerMeasure_type = new type_declaration(strings[1233], 787, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type(strings[1234], 794, { + strings[1235], + strings[1236], + strings[1237] + }); + IFC4X3_RC4_IfcPresentableText_type = new type_declaration(strings[1238], 795, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcPressureMeasure_type = new type_declaration(strings[1239], 800, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcProcedureTypeEnum_type = new enumeration_type(strings[1240], 803, { + strings[1241], + strings[1242], + strings[1243], + strings[1244], + strings[1245], + strings[1246], + strings[1247], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcProfileTypeEnum_type = new enumeration_type(strings[1248], 813, { + strings[1249], + strings[1250] + }); + IFC4X3_RC4_IfcProjectOrderTypeEnum_type = new enumeration_type(strings[1251], 821, { + strings[1252], + strings[1253], + strings[1254], + strings[1255], + strings[1256], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type = new enumeration_type(strings[1257], 816, { + strings[1258], + strings[1259] + }); + IFC4X3_RC4_IfcProjectionElementTypeEnum_type = new enumeration_type(strings[1260], 818, { + strings[1261], + strings[1262], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type = new enumeration_type(strings[1263], 836, { + strings[1264], + strings[1265], + strings[1266], + strings[1267], + strings[1268], + strings[1269], + strings[1270], + strings[9] + }); + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type(strings[1271], 844, { + strings[1272], + strings[1273], + strings[1274], + strings[1275], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type = new enumeration_type(strings[1276], 846, { + strings[1277], + strings[1278], + strings[1279], + strings[1280], + strings[1281], + strings[1282], + strings[1283], + strings[1284], + strings[1285], + strings[1286], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcPumpTypeEnum_type = new enumeration_type(strings[1287], 850, { + strings[1288], + strings[1289], + strings[1290], + strings[1291], + strings[1292], + strings[1293], + strings[1294], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRadioActivityMeasure_type = new type_declaration(strings[1295], 858, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcRailTypeEnum_type = new enumeration_type(strings[1296], 864, { + strings[1297], + strings[1298], + strings[1299], + strings[1300], + strings[1301], + strings[1302], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRailingTypeEnum_type = new enumeration_type(strings[1303], 862, { + strings[1304], + strings[1299], + strings[1305], + strings[1306], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRailwayPartTypeEnum_type = new enumeration_type(strings[1307], 866, { + strings[1308], + strings[1309], + strings[1310], + strings[1311], + strings[1312], + strings[1313], + strings[214], + strings[1314], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRailwayTypeEnum_type = new enumeration_type(strings[1315], 867, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRampFlightTypeEnum_type = new enumeration_type(strings[1316], 871, { + strings[1317], + strings[1318], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRampTypeEnum_type = new enumeration_type(strings[1319], 873, { + strings[1320], + strings[1321], + strings[1322], + strings[1323], + strings[1324], + strings[1325], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRatioMeasure_type = new type_declaration(strings[1326], 874, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcReal_type = new type_declaration(strings[1327], 877, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcRecurrenceTypeEnum_type = new enumeration_type(strings[1328], 883, { + strings[1329], + strings[1330], + strings[1331], + strings[1332], + strings[1333], + strings[1334], + strings[1335], + strings[1336] + }); + IFC4X3_RC4_IfcReferentTypeEnum_type = new enumeration_type(strings[1337], 886, { + strings[1338], + strings[1339], + strings[1340], + strings[1341], + strings[1342], + strings[1343], + strings[203], + strings[1344], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcReflectanceMethodEnum_type = new enumeration_type(strings[1345], 887, { + strings[1346], + strings[1347], + strings[1348], + strings[1349], + strings[383], + strings[1350], + strings[1351], + strings[384], + strings[1352], + strings[9] + }); + IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type = new enumeration_type(strings[1353], 890, { + strings[1354], + strings[1355], + strings[1356], + strings[1357], + strings[1358], + strings[1359], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcReinforcingBarRoleEnum_type = new enumeration_type(strings[1360], 894, { + strings[1361], + strings[1362], + strings[1363], + strings[1101], + strings[1364], + strings[1365], + strings[1366], + strings[1367], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type = new enumeration_type(strings[1368], 895, { + strings[1369], + strings[1370] + }); + IFC4X3_RC4_IfcReinforcingBarTypeEnum_type = new enumeration_type(strings[1371], 897, { + strings[1367], + strings[1365], + strings[1363], + strings[1361], + strings[1364], + strings[1366], + strings[1362], + strings[1101], + strings[1372], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type = new enumeration_type(strings[1373], 902, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRoadPartTypeEnum_type = new enumeration_type(strings[1374], 971, { + strings[1375], + strings[1376], + strings[1377], + strings[203], + strings[1378], + strings[1379], + strings[1380], + strings[1381], + strings[1382], + strings[1383], + strings[1384], + strings[1385], + strings[1386], + strings[1387], + strings[1388], + strings[1389], + strings[1390], + strings[1391], + strings[1392], + strings[1393], + strings[1394], + strings[1395], + strings[1396], + strings[1397], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRoadTypeEnum_type = new enumeration_type(strings[1398], 972, { + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRoleEnum_type = new enumeration_type(strings[1399], 973, { + strings[1400], + strings[1401], + strings[1402], + strings[1403], + strings[1404], + strings[1405], + strings[1406], + strings[1407], + strings[1408], + strings[1409], + strings[1410], + strings[1411], + strings[1412], + strings[1413], + strings[1414], + strings[1415], + strings[1416], + strings[1174], + strings[1417], + strings[1418], + strings[1419], + strings[1420], + strings[8] + }); + IFC4X3_RC4_IfcRoofTypeEnum_type = new enumeration_type(strings[1421], 976, { + strings[1422], + strings[1423], + strings[1424], + strings[1425], + strings[1426], + strings[1427], + strings[1428], + strings[1429], + strings[1430], + strings[1431], + strings[1432], + strings[1433], + strings[1434], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcRotationalFrequencyMeasure_type = new type_declaration(strings[1435], 978, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcRotationalMassMeasure_type = new type_declaration(strings[1436], 979, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcRotationalStiffnessMeasure_type = new type_declaration(strings[1437], 980, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcRotationalStiffnessSelect_type = new select_type(strings[1438], 981, { + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcRotationalStiffnessMeasure_type + }); + IFC4X3_RC4_IfcSIPrefix_type = new enumeration_type(strings[1439], 1026, { + strings[1440], + strings[1441], + strings[1442], + strings[1443], + strings[1444], + strings[1445], + strings[1446], + strings[1447], + strings[1448], + strings[1449], + strings[1450], + strings[1451], + strings[1452], + strings[1453], + strings[1454], + strings[1455] + }); + IFC4X3_RC4_IfcSIUnitName_type = new enumeration_type(strings[1456], 1029, { + strings[1457], + strings[1458], + strings[1459], + strings[1460], + strings[1461], + strings[1462], + strings[1463], + strings[1464], + strings[1465], + strings[1466], + strings[1467], + strings[1468], + strings[1469], + strings[1470], + strings[1471], + strings[1472], + strings[1473], + strings[1474], + strings[1475], + strings[1476], + strings[1477], + strings[1478], + strings[1479], + strings[1480], + strings[1481], + strings[1482], + strings[1483], + strings[1484], + strings[1485], + strings[1486] + }); + IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type = new enumeration_type(strings[1487], 985, { + strings[1488], + strings[1489], + strings[1490], + strings[1491], + strings[850], + strings[1492], + strings[1493], + strings[1494], + strings[1495], + strings[1496], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSectionModulusMeasure_type = new type_declaration(strings[1497], 994, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSectionTypeEnum_type = new enumeration_type(strings[1498], 997, { + strings[1499], + strings[1500] + }); + IFC4X3_RC4_IfcSectionalAreaIntegralMeasure_type = new type_declaration(strings[1501], 989, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSensorTypeEnum_type = new enumeration_type(strings[1502], 1003, { + strings[1503], + strings[1504], + strings[1505], + strings[1506], + strings[1507], + strings[1508], + strings[1509], + strings[1510], + strings[1511], + strings[1512], + strings[1513], + strings[1514], + strings[1515], + strings[1516], + strings[1517], + strings[1518], + strings[1519], + strings[1520], + strings[1521], + strings[1522], + strings[1523], + strings[1524], + strings[1525], + strings[1526], + strings[1527], + strings[1528], + strings[1529], + strings[1530], + strings[1531], + strings[1532], + strings[1533], + strings[1534], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSequenceEnum_type = new enumeration_type(strings[1535], 1004, { + strings[1536], + strings[1537], + strings[1538], + strings[1539], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcShadingDeviceTypeEnum_type = new enumeration_type(strings[1540], 1008, { + strings[1541], + strings[1542], + strings[1543], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcShearModulusMeasure_type = new type_declaration(strings[1544], 1012, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSignTypeEnum_type = new enumeration_type(strings[1545], 1020, { + strings[1546], + strings[1547], + strings[1350], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSignalTypeEnum_type = new enumeration_type(strings[1548], 1018, { + strings[1549], + strings[1550], + strings[1551], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type(strings[1552], 1023, { + strings[1553], + strings[1554], + strings[1555], + strings[1556], + strings[1557], + strings[1558], + strings[1559], + strings[1560], + strings[1561], + strings[1562], + strings[1563], + strings[1564] + }); + IFC4X3_RC4_IfcSlabTypeEnum_type = new enumeration_type(strings[1565], 1035, { + strings[1566], + strings[1567], + strings[1568], + strings[1569], + strings[1570], + strings[373], + strings[1571], + strings[1384], + strings[1572], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSolarDeviceTypeEnum_type = new enumeration_type(strings[1573], 1039, { + strings[1574], + strings[1575], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSolidAngleMeasure_type = new type_declaration(strings[1576], 1040, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSoundPowerLevelMeasure_type = new type_declaration(strings[1577], 1044, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSoundPowerMeasure_type = new type_declaration(strings[1578], 1045, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSoundPressureLevelMeasure_type = new type_declaration(strings[1579], 1046, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSoundPressureMeasure_type = new type_declaration(strings[1580], 1047, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type = new enumeration_type(strings[1581], 1052, { + strings[1582], + strings[1583], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSpaceTypeEnum_type = new enumeration_type(strings[1584], 1054, { + strings[1585], + strings[1586], + strings[1587], + strings[942], + strings[807], + strings[1588], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSpatialZoneTypeEnum_type = new enumeration_type(strings[1589], 1062, { + strings[1590], + strings[1591], + strings[372], + strings[1592], + strings[592], + strings[1275], + strings[23], + strings[599], + strings[1593], + strings[1594], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSpecificHeatCapacityMeasure_type = new type_declaration(strings[1595], 1063, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSpecularExponent_type = new type_declaration(strings[1596], 1064, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcSpecularRoughness_type = new type_declaration(strings[1597], 1066, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcStackTerminalTypeEnum_type = new enumeration_type(strings[1598], 1072, { + strings[1599], + strings[1600], + strings[1601], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcStairFlightTypeEnum_type = new enumeration_type(strings[1602], 1076, { + strings[1317], + strings[1603], + strings[1318], + strings[1604], + strings[1434], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcStairTypeEnum_type = new enumeration_type(strings[1605], 1078, { + strings[1606], + strings[1607], + strings[1608], + strings[1609], + strings[1610], + strings[1611], + strings[1612], + strings[1613], + strings[1614], + strings[1615], + strings[1616], + strings[1617], + strings[1618], + strings[1619], + strings[1620], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcStateEnum_type = new enumeration_type(strings[1621], 1079, { + strings[1622], + strings[1623], + strings[1624], + strings[1625], + strings[1626] + }); + IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type(strings[1627], 1087, { + strings[1628], + strings[440], + strings[1629], + strings[1630], + strings[1631], + strings[1632], + strings[1633], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type(strings[1634], 1090, { + strings[1635], + strings[1636], + strings[558], + strings[1637], + strings[1638], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type(strings[1639], 1116, { + strings[1628], + strings[1640], + strings[1633], + strings[1641], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type(strings[1642], 1119, { + strings[1643], + strings[1644], + strings[1645], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSubContractResourceTypeEnum_type = new enumeration_type(strings[1646], 1127, { + strings[1647], + strings[1198], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type = new enumeration_type(strings[1648], 1133, { + strings[1649], + strings[1650], + strings[1651], + strings[1652], + strings[1653], + strings[1654], + strings[1655], + strings[1656], + strings[1657], + strings[1658], + strings[1659], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSurfaceSide_type = new enumeration_type(strings[1660], 1138, { + strings[519], + strings[520], + strings[1661] + }); + IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type = new enumeration_type(strings[1662], 1153, { + strings[1663], + strings[1664], + strings[1665], + strings[1666], + strings[1667], + strings[1668], + strings[1669], + strings[1670], + strings[1671], + strings[750], + strings[1672], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type(strings[1673], 1157, { + strings[1674], + strings[1675], + strings[1676], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTankTypeEnum_type = new enumeration_type(strings[1677], 1163, { + strings[1678], + strings[1679], + strings[1680], + strings[1681], + strings[1682], + strings[1683], + strings[1684], + strings[1685], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTaskDurationEnum_type = new enumeration_type(strings[1686], 1165, { + strings[1687], + strings[1688], + strings[9] + }); + IFC4X3_RC4_IfcTaskTypeEnum_type = new enumeration_type(strings[1689], 1169, { + strings[1690], + strings[1590], + strings[1691], + strings[1692], + strings[574], + strings[1693], + strings[1694], + strings[1695], + strings[1696], + strings[1697], + strings[1698], + strings[1699], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTemperatureGradientMeasure_type = new type_declaration(strings[1700], 1171, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcTemperatureRateOfChangeMeasure_type = new type_declaration(strings[1701], 1172, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcTendonAnchorTypeEnum_type = new enumeration_type(strings[1702], 1176, { + strings[1080], + strings[1703], + strings[1704], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTendonConduitTypeEnum_type = new enumeration_type(strings[1705], 1179, { + strings[560], + strings[1080], + strings[1706], + strings[1707], + strings[1708], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTendonTypeEnum_type = new enumeration_type(strings[1709], 1181, { + strings[1710], + strings[1711], + strings[1712], + strings[1713], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcText_type = new type_declaration(strings[1714], 1184, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcTextAlignment_type = new type_declaration(strings[1715], 1185, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcTextDecoration_type = new type_declaration(strings[1716], 1186, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcTextFontName_type = new type_declaration(strings[1717], 1187, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcTextPath_type = new enumeration_type(strings[1718], 1191, { + strings[628], + strings[630], + strings[1719], + strings[1720] + }); + IFC4X3_RC4_IfcTextTransformation_type = new type_declaration(strings[1721], 1196, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcThermalAdmittanceMeasure_type = new type_declaration(strings[1722], 1202, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcThermalConductivityMeasure_type = new type_declaration(strings[1723], 1203, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcThermalExpansionCoefficientMeasure_type = new type_declaration(strings[1724], 1204, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcThermalResistanceMeasure_type = new type_declaration(strings[1725], 1205, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcThermalTransmittanceMeasure_type = new type_declaration(strings[1726], 1206, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type = new type_declaration(strings[1727], 1207, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcTime_type = new type_declaration(strings[1728], 1209, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcTimeMeasure_type = new type_declaration(strings[1729], 1210, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcTimeOrRatioSelect_type = new select_type(strings[1730], 1211, { + IFC4X3_RC4_IfcDuration_type, + IFC4X3_RC4_IfcRatioMeasure_type + }); + IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type = new enumeration_type(strings[1731], 1214, { + strings[1732], + strings[1633], + strings[1733], + strings[1734], + strings[1735], + strings[1736], + strings[9] + }); + IFC4X3_RC4_IfcTimeStamp_type = new type_declaration(strings[1737], 1216, new simple_type(simple_type::integer_type)); + IFC4X3_RC4_IfcTorqueMeasure_type = new type_declaration(strings[1738], 1220, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcTrackElementTypeEnum_type = new enumeration_type(strings[1739], 1223, { + strings[1740], + strings[1741], + strings[1742], + strings[1743], + strings[1744], + strings[1745], + strings[1746], + strings[1747], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTransformerTypeEnum_type = new enumeration_type(strings[1748], 1226, { + strings[32], + strings[1749], + strings[1750], + strings[1751], + strings[1752], + strings[1753], + strings[861], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTransitionCode_type = new enumeration_type(strings[1754], 1227, { + strings[1755], + strings[1732], + strings[1756], + strings[1757] + }); + IFC4X3_RC4_IfcTranslationalStiffnessSelect_type = new select_type(strings[1758], 1228, { + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcLinearStiffnessMeasure_type + }); + IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type = new enumeration_type(strings[1759], 1230, { + strings[1760], + strings[1761], + strings[1762], + strings[1763], + strings[1764], + strings[1765], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type = new enumeration_type(strings[1766], 1231, { + strings[1767], + strings[1768], + strings[1769], + strings[1770], + strings[1771], + strings[1772], + strings[1773], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcTransportElementTypeSelect_type = new select_type(strings[1774], 1233, { + IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type + }); + IFC4X3_RC4_IfcTrimmingPreference_type = new enumeration_type(strings[1775], 1238, { + strings[1776], + strings[1164], + strings[146] + }); + IFC4X3_RC4_IfcTubeBundleTypeEnum_type = new enumeration_type(strings[1777], 1243, { + strings[1778], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcURIReference_type = new type_declaration(strings[1779], 1257, new simple_type(simple_type::string_type)); + IFC4X3_RC4_IfcUnitEnum_type = new enumeration_type(strings[1780], 1256, { + strings[1781], + strings[1782], + strings[1783], + strings[1784], + strings[1785], + strings[1786], + strings[1787], + strings[1788], + strings[1789], + strings[1790], + strings[1791], + strings[1792], + strings[1793], + strings[1794], + strings[1795], + strings[1796], + strings[1797], + strings[1798], + strings[1799], + strings[1800], + strings[1801], + strings[1802], + strings[1803], + strings[1804], + strings[1805], + strings[1806], + strings[1807], + strings[1808], + strings[1809], + strings[8] + }); + IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type = new enumeration_type(strings[1810], 1251, { + strings[1811], + strings[1812], + strings[1813], + strings[1814], + strings[1815], + strings[1816], + strings[1817], + strings[1818], + strings[861], + strings[1819], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type(strings[1820], 1254, { + strings[1821], + strings[1822], + strings[1823], + strings[1824], + strings[1825], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcValveTypeEnum_type = new enumeration_type(strings[1826], 1262, { + strings[1827], + strings[1828], + strings[1829], + strings[1830], + strings[1831], + strings[1832], + strings[1833], + strings[1834], + strings[1835], + strings[1836], + strings[1837], + strings[1838], + strings[1839], + strings[1840], + strings[1841], + strings[1842], + strings[1843], + strings[1844], + strings[1845], + strings[1846], + strings[1847], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcVaporPermeabilityMeasure_type = new type_declaration(strings[1848], 1263, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcVibrationDamperTypeEnum_type = new enumeration_type(strings[1849], 1271, { + strings[1850], + strings[1851], + strings[1852], + strings[1212], + strings[1853], + strings[1854], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type = new enumeration_type(strings[1855], 1274, { + strings[1856], + strings[1857], + strings[1858], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type = new enumeration_type(strings[1859], 1278, { + strings[1860], + strings[1861], + strings[1862], + strings[1863], + strings[1864], + strings[1365], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcVolumeMeasure_type = new type_declaration(strings[1865], 1280, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcVolumetricFlowRateMeasure_type = new type_declaration(strings[1866], 1281, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcWallTypeEnum_type = new enumeration_type(strings[1867], 1286, { + strings[1868], + strings[1869], + strings[1870], + strings[1871], + strings[1362], + strings[1872], + strings[1873], + strings[1629], + strings[1874], + strings[1875], + strings[1876], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWarpingConstantMeasure_type = new type_declaration(strings[1877], 1287, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcWarpingMomentMeasure_type = new type_declaration(strings[1878], 1288, new simple_type(simple_type::real_type)); + IFC4X3_RC4_IfcWarpingStiffnessSelect_type = new select_type(strings[1879], 1289, { + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC4_IfcWasteTerminalTypeEnum_type = new enumeration_type(strings[1880], 1292, { + strings[1881], + strings[1882], + strings[1883], + strings[1884], + strings[1885], + strings[1886], + strings[1887], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWindowPanelOperationEnum_type = new enumeration_type(strings[1888], 1296, { + strings[1889], + strings[1890], + strings[1891], + strings[1892], + strings[1893], + strings[1894], + strings[1895], + strings[1896], + strings[1897], + strings[1898], + strings[1899], + strings[1900], + strings[1901], + strings[9] + }); + IFC4X3_RC4_IfcWindowPanelPositionEnum_type = new enumeration_type(strings[1902], 1297, { + strings[628], + strings[629], + strings[630], + strings[1903], + strings[1904], + strings[9] + }); + IFC4X3_RC4_IfcWindowStyleConstructionEnum_type = new enumeration_type(strings[1905], 1301, { + strings[632], + strings[633], + strings[634], + strings[385], + strings[635], + strings[384], + strings[1906], + strings[9] + }); + IFC4X3_RC4_IfcWindowStyleOperationEnum_type = new enumeration_type(strings[1907], 1302, { + strings[1908], + strings[1909], + strings[1910], + strings[1911], + strings[1912], + strings[1913], + strings[1914], + strings[1915], + strings[1916], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWindowTypeEnum_type = new enumeration_type(strings[1917], 1304, { + strings[1918], + strings[1919], + strings[1920], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWindowTypePartitioningEnum_type = new enumeration_type(strings[1921], 1305, { + strings[1908], + strings[1909], + strings[1910], + strings[1911], + strings[1912], + strings[1913], + strings[1914], + strings[1915], + strings[1916], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWorkCalendarTypeEnum_type = new enumeration_type(strings[1922], 1307, { + strings[1923], + strings[1924], + strings[1925], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWorkPlanTypeEnum_type = new enumeration_type(strings[1926], 1310, { + strings[1927], + strings[1928], + strings[1929], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcWorkScheduleTypeEnum_type = new enumeration_type(strings[1930], 1312, { + strings[1927], + strings[1928], + strings[1929], + strings[8], + strings[9] + }); + IFC4X3_RC4_IfcActorRole_type = new entity(strings[1931], false, 7, 0); + IFC4X3_RC4_IfcAddress_type = new entity(strings[1932], true, 12, 0); + IFC4X3_RC4_IfcAlignmentParameterSegment_type = new entity(strings[1933], true, 36, 0); + IFC4X3_RC4_IfcAlignmentVerticalSegment_type = new entity(strings[1934], false, 40, IFC4X3_RC4_IfcAlignmentParameterSegment_type); + IFC4X3_RC4_IfcApplication_type = new entity(strings[1935], false, 49, 0); + IFC4X3_RC4_IfcAppliedValue_type = new entity(strings[1936], false, 50, 0); + IFC4X3_RC4_IfcApproval_type = new entity(strings[1937], false, 52, 0); + IFC4X3_RC4_IfcBoundaryCondition_type = new entity(strings[1938], true, 94, 0); + IFC4X3_RC4_IfcBoundaryEdgeCondition_type = new entity(strings[1939], false, 96, IFC4X3_RC4_IfcBoundaryCondition_type); + IFC4X3_RC4_IfcBoundaryFaceCondition_type = new entity(strings[1940], false, 97, IFC4X3_RC4_IfcBoundaryCondition_type); + IFC4X3_RC4_IfcBoundaryNodeCondition_type = new entity(strings[1941], false, 98, IFC4X3_RC4_IfcBoundaryCondition_type); + IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type = new entity(strings[1942], false, 99, IFC4X3_RC4_IfcBoundaryNodeCondition_type); + IFC4X3_RC4_IfcConnectionGeometry_type = new entity(strings[1943], true, 208, 0); + IFC4X3_RC4_IfcConnectionPointGeometry_type = new entity(strings[1944], false, 210, IFC4X3_RC4_IfcConnectionGeometry_type); + IFC4X3_RC4_IfcConnectionSurfaceGeometry_type = new entity(strings[1945], false, 211, IFC4X3_RC4_IfcConnectionGeometry_type); + IFC4X3_RC4_IfcConnectionVolumeGeometry_type = new entity(strings[1946], false, 213, IFC4X3_RC4_IfcConnectionGeometry_type); + IFC4X3_RC4_IfcConstraint_type = new entity(strings[1947], true, 214, 0); + IFC4X3_RC4_IfcCoordinateOperation_type = new entity(strings[1948], true, 245, 0); + IFC4X3_RC4_IfcCoordinateReferenceSystem_type = new entity(strings[1949], true, 246, 0); + IFC4X3_RC4_IfcCostValue_type = new entity(strings[1950], false, 253, IFC4X3_RC4_IfcAppliedValue_type); + IFC4X3_RC4_IfcDerivedUnit_type = new entity(strings[1951], false, 301, 0); + IFC4X3_RC4_IfcDerivedUnitElement_type = new entity(strings[1952], false, 302, 0); + IFC4X3_RC4_IfcDimensionalExponents_type = new entity(strings[1953], false, 305, 0); + IFC4X3_RC4_IfcExternalInformation_type = new entity(strings[1954], true, 428, 0); + IFC4X3_RC4_IfcExternalReference_type = new entity(strings[1955], true, 432, 0); + IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type = new entity(strings[1956], false, 429, IFC4X3_RC4_IfcExternalReference_type); + IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type = new entity(strings[1957], false, 430, IFC4X3_RC4_IfcExternalReference_type); + IFC4X3_RC4_IfcExternallyDefinedTextFont_type = new entity(strings[1958], false, 431, IFC4X3_RC4_IfcExternalReference_type); + IFC4X3_RC4_IfcGridAxis_type = new entity(strings[1959], false, 525, 0); + IFC4X3_RC4_IfcIrregularTimeSeriesValue_type = new entity(strings[1960], false, 566, 0); + IFC4X3_RC4_IfcLibraryInformation_type = new entity(strings[1961], false, 588, IFC4X3_RC4_IfcExternalInformation_type); + IFC4X3_RC4_IfcLibraryReference_type = new entity(strings[1962], false, 589, IFC4X3_RC4_IfcExternalReference_type); + IFC4X3_RC4_IfcLightDistributionData_type = new entity(strings[1963], false, 592, 0); + IFC4X3_RC4_IfcLightIntensityDistribution_type = new entity(strings[1964], false, 598, 0); + IFC4X3_RC4_IfcMapConversion_type = new entity(strings[1965], false, 629, IFC4X3_RC4_IfcCoordinateOperation_type); + IFC4X3_RC4_IfcMaterialClassificationRelationship_type = new entity(strings[1966], false, 639, 0); + IFC4X3_RC4_IfcMaterialDefinition_type = new entity(strings[1967], true, 642, 0); + IFC4X3_RC4_IfcMaterialLayer_type = new entity(strings[1968], false, 644, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialLayerSet_type = new entity(strings[1969], false, 645, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialLayerWithOffsets_type = new entity(strings[1970], false, 647, IFC4X3_RC4_IfcMaterialLayer_type); + IFC4X3_RC4_IfcMaterialList_type = new entity(strings[1971], false, 648, 0); + IFC4X3_RC4_IfcMaterialProfile_type = new entity(strings[1972], false, 649, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialProfileSet_type = new entity(strings[1973], false, 650, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialProfileWithOffsets_type = new entity(strings[1974], false, 653, IFC4X3_RC4_IfcMaterialProfile_type); + IFC4X3_RC4_IfcMaterialUsageDefinition_type = new entity(strings[1975], true, 657, 0); + IFC4X3_RC4_IfcMeasureWithUnit_type = new entity(strings[1976], false, 659, 0); + IFC4X3_RC4_IfcMetric_type = new entity(strings[1977], false, 670, IFC4X3_RC4_IfcConstraint_type); + IFC4X3_RC4_IfcMonetaryUnit_type = new entity(strings[1978], false, 687, 0); + IFC4X3_RC4_IfcNamedUnit_type = new entity(strings[1979], true, 695, 0); + IFC4X3_RC4_IfcObjectPlacement_type = new entity(strings[1980], true, 706, 0); + IFC4X3_RC4_IfcObjective_type = new entity(strings[1981], false, 704, IFC4X3_RC4_IfcConstraint_type); + IFC4X3_RC4_IfcOrganization_type = new entity(strings[1982], false, 720, 0); + IFC4X3_RC4_IfcOwnerHistory_type = new entity(strings[1983], false, 727, 0); + IFC4X3_RC4_IfcPerson_type = new entity(strings[1984], false, 741, 0); + IFC4X3_RC4_IfcPersonAndOrganization_type = new entity(strings[1985], false, 742, 0); + IFC4X3_RC4_IfcPhysicalQuantity_type = new entity(strings[1986], true, 746, 0); + IFC4X3_RC4_IfcPhysicalSimpleQuantity_type = new entity(strings[1987], true, 747, IFC4X3_RC4_IfcPhysicalQuantity_type); + IFC4X3_RC4_IfcPostalAddress_type = new entity(strings[1988], false, 786, IFC4X3_RC4_IfcAddress_type); + IFC4X3_RC4_IfcPresentationItem_type = new entity(strings[1989], true, 796, 0); + IFC4X3_RC4_IfcPresentationLayerAssignment_type = new entity(strings[1990], false, 797, 0); + IFC4X3_RC4_IfcPresentationLayerWithStyle_type = new entity(strings[1991], false, 798, IFC4X3_RC4_IfcPresentationLayerAssignment_type); + IFC4X3_RC4_IfcPresentationStyle_type = new entity(strings[1992], true, 799, 0); + IFC4X3_RC4_IfcProductRepresentation_type = new entity(strings[1993], true, 808, 0); + IFC4X3_RC4_IfcProfileDef_type = new entity(strings[1994], false, 811, 0); + IFC4X3_RC4_IfcProjectedCRS_type = new entity(strings[1995], false, 815, IFC4X3_RC4_IfcCoordinateReferenceSystem_type); + IFC4X3_RC4_IfcPropertyAbstraction_type = new entity(strings[1996], true, 823, 0); + IFC4X3_RC4_IfcPropertyEnumeration_type = new entity(strings[1997], false, 828, IFC4X3_RC4_IfcPropertyAbstraction_type); + IFC4X3_RC4_IfcQuantityArea_type = new entity(strings[1998], false, 851, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC4_IfcQuantityCount_type = new entity(strings[1999], false, 852, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC4_IfcQuantityLength_type = new entity(strings[2000], false, 853, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC4_IfcQuantityTime_type = new entity(strings[2001], false, 855, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC4_IfcQuantityVolume_type = new entity(strings[2002], false, 856, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC4_IfcQuantityWeight_type = new entity(strings[2003], false, 857, IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); + IFC4X3_RC4_IfcRecurrencePattern_type = new entity(strings[2004], false, 882, 0); + IFC4X3_RC4_IfcReference_type = new entity(strings[2005], false, 884, 0); + IFC4X3_RC4_IfcRepresentation_type = new entity(strings[2006], true, 955, 0); + IFC4X3_RC4_IfcRepresentationContext_type = new entity(strings[2007], true, 956, 0); + IFC4X3_RC4_IfcRepresentationItem_type = new entity(strings[2008], true, 957, 0); + IFC4X3_RC4_IfcRepresentationMap_type = new entity(strings[2009], false, 958, 0); + IFC4X3_RC4_IfcResourceLevelRelationship_type = new entity(strings[2010], true, 962, 0); + IFC4X3_RC4_IfcRoot_type = new entity(strings[2011], true, 977, 0); + IFC4X3_RC4_IfcSIUnit_type = new entity(strings[2012], false, 1028, IFC4X3_RC4_IfcNamedUnit_type); + IFC4X3_RC4_IfcSchedulingTime_type = new entity(strings[2013], true, 986, 0); + IFC4X3_RC4_IfcShapeAspect_type = new entity(strings[2014], false, 1009, 0); + IFC4X3_RC4_IfcShapeModel_type = new entity(strings[2015], true, 1010, IFC4X3_RC4_IfcRepresentation_type); + IFC4X3_RC4_IfcShapeRepresentation_type = new entity(strings[2016], false, 1011, IFC4X3_RC4_IfcShapeModel_type); + IFC4X3_RC4_IfcStructuralConnectionCondition_type = new entity(strings[2017], true, 1085, 0); + IFC4X3_RC4_IfcStructuralLoad_type = new entity(strings[2018], true, 1095, 0); + IFC4X3_RC4_IfcStructuralLoadConfiguration_type = new entity(strings[2019], false, 1097, IFC4X3_RC4_IfcStructuralLoad_type); + IFC4X3_RC4_IfcStructuralLoadOrResult_type = new entity(strings[2020], true, 1100, IFC4X3_RC4_IfcStructuralLoad_type); + IFC4X3_RC4_IfcStructuralLoadStatic_type = new entity(strings[2021], true, 1106, IFC4X3_RC4_IfcStructuralLoadOrResult_type); + IFC4X3_RC4_IfcStructuralLoadTemperature_type = new entity(strings[2022], false, 1107, IFC4X3_RC4_IfcStructuralLoadStatic_type); + IFC4X3_RC4_IfcStyleModel_type = new entity(strings[2023], true, 1124, IFC4X3_RC4_IfcRepresentation_type); + IFC4X3_RC4_IfcStyledItem_type = new entity(strings[2024], false, 1122, IFC4X3_RC4_IfcRepresentationItem_type); + IFC4X3_RC4_IfcStyledRepresentation_type = new entity(strings[2025], false, 1123, IFC4X3_RC4_IfcStyleModel_type); + IFC4X3_RC4_IfcSurfaceReinforcementArea_type = new entity(strings[2026], false, 1137, IFC4X3_RC4_IfcStructuralLoadOrResult_type); + IFC4X3_RC4_IfcSurfaceStyle_type = new entity(strings[2027], false, 1139, IFC4X3_RC4_IfcPresentationStyle_type); + IFC4X3_RC4_IfcSurfaceStyleLighting_type = new entity(strings[2028], false, 1141, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcSurfaceStyleRefraction_type = new entity(strings[2029], false, 1142, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcSurfaceStyleShading_type = new entity(strings[2030], false, 1144, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcSurfaceStyleWithTextures_type = new entity(strings[2031], false, 1145, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcSurfaceTexture_type = new entity(strings[2032], true, 1146, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcTable_type = new entity(strings[2033], false, 1158, 0); + IFC4X3_RC4_IfcTableColumn_type = new entity(strings[2034], false, 1159, 0); + IFC4X3_RC4_IfcTableRow_type = new entity(strings[2035], false, 1160, 0); + IFC4X3_RC4_IfcTaskTime_type = new entity(strings[2036], false, 1166, IFC4X3_RC4_IfcSchedulingTime_type); + IFC4X3_RC4_IfcTaskTimeRecurring_type = new entity(strings[2037], false, 1167, IFC4X3_RC4_IfcTaskTime_type); + IFC4X3_RC4_IfcTelecomAddress_type = new entity(strings[2038], false, 1170, IFC4X3_RC4_IfcAddress_type); + IFC4X3_RC4_IfcTextStyle_type = new entity(strings[2039], false, 1192, IFC4X3_RC4_IfcPresentationStyle_type); + IFC4X3_RC4_IfcTextStyleForDefinedFont_type = new entity(strings[2040], false, 1194, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcTextStyleTextModel_type = new entity(strings[2041], false, 1195, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcTextureCoordinate_type = new entity(strings[2042], true, 1197, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcTextureCoordinateGenerator_type = new entity(strings[2043], false, 1198, IFC4X3_RC4_IfcTextureCoordinate_type); + IFC4X3_RC4_IfcTextureMap_type = new entity(strings[2044], false, 1199, IFC4X3_RC4_IfcTextureCoordinate_type); + IFC4X3_RC4_IfcTextureVertex_type = new entity(strings[2045], false, 1200, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcTextureVertexList_type = new entity(strings[2046], false, 1201, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcTimePeriod_type = new entity(strings[2047], false, 1212, 0); + IFC4X3_RC4_IfcTimeSeries_type = new entity(strings[2048], true, 1213, 0); + IFC4X3_RC4_IfcTimeSeriesValue_type = new entity(strings[2049], false, 1215, 0); + IFC4X3_RC4_IfcTopologicalRepresentationItem_type = new entity(strings[2050], true, 1217, IFC4X3_RC4_IfcRepresentationItem_type); + IFC4X3_RC4_IfcTopologyRepresentation_type = new entity(strings[2051], false, 1218, IFC4X3_RC4_IfcShapeModel_type); + IFC4X3_RC4_IfcUnitAssignment_type = new entity(strings[2052], false, 1255, 0); + IFC4X3_RC4_IfcVertex_type = new entity(strings[2053], false, 1266, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcVertexPoint_type = new entity(strings[2054], false, 1268, IFC4X3_RC4_IfcVertex_type); + IFC4X3_RC4_IfcVirtualGridIntersection_type = new entity(strings[2055], false, 1276, 0); + IFC4X3_RC4_IfcWorkTime_type = new entity(strings[2056], false, 1313, IFC4X3_RC4_IfcSchedulingTime_type); + IFC4X3_RC4_IfcActorSelect_type = new select_type(strings[2057], 8, { + IFC4X3_RC4_IfcOrganization_type, + IFC4X3_RC4_IfcPerson_type, + IFC4X3_RC4_IfcPersonAndOrganization_type + }); + IFC4X3_RC4_IfcArcIndex_type = new type_declaration(strings[2058], 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))); + IFC4X3_RC4_IfcBendingParameterSelect_type = new select_type(strings[2059], 81, { + IFC4X3_RC4_IfcLengthMeasure_type, + IFC4X3_RC4_IfcPlaneAngleMeasure_type + }); + IFC4X3_RC4_IfcBoxAlignment_type = new type_declaration(strings[2060], 103, new named_type(IFC4X3_RC4_IfcLabel_type)); + IFC4X3_RC4_IfcCurveMeasureSelect_type = new select_type(strings[2061], 278, { + IFC4X3_RC4_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC4_IfcParameterValue_type + }); + IFC4X3_RC4_IfcDerivedMeasureValue_type = new select_type(strings[2062], 299, { + IFC4X3_RC4_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC4_IfcAccelerationMeasure_type, + IFC4X3_RC4_IfcAngularVelocityMeasure_type, + IFC4X3_RC4_IfcAreaDensityMeasure_type, + IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC4_IfcCurvatureMeasure_type, + IFC4X3_RC4_IfcDoseEquivalentMeasure_type, + IFC4X3_RC4_IfcDynamicViscosityMeasure_type, + IFC4X3_RC4_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC4_IfcElectricChargeMeasure_type, + IFC4X3_RC4_IfcElectricConductanceMeasure_type, + IFC4X3_RC4_IfcElectricResistanceMeasure_type, + IFC4X3_RC4_IfcElectricVoltageMeasure_type, + IFC4X3_RC4_IfcEnergyMeasure_type, + IFC4X3_RC4_IfcForceMeasure_type, + IFC4X3_RC4_IfcFrequencyMeasure_type, + IFC4X3_RC4_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC4_IfcHeatingValueMeasure_type, + IFC4X3_RC4_IfcIlluminanceMeasure_type, + IFC4X3_RC4_IfcInductanceMeasure_type, + IFC4X3_RC4_IfcIntegerCountRateMeasure_type, + IFC4X3_RC4_IfcIonConcentrationMeasure_type, + IFC4X3_RC4_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC4_IfcKinematicViscosityMeasure_type, + IFC4X3_RC4_IfcLinearForceMeasure_type, + IFC4X3_RC4_IfcLinearMomentMeasure_type, + IFC4X3_RC4_IfcLinearStiffnessMeasure_type, + IFC4X3_RC4_IfcLinearVelocityMeasure_type, + IFC4X3_RC4_IfcLuminousFluxMeasure_type, + IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC4_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC4_IfcMagneticFluxMeasure_type, + IFC4X3_RC4_IfcMassDensityMeasure_type, + IFC4X3_RC4_IfcMassFlowRateMeasure_type, + IFC4X3_RC4_IfcMassPerLengthMeasure_type, + IFC4X3_RC4_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC4_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC4_IfcMolecularWeightMeasure_type, + IFC4X3_RC4_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC4_IfcMonetaryMeasure_type, + IFC4X3_RC4_IfcPHMeasure_type, + IFC4X3_RC4_IfcPlanarForceMeasure_type, + IFC4X3_RC4_IfcPowerMeasure_type, + IFC4X3_RC4_IfcPressureMeasure_type, + IFC4X3_RC4_IfcRadioActivityMeasure_type, + IFC4X3_RC4_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC4_IfcRotationalMassMeasure_type, + IFC4X3_RC4_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC4_IfcSectionModulusMeasure_type, + IFC4X3_RC4_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC4_IfcShearModulusMeasure_type, + IFC4X3_RC4_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC4_IfcSoundPowerMeasure_type, + IFC4X3_RC4_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC4_IfcSoundPressureMeasure_type, + IFC4X3_RC4_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC4_IfcTemperatureGradientMeasure_type, + IFC4X3_RC4_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC4_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC4_IfcThermalConductivityMeasure_type, + IFC4X3_RC4_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC4_IfcThermalResistanceMeasure_type, + IFC4X3_RC4_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC4_IfcTorqueMeasure_type, + IFC4X3_RC4_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC4_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC4_IfcWarpingConstantMeasure_type, + IFC4X3_RC4_IfcWarpingMomentMeasure_type + }); + IFC4X3_RC4_IfcFacilityPartTypeSelect_type = new select_type(strings[2063], 449, { + IFC4X3_RC4_IfcBridgePartTypeEnum_type, + IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC4_IfcMarinePartTypeEnum_type, + IFC4X3_RC4_IfcRailwayPartTypeEnum_type, + IFC4X3_RC4_IfcRoadPartTypeEnum_type + }); + IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type = new select_type(strings[2064], 546, { + IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC4_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type + }); + IFC4X3_RC4_IfcLayeredItem_type = new select_type(strings[2065], 585, { + IFC4X3_RC4_IfcRepresentation_type, + IFC4X3_RC4_IfcRepresentationItem_type + }); + IFC4X3_RC4_IfcLibrarySelect_type = new select_type(strings[2066], 590, { + IFC4X3_RC4_IfcLibraryInformation_type, + IFC4X3_RC4_IfcLibraryReference_type + }); + IFC4X3_RC4_IfcLightDistributionDataSourceSelect_type = new select_type(strings[2067], 593, { + IFC4X3_RC4_IfcExternalReference_type, + IFC4X3_RC4_IfcLightIntensityDistribution_type + }); + IFC4X3_RC4_IfcLineIndex_type = new type_declaration(strings[2068], 613, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))); + IFC4X3_RC4_IfcMaterialSelect_type = new select_type(strings[2069], 656, { + IFC4X3_RC4_IfcMaterialDefinition_type, + IFC4X3_RC4_IfcMaterialList_type, + IFC4X3_RC4_IfcMaterialUsageDefinition_type + }); + IFC4X3_RC4_IfcNormalisedRatioMeasure_type = new type_declaration(strings[2070], 700, new named_type(IFC4X3_RC4_IfcRatioMeasure_type)); + IFC4X3_RC4_IfcObjectReferenceSelect_type = new select_type(strings[2071], 707, { + IFC4X3_RC4_IfcAddress_type, + IFC4X3_RC4_IfcAppliedValue_type, + IFC4X3_RC4_IfcExternalReference_type, + IFC4X3_RC4_IfcMaterialDefinition_type, + IFC4X3_RC4_IfcOrganization_type, + IFC4X3_RC4_IfcPerson_type, + IFC4X3_RC4_IfcPersonAndOrganization_type, + IFC4X3_RC4_IfcTable_type, + IFC4X3_RC4_IfcTimeSeries_type + }); + IFC4X3_RC4_IfcPositiveRatioMeasure_type = new type_declaration(strings[2072], 785, new named_type(IFC4X3_RC4_IfcRatioMeasure_type)); + IFC4X3_RC4_IfcSegmentIndexSelect_type = new select_type(strings[2073], 1000, { + IFC4X3_RC4_IfcArcIndex_type, + IFC4X3_RC4_IfcLineIndex_type + }); + IFC4X3_RC4_IfcSimpleValue_type = new select_type(strings[2074], 1024, { + IFC4X3_RC4_IfcBinary_type, + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcDate_type, + IFC4X3_RC4_IfcDateTime_type, + IFC4X3_RC4_IfcDuration_type, + IFC4X3_RC4_IfcIdentifier_type, + IFC4X3_RC4_IfcInteger_type, + IFC4X3_RC4_IfcLabel_type, + IFC4X3_RC4_IfcLogical_type, + IFC4X3_RC4_IfcPositiveInteger_type, + IFC4X3_RC4_IfcReal_type, + IFC4X3_RC4_IfcText_type, + IFC4X3_RC4_IfcTime_type, + IFC4X3_RC4_IfcTimeStamp_type + }); + IFC4X3_RC4_IfcSizeSelect_type = new select_type(strings[2075], 1030, { + IFC4X3_RC4_IfcDescriptiveMeasure_type, + IFC4X3_RC4_IfcLengthMeasure_type, + IFC4X3_RC4_IfcNormalisedRatioMeasure_type, + IFC4X3_RC4_IfcPositiveLengthMeasure_type, + IFC4X3_RC4_IfcPositiveRatioMeasure_type, + IFC4X3_RC4_IfcRatioMeasure_type + }); + IFC4X3_RC4_IfcSpecularHighlightSelect_type = new select_type(strings[2076], 1065, { + IFC4X3_RC4_IfcSpecularExponent_type, + IFC4X3_RC4_IfcSpecularRoughness_type + }); + IFC4X3_RC4_IfcSurfaceStyleElementSelect_type = new select_type(strings[2077], 1140, { + IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC4_IfcSurfaceStyleLighting_type, + IFC4X3_RC4_IfcSurfaceStyleRefraction_type, + IFC4X3_RC4_IfcSurfaceStyleShading_type, + IFC4X3_RC4_IfcSurfaceStyleWithTextures_type + }); + IFC4X3_RC4_IfcUnit_type = new select_type(strings[2078], 1248, { + IFC4X3_RC4_IfcDerivedUnit_type, + IFC4X3_RC4_IfcMonetaryUnit_type, + IFC4X3_RC4_IfcNamedUnit_type + }); + IFC4X3_RC4_IfcAlignmentCantSegment_type = new entity(strings[2079], false, 31, IFC4X3_RC4_IfcAlignmentParameterSegment_type); + IFC4X3_RC4_IfcAlignmentHorizontalSegment_type = new entity(strings[2080], false, 34, IFC4X3_RC4_IfcAlignmentParameterSegment_type); + IFC4X3_RC4_IfcApprovalRelationship_type = new entity(strings[2081], false, 53, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcArbitraryClosedProfileDef_type = new entity(strings[2082], false, 54, IFC4X3_RC4_IfcProfileDef_type); + IFC4X3_RC4_IfcArbitraryOpenProfileDef_type = new entity(strings[2083], false, 55, IFC4X3_RC4_IfcProfileDef_type); + IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type = new entity(strings[2084], false, 56, IFC4X3_RC4_IfcArbitraryClosedProfileDef_type); + IFC4X3_RC4_IfcBlobTexture_type = new entity(strings[2085], false, 83, IFC4X3_RC4_IfcSurfaceTexture_type); + IFC4X3_RC4_IfcCenterLineProfileDef_type = new entity(strings[2086], false, 156, IFC4X3_RC4_IfcArbitraryOpenProfileDef_type); + IFC4X3_RC4_IfcClassification_type = new entity(strings[2087], false, 169, IFC4X3_RC4_IfcExternalInformation_type); + IFC4X3_RC4_IfcClassificationReference_type = new entity(strings[2088], false, 170, IFC4X3_RC4_IfcExternalReference_type); + IFC4X3_RC4_IfcColourRgbList_type = new entity(strings[2089], false, 181, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcColourSpecification_type = new entity(strings[2090], true, 182, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcCompositeProfileDef_type = new entity(strings[2091], false, 197, IFC4X3_RC4_IfcProfileDef_type); + IFC4X3_RC4_IfcConnectedFaceSet_type = new entity(strings[2092], false, 206, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcConnectionCurveGeometry_type = new entity(strings[2093], false, 207, IFC4X3_RC4_IfcConnectionGeometry_type); + IFC4X3_RC4_IfcConnectionPointEccentricity_type = new entity(strings[2094], false, 209, IFC4X3_RC4_IfcConnectionPointGeometry_type); + IFC4X3_RC4_IfcContextDependentUnit_type = new entity(strings[2095], false, 229, IFC4X3_RC4_IfcNamedUnit_type); + IFC4X3_RC4_IfcConversionBasedUnit_type = new entity(strings[2096], false, 234, IFC4X3_RC4_IfcNamedUnit_type); + IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type = new entity(strings[2097], false, 235, IFC4X3_RC4_IfcConversionBasedUnit_type); + IFC4X3_RC4_IfcCurrencyRelationship_type = new entity(strings[2098], false, 268, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcCurveStyle_type = new entity(strings[2099], false, 282, IFC4X3_RC4_IfcPresentationStyle_type); + IFC4X3_RC4_IfcCurveStyleFont_type = new entity(strings[2100], false, 283, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcCurveStyleFontAndScaling_type = new entity(strings[2101], false, 284, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcCurveStyleFontPattern_type = new entity(strings[2102], false, 285, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcDerivedProfileDef_type = new entity(strings[2103], false, 300, IFC4X3_RC4_IfcProfileDef_type); + IFC4X3_RC4_IfcDocumentInformation_type = new entity(strings[2104], false, 332, IFC4X3_RC4_IfcExternalInformation_type); + IFC4X3_RC4_IfcDocumentInformationRelationship_type = new entity(strings[2105], false, 333, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcDocumentReference_type = new entity(strings[2106], false, 334, IFC4X3_RC4_IfcExternalReference_type); + IFC4X3_RC4_IfcEdge_type = new entity(strings[2107], false, 368, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcEdgeCurve_type = new entity(strings[2108], false, 369, IFC4X3_RC4_IfcEdge_type); + IFC4X3_RC4_IfcEventTime_type = new entity(strings[2109], false, 423, IFC4X3_RC4_IfcSchedulingTime_type); + IFC4X3_RC4_IfcExtendedProperties_type = new entity(strings[2110], true, 427, IFC4X3_RC4_IfcPropertyAbstraction_type); + IFC4X3_RC4_IfcExternalReferenceRelationship_type = new entity(strings[2111], false, 433, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcFace_type = new entity(strings[2112], false, 439, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcFaceBound_type = new entity(strings[2113], false, 441, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcFaceOuterBound_type = new entity(strings[2114], false, 442, IFC4X3_RC4_IfcFaceBound_type); + IFC4X3_RC4_IfcFaceSurface_type = new entity(strings[2115], false, 443, IFC4X3_RC4_IfcFace_type); + IFC4X3_RC4_IfcFailureConnectionCondition_type = new entity(strings[2116], false, 451, IFC4X3_RC4_IfcStructuralConnectionCondition_type); + IFC4X3_RC4_IfcFillAreaStyle_type = new entity(strings[2117], false, 461, IFC4X3_RC4_IfcPresentationStyle_type); + IFC4X3_RC4_IfcGeometricRepresentationContext_type = new entity(strings[2118], false, 511, IFC4X3_RC4_IfcRepresentationContext_type); + IFC4X3_RC4_IfcGeometricRepresentationItem_type = new entity(strings[2119], true, 512, IFC4X3_RC4_IfcRepresentationItem_type); + IFC4X3_RC4_IfcGeometricRepresentationSubContext_type = new entity(strings[2120], false, 513, IFC4X3_RC4_IfcGeometricRepresentationContext_type); + IFC4X3_RC4_IfcGeometricSet_type = new entity(strings[2121], false, 514, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcGridPlacement_type = new entity(strings[2122], false, 526, IFC4X3_RC4_IfcObjectPlacement_type); + IFC4X3_RC4_IfcHalfSpaceSolid_type = new entity(strings[2123], false, 530, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcImageTexture_type = new entity(strings[2124], false, 542, IFC4X3_RC4_IfcSurfaceTexture_type); + IFC4X3_RC4_IfcIndexedColourMap_type = new entity(strings[2125], false, 547, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcIndexedTextureMap_type = new entity(strings[2126], true, 551, IFC4X3_RC4_IfcTextureCoordinate_type); + IFC4X3_RC4_IfcIndexedTriangleTextureMap_type = new entity(strings[2127], false, 552, IFC4X3_RC4_IfcIndexedTextureMap_type); + IFC4X3_RC4_IfcIrregularTimeSeries_type = new entity(strings[2128], false, 565, IFC4X3_RC4_IfcTimeSeries_type); + IFC4X3_RC4_IfcLagTime_type = new entity(strings[2129], false, 580, IFC4X3_RC4_IfcSchedulingTime_type); + IFC4X3_RC4_IfcLightSource_type = new entity(strings[2130], true, 599, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcLightSourceAmbient_type = new entity(strings[2131], false, 600, IFC4X3_RC4_IfcLightSource_type); + IFC4X3_RC4_IfcLightSourceDirectional_type = new entity(strings[2132], false, 601, IFC4X3_RC4_IfcLightSource_type); + IFC4X3_RC4_IfcLightSourceGoniometric_type = new entity(strings[2133], false, 602, IFC4X3_RC4_IfcLightSource_type); + IFC4X3_RC4_IfcLightSourcePositional_type = new entity(strings[2134], false, 603, IFC4X3_RC4_IfcLightSource_type); + IFC4X3_RC4_IfcLightSourceSpot_type = new entity(strings[2135], false, 604, IFC4X3_RC4_IfcLightSourcePositional_type); + IFC4X3_RC4_IfcLinearPlacement_type = new entity(strings[2136], false, 609, IFC4X3_RC4_IfcObjectPlacement_type); + IFC4X3_RC4_IfcLocalPlacement_type = new entity(strings[2137], false, 618, IFC4X3_RC4_IfcObjectPlacement_type); + IFC4X3_RC4_IfcLoop_type = new entity(strings[2138], false, 621, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcMappedItem_type = new entity(strings[2139], false, 630, IFC4X3_RC4_IfcRepresentationItem_type); + IFC4X3_RC4_IfcMaterial_type = new entity(strings[2140], false, 638, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialConstituent_type = new entity(strings[2141], false, 640, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialConstituentSet_type = new entity(strings[2142], false, 641, IFC4X3_RC4_IfcMaterialDefinition_type); + IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type = new entity(strings[2143], false, 643, IFC4X3_RC4_IfcProductRepresentation_type); + IFC4X3_RC4_IfcMaterialLayerSetUsage_type = new entity(strings[2144], false, 646, IFC4X3_RC4_IfcMaterialUsageDefinition_type); + IFC4X3_RC4_IfcMaterialProfileSetUsage_type = new entity(strings[2145], false, 651, IFC4X3_RC4_IfcMaterialUsageDefinition_type); + IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type = new entity(strings[2146], false, 652, IFC4X3_RC4_IfcMaterialProfileSetUsage_type); + IFC4X3_RC4_IfcMaterialProperties_type = new entity(strings[2147], false, 654, IFC4X3_RC4_IfcExtendedProperties_type); + IFC4X3_RC4_IfcMaterialRelationship_type = new entity(strings[2148], false, 655, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcMirroredProfileDef_type = new entity(strings[2149], false, 672, IFC4X3_RC4_IfcDerivedProfileDef_type); + IFC4X3_RC4_IfcObjectDefinition_type = new entity(strings[2150], true, 703, IFC4X3_RC4_IfcRoot_type); + IFC4X3_RC4_IfcOpenCrossProfileDef_type = new entity(strings[2151], false, 715, IFC4X3_RC4_IfcProfileDef_type); + IFC4X3_RC4_IfcOpenShell_type = new entity(strings[2152], false, 719, IFC4X3_RC4_IfcConnectedFaceSet_type); + IFC4X3_RC4_IfcOrganizationRelationship_type = new entity(strings[2153], false, 721, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcOrientedEdge_type = new entity(strings[2154], false, 722, IFC4X3_RC4_IfcEdge_type); + IFC4X3_RC4_IfcParameterizedProfileDef_type = new entity(strings[2155], true, 728, IFC4X3_RC4_IfcProfileDef_type); + IFC4X3_RC4_IfcPath_type = new entity(strings[2156], false, 730, IFC4X3_RC4_IfcTopologicalRepresentationItem_type); + IFC4X3_RC4_IfcPhysicalComplexQuantity_type = new entity(strings[2157], false, 744, IFC4X3_RC4_IfcPhysicalQuantity_type); + IFC4X3_RC4_IfcPixelTexture_type = new entity(strings[2158], false, 758, IFC4X3_RC4_IfcSurfaceTexture_type); + IFC4X3_RC4_IfcPlacement_type = new entity(strings[2159], true, 759, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcPlanarExtent_type = new entity(strings[2160], false, 761, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcPoint_type = new entity(strings[2161], true, 770, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcPointByDistanceExpression_type = new entity(strings[2162], false, 771, IFC4X3_RC4_IfcPoint_type); + IFC4X3_RC4_IfcPointOnCurve_type = new entity(strings[2163], false, 772, IFC4X3_RC4_IfcPoint_type); + IFC4X3_RC4_IfcPointOnSurface_type = new entity(strings[2164], false, 773, IFC4X3_RC4_IfcPoint_type); + IFC4X3_RC4_IfcPolyLoop_type = new entity(strings[2165], false, 778, IFC4X3_RC4_IfcLoop_type); + IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type = new entity(strings[2166], false, 775, IFC4X3_RC4_IfcHalfSpaceSolid_type); + IFC4X3_RC4_IfcPreDefinedItem_type = new entity(strings[2167], true, 790, IFC4X3_RC4_IfcPresentationItem_type); + IFC4X3_RC4_IfcPreDefinedProperties_type = new entity(strings[2168], true, 791, IFC4X3_RC4_IfcPropertyAbstraction_type); + IFC4X3_RC4_IfcPreDefinedTextFont_type = new entity(strings[2169], true, 793, IFC4X3_RC4_IfcPreDefinedItem_type); + IFC4X3_RC4_IfcProductDefinitionShape_type = new entity(strings[2170], false, 807, IFC4X3_RC4_IfcProductRepresentation_type); + IFC4X3_RC4_IfcProfileProperties_type = new entity(strings[2171], false, 812, IFC4X3_RC4_IfcExtendedProperties_type); + IFC4X3_RC4_IfcProperty_type = new entity(strings[2172], true, 822, IFC4X3_RC4_IfcPropertyAbstraction_type); + IFC4X3_RC4_IfcPropertyDefinition_type = new entity(strings[2173], true, 825, IFC4X3_RC4_IfcRoot_type); + IFC4X3_RC4_IfcPropertyDependencyRelationship_type = new entity(strings[2174], false, 826, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcPropertySetDefinition_type = new entity(strings[2175], true, 832, IFC4X3_RC4_IfcPropertyDefinition_type); + IFC4X3_RC4_IfcPropertyTemplateDefinition_type = new entity(strings[2176], true, 840, IFC4X3_RC4_IfcPropertyDefinition_type); + IFC4X3_RC4_IfcQuantitySet_type = new entity(strings[2177], true, 854, IFC4X3_RC4_IfcPropertySetDefinition_type); + IFC4X3_RC4_IfcRectangleProfileDef_type = new entity(strings[2178], false, 879, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcRegularTimeSeries_type = new entity(strings[2179], false, 888, IFC4X3_RC4_IfcTimeSeries_type); + IFC4X3_RC4_IfcReinforcementBarProperties_type = new entity(strings[2180], false, 891, IFC4X3_RC4_IfcPreDefinedProperties_type); + IFC4X3_RC4_IfcRelationship_type = new entity(strings[2181], true, 921, IFC4X3_RC4_IfcRoot_type); + IFC4X3_RC4_IfcResourceApprovalRelationship_type = new entity(strings[2182], false, 960, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcResourceConstraintRelationship_type = new entity(strings[2183], false, 961, IFC4X3_RC4_IfcResourceLevelRelationship_type); + IFC4X3_RC4_IfcResourceTime_type = new entity(strings[2184], false, 965, IFC4X3_RC4_IfcSchedulingTime_type); + IFC4X3_RC4_IfcRoundedRectangleProfileDef_type = new entity(strings[2185], false, 982, IFC4X3_RC4_IfcRectangleProfileDef_type); + IFC4X3_RC4_IfcSectionProperties_type = new entity(strings[2186], false, 995, IFC4X3_RC4_IfcPreDefinedProperties_type); + IFC4X3_RC4_IfcSectionReinforcementProperties_type = new entity(strings[2187], false, 996, IFC4X3_RC4_IfcPreDefinedProperties_type); + IFC4X3_RC4_IfcSectionedSpine_type = new entity(strings[2188], false, 992, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcSegment_type = new entity(strings[2189], true, 998, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcShellBasedSurfaceModel_type = new entity(strings[2190], false, 1014, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcSimpleProperty_type = new entity(strings[2191], true, 1021, IFC4X3_RC4_IfcProperty_type); + IFC4X3_RC4_IfcSlippageConnectionCondition_type = new entity(strings[2192], false, 1036, IFC4X3_RC4_IfcStructuralConnectionCondition_type); + IFC4X3_RC4_IfcSolidModel_type = new entity(strings[2193], true, 1041, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcStructuralLoadLinearForce_type = new entity(strings[2194], false, 1099, IFC4X3_RC4_IfcStructuralLoadStatic_type); + IFC4X3_RC4_IfcStructuralLoadPlanarForce_type = new entity(strings[2195], false, 1101, IFC4X3_RC4_IfcStructuralLoadStatic_type); + IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type = new entity(strings[2196], false, 1102, IFC4X3_RC4_IfcStructuralLoadStatic_type); + IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type = new entity(strings[2197], false, 1103, IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type); + IFC4X3_RC4_IfcStructuralLoadSingleForce_type = new entity(strings[2198], false, 1104, IFC4X3_RC4_IfcStructuralLoadStatic_type); + IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type = new entity(strings[2199], false, 1105, IFC4X3_RC4_IfcStructuralLoadSingleForce_type); + IFC4X3_RC4_IfcSubedge_type = new entity(strings[2200], false, 1128, IFC4X3_RC4_IfcEdge_type); + IFC4X3_RC4_IfcSurface_type = new entity(strings[2201], true, 1129, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcSurfaceStyleRendering_type = new entity(strings[2202], false, 1143, IFC4X3_RC4_IfcSurfaceStyleShading_type); + IFC4X3_RC4_IfcSweptAreaSolid_type = new entity(strings[2203], true, 1147, IFC4X3_RC4_IfcSolidModel_type); + IFC4X3_RC4_IfcSweptDiskSolid_type = new entity(strings[2204], false, 1148, IFC4X3_RC4_IfcSolidModel_type); + IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type = new entity(strings[2205], false, 1149, IFC4X3_RC4_IfcSweptDiskSolid_type); + IFC4X3_RC4_IfcSweptSurface_type = new entity(strings[2206], true, 1150, IFC4X3_RC4_IfcSurface_type); + IFC4X3_RC4_IfcTShapeProfileDef_type = new entity(strings[2207], false, 1240, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcTessellatedItem_type = new entity(strings[2208], true, 1183, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcTextLiteral_type = new entity(strings[2209], false, 1189, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcTextLiteralWithExtent_type = new entity(strings[2210], false, 1190, IFC4X3_RC4_IfcTextLiteral_type); + IFC4X3_RC4_IfcTextStyleFontModel_type = new entity(strings[2211], false, 1193, IFC4X3_RC4_IfcPreDefinedTextFont_type); + IFC4X3_RC4_IfcTrapeziumProfileDef_type = new entity(strings[2212], false, 1234, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcTypeObject_type = new entity(strings[2213], false, 1244, IFC4X3_RC4_IfcObjectDefinition_type); + IFC4X3_RC4_IfcTypeProcess_type = new entity(strings[2214], true, 1245, IFC4X3_RC4_IfcTypeObject_type); + IFC4X3_RC4_IfcTypeProduct_type = new entity(strings[2215], false, 1246, IFC4X3_RC4_IfcTypeObject_type); + IFC4X3_RC4_IfcTypeResource_type = new entity(strings[2216], true, 1247, IFC4X3_RC4_IfcTypeObject_type); + IFC4X3_RC4_IfcUShapeProfileDef_type = new entity(strings[2217], false, 1258, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcVector_type = new entity(strings[2218], false, 1264, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcVertexLoop_type = new entity(strings[2219], false, 1267, IFC4X3_RC4_IfcLoop_type); + IFC4X3_RC4_IfcWindowStyle_type = new entity(strings[2220], false, 1300, IFC4X3_RC4_IfcTypeProduct_type); + IFC4X3_RC4_IfcZShapeProfileDef_type = new entity(strings[2221], false, 1315, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcClassificationReferenceSelect_type = new select_type(strings[2222], 171, { + IFC4X3_RC4_IfcClassification_type, + IFC4X3_RC4_IfcClassificationReference_type + }); + IFC4X3_RC4_IfcClassificationSelect_type = new select_type(strings[2223], 172, { + IFC4X3_RC4_IfcClassification_type, + IFC4X3_RC4_IfcClassificationReference_type + }); + IFC4X3_RC4_IfcCoordinateReferenceSystemSelect_type = new select_type(strings[2224], 247, { + IFC4X3_RC4_IfcCoordinateReferenceSystem_type, + IFC4X3_RC4_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC4_IfcDefinitionSelect_type = new select_type(strings[2225], 298, { + IFC4X3_RC4_IfcObjectDefinition_type, + IFC4X3_RC4_IfcPropertyDefinition_type + }); + IFC4X3_RC4_IfcDocumentSelect_type = new select_type(strings[2226], 335, { + IFC4X3_RC4_IfcDocumentInformation_type, + IFC4X3_RC4_IfcDocumentReference_type + }); + IFC4X3_RC4_IfcHatchLineDistanceSelect_type = new select_type(strings[2227], 531, { + IFC4X3_RC4_IfcPositiveLengthMeasure_type, + IFC4X3_RC4_IfcVector_type + }); + IFC4X3_RC4_IfcMeasureValue_type = new select_type(strings[2228], 658, { + IFC4X3_RC4_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC4_IfcAreaMeasure_type, + IFC4X3_RC4_IfcComplexNumber_type, + IFC4X3_RC4_IfcContextDependentMeasure_type, + IFC4X3_RC4_IfcCountMeasure_type, + IFC4X3_RC4_IfcDescriptiveMeasure_type, + IFC4X3_RC4_IfcElectricCurrentMeasure_type, + IFC4X3_RC4_IfcLengthMeasure_type, + IFC4X3_RC4_IfcLuminousIntensityMeasure_type, + IFC4X3_RC4_IfcMassMeasure_type, + IFC4X3_RC4_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC4_IfcNormalisedRatioMeasure_type, + IFC4X3_RC4_IfcNumericMeasure_type, + IFC4X3_RC4_IfcParameterValue_type, + IFC4X3_RC4_IfcPlaneAngleMeasure_type, + IFC4X3_RC4_IfcPositiveLengthMeasure_type, + IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC4_IfcPositiveRatioMeasure_type, + IFC4X3_RC4_IfcRatioMeasure_type, + IFC4X3_RC4_IfcSolidAngleMeasure_type, + IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC4_IfcTimeMeasure_type, + IFC4X3_RC4_IfcVolumeMeasure_type + }); + IFC4X3_RC4_IfcPointOrVertexPoint_type = new select_type(strings[2229], 774, { + IFC4X3_RC4_IfcPoint_type, + IFC4X3_RC4_IfcVertexPoint_type + }); + IFC4X3_RC4_IfcProductRepresentationSelect_type = new select_type(strings[2230], 809, { + IFC4X3_RC4_IfcProductDefinitionShape_type, + IFC4X3_RC4_IfcRepresentationMap_type + }); + IFC4X3_RC4_IfcPropertySetDefinitionSet_type = new type_declaration(strings[2231], 834, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertySetDefinition_type))); + IFC4X3_RC4_IfcResourceObjectSelect_type = new select_type(strings[2232], 963, { + IFC4X3_RC4_IfcActorRole_type, + IFC4X3_RC4_IfcAppliedValue_type, + IFC4X3_RC4_IfcApproval_type, + IFC4X3_RC4_IfcConstraint_type, + IFC4X3_RC4_IfcContextDependentUnit_type, + IFC4X3_RC4_IfcConversionBasedUnit_type, + IFC4X3_RC4_IfcExternalInformation_type, + IFC4X3_RC4_IfcExternalReference_type, + IFC4X3_RC4_IfcMaterialDefinition_type, + IFC4X3_RC4_IfcOrganization_type, + IFC4X3_RC4_IfcPerson_type, + IFC4X3_RC4_IfcPersonAndOrganization_type, + IFC4X3_RC4_IfcPhysicalQuantity_type, + IFC4X3_RC4_IfcProfileDef_type, + IFC4X3_RC4_IfcPropertyAbstraction_type, + IFC4X3_RC4_IfcShapeAspect_type, + IFC4X3_RC4_IfcTimeSeries_type + }); + IFC4X3_RC4_IfcTextFontSelect_type = new select_type(strings[2233], 1188, { + IFC4X3_RC4_IfcExternallyDefinedTextFont_type, + IFC4X3_RC4_IfcPreDefinedTextFont_type + }); + IFC4X3_RC4_IfcValue_type = new select_type(strings[2234], 1259, { + IFC4X3_RC4_IfcDerivedMeasureValue_type, + IFC4X3_RC4_IfcMeasureValue_type, + IFC4X3_RC4_IfcSimpleValue_type + }); + IFC4X3_RC4_IfcAdvancedFace_type = new entity(strings[2235], false, 16, IFC4X3_RC4_IfcFaceSurface_type); + IFC4X3_RC4_IfcAnnotationFillArea_type = new entity(strings[2236], false, 47, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type = new entity(strings[2237], false, 63, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcAxis1Placement_type = new entity(strings[2238], false, 67, IFC4X3_RC4_IfcPlacement_type); + IFC4X3_RC4_IfcAxis2Placement2D_type = new entity(strings[2239], false, 69, IFC4X3_RC4_IfcPlacement_type); + IFC4X3_RC4_IfcAxis2Placement3D_type = new entity(strings[2240], false, 70, IFC4X3_RC4_IfcPlacement_type); + IFC4X3_RC4_IfcAxis2PlacementLinear_type = new entity(strings[2241], false, 71, IFC4X3_RC4_IfcPlacement_type); + IFC4X3_RC4_IfcBooleanResult_type = new entity(strings[2242], false, 92, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcBoundedSurface_type = new entity(strings[2243], true, 101, IFC4X3_RC4_IfcSurface_type); + IFC4X3_RC4_IfcBoundingBox_type = new entity(strings[2244], false, 102, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcBoxedHalfSpace_type = new entity(strings[2245], false, 104, IFC4X3_RC4_IfcHalfSpaceSolid_type); + IFC4X3_RC4_IfcCShapeProfileDef_type = new entity(strings[2246], false, 267, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcCartesianPoint_type = new entity(strings[2247], false, 147, IFC4X3_RC4_IfcPoint_type); + IFC4X3_RC4_IfcCartesianPointList_type = new entity(strings[2248], true, 148, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcCartesianPointList2D_type = new entity(strings[2249], false, 149, IFC4X3_RC4_IfcCartesianPointList_type); + IFC4X3_RC4_IfcCartesianPointList3D_type = new entity(strings[2250], false, 150, IFC4X3_RC4_IfcCartesianPointList_type); + IFC4X3_RC4_IfcCartesianTransformationOperator_type = new entity(strings[2251], true, 151, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcCartesianTransformationOperator2D_type = new entity(strings[2252], false, 152, IFC4X3_RC4_IfcCartesianTransformationOperator_type); + IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type = new entity(strings[2253], false, 153, IFC4X3_RC4_IfcCartesianTransformationOperator2D_type); + IFC4X3_RC4_IfcCartesianTransformationOperator3D_type = new entity(strings[2254], false, 154, IFC4X3_RC4_IfcCartesianTransformationOperator_type); + IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type = new entity(strings[2255], false, 155, IFC4X3_RC4_IfcCartesianTransformationOperator3D_type); + IFC4X3_RC4_IfcCircleProfileDef_type = new entity(strings[2256], false, 166, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcClosedShell_type = new entity(strings[2257], false, 173, IFC4X3_RC4_IfcConnectedFaceSet_type); + IFC4X3_RC4_IfcColourRgb_type = new entity(strings[2258], false, 180, IFC4X3_RC4_IfcColourSpecification_type); + IFC4X3_RC4_IfcComplexProperty_type = new entity(strings[2259], false, 191, IFC4X3_RC4_IfcProperty_type); + IFC4X3_RC4_IfcCompositeCurveSegment_type = new entity(strings[2260], false, 196, IFC4X3_RC4_IfcSegment_type); + IFC4X3_RC4_IfcConstructionResourceType_type = new entity(strings[2261], true, 226, IFC4X3_RC4_IfcTypeResource_type); + IFC4X3_RC4_IfcContext_type = new entity(strings[2262], true, 227, IFC4X3_RC4_IfcObjectDefinition_type); + IFC4X3_RC4_IfcCrewResourceType_type = new entity(strings[2263], false, 262, IFC4X3_RC4_IfcConstructionResourceType_type); + IFC4X3_RC4_IfcCsgPrimitive3D_type = new entity(strings[2264], true, 264, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcCsgSolid_type = new entity(strings[2265], false, 266, IFC4X3_RC4_IfcSolidModel_type); + IFC4X3_RC4_IfcCurve_type = new entity(strings[2266], true, 273, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcCurveBoundedPlane_type = new entity(strings[2267], false, 274, IFC4X3_RC4_IfcBoundedSurface_type); + IFC4X3_RC4_IfcCurveBoundedSurface_type = new entity(strings[2268], false, 275, IFC4X3_RC4_IfcBoundedSurface_type); + IFC4X3_RC4_IfcCurveSegment_type = new entity(strings[2269], false, 281, IFC4X3_RC4_IfcSegment_type); + IFC4X3_RC4_IfcDirection_type = new entity(strings[2270], false, 307, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type = new entity(strings[2271], true, 309, IFC4X3_RC4_IfcSweptAreaSolid_type); + IFC4X3_RC4_IfcDoorStyle_type = new entity(strings[2272], false, 343, IFC4X3_RC4_IfcTypeProduct_type); + IFC4X3_RC4_IfcEdgeLoop_type = new entity(strings[2273], false, 370, IFC4X3_RC4_IfcLoop_type); + IFC4X3_RC4_IfcElementQuantity_type = new entity(strings[2274], false, 406, IFC4X3_RC4_IfcQuantitySet_type); + IFC4X3_RC4_IfcElementType_type = new entity(strings[2275], true, 407, IFC4X3_RC4_IfcTypeProduct_type); + IFC4X3_RC4_IfcElementarySurface_type = new entity(strings[2276], true, 399, IFC4X3_RC4_IfcSurface_type); + IFC4X3_RC4_IfcEllipseProfileDef_type = new entity(strings[2277], false, 409, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcEventType_type = new entity(strings[2278], false, 425, IFC4X3_RC4_IfcTypeProcess_type); + IFC4X3_RC4_IfcExtrudedAreaSolid_type = new entity(strings[2279], false, 437, IFC4X3_RC4_IfcSweptAreaSolid_type); + IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type = new entity(strings[2280], false, 438, IFC4X3_RC4_IfcExtrudedAreaSolid_type); + IFC4X3_RC4_IfcFaceBasedSurfaceModel_type = new entity(strings[2281], false, 440, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcFillAreaStyleHatching_type = new entity(strings[2282], false, 462, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcFillAreaStyleTiles_type = new entity(strings[2283], false, 463, IFC4X3_RC4_IfcGeometricRepresentationItem_type); + IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type = new entity(strings[2284], false, 471, IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC4_IfcFurnishingElementType_type = new entity(strings[2285], false, 502, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcFurnitureType_type = new entity(strings[2286], false, 504, IFC4X3_RC4_IfcFurnishingElementType_type); + IFC4X3_RC4_IfcGeographicElementType_type = new entity(strings[2287], false, 507, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcGeometricCurveSet_type = new entity(strings[2288], false, 509, IFC4X3_RC4_IfcGeometricSet_type); + IFC4X3_RC4_IfcIShapeProfileDef_type = new entity(strings[2289], false, 567, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcIndexedPolygonalFace_type = new entity(strings[2290], false, 549, IFC4X3_RC4_IfcTessellatedItem_type); + IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type = new entity(strings[2291], false, 550, IFC4X3_RC4_IfcIndexedPolygonalFace_type); + IFC4X3_RC4_IfcLShapeProfileDef_type = new entity(strings[2292], false, 622, IFC4X3_RC4_IfcParameterizedProfileDef_type); + IFC4X3_RC4_IfcLaborResourceType_type = new entity(strings[2293], false, 578, IFC4X3_RC4_IfcConstructionResourceType_type); + IFC4X3_RC4_IfcLine_type = new entity(strings[2294], false, 605, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcManifoldSolidBrep_type = new entity(strings[2295], true, 628, IFC4X3_RC4_IfcSolidModel_type); + IFC4X3_RC4_IfcObject_type = new entity(strings[2296], true, 702, IFC4X3_RC4_IfcObjectDefinition_type); + IFC4X3_RC4_IfcOffsetCurve_type = new entity(strings[2297], true, 711, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcOffsetCurve2D_type = new entity(strings[2298], false, 712, IFC4X3_RC4_IfcOffsetCurve_type); + IFC4X3_RC4_IfcOffsetCurve3D_type = new entity(strings[2299], false, 713, IFC4X3_RC4_IfcOffsetCurve_type); + IFC4X3_RC4_IfcOffsetCurveByDistances_type = new entity(strings[2300], false, 714, IFC4X3_RC4_IfcOffsetCurve_type); + IFC4X3_RC4_IfcPcurve_type = new entity(strings[2301], false, 734, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcPlanarBox_type = new entity(strings[2302], false, 760, IFC4X3_RC4_IfcPlanarExtent_type); + IFC4X3_RC4_IfcPlane_type = new entity(strings[2303], false, 763, IFC4X3_RC4_IfcElementarySurface_type); + IFC4X3_RC4_IfcPolynomialCurve_type = new entity(strings[2304], false, 779, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcPreDefinedColour_type = new entity(strings[2305], true, 788, IFC4X3_RC4_IfcPreDefinedItem_type); + IFC4X3_RC4_IfcPreDefinedCurveFont_type = new entity(strings[2306], true, 789, IFC4X3_RC4_IfcPreDefinedItem_type); + IFC4X3_RC4_IfcPreDefinedPropertySet_type = new entity(strings[2307], true, 792, IFC4X3_RC4_IfcPropertySetDefinition_type); + IFC4X3_RC4_IfcProcedureType_type = new entity(strings[2308], false, 802, IFC4X3_RC4_IfcTypeProcess_type); + IFC4X3_RC4_IfcProcess_type = new entity(strings[2309], true, 804, IFC4X3_RC4_IfcObject_type); + IFC4X3_RC4_IfcProduct_type = new entity(strings[2310], true, 806, IFC4X3_RC4_IfcObject_type); + IFC4X3_RC4_IfcProject_type = new entity(strings[2311], false, 814, IFC4X3_RC4_IfcContext_type); + IFC4X3_RC4_IfcProjectLibrary_type = new entity(strings[2312], false, 819, IFC4X3_RC4_IfcContext_type); + IFC4X3_RC4_IfcPropertyBoundedValue_type = new entity(strings[2313], false, 824, IFC4X3_RC4_IfcSimpleProperty_type); + IFC4X3_RC4_IfcPropertyEnumeratedValue_type = new entity(strings[2314], false, 827, IFC4X3_RC4_IfcSimpleProperty_type); + IFC4X3_RC4_IfcPropertyListValue_type = new entity(strings[2315], false, 829, IFC4X3_RC4_IfcSimpleProperty_type); + IFC4X3_RC4_IfcPropertyReferenceValue_type = new entity(strings[2316], false, 830, IFC4X3_RC4_IfcSimpleProperty_type); + IFC4X3_RC4_IfcPropertySet_type = new entity(strings[2317], false, 831, IFC4X3_RC4_IfcPropertySetDefinition_type); + IFC4X3_RC4_IfcPropertySetTemplate_type = new entity(strings[2318], false, 835, IFC4X3_RC4_IfcPropertyTemplateDefinition_type); + IFC4X3_RC4_IfcPropertySingleValue_type = new entity(strings[2319], false, 837, IFC4X3_RC4_IfcSimpleProperty_type); + IFC4X3_RC4_IfcPropertyTableValue_type = new entity(strings[2320], false, 838, IFC4X3_RC4_IfcSimpleProperty_type); + IFC4X3_RC4_IfcPropertyTemplate_type = new entity(strings[2321], true, 839, IFC4X3_RC4_IfcPropertyTemplateDefinition_type); + IFC4X3_RC4_IfcProxy_type = new entity(strings[2322], false, 847, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcRectangleHollowProfileDef_type = new entity(strings[2323], false, 878, IFC4X3_RC4_IfcRectangleProfileDef_type); + IFC4X3_RC4_IfcRectangularPyramid_type = new entity(strings[2324], false, 880, IFC4X3_RC4_IfcCsgPrimitive3D_type); + IFC4X3_RC4_IfcRectangularTrimmedSurface_type = new entity(strings[2325], false, 881, IFC4X3_RC4_IfcBoundedSurface_type); + IFC4X3_RC4_IfcReinforcementDefinitionProperties_type = new entity(strings[2326], false, 892, IFC4X3_RC4_IfcPreDefinedPropertySet_type); + IFC4X3_RC4_IfcRelAssigns_type = new entity(strings[2327], true, 905, IFC4X3_RC4_IfcRelationship_type); + IFC4X3_RC4_IfcRelAssignsToActor_type = new entity(strings[2328], false, 906, IFC4X3_RC4_IfcRelAssigns_type); + IFC4X3_RC4_IfcRelAssignsToControl_type = new entity(strings[2329], false, 907, IFC4X3_RC4_IfcRelAssigns_type); + IFC4X3_RC4_IfcRelAssignsToGroup_type = new entity(strings[2330], false, 908, IFC4X3_RC4_IfcRelAssigns_type); + IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type = new entity(strings[2331], false, 909, IFC4X3_RC4_IfcRelAssignsToGroup_type); + IFC4X3_RC4_IfcRelAssignsToProcess_type = new entity(strings[2332], false, 910, IFC4X3_RC4_IfcRelAssigns_type); + IFC4X3_RC4_IfcRelAssignsToProduct_type = new entity(strings[2333], false, 911, IFC4X3_RC4_IfcRelAssigns_type); + IFC4X3_RC4_IfcRelAssignsToResource_type = new entity(strings[2334], false, 912, IFC4X3_RC4_IfcRelAssigns_type); + IFC4X3_RC4_IfcRelAssociates_type = new entity(strings[2335], true, 913, IFC4X3_RC4_IfcRelationship_type); + IFC4X3_RC4_IfcRelAssociatesApproval_type = new entity(strings[2336], false, 914, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelAssociatesClassification_type = new entity(strings[2337], false, 915, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelAssociatesConstraint_type = new entity(strings[2338], false, 916, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelAssociatesDocument_type = new entity(strings[2339], false, 917, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelAssociatesLibrary_type = new entity(strings[2340], false, 918, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelAssociatesMaterial_type = new entity(strings[2341], false, 919, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelAssociatesProfileDef_type = new entity(strings[2342], false, 920, IFC4X3_RC4_IfcRelAssociates_type); + IFC4X3_RC4_IfcRelConnects_type = new entity(strings[2343], true, 922, IFC4X3_RC4_IfcRelationship_type); + IFC4X3_RC4_IfcRelConnectsElements_type = new entity(strings[2344], false, 923, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelConnectsPathElements_type = new entity(strings[2345], false, 924, IFC4X3_RC4_IfcRelConnectsElements_type); + IFC4X3_RC4_IfcRelConnectsPortToElement_type = new entity(strings[2346], false, 926, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelConnectsPorts_type = new entity(strings[2347], false, 925, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelConnectsStructuralActivity_type = new entity(strings[2348], false, 927, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelConnectsStructuralMember_type = new entity(strings[2349], false, 928, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelConnectsWithEccentricity_type = new entity(strings[2350], false, 929, IFC4X3_RC4_IfcRelConnectsStructuralMember_type); + IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type = new entity(strings[2351], false, 930, IFC4X3_RC4_IfcRelConnectsElements_type); + IFC4X3_RC4_IfcRelContainedInSpatialStructure_type = new entity(strings[2352], false, 931, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelCoversBldgElements_type = new entity(strings[2353], false, 932, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelCoversSpaces_type = new entity(strings[2354], false, 933, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelDeclares_type = new entity(strings[2355], false, 934, IFC4X3_RC4_IfcRelationship_type); + IFC4X3_RC4_IfcRelDecomposes_type = new entity(strings[2356], true, 935, IFC4X3_RC4_IfcRelationship_type); + IFC4X3_RC4_IfcRelDefines_type = new entity(strings[2357], true, 936, IFC4X3_RC4_IfcRelationship_type); + IFC4X3_RC4_IfcRelDefinesByObject_type = new entity(strings[2358], false, 937, IFC4X3_RC4_IfcRelDefines_type); + IFC4X3_RC4_IfcRelDefinesByProperties_type = new entity(strings[2359], false, 938, IFC4X3_RC4_IfcRelDefines_type); + IFC4X3_RC4_IfcRelDefinesByTemplate_type = new entity(strings[2360], false, 939, IFC4X3_RC4_IfcRelDefines_type); + IFC4X3_RC4_IfcRelDefinesByType_type = new entity(strings[2361], false, 940, IFC4X3_RC4_IfcRelDefines_type); + IFC4X3_RC4_IfcRelFillsElement_type = new entity(strings[2362], false, 941, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelFlowControlElements_type = new entity(strings[2363], false, 942, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelInterferesElements_type = new entity(strings[2364], false, 943, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelNests_type = new entity(strings[2365], false, 944, IFC4X3_RC4_IfcRelDecomposes_type); + IFC4X3_RC4_IfcRelPositions_type = new entity(strings[2366], false, 945, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelProjectsElement_type = new entity(strings[2367], false, 946, IFC4X3_RC4_IfcRelDecomposes_type); + IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type = new entity(strings[2368], false, 947, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelSequence_type = new entity(strings[2369], false, 948, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelServicesBuildings_type = new entity(strings[2370], false, 949, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelSpaceBoundary_type = new entity(strings[2371], false, 950, IFC4X3_RC4_IfcRelConnects_type); + IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type = new entity(strings[2372], false, 951, IFC4X3_RC4_IfcRelSpaceBoundary_type); + IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type = new entity(strings[2373], false, 952, IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type); + IFC4X3_RC4_IfcRelVoidsElement_type = new entity(strings[2374], false, 953, IFC4X3_RC4_IfcRelDecomposes_type); + IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type = new entity(strings[2375], false, 954, IFC4X3_RC4_IfcCompositeCurveSegment_type); + IFC4X3_RC4_IfcResource_type = new entity(strings[2376], true, 959, IFC4X3_RC4_IfcObject_type); + IFC4X3_RC4_IfcRevolvedAreaSolid_type = new entity(strings[2377], false, 966, IFC4X3_RC4_IfcSweptAreaSolid_type); + IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type = new entity(strings[2378], false, 967, IFC4X3_RC4_IfcRevolvedAreaSolid_type); + IFC4X3_RC4_IfcRightCircularCone_type = new entity(strings[2379], false, 968, IFC4X3_RC4_IfcCsgPrimitive3D_type); + IFC4X3_RC4_IfcRightCircularCylinder_type = new entity(strings[2380], false, 969, IFC4X3_RC4_IfcCsgPrimitive3D_type); + IFC4X3_RC4_IfcSectionedSolid_type = new entity(strings[2381], true, 990, IFC4X3_RC4_IfcSolidModel_type); + IFC4X3_RC4_IfcSectionedSolidHorizontal_type = new entity(strings[2382], false, 991, IFC4X3_RC4_IfcSectionedSolid_type); + IFC4X3_RC4_IfcSectionedSurface_type = new entity(strings[2383], false, 993, IFC4X3_RC4_IfcSurface_type); + IFC4X3_RC4_IfcSimplePropertyTemplate_type = new entity(strings[2384], false, 1022, IFC4X3_RC4_IfcPropertyTemplate_type); + IFC4X3_RC4_IfcSpatialElement_type = new entity(strings[2385], true, 1055, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcSpatialElementType_type = new entity(strings[2386], true, 1056, IFC4X3_RC4_IfcTypeProduct_type); + IFC4X3_RC4_IfcSpatialStructureElement_type = new entity(strings[2387], true, 1058, IFC4X3_RC4_IfcSpatialElement_type); + IFC4X3_RC4_IfcSpatialStructureElementType_type = new entity(strings[2388], true, 1059, IFC4X3_RC4_IfcSpatialElementType_type); + IFC4X3_RC4_IfcSpatialZone_type = new entity(strings[2389], false, 1060, IFC4X3_RC4_IfcSpatialElement_type); + IFC4X3_RC4_IfcSpatialZoneType_type = new entity(strings[2390], false, 1061, IFC4X3_RC4_IfcSpatialElementType_type); + IFC4X3_RC4_IfcSphere_type = new entity(strings[2391], false, 1067, IFC4X3_RC4_IfcCsgPrimitive3D_type); + IFC4X3_RC4_IfcSphericalSurface_type = new entity(strings[2392], false, 1068, IFC4X3_RC4_IfcElementarySurface_type); + IFC4X3_RC4_IfcSpiral_type = new entity(strings[2393], true, 1069, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcStructuralActivity_type = new entity(strings[2394], true, 1081, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcStructuralItem_type = new entity(strings[2395], true, 1093, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcStructuralMember_type = new entity(strings[2396], true, 1108, IFC4X3_RC4_IfcStructuralItem_type); + IFC4X3_RC4_IfcStructuralReaction_type = new entity(strings[2397], true, 1113, IFC4X3_RC4_IfcStructuralActivity_type); + IFC4X3_RC4_IfcStructuralSurfaceMember_type = new entity(strings[2398], false, 1118, IFC4X3_RC4_IfcStructuralMember_type); + IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type = new entity(strings[2399], false, 1120, IFC4X3_RC4_IfcStructuralSurfaceMember_type); + IFC4X3_RC4_IfcStructuralSurfaceReaction_type = new entity(strings[2400], false, 1121, IFC4X3_RC4_IfcStructuralReaction_type); + IFC4X3_RC4_IfcSubContractResourceType_type = new entity(strings[2401], false, 1126, IFC4X3_RC4_IfcConstructionResourceType_type); + IFC4X3_RC4_IfcSurfaceCurve_type = new entity(strings[2402], false, 1130, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type = new entity(strings[2403], false, 1131, IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type); + IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type = new entity(strings[2404], false, 1134, IFC4X3_RC4_IfcSweptSurface_type); + IFC4X3_RC4_IfcSurfaceOfRevolution_type = new entity(strings[2405], false, 1135, IFC4X3_RC4_IfcSweptSurface_type); + IFC4X3_RC4_IfcSystemFurnitureElementType_type = new entity(strings[2406], false, 1156, IFC4X3_RC4_IfcFurnishingElementType_type); + IFC4X3_RC4_IfcTask_type = new entity(strings[2407], false, 1164, IFC4X3_RC4_IfcProcess_type); + IFC4X3_RC4_IfcTaskType_type = new entity(strings[2408], false, 1168, IFC4X3_RC4_IfcTypeProcess_type); + IFC4X3_RC4_IfcTessellatedFaceSet_type = new entity(strings[2409], true, 1182, IFC4X3_RC4_IfcTessellatedItem_type); + IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type = new entity(strings[2410], false, 1208, IFC4X3_RC4_IfcSpiral_type); + IFC4X3_RC4_IfcToroidalSurface_type = new entity(strings[2411], false, 1219, IFC4X3_RC4_IfcElementarySurface_type); + IFC4X3_RC4_IfcTransportElementType_type = new entity(strings[2412], false, 1232, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcTriangulatedFaceSet_type = new entity(strings[2413], false, 1235, IFC4X3_RC4_IfcTessellatedFaceSet_type); + IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type = new entity(strings[2414], false, 1236, IFC4X3_RC4_IfcTriangulatedFaceSet_type); + IFC4X3_RC4_IfcWindowLiningProperties_type = new entity(strings[2415], false, 1295, IFC4X3_RC4_IfcPreDefinedPropertySet_type); + IFC4X3_RC4_IfcWindowPanelProperties_type = new entity(strings[2416], false, 1298, IFC4X3_RC4_IfcPreDefinedPropertySet_type); + IFC4X3_RC4_IfcAppliedValueSelect_type = new select_type(strings[2417], 51, { + IFC4X3_RC4_IfcMeasureWithUnit_type, + IFC4X3_RC4_IfcReference_type, + IFC4X3_RC4_IfcValue_type + }); + IFC4X3_RC4_IfcAxis2Placement_type = new select_type(strings[2418], 68, { + IFC4X3_RC4_IfcAxis2Placement2D_type, + IFC4X3_RC4_IfcAxis2Placement3D_type + }); + IFC4X3_RC4_IfcBooleanOperand_type = new select_type(strings[2419], 90, { + IFC4X3_RC4_IfcBooleanResult_type, + IFC4X3_RC4_IfcCsgPrimitive3D_type, + IFC4X3_RC4_IfcHalfSpaceSolid_type, + IFC4X3_RC4_IfcSolidModel_type, + IFC4X3_RC4_IfcTessellatedFaceSet_type + }); + IFC4X3_RC4_IfcColour_type = new select_type(strings[2420], 178, { + IFC4X3_RC4_IfcColourSpecification_type, + IFC4X3_RC4_IfcPreDefinedColour_type + }); + IFC4X3_RC4_IfcColourOrFactor_type = new select_type(strings[2421], 179, { + IFC4X3_RC4_IfcColourRgb_type, + IFC4X3_RC4_IfcNormalisedRatioMeasure_type + }); + IFC4X3_RC4_IfcCsgSelect_type = new select_type(strings[2422], 265, { + IFC4X3_RC4_IfcBooleanResult_type, + IFC4X3_RC4_IfcCsgPrimitive3D_type + }); + IFC4X3_RC4_IfcCurveStyleFontSelect_type = new select_type(strings[2423], 286, { + IFC4X3_RC4_IfcCurveStyleFont_type, + IFC4X3_RC4_IfcPreDefinedCurveFont_type + }); + IFC4X3_RC4_IfcFillStyleSelect_type = new select_type(strings[2424], 464, { + IFC4X3_RC4_IfcColour_type, + IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC4_IfcFillAreaStyleHatching_type, + IFC4X3_RC4_IfcFillAreaStyleTiles_type + }); + IFC4X3_RC4_IfcGeometricSetSelect_type = new select_type(strings[2425], 515, { + IFC4X3_RC4_IfcCurve_type, + IFC4X3_RC4_IfcPoint_type, + IFC4X3_RC4_IfcSurface_type + }); + IFC4X3_RC4_IfcGridPlacementDirectionSelect_type = new select_type(strings[2426], 527, { + IFC4X3_RC4_IfcDirection_type, + IFC4X3_RC4_IfcVirtualGridIntersection_type + }); + IFC4X3_RC4_IfcMetricValueSelect_type = new select_type(strings[2427], 671, { + IFC4X3_RC4_IfcAppliedValue_type, + IFC4X3_RC4_IfcMeasureWithUnit_type, + IFC4X3_RC4_IfcReference_type, + IFC4X3_RC4_IfcTable_type, + IFC4X3_RC4_IfcTimeSeries_type, + IFC4X3_RC4_IfcValue_type + }); + IFC4X3_RC4_IfcProcessSelect_type = new select_type(strings[2428], 805, { + IFC4X3_RC4_IfcProcess_type, + IFC4X3_RC4_IfcTypeProcess_type + }); + IFC4X3_RC4_IfcProductSelect_type = new select_type(strings[2429], 810, { + IFC4X3_RC4_IfcProduct_type, + IFC4X3_RC4_IfcTypeProduct_type + }); + IFC4X3_RC4_IfcPropertySetDefinitionSelect_type = new select_type(strings[2430], 833, { + IFC4X3_RC4_IfcPropertySetDefinition_type, + IFC4X3_RC4_IfcPropertySetDefinitionSet_type + }); + IFC4X3_RC4_IfcResourceSelect_type = new select_type(strings[2431], 964, { + IFC4X3_RC4_IfcResource_type, + IFC4X3_RC4_IfcTypeResource_type + }); + IFC4X3_RC4_IfcShell_type = new select_type(strings[2432], 1013, { + IFC4X3_RC4_IfcClosedShell_type, + IFC4X3_RC4_IfcOpenShell_type + }); + IFC4X3_RC4_IfcSolidOrShell_type = new select_type(strings[2433], 1042, { + IFC4X3_RC4_IfcClosedShell_type, + IFC4X3_RC4_IfcSolidModel_type + }); + IFC4X3_RC4_IfcSurfaceOrFaceSurface_type = new select_type(strings[2434], 1136, { + IFC4X3_RC4_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC4_IfcFaceSurface_type, + IFC4X3_RC4_IfcSurface_type + }); + IFC4X3_RC4_IfcTrimmingSelect_type = new select_type(strings[2435], 1239, { + IFC4X3_RC4_IfcCartesianPoint_type, + IFC4X3_RC4_IfcParameterValue_type + }); + IFC4X3_RC4_IfcVectorOrDirection_type = new select_type(strings[2436], 1265, { + IFC4X3_RC4_IfcDirection_type, + IFC4X3_RC4_IfcVector_type + }); + IFC4X3_RC4_IfcActor_type = new entity(strings[2437], false, 6, IFC4X3_RC4_IfcObject_type); + IFC4X3_RC4_IfcAdvancedBrep_type = new entity(strings[2438], false, 14, IFC4X3_RC4_IfcManifoldSolidBrep_type); + IFC4X3_RC4_IfcAdvancedBrepWithVoids_type = new entity(strings[2439], false, 15, IFC4X3_RC4_IfcAdvancedBrep_type); + IFC4X3_RC4_IfcAnnotation_type = new entity(strings[2440], false, 46, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcBSplineSurface_type = new entity(strings[2441], true, 111, IFC4X3_RC4_IfcBoundedSurface_type); + IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type = new entity(strings[2442], false, 113, IFC4X3_RC4_IfcBSplineSurface_type); + IFC4X3_RC4_IfcBlock_type = new entity(strings[2443], false, 84, IFC4X3_RC4_IfcCsgPrimitive3D_type); + IFC4X3_RC4_IfcBooleanClippingResult_type = new entity(strings[2444], false, 89, IFC4X3_RC4_IfcBooleanResult_type); + IFC4X3_RC4_IfcBoundedCurve_type = new entity(strings[2445], true, 100, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcBuildingStorey_type = new entity(strings[2446], false, 121, IFC4X3_RC4_IfcSpatialStructureElement_type); + IFC4X3_RC4_IfcBuiltElementType_type = new entity(strings[2447], false, 125, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcChimneyType_type = new entity(strings[2448], false, 162, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcCircleHollowProfileDef_type = new entity(strings[2449], false, 165, IFC4X3_RC4_IfcCircleProfileDef_type); + IFC4X3_RC4_IfcCivilElementType_type = new entity(strings[2450], false, 168, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcClothoid_type = new entity(strings[2451], false, 174, IFC4X3_RC4_IfcSpiral_type); + IFC4X3_RC4_IfcColumnType_type = new entity(strings[2452], false, 185, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcComplexPropertyTemplate_type = new entity(strings[2453], false, 192, IFC4X3_RC4_IfcPropertyTemplate_type); + IFC4X3_RC4_IfcCompositeCurve_type = new entity(strings[2454], false, 194, IFC4X3_RC4_IfcBoundedCurve_type); + IFC4X3_RC4_IfcCompositeCurveOnSurface_type = new entity(strings[2455], false, 195, IFC4X3_RC4_IfcCompositeCurve_type); + IFC4X3_RC4_IfcConic_type = new entity(strings[2456], true, 205, IFC4X3_RC4_IfcCurve_type); + IFC4X3_RC4_IfcConstructionEquipmentResourceType_type = new entity(strings[2457], false, 217, IFC4X3_RC4_IfcConstructionResourceType_type); + IFC4X3_RC4_IfcConstructionMaterialResourceType_type = new entity(strings[2458], false, 220, IFC4X3_RC4_IfcConstructionResourceType_type); + IFC4X3_RC4_IfcConstructionProductResourceType_type = new entity(strings[2459], false, 223, IFC4X3_RC4_IfcConstructionResourceType_type); + IFC4X3_RC4_IfcConstructionResource_type = new entity(strings[2460], true, 225, IFC4X3_RC4_IfcResource_type); + IFC4X3_RC4_IfcControl_type = new entity(strings[2461], true, 230, IFC4X3_RC4_IfcObject_type); + IFC4X3_RC4_IfcCosine_type = new entity(strings[2462], false, 248, IFC4X3_RC4_IfcSpiral_type); + IFC4X3_RC4_IfcCostItem_type = new entity(strings[2463], false, 249, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcCostSchedule_type = new entity(strings[2464], false, 251, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcCourseType_type = new entity(strings[2465], false, 256, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcCoveringType_type = new entity(strings[2466], false, 259, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcCrewResource_type = new entity(strings[2467], false, 261, IFC4X3_RC4_IfcConstructionResource_type); + IFC4X3_RC4_IfcCurtainWallType_type = new entity(strings[2468], false, 270, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcCylindricalSurface_type = new entity(strings[2469], false, 287, IFC4X3_RC4_IfcElementarySurface_type); + IFC4X3_RC4_IfcDeepFoundationType_type = new entity(strings[2470], false, 297, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type = new entity(strings[2471], false, 310, IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type); + IFC4X3_RC4_IfcDistributionElementType_type = new entity(strings[2472], false, 324, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcDistributionFlowElementType_type = new entity(strings[2473], true, 326, IFC4X3_RC4_IfcDistributionElementType_type); + IFC4X3_RC4_IfcDoorLiningProperties_type = new entity(strings[2474], false, 338, IFC4X3_RC4_IfcPreDefinedPropertySet_type); + IFC4X3_RC4_IfcDoorPanelProperties_type = new entity(strings[2475], false, 341, IFC4X3_RC4_IfcPreDefinedPropertySet_type); + IFC4X3_RC4_IfcDoorType_type = new entity(strings[2476], false, 346, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcDraughtingPreDefinedColour_type = new entity(strings[2477], false, 350, IFC4X3_RC4_IfcPreDefinedColour_type); + IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type = new entity(strings[2478], false, 351, IFC4X3_RC4_IfcPreDefinedCurveFont_type); + IFC4X3_RC4_IfcElement_type = new entity(strings[2479], true, 398, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcElementAssembly_type = new entity(strings[2480], false, 400, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcElementAssemblyType_type = new entity(strings[2481], false, 401, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcElementComponent_type = new entity(strings[2482], true, 403, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcElementComponentType_type = new entity(strings[2483], true, 404, IFC4X3_RC4_IfcElementType_type); + IFC4X3_RC4_IfcEllipse_type = new entity(strings[2484], false, 408, IFC4X3_RC4_IfcConic_type); + IFC4X3_RC4_IfcEnergyConversionDeviceType_type = new entity(strings[2485], true, 411, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcEngineType_type = new entity(strings[2486], false, 414, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcEvaporativeCoolerType_type = new entity(strings[2487], false, 417, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcEvaporatorType_type = new entity(strings[2488], false, 420, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcEvent_type = new entity(strings[2489], false, 422, IFC4X3_RC4_IfcProcess_type); + IFC4X3_RC4_IfcExternalSpatialStructureElement_type = new entity(strings[2490], true, 436, IFC4X3_RC4_IfcSpatialElement_type); + IFC4X3_RC4_IfcFacetedBrep_type = new entity(strings[2491], false, 444, IFC4X3_RC4_IfcManifoldSolidBrep_type); + IFC4X3_RC4_IfcFacetedBrepWithVoids_type = new entity(strings[2492], false, 445, IFC4X3_RC4_IfcFacetedBrep_type); + IFC4X3_RC4_IfcFacility_type = new entity(strings[2493], false, 446, IFC4X3_RC4_IfcSpatialStructureElement_type); + IFC4X3_RC4_IfcFacilityPart_type = new entity(strings[2494], false, 447, IFC4X3_RC4_IfcSpatialStructureElement_type); + IFC4X3_RC4_IfcFastener_type = new entity(strings[2495], false, 455, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcFastenerType_type = new entity(strings[2496], false, 456, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcFeatureElement_type = new entity(strings[2497], true, 458, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcFeatureElementAddition_type = new entity(strings[2498], true, 459, IFC4X3_RC4_IfcFeatureElement_type); + IFC4X3_RC4_IfcFeatureElementSubtraction_type = new entity(strings[2499], true, 460, IFC4X3_RC4_IfcFeatureElement_type); + IFC4X3_RC4_IfcFlowControllerType_type = new entity(strings[2500], true, 473, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFlowFittingType_type = new entity(strings[2501], true, 476, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFlowMeterType_type = new entity(strings[2502], false, 481, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcFlowMovingDeviceType_type = new entity(strings[2503], true, 484, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFlowSegmentType_type = new entity(strings[2504], true, 486, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFlowStorageDeviceType_type = new entity(strings[2505], true, 488, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFlowTerminalType_type = new entity(strings[2506], true, 490, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFlowTreatmentDeviceType_type = new entity(strings[2507], true, 492, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcFootingType_type = new entity(strings[2508], false, 497, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcFurnishingElement_type = new entity(strings[2509], false, 501, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcFurniture_type = new entity(strings[2510], false, 503, IFC4X3_RC4_IfcFurnishingElement_type); + IFC4X3_RC4_IfcGeographicElement_type = new entity(strings[2511], false, 506, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcGeotechnicalElement_type = new entity(strings[2512], true, 519, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcGeotechnicalStratum_type = new entity(strings[2513], true, 520, IFC4X3_RC4_IfcGeotechnicalElement_type); + IFC4X3_RC4_IfcGradientCurve_type = new entity(strings[2514], false, 523, IFC4X3_RC4_IfcCompositeCurve_type); + IFC4X3_RC4_IfcGroup_type = new entity(strings[2515], false, 529, IFC4X3_RC4_IfcObject_type); + IFC4X3_RC4_IfcHeatExchangerType_type = new entity(strings[2516], false, 533, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcHumidifierType_type = new entity(strings[2517], false, 538, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcImpactProtectionDevice_type = new entity(strings[2518], false, 543, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcImpactProtectionDeviceType_type = new entity(strings[2519], false, 544, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcIndexedPolyCurve_type = new entity(strings[2520], false, 548, IFC4X3_RC4_IfcBoundedCurve_type); + IFC4X3_RC4_IfcInterceptorType_type = new entity(strings[2521], false, 557, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC4_IfcIntersectionCurve_type = new entity(strings[2522], false, 561, IFC4X3_RC4_IfcSurfaceCurve_type); + IFC4X3_RC4_IfcInventory_type = new entity(strings[2523], false, 562, IFC4X3_RC4_IfcGroup_type); + IFC4X3_RC4_IfcJunctionBoxType_type = new entity(strings[2524], false, 570, IFC4X3_RC4_IfcFlowFittingType_type); + IFC4X3_RC4_IfcKerbType_type = new entity(strings[2525], false, 573, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcLaborResource_type = new entity(strings[2526], false, 577, IFC4X3_RC4_IfcConstructionResource_type); + IFC4X3_RC4_IfcLampType_type = new entity(strings[2527], false, 582, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcLightFixtureType_type = new entity(strings[2528], false, 596, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcLinearElement_type = new entity(strings[2529], false, 606, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcLiquidTerminalType_type = new entity(strings[2530], false, 615, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcMarineFacility_type = new entity(strings[2531], false, 631, IFC4X3_RC4_IfcFacility_type); + IFC4X3_RC4_IfcMechanicalFastener_type = new entity(strings[2532], false, 660, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcMechanicalFastenerType_type = new entity(strings[2533], false, 661, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcMedicalDeviceType_type = new entity(strings[2534], false, 664, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcMemberType_type = new entity(strings[2535], false, 668, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type = new entity(strings[2536], false, 674, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcMooringDeviceType_type = new entity(strings[2537], false, 690, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcMotorConnectionType_type = new entity(strings[2538], false, 693, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcNavigationElementType_type = new entity(strings[2539], false, 697, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcOccupant_type = new entity(strings[2540], false, 709, IFC4X3_RC4_IfcActor_type); + IFC4X3_RC4_IfcOpeningElement_type = new entity(strings[2541], false, 716, IFC4X3_RC4_IfcFeatureElementSubtraction_type); + IFC4X3_RC4_IfcOpeningStandardCase_type = new entity(strings[2542], false, 718, IFC4X3_RC4_IfcOpeningElement_type); + IFC4X3_RC4_IfcOutletType_type = new entity(strings[2543], false, 725, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcPavementType_type = new entity(strings[2544], false, 732, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcPerformanceHistory_type = new entity(strings[2545], false, 735, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcPermeableCoveringProperties_type = new entity(strings[2546], false, 738, IFC4X3_RC4_IfcPreDefinedPropertySet_type); + IFC4X3_RC4_IfcPermit_type = new entity(strings[2547], false, 739, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcPileType_type = new entity(strings[2548], false, 750, IFC4X3_RC4_IfcDeepFoundationType_type); + IFC4X3_RC4_IfcPipeFittingType_type = new entity(strings[2549], false, 753, IFC4X3_RC4_IfcFlowFittingType_type); + IFC4X3_RC4_IfcPipeSegmentType_type = new entity(strings[2550], false, 756, IFC4X3_RC4_IfcFlowSegmentType_type); + IFC4X3_RC4_IfcPlant_type = new entity(strings[2551], false, 765, IFC4X3_RC4_IfcGeographicElement_type); + IFC4X3_RC4_IfcPlateType_type = new entity(strings[2552], false, 768, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcPolygonalFaceSet_type = new entity(strings[2553], false, 776, IFC4X3_RC4_IfcTessellatedFaceSet_type); + IFC4X3_RC4_IfcPolyline_type = new entity(strings[2554], false, 777, IFC4X3_RC4_IfcBoundedCurve_type); + IFC4X3_RC4_IfcPort_type = new entity(strings[2555], true, 780, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcPositioningElement_type = new entity(strings[2556], true, 781, IFC4X3_RC4_IfcProduct_type); + IFC4X3_RC4_IfcProcedure_type = new entity(strings[2557], false, 801, IFC4X3_RC4_IfcProcess_type); + IFC4X3_RC4_IfcProjectOrder_type = new entity(strings[2558], false, 820, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcProjectionElement_type = new entity(strings[2559], false, 817, IFC4X3_RC4_IfcFeatureElementAddition_type); + IFC4X3_RC4_IfcProtectiveDeviceType_type = new entity(strings[2560], false, 845, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcPumpType_type = new entity(strings[2561], false, 849, IFC4X3_RC4_IfcFlowMovingDeviceType_type); + IFC4X3_RC4_IfcRailType_type = new entity(strings[2562], false, 863, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcRailingType_type = new entity(strings[2563], false, 861, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcRailway_type = new entity(strings[2564], false, 865, IFC4X3_RC4_IfcFacility_type); + IFC4X3_RC4_IfcRampFlightType_type = new entity(strings[2565], false, 870, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcRampType_type = new entity(strings[2566], false, 872, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type = new entity(strings[2567], false, 876, IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type); + IFC4X3_RC4_IfcReferent_type = new entity(strings[2568], false, 885, IFC4X3_RC4_IfcPositioningElement_type); + IFC4X3_RC4_IfcReinforcingElement_type = new entity(strings[2569], true, 898, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcReinforcingElementType_type = new entity(strings[2570], true, 899, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcReinforcingMesh_type = new entity(strings[2571], false, 900, IFC4X3_RC4_IfcReinforcingElement_type); + IFC4X3_RC4_IfcReinforcingMeshType_type = new entity(strings[2572], false, 901, IFC4X3_RC4_IfcReinforcingElementType_type); + IFC4X3_RC4_IfcRelAdheresToElement_type = new entity(strings[2573], false, 903, IFC4X3_RC4_IfcRelDecomposes_type); + IFC4X3_RC4_IfcRelAggregates_type = new entity(strings[2574], false, 904, IFC4X3_RC4_IfcRelDecomposes_type); + IFC4X3_RC4_IfcRoad_type = new entity(strings[2575], false, 970, IFC4X3_RC4_IfcFacility_type); + IFC4X3_RC4_IfcRoofType_type = new entity(strings[2576], false, 975, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcSanitaryTerminalType_type = new entity(strings[2577], false, 984, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcSeamCurve_type = new entity(strings[2578], false, 987, IFC4X3_RC4_IfcSurfaceCurve_type); + IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type = new entity(strings[2579], false, 988, IFC4X3_RC4_IfcSpiral_type); + IFC4X3_RC4_IfcSegmentedReferenceCurve_type = new entity(strings[2580], false, 999, IFC4X3_RC4_IfcCompositeCurve_type); + IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type = new entity(strings[2581], false, 1005, IFC4X3_RC4_IfcSpiral_type); + IFC4X3_RC4_IfcShadingDeviceType_type = new entity(strings[2582], false, 1007, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcSign_type = new entity(strings[2583], false, 1015, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcSignType_type = new entity(strings[2584], false, 1019, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcSignalType_type = new entity(strings[2585], false, 1017, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcSine_type = new entity(strings[2586], false, 1025, IFC4X3_RC4_IfcSpiral_type); + IFC4X3_RC4_IfcSite_type = new entity(strings[2587], false, 1027, IFC4X3_RC4_IfcSpatialStructureElement_type); + IFC4X3_RC4_IfcSlabType_type = new entity(strings[2588], false, 1034, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcSolarDeviceType_type = new entity(strings[2589], false, 1038, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcSolidStratum_type = new entity(strings[2590], false, 1043, IFC4X3_RC4_IfcGeotechnicalStratum_type); + IFC4X3_RC4_IfcSpace_type = new entity(strings[2591], false, 1048, IFC4X3_RC4_IfcSpatialStructureElement_type); + IFC4X3_RC4_IfcSpaceHeaterType_type = new entity(strings[2592], false, 1051, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcSpaceType_type = new entity(strings[2593], false, 1053, IFC4X3_RC4_IfcSpatialStructureElementType_type); + IFC4X3_RC4_IfcStackTerminalType_type = new entity(strings[2594], false, 1071, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcStairFlightType_type = new entity(strings[2595], false, 1075, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcStairType_type = new entity(strings[2596], false, 1077, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcStructuralAction_type = new entity(strings[2597], true, 1080, IFC4X3_RC4_IfcStructuralActivity_type); + IFC4X3_RC4_IfcStructuralConnection_type = new entity(strings[2598], true, 1084, IFC4X3_RC4_IfcStructuralItem_type); + IFC4X3_RC4_IfcStructuralCurveAction_type = new entity(strings[2599], false, 1086, IFC4X3_RC4_IfcStructuralAction_type); + IFC4X3_RC4_IfcStructuralCurveConnection_type = new entity(strings[2600], false, 1088, IFC4X3_RC4_IfcStructuralConnection_type); + IFC4X3_RC4_IfcStructuralCurveMember_type = new entity(strings[2601], false, 1089, IFC4X3_RC4_IfcStructuralMember_type); + IFC4X3_RC4_IfcStructuralCurveMemberVarying_type = new entity(strings[2602], false, 1091, IFC4X3_RC4_IfcStructuralCurveMember_type); + IFC4X3_RC4_IfcStructuralCurveReaction_type = new entity(strings[2603], false, 1092, IFC4X3_RC4_IfcStructuralReaction_type); + IFC4X3_RC4_IfcStructuralLinearAction_type = new entity(strings[2604], false, 1094, IFC4X3_RC4_IfcStructuralCurveAction_type); + IFC4X3_RC4_IfcStructuralLoadGroup_type = new entity(strings[2605], false, 1098, IFC4X3_RC4_IfcGroup_type); + IFC4X3_RC4_IfcStructuralPointAction_type = new entity(strings[2606], false, 1110, IFC4X3_RC4_IfcStructuralAction_type); + IFC4X3_RC4_IfcStructuralPointConnection_type = new entity(strings[2607], false, 1111, IFC4X3_RC4_IfcStructuralConnection_type); + IFC4X3_RC4_IfcStructuralPointReaction_type = new entity(strings[2608], false, 1112, IFC4X3_RC4_IfcStructuralReaction_type); + IFC4X3_RC4_IfcStructuralResultGroup_type = new entity(strings[2609], false, 1114, IFC4X3_RC4_IfcGroup_type); + IFC4X3_RC4_IfcStructuralSurfaceAction_type = new entity(strings[2610], false, 1115, IFC4X3_RC4_IfcStructuralAction_type); + IFC4X3_RC4_IfcStructuralSurfaceConnection_type = new entity(strings[2611], false, 1117, IFC4X3_RC4_IfcStructuralConnection_type); + IFC4X3_RC4_IfcSubContractResource_type = new entity(strings[2612], false, 1125, IFC4X3_RC4_IfcConstructionResource_type); + IFC4X3_RC4_IfcSurfaceFeature_type = new entity(strings[2613], false, 1132, IFC4X3_RC4_IfcFeatureElement_type); + IFC4X3_RC4_IfcSwitchingDeviceType_type = new entity(strings[2614], false, 1152, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcSystem_type = new entity(strings[2615], false, 1154, IFC4X3_RC4_IfcGroup_type); + IFC4X3_RC4_IfcSystemFurnitureElement_type = new entity(strings[2616], false, 1155, IFC4X3_RC4_IfcFurnishingElement_type); + IFC4X3_RC4_IfcTankType_type = new entity(strings[2617], false, 1162, IFC4X3_RC4_IfcFlowStorageDeviceType_type); + IFC4X3_RC4_IfcTendon_type = new entity(strings[2618], false, 1173, IFC4X3_RC4_IfcReinforcingElement_type); + IFC4X3_RC4_IfcTendonAnchor_type = new entity(strings[2619], false, 1174, IFC4X3_RC4_IfcReinforcingElement_type); + IFC4X3_RC4_IfcTendonAnchorType_type = new entity(strings[2620], false, 1175, IFC4X3_RC4_IfcReinforcingElementType_type); + IFC4X3_RC4_IfcTendonConduit_type = new entity(strings[2621], false, 1177, IFC4X3_RC4_IfcReinforcingElement_type); + IFC4X3_RC4_IfcTendonConduitType_type = new entity(strings[2622], false, 1178, IFC4X3_RC4_IfcReinforcingElementType_type); + IFC4X3_RC4_IfcTendonType_type = new entity(strings[2623], false, 1180, IFC4X3_RC4_IfcReinforcingElementType_type); + IFC4X3_RC4_IfcTrackElementType_type = new entity(strings[2624], false, 1222, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcTransformerType_type = new entity(strings[2625], false, 1225, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcTransportElement_type = new entity(strings[2626], false, 1229, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcTrimmedCurve_type = new entity(strings[2627], false, 1237, IFC4X3_RC4_IfcBoundedCurve_type); + IFC4X3_RC4_IfcTubeBundleType_type = new entity(strings[2628], false, 1242, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcUnitaryEquipmentType_type = new entity(strings[2629], false, 1253, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcValveType_type = new entity(strings[2630], false, 1261, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcVibrationDamper_type = new entity(strings[2631], false, 1269, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcVibrationDamperType_type = new entity(strings[2632], false, 1270, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcVibrationIsolator_type = new entity(strings[2633], false, 1272, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcVibrationIsolatorType_type = new entity(strings[2634], false, 1273, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcVirtualElement_type = new entity(strings[2635], false, 1275, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcVoidStratum_type = new entity(strings[2636], false, 1279, IFC4X3_RC4_IfcGeotechnicalStratum_type); + IFC4X3_RC4_IfcVoidingFeature_type = new entity(strings[2637], false, 1277, IFC4X3_RC4_IfcFeatureElementSubtraction_type); + IFC4X3_RC4_IfcWallType_type = new entity(strings[2638], false, 1285, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcWasteTerminalType_type = new entity(strings[2639], false, 1291, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcWaterStratum_type = new entity(strings[2640], false, 1293, IFC4X3_RC4_IfcGeotechnicalStratum_type); + IFC4X3_RC4_IfcWindowType_type = new entity(strings[2641], false, 1303, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcWorkCalendar_type = new entity(strings[2642], false, 1306, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcWorkControl_type = new entity(strings[2643], true, 1308, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcWorkPlan_type = new entity(strings[2644], false, 1309, IFC4X3_RC4_IfcWorkControl_type); + IFC4X3_RC4_IfcWorkSchedule_type = new entity(strings[2645], false, 1311, IFC4X3_RC4_IfcWorkControl_type); + IFC4X3_RC4_IfcZone_type = new entity(strings[2646], false, 1314, IFC4X3_RC4_IfcSystem_type); + IFC4X3_RC4_IfcCurveFontOrScaledCurveFontSelect_type = new select_type(strings[2647], 276, { + IFC4X3_RC4_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC4_IfcCurveStyleFontSelect_type + }); + IFC4X3_RC4_IfcCurveOnSurface_type = new select_type(strings[2648], 279, { + IFC4X3_RC4_IfcCompositeCurveOnSurface_type, + IFC4X3_RC4_IfcPcurve_type, + IFC4X3_RC4_IfcSurfaceCurve_type + }); + IFC4X3_RC4_IfcCurveOrEdgeCurve_type = new select_type(strings[2649], 280, { + IFC4X3_RC4_IfcBoundedCurve_type, + IFC4X3_RC4_IfcEdgeCurve_type + }); + IFC4X3_RC4_IfcInterferenceSelect_type = new select_type(strings[2650], 559, { + IFC4X3_RC4_IfcElement_type, + IFC4X3_RC4_IfcSpatialElement_type + }); + IFC4X3_RC4_IfcSpatialReferenceSelect_type = new select_type(strings[2651], 1057, { + IFC4X3_RC4_IfcGroup_type, + IFC4X3_RC4_IfcProduct_type + }); + IFC4X3_RC4_IfcStructuralActivityAssignmentSelect_type = new select_type(strings[2652], 1082, { + IFC4X3_RC4_IfcElement_type, + IFC4X3_RC4_IfcStructuralItem_type + }); + IFC4X3_RC4_IfcActionRequest_type = new entity(strings[2653], false, 2, IFC4X3_RC4_IfcControl_type); + IFC4X3_RC4_IfcAirTerminalBoxType_type = new entity(strings[2654], false, 19, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcAirTerminalType_type = new entity(strings[2655], false, 21, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type = new entity(strings[2656], false, 24, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcAlignmentCant_type = new entity(strings[2657], false, 30, IFC4X3_RC4_IfcLinearElement_type); + IFC4X3_RC4_IfcAlignmentHorizontal_type = new entity(strings[2658], false, 33, IFC4X3_RC4_IfcLinearElement_type); + IFC4X3_RC4_IfcAlignmentSegment_type = new entity(strings[2659], false, 37, IFC4X3_RC4_IfcLinearElement_type); + IFC4X3_RC4_IfcAlignmentVertical_type = new entity(strings[2660], false, 39, IFC4X3_RC4_IfcLinearElement_type); + IFC4X3_RC4_IfcAsset_type = new entity(strings[2661], false, 62, IFC4X3_RC4_IfcGroup_type); + IFC4X3_RC4_IfcAudioVisualApplianceType_type = new entity(strings[2662], false, 65, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcBSplineCurve_type = new entity(strings[2663], true, 108, IFC4X3_RC4_IfcBoundedCurve_type); + IFC4X3_RC4_IfcBSplineCurveWithKnots_type = new entity(strings[2664], false, 110, IFC4X3_RC4_IfcBSplineCurve_type); + IFC4X3_RC4_IfcBeamType_type = new entity(strings[2665], false, 74, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcBearingType_type = new entity(strings[2666], false, 77, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcBoilerType_type = new entity(strings[2667], false, 86, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcBoundaryCurve_type = new entity(strings[2668], false, 95, IFC4X3_RC4_IfcCompositeCurveOnSurface_type); + IFC4X3_RC4_IfcBridge_type = new entity(strings[2669], false, 105, IFC4X3_RC4_IfcFacility_type); + IFC4X3_RC4_IfcBuilding_type = new entity(strings[2670], false, 114, IFC4X3_RC4_IfcFacility_type); + IFC4X3_RC4_IfcBuildingElementPart_type = new entity(strings[2671], false, 115, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcBuildingElementPartType_type = new entity(strings[2672], false, 116, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcBuildingElementProxyType_type = new entity(strings[2673], false, 119, IFC4X3_RC4_IfcBuiltElementType_type); + IFC4X3_RC4_IfcBuildingSystem_type = new entity(strings[2674], false, 122, IFC4X3_RC4_IfcSystem_type); + IFC4X3_RC4_IfcBuiltElement_type = new entity(strings[2675], false, 124, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcBuiltSystem_type = new entity(strings[2676], false, 126, IFC4X3_RC4_IfcSystem_type); + IFC4X3_RC4_IfcBurnerType_type = new entity(strings[2677], false, 129, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcCableCarrierFittingType_type = new entity(strings[2678], false, 132, IFC4X3_RC4_IfcFlowFittingType_type); + IFC4X3_RC4_IfcCableCarrierSegmentType_type = new entity(strings[2679], false, 135, IFC4X3_RC4_IfcFlowSegmentType_type); + IFC4X3_RC4_IfcCableFittingType_type = new entity(strings[2680], false, 138, IFC4X3_RC4_IfcFlowFittingType_type); + IFC4X3_RC4_IfcCableSegmentType_type = new entity(strings[2681], false, 141, IFC4X3_RC4_IfcFlowSegmentType_type); + IFC4X3_RC4_IfcCaissonFoundationType_type = new entity(strings[2682], false, 144, IFC4X3_RC4_IfcDeepFoundationType_type); + IFC4X3_RC4_IfcChillerType_type = new entity(strings[2683], false, 159, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcChimney_type = new entity(strings[2684], false, 161, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcCircle_type = new entity(strings[2685], false, 164, IFC4X3_RC4_IfcConic_type); + IFC4X3_RC4_IfcCivilElement_type = new entity(strings[2686], false, 167, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcCoilType_type = new entity(strings[2687], false, 176, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcColumn_type = new entity(strings[2688], false, 183, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcColumnStandardCase_type = new entity(strings[2689], false, 184, IFC4X3_RC4_IfcColumn_type); + IFC4X3_RC4_IfcCommunicationsApplianceType_type = new entity(strings[2690], false, 188, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcCompressorType_type = new entity(strings[2691], false, 200, IFC4X3_RC4_IfcFlowMovingDeviceType_type); + IFC4X3_RC4_IfcCondenserType_type = new entity(strings[2692], false, 203, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcConstructionEquipmentResource_type = new entity(strings[2693], false, 216, IFC4X3_RC4_IfcConstructionResource_type); + IFC4X3_RC4_IfcConstructionMaterialResource_type = new entity(strings[2694], false, 219, IFC4X3_RC4_IfcConstructionResource_type); + IFC4X3_RC4_IfcConstructionProductResource_type = new entity(strings[2695], false, 222, IFC4X3_RC4_IfcConstructionResource_type); + IFC4X3_RC4_IfcConveyorSegmentType_type = new entity(strings[2696], false, 237, IFC4X3_RC4_IfcFlowSegmentType_type); + IFC4X3_RC4_IfcCooledBeamType_type = new entity(strings[2697], false, 240, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcCoolingTowerType_type = new entity(strings[2698], false, 243, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcCourse_type = new entity(strings[2699], false, 255, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcCovering_type = new entity(strings[2700], false, 258, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcCurtainWall_type = new entity(strings[2701], false, 269, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcDamperType_type = new entity(strings[2702], false, 289, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcDeepFoundation_type = new entity(strings[2703], false, 296, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcDiscreteAccessory_type = new entity(strings[2704], false, 311, IFC4X3_RC4_IfcElementComponent_type); + IFC4X3_RC4_IfcDiscreteAccessoryType_type = new entity(strings[2705], false, 312, IFC4X3_RC4_IfcElementComponentType_type); + IFC4X3_RC4_IfcDistributionBoardType_type = new entity(strings[2706], false, 315, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcDistributionChamberElementType_type = new entity(strings[2707], false, 318, IFC4X3_RC4_IfcDistributionFlowElementType_type); + IFC4X3_RC4_IfcDistributionControlElementType_type = new entity(strings[2708], true, 322, IFC4X3_RC4_IfcDistributionElementType_type); + IFC4X3_RC4_IfcDistributionElement_type = new entity(strings[2709], false, 323, IFC4X3_RC4_IfcElement_type); + IFC4X3_RC4_IfcDistributionFlowElement_type = new entity(strings[2710], false, 325, IFC4X3_RC4_IfcDistributionElement_type); + IFC4X3_RC4_IfcDistributionPort_type = new entity(strings[2711], false, 327, IFC4X3_RC4_IfcPort_type); + IFC4X3_RC4_IfcDistributionSystem_type = new entity(strings[2712], false, 329, IFC4X3_RC4_IfcSystem_type); + IFC4X3_RC4_IfcDoor_type = new entity(strings[2713], false, 337, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcDoorStandardCase_type = new entity(strings[2714], false, 342, IFC4X3_RC4_IfcDoor_type); + IFC4X3_RC4_IfcDuctFittingType_type = new entity(strings[2715], false, 353, IFC4X3_RC4_IfcFlowFittingType_type); + IFC4X3_RC4_IfcDuctSegmentType_type = new entity(strings[2716], false, 356, IFC4X3_RC4_IfcFlowSegmentType_type); + IFC4X3_RC4_IfcDuctSilencerType_type = new entity(strings[2717], false, 359, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC4_IfcEarthworksCut_type = new entity(strings[2718], false, 363, IFC4X3_RC4_IfcFeatureElementSubtraction_type); + IFC4X3_RC4_IfcEarthworksElement_type = new entity(strings[2719], false, 365, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcEarthworksFill_type = new entity(strings[2720], false, 366, IFC4X3_RC4_IfcEarthworksElement_type); + IFC4X3_RC4_IfcElectricApplianceType_type = new entity(strings[2721], false, 372, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcElectricDistributionBoardType_type = new entity(strings[2722], false, 379, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type = new entity(strings[2723], false, 382, IFC4X3_RC4_IfcFlowStorageDeviceType_type); + IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type = new entity(strings[2724], false, 385, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC4_IfcElectricGeneratorType_type = new entity(strings[2725], false, 388, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcElectricMotorType_type = new entity(strings[2726], false, 391, IFC4X3_RC4_IfcEnergyConversionDeviceType_type); + IFC4X3_RC4_IfcElectricTimeControlType_type = new entity(strings[2727], false, 395, IFC4X3_RC4_IfcFlowControllerType_type); + IFC4X3_RC4_IfcEnergyConversionDevice_type = new entity(strings[2728], false, 410, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcEngine_type = new entity(strings[2729], false, 413, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcEvaporativeCooler_type = new entity(strings[2730], false, 416, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcEvaporator_type = new entity(strings[2731], false, 419, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcExternalSpatialElement_type = new entity(strings[2732], false, 434, IFC4X3_RC4_IfcExternalSpatialStructureElement_type); + IFC4X3_RC4_IfcFanType_type = new entity(strings[2733], false, 453, IFC4X3_RC4_IfcFlowMovingDeviceType_type); + IFC4X3_RC4_IfcFilterType_type = new entity(strings[2734], false, 466, IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); + IFC4X3_RC4_IfcFireSuppressionTerminalType_type = new entity(strings[2735], false, 469, IFC4X3_RC4_IfcFlowTerminalType_type); + IFC4X3_RC4_IfcFlowController_type = new entity(strings[2736], false, 472, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFlowFitting_type = new entity(strings[2737], false, 475, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFlowInstrumentType_type = new entity(strings[2738], false, 478, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcFlowMeter_type = new entity(strings[2739], false, 480, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcFlowMovingDevice_type = new entity(strings[2740], false, 483, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFlowSegment_type = new entity(strings[2741], false, 485, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFlowStorageDevice_type = new entity(strings[2742], false, 487, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFlowTerminal_type = new entity(strings[2743], false, 489, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFlowTreatmentDevice_type = new entity(strings[2744], false, 491, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcFooting_type = new entity(strings[2745], false, 496, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcGeotechnicalAssembly_type = new entity(strings[2746], true, 518, IFC4X3_RC4_IfcGeotechnicalElement_type); + IFC4X3_RC4_IfcGrid_type = new entity(strings[2747], false, 524, IFC4X3_RC4_IfcPositioningElement_type); + IFC4X3_RC4_IfcHeatExchanger_type = new entity(strings[2748], false, 532, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcHumidifier_type = new entity(strings[2749], false, 537, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcInterceptor_type = new entity(strings[2750], false, 556, IFC4X3_RC4_IfcFlowTreatmentDevice_type); + IFC4X3_RC4_IfcJunctionBox_type = new entity(strings[2751], false, 569, IFC4X3_RC4_IfcFlowFitting_type); + IFC4X3_RC4_IfcKerb_type = new entity(strings[2752], false, 572, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcLamp_type = new entity(strings[2753], false, 581, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcLightFixture_type = new entity(strings[2754], false, 595, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcLinearPositioningElement_type = new entity(strings[2755], false, 610, IFC4X3_RC4_IfcPositioningElement_type); + IFC4X3_RC4_IfcLiquidTerminal_type = new entity(strings[2756], false, 614, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcMedicalDevice_type = new entity(strings[2757], false, 663, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcMember_type = new entity(strings[2758], false, 666, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcMemberStandardCase_type = new entity(strings[2759], false, 667, IFC4X3_RC4_IfcMember_type); + IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type = new entity(strings[2760], false, 673, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcMooringDevice_type = new entity(strings[2761], false, 689, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcMotorConnection_type = new entity(strings[2762], false, 692, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcNavigationElement_type = new entity(strings[2763], false, 696, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcOuterBoundaryCurve_type = new entity(strings[2764], false, 723, IFC4X3_RC4_IfcBoundaryCurve_type); + IFC4X3_RC4_IfcOutlet_type = new entity(strings[2765], false, 724, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcPavement_type = new entity(strings[2766], false, 731, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcPile_type = new entity(strings[2767], false, 748, IFC4X3_RC4_IfcDeepFoundation_type); + IFC4X3_RC4_IfcPipeFitting_type = new entity(strings[2768], false, 752, IFC4X3_RC4_IfcFlowFitting_type); + IFC4X3_RC4_IfcPipeSegment_type = new entity(strings[2769], false, 755, IFC4X3_RC4_IfcFlowSegment_type); + IFC4X3_RC4_IfcPlate_type = new entity(strings[2770], false, 766, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcPlateStandardCase_type = new entity(strings[2771], false, 767, IFC4X3_RC4_IfcPlate_type); + IFC4X3_RC4_IfcProtectiveDevice_type = new entity(strings[2772], false, 841, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type = new entity(strings[2773], false, 843, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcPump_type = new entity(strings[2774], false, 848, IFC4X3_RC4_IfcFlowMovingDevice_type); + IFC4X3_RC4_IfcRail_type = new entity(strings[2775], false, 859, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcRailing_type = new entity(strings[2776], false, 860, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcRamp_type = new entity(strings[2777], false, 868, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcRampFlight_type = new entity(strings[2778], false, 869, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type = new entity(strings[2779], false, 875, IFC4X3_RC4_IfcBSplineCurveWithKnots_type); + IFC4X3_RC4_IfcReinforcedSoil_type = new entity(strings[2780], false, 889, IFC4X3_RC4_IfcEarthworksElement_type); + IFC4X3_RC4_IfcReinforcingBar_type = new entity(strings[2781], false, 893, IFC4X3_RC4_IfcReinforcingElement_type); + IFC4X3_RC4_IfcReinforcingBarType_type = new entity(strings[2782], false, 896, IFC4X3_RC4_IfcReinforcingElementType_type); + IFC4X3_RC4_IfcRoof_type = new entity(strings[2783], false, 974, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcSanitaryTerminal_type = new entity(strings[2784], false, 983, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcSensorType_type = new entity(strings[2785], false, 1002, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcShadingDevice_type = new entity(strings[2786], false, 1006, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcSignal_type = new entity(strings[2787], false, 1016, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcSlab_type = new entity(strings[2788], false, 1031, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcSlabElementedCase_type = new entity(strings[2789], false, 1032, IFC4X3_RC4_IfcSlab_type); + IFC4X3_RC4_IfcSlabStandardCase_type = new entity(strings[2790], false, 1033, IFC4X3_RC4_IfcSlab_type); + IFC4X3_RC4_IfcSolarDevice_type = new entity(strings[2791], false, 1037, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcSpaceHeater_type = new entity(strings[2792], false, 1050, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcStackTerminal_type = new entity(strings[2793], false, 1070, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcStair_type = new entity(strings[2794], false, 1073, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcStairFlight_type = new entity(strings[2795], false, 1074, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcStructuralAnalysisModel_type = new entity(strings[2796], false, 1083, IFC4X3_RC4_IfcSystem_type); + IFC4X3_RC4_IfcStructuralLoadCase_type = new entity(strings[2797], false, 1096, IFC4X3_RC4_IfcStructuralLoadGroup_type); + IFC4X3_RC4_IfcStructuralPlanarAction_type = new entity(strings[2798], false, 1109, IFC4X3_RC4_IfcStructuralSurfaceAction_type); + IFC4X3_RC4_IfcSwitchingDevice_type = new entity(strings[2799], false, 1151, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcTank_type = new entity(strings[2800], false, 1161, IFC4X3_RC4_IfcFlowStorageDevice_type); + IFC4X3_RC4_IfcTrackElement_type = new entity(strings[2801], false, 1221, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcTransformer_type = new entity(strings[2802], false, 1224, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcTubeBundle_type = new entity(strings[2803], false, 1241, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcUnitaryControlElementType_type = new entity(strings[2804], false, 1250, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcUnitaryEquipment_type = new entity(strings[2805], false, 1252, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcValve_type = new entity(strings[2806], false, 1260, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcWall_type = new entity(strings[2807], false, 1282, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcWallElementedCase_type = new entity(strings[2808], false, 1283, IFC4X3_RC4_IfcWall_type); + IFC4X3_RC4_IfcWallStandardCase_type = new entity(strings[2809], false, 1284, IFC4X3_RC4_IfcWall_type); + IFC4X3_RC4_IfcWasteTerminal_type = new entity(strings[2810], false, 1290, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcWindow_type = new entity(strings[2811], false, 1294, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcWindowStandardCase_type = new entity(strings[2812], false, 1299, IFC4X3_RC4_IfcWindow_type); + IFC4X3_RC4_IfcSpaceBoundarySelect_type = new select_type(strings[2813], 1049, { + IFC4X3_RC4_IfcExternalSpatialElement_type, + IFC4X3_RC4_IfcSpace_type + }); + IFC4X3_RC4_IfcActuatorType_type = new entity(strings[2814], false, 10, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcAirTerminal_type = new entity(strings[2815], false, 17, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcAirTerminalBox_type = new entity(strings[2816], false, 18, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcAirToAirHeatRecovery_type = new entity(strings[2817], false, 23, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcAlarmType_type = new entity(strings[2818], false, 27, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcAlignment_type = new entity(strings[2819], false, 29, IFC4X3_RC4_IfcLinearPositioningElement_type); + IFC4X3_RC4_IfcAudioVisualAppliance_type = new entity(strings[2820], false, 64, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcBeam_type = new entity(strings[2821], false, 72, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcBeamStandardCase_type = new entity(strings[2822], false, 73, IFC4X3_RC4_IfcBeam_type); + IFC4X3_RC4_IfcBearing_type = new entity(strings[2823], false, 76, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcBoiler_type = new entity(strings[2824], false, 85, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcBorehole_type = new entity(strings[2825], false, 93, IFC4X3_RC4_IfcGeotechnicalAssembly_type); + IFC4X3_RC4_IfcBuildingElementProxy_type = new entity(strings[2826], false, 118, IFC4X3_RC4_IfcBuiltElement_type); + IFC4X3_RC4_IfcBurner_type = new entity(strings[2827], false, 128, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcCableCarrierFitting_type = new entity(strings[2828], false, 131, IFC4X3_RC4_IfcFlowFitting_type); + IFC4X3_RC4_IfcCableCarrierSegment_type = new entity(strings[2829], false, 134, IFC4X3_RC4_IfcFlowSegment_type); + IFC4X3_RC4_IfcCableFitting_type = new entity(strings[2830], false, 137, IFC4X3_RC4_IfcFlowFitting_type); + IFC4X3_RC4_IfcCableSegment_type = new entity(strings[2831], false, 140, IFC4X3_RC4_IfcFlowSegment_type); + IFC4X3_RC4_IfcCaissonFoundation_type = new entity(strings[2832], false, 143, IFC4X3_RC4_IfcDeepFoundation_type); + IFC4X3_RC4_IfcChiller_type = new entity(strings[2833], false, 158, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcCoil_type = new entity(strings[2834], false, 175, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcCommunicationsAppliance_type = new entity(strings[2835], false, 187, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcCompressor_type = new entity(strings[2836], false, 199, IFC4X3_RC4_IfcFlowMovingDevice_type); + IFC4X3_RC4_IfcCondenser_type = new entity(strings[2837], false, 202, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcControllerType_type = new entity(strings[2838], false, 232, IFC4X3_RC4_IfcDistributionControlElementType_type); + IFC4X3_RC4_IfcConveyorSegment_type = new entity(strings[2839], false, 236, IFC4X3_RC4_IfcFlowSegment_type); + IFC4X3_RC4_IfcCooledBeam_type = new entity(strings[2840], false, 239, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcCoolingTower_type = new entity(strings[2841], false, 242, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcDamper_type = new entity(strings[2842], false, 288, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcDistributionBoard_type = new entity(strings[2843], false, 314, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcDistributionChamberElement_type = new entity(strings[2844], false, 317, IFC4X3_RC4_IfcDistributionFlowElement_type); + IFC4X3_RC4_IfcDistributionCircuit_type = new entity(strings[2845], false, 320, IFC4X3_RC4_IfcDistributionSystem_type); + IFC4X3_RC4_IfcDistributionControlElement_type = new entity(strings[2846], false, 321, IFC4X3_RC4_IfcDistributionElement_type); + IFC4X3_RC4_IfcDuctFitting_type = new entity(strings[2847], false, 352, IFC4X3_RC4_IfcFlowFitting_type); + IFC4X3_RC4_IfcDuctSegment_type = new entity(strings[2848], false, 355, IFC4X3_RC4_IfcFlowSegment_type); + IFC4X3_RC4_IfcDuctSilencer_type = new entity(strings[2849], false, 358, IFC4X3_RC4_IfcFlowTreatmentDevice_type); + IFC4X3_RC4_IfcElectricAppliance_type = new entity(strings[2850], false, 371, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcElectricDistributionBoard_type = new entity(strings[2851], false, 378, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcElectricFlowStorageDevice_type = new entity(strings[2852], false, 381, IFC4X3_RC4_IfcFlowStorageDevice_type); + IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type = new entity(strings[2853], false, 384, IFC4X3_RC4_IfcFlowTreatmentDevice_type); + IFC4X3_RC4_IfcElectricGenerator_type = new entity(strings[2854], false, 387, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcElectricMotor_type = new entity(strings[2855], false, 390, IFC4X3_RC4_IfcEnergyConversionDevice_type); + IFC4X3_RC4_IfcElectricTimeControl_type = new entity(strings[2856], false, 394, IFC4X3_RC4_IfcFlowController_type); + IFC4X3_RC4_IfcFan_type = new entity(strings[2857], false, 452, IFC4X3_RC4_IfcFlowMovingDevice_type); + IFC4X3_RC4_IfcFilter_type = new entity(strings[2858], false, 465, IFC4X3_RC4_IfcFlowTreatmentDevice_type); + IFC4X3_RC4_IfcFireSuppressionTerminal_type = new entity(strings[2859], false, 468, IFC4X3_RC4_IfcFlowTerminal_type); + IFC4X3_RC4_IfcFlowInstrument_type = new entity(strings[2860], false, 477, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcGeomodel_type = new entity(strings[2861], false, 516, IFC4X3_RC4_IfcGeotechnicalAssembly_type); + IFC4X3_RC4_IfcGeoslice_type = new entity(strings[2862], false, 517, IFC4X3_RC4_IfcGeotechnicalAssembly_type); + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type = new entity(strings[2863], false, 842, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcSensor_type = new entity(strings[2864], false, 1001, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcUnitaryControlElement_type = new entity(strings[2865], false, 1249, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcActuator_type = new entity(strings[2866], false, 9, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcAlarm_type = new entity(strings[2867], false, 26, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcController_type = new entity(strings[2868], false, 231, IFC4X3_RC4_IfcDistributionControlElement_type); + IFC4X3_RC4_IfcActionRequest_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcActionRequestTypeEnum_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcActor_type->set_attributes({ + new attribute(strings[2872], new named_type(IFC4X3_RC4_IfcActorSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcActorRole_type->set_attributes({ + new attribute(strings[2873], new named_type(IFC4X3_RC4_IfcRoleEnum_type), false), + new attribute(strings[2874], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcActuator_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcActuatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcActuatorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcActuatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAddress_type->set_attributes({ + new attribute(strings[2876], new named_type(IFC4X3_RC4_IfcAddressTypeEnum_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[2877], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcAdvancedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcAdvancedBrepWithVoids_type->set_attributes({ + new attribute(strings[2878], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcAdvancedFace_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcAirTerminal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAirTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAirTerminalBox_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAirTerminalBoxType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAirTerminalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAirTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAirToAirHeatRecovery_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlarm_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAlarmTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlarmType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAlarmTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAlignmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentCant_type->set_attributes({ + new attribute(strings[2879], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentCantSegment_type->set_attributes({ + new attribute(strings[2880], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2881], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2882], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2883], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[2884], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2885], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentHorizontal_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentHorizontalSegment_type->set_attributes({ + new attribute(strings[2886], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false), + new attribute(strings[2887], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false), + new attribute(strings[2888], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2889], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2890], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2891], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentParameterSegment_type->set_attributes({ + new attribute(strings[2892], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2893], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcAlignmentSegment_type->set_attributes({ + new attribute(strings[2894], new named_type(IFC4X3_RC4_IfcAlignmentParameterSegment_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentVertical_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAlignmentVerticalSegment_type->set_attributes({ + new attribute(strings[2880], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2881], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[2895], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2896], new named_type(IFC4X3_RC4_IfcRatioMeasure_type), false), + new attribute(strings[2897], new named_type(IFC4X3_RC4_IfcRatioMeasure_type), false), + new attribute(strings[2898], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAnnotation_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAnnotationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAnnotationFillArea_type->set_attributes({ + new attribute(strings[2899], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[2900], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCurve_type)), true) + },{ + false, false + }); + IFC4X3_RC4_IfcApplication_type->set_attributes({ + new attribute(strings[2901], new named_type(IFC4X3_RC4_IfcOrganization_type), false), + new attribute(strings[2902], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2903], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2904], new named_type(IFC4X3_RC4_IfcIdentifier_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcAppliedValue_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[2906], new named_type(IFC4X3_RC4_IfcAppliedValueSelect_type), true), + new attribute(strings[2907], new named_type(IFC4X3_RC4_IfcMeasureWithUnit_type), true), + new attribute(strings[2908], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[2909], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2911], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2912], new named_type(IFC4X3_RC4_IfcArithmeticOperatorEnum_type), true), + new attribute(strings[2913], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAppliedValue_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcApproval_type->set_attributes({ + new attribute(strings[2914], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[2915], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2916], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2917], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[2918], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[2919], new named_type(IFC4X3_RC4_IfcActorSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcApprovalRelationship_type->set_attributes({ + new attribute(strings[2920], new named_type(IFC4X3_RC4_IfcApproval_type), false), + new attribute(strings[2921], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcApproval_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcArbitraryClosedProfileDef_type->set_attributes({ + new attribute(strings[2922], new named_type(IFC4X3_RC4_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcArbitraryOpenProfileDef_type->set_attributes({ + new attribute(strings[2923], new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type->set_attributes({ + new attribute(strings[2924], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCurve_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcAsset_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2926], new named_type(IFC4X3_RC4_IfcCostValue_type), true), + new attribute(strings[2927], new named_type(IFC4X3_RC4_IfcCostValue_type), true), + new attribute(strings[2928], new named_type(IFC4X3_RC4_IfcCostValue_type), true), + new attribute(strings[2929], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[2930], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[2931], new named_type(IFC4X3_RC4_IfcPerson_type), true), + new attribute(strings[2932], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[2933], new named_type(IFC4X3_RC4_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type->set_attributes({ + new attribute(strings[2934], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2935], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2936], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2937], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2938], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2939], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2940], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2941], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2942], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2943], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[2944], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[2945], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAudioVisualAppliance_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAudioVisualApplianceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcAxis1Placement_type->set_attributes({ + new attribute(strings[2946], new named_type(IFC4X3_RC4_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcAxis2Placement2D_type->set_attributes({ + new attribute(strings[2947], new named_type(IFC4X3_RC4_IfcDirection_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcAxis2Placement3D_type->set_attributes({ + new attribute(strings[2946], new named_type(IFC4X3_RC4_IfcDirection_type), true), + new attribute(strings[2947], new named_type(IFC4X3_RC4_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcAxis2PlacementLinear_type->set_attributes({ + new attribute(strings[2946], new named_type(IFC4X3_RC4_IfcDirection_type), true), + new attribute(strings[2947], new named_type(IFC4X3_RC4_IfcDirection_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcBSplineCurve_type->set_attributes({ + new attribute(strings[2948], new named_type(IFC4X3_RC4_IfcInteger_type), false), + new attribute(strings[2949], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type)), false), + new attribute(strings[2950], new named_type(IFC4X3_RC4_IfcBSplineCurveForm_type), false), + new attribute(strings[2951], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC4_IfcLogical_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[2953], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false), + new attribute(strings[2954], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false), + new attribute(strings[2955], new named_type(IFC4X3_RC4_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBSplineSurface_type->set_attributes({ + new attribute(strings[2956], new named_type(IFC4X3_RC4_IfcInteger_type), false), + new attribute(strings[2957], new named_type(IFC4X3_RC4_IfcInteger_type), false), + new attribute(strings[2949], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type))), false), + new attribute(strings[2958], new named_type(IFC4X3_RC4_IfcBSplineSurfaceForm_type), false), + new attribute(strings[2959], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[2960], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC4_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[2961], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false), + new attribute(strings[2962], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false), + new attribute(strings[2963], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false), + new attribute(strings[2964], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false), + new attribute(strings[2955], new named_type(IFC4X3_RC4_IfcKnotType_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBeam_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBeamStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBeamType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBearing_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBearingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBearingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBearingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBlobTexture_type->set_attributes({ + new attribute(strings[2965], new named_type(IFC4X3_RC4_IfcIdentifier_type), false), + new attribute(strings[2966], new named_type(IFC4X3_RC4_IfcBinary_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBlock_type->set_attributes({ + new attribute(strings[2967], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2968], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2969], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcBoiler_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBoilerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBoilerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBoilerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBooleanClippingResult_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcBooleanResult_type->set_attributes({ + new attribute(strings[2970], new named_type(IFC4X3_RC4_IfcBooleanOperator_type), false), + new attribute(strings[2971], new named_type(IFC4X3_RC4_IfcBooleanOperand_type), false), + new attribute(strings[2972], new named_type(IFC4X3_RC4_IfcBooleanOperand_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcBorehole_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBoundaryCondition_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC4_IfcBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC4_IfcBoundaryEdgeCondition_type->set_attributes({ + new attribute(strings[2973], new named_type(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2974], new named_type(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2975], new named_type(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type), true), + new attribute(strings[2976], new named_type(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2977], new named_type(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true), + new attribute(strings[2978], new named_type(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBoundaryFaceCondition_type->set_attributes({ + new attribute(strings[2979], new named_type(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2980], new named_type(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type), true), + new attribute(strings[2981], new named_type(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcBoundaryNodeCondition_type->set_attributes({ + new attribute(strings[2982], new named_type(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2983], new named_type(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2984], new named_type(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type), true), + new attribute(strings[2985], new named_type(IFC4X3_RC4_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2986], new named_type(IFC4X3_RC4_IfcRotationalStiffnessSelect_type), true), + new attribute(strings[2987], new named_type(IFC4X3_RC4_IfcRotationalStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type->set_attributes({ + new attribute(strings[2988], new named_type(IFC4X3_RC4_IfcWarpingStiffnessSelect_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBoundedCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcBoundedSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcBoundingBox_type->set_attributes({ + new attribute(strings[2989], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false), + new attribute(strings[2990], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2991], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2992], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcBoxedHalfSpace_type->set_attributes({ + new attribute(strings[2993], new named_type(IFC4X3_RC4_IfcBoundingBox_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcBridge_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBridgeTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuilding_type->set_attributes({ + new attribute(strings[2994], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[2995], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[2996], new named_type(IFC4X3_RC4_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuildingElementPart_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuildingElementPartType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuildingElementProxy_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuildingElementProxyType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuildingStorey_type->set_attributes({ + new attribute(strings[2997], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuildingSystem_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBuildingSystemTypeEnum_type), true), + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuiltElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuiltElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBuiltSystem_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBuiltSystemTypeEnum_type), true), + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBurner_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBurnerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcBurnerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcBurnerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCShapeProfileDef_type->set_attributes({ + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3000], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3001], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3002], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3003], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableCarrierFitting_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableCarrierFittingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableCarrierSegment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableCarrierSegmentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableFitting_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableFittingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableSegment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCableSegmentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCableSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCaissonFoundation_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCaissonFoundationType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCartesianPoint_type->set_attributes({ + new attribute(strings[3004], new aggregation_type(aggregation_type::list_type, 1, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcCartesianPointList_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcCartesianPointList2D_type->set_attributes({ + new attribute(strings[3005], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type))), false), + new attribute(strings[3006], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC4_IfcCartesianPointList3D_type->set_attributes({ + new attribute(strings[3005], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type))), false), + new attribute(strings[3006], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true) + },{ + false, false + }); + IFC4X3_RC4_IfcCartesianTransformationOperator_type->set_attributes({ + new attribute(strings[3007], new named_type(IFC4X3_RC4_IfcDirection_type), true), + new attribute(strings[3008], new named_type(IFC4X3_RC4_IfcDirection_type), true), + new attribute(strings[3009], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false), + new attribute(strings[3010], new named_type(IFC4X3_RC4_IfcReal_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcCartesianTransformationOperator2D_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type->set_attributes({ + new attribute(strings[3011], new named_type(IFC4X3_RC4_IfcReal_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcCartesianTransformationOperator3D_type->set_attributes({ + new attribute(strings[3012], new named_type(IFC4X3_RC4_IfcDirection_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type->set_attributes({ + new attribute(strings[3011], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3013], new named_type(IFC4X3_RC4_IfcReal_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCenterLineProfileDef_type->set_attributes({ + new attribute(strings[3014], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcChiller_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcChillerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcChillerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcChillerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcChimney_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcChimneyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcChimneyType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcChimneyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCircle_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcCircleHollowProfileDef_type->set_attributes({ + new attribute(strings[3001], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcCircleProfileDef_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcCivilElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCivilElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcClassification_type->set_attributes({ + new attribute(strings[3016], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3017], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3018], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3019], new named_type(IFC4X3_RC4_IfcURIReference_type), true), + new attribute(strings[3020], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIdentifier_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcClassificationReference_type->set_attributes({ + new attribute(strings[3021], new named_type(IFC4X3_RC4_IfcClassificationReferenceSelect_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3022], new named_type(IFC4X3_RC4_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcClosedShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcClothoid_type->set_attributes({ + new attribute(strings[3023], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcCoil_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCoilType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCoilTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcColourRgb_type->set_attributes({ + new attribute(strings[3024], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3025], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), false), + new attribute(strings[3026], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcColourRgbList_type->set_attributes({ + new attribute(strings[3027], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type))), false) + },{ + false + }); + IFC4X3_RC4_IfcColourSpecification_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC4_IfcColumn_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcColumnTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcColumnStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcColumnType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcColumnTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCommunicationsAppliance_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcComplexProperty_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_RC4_IfcIdentifier_type), false), + new attribute(strings[3029], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProperty_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcComplexPropertyTemplate_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3030], new named_type(IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type), true), + new attribute(strings[3031], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertyTemplate_type)), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCompositeCurve_type->set_attributes({ + new attribute(strings[3032], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSegment_type)), false), + new attribute(strings[2952], new named_type(IFC4X3_RC4_IfcLogical_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcCompositeCurveOnSurface_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC4_IfcCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3033], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3034], new named_type(IFC4X3_RC4_IfcCurve_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcCompositeProfileDef_type->set_attributes({ + new attribute(strings[3035], new aggregation_type(aggregation_type::set_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false), + new attribute(strings[3036], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcCompressor_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCompressorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCompressorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCompressorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCondenser_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCondenserTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCondenserType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCondenserTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConic_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false) + },{ + false + }); + IFC4X3_RC4_IfcConnectedFaceSet_type->set_attributes({ + new attribute(strings[3038], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcFace_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcConnectionCurveGeometry_type->set_attributes({ + new attribute(strings[3039], new named_type(IFC4X3_RC4_IfcCurveOrEdgeCurve_type), false), + new attribute(strings[3040], new named_type(IFC4X3_RC4_IfcCurveOrEdgeCurve_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcConnectionGeometry_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcConnectionPointEccentricity_type->set_attributes({ + new attribute(strings[3041], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3042], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3043], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcConnectionPointGeometry_type->set_attributes({ + new attribute(strings[3044], new named_type(IFC4X3_RC4_IfcPointOrVertexPoint_type), false), + new attribute(strings[3045], new named_type(IFC4X3_RC4_IfcPointOrVertexPoint_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcConnectionSurfaceGeometry_type->set_attributes({ + new attribute(strings[3046], new named_type(IFC4X3_RC4_IfcSurfaceOrFaceSurface_type), false), + new attribute(strings[3047], new named_type(IFC4X3_RC4_IfcSurfaceOrFaceSurface_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcConnectionVolumeGeometry_type->set_attributes({ + new attribute(strings[3048], new named_type(IFC4X3_RC4_IfcSolidOrShell_type), false), + new attribute(strings[3049], new named_type(IFC4X3_RC4_IfcSolidOrShell_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcConstraint_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3050], new named_type(IFC4X3_RC4_IfcConstraintEnum_type), false), + new attribute(strings[3051], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3052], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[3053], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3054], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionEquipmentResource_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionEquipmentResourceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionMaterialResource_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionMaterialResourceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionProductResource_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionProductResourceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionResource_type->set_attributes({ + new attribute(strings[3055], new named_type(IFC4X3_RC4_IfcResourceTime_type), true), + new attribute(strings[3056], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAppliedValue_type)), true), + new attribute(strings[3057], new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConstructionResourceType_type->set_attributes({ + new attribute(strings[3056], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAppliedValue_type)), true), + new attribute(strings[3057], new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcContext_type->set_attributes({ + new attribute(strings[3058], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3059], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3060], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentationContext_type)), true), + new attribute(strings[3061], new named_type(IFC4X3_RC4_IfcUnitAssignment_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcContextDependentUnit_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcControl_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcController_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcControllerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcControllerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcControllerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConversionBasedUnit_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[3062], new named_type(IFC4X3_RC4_IfcMeasureWithUnit_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type->set_attributes({ + new attribute(strings[3063], new named_type(IFC4X3_RC4_IfcReal_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcConveyorSegment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcConveyorSegmentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCooledBeam_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCooledBeamTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCooledBeamType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCooledBeamTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCoolingTower_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCoolingTowerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCoolingTowerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCoolingTowerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCoordinateOperation_type->set_attributes({ + new attribute(strings[3064], new named_type(IFC4X3_RC4_IfcCoordinateReferenceSystemSelect_type), false), + new attribute(strings[3065], new named_type(IFC4X3_RC4_IfcCoordinateReferenceSystem_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcCoordinateReferenceSystem_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3066], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3067], new named_type(IFC4X3_RC4_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcCosine_type->set_attributes({ + new attribute(strings[3068], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3069], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcCostItem_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCostItemTypeEnum_type), true), + new attribute(strings[3070], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcCostValue_type)), true), + new attribute(strings[3071], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCostSchedule_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCostScheduleTypeEnum_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3072], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3073], new named_type(IFC4X3_RC4_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCostValue_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCourse_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCourseTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCourseType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCourseTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCovering_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCoveringTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCoveringType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCoveringTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCrewResource_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCrewResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCrewResourceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCrewResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCsgPrimitive3D_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC4_IfcCsgSolid_type->set_attributes({ + new attribute(strings[3074], new named_type(IFC4X3_RC4_IfcCsgSelect_type), false) + },{ + false + }); + IFC4X3_RC4_IfcCurrencyRelationship_type->set_attributes({ + new attribute(strings[3075], new named_type(IFC4X3_RC4_IfcMonetaryUnit_type), false), + new attribute(strings[3076], new named_type(IFC4X3_RC4_IfcMonetaryUnit_type), false), + new attribute(strings[3077], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), false), + new attribute(strings[3078], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3079], new named_type(IFC4X3_RC4_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCurtainWall_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCurtainWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCurtainWallType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcCurtainWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcCurve_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcCurveBoundedPlane_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4X3_RC4_IfcPlane_type), false), + new attribute(strings[2899], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[2900], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC4_IfcCurve_type)), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcCurveBoundedSurface_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4X3_RC4_IfcSurface_type), false), + new attribute(strings[3081], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcBoundaryCurve_type)), false), + new attribute(strings[3082], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcCurveSegment_type->set_attributes({ + new attribute(strings[3083], new named_type(IFC4X3_RC4_IfcPlacement_type), false), + new attribute(strings[3084], new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), false), + new attribute(strings[2890], new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), false), + new attribute(strings[3034], new named_type(IFC4X3_RC4_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcCurveStyle_type->set_attributes({ + new attribute(strings[3085], new named_type(IFC4X3_RC4_IfcCurveFontOrScaledCurveFontSelect_type), true), + new attribute(strings[3086], new named_type(IFC4X3_RC4_IfcSizeSelect_type), true), + new attribute(strings[3087], new named_type(IFC4X3_RC4_IfcColour_type), true), + new attribute(strings[3088], new named_type(IFC4X3_RC4_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcCurveStyleFont_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3089], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcCurveStyleFontPattern_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcCurveStyleFontAndScaling_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3085], new named_type(IFC4X3_RC4_IfcCurveStyleFontSelect_type), false), + new attribute(strings[3090], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcCurveStyleFontPattern_type->set_attributes({ + new attribute(strings[3091], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3092], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcCylindricalSurface_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcDamper_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDamperType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDamperTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDeepFoundation_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDeepFoundationType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDerivedProfileDef_type->set_attributes({ + new attribute(strings[3093], new named_type(IFC4X3_RC4_IfcProfileDef_type), false), + new attribute(strings[2970], new named_type(IFC4X3_RC4_IfcCartesianTransformationOperator2D_type), false), + new attribute(strings[3036], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcDerivedUnit_type->set_attributes({ + new attribute(strings[3094], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDerivedUnitElement_type)), false), + new attribute(strings[3095], new named_type(IFC4X3_RC4_IfcDerivedUnitEnum_type), false), + new attribute(strings[3096], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcDerivedUnitElement_type->set_attributes({ + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcNamedUnit_type), false), + new attribute(strings[3098], new simple_type(simple_type::integer_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcDimensionalExponents_type->set_attributes({ + new attribute(strings[3099], new simple_type(simple_type::integer_type), false), + new attribute(strings[3100], new simple_type(simple_type::integer_type), false), + new attribute(strings[3101], new simple_type(simple_type::integer_type), false), + new attribute(strings[3102], new simple_type(simple_type::integer_type), false), + new attribute(strings[3103], new simple_type(simple_type::integer_type), false), + new attribute(strings[3104], new simple_type(simple_type::integer_type), false), + new attribute(strings[3105], new simple_type(simple_type::integer_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDirection_type->set_attributes({ + new attribute(strings[3106], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcReal_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3108], new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), true), + new attribute(strings[3109], new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type->set_attributes({ + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDiscreteAccessory_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDiscreteAccessoryType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionBoard_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionBoardType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionChamberElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionChamberElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionCircuit_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionControlElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionControlElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionFlowElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionFlowElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionPort_type->set_attributes({ + new attribute(strings[3110], new named_type(IFC4X3_RC4_IfcFlowDirectionEnum_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDistributionPortTypeEnum_type), true), + new attribute(strings[3111], new named_type(IFC4X3_RC4_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDistributionSystem_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDistributionSystemEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDocumentInformation_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), false), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3019], new named_type(IFC4X3_RC4_IfcURIReference_type), true), + new attribute(strings[2876], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3112], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3113], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3114], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3115], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[3116], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorSelect_type)), true), + new attribute(strings[3053], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3117], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3118], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3119], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[3120], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[3121], new named_type(IFC4X3_RC4_IfcDocumentConfidentialityEnum_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcDocumentStatusEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDocumentInformationRelationship_type->set_attributes({ + new attribute(strings[3122], new named_type(IFC4X3_RC4_IfcDocumentInformation_type), false), + new attribute(strings[3123], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDocumentInformation_type)), false), + new attribute(strings[3124], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcDocumentReference_type->set_attributes({ + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3125], new named_type(IFC4X3_RC4_IfcDocumentInformation_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcDoor_type->set_attributes({ + new attribute(strings[3126], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3127], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDoorTypeEnum_type), true), + new attribute(strings[3128], new named_type(IFC4X3_RC4_IfcDoorTypeOperationEnum_type), true), + new attribute(strings[3129], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDoorLiningProperties_type->set_attributes({ + new attribute(strings[3130], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3131], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3132], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3133], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3134], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3135], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3136], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3137], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3138], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3139], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3140], new named_type(IFC4X3_RC4_IfcShapeAspect_type), true), + new attribute(strings[3141], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3142], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDoorPanelProperties_type->set_attributes({ + new attribute(strings[3143], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3144], new named_type(IFC4X3_RC4_IfcDoorPanelOperationEnum_type), false), + new attribute(strings[3145], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3146], new named_type(IFC4X3_RC4_IfcDoorPanelPositionEnum_type), false), + new attribute(strings[3140], new named_type(IFC4X3_RC4_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDoorStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDoorStyle_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4X3_RC4_IfcDoorStyleOperationEnum_type), false), + new attribute(strings[3147], new named_type(IFC4X3_RC4_IfcDoorStyleConstructionEnum_type), false), + new attribute(strings[3148], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3149], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDoorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDoorTypeEnum_type), false), + new attribute(strings[3128], new named_type(IFC4X3_RC4_IfcDoorTypeOperationEnum_type), false), + new attribute(strings[3148], new named_type(IFC4X3_RC4_IfcBoolean_type), true), + new attribute(strings[3129], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDraughtingPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcDuctFitting_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDuctFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDuctFittingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDuctFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDuctSegment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDuctSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDuctSegmentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDuctSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDuctSilencer_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDuctSilencerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcDuctSilencerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcDuctSilencerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEarthworksCut_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEarthworksCutTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEarthworksElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEarthworksFill_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEarthworksFillTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEdge_type->set_attributes({ + new attribute(strings[3150], new named_type(IFC4X3_RC4_IfcVertex_type), false), + new attribute(strings[3151], new named_type(IFC4X3_RC4_IfcVertex_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcEdgeCurve_type->set_attributes({ + new attribute(strings[3152], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3033], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcEdgeLoop_type->set_attributes({ + new attribute(strings[3153], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcElectricAppliance_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricApplianceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricDistributionBoard_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricDistributionBoardType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricFlowStorageDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricGenerator_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricGeneratorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricMotor_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricMotorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricMotorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricMotorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricTimeControl_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElectricTimeControlType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElement_type->set_attributes({ + new attribute(strings[3154], new named_type(IFC4X3_RC4_IfcIdentifier_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementAssembly_type->set_attributes({ + new attribute(strings[3155], new named_type(IFC4X3_RC4_IfcAssemblyPlaceEnum_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElementAssemblyTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementAssemblyType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcElementAssemblyTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementComponent_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementComponentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementQuantity_type->set_attributes({ + new attribute(strings[3156], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3157], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementType_type->set_attributes({ + new attribute(strings[3158], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcElementarySurface_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false) + },{ + false + }); + IFC4X3_RC4_IfcEllipse_type->set_attributes({ + new attribute(strings[3159], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3160], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcEllipseProfileDef_type->set_attributes({ + new attribute(strings[3159], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3160], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcEnergyConversionDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEnergyConversionDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEngine_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEngineTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEngineType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEngineTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEvaporativeCooler_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEvaporativeCoolerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEvaporator_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEvaporatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEvaporatorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEvaporatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEvent_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEventTypeEnum_type), true), + new attribute(strings[3161], new named_type(IFC4X3_RC4_IfcEventTriggerTypeEnum_type), true), + new attribute(strings[3162], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3163], new named_type(IFC4X3_RC4_IfcEventTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEventTime_type->set_attributes({ + new attribute(strings[3164], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3165], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3166], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3167], new named_type(IFC4X3_RC4_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcEventType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcEventTypeEnum_type), false), + new attribute(strings[3161], new named_type(IFC4X3_RC4_IfcEventTriggerTypeEnum_type), false), + new attribute(strings[3162], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcExtendedProperties_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3168], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProperty_type)), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcExternalInformation_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcExternalReference_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC4_IfcURIReference_type), true), + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcExternalReferenceRelationship_type->set_attributes({ + new attribute(strings[3169], new named_type(IFC4X3_RC4_IfcExternalReference_type), false), + new attribute(strings[3170], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcExternalSpatialElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcExternalSpatialStructureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcExternallyDefinedTextFont_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcExtrudedAreaSolid_type->set_attributes({ + new attribute(strings[3171], new named_type(IFC4X3_RC4_IfcDirection_type), false), + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3172], new named_type(IFC4X3_RC4_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcFace_type->set_attributes({ + new attribute(strings[3173], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcFaceBound_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcFaceBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3174], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcConnectedFaceSet_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcFaceBound_type->set_attributes({ + new attribute(strings[3175], new named_type(IFC4X3_RC4_IfcLoop_type), false), + new attribute(strings[3176], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcFaceOuterBound_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC4_IfcFaceSurface_type->set_attributes({ + new attribute(strings[3177], new named_type(IFC4X3_RC4_IfcSurface_type), false), + new attribute(strings[3033], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcFacetedBrep_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcFacetedBrepWithVoids_type->set_attributes({ + new attribute(strings[2878], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcClosedShell_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcFacility_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFacilityPart_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFacilityPartTypeSelect_type), false), + new attribute(strings[3178], new named_type(IFC4X3_RC4_IfcFacilityUsageEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFailureConnectionCondition_type->set_attributes({ + new attribute(strings[3179], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3180], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3181], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3182], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3183], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3184], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFan_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFanType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFanTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFastener_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFastenerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFastenerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFeatureElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFeatureElementAddition_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFeatureElementSubtraction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFillAreaStyle_type->set_attributes({ + new attribute(strings[3185], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcFillStyleSelect_type)), false), + new attribute(strings[3088], new named_type(IFC4X3_RC4_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcFillAreaStyleHatching_type->set_attributes({ + new attribute(strings[3186], new named_type(IFC4X3_RC4_IfcCurveStyle_type), false), + new attribute(strings[3187], new named_type(IFC4X3_RC4_IfcHatchLineDistanceSelect_type), false), + new attribute(strings[3188], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), true), + new attribute(strings[3189], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), true), + new attribute(strings[3190], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcFillAreaStyleTiles_type->set_attributes({ + new attribute(strings[3191], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcVector_type)), false), + new attribute(strings[3192], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcStyledItem_type)), false), + new attribute(strings[3193], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcFilter_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFilterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFilterType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFilterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFireSuppressionTerminal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFireSuppressionTerminalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type->set_attributes({ + new attribute(strings[3194], new named_type(IFC4X3_RC4_IfcDirection_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowController_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowControllerType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowFitting_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowFittingType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowInstrument_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowInstrumentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowMeter_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFlowMeterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowMeterType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFlowMeterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowMovingDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowMovingDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowSegment_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowSegmentType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowStorageDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowStorageDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowTerminal_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowTerminalType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowTreatmentDevice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFlowTreatmentDeviceType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFooting_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFootingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFootingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFootingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFurnishingElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFurnishingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFurniture_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcFurnitureType_type->set_attributes({ + new attribute(strings[3155], new named_type(IFC4X3_RC4_IfcAssemblyPlaceEnum_type), false), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcFurnitureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeographicElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcGeographicElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeographicElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcGeographicElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeometricCurveSet_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcGeometricRepresentationContext_type->set_attributes({ + new attribute(strings[3195], new named_type(IFC4X3_RC4_IfcDimensionCount_type), false), + new attribute(strings[3196], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3197], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false), + new attribute(strings[3198], new named_type(IFC4X3_RC4_IfcDirection_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeometricRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcGeometricRepresentationSubContext_type->set_attributes({ + new attribute(strings[3199], new named_type(IFC4X3_RC4_IfcGeometricRepresentationContext_type), false), + new attribute(strings[3200], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3201], new named_type(IFC4X3_RC4_IfcGeometricProjectionEnum_type), false), + new attribute(strings[3202], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, true, true, true, true, false, false, false, false + }); + IFC4X3_RC4_IfcGeometricSet_type->set_attributes({ + new attribute(strings[3094], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcGeometricSetSelect_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcGeomodel_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeoslice_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeotechnicalAssembly_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeotechnicalElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGeotechnicalStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGradientCurve_type->set_attributes({ + new attribute(strings[3203], new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false), + new attribute(strings[3204], new named_type(IFC4X3_RC4_IfcPlacement_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcGrid_type->set_attributes({ + new attribute(strings[3205], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcGridAxis_type)), false), + new attribute(strings[3206], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcGridAxis_type)), false), + new attribute(strings[3207], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcGridAxis_type)), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcGridTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcGridAxis_type->set_attributes({ + new attribute(strings[3208], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3209], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3033], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcGridPlacement_type->set_attributes({ + new attribute(strings[3210], new named_type(IFC4X3_RC4_IfcVirtualGridIntersection_type), false), + new attribute(strings[3211], new named_type(IFC4X3_RC4_IfcGridPlacementDirectionSelect_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcGroup_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcHalfSpaceSolid_type->set_attributes({ + new attribute(strings[3212], new named_type(IFC4X3_RC4_IfcSurface_type), false), + new attribute(strings[3213], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcHeatExchanger_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcHeatExchangerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcHeatExchangerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcHeatExchangerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcHumidifier_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcHumidifierTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcHumidifierType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcHumidifierTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcIShapeProfileDef_type->set_attributes({ + new attribute(strings[3127], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2935], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2936], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3214], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3215], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3216], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcImageTexture_type->set_attributes({ + new attribute(strings[3218], new named_type(IFC4X3_RC4_IfcURIReference_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcImpactProtectionDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcImpactProtectionDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcIndexedColourMap_type->set_attributes({ + new attribute(strings[3219], new named_type(IFC4X3_RC4_IfcTessellatedFaceSet_type), false), + new attribute(strings[3220], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3221], new named_type(IFC4X3_RC4_IfcColourRgbList_type), false), + new attribute(strings[3222], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcIndexedPolyCurve_type->set_attributes({ + new attribute(strings[3223], new named_type(IFC4X3_RC4_IfcCartesianPointList_type), false), + new attribute(strings[3032], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSegmentIndexSelect_type)), true), + new attribute(strings[2952], new named_type(IFC4X3_RC4_IfcBoolean_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcIndexedPolygonalFace_type->set_attributes({ + new attribute(strings[3224], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type->set_attributes({ + new attribute(strings[3225], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))), false) + },{ + false, false + }); + IFC4X3_RC4_IfcIndexedTextureMap_type->set_attributes({ + new attribute(strings[3219], new named_type(IFC4X3_RC4_IfcTessellatedFaceSet_type), false), + new attribute(strings[3226], new named_type(IFC4X3_RC4_IfcTextureVertexList_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcIndexedTriangleTextureMap_type->set_attributes({ + new attribute(strings[3227], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcInterceptor_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcInterceptorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcInterceptorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcInterceptorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcIntersectionCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcInventory_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcInventoryTypeEnum_type), true), + new attribute(strings[3228], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[3229], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPerson_type)), true), + new attribute(strings[3230], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[2927], new named_type(IFC4X3_RC4_IfcCostValue_type), true), + new attribute(strings[2926], new named_type(IFC4X3_RC4_IfcCostValue_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcIrregularTimeSeries_type->set_attributes({ + new attribute(strings[3231], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIrregularTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcIrregularTimeSeriesValue_type->set_attributes({ + new attribute(strings[3232], new named_type(IFC4X3_RC4_IfcDateTime_type), false), + new attribute(strings[3233], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcJunctionBox_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcJunctionBoxTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcJunctionBoxType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcJunctionBoxTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcKerb_type->set_attributes({ + new attribute(strings[3234], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcKerbType_type->set_attributes({ + new attribute(strings[3234], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLShapeProfileDef_type->set_attributes({ + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3000], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3014], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3215], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3235], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3236], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLaborResource_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLaborResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLaborResourceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLaborResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLagTime_type->set_attributes({ + new attribute(strings[3237], new named_type(IFC4X3_RC4_IfcTimeOrRatioSelect_type), false), + new attribute(strings[3238], new named_type(IFC4X3_RC4_IfcTaskDurationEnum_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcLamp_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLampType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLibraryInformation_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2902], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3239], new named_type(IFC4X3_RC4_IfcActorSelect_type), true), + new attribute(strings[3240], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3019], new named_type(IFC4X3_RC4_IfcURIReference_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLibraryReference_type->set_attributes({ + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3241], new named_type(IFC4X3_RC4_IfcLanguageId_type), true), + new attribute(strings[3242], new named_type(IFC4X3_RC4_IfcLibraryInformation_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLightDistributionData_type->set_attributes({ + new attribute(strings[3243], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false), + new attribute(strings[3244], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3245], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type)), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcLightFixture_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLightFixtureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLightFixtureType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLightFixtureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLightIntensityDistribution_type->set_attributes({ + new attribute(strings[3246], new named_type(IFC4X3_RC4_IfcLightDistributionCurveEnum_type), false), + new attribute(strings[3247], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLightDistributionData_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcLightSource_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3248], new named_type(IFC4X3_RC4_IfcColourRgb_type), false), + new attribute(strings[3249], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3250], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcLightSourceAmbient_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcLightSourceDirectional_type->set_attributes({ + new attribute(strings[3176], new named_type(IFC4X3_RC4_IfcDirection_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcLightSourceGoniometric_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false), + new attribute(strings[3251], new named_type(IFC4X3_RC4_IfcColourRgb_type), true), + new attribute(strings[3252], new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), false), + new attribute(strings[3253], new named_type(IFC4X3_RC4_IfcLuminousFluxMeasure_type), false), + new attribute(strings[3254], new named_type(IFC4X3_RC4_IfcLightEmissionSourceEnum_type), false), + new attribute(strings[3255], new named_type(IFC4X3_RC4_IfcLightDistributionDataSourceSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLightSourcePositional_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false), + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3256], new named_type(IFC4X3_RC4_IfcReal_type), false), + new attribute(strings[3257], new named_type(IFC4X3_RC4_IfcReal_type), false), + new attribute(strings[3258], new named_type(IFC4X3_RC4_IfcReal_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLightSourceSpot_type->set_attributes({ + new attribute(strings[3176], new named_type(IFC4X3_RC4_IfcDirection_type), false), + new attribute(strings[3259], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3260], new named_type(IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type), false), + new attribute(strings[3261], new named_type(IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLine_type->set_attributes({ + new attribute(strings[3262], new named_type(IFC4X3_RC4_IfcCartesianPoint_type), false), + new attribute(strings[3263], new named_type(IFC4X3_RC4_IfcVector_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcLinearElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLinearPlacement_type->set_attributes({ + new attribute(strings[3264], new named_type(IFC4X3_RC4_IfcAxis2PlacementLinear_type), false), + new attribute(strings[3265], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcLinearPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLiquidTerminal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLiquidTerminalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcLocalPlacement_type->set_attributes({ + new attribute(strings[3264], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcLoop_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcManifoldSolidBrep_type->set_attributes({ + new attribute(strings[3266], new named_type(IFC4X3_RC4_IfcClosedShell_type), false) + },{ + false + }); + IFC4X3_RC4_IfcMapConversion_type->set_attributes({ + new attribute(strings[3267], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3268], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3269], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3270], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3271], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3010], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3272], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3273], new named_type(IFC4X3_RC4_IfcReal_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMappedItem_type->set_attributes({ + new attribute(strings[3274], new named_type(IFC4X3_RC4_IfcRepresentationMap_type), false), + new attribute(strings[3275], new named_type(IFC4X3_RC4_IfcCartesianTransformationOperator_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcMarineFacility_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMarineFacilityTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterial_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcMaterialClassificationRelationship_type->set_attributes({ + new attribute(strings[3276], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcClassificationSelect_type)), false), + new attribute(strings[3277], new named_type(IFC4X3_RC4_IfcMaterial_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcMaterialConstituent_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3278], new named_type(IFC4X3_RC4_IfcMaterial_type), false), + new attribute(strings[3279], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialConstituentSet_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3280], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterialConstituent_type)), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcMaterialDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type->set_attributes({ + new attribute(strings[3281], new named_type(IFC4X3_RC4_IfcMaterial_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcMaterialLayer_type->set_attributes({ + new attribute(strings[3278], new named_type(IFC4X3_RC4_IfcMaterial_type), true), + new attribute(strings[3282], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), false), + new attribute(strings[3283], new named_type(IFC4X3_RC4_IfcLogical_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3284], new named_type(IFC4X3_RC4_IfcInteger_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialLayerSet_type->set_attributes({ + new attribute(strings[3285], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterialLayer_type)), false), + new attribute(strings[3286], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcMaterialLayerSetUsage_type->set_attributes({ + new attribute(strings[3287], new named_type(IFC4X3_RC4_IfcMaterialLayerSet_type), false), + new attribute(strings[3288], new named_type(IFC4X3_RC4_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3289], new named_type(IFC4X3_RC4_IfcDirectionSenseEnum_type), false), + new attribute(strings[3290], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3291], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialLayerWithOffsets_type->set_attributes({ + new attribute(strings[3292], new named_type(IFC4X3_RC4_IfcLayerSetDirectionEnum_type), false), + new attribute(strings[3293], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialList_type->set_attributes({ + new attribute(strings[3294], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterial_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcMaterialProfile_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3278], new named_type(IFC4X3_RC4_IfcMaterial_type), true), + new attribute(strings[3295], new named_type(IFC4X3_RC4_IfcProfileDef_type), false), + new attribute(strings[3284], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[2910], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialProfileSet_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3296], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterialProfile_type)), false), + new attribute(strings[3297], new named_type(IFC4X3_RC4_IfcCompositeProfileDef_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcMaterialProfileSetUsage_type->set_attributes({ + new attribute(strings[3298], new named_type(IFC4X3_RC4_IfcMaterialProfileSet_type), false), + new attribute(strings[3299], new named_type(IFC4X3_RC4_IfcCardinalPointReference_type), true), + new attribute(strings[3291], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type->set_attributes({ + new attribute(strings[3300], new named_type(IFC4X3_RC4_IfcMaterialProfileSet_type), false), + new attribute(strings[3301], new named_type(IFC4X3_RC4_IfcCardinalPointReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialProfileWithOffsets_type->set_attributes({ + new attribute(strings[3293], new aggregation_type(aggregation_type::array_type, 1, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialProperties_type->set_attributes({ + new attribute(strings[3278], new named_type(IFC4X3_RC4_IfcMaterialDefinition_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcMaterialRelationship_type->set_attributes({ + new attribute(strings[3302], new named_type(IFC4X3_RC4_IfcMaterial_type), false), + new attribute(strings[3303], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcMaterial_type)), false), + new attribute(strings[3304], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcMaterialUsageDefinition_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcMeasureWithUnit_type->set_attributes({ + new attribute(strings[3305], new named_type(IFC4X3_RC4_IfcValue_type), false), + new attribute(strings[3306], new named_type(IFC4X3_RC4_IfcUnit_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcMechanicalFastener_type->set_attributes({ + new attribute(strings[3307], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3308], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMechanicalFastenerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type), false), + new attribute(strings[3307], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3308], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMedicalDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMedicalDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMember_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMemberTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMemberStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMemberType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMemberTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMetric_type->set_attributes({ + new attribute(strings[3309], new named_type(IFC4X3_RC4_IfcBenchmarkEnum_type), false), + new attribute(strings[3310], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3311], new named_type(IFC4X3_RC4_IfcMetricValueSelect_type), true), + new attribute(strings[3312], new named_type(IFC4X3_RC4_IfcReference_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMirroredProfileDef_type->set_attributes({ + },{ + false, false, false, true, false + }); + IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMonetaryUnit_type->set_attributes({ + new attribute(strings[3313], new named_type(IFC4X3_RC4_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC4_IfcMooringDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMooringDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMooringDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMooringDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMotorConnection_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMotorConnectionTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcMotorConnectionType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcMotorConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcNamedUnit_type->set_attributes({ + new attribute(strings[3314], new named_type(IFC4X3_RC4_IfcDimensionalExponents_type), false), + new attribute(strings[3095], new named_type(IFC4X3_RC4_IfcUnitEnum_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcNavigationElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcNavigationElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcNavigationElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcNavigationElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcObject_type->set_attributes({ + new attribute(strings[3058], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcObjectDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcObjectPlacement_type->set_attributes({ + new attribute(strings[3315], new named_type(IFC4X3_RC4_IfcObjectPlacement_type), true) + },{ + false + }); + IFC4X3_RC4_IfcObjective_type->set_attributes({ + new attribute(strings[3316], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcConstraint_type)), true), + new attribute(strings[3317], new named_type(IFC4X3_RC4_IfcLogicalOperatorEnum_type), true), + new attribute(strings[3318], new named_type(IFC4X3_RC4_IfcObjectiveEnum_type), false), + new attribute(strings[3319], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOccupant_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcOccupantTypeEnum_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOffsetCurve_type->set_attributes({ + new attribute(strings[3320], new named_type(IFC4X3_RC4_IfcCurve_type), false) + },{ + false + }); + IFC4X3_RC4_IfcOffsetCurve2D_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC4_IfcLogical_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcOffsetCurve3D_type->set_attributes({ + new attribute(strings[3321], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[2952], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[2947], new named_type(IFC4X3_RC4_IfcDirection_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcOffsetCurveByDistances_type->set_attributes({ + new attribute(strings[3293], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3154], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcOpenCrossProfileDef_type->set_attributes({ + new attribute(strings[3322], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3323], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type)), false), + new attribute(strings[3324], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type)), false), + new attribute(strings[3325], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOpenShell_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcOpeningElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcOpeningElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOpeningStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOrganization_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3326], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorRole_type)), true), + new attribute(strings[3327], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAddress_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcOrganizationRelationship_type->set_attributes({ + new attribute(strings[3328], new named_type(IFC4X3_RC4_IfcOrganization_type), false), + new attribute(strings[3329], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcOrganization_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcOrientedEdge_type->set_attributes({ + new attribute(strings[3330], new named_type(IFC4X3_RC4_IfcEdge_type), false), + new attribute(strings[3176], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + true, true, false, false + }); + IFC4X3_RC4_IfcOuterBoundaryCurve_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC4_IfcOutlet_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcOutletTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOutletType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcOutletTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcOwnerHistory_type->set_attributes({ + new attribute(strings[3331], new named_type(IFC4X3_RC4_IfcPersonAndOrganization_type), false), + new attribute(strings[3332], new named_type(IFC4X3_RC4_IfcApplication_type), false), + new attribute(strings[3333], new named_type(IFC4X3_RC4_IfcStateEnum_type), true), + new attribute(strings[3334], new named_type(IFC4X3_RC4_IfcChangeActionEnum_type), true), + new attribute(strings[3335], new named_type(IFC4X3_RC4_IfcTimeStamp_type), true), + new attribute(strings[3336], new named_type(IFC4X3_RC4_IfcPersonAndOrganization_type), true), + new attribute(strings[3337], new named_type(IFC4X3_RC4_IfcApplication_type), true), + new attribute(strings[3338], new named_type(IFC4X3_RC4_IfcTimeStamp_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcParameterizedProfileDef_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement2D_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcPath_type->set_attributes({ + new attribute(strings[3153], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcOrientedEdge_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcPavement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPavementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPavementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPavementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPcurve_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4X3_RC4_IfcSurface_type), false), + new attribute(strings[3339], new named_type(IFC4X3_RC4_IfcCurve_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcPerformanceHistory_type->set_attributes({ + new attribute(strings[3340], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPermeableCoveringProperties_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type), false), + new attribute(strings[3146], new named_type(IFC4X3_RC4_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3341], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3342], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3140], new named_type(IFC4X3_RC4_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPermit_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPermitTypeEnum_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPerson_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3343], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3344], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3345], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3346], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3347], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3326], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorRole_type)), true), + new attribute(strings[3327], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcAddress_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPersonAndOrganization_type->set_attributes({ + new attribute(strings[3348], new named_type(IFC4X3_RC4_IfcPerson_type), false), + new attribute(strings[3349], new named_type(IFC4X3_RC4_IfcOrganization_type), false), + new attribute(strings[3326], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcActorRole_type)), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcPhysicalComplexQuantity_type->set_attributes({ + new attribute(strings[3350], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPhysicalQuantity_type)), false), + new attribute(strings[3351], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[3352], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3055], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPhysicalQuantity_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcPhysicalSimpleQuantity_type->set_attributes({ + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcNamedUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcPile_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPileTypeEnum_type), true), + new attribute(strings[3147], new named_type(IFC4X3_RC4_IfcPileConstructionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPileType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPileTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPipeFitting_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPipeFittingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPipeFittingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPipeFittingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPipeSegment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPipeSegmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPipeSegmentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPipeSegmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPixelTexture_type->set_attributes({ + new attribute(strings[3000], new named_type(IFC4X3_RC4_IfcInteger_type), false), + new attribute(strings[3353], new named_type(IFC4X3_RC4_IfcInteger_type), false), + new attribute(strings[3354], new named_type(IFC4X3_RC4_IfcInteger_type), false), + new attribute(strings[3355], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcBinary_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPlacement_type->set_attributes({ + new attribute(strings[3019], new named_type(IFC4X3_RC4_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC4_IfcPlanarBox_type->set_attributes({ + new attribute(strings[3083], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcPlanarExtent_type->set_attributes({ + new attribute(strings[3356], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3357], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcPlane_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcPlant_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPlate_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPlateTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPlateStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPlateType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPlateTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPoint_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcPointByDistanceExpression_type->set_attributes({ + new attribute(strings[3358], new named_type(IFC4X3_RC4_IfcCurveMeasureSelect_type), false), + new attribute(strings[3359], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3360], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3361], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3320], new named_type(IFC4X3_RC4_IfcCurve_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcPointOnCurve_type->set_attributes({ + new attribute(strings[3320], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3362], new named_type(IFC4X3_RC4_IfcParameterValue_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcPointOnSurface_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4X3_RC4_IfcSurface_type), false), + new attribute(strings[3363], new named_type(IFC4X3_RC4_IfcParameterValue_type), false), + new attribute(strings[3364], new named_type(IFC4X3_RC4_IfcParameterValue_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcPolyLoop_type->set_attributes({ + new attribute(strings[3365], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), false), + new attribute(strings[3366], new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPolygonalFaceSet_type->set_attributes({ + new attribute(strings[3367], new named_type(IFC4X3_RC4_IfcBoolean_type), true), + new attribute(strings[3368], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIndexedPolygonalFace_type)), false), + new attribute(strings[3369], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPolyline_type->set_attributes({ + new attribute(strings[3223], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcCartesianPoint_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcPolynomialCurve_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcPlacement_type), false), + new attribute(strings[3370], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true), + new attribute(strings[3371], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true), + new attribute(strings[3372], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPort_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPositioningElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPostalAddress_type->set_attributes({ + new attribute(strings[3373], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3374], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3375], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3376], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3377], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3378], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3379], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPreDefinedColour_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcPreDefinedCurveFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcPreDefinedItem_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false) + },{ + false + }); + IFC4X3_RC4_IfcPreDefinedProperties_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcPreDefinedPropertySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPreDefinedTextFont_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcPresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcPresentationLayerAssignment_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3380], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcLayeredItem_type)), false), + new attribute(strings[2914], new named_type(IFC4X3_RC4_IfcIdentifier_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPresentationLayerWithStyle_type->set_attributes({ + new attribute(strings[3381], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[3382], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[3383], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[3384], new aggregation_type(aggregation_type::set_type, 0, -1, new named_type(IFC4X3_RC4_IfcPresentationStyle_type)), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPresentationStyle_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC4_IfcProcedure_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProcedureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProcedureType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProcedureTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProcess_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProduct_type->set_attributes({ + new attribute(strings[3385], new named_type(IFC4X3_RC4_IfcObjectPlacement_type), true), + new attribute(strings[3386], new named_type(IFC4X3_RC4_IfcProductRepresentation_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProductDefinitionShape_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcProductRepresentation_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3387], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentation_type)), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcProfileDef_type->set_attributes({ + new attribute(strings[3388], new named_type(IFC4X3_RC4_IfcProfileTypeEnum_type), false), + new attribute(strings[3389], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcProfileProperties_type->set_attributes({ + new attribute(strings[3390], new named_type(IFC4X3_RC4_IfcProfileDef_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcProject_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProjectLibrary_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProjectOrder_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProjectOrderTypeEnum_type), true), + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProjectedCRS_type->set_attributes({ + new attribute(strings[3391], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3392], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3393], new named_type(IFC4X3_RC4_IfcNamedUnit_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProjectionElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProjectionElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProperty_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcIdentifier_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcPropertyAbstraction_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcPropertyBoundedValue_type->set_attributes({ + new attribute(strings[3394], new named_type(IFC4X3_RC4_IfcValue_type), true), + new attribute(strings[3395], new named_type(IFC4X3_RC4_IfcValue_type), true), + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcUnit_type), true), + new attribute(strings[3396], new named_type(IFC4X3_RC4_IfcValue_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPropertyDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertyDependencyRelationship_type->set_attributes({ + new attribute(strings[3397], new named_type(IFC4X3_RC4_IfcProperty_type), false), + new attribute(strings[3398], new named_type(IFC4X3_RC4_IfcProperty_type), false), + new attribute(strings[3304], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcPropertyEnumeratedValue_type->set_attributes({ + new attribute(strings[3399], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true), + new attribute(strings[3400], new named_type(IFC4X3_RC4_IfcPropertyEnumeration_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertyEnumeration_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[3399], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), false), + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcUnit_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcPropertyListValue_type->set_attributes({ + new attribute(strings[3233], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true), + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertyReferenceValue_type->set_attributes({ + new attribute(strings[3028], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3401], new named_type(IFC4X3_RC4_IfcObjectReferenceSelect_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertySet_type->set_attributes({ + new attribute(strings[3029], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProperty_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcPropertySetDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertySetTemplate_type->set_attributes({ + new attribute(strings[3030], new named_type(IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type), true), + new attribute(strings[3402], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3031], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertyTemplate_type)), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPropertySingleValue_type->set_attributes({ + new attribute(strings[3403], new named_type(IFC4X3_RC4_IfcValue_type), true), + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcUnit_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertyTableValue_type->set_attributes({ + new attribute(strings[3404], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true), + new attribute(strings[3405], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true), + new attribute(strings[3304], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3406], new named_type(IFC4X3_RC4_IfcUnit_type), true), + new attribute(strings[3407], new named_type(IFC4X3_RC4_IfcUnit_type), true), + new attribute(strings[3408], new named_type(IFC4X3_RC4_IfcCurveInterpolationEnum_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPropertyTemplate_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcPropertyTemplateDefinition_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcProtectiveDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProtectiveDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcProxy_type->set_attributes({ + new attribute(strings[3409], new named_type(IFC4X3_RC4_IfcObjectTypeEnum_type), false), + new attribute(strings[3154], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPump_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPumpTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcPumpType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcPumpTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcQuantityArea_type->set_attributes({ + new attribute(strings[3410], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), false), + new attribute(strings[3411], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcQuantityCount_type->set_attributes({ + new attribute(strings[3412], new named_type(IFC4X3_RC4_IfcCountMeasure_type), false), + new attribute(strings[3411], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcQuantityLength_type->set_attributes({ + new attribute(strings[3413], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3411], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcQuantitySet_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcQuantityTime_type->set_attributes({ + new attribute(strings[3414], new named_type(IFC4X3_RC4_IfcTimeMeasure_type), false), + new attribute(strings[3411], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcQuantityVolume_type->set_attributes({ + new attribute(strings[3415], new named_type(IFC4X3_RC4_IfcVolumeMeasure_type), false), + new attribute(strings[3411], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcQuantityWeight_type->set_attributes({ + new attribute(strings[3416], new named_type(IFC4X3_RC4_IfcMassMeasure_type), false), + new attribute(strings[3411], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcRail_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRailTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRailType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRailTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRailing_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRailingTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRailingType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRailingTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRailway_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRailwayTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRamp_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRampTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRampFlight_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRampFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRampFlightType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRampFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRampType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRampTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type->set_attributes({ + new attribute(strings[3417], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type)), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type->set_attributes({ + new attribute(strings[3417], new aggregation_type(aggregation_type::list_type, 2, -1, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcReal_type))), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRectangleHollowProfileDef_type->set_attributes({ + new attribute(strings[3001], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3418], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3419], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRectangleProfileDef_type->set_attributes({ + new attribute(strings[2990], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2991], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcRectangularPyramid_type->set_attributes({ + new attribute(strings[2967], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2968], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3353], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRectangularTrimmedSurface_type->set_attributes({ + new attribute(strings[3080], new named_type(IFC4X3_RC4_IfcSurface_type), false), + new attribute(strings[3420], new named_type(IFC4X3_RC4_IfcParameterValue_type), false), + new attribute(strings[3421], new named_type(IFC4X3_RC4_IfcParameterValue_type), false), + new attribute(strings[3422], new named_type(IFC4X3_RC4_IfcParameterValue_type), false), + new attribute(strings[3423], new named_type(IFC4X3_RC4_IfcParameterValue_type), false), + new attribute(strings[3424], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3425], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRecurrencePattern_type->set_attributes({ + new attribute(strings[3426], new named_type(IFC4X3_RC4_IfcRecurrenceTypeEnum_type), false), + new attribute(strings[3427], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDayInMonthNumber_type)), true), + new attribute(strings[3428], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDayInWeekNumber_type)), true), + new attribute(strings[3429], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcMonthInYearNumber_type)), true), + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[3430], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[3431], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[3432], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTimePeriod_type)), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReference_type->set_attributes({ + new attribute(strings[3433], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3434], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3435], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3436], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), true), + new attribute(strings[3437], new named_type(IFC4X3_RC4_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcReferent_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcReferentTypeEnum_type), true), + new attribute(strings[3438], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRegularTimeSeries_type->set_attributes({ + new attribute(strings[3439], new named_type(IFC4X3_RC4_IfcTimeMeasure_type), false), + new attribute(strings[3231], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTimeSeriesValue_type)), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcedSoil_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcementBarProperties_type->set_attributes({ + new attribute(strings[3440], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), false), + new attribute(strings[3441], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[3442], new named_type(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3443], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3444], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3445], new named_type(IFC4X3_RC4_IfcCountMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcementDefinitionProperties_type->set_attributes({ + new attribute(strings[3446], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3447], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSectionReinforcementProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcingBar_type->set_attributes({ + new attribute(strings[3307], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3448], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3449], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcReinforcingBarTypeEnum_type), true), + new attribute(strings[3442], new named_type(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcingBarType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcReinforcingBarTypeEnum_type), false), + new attribute(strings[3307], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3448], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3449], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3442], new named_type(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type), true), + new attribute(strings[3450], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3451], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcingElement_type->set_attributes({ + new attribute(strings[3441], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcingElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcingMesh_type->set_attributes({ + new attribute(strings[3452], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3453], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3454], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3455], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3456], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3457], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3458], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3459], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcReinforcingMeshType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type), false), + new attribute(strings[3452], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3453], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3454], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3455], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3456], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3457], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3458], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3459], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3450], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3451], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcBendingParameterSelect_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAdheresToElement_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC4_IfcElement_type), false), + new attribute(strings[3461], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcSurfaceFeature_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAggregates_type->set_attributes({ + new attribute(strings[3462], new named_type(IFC4X3_RC4_IfcObjectDefinition_type), false), + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssigns_type->set_attributes({ + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false), + new attribute(strings[3464], new named_type(IFC4X3_RC4_IfcObjectTypeEnum_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToActor_type->set_attributes({ + new attribute(strings[3465], new named_type(IFC4X3_RC4_IfcActor_type), false), + new attribute(strings[3466], new named_type(IFC4X3_RC4_IfcActorRole_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToControl_type->set_attributes({ + new attribute(strings[3467], new named_type(IFC4X3_RC4_IfcControl_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToGroup_type->set_attributes({ + new attribute(strings[3468], new named_type(IFC4X3_RC4_IfcGroup_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type->set_attributes({ + new attribute(strings[3469], new named_type(IFC4X3_RC4_IfcRatioMeasure_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToProcess_type->set_attributes({ + new attribute(strings[3470], new named_type(IFC4X3_RC4_IfcProcessSelect_type), false), + new attribute(strings[3471], new named_type(IFC4X3_RC4_IfcMeasureWithUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToProduct_type->set_attributes({ + new attribute(strings[3472], new named_type(IFC4X3_RC4_IfcProductSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssignsToResource_type->set_attributes({ + new attribute(strings[3473], new named_type(IFC4X3_RC4_IfcResourceSelect_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociates_type->set_attributes({ + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesApproval_type->set_attributes({ + new attribute(strings[2920], new named_type(IFC4X3_RC4_IfcApproval_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesClassification_type->set_attributes({ + new attribute(strings[3474], new named_type(IFC4X3_RC4_IfcClassificationSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesConstraint_type->set_attributes({ + new attribute(strings[3475], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3476], new named_type(IFC4X3_RC4_IfcConstraint_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesDocument_type->set_attributes({ + new attribute(strings[3122], new named_type(IFC4X3_RC4_IfcDocumentSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesLibrary_type->set_attributes({ + new attribute(strings[3477], new named_type(IFC4X3_RC4_IfcLibrarySelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesMaterial_type->set_attributes({ + new attribute(strings[3302], new named_type(IFC4X3_RC4_IfcMaterialSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelAssociatesProfileDef_type->set_attributes({ + new attribute(strings[3478], new named_type(IFC4X3_RC4_IfcProfileDef_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnects_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsElements_type->set_attributes({ + new attribute(strings[3479], new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), true), + new attribute(strings[3460], new named_type(IFC4X3_RC4_IfcElement_type), false), + new attribute(strings[3480], new named_type(IFC4X3_RC4_IfcElement_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsPathElements_type->set_attributes({ + new attribute(strings[3481], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false), + new attribute(strings[3482], new aggregation_type(aggregation_type::list_type, 0, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false), + new attribute(strings[3483], new named_type(IFC4X3_RC4_IfcConnectionTypeEnum_type), false), + new attribute(strings[3484], new named_type(IFC4X3_RC4_IfcConnectionTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsPortToElement_type->set_attributes({ + new attribute(strings[3485], new named_type(IFC4X3_RC4_IfcPort_type), false), + new attribute(strings[3480], new named_type(IFC4X3_RC4_IfcDistributionElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsPorts_type->set_attributes({ + new attribute(strings[3485], new named_type(IFC4X3_RC4_IfcPort_type), false), + new attribute(strings[3486], new named_type(IFC4X3_RC4_IfcPort_type), false), + new attribute(strings[3487], new named_type(IFC4X3_RC4_IfcElement_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsStructuralActivity_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC4_IfcStructuralActivityAssignmentSelect_type), false), + new attribute(strings[3488], new named_type(IFC4X3_RC4_IfcStructuralActivity_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsStructuralMember_type->set_attributes({ + new attribute(strings[3489], new named_type(IFC4X3_RC4_IfcStructuralMember_type), false), + new attribute(strings[3490], new named_type(IFC4X3_RC4_IfcStructuralConnection_type), false), + new attribute(strings[3491], new named_type(IFC4X3_RC4_IfcBoundaryCondition_type), true), + new attribute(strings[3492], new named_type(IFC4X3_RC4_IfcStructuralConnectionCondition_type), true), + new attribute(strings[3493], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3494], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsWithEccentricity_type->set_attributes({ + new attribute(strings[3495], new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type->set_attributes({ + new attribute(strings[3496], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcElement_type)), false), + new attribute(strings[3497], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->set_attributes({ + new attribute(strings[3498], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProduct_type)), false), + new attribute(strings[3499], new named_type(IFC4X3_RC4_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelCoversBldgElements_type->set_attributes({ + new attribute(strings[3500], new named_type(IFC4X3_RC4_IfcElement_type), false), + new attribute(strings[3501], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelCoversSpaces_type->set_attributes({ + new attribute(strings[3502], new named_type(IFC4X3_RC4_IfcSpace_type), false), + new attribute(strings[3501], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcCovering_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelDeclares_type->set_attributes({ + new attribute(strings[3503], new named_type(IFC4X3_RC4_IfcContext_type), false), + new attribute(strings[3504], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDefinitionSelect_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelDecomposes_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRelDefines_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRelDefinesByObject_type->set_attributes({ + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObject_type)), false), + new attribute(strings[3462], new named_type(IFC4X3_RC4_IfcObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelDefinesByProperties_type->set_attributes({ + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false), + new attribute(strings[3505], new named_type(IFC4X3_RC4_IfcPropertySetDefinitionSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelDefinesByTemplate_type->set_attributes({ + new attribute(strings[3506], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertySetDefinition_type)), false), + new attribute(strings[3507], new named_type(IFC4X3_RC4_IfcPropertySetTemplate_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelDefinesByType_type->set_attributes({ + new attribute(strings[3463], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcObject_type)), false), + new attribute(strings[3508], new named_type(IFC4X3_RC4_IfcTypeObject_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelFillsElement_type->set_attributes({ + new attribute(strings[3509], new named_type(IFC4X3_RC4_IfcOpeningElement_type), false), + new attribute(strings[3510], new named_type(IFC4X3_RC4_IfcElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelFlowControlElements_type->set_attributes({ + new attribute(strings[3511], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcDistributionControlElement_type)), false), + new attribute(strings[3512], new named_type(IFC4X3_RC4_IfcDistributionFlowElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelInterferesElements_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC4_IfcInterferenceSelect_type), false), + new attribute(strings[3480], new named_type(IFC4X3_RC4_IfcInterferenceSelect_type), false), + new attribute(strings[3513], new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), true), + new attribute(strings[3514], new named_type(IFC4X3_RC4_IfcSpatialZone_type), true), + new attribute(strings[3515], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3516], new named_type(IFC4X3_RC4_IfcLogical_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelNests_type->set_attributes({ + new attribute(strings[3462], new named_type(IFC4X3_RC4_IfcObjectDefinition_type), false), + new attribute(strings[3463], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcObjectDefinition_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelPositions_type->set_attributes({ + new attribute(strings[3517], new named_type(IFC4X3_RC4_IfcPositioningElement_type), false), + new attribute(strings[3518], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcProduct_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelProjectsElement_type->set_attributes({ + new attribute(strings[3460], new named_type(IFC4X3_RC4_IfcElement_type), false), + new attribute(strings[3519], new named_type(IFC4X3_RC4_IfcFeatureElementAddition_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->set_attributes({ + new attribute(strings[3498], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcSpatialReferenceSelect_type)), false), + new attribute(strings[3499], new named_type(IFC4X3_RC4_IfcSpatialElement_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelSequence_type->set_attributes({ + new attribute(strings[3470], new named_type(IFC4X3_RC4_IfcProcess_type), false), + new attribute(strings[3520], new named_type(IFC4X3_RC4_IfcProcess_type), false), + new attribute(strings[3521], new named_type(IFC4X3_RC4_IfcLagTime_type), true), + new attribute(strings[3522], new named_type(IFC4X3_RC4_IfcSequenceEnum_type), true), + new attribute(strings[3523], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelServicesBuildings_type->set_attributes({ + new attribute(strings[3524], new named_type(IFC4X3_RC4_IfcSystem_type), false), + new attribute(strings[3525], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcSpatialElement_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelSpaceBoundary_type->set_attributes({ + new attribute(strings[3502], new named_type(IFC4X3_RC4_IfcSpaceBoundarySelect_type), false), + new attribute(strings[3510], new named_type(IFC4X3_RC4_IfcElement_type), false), + new attribute(strings[3479], new named_type(IFC4X3_RC4_IfcConnectionGeometry_type), true), + new attribute(strings[3526], new named_type(IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type), false), + new attribute(strings[3527], new named_type(IFC4X3_RC4_IfcInternalOrExternalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->set_attributes({ + new attribute(strings[3528], new named_type(IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type->set_attributes({ + new attribute(strings[3529], new named_type(IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelVoidsElement_type->set_attributes({ + new attribute(strings[3500], new named_type(IFC4X3_RC4_IfcElement_type), false), + new attribute(strings[3530], new named_type(IFC4X3_RC4_IfcFeatureElementSubtraction_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRelationship_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type->set_attributes({ + new attribute(strings[3531], new named_type(IFC4X3_RC4_IfcParameterValue_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRepresentation_type->set_attributes({ + new attribute(strings[3532], new named_type(IFC4X3_RC4_IfcRepresentationContext_type), false), + new attribute(strings[3533], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3534], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3535], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentationItem_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRepresentationContext_type->set_attributes({ + new attribute(strings[3536], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3537], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcRepresentationMap_type->set_attributes({ + new attribute(strings[3538], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false), + new attribute(strings[3539], new named_type(IFC4X3_RC4_IfcRepresentation_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcResource_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcResourceApprovalRelationship_type->set_attributes({ + new attribute(strings[3170], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcResourceObjectSelect_type)), false), + new attribute(strings[2920], new named_type(IFC4X3_RC4_IfcApproval_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcResourceConstraintRelationship_type->set_attributes({ + new attribute(strings[3476], new named_type(IFC4X3_RC4_IfcConstraint_type), false), + new attribute(strings[3170], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcResourceObjectSelect_type)), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcResourceLevelRelationship_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcResourceTime_type->set_attributes({ + new attribute(strings[3540], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3541], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3542], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3543], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3544], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3545], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3546], new named_type(IFC4X3_RC4_IfcBoolean_type), true), + new attribute(strings[3547], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3548], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3549], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3550], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3551], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3552], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3553], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true), + new attribute(strings[3554], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRevolvedAreaSolid_type->set_attributes({ + new attribute(strings[2946], new named_type(IFC4X3_RC4_IfcAxis1Placement_type), false), + new attribute(strings[3555], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type->set_attributes({ + new attribute(strings[3172], new named_type(IFC4X3_RC4_IfcProfileDef_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcRightCircularCone_type->set_attributes({ + new attribute(strings[3353], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3556], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcRightCircularCylinder_type->set_attributes({ + new attribute(strings[3353], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcRoad_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRoadTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRoof_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRoofTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRoofType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcRoofTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcRoot_type->set_attributes({ + new attribute(strings[3557], new named_type(IFC4X3_RC4_IfcGloballyUniqueId_type), false), + new attribute(strings[3558], new named_type(IFC4X3_RC4_IfcOwnerHistory_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcRoundedRectangleProfileDef_type->set_attributes({ + new attribute(strings[3559], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSIUnit_type->set_attributes({ + new attribute(strings[3560], new named_type(IFC4X3_RC4_IfcSIPrefix_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcSIUnitName_type), false) + },{ + true, false, false, false + }); + IFC4X3_RC4_IfcSanitaryTerminal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSanitaryTerminalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSchedulingTime_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3561], new named_type(IFC4X3_RC4_IfcDataOriginEnum_type), true), + new attribute(strings[3562], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSeamCurve_type->set_attributes({ + },{ + false, false, false + }); + IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3563], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3564], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3069], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSectionProperties_type->set_attributes({ + new attribute(strings[3565], new named_type(IFC4X3_RC4_IfcSectionTypeEnum_type), false), + new attribute(strings[3566], new named_type(IFC4X3_RC4_IfcProfileDef_type), false), + new attribute(strings[3567], new named_type(IFC4X3_RC4_IfcProfileDef_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSectionReinforcementProperties_type->set_attributes({ + new attribute(strings[3568], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3569], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3570], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3571], new named_type(IFC4X3_RC4_IfcReinforcingBarRoleEnum_type), false), + new attribute(strings[3572], new named_type(IFC4X3_RC4_IfcSectionProperties_type), false), + new attribute(strings[3573], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcReinforcementBarProperties_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSectionedSolid_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3574], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcSectionedSolidHorizontal_type->set_attributes({ + new attribute(strings[3575], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcAxis2PlacementLinear_type)), false), + new attribute(strings[3576], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSectionedSpine_type->set_attributes({ + new attribute(strings[3577], new named_type(IFC4X3_RC4_IfcCompositeCurve_type), false), + new attribute(strings[3574], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false), + new attribute(strings[3575], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type)), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSectionedSurface_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3575], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcPointByDistanceExpression_type)), false), + new attribute(strings[3574], new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X3_RC4_IfcProfileDef_type)), false), + new attribute(strings[3576], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSegment_type->set_attributes({ + new attribute(strings[3578], new named_type(IFC4X3_RC4_IfcTransitionCode_type), false) + },{ + false + }); + IFC4X3_RC4_IfcSegmentedReferenceCurve_type->set_attributes({ + new attribute(strings[3203], new named_type(IFC4X3_RC4_IfcBoundedCurve_type), false), + new attribute(strings[3204], new named_type(IFC4X3_RC4_IfcPlacement_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSensor_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSensorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSensorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSensorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3579], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3580], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3581], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3582], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3583], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3563], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3564], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3069], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcShadingDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcShadingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcShadingDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcShadingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcShapeAspect_type->set_attributes({ + new attribute(strings[3584], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcShapeModel_type)), false), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3585], new named_type(IFC4X3_RC4_IfcLogical_type), false), + new attribute(strings[3586], new named_type(IFC4X3_RC4_IfcProductRepresentationSelect_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcShapeModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcShapeRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcShellBasedSurfaceModel_type->set_attributes({ + new attribute(strings[3587], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcShell_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcSign_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSignTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSignType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSignTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSignal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSignalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSignalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSignalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSimpleProperty_type->set_attributes({ + },{ + false, false + }); + IFC4X3_RC4_IfcSimplePropertyTemplate_type->set_attributes({ + new attribute(strings[3030], new named_type(IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type), true), + new attribute(strings[3588], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3589], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3590], new named_type(IFC4X3_RC4_IfcPropertyEnumeration_type), true), + new attribute(strings[3591], new named_type(IFC4X3_RC4_IfcUnit_type), true), + new attribute(strings[3592], new named_type(IFC4X3_RC4_IfcUnit_type), true), + new attribute(strings[3304], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3593], new named_type(IFC4X3_RC4_IfcStateEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSine_type->set_attributes({ + new attribute(strings[3594], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3564], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3069], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSite_type->set_attributes({ + new attribute(strings[3595], new named_type(IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3596], new named_type(IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type), true), + new attribute(strings[3597], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3598], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3599], new named_type(IFC4X3_RC4_IfcPostalAddress_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSlab_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSlabTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSlabElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSlabStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSlabType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSlabTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSlippageConnectionCondition_type->set_attributes({ + new attribute(strings[3600], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3601], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3602], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSolarDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSolarDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSolarDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSolarDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSolidModel_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcSolidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpace_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSpaceTypeEnum_type), true), + new attribute(strings[3603], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpaceHeater_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpaceHeaterType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpaceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSpaceTypeEnum_type), false), + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpatialElement_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpatialElementType_type->set_attributes({ + new attribute(strings[3158], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpatialStructureElement_type->set_attributes({ + new attribute(strings[3604], new named_type(IFC4X3_RC4_IfcElementCompositionEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpatialStructureElementType_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpatialZone_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSpatialZoneTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSpatialZoneType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSpatialZoneTypeEnum_type), false), + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSphere_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcSphericalSurface_type->set_attributes({ + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcSpiral_type->set_attributes({ + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), true) + },{ + false + }); + IFC4X3_RC4_IfcStackTerminal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStackTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStackTerminalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStackTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStair_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStairTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStairFlight_type->set_attributes({ + new attribute(strings[3605], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[3606], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[3607], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3608], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStairFlightTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStairFlightType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStairFlightTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStairType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStairTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralAction_type->set_attributes({ + new attribute(strings[3609], new named_type(IFC4X3_RC4_IfcBoolean_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralActivity_type->set_attributes({ + new attribute(strings[3610], new named_type(IFC4X3_RC4_IfcStructuralLoad_type), false), + new attribute(strings[3611], new named_type(IFC4X3_RC4_IfcGlobalOrLocalEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralAnalysisModel_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcAnalysisModelTypeEnum_type), false), + new attribute(strings[3612], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true), + new attribute(strings[3613], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcStructuralLoadGroup_type)), true), + new attribute(strings[3614], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcStructuralResultGroup_type)), true), + new attribute(strings[3615], new named_type(IFC4X3_RC4_IfcObjectPlacement_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralConnection_type->set_attributes({ + new attribute(strings[3491], new named_type(IFC4X3_RC4_IfcBoundaryCondition_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralConnectionCondition_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC4_IfcStructuralCurveAction_type->set_attributes({ + new attribute(strings[3616], new named_type(IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralCurveConnection_type->set_attributes({ + new attribute(strings[2946], new named_type(IFC4X3_RC4_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralCurveMember_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type), false), + new attribute(strings[2946], new named_type(IFC4X3_RC4_IfcDirection_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralCurveMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralCurveReaction_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralItem_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLinearAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoad_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false + }); + IFC4X3_RC4_IfcStructuralLoadCase_type->set_attributes({ + new attribute(strings[3617], new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcRatioMeasure_type)), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadConfiguration_type->set_attributes({ + new attribute(strings[3231], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcStructuralLoadOrResult_type)), false), + new attribute(strings[3618], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC4_IfcLengthMeasure_type))), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadGroup_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcLoadGroupTypeEnum_type), false), + new attribute(strings[3619], new named_type(IFC4X3_RC4_IfcActionTypeEnum_type), false), + new attribute(strings[3620], new named_type(IFC4X3_RC4_IfcActionSourceTypeEnum_type), false), + new attribute(strings[3621], new named_type(IFC4X3_RC4_IfcRatioMeasure_type), true), + new attribute(strings[2876], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadLinearForce_type->set_attributes({ + new attribute(strings[3622], new named_type(IFC4X3_RC4_IfcLinearForceMeasure_type), true), + new attribute(strings[3623], new named_type(IFC4X3_RC4_IfcLinearForceMeasure_type), true), + new attribute(strings[3624], new named_type(IFC4X3_RC4_IfcLinearForceMeasure_type), true), + new attribute(strings[3625], new named_type(IFC4X3_RC4_IfcLinearMomentMeasure_type), true), + new attribute(strings[3626], new named_type(IFC4X3_RC4_IfcLinearMomentMeasure_type), true), + new attribute(strings[3627], new named_type(IFC4X3_RC4_IfcLinearMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadOrResult_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcStructuralLoadPlanarForce_type->set_attributes({ + new attribute(strings[3628], new named_type(IFC4X3_RC4_IfcPlanarForceMeasure_type), true), + new attribute(strings[3629], new named_type(IFC4X3_RC4_IfcPlanarForceMeasure_type), true), + new attribute(strings[3630], new named_type(IFC4X3_RC4_IfcPlanarForceMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type->set_attributes({ + new attribute(strings[3631], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3632], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3633], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3634], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3635], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3636], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type->set_attributes({ + new attribute(strings[3637], new named_type(IFC4X3_RC4_IfcCurvatureMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadSingleForce_type->set_attributes({ + new attribute(strings[3638], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3639], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3640], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3641], new named_type(IFC4X3_RC4_IfcTorqueMeasure_type), true), + new attribute(strings[3642], new named_type(IFC4X3_RC4_IfcTorqueMeasure_type), true), + new attribute(strings[3643], new named_type(IFC4X3_RC4_IfcTorqueMeasure_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type->set_attributes({ + new attribute(strings[3644], new named_type(IFC4X3_RC4_IfcWarpingMomentMeasure_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralLoadStatic_type->set_attributes({ + },{ + false + }); + IFC4X3_RC4_IfcStructuralLoadTemperature_type->set_attributes({ + new attribute(strings[3645], new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3646], new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), true), + new attribute(strings[3647], new named_type(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcStructuralMember_type->set_attributes({ + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralPlanarAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralPointAction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralPointConnection_type->set_attributes({ + new attribute(strings[3494], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralPointReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralReaction_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralResultGroup_type->set_attributes({ + new attribute(strings[3648], new named_type(IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type), false), + new attribute(strings[3649], new named_type(IFC4X3_RC4_IfcStructuralLoadGroup_type), true), + new attribute(strings[3650], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralSurfaceAction_type->set_attributes({ + new attribute(strings[3616], new named_type(IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralSurfaceConnection_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralSurfaceMember_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type), false), + new attribute(strings[3014], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStructuralSurfaceReaction_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcStyleModel_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcStyledItem_type->set_attributes({ + new attribute(strings[3651], new named_type(IFC4X3_RC4_IfcRepresentationItem_type), true), + new attribute(strings[3652], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPresentationStyle_type)), false), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcStyledRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSubContractResource_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSubContractResourceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSubContractResourceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSubContractResourceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSubedge_type->set_attributes({ + new attribute(strings[3653], new named_type(IFC4X3_RC4_IfcEdge_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSurface_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcSurfaceCurve_type->set_attributes({ + new attribute(strings[3654], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3655], new aggregation_type(aggregation_type::list_type, 1, 2, new named_type(IFC4X3_RC4_IfcPcurve_type)), false), + new attribute(strings[3656], new named_type(IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type->set_attributes({ + new attribute(strings[3657], new named_type(IFC4X3_RC4_IfcSurface_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSurfaceFeature_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type->set_attributes({ + new attribute(strings[3171], new named_type(IFC4X3_RC4_IfcDirection_type), false), + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSurfaceOfRevolution_type->set_attributes({ + new attribute(strings[3658], new named_type(IFC4X3_RC4_IfcAxis1Placement_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSurfaceReinforcementArea_type->set_attributes({ + new attribute(strings[3659], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), true), + new attribute(strings[3660], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), true), + new attribute(strings[3661], new named_type(IFC4X3_RC4_IfcRatioMeasure_type), true) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSurfaceStyle_type->set_attributes({ + new attribute(strings[3662], new named_type(IFC4X3_RC4_IfcSurfaceSide_type), false), + new attribute(strings[3652], new aggregation_type(aggregation_type::set_type, 1, 5, new named_type(IFC4X3_RC4_IfcSurfaceStyleElementSelect_type)), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcSurfaceStyleLighting_type->set_attributes({ + new attribute(strings[3663], new named_type(IFC4X3_RC4_IfcColourRgb_type), false), + new attribute(strings[3664], new named_type(IFC4X3_RC4_IfcColourRgb_type), false), + new attribute(strings[3665], new named_type(IFC4X3_RC4_IfcColourRgb_type), false), + new attribute(strings[3666], new named_type(IFC4X3_RC4_IfcColourRgb_type), false) + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcSurfaceStyleRefraction_type->set_attributes({ + new attribute(strings[3667], new named_type(IFC4X3_RC4_IfcReal_type), true), + new attribute(strings[3668], new named_type(IFC4X3_RC4_IfcReal_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcSurfaceStyleRendering_type->set_attributes({ + new attribute(strings[3669], new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true), + new attribute(strings[3665], new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true), + new attribute(strings[3663], new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true), + new attribute(strings[3670], new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true), + new attribute(strings[3671], new named_type(IFC4X3_RC4_IfcColourOrFactor_type), true), + new attribute(strings[3672], new named_type(IFC4X3_RC4_IfcSpecularHighlightSelect_type), true), + new attribute(strings[3673], new named_type(IFC4X3_RC4_IfcReflectanceMethodEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSurfaceStyleShading_type->set_attributes({ + new attribute(strings[3674], new named_type(IFC4X3_RC4_IfcColourRgb_type), false), + new attribute(strings[3675], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcSurfaceStyleWithTextures_type->set_attributes({ + new attribute(strings[3676], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcSurfaceTexture_type->set_attributes({ + new attribute(strings[3677], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3678], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3679], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3680], new named_type(IFC4X3_RC4_IfcCartesianTransformationOperator2D_type), true), + new attribute(strings[3681], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcIdentifier_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcSweptAreaSolid_type->set_attributes({ + new attribute(strings[3682], new named_type(IFC4X3_RC4_IfcProfileDef_type), false), + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcSweptDiskSolid_type->set_attributes({ + new attribute(strings[3107], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3015], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3683], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3108], new named_type(IFC4X3_RC4_IfcParameterValue_type), true), + new attribute(strings[3109], new named_type(IFC4X3_RC4_IfcParameterValue_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type->set_attributes({ + new attribute(strings[3215], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSweptSurface_type->set_attributes({ + new attribute(strings[3684], new named_type(IFC4X3_RC4_IfcProfileDef_type), false), + new attribute(strings[3037], new named_type(IFC4X3_RC4_IfcAxis2Placement3D_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcSwitchingDevice_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSwitchingDeviceType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSystem_type->set_attributes({ + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcSystemFurnitureElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcSystemFurnitureElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTShapeProfileDef_type->set_attributes({ + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3685], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2936], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3214], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3215], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3216], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3686], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3687], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTable_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3688], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTableRow_type)), true), + new attribute(strings[3689], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTableColumn_type)), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcTableColumn_type->set_attributes({ + new attribute(strings[2914], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcUnit_type), true), + new attribute(strings[3312], new named_type(IFC4X3_RC4_IfcReference_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcTableRow_type->set_attributes({ + new attribute(strings[3690], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), true), + new attribute(strings[3691], new named_type(IFC4X3_RC4_IfcBoolean_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcTank_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTankTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTankType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTankTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTask_type->set_attributes({ + new attribute(strings[2870], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3692], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3693], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3284], new named_type(IFC4X3_RC4_IfcInteger_type), true), + new attribute(strings[3694], new named_type(IFC4X3_RC4_IfcTaskTime_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTaskTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTaskTime_type->set_attributes({ + new attribute(strings[3238], new named_type(IFC4X3_RC4_IfcTaskDurationEnum_type), true), + new attribute(strings[3695], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3542], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3543], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3696], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3697], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3698], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3699], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3700], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3701], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3702], new named_type(IFC4X3_RC4_IfcBoolean_type), true), + new attribute(strings[3547], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3703], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3550], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3551], new named_type(IFC4X3_RC4_IfcDateTime_type), true), + new attribute(strings[3704], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3554], new named_type(IFC4X3_RC4_IfcPositiveRatioMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTaskTimeRecurring_type->set_attributes({ + new attribute(strings[3705], new named_type(IFC4X3_RC4_IfcRecurrencePattern_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTaskType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTaskTypeEnum_type), false), + new attribute(strings[3692], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTelecomAddress_type->set_attributes({ + new attribute(strings[3706], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3707], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3708], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3709], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcLabel_type)), true), + new attribute(strings[3710], new named_type(IFC4X3_RC4_IfcURIReference_type), true), + new attribute(strings[3711], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcURIReference_type)), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTendon_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTendonTypeEnum_type), true), + new attribute(strings[3307], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3448], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3712], new named_type(IFC4X3_RC4_IfcForceMeasure_type), true), + new attribute(strings[3713], new named_type(IFC4X3_RC4_IfcPressureMeasure_type), true), + new attribute(strings[3714], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3715], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3716], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTendonAnchor_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTendonAnchorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTendonAnchorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTendonAnchorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTendonConduit_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTendonConduitType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTendonConduitTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTendonType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTendonTypeEnum_type), false), + new attribute(strings[3307], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3448], new named_type(IFC4X3_RC4_IfcAreaMeasure_type), true), + new attribute(strings[3717], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTessellatedFaceSet_type->set_attributes({ + new attribute(strings[3004], new named_type(IFC4X3_RC4_IfcCartesianPointList3D_type), false) + },{ + false + }); + IFC4X3_RC4_IfcTessellatedItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcTextLiteral_type->set_attributes({ + new attribute(strings[3718], new named_type(IFC4X3_RC4_IfcPresentableText_type), false), + new attribute(strings[3083], new named_type(IFC4X3_RC4_IfcAxis2Placement_type), false), + new attribute(strings[3719], new named_type(IFC4X3_RC4_IfcTextPath_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcTextLiteralWithExtent_type->set_attributes({ + new attribute(strings[3720], new named_type(IFC4X3_RC4_IfcPlanarExtent_type), false), + new attribute(strings[3721], new named_type(IFC4X3_RC4_IfcBoxAlignment_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcTextStyle_type->set_attributes({ + new attribute(strings[3722], new named_type(IFC4X3_RC4_IfcTextStyleForDefinedFont_type), true), + new attribute(strings[3723], new named_type(IFC4X3_RC4_IfcTextStyleTextModel_type), true), + new attribute(strings[3724], new named_type(IFC4X3_RC4_IfcTextFontSelect_type), false), + new attribute(strings[3088], new named_type(IFC4X3_RC4_IfcBoolean_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcTextStyleFontModel_type->set_attributes({ + new attribute(strings[3725], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcTextFontName_type)), false), + new attribute(strings[3726], new named_type(IFC4X3_RC4_IfcFontStyle_type), true), + new attribute(strings[3727], new named_type(IFC4X3_RC4_IfcFontVariant_type), true), + new attribute(strings[3728], new named_type(IFC4X3_RC4_IfcFontWeight_type), true), + new attribute(strings[3729], new named_type(IFC4X3_RC4_IfcSizeSelect_type), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTextStyleForDefinedFont_type->set_attributes({ + new attribute(strings[3730], new named_type(IFC4X3_RC4_IfcColour_type), false), + new attribute(strings[3731], new named_type(IFC4X3_RC4_IfcColour_type), true) + },{ + false, false + }); + IFC4X3_RC4_IfcTextStyleTextModel_type->set_attributes({ + new attribute(strings[3732], new named_type(IFC4X3_RC4_IfcSizeSelect_type), true), + new attribute(strings[3733], new named_type(IFC4X3_RC4_IfcTextAlignment_type), true), + new attribute(strings[3734], new named_type(IFC4X3_RC4_IfcTextDecoration_type), true), + new attribute(strings[3735], new named_type(IFC4X3_RC4_IfcSizeSelect_type), true), + new attribute(strings[3736], new named_type(IFC4X3_RC4_IfcSizeSelect_type), true), + new attribute(strings[3737], new named_type(IFC4X3_RC4_IfcTextTransformation_type), true), + new attribute(strings[3738], new named_type(IFC4X3_RC4_IfcSizeSelect_type), true) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTextureCoordinate_type->set_attributes({ + new attribute(strings[3739], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcSurfaceTexture_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcTextureCoordinateGenerator_type->set_attributes({ + new attribute(strings[3679], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[3681], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcReal_type)), true) + },{ + false, false, false + }); + IFC4X3_RC4_IfcTextureMap_type->set_attributes({ + new attribute(strings[3740], new aggregation_type(aggregation_type::list_type, 3, -1, new named_type(IFC4X3_RC4_IfcTextureVertex_type)), false), + new attribute(strings[3219], new named_type(IFC4X3_RC4_IfcFace_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcTextureVertex_type->set_attributes({ + new attribute(strings[3004], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcParameterValue_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcTextureVertexList_type->set_attributes({ + new attribute(strings[3741], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcParameterValue_type))), false) + },{ + false + }); + IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type->set_attributes({ + new attribute(strings[3583], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false), + new attribute(strings[3563], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3564], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3069], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcTimePeriod_type->set_attributes({ + new attribute(strings[3742], new named_type(IFC4X3_RC4_IfcTime_type), false), + new attribute(strings[3743], new named_type(IFC4X3_RC4_IfcTime_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcTimeSeries_type->set_attributes({ + new attribute(strings[2905], new named_type(IFC4X3_RC4_IfcLabel_type), false), + new attribute(strings[2875], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3742], new named_type(IFC4X3_RC4_IfcDateTime_type), false), + new attribute(strings[3743], new named_type(IFC4X3_RC4_IfcDateTime_type), false), + new attribute(strings[3744], new named_type(IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type), false), + new attribute(strings[3561], new named_type(IFC4X3_RC4_IfcDataOriginEnum_type), false), + new attribute(strings[3562], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3097], new named_type(IFC4X3_RC4_IfcUnit_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTimeSeriesValue_type->set_attributes({ + new attribute(strings[3233], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcValue_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcTopologicalRepresentationItem_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcTopologyRepresentation_type->set_attributes({ + },{ + false, false, false, false + }); + IFC4X3_RC4_IfcToroidalSurface_type->set_attributes({ + new attribute(strings[3745], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3746], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false) + },{ + false, false, false + }); + IFC4X3_RC4_IfcTrackElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTrackElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTrackElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTrackElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTransformer_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTransformerTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTransformerType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTransformerTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTransportElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTransportElementTypeSelect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTransportElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTransportElementTypeSelect_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTrapeziumProfileDef_type->set_attributes({ + new attribute(strings[3747], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3748], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2991], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3749], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false) + },{ + false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTriangulatedFaceSet_type->set_attributes({ + new attribute(strings[3750], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcParameterValue_type))), true), + new attribute(strings[3367], new named_type(IFC4X3_RC4_IfcBoolean_type), true), + new attribute(strings[3224], new aggregation_type(aggregation_type::list_type, 1, -1, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_RC4_IfcPositiveInteger_type))), false), + new attribute(strings[3369], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcPositiveInteger_type)), true) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type->set_attributes({ + new attribute(strings[3751], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcInteger_type)), false) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTrimmedCurve_type->set_attributes({ + new attribute(strings[3320], new named_type(IFC4X3_RC4_IfcCurve_type), false), + new attribute(strings[3752], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC4_IfcTrimmingSelect_type)), false), + new attribute(strings[3753], new aggregation_type(aggregation_type::set_type, 1, 2, new named_type(IFC4X3_RC4_IfcTrimmingSelect_type)), false), + new attribute(strings[3754], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3656], new named_type(IFC4X3_RC4_IfcTrimmingPreference_type), false) + },{ + false, false, false, false, false + }); + IFC4X3_RC4_IfcTubeBundle_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTubeBundleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTubeBundleType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcTubeBundleTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTypeObject_type->set_attributes({ + new attribute(strings[3755], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[3756], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPropertySetDefinition_type)), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTypeProcess_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3757], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTypeProduct_type->set_attributes({ + new attribute(strings[3758], new aggregation_type(aggregation_type::list_type, 1, -1, new named_type(IFC4X3_RC4_IfcRepresentationMap_type)), true), + new attribute(strings[3154], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcTypeResource_type->set_attributes({ + new attribute(strings[2925], new named_type(IFC4X3_RC4_IfcIdentifier_type), true), + new attribute(strings[2871], new named_type(IFC4X3_RC4_IfcText_type), true), + new attribute(strings[3759], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcUShapeProfileDef_type->set_attributes({ + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3685], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2936], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3214], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3215], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3235], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3217], new named_type(IFC4X3_RC4_IfcPlaneAngleMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcUnitAssignment_type->set_attributes({ + new attribute(strings[3760], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcUnit_type)), false) + },{ + false + }); + IFC4X3_RC4_IfcUnitaryControlElement_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcUnitaryControlElementType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcUnitaryEquipment_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcUnitaryEquipmentType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcValve_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcValveTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcValveType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcValveTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVector_type->set_attributes({ + new attribute(strings[3176], new named_type(IFC4X3_RC4_IfcDirection_type), false), + new attribute(strings[3761], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), false) + },{ + false, false + }); + IFC4X3_RC4_IfcVertex_type->set_attributes({ + },{ + + }); + IFC4X3_RC4_IfcVertexLoop_type->set_attributes({ + new attribute(strings[3762], new named_type(IFC4X3_RC4_IfcVertex_type), false) + },{ + false + }); + IFC4X3_RC4_IfcVertexPoint_type->set_attributes({ + new attribute(strings[3763], new named_type(IFC4X3_RC4_IfcPoint_type), false) + },{ + false + }); + IFC4X3_RC4_IfcVibrationDamper_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVibrationDamperType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcVibrationDamperTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVibrationIsolator_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVibrationIsolatorType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVirtualElement_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVirtualGridIntersection_type->set_attributes({ + new attribute(strings[3764], new aggregation_type(aggregation_type::list_type, 2, 2, new named_type(IFC4X3_RC4_IfcGridAxis_type)), false), + new attribute(strings[3765], new aggregation_type(aggregation_type::list_type, 2, 3, new named_type(IFC4X3_RC4_IfcLengthMeasure_type)), false) + },{ + false, false + }); + IFC4X3_RC4_IfcVoidStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcVoidingFeature_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWall_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWallTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWallElementedCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWallStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWallType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWallTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWasteTerminal_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWasteTerminalTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWasteTerminalType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWasteTerminalTypeEnum_type), false) + },{ + false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWaterStratum_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWindow_type->set_attributes({ + new attribute(strings[3126], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3127], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWindowTypeEnum_type), true), + new attribute(strings[3766], new named_type(IFC4X3_RC4_IfcWindowTypePartitioningEnum_type), true), + new attribute(strings[3767], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWindowLiningProperties_type->set_attributes({ + new attribute(strings[3130], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3131], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3134], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3768], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3769], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3770], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3771], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3772], new named_type(IFC4X3_RC4_IfcNormalisedRatioMeasure_type), true), + new attribute(strings[3140], new named_type(IFC4X3_RC4_IfcShapeAspect_type), true), + new attribute(strings[3136], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3141], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true), + new attribute(strings[3142], new named_type(IFC4X3_RC4_IfcLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWindowPanelProperties_type->set_attributes({ + new attribute(strings[3128], new named_type(IFC4X3_RC4_IfcWindowPanelOperationEnum_type), false), + new attribute(strings[3146], new named_type(IFC4X3_RC4_IfcWindowPanelPositionEnum_type), false), + new attribute(strings[3341], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3342], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), true), + new attribute(strings[3140], new named_type(IFC4X3_RC4_IfcShapeAspect_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWindowStandardCase_type->set_attributes({ + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWindowStyle_type->set_attributes({ + new attribute(strings[3147], new named_type(IFC4X3_RC4_IfcWindowStyleConstructionEnum_type), false), + new attribute(strings[3128], new named_type(IFC4X3_RC4_IfcWindowStyleOperationEnum_type), false), + new attribute(strings[3148], new named_type(IFC4X3_RC4_IfcBoolean_type), false), + new attribute(strings[3149], new named_type(IFC4X3_RC4_IfcBoolean_type), false) + },{ + false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWindowType_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWindowTypeEnum_type), false), + new attribute(strings[3766], new named_type(IFC4X3_RC4_IfcWindowTypePartitioningEnum_type), false), + new attribute(strings[3148], new named_type(IFC4X3_RC4_IfcBoolean_type), true), + new attribute(strings[3767], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWorkCalendar_type->set_attributes({ + new attribute(strings[3773], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcWorkTime_type)), true), + new attribute(strings[3774], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcWorkTime_type)), true), + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWorkCalendarTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWorkControl_type->set_attributes({ + new attribute(strings[3338], new named_type(IFC4X3_RC4_IfcDateTime_type), false), + new attribute(strings[3775], new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X3_RC4_IfcPerson_type)), true), + new attribute(strings[2876], new named_type(IFC4X3_RC4_IfcLabel_type), true), + new attribute(strings[3776], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3701], new named_type(IFC4X3_RC4_IfcDuration_type), true), + new attribute(strings[3742], new named_type(IFC4X3_RC4_IfcDateTime_type), false), + new attribute(strings[3777], new named_type(IFC4X3_RC4_IfcDateTime_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWorkPlan_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWorkPlanTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWorkSchedule_type->set_attributes({ + new attribute(strings[2869], new named_type(IFC4X3_RC4_IfcWorkScheduleTypeEnum_type), true) + },{ + false, false, false, false, false, false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcWorkTime_type->set_attributes({ + new attribute(strings[3778], new named_type(IFC4X3_RC4_IfcRecurrencePattern_type), true), + new attribute(strings[3779], new named_type(IFC4X3_RC4_IfcDate_type), true), + new attribute(strings[3780], new named_type(IFC4X3_RC4_IfcDate_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcZShapeProfileDef_type->set_attributes({ + new attribute(strings[2999], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3685], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[2936], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3214], new named_type(IFC4X3_RC4_IfcPositiveLengthMeasure_type), false), + new attribute(strings[3215], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true), + new attribute(strings[3235], new named_type(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type), true) + },{ + false, false, false, false, false, false, false, false, false + }); + IFC4X3_RC4_IfcZone_type->set_attributes({ + new attribute(strings[2998], new named_type(IFC4X3_RC4_IfcLabel_type), true) + },{ + false, false, false, false, false, false + }); + IFC4X3_RC4_IfcActor_type->set_inverse_attributes({ + new inverse_attribute(strings[3781], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToActor_type, IFC4X3_RC4_IfcRelAssignsToActor_type->attributes()[0]) + }); + IFC4X3_RC4_IfcActorRole_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcAddress_type->set_inverse_attributes({ + new inverse_attribute(strings[3783], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPerson_type, IFC4X3_RC4_IfcPerson_type->attributes()[7]), + new inverse_attribute(strings[3784], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcOrganization_type, IFC4X3_RC4_IfcOrganization_type->attributes()[4]) + }); + IFC4X3_RC4_IfcAnnotation_type->set_inverse_attributes({ + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC4_IfcAppliedValue_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcApproval_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3787], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesApproval_type, IFC4X3_RC4_IfcRelAssociatesApproval_type->attributes()[0]), + new inverse_attribute(strings[3788], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceApprovalRelationship_type, IFC4X3_RC4_IfcResourceApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3789], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcApprovalRelationship_type, IFC4X3_RC4_IfcApprovalRelationship_type->attributes()[1]), + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcApprovalRelationship_type, IFC4X3_RC4_IfcApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC4_IfcClassification_type->set_inverse_attributes({ + new inverse_attribute(strings[3791], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesClassification_type, IFC4X3_RC4_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3792], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcClassificationReference_type, IFC4X3_RC4_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC4_IfcClassificationReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3793], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesClassification_type, IFC4X3_RC4_IfcRelAssociatesClassification_type->attributes()[0]), + new inverse_attribute(strings[3792], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcClassificationReference_type, IFC4X3_RC4_IfcClassificationReference_type->attributes()[0]) + }); + IFC4X3_RC4_IfcConstraint_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3794], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceConstraintRelationship_type, IFC4X3_RC4_IfcResourceConstraintRelationship_type->attributes()[0]) + }); + IFC4X3_RC4_IfcContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3795], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByProperties_type, IFC4X3_RC4_IfcRelDefinesByProperties_type->attributes()[0]), + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDeclares_type, IFC4X3_RC4_IfcRelDeclares_type->attributes()[0]) + }); + IFC4X3_RC4_IfcContextDependentUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcControl_type->set_inverse_attributes({ + new inverse_attribute(strings[3797], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToControl_type, IFC4X3_RC4_IfcRelAssignsToControl_type->attributes()[0]) + }); + IFC4X3_RC4_IfcConversionBasedUnit_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcCoordinateReferenceSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcCoordinateOperation_type, IFC4X3_RC4_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC4_IfcCovering_type->set_inverse_attributes({ + new inverse_attribute(strings[3799], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelCoversSpaces_type, IFC4X3_RC4_IfcRelCoversSpaces_type->attributes()[1]), + new inverse_attribute(strings[3800], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelCoversBldgElements_type, IFC4X3_RC4_IfcRelCoversBldgElements_type->attributes()[1]) + }); + IFC4X3_RC4_IfcDistributionControlElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3801], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelFlowControlElements_type, IFC4X3_RC4_IfcRelFlowControlElements_type->attributes()[0]) + }); + IFC4X3_RC4_IfcDistributionElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3802], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsPortToElement_type, IFC4X3_RC4_IfcRelConnectsPortToElement_type->attributes()[1]) + }); + IFC4X3_RC4_IfcDistributionFlowElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3803], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelFlowControlElements_type, IFC4X3_RC4_IfcRelFlowControlElements_type->attributes()[1]) + }); + IFC4X3_RC4_IfcDocumentInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3804], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesDocument_type, IFC4X3_RC4_IfcRelAssociatesDocument_type->attributes()[0]), + new inverse_attribute(strings[3805], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcDocumentReference_type, IFC4X3_RC4_IfcDocumentReference_type->attributes()[1]), + new inverse_attribute(strings[3806], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcDocumentInformationRelationship_type, IFC4X3_RC4_IfcDocumentInformationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3807], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcDocumentInformationRelationship_type, IFC4X3_RC4_IfcDocumentInformationRelationship_type->attributes()[0]) + }); + IFC4X3_RC4_IfcDocumentReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3808], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesDocument_type, IFC4X3_RC4_IfcRelAssociatesDocument_type->attributes()[0]) + }); + IFC4X3_RC4_IfcElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3809], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelFillsElement_type, IFC4X3_RC4_IfcRelFillsElement_type->attributes()[1]), + new inverse_attribute(strings[3810], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsElements_type, IFC4X3_RC4_IfcRelConnectsElements_type->attributes()[1]), + new inverse_attribute(strings[3811], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelInterferesElements_type, IFC4X3_RC4_IfcRelInterferesElements_type->attributes()[1]), + new inverse_attribute(strings[3812], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelInterferesElements_type, IFC4X3_RC4_IfcRelInterferesElements_type->attributes()[0]), + new inverse_attribute(strings[3813], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelProjectsElement_type, IFC4X3_RC4_IfcRelProjectsElement_type->attributes()[0]), + new inverse_attribute(strings[3814], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelVoidsElement_type, IFC4X3_RC4_IfcRelVoidsElement_type->attributes()[0]), + new inverse_attribute(strings[3815], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type, IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type->attributes()[0]), + new inverse_attribute(strings[3816], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary_type, IFC4X3_RC4_IfcRelSpaceBoundary_type->attributes()[1]), + new inverse_attribute(strings[3817], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsElements_type, IFC4X3_RC4_IfcRelConnectsElements_type->attributes()[2]), + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3818], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelCoversBldgElements_type, IFC4X3_RC4_IfcRelCoversBldgElements_type->attributes()[0]), + new inverse_attribute(strings[3819], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAdheresToElement_type, IFC4X3_RC4_IfcRelAdheresToElement_type->attributes()[0]) + }); + IFC4X3_RC4_IfcExternalReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3820], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[0]) + }); + IFC4X3_RC4_IfcExternalSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary_type, IFC4X3_RC4_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC4_IfcFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3822], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcTextureMap_type, IFC4X3_RC4_IfcTextureMap_type->attributes()[1]) + }); + IFC4X3_RC4_IfcFeatureElementAddition_type->set_inverse_attributes({ + new inverse_attribute(strings[3823], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcRelProjectsElement_type, IFC4X3_RC4_IfcRelProjectsElement_type->attributes()[1]) + }); + IFC4X3_RC4_IfcFeatureElementSubtraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3824], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcRelVoidsElement_type, IFC4X3_RC4_IfcRelVoidsElement_type->attributes()[1]) + }); + IFC4X3_RC4_IfcGeometricRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3825], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcGeometricRepresentationSubContext_type, IFC4X3_RC4_IfcGeometricRepresentationSubContext_type->attributes()[0]), + new inverse_attribute(strings[3798], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcCoordinateOperation_type, IFC4X3_RC4_IfcCoordinateOperation_type->attributes()[0]) + }); + IFC4X3_RC4_IfcGridAxis_type->set_inverse_attributes({ + new inverse_attribute(strings[3826], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcGrid_type, IFC4X3_RC4_IfcGrid_type->attributes()[2]), + new inverse_attribute(strings[3827], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcGrid_type, IFC4X3_RC4_IfcGrid_type->attributes()[1]), + new inverse_attribute(strings[3828], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcGrid_type, IFC4X3_RC4_IfcGrid_type->attributes()[0]), + new inverse_attribute(strings[3829], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcVirtualGridIntersection_type, IFC4X3_RC4_IfcVirtualGridIntersection_type->attributes()[0]) + }); + IFC4X3_RC4_IfcGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3830], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToGroup_type, IFC4X3_RC4_IfcRelAssignsToGroup_type->attributes()[0]) + }); + IFC4X3_RC4_IfcIndexedPolygonalFace_type->set_inverse_attributes({ + new inverse_attribute(strings[3831], inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcPolygonalFaceSet_type, IFC4X3_RC4_IfcPolygonalFaceSet_type->attributes()[1]) + }); + IFC4X3_RC4_IfcLibraryInformation_type->set_inverse_attributes({ + new inverse_attribute(strings[3832], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesLibrary_type, IFC4X3_RC4_IfcRelAssociatesLibrary_type->attributes()[0]), + new inverse_attribute(strings[3833], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcLibraryReference_type, IFC4X3_RC4_IfcLibraryReference_type->attributes()[2]) + }); + IFC4X3_RC4_IfcLibraryReference_type->set_inverse_attributes({ + new inverse_attribute(strings[3834], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesLibrary_type, IFC4X3_RC4_IfcRelAssociatesLibrary_type->attributes()[0]) + }); + IFC4X3_RC4_IfcMaterial_type->set_inverse_attributes({ + new inverse_attribute(strings[3835], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type, IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type->attributes()[0]), + new inverse_attribute(strings[3789], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcMaterialRelationship_type, IFC4X3_RC4_IfcMaterialRelationship_type->attributes()[1]), + new inverse_attribute(strings[3836], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcMaterialRelationship_type, IFC4X3_RC4_IfcMaterialRelationship_type->attributes()[0]) + }); + IFC4X3_RC4_IfcMaterialConstituent_type->set_inverse_attributes({ + new inverse_attribute(strings[3837], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcMaterialConstituentSet_type, IFC4X3_RC4_IfcMaterialConstituentSet_type->attributes()[2]) + }); + IFC4X3_RC4_IfcMaterialDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3838], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociatesMaterial_type, IFC4X3_RC4_IfcRelAssociatesMaterial_type->attributes()[0]), + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3029], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcMaterialProperties_type, IFC4X3_RC4_IfcMaterialProperties_type->attributes()[0]) + }); + IFC4X3_RC4_IfcMaterialLayer_type->set_inverse_attributes({ + new inverse_attribute(strings[3839], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcMaterialLayerSet_type, IFC4X3_RC4_IfcMaterialLayerSet_type->attributes()[0]) + }); + IFC4X3_RC4_IfcMaterialProfile_type->set_inverse_attributes({ + new inverse_attribute(strings[3840], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcMaterialProfileSet_type, IFC4X3_RC4_IfcMaterialProfileSet_type->attributes()[2]) + }); + IFC4X3_RC4_IfcMaterialUsageDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3838], inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcRelAssociatesMaterial_type, IFC4X3_RC4_IfcRelAssociatesMaterial_type->attributes()[0]) + }); + IFC4X3_RC4_IfcObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3841], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDefinesByObject_type, IFC4X3_RC4_IfcRelDefinesByObject_type->attributes()[0]), + new inverse_attribute(strings[3796], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByObject_type, IFC4X3_RC4_IfcRelDefinesByObject_type->attributes()[1]), + new inverse_attribute(strings[3842], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDefinesByType_type, IFC4X3_RC4_IfcRelDefinesByType_type->attributes()[0]), + new inverse_attribute(strings[3795], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByProperties_type, IFC4X3_RC4_IfcRelDefinesByProperties_type->attributes()[0]) + }); + IFC4X3_RC4_IfcObjectDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3843], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssigns_type, IFC4X3_RC4_IfcRelAssigns_type->attributes()[0]), + new inverse_attribute(strings[3844], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelNests_type, IFC4X3_RC4_IfcRelNests_type->attributes()[1]), + new inverse_attribute(strings[3845], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelNests_type, IFC4X3_RC4_IfcRelNests_type->attributes()[0]), + new inverse_attribute(strings[3846], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDeclares_type, IFC4X3_RC4_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3847], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAggregates_type, IFC4X3_RC4_IfcRelAggregates_type->attributes()[0]), + new inverse_attribute(strings[3848], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelAggregates_type, IFC4X3_RC4_IfcRelAggregates_type->attributes()[1]), + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociates_type, IFC4X3_RC4_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC4_IfcObjectPlacement_type->set_inverse_attributes({ + new inverse_attribute(strings[3850], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcProduct_type, IFC4X3_RC4_IfcProduct_type->attributes()[0]) + }); + IFC4X3_RC4_IfcOpeningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3851], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelFillsElement_type, IFC4X3_RC4_IfcRelFillsElement_type->attributes()[0]) + }); + IFC4X3_RC4_IfcOrganization_type->set_inverse_attributes({ + new inverse_attribute(strings[3852], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcOrganizationRelationship_type, IFC4X3_RC4_IfcOrganizationRelationship_type->attributes()[1]), + new inverse_attribute(strings[3790], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcOrganizationRelationship_type, IFC4X3_RC4_IfcOrganizationRelationship_type->attributes()[0]), + new inverse_attribute(strings[3853], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPersonAndOrganization_type, IFC4X3_RC4_IfcPersonAndOrganization_type->attributes()[1]) + }); + IFC4X3_RC4_IfcPerson_type->set_inverse_attributes({ + new inverse_attribute(strings[3854], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPersonAndOrganization_type, IFC4X3_RC4_IfcPersonAndOrganization_type->attributes()[0]) + }); + IFC4X3_RC4_IfcPhysicalQuantity_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3855], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcPhysicalComplexQuantity_type, IFC4X3_RC4_IfcPhysicalComplexQuantity_type->attributes()[0]) + }); + IFC4X3_RC4_IfcPort_type->set_inverse_attributes({ + new inverse_attribute(strings[3856], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsPortToElement_type, IFC4X3_RC4_IfcRelConnectsPortToElement_type->attributes()[0]), + new inverse_attribute(strings[3817], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsPorts_type, IFC4X3_RC4_IfcRelConnectsPorts_type->attributes()[1]), + new inverse_attribute(strings[3810], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsPorts_type, IFC4X3_RC4_IfcRelConnectsPorts_type->attributes()[0]) + }); + IFC4X3_RC4_IfcPositioningElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3785], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[0]), + new inverse_attribute(strings[3857], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelPositions_type, IFC4X3_RC4_IfcRelPositions_type->attributes()[0]) + }); + IFC4X3_RC4_IfcProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3858], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSequence_type, IFC4X3_RC4_IfcRelSequence_type->attributes()[0]), + new inverse_attribute(strings[3859], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSequence_type, IFC4X3_RC4_IfcRelSequence_type->attributes()[1]), + new inverse_attribute(strings[3860], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProcess_type, IFC4X3_RC4_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC4_IfcProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3861], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProduct_type, IFC4X3_RC4_IfcRelAssignsToProduct_type->attributes()[0]), + new inverse_attribute(strings[3862], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelPositions_type, IFC4X3_RC4_IfcRelPositions_type->attributes()[1]), + new inverse_attribute(strings[3863], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC4_IfcProductDefinitionShape_type->set_inverse_attributes({ + new inverse_attribute(strings[3864], inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcProduct_type, IFC4X3_RC4_IfcProduct_type->attributes()[1]), + new inverse_attribute(strings[3865], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcShapeAspect_type, IFC4X3_RC4_IfcShapeAspect_type->attributes()[4]) + }); + IFC4X3_RC4_IfcProfileDef_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]), + new inverse_attribute(strings[3029], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcProfileProperties_type, IFC4X3_RC4_IfcProfileProperties_type->attributes()[0]) + }); + IFC4X3_RC4_IfcProperty_type->set_inverse_attributes({ + new inverse_attribute(strings[3866], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertySet_type, IFC4X3_RC4_IfcPropertySet_type->attributes()[0]), + new inverse_attribute(strings[3867], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertyDependencyRelationship_type, IFC4X3_RC4_IfcPropertyDependencyRelationship_type->attributes()[0]), + new inverse_attribute(strings[3868], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertyDependencyRelationship_type, IFC4X3_RC4_IfcPropertyDependencyRelationship_type->attributes()[1]), + new inverse_attribute(strings[3855], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcComplexProperty_type, IFC4X3_RC4_IfcComplexProperty_type->attributes()[1]), + new inverse_attribute(strings[3869], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceConstraintRelationship_type, IFC4X3_RC4_IfcResourceConstraintRelationship_type->attributes()[1]), + new inverse_attribute(strings[3870], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcResourceApprovalRelationship_type, IFC4X3_RC4_IfcResourceApprovalRelationship_type->attributes()[0]) + }); + IFC4X3_RC4_IfcPropertyAbstraction_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcPropertyDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3846], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDeclares_type, IFC4X3_RC4_IfcRelDeclares_type->attributes()[1]), + new inverse_attribute(strings[3849], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssociates_type, IFC4X3_RC4_IfcRelAssociates_type->attributes()[0]) + }); + IFC4X3_RC4_IfcPropertySetDefinition_type->set_inverse_attributes({ + new inverse_attribute(strings[3871], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcTypeObject_type, IFC4X3_RC4_IfcTypeObject_type->attributes()[1]), + new inverse_attribute(strings[3795], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByTemplate_type, IFC4X3_RC4_IfcRelDefinesByTemplate_type->attributes()[0]), + new inverse_attribute(strings[3872], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByProperties_type, IFC4X3_RC4_IfcRelDefinesByProperties_type->attributes()[1]) + }); + IFC4X3_RC4_IfcPropertySetTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3873], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelDefinesByTemplate_type, IFC4X3_RC4_IfcRelDefinesByTemplate_type->attributes()[1]) + }); + IFC4X3_RC4_IfcPropertyTemplate_type->set_inverse_attributes({ + new inverse_attribute(strings[3874], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcComplexPropertyTemplate_type, IFC4X3_RC4_IfcComplexPropertyTemplate_type->attributes()[2]), + new inverse_attribute(strings[3875], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPropertySetTemplate_type, IFC4X3_RC4_IfcPropertySetTemplate_type->attributes()[2]) + }); + IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[2900], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type, IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->attributes()[0]) + }); + IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type->set_inverse_attributes({ + new inverse_attribute(strings[3876], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type, IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type->attributes()[0]) + }); + IFC4X3_RC4_IfcRepresentation_type->set_inverse_attributes({ + new inverse_attribute(strings[3877], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRepresentationMap_type, IFC4X3_RC4_IfcRepresentationMap_type->attributes()[1]), + new inverse_attribute(strings[3878], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcPresentationLayerAssignment_type, IFC4X3_RC4_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3879], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcProductRepresentation_type, IFC4X3_RC4_IfcProductRepresentation_type->attributes()[2]) + }); + IFC4X3_RC4_IfcRepresentationContext_type->set_inverse_attributes({ + new inverse_attribute(strings[3880], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRepresentation_type, IFC4X3_RC4_IfcRepresentation_type->attributes()[0]) + }); + IFC4X3_RC4_IfcRepresentationItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3881], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcPresentationLayerAssignment_type, IFC4X3_RC4_IfcPresentationLayerAssignment_type->attributes()[2]), + new inverse_attribute(strings[3882], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcStyledItem_type, IFC4X3_RC4_IfcStyledItem_type->attributes()[0]) + }); + IFC4X3_RC4_IfcRepresentationMap_type->set_inverse_attributes({ + new inverse_attribute(strings[3865], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcShapeAspect_type, IFC4X3_RC4_IfcShapeAspect_type->attributes()[4]), + new inverse_attribute(strings[3883], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcMappedItem_type, IFC4X3_RC4_IfcMappedItem_type->attributes()[0]) + }); + IFC4X3_RC4_IfcResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3884], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToResource_type, IFC4X3_RC4_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC4_IfcSegment_type->set_inverse_attributes({ + new inverse_attribute(strings[3885], inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcCompositeCurve_type, IFC4X3_RC4_IfcCompositeCurve_type->attributes()[0]) + }); + IFC4X3_RC4_IfcShapeAspect_type->set_inverse_attributes({ + new inverse_attribute(strings[3786], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcShapeModel_type->set_inverse_attributes({ + new inverse_attribute(strings[3886], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcShapeAspect_type, IFC4X3_RC4_IfcShapeAspect_type->attributes()[0]) + }); + IFC4X3_RC4_IfcSpace_type->set_inverse_attributes({ + new inverse_attribute(strings[3818], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelCoversSpaces_type, IFC4X3_RC4_IfcRelCoversSpaces_type->attributes()[0]), + new inverse_attribute(strings[3821], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelSpaceBoundary_type, IFC4X3_RC4_IfcRelSpaceBoundary_type->attributes()[0]) + }); + IFC4X3_RC4_IfcSpatialElement_type->set_inverse_attributes({ + new inverse_attribute(strings[3887], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, IFC4X3_RC4_IfcRelContainedInSpatialStructure_type->attributes()[1]), + new inverse_attribute(strings[3888], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelServicesBuildings_type, IFC4X3_RC4_IfcRelServicesBuildings_type->attributes()[1]), + new inverse_attribute(strings[3889], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->attributes()[1]) + }); + IFC4X3_RC4_IfcStructuralActivity_type->set_inverse_attributes({ + new inverse_attribute(strings[3890], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type->attributes()[1]) + }); + IFC4X3_RC4_IfcStructuralConnection_type->set_inverse_attributes({ + new inverse_attribute(strings[3891], inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcRelConnectsStructuralMember_type, IFC4X3_RC4_IfcRelConnectsStructuralMember_type->attributes()[1]) + }); + IFC4X3_RC4_IfcStructuralItem_type->set_inverse_attributes({ + new inverse_attribute(strings[3892], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type, IFC4X3_RC4_IfcRelConnectsStructuralActivity_type->attributes()[0]) + }); + IFC4X3_RC4_IfcStructuralLoadGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3893], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcStructuralResultGroup_type, IFC4X3_RC4_IfcStructuralResultGroup_type->attributes()[1]), + new inverse_attribute(strings[3894], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcStructuralAnalysisModel_type, IFC4X3_RC4_IfcStructuralAnalysisModel_type->attributes()[2]) + }); + IFC4X3_RC4_IfcStructuralMember_type->set_inverse_attributes({ + new inverse_attribute(strings[3895], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelConnectsStructuralMember_type, IFC4X3_RC4_IfcRelConnectsStructuralMember_type->attributes()[0]) + }); + IFC4X3_RC4_IfcStructuralResultGroup_type->set_inverse_attributes({ + new inverse_attribute(strings[3896], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcStructuralAnalysisModel_type, IFC4X3_RC4_IfcStructuralAnalysisModel_type->attributes()[3]) + }); + IFC4X3_RC4_IfcSurfaceFeature_type->set_inverse_attributes({ + new inverse_attribute(strings[3897], inverse_attribute::unspecified_type, -1, -1, IFC4X3_RC4_IfcRelAdheresToElement_type, IFC4X3_RC4_IfcRelAdheresToElement_type->attributes()[1]) + }); + IFC4X3_RC4_IfcSurfaceTexture_type->set_inverse_attributes({ + new inverse_attribute(strings[3898], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcTextureCoordinate_type, IFC4X3_RC4_IfcTextureCoordinate_type->attributes()[0]), + new inverse_attribute(strings[3899], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcSurfaceStyleWithTextures_type, IFC4X3_RC4_IfcSurfaceStyleWithTextures_type->attributes()[0]) + }); + IFC4X3_RC4_IfcSystem_type->set_inverse_attributes({ + new inverse_attribute(strings[3900], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelServicesBuildings_type, IFC4X3_RC4_IfcRelServicesBuildings_type->attributes()[0]), + new inverse_attribute(strings[3901], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type->attributes()[0]) + }); + IFC4X3_RC4_IfcTessellatedFaceSet_type->set_inverse_attributes({ + new inverse_attribute(strings[3902], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcIndexedColourMap_type, IFC4X3_RC4_IfcIndexedColourMap_type->attributes()[0]), + new inverse_attribute(strings[3903], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcIndexedTextureMap_type, IFC4X3_RC4_IfcIndexedTextureMap_type->attributes()[0]) + }); + IFC4X3_RC4_IfcTimeSeries_type->set_inverse_attributes({ + new inverse_attribute(strings[3782], inverse_attribute::set_type, 1, -1, IFC4X3_RC4_IfcExternalReferenceRelationship_type, IFC4X3_RC4_IfcExternalReferenceRelationship_type->attributes()[1]) + }); + IFC4X3_RC4_IfcTypeObject_type->set_inverse_attributes({ + new inverse_attribute(strings[3904], inverse_attribute::set_type, 0, 1, IFC4X3_RC4_IfcRelDefinesByType_type, IFC4X3_RC4_IfcRelDefinesByType_type->attributes()[1]) + }); + IFC4X3_RC4_IfcTypeProcess_type->set_inverse_attributes({ + new inverse_attribute(strings[3860], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProcess_type, IFC4X3_RC4_IfcRelAssignsToProcess_type->attributes()[0]) + }); + IFC4X3_RC4_IfcTypeProduct_type->set_inverse_attributes({ + new inverse_attribute(strings[3861], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToProduct_type, IFC4X3_RC4_IfcRelAssignsToProduct_type->attributes()[0]) + }); + IFC4X3_RC4_IfcTypeResource_type->set_inverse_attributes({ + new inverse_attribute(strings[3884], inverse_attribute::set_type, 0, -1, IFC4X3_RC4_IfcRelAssignsToResource_type, IFC4X3_RC4_IfcRelAssignsToResource_type->attributes()[0]) + }); + IFC4X3_RC4_IfcControl_type->set_subtypes({ + IFC4X3_RC4_IfcActionRequest_type,IFC4X3_RC4_IfcCostItem_type,IFC4X3_RC4_IfcCostSchedule_type,IFC4X3_RC4_IfcPerformanceHistory_type,IFC4X3_RC4_IfcPermit_type,IFC4X3_RC4_IfcProjectOrder_type,IFC4X3_RC4_IfcWorkCalendar_type,IFC4X3_RC4_IfcWorkControl_type + }); + IFC4X3_RC4_IfcObject_type->set_subtypes({ + IFC4X3_RC4_IfcActor_type,IFC4X3_RC4_IfcControl_type,IFC4X3_RC4_IfcGroup_type,IFC4X3_RC4_IfcProcess_type,IFC4X3_RC4_IfcProduct_type,IFC4X3_RC4_IfcResource_type + }); + IFC4X3_RC4_IfcDistributionControlElement_type->set_subtypes({ + IFC4X3_RC4_IfcActuator_type,IFC4X3_RC4_IfcAlarm_type,IFC4X3_RC4_IfcController_type,IFC4X3_RC4_IfcFlowInstrument_type,IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type,IFC4X3_RC4_IfcSensor_type,IFC4X3_RC4_IfcUnitaryControlElement_type + }); + IFC4X3_RC4_IfcDistributionControlElementType_type->set_subtypes({ + IFC4X3_RC4_IfcActuatorType_type,IFC4X3_RC4_IfcAlarmType_type,IFC4X3_RC4_IfcControllerType_type,IFC4X3_RC4_IfcFlowInstrumentType_type,IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type,IFC4X3_RC4_IfcSensorType_type,IFC4X3_RC4_IfcUnitaryControlElementType_type + }); + IFC4X3_RC4_IfcManifoldSolidBrep_type->set_subtypes({ + IFC4X3_RC4_IfcAdvancedBrep_type,IFC4X3_RC4_IfcFacetedBrep_type + }); + IFC4X3_RC4_IfcAdvancedBrep_type->set_subtypes({ + IFC4X3_RC4_IfcAdvancedBrepWithVoids_type + }); + IFC4X3_RC4_IfcFaceSurface_type->set_subtypes({ + IFC4X3_RC4_IfcAdvancedFace_type + }); + IFC4X3_RC4_IfcFlowTerminal_type->set_subtypes({ + IFC4X3_RC4_IfcAirTerminal_type,IFC4X3_RC4_IfcAudioVisualAppliance_type,IFC4X3_RC4_IfcCommunicationsAppliance_type,IFC4X3_RC4_IfcElectricAppliance_type,IFC4X3_RC4_IfcFireSuppressionTerminal_type,IFC4X3_RC4_IfcLamp_type,IFC4X3_RC4_IfcLightFixture_type,IFC4X3_RC4_IfcLiquidTerminal_type,IFC4X3_RC4_IfcMedicalDevice_type,IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type,IFC4X3_RC4_IfcOutlet_type,IFC4X3_RC4_IfcSanitaryTerminal_type,IFC4X3_RC4_IfcSignal_type,IFC4X3_RC4_IfcSpaceHeater_type,IFC4X3_RC4_IfcStackTerminal_type,IFC4X3_RC4_IfcWasteTerminal_type + }); + IFC4X3_RC4_IfcFlowController_type->set_subtypes({ + IFC4X3_RC4_IfcAirTerminalBox_type,IFC4X3_RC4_IfcDamper_type,IFC4X3_RC4_IfcDistributionBoard_type,IFC4X3_RC4_IfcElectricDistributionBoard_type,IFC4X3_RC4_IfcElectricTimeControl_type,IFC4X3_RC4_IfcFlowMeter_type,IFC4X3_RC4_IfcProtectiveDevice_type,IFC4X3_RC4_IfcSwitchingDevice_type,IFC4X3_RC4_IfcValve_type + }); + IFC4X3_RC4_IfcFlowControllerType_type->set_subtypes({ + IFC4X3_RC4_IfcAirTerminalBoxType_type,IFC4X3_RC4_IfcDamperType_type,IFC4X3_RC4_IfcDistributionBoardType_type,IFC4X3_RC4_IfcElectricDistributionBoardType_type,IFC4X3_RC4_IfcElectricTimeControlType_type,IFC4X3_RC4_IfcFlowMeterType_type,IFC4X3_RC4_IfcProtectiveDeviceType_type,IFC4X3_RC4_IfcSwitchingDeviceType_type,IFC4X3_RC4_IfcValveType_type + }); + IFC4X3_RC4_IfcFlowTerminalType_type->set_subtypes({ + IFC4X3_RC4_IfcAirTerminalType_type,IFC4X3_RC4_IfcAudioVisualApplianceType_type,IFC4X3_RC4_IfcCommunicationsApplianceType_type,IFC4X3_RC4_IfcElectricApplianceType_type,IFC4X3_RC4_IfcFireSuppressionTerminalType_type,IFC4X3_RC4_IfcLampType_type,IFC4X3_RC4_IfcLightFixtureType_type,IFC4X3_RC4_IfcLiquidTerminalType_type,IFC4X3_RC4_IfcMedicalDeviceType_type,IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type,IFC4X3_RC4_IfcOutletType_type,IFC4X3_RC4_IfcSanitaryTerminalType_type,IFC4X3_RC4_IfcSignalType_type,IFC4X3_RC4_IfcSpaceHeaterType_type,IFC4X3_RC4_IfcStackTerminalType_type,IFC4X3_RC4_IfcWasteTerminalType_type + }); + IFC4X3_RC4_IfcEnergyConversionDevice_type->set_subtypes({ + IFC4X3_RC4_IfcAirToAirHeatRecovery_type,IFC4X3_RC4_IfcBoiler_type,IFC4X3_RC4_IfcBurner_type,IFC4X3_RC4_IfcChiller_type,IFC4X3_RC4_IfcCoil_type,IFC4X3_RC4_IfcCondenser_type,IFC4X3_RC4_IfcCooledBeam_type,IFC4X3_RC4_IfcCoolingTower_type,IFC4X3_RC4_IfcElectricGenerator_type,IFC4X3_RC4_IfcElectricMotor_type,IFC4X3_RC4_IfcEngine_type,IFC4X3_RC4_IfcEvaporativeCooler_type,IFC4X3_RC4_IfcEvaporator_type,IFC4X3_RC4_IfcHeatExchanger_type,IFC4X3_RC4_IfcHumidifier_type,IFC4X3_RC4_IfcMotorConnection_type,IFC4X3_RC4_IfcSolarDevice_type,IFC4X3_RC4_IfcTransformer_type,IFC4X3_RC4_IfcTubeBundle_type,IFC4X3_RC4_IfcUnitaryEquipment_type + }); + IFC4X3_RC4_IfcEnergyConversionDeviceType_type->set_subtypes({ + IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type,IFC4X3_RC4_IfcBoilerType_type,IFC4X3_RC4_IfcBurnerType_type,IFC4X3_RC4_IfcChillerType_type,IFC4X3_RC4_IfcCoilType_type,IFC4X3_RC4_IfcCondenserType_type,IFC4X3_RC4_IfcCooledBeamType_type,IFC4X3_RC4_IfcCoolingTowerType_type,IFC4X3_RC4_IfcElectricGeneratorType_type,IFC4X3_RC4_IfcElectricMotorType_type,IFC4X3_RC4_IfcEngineType_type,IFC4X3_RC4_IfcEvaporativeCoolerType_type,IFC4X3_RC4_IfcEvaporatorType_type,IFC4X3_RC4_IfcHeatExchangerType_type,IFC4X3_RC4_IfcHumidifierType_type,IFC4X3_RC4_IfcMotorConnectionType_type,IFC4X3_RC4_IfcSolarDeviceType_type,IFC4X3_RC4_IfcTransformerType_type,IFC4X3_RC4_IfcTubeBundleType_type,IFC4X3_RC4_IfcUnitaryEquipmentType_type + }); + IFC4X3_RC4_IfcLinearPositioningElement_type->set_subtypes({ + IFC4X3_RC4_IfcAlignment_type + }); + IFC4X3_RC4_IfcLinearElement_type->set_subtypes({ + IFC4X3_RC4_IfcAlignmentCant_type,IFC4X3_RC4_IfcAlignmentHorizontal_type,IFC4X3_RC4_IfcAlignmentSegment_type,IFC4X3_RC4_IfcAlignmentVertical_type + }); + IFC4X3_RC4_IfcAlignmentParameterSegment_type->set_subtypes({ + IFC4X3_RC4_IfcAlignmentCantSegment_type,IFC4X3_RC4_IfcAlignmentHorizontalSegment_type,IFC4X3_RC4_IfcAlignmentVerticalSegment_type + }); + IFC4X3_RC4_IfcProduct_type->set_subtypes({ + IFC4X3_RC4_IfcAnnotation_type,IFC4X3_RC4_IfcElement_type,IFC4X3_RC4_IfcLinearElement_type,IFC4X3_RC4_IfcPort_type,IFC4X3_RC4_IfcPositioningElement_type,IFC4X3_RC4_IfcProxy_type,IFC4X3_RC4_IfcSpatialElement_type,IFC4X3_RC4_IfcStructuralActivity_type,IFC4X3_RC4_IfcStructuralItem_type + }); + IFC4X3_RC4_IfcGeometricRepresentationItem_type->set_subtypes({ + IFC4X3_RC4_IfcAnnotationFillArea_type,IFC4X3_RC4_IfcBooleanResult_type,IFC4X3_RC4_IfcBoundingBox_type,IFC4X3_RC4_IfcCartesianPointList_type,IFC4X3_RC4_IfcCartesianTransformationOperator_type,IFC4X3_RC4_IfcCsgPrimitive3D_type,IFC4X3_RC4_IfcCurve_type,IFC4X3_RC4_IfcDirection_type,IFC4X3_RC4_IfcFaceBasedSurfaceModel_type,IFC4X3_RC4_IfcFillAreaStyleHatching_type,IFC4X3_RC4_IfcFillAreaStyleTiles_type,IFC4X3_RC4_IfcGeometricSet_type,IFC4X3_RC4_IfcHalfSpaceSolid_type,IFC4X3_RC4_IfcLightSource_type,IFC4X3_RC4_IfcPlacement_type,IFC4X3_RC4_IfcPlanarExtent_type,IFC4X3_RC4_IfcPoint_type,IFC4X3_RC4_IfcSectionedSpine_type,IFC4X3_RC4_IfcSegment_type,IFC4X3_RC4_IfcShellBasedSurfaceModel_type,IFC4X3_RC4_IfcSolidModel_type,IFC4X3_RC4_IfcSurface_type,IFC4X3_RC4_IfcTessellatedItem_type,IFC4X3_RC4_IfcTextLiteral_type,IFC4X3_RC4_IfcVector_type + }); + IFC4X3_RC4_IfcResourceLevelRelationship_type->set_subtypes({ + IFC4X3_RC4_IfcApprovalRelationship_type,IFC4X3_RC4_IfcCurrencyRelationship_type,IFC4X3_RC4_IfcDocumentInformationRelationship_type,IFC4X3_RC4_IfcExternalReferenceRelationship_type,IFC4X3_RC4_IfcMaterialRelationship_type,IFC4X3_RC4_IfcOrganizationRelationship_type,IFC4X3_RC4_IfcPropertyDependencyRelationship_type,IFC4X3_RC4_IfcResourceApprovalRelationship_type,IFC4X3_RC4_IfcResourceConstraintRelationship_type + }); + IFC4X3_RC4_IfcProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcArbitraryClosedProfileDef_type,IFC4X3_RC4_IfcArbitraryOpenProfileDef_type,IFC4X3_RC4_IfcCompositeProfileDef_type,IFC4X3_RC4_IfcDerivedProfileDef_type,IFC4X3_RC4_IfcOpenCrossProfileDef_type,IFC4X3_RC4_IfcParameterizedProfileDef_type + }); + IFC4X3_RC4_IfcArbitraryClosedProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type + }); + IFC4X3_RC4_IfcGroup_type->set_subtypes({ + IFC4X3_RC4_IfcAsset_type,IFC4X3_RC4_IfcInventory_type,IFC4X3_RC4_IfcStructuralLoadGroup_type,IFC4X3_RC4_IfcStructuralResultGroup_type,IFC4X3_RC4_IfcSystem_type + }); + IFC4X3_RC4_IfcParameterizedProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type,IFC4X3_RC4_IfcCShapeProfileDef_type,IFC4X3_RC4_IfcCircleProfileDef_type,IFC4X3_RC4_IfcEllipseProfileDef_type,IFC4X3_RC4_IfcIShapeProfileDef_type,IFC4X3_RC4_IfcLShapeProfileDef_type,IFC4X3_RC4_IfcRectangleProfileDef_type,IFC4X3_RC4_IfcTShapeProfileDef_type,IFC4X3_RC4_IfcTrapeziumProfileDef_type,IFC4X3_RC4_IfcUShapeProfileDef_type,IFC4X3_RC4_IfcZShapeProfileDef_type + }); + IFC4X3_RC4_IfcPlacement_type->set_subtypes({ + IFC4X3_RC4_IfcAxis1Placement_type,IFC4X3_RC4_IfcAxis2Placement2D_type,IFC4X3_RC4_IfcAxis2Placement3D_type,IFC4X3_RC4_IfcAxis2PlacementLinear_type + }); + IFC4X3_RC4_IfcBoundedCurve_type->set_subtypes({ + IFC4X3_RC4_IfcBSplineCurve_type,IFC4X3_RC4_IfcCompositeCurve_type,IFC4X3_RC4_IfcIndexedPolyCurve_type,IFC4X3_RC4_IfcPolyline_type,IFC4X3_RC4_IfcTrimmedCurve_type + }); + IFC4X3_RC4_IfcBSplineCurve_type->set_subtypes({ + IFC4X3_RC4_IfcBSplineCurveWithKnots_type + }); + IFC4X3_RC4_IfcBoundedSurface_type->set_subtypes({ + IFC4X3_RC4_IfcBSplineSurface_type,IFC4X3_RC4_IfcCurveBoundedPlane_type,IFC4X3_RC4_IfcCurveBoundedSurface_type,IFC4X3_RC4_IfcRectangularTrimmedSurface_type + }); + IFC4X3_RC4_IfcBSplineSurface_type->set_subtypes({ + IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type + }); + IFC4X3_RC4_IfcBuiltElement_type->set_subtypes({ + IFC4X3_RC4_IfcBeam_type,IFC4X3_RC4_IfcBearing_type,IFC4X3_RC4_IfcBuildingElementProxy_type,IFC4X3_RC4_IfcChimney_type,IFC4X3_RC4_IfcColumn_type,IFC4X3_RC4_IfcCourse_type,IFC4X3_RC4_IfcCovering_type,IFC4X3_RC4_IfcCurtainWall_type,IFC4X3_RC4_IfcDeepFoundation_type,IFC4X3_RC4_IfcDoor_type,IFC4X3_RC4_IfcEarthworksElement_type,IFC4X3_RC4_IfcFooting_type,IFC4X3_RC4_IfcKerb_type,IFC4X3_RC4_IfcMember_type,IFC4X3_RC4_IfcMooringDevice_type,IFC4X3_RC4_IfcNavigationElement_type,IFC4X3_RC4_IfcPavement_type,IFC4X3_RC4_IfcPlate_type,IFC4X3_RC4_IfcRail_type,IFC4X3_RC4_IfcRailing_type,IFC4X3_RC4_IfcRamp_type,IFC4X3_RC4_IfcRampFlight_type,IFC4X3_RC4_IfcRoof_type,IFC4X3_RC4_IfcShadingDevice_type,IFC4X3_RC4_IfcSlab_type,IFC4X3_RC4_IfcStair_type,IFC4X3_RC4_IfcStairFlight_type,IFC4X3_RC4_IfcTrackElement_type,IFC4X3_RC4_IfcWall_type,IFC4X3_RC4_IfcWindow_type + }); + IFC4X3_RC4_IfcBeam_type->set_subtypes({ + IFC4X3_RC4_IfcBeamStandardCase_type + }); + IFC4X3_RC4_IfcBuiltElementType_type->set_subtypes({ + IFC4X3_RC4_IfcBeamType_type,IFC4X3_RC4_IfcBearingType_type,IFC4X3_RC4_IfcBuildingElementProxyType_type,IFC4X3_RC4_IfcChimneyType_type,IFC4X3_RC4_IfcColumnType_type,IFC4X3_RC4_IfcCourseType_type,IFC4X3_RC4_IfcCoveringType_type,IFC4X3_RC4_IfcCurtainWallType_type,IFC4X3_RC4_IfcDeepFoundationType_type,IFC4X3_RC4_IfcDoorType_type,IFC4X3_RC4_IfcFootingType_type,IFC4X3_RC4_IfcKerbType_type,IFC4X3_RC4_IfcMemberType_type,IFC4X3_RC4_IfcMooringDeviceType_type,IFC4X3_RC4_IfcNavigationElementType_type,IFC4X3_RC4_IfcPavementType_type,IFC4X3_RC4_IfcPlateType_type,IFC4X3_RC4_IfcRailType_type,IFC4X3_RC4_IfcRailingType_type,IFC4X3_RC4_IfcRampFlightType_type,IFC4X3_RC4_IfcRampType_type,IFC4X3_RC4_IfcRoofType_type,IFC4X3_RC4_IfcShadingDeviceType_type,IFC4X3_RC4_IfcSlabType_type,IFC4X3_RC4_IfcStairFlightType_type,IFC4X3_RC4_IfcStairType_type,IFC4X3_RC4_IfcTrackElementType_type,IFC4X3_RC4_IfcWallType_type,IFC4X3_RC4_IfcWindowType_type + }); + IFC4X3_RC4_IfcSurfaceTexture_type->set_subtypes({ + IFC4X3_RC4_IfcBlobTexture_type,IFC4X3_RC4_IfcImageTexture_type,IFC4X3_RC4_IfcPixelTexture_type + }); + IFC4X3_RC4_IfcCsgPrimitive3D_type->set_subtypes({ + IFC4X3_RC4_IfcBlock_type,IFC4X3_RC4_IfcRectangularPyramid_type,IFC4X3_RC4_IfcRightCircularCone_type,IFC4X3_RC4_IfcRightCircularCylinder_type,IFC4X3_RC4_IfcSphere_type + }); + IFC4X3_RC4_IfcBooleanResult_type->set_subtypes({ + IFC4X3_RC4_IfcBooleanClippingResult_type + }); + IFC4X3_RC4_IfcGeotechnicalAssembly_type->set_subtypes({ + IFC4X3_RC4_IfcBorehole_type,IFC4X3_RC4_IfcGeomodel_type,IFC4X3_RC4_IfcGeoslice_type + }); + IFC4X3_RC4_IfcCompositeCurveOnSurface_type->set_subtypes({ + IFC4X3_RC4_IfcBoundaryCurve_type + }); + IFC4X3_RC4_IfcBoundaryCondition_type->set_subtypes({ + IFC4X3_RC4_IfcBoundaryEdgeCondition_type,IFC4X3_RC4_IfcBoundaryFaceCondition_type,IFC4X3_RC4_IfcBoundaryNodeCondition_type + }); + IFC4X3_RC4_IfcBoundaryNodeCondition_type->set_subtypes({ + IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type + }); + IFC4X3_RC4_IfcCurve_type->set_subtypes({ + IFC4X3_RC4_IfcBoundedCurve_type,IFC4X3_RC4_IfcConic_type,IFC4X3_RC4_IfcLine_type,IFC4X3_RC4_IfcOffsetCurve_type,IFC4X3_RC4_IfcPcurve_type,IFC4X3_RC4_IfcPolynomialCurve_type,IFC4X3_RC4_IfcSpiral_type,IFC4X3_RC4_IfcSurfaceCurve_type + }); + IFC4X3_RC4_IfcSurface_type->set_subtypes({ + IFC4X3_RC4_IfcBoundedSurface_type,IFC4X3_RC4_IfcElementarySurface_type,IFC4X3_RC4_IfcSectionedSurface_type,IFC4X3_RC4_IfcSweptSurface_type + }); + IFC4X3_RC4_IfcHalfSpaceSolid_type->set_subtypes({ + IFC4X3_RC4_IfcBoxedHalfSpace_type,IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type + }); + IFC4X3_RC4_IfcFacility_type->set_subtypes({ + IFC4X3_RC4_IfcBridge_type,IFC4X3_RC4_IfcBuilding_type,IFC4X3_RC4_IfcMarineFacility_type,IFC4X3_RC4_IfcRailway_type,IFC4X3_RC4_IfcRoad_type + }); + IFC4X3_RC4_IfcElementComponent_type->set_subtypes({ + IFC4X3_RC4_IfcBuildingElementPart_type,IFC4X3_RC4_IfcDiscreteAccessory_type,IFC4X3_RC4_IfcFastener_type,IFC4X3_RC4_IfcImpactProtectionDevice_type,IFC4X3_RC4_IfcMechanicalFastener_type,IFC4X3_RC4_IfcReinforcingElement_type,IFC4X3_RC4_IfcSign_type,IFC4X3_RC4_IfcVibrationDamper_type,IFC4X3_RC4_IfcVibrationIsolator_type + }); + IFC4X3_RC4_IfcElementComponentType_type->set_subtypes({ + IFC4X3_RC4_IfcBuildingElementPartType_type,IFC4X3_RC4_IfcDiscreteAccessoryType_type,IFC4X3_RC4_IfcFastenerType_type,IFC4X3_RC4_IfcImpactProtectionDeviceType_type,IFC4X3_RC4_IfcMechanicalFastenerType_type,IFC4X3_RC4_IfcReinforcingElementType_type,IFC4X3_RC4_IfcSignType_type,IFC4X3_RC4_IfcVibrationDamperType_type,IFC4X3_RC4_IfcVibrationIsolatorType_type + }); + IFC4X3_RC4_IfcSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC4_IfcBuildingStorey_type,IFC4X3_RC4_IfcFacility_type,IFC4X3_RC4_IfcFacilityPart_type,IFC4X3_RC4_IfcSite_type,IFC4X3_RC4_IfcSpace_type + }); + IFC4X3_RC4_IfcSystem_type->set_subtypes({ + IFC4X3_RC4_IfcBuildingSystem_type,IFC4X3_RC4_IfcBuiltSystem_type,IFC4X3_RC4_IfcDistributionSystem_type,IFC4X3_RC4_IfcStructuralAnalysisModel_type,IFC4X3_RC4_IfcZone_type + }); + IFC4X3_RC4_IfcElement_type->set_subtypes({ + IFC4X3_RC4_IfcBuiltElement_type,IFC4X3_RC4_IfcCivilElement_type,IFC4X3_RC4_IfcDistributionElement_type,IFC4X3_RC4_IfcElementAssembly_type,IFC4X3_RC4_IfcElementComponent_type,IFC4X3_RC4_IfcFeatureElement_type,IFC4X3_RC4_IfcFurnishingElement_type,IFC4X3_RC4_IfcGeographicElement_type,IFC4X3_RC4_IfcGeotechnicalElement_type,IFC4X3_RC4_IfcTransportElement_type,IFC4X3_RC4_IfcVirtualElement_type + }); + IFC4X3_RC4_IfcElementType_type->set_subtypes({ + IFC4X3_RC4_IfcBuiltElementType_type,IFC4X3_RC4_IfcCivilElementType_type,IFC4X3_RC4_IfcDistributionElementType_type,IFC4X3_RC4_IfcElementAssemblyType_type,IFC4X3_RC4_IfcElementComponentType_type,IFC4X3_RC4_IfcFurnishingElementType_type,IFC4X3_RC4_IfcGeographicElementType_type,IFC4X3_RC4_IfcTransportElementType_type + }); + IFC4X3_RC4_IfcFlowFitting_type->set_subtypes({ + IFC4X3_RC4_IfcCableCarrierFitting_type,IFC4X3_RC4_IfcCableFitting_type,IFC4X3_RC4_IfcDuctFitting_type,IFC4X3_RC4_IfcJunctionBox_type,IFC4X3_RC4_IfcPipeFitting_type + }); + IFC4X3_RC4_IfcFlowFittingType_type->set_subtypes({ + IFC4X3_RC4_IfcCableCarrierFittingType_type,IFC4X3_RC4_IfcCableFittingType_type,IFC4X3_RC4_IfcDuctFittingType_type,IFC4X3_RC4_IfcJunctionBoxType_type,IFC4X3_RC4_IfcPipeFittingType_type + }); + IFC4X3_RC4_IfcFlowSegment_type->set_subtypes({ + IFC4X3_RC4_IfcCableCarrierSegment_type,IFC4X3_RC4_IfcCableSegment_type,IFC4X3_RC4_IfcConveyorSegment_type,IFC4X3_RC4_IfcDuctSegment_type,IFC4X3_RC4_IfcPipeSegment_type + }); + IFC4X3_RC4_IfcFlowSegmentType_type->set_subtypes({ + IFC4X3_RC4_IfcCableCarrierSegmentType_type,IFC4X3_RC4_IfcCableSegmentType_type,IFC4X3_RC4_IfcConveyorSegmentType_type,IFC4X3_RC4_IfcDuctSegmentType_type,IFC4X3_RC4_IfcPipeSegmentType_type + }); + IFC4X3_RC4_IfcDeepFoundation_type->set_subtypes({ + IFC4X3_RC4_IfcCaissonFoundation_type,IFC4X3_RC4_IfcPile_type + }); + IFC4X3_RC4_IfcDeepFoundationType_type->set_subtypes({ + IFC4X3_RC4_IfcCaissonFoundationType_type,IFC4X3_RC4_IfcPileType_type + }); + IFC4X3_RC4_IfcPoint_type->set_subtypes({ + IFC4X3_RC4_IfcCartesianPoint_type,IFC4X3_RC4_IfcPointByDistanceExpression_type,IFC4X3_RC4_IfcPointOnCurve_type,IFC4X3_RC4_IfcPointOnSurface_type + }); + IFC4X3_RC4_IfcCartesianPointList_type->set_subtypes({ + IFC4X3_RC4_IfcCartesianPointList2D_type,IFC4X3_RC4_IfcCartesianPointList3D_type + }); + IFC4X3_RC4_IfcCartesianTransformationOperator_type->set_subtypes({ + IFC4X3_RC4_IfcCartesianTransformationOperator2D_type,IFC4X3_RC4_IfcCartesianTransformationOperator3D_type + }); + IFC4X3_RC4_IfcCartesianTransformationOperator2D_type->set_subtypes({ + IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type + }); + IFC4X3_RC4_IfcCartesianTransformationOperator3D_type->set_subtypes({ + IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type + }); + IFC4X3_RC4_IfcArbitraryOpenProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcCenterLineProfileDef_type + }); + IFC4X3_RC4_IfcConic_type->set_subtypes({ + IFC4X3_RC4_IfcCircle_type,IFC4X3_RC4_IfcEllipse_type + }); + IFC4X3_RC4_IfcCircleProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcCircleHollowProfileDef_type + }); + IFC4X3_RC4_IfcExternalInformation_type->set_subtypes({ + IFC4X3_RC4_IfcClassification_type,IFC4X3_RC4_IfcDocumentInformation_type,IFC4X3_RC4_IfcLibraryInformation_type + }); + IFC4X3_RC4_IfcExternalReference_type->set_subtypes({ + IFC4X3_RC4_IfcClassificationReference_type,IFC4X3_RC4_IfcDocumentReference_type,IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type,IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type,IFC4X3_RC4_IfcExternallyDefinedTextFont_type,IFC4X3_RC4_IfcLibraryReference_type + }); + IFC4X3_RC4_IfcConnectedFaceSet_type->set_subtypes({ + IFC4X3_RC4_IfcClosedShell_type,IFC4X3_RC4_IfcOpenShell_type + }); + IFC4X3_RC4_IfcSpiral_type->set_subtypes({ + IFC4X3_RC4_IfcClothoid_type,IFC4X3_RC4_IfcCosine_type,IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type,IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type,IFC4X3_RC4_IfcSine_type,IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type + }); + IFC4X3_RC4_IfcColourSpecification_type->set_subtypes({ + IFC4X3_RC4_IfcColourRgb_type + }); + IFC4X3_RC4_IfcPresentationItem_type->set_subtypes({ + IFC4X3_RC4_IfcColourRgbList_type,IFC4X3_RC4_IfcColourSpecification_type,IFC4X3_RC4_IfcCurveStyleFont_type,IFC4X3_RC4_IfcCurveStyleFontAndScaling_type,IFC4X3_RC4_IfcCurveStyleFontPattern_type,IFC4X3_RC4_IfcIndexedColourMap_type,IFC4X3_RC4_IfcPreDefinedItem_type,IFC4X3_RC4_IfcSurfaceStyleLighting_type,IFC4X3_RC4_IfcSurfaceStyleRefraction_type,IFC4X3_RC4_IfcSurfaceStyleShading_type,IFC4X3_RC4_IfcSurfaceStyleWithTextures_type,IFC4X3_RC4_IfcSurfaceTexture_type,IFC4X3_RC4_IfcTextStyleForDefinedFont_type,IFC4X3_RC4_IfcTextStyleTextModel_type,IFC4X3_RC4_IfcTextureCoordinate_type,IFC4X3_RC4_IfcTextureVertex_type,IFC4X3_RC4_IfcTextureVertexList_type + }); + IFC4X3_RC4_IfcColumn_type->set_subtypes({ + IFC4X3_RC4_IfcColumnStandardCase_type + }); + IFC4X3_RC4_IfcProperty_type->set_subtypes({ + IFC4X3_RC4_IfcComplexProperty_type,IFC4X3_RC4_IfcSimpleProperty_type + }); + IFC4X3_RC4_IfcPropertyTemplate_type->set_subtypes({ + IFC4X3_RC4_IfcComplexPropertyTemplate_type,IFC4X3_RC4_IfcSimplePropertyTemplate_type + }); + IFC4X3_RC4_IfcCompositeCurve_type->set_subtypes({ + IFC4X3_RC4_IfcCompositeCurveOnSurface_type,IFC4X3_RC4_IfcGradientCurve_type,IFC4X3_RC4_IfcSegmentedReferenceCurve_type + }); + IFC4X3_RC4_IfcSegment_type->set_subtypes({ + IFC4X3_RC4_IfcCompositeCurveSegment_type,IFC4X3_RC4_IfcCurveSegment_type + }); + IFC4X3_RC4_IfcFlowMovingDevice_type->set_subtypes({ + IFC4X3_RC4_IfcCompressor_type,IFC4X3_RC4_IfcFan_type,IFC4X3_RC4_IfcPump_type + }); + IFC4X3_RC4_IfcFlowMovingDeviceType_type->set_subtypes({ + IFC4X3_RC4_IfcCompressorType_type,IFC4X3_RC4_IfcFanType_type,IFC4X3_RC4_IfcPumpType_type + }); + IFC4X3_RC4_IfcTopologicalRepresentationItem_type->set_subtypes({ + IFC4X3_RC4_IfcConnectedFaceSet_type,IFC4X3_RC4_IfcEdge_type,IFC4X3_RC4_IfcFace_type,IFC4X3_RC4_IfcFaceBound_type,IFC4X3_RC4_IfcLoop_type,IFC4X3_RC4_IfcPath_type,IFC4X3_RC4_IfcVertex_type + }); + IFC4X3_RC4_IfcConnectionGeometry_type->set_subtypes({ + IFC4X3_RC4_IfcConnectionCurveGeometry_type,IFC4X3_RC4_IfcConnectionPointGeometry_type,IFC4X3_RC4_IfcConnectionSurfaceGeometry_type,IFC4X3_RC4_IfcConnectionVolumeGeometry_type + }); + IFC4X3_RC4_IfcConnectionPointGeometry_type->set_subtypes({ + IFC4X3_RC4_IfcConnectionPointEccentricity_type + }); + IFC4X3_RC4_IfcConstructionResource_type->set_subtypes({ + IFC4X3_RC4_IfcConstructionEquipmentResource_type,IFC4X3_RC4_IfcConstructionMaterialResource_type,IFC4X3_RC4_IfcConstructionProductResource_type,IFC4X3_RC4_IfcCrewResource_type,IFC4X3_RC4_IfcLaborResource_type,IFC4X3_RC4_IfcSubContractResource_type + }); + IFC4X3_RC4_IfcConstructionResourceType_type->set_subtypes({ + IFC4X3_RC4_IfcConstructionEquipmentResourceType_type,IFC4X3_RC4_IfcConstructionMaterialResourceType_type,IFC4X3_RC4_IfcConstructionProductResourceType_type,IFC4X3_RC4_IfcCrewResourceType_type,IFC4X3_RC4_IfcLaborResourceType_type,IFC4X3_RC4_IfcSubContractResourceType_type + }); + IFC4X3_RC4_IfcResource_type->set_subtypes({ + IFC4X3_RC4_IfcConstructionResource_type + }); + IFC4X3_RC4_IfcTypeResource_type->set_subtypes({ + IFC4X3_RC4_IfcConstructionResourceType_type + }); + IFC4X3_RC4_IfcObjectDefinition_type->set_subtypes({ + IFC4X3_RC4_IfcContext_type,IFC4X3_RC4_IfcObject_type,IFC4X3_RC4_IfcTypeObject_type + }); + IFC4X3_RC4_IfcNamedUnit_type->set_subtypes({ + IFC4X3_RC4_IfcContextDependentUnit_type,IFC4X3_RC4_IfcConversionBasedUnit_type,IFC4X3_RC4_IfcSIUnit_type + }); + IFC4X3_RC4_IfcConversionBasedUnit_type->set_subtypes({ + IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type + }); + IFC4X3_RC4_IfcAppliedValue_type->set_subtypes({ + IFC4X3_RC4_IfcCostValue_type + }); + IFC4X3_RC4_IfcSolidModel_type->set_subtypes({ + IFC4X3_RC4_IfcCsgSolid_type,IFC4X3_RC4_IfcManifoldSolidBrep_type,IFC4X3_RC4_IfcSectionedSolid_type,IFC4X3_RC4_IfcSweptAreaSolid_type,IFC4X3_RC4_IfcSweptDiskSolid_type + }); + IFC4X3_RC4_IfcPresentationStyle_type->set_subtypes({ + IFC4X3_RC4_IfcCurveStyle_type,IFC4X3_RC4_IfcFillAreaStyle_type,IFC4X3_RC4_IfcSurfaceStyle_type,IFC4X3_RC4_IfcTextStyle_type + }); + IFC4X3_RC4_IfcElementarySurface_type->set_subtypes({ + IFC4X3_RC4_IfcCylindricalSurface_type,IFC4X3_RC4_IfcPlane_type,IFC4X3_RC4_IfcSphericalSurface_type,IFC4X3_RC4_IfcToroidalSurface_type + }); + IFC4X3_RC4_IfcSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type,IFC4X3_RC4_IfcExtrudedAreaSolid_type,IFC4X3_RC4_IfcRevolvedAreaSolid_type + }); + IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type + }); + IFC4X3_RC4_IfcDistributionFlowElement_type->set_subtypes({ + IFC4X3_RC4_IfcDistributionChamberElement_type,IFC4X3_RC4_IfcEnergyConversionDevice_type,IFC4X3_RC4_IfcFlowController_type,IFC4X3_RC4_IfcFlowFitting_type,IFC4X3_RC4_IfcFlowMovingDevice_type,IFC4X3_RC4_IfcFlowSegment_type,IFC4X3_RC4_IfcFlowStorageDevice_type,IFC4X3_RC4_IfcFlowTerminal_type,IFC4X3_RC4_IfcFlowTreatmentDevice_type + }); + IFC4X3_RC4_IfcDistributionFlowElementType_type->set_subtypes({ + IFC4X3_RC4_IfcDistributionChamberElementType_type,IFC4X3_RC4_IfcEnergyConversionDeviceType_type,IFC4X3_RC4_IfcFlowControllerType_type,IFC4X3_RC4_IfcFlowFittingType_type,IFC4X3_RC4_IfcFlowMovingDeviceType_type,IFC4X3_RC4_IfcFlowSegmentType_type,IFC4X3_RC4_IfcFlowStorageDeviceType_type,IFC4X3_RC4_IfcFlowTerminalType_type,IFC4X3_RC4_IfcFlowTreatmentDeviceType_type + }); + IFC4X3_RC4_IfcDistributionSystem_type->set_subtypes({ + IFC4X3_RC4_IfcDistributionCircuit_type + }); + IFC4X3_RC4_IfcDistributionElement_type->set_subtypes({ + IFC4X3_RC4_IfcDistributionControlElement_type,IFC4X3_RC4_IfcDistributionFlowElement_type + }); + IFC4X3_RC4_IfcDistributionElementType_type->set_subtypes({ + IFC4X3_RC4_IfcDistributionControlElementType_type,IFC4X3_RC4_IfcDistributionFlowElementType_type + }); + IFC4X3_RC4_IfcPort_type->set_subtypes({ + IFC4X3_RC4_IfcDistributionPort_type + }); + IFC4X3_RC4_IfcPreDefinedPropertySet_type->set_subtypes({ + IFC4X3_RC4_IfcDoorLiningProperties_type,IFC4X3_RC4_IfcDoorPanelProperties_type,IFC4X3_RC4_IfcPermeableCoveringProperties_type,IFC4X3_RC4_IfcReinforcementDefinitionProperties_type,IFC4X3_RC4_IfcWindowLiningProperties_type,IFC4X3_RC4_IfcWindowPanelProperties_type + }); + IFC4X3_RC4_IfcDoor_type->set_subtypes({ + IFC4X3_RC4_IfcDoorStandardCase_type + }); + IFC4X3_RC4_IfcTypeProduct_type->set_subtypes({ + IFC4X3_RC4_IfcDoorStyle_type,IFC4X3_RC4_IfcElementType_type,IFC4X3_RC4_IfcSpatialElementType_type,IFC4X3_RC4_IfcWindowStyle_type + }); + IFC4X3_RC4_IfcPreDefinedColour_type->set_subtypes({ + IFC4X3_RC4_IfcDraughtingPreDefinedColour_type + }); + IFC4X3_RC4_IfcPreDefinedCurveFont_type->set_subtypes({ + IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type + }); + IFC4X3_RC4_IfcFlowTreatmentDevice_type->set_subtypes({ + IFC4X3_RC4_IfcDuctSilencer_type,IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type,IFC4X3_RC4_IfcFilter_type,IFC4X3_RC4_IfcInterceptor_type + }); + IFC4X3_RC4_IfcFlowTreatmentDeviceType_type->set_subtypes({ + IFC4X3_RC4_IfcDuctSilencerType_type,IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type,IFC4X3_RC4_IfcFilterType_type,IFC4X3_RC4_IfcInterceptorType_type + }); + IFC4X3_RC4_IfcFeatureElementSubtraction_type->set_subtypes({ + IFC4X3_RC4_IfcEarthworksCut_type,IFC4X3_RC4_IfcOpeningElement_type,IFC4X3_RC4_IfcVoidingFeature_type + }); + IFC4X3_RC4_IfcEarthworksElement_type->set_subtypes({ + IFC4X3_RC4_IfcEarthworksFill_type,IFC4X3_RC4_IfcReinforcedSoil_type + }); + IFC4X3_RC4_IfcEdge_type->set_subtypes({ + IFC4X3_RC4_IfcEdgeCurve_type,IFC4X3_RC4_IfcOrientedEdge_type,IFC4X3_RC4_IfcSubedge_type + }); + IFC4X3_RC4_IfcLoop_type->set_subtypes({ + IFC4X3_RC4_IfcEdgeLoop_type,IFC4X3_RC4_IfcPolyLoop_type,IFC4X3_RC4_IfcVertexLoop_type + }); + IFC4X3_RC4_IfcFlowStorageDevice_type->set_subtypes({ + IFC4X3_RC4_IfcElectricFlowStorageDevice_type,IFC4X3_RC4_IfcTank_type + }); + IFC4X3_RC4_IfcFlowStorageDeviceType_type->set_subtypes({ + IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type,IFC4X3_RC4_IfcTankType_type + }); + IFC4X3_RC4_IfcQuantitySet_type->set_subtypes({ + IFC4X3_RC4_IfcElementQuantity_type + }); + IFC4X3_RC4_IfcProcess_type->set_subtypes({ + IFC4X3_RC4_IfcEvent_type,IFC4X3_RC4_IfcProcedure_type,IFC4X3_RC4_IfcTask_type + }); + IFC4X3_RC4_IfcSchedulingTime_type->set_subtypes({ + IFC4X3_RC4_IfcEventTime_type,IFC4X3_RC4_IfcLagTime_type,IFC4X3_RC4_IfcResourceTime_type,IFC4X3_RC4_IfcTaskTime_type,IFC4X3_RC4_IfcWorkTime_type + }); + IFC4X3_RC4_IfcTypeProcess_type->set_subtypes({ + IFC4X3_RC4_IfcEventType_type,IFC4X3_RC4_IfcProcedureType_type,IFC4X3_RC4_IfcTaskType_type + }); + IFC4X3_RC4_IfcPropertyAbstraction_type->set_subtypes({ + IFC4X3_RC4_IfcExtendedProperties_type,IFC4X3_RC4_IfcPreDefinedProperties_type,IFC4X3_RC4_IfcProperty_type,IFC4X3_RC4_IfcPropertyEnumeration_type + }); + IFC4X3_RC4_IfcExternalSpatialStructureElement_type->set_subtypes({ + IFC4X3_RC4_IfcExternalSpatialElement_type + }); + IFC4X3_RC4_IfcSpatialElement_type->set_subtypes({ + IFC4X3_RC4_IfcExternalSpatialStructureElement_type,IFC4X3_RC4_IfcSpatialStructureElement_type,IFC4X3_RC4_IfcSpatialZone_type + }); + IFC4X3_RC4_IfcExtrudedAreaSolid_type->set_subtypes({ + IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type + }); + IFC4X3_RC4_IfcFaceBound_type->set_subtypes({ + IFC4X3_RC4_IfcFaceOuterBound_type + }); + IFC4X3_RC4_IfcFace_type->set_subtypes({ + IFC4X3_RC4_IfcFaceSurface_type + }); + IFC4X3_RC4_IfcFacetedBrep_type->set_subtypes({ + IFC4X3_RC4_IfcFacetedBrepWithVoids_type + }); + IFC4X3_RC4_IfcStructuralConnectionCondition_type->set_subtypes({ + IFC4X3_RC4_IfcFailureConnectionCondition_type,IFC4X3_RC4_IfcSlippageConnectionCondition_type + }); + IFC4X3_RC4_IfcFeatureElement_type->set_subtypes({ + IFC4X3_RC4_IfcFeatureElementAddition_type,IFC4X3_RC4_IfcFeatureElementSubtraction_type,IFC4X3_RC4_IfcSurfaceFeature_type + }); + IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type->set_subtypes({ + IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type,IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type + }); + IFC4X3_RC4_IfcFurnishingElement_type->set_subtypes({ + IFC4X3_RC4_IfcFurniture_type,IFC4X3_RC4_IfcSystemFurnitureElement_type + }); + IFC4X3_RC4_IfcFurnishingElementType_type->set_subtypes({ + IFC4X3_RC4_IfcFurnitureType_type,IFC4X3_RC4_IfcSystemFurnitureElementType_type + }); + IFC4X3_RC4_IfcGeometricSet_type->set_subtypes({ + IFC4X3_RC4_IfcGeometricCurveSet_type + }); + IFC4X3_RC4_IfcRepresentationContext_type->set_subtypes({ + IFC4X3_RC4_IfcGeometricRepresentationContext_type + }); + IFC4X3_RC4_IfcRepresentationItem_type->set_subtypes({ + IFC4X3_RC4_IfcGeometricRepresentationItem_type,IFC4X3_RC4_IfcMappedItem_type,IFC4X3_RC4_IfcStyledItem_type,IFC4X3_RC4_IfcTopologicalRepresentationItem_type + }); + IFC4X3_RC4_IfcGeometricRepresentationContext_type->set_subtypes({ + IFC4X3_RC4_IfcGeometricRepresentationSubContext_type + }); + IFC4X3_RC4_IfcGeotechnicalElement_type->set_subtypes({ + IFC4X3_RC4_IfcGeotechnicalAssembly_type,IFC4X3_RC4_IfcGeotechnicalStratum_type + }); + IFC4X3_RC4_IfcPositioningElement_type->set_subtypes({ + IFC4X3_RC4_IfcGrid_type,IFC4X3_RC4_IfcLinearPositioningElement_type,IFC4X3_RC4_IfcReferent_type + }); + IFC4X3_RC4_IfcObjectPlacement_type->set_subtypes({ + IFC4X3_RC4_IfcGridPlacement_type,IFC4X3_RC4_IfcLinearPlacement_type,IFC4X3_RC4_IfcLocalPlacement_type + }); + IFC4X3_RC4_IfcTessellatedItem_type->set_subtypes({ + IFC4X3_RC4_IfcIndexedPolygonalFace_type,IFC4X3_RC4_IfcTessellatedFaceSet_type + }); + IFC4X3_RC4_IfcIndexedPolygonalFace_type->set_subtypes({ + IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type + }); + IFC4X3_RC4_IfcTextureCoordinate_type->set_subtypes({ + IFC4X3_RC4_IfcIndexedTextureMap_type,IFC4X3_RC4_IfcTextureCoordinateGenerator_type,IFC4X3_RC4_IfcTextureMap_type + }); + IFC4X3_RC4_IfcIndexedTextureMap_type->set_subtypes({ + IFC4X3_RC4_IfcIndexedTriangleTextureMap_type + }); + IFC4X3_RC4_IfcSurfaceCurve_type->set_subtypes({ + IFC4X3_RC4_IfcIntersectionCurve_type,IFC4X3_RC4_IfcSeamCurve_type + }); + IFC4X3_RC4_IfcTimeSeries_type->set_subtypes({ + IFC4X3_RC4_IfcIrregularTimeSeries_type,IFC4X3_RC4_IfcRegularTimeSeries_type + }); + IFC4X3_RC4_IfcLightSource_type->set_subtypes({ + IFC4X3_RC4_IfcLightSourceAmbient_type,IFC4X3_RC4_IfcLightSourceDirectional_type,IFC4X3_RC4_IfcLightSourceGoniometric_type,IFC4X3_RC4_IfcLightSourcePositional_type + }); + IFC4X3_RC4_IfcLightSourcePositional_type->set_subtypes({ + IFC4X3_RC4_IfcLightSourceSpot_type + }); + IFC4X3_RC4_IfcCoordinateOperation_type->set_subtypes({ + IFC4X3_RC4_IfcMapConversion_type + }); + IFC4X3_RC4_IfcMaterialDefinition_type->set_subtypes({ + IFC4X3_RC4_IfcMaterial_type,IFC4X3_RC4_IfcMaterialConstituent_type,IFC4X3_RC4_IfcMaterialConstituentSet_type,IFC4X3_RC4_IfcMaterialLayer_type,IFC4X3_RC4_IfcMaterialLayerSet_type,IFC4X3_RC4_IfcMaterialProfile_type,IFC4X3_RC4_IfcMaterialProfileSet_type + }); + IFC4X3_RC4_IfcProductRepresentation_type->set_subtypes({ + IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type,IFC4X3_RC4_IfcProductDefinitionShape_type + }); + IFC4X3_RC4_IfcMaterialUsageDefinition_type->set_subtypes({ + IFC4X3_RC4_IfcMaterialLayerSetUsage_type,IFC4X3_RC4_IfcMaterialProfileSetUsage_type + }); + IFC4X3_RC4_IfcMaterialLayer_type->set_subtypes({ + IFC4X3_RC4_IfcMaterialLayerWithOffsets_type + }); + IFC4X3_RC4_IfcMaterialProfileSetUsage_type->set_subtypes({ + IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type + }); + IFC4X3_RC4_IfcMaterialProfile_type->set_subtypes({ + IFC4X3_RC4_IfcMaterialProfileWithOffsets_type + }); + IFC4X3_RC4_IfcExtendedProperties_type->set_subtypes({ + IFC4X3_RC4_IfcMaterialProperties_type,IFC4X3_RC4_IfcProfileProperties_type + }); + IFC4X3_RC4_IfcMember_type->set_subtypes({ + IFC4X3_RC4_IfcMemberStandardCase_type + }); + IFC4X3_RC4_IfcConstraint_type->set_subtypes({ + IFC4X3_RC4_IfcMetric_type,IFC4X3_RC4_IfcObjective_type + }); + IFC4X3_RC4_IfcDerivedProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcMirroredProfileDef_type + }); + IFC4X3_RC4_IfcRoot_type->set_subtypes({ + IFC4X3_RC4_IfcObjectDefinition_type,IFC4X3_RC4_IfcPropertyDefinition_type,IFC4X3_RC4_IfcRelationship_type + }); + IFC4X3_RC4_IfcActor_type->set_subtypes({ + IFC4X3_RC4_IfcOccupant_type + }); + IFC4X3_RC4_IfcOffsetCurve_type->set_subtypes({ + IFC4X3_RC4_IfcOffsetCurve2D_type,IFC4X3_RC4_IfcOffsetCurve3D_type,IFC4X3_RC4_IfcOffsetCurveByDistances_type + }); + IFC4X3_RC4_IfcOpeningElement_type->set_subtypes({ + IFC4X3_RC4_IfcOpeningStandardCase_type + }); + IFC4X3_RC4_IfcBoundaryCurve_type->set_subtypes({ + IFC4X3_RC4_IfcOuterBoundaryCurve_type + }); + IFC4X3_RC4_IfcPhysicalQuantity_type->set_subtypes({ + IFC4X3_RC4_IfcPhysicalComplexQuantity_type,IFC4X3_RC4_IfcPhysicalSimpleQuantity_type + }); + IFC4X3_RC4_IfcPlanarExtent_type->set_subtypes({ + IFC4X3_RC4_IfcPlanarBox_type + }); + IFC4X3_RC4_IfcGeographicElement_type->set_subtypes({ + IFC4X3_RC4_IfcPlant_type + }); + IFC4X3_RC4_IfcPlate_type->set_subtypes({ + IFC4X3_RC4_IfcPlateStandardCase_type + }); + IFC4X3_RC4_IfcTessellatedFaceSet_type->set_subtypes({ + IFC4X3_RC4_IfcPolygonalFaceSet_type,IFC4X3_RC4_IfcTriangulatedFaceSet_type + }); + IFC4X3_RC4_IfcAddress_type->set_subtypes({ + IFC4X3_RC4_IfcPostalAddress_type,IFC4X3_RC4_IfcTelecomAddress_type + }); + IFC4X3_RC4_IfcPreDefinedItem_type->set_subtypes({ + IFC4X3_RC4_IfcPreDefinedColour_type,IFC4X3_RC4_IfcPreDefinedCurveFont_type,IFC4X3_RC4_IfcPreDefinedTextFont_type + }); + IFC4X3_RC4_IfcPropertySetDefinition_type->set_subtypes({ + IFC4X3_RC4_IfcPreDefinedPropertySet_type,IFC4X3_RC4_IfcPropertySet_type,IFC4X3_RC4_IfcQuantitySet_type + }); + IFC4X3_RC4_IfcPresentationLayerAssignment_type->set_subtypes({ + IFC4X3_RC4_IfcPresentationLayerWithStyle_type + }); + IFC4X3_RC4_IfcContext_type->set_subtypes({ + IFC4X3_RC4_IfcProject_type,IFC4X3_RC4_IfcProjectLibrary_type + }); + IFC4X3_RC4_IfcCoordinateReferenceSystem_type->set_subtypes({ + IFC4X3_RC4_IfcProjectedCRS_type + }); + IFC4X3_RC4_IfcFeatureElementAddition_type->set_subtypes({ + IFC4X3_RC4_IfcProjectionElement_type + }); + IFC4X3_RC4_IfcSimpleProperty_type->set_subtypes({ + IFC4X3_RC4_IfcPropertyBoundedValue_type,IFC4X3_RC4_IfcPropertyEnumeratedValue_type,IFC4X3_RC4_IfcPropertyListValue_type,IFC4X3_RC4_IfcPropertyReferenceValue_type,IFC4X3_RC4_IfcPropertySingleValue_type,IFC4X3_RC4_IfcPropertyTableValue_type + }); + IFC4X3_RC4_IfcPropertyDefinition_type->set_subtypes({ + IFC4X3_RC4_IfcPropertySetDefinition_type,IFC4X3_RC4_IfcPropertyTemplateDefinition_type + }); + IFC4X3_RC4_IfcPropertyTemplateDefinition_type->set_subtypes({ + IFC4X3_RC4_IfcPropertySetTemplate_type,IFC4X3_RC4_IfcPropertyTemplate_type + }); + IFC4X3_RC4_IfcPhysicalSimpleQuantity_type->set_subtypes({ + IFC4X3_RC4_IfcQuantityArea_type,IFC4X3_RC4_IfcQuantityCount_type,IFC4X3_RC4_IfcQuantityLength_type,IFC4X3_RC4_IfcQuantityTime_type,IFC4X3_RC4_IfcQuantityVolume_type,IFC4X3_RC4_IfcQuantityWeight_type + }); + IFC4X3_RC4_IfcBSplineCurveWithKnots_type->set_subtypes({ + IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type + }); + IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type->set_subtypes({ + IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type + }); + IFC4X3_RC4_IfcRectangleProfileDef_type->set_subtypes({ + IFC4X3_RC4_IfcRectangleHollowProfileDef_type,IFC4X3_RC4_IfcRoundedRectangleProfileDef_type + }); + IFC4X3_RC4_IfcPreDefinedProperties_type->set_subtypes({ + IFC4X3_RC4_IfcReinforcementBarProperties_type,IFC4X3_RC4_IfcSectionProperties_type,IFC4X3_RC4_IfcSectionReinforcementProperties_type + }); + IFC4X3_RC4_IfcReinforcingElement_type->set_subtypes({ + IFC4X3_RC4_IfcReinforcingBar_type,IFC4X3_RC4_IfcReinforcingMesh_type,IFC4X3_RC4_IfcTendon_type,IFC4X3_RC4_IfcTendonAnchor_type,IFC4X3_RC4_IfcTendonConduit_type + }); + IFC4X3_RC4_IfcReinforcingElementType_type->set_subtypes({ + IFC4X3_RC4_IfcReinforcingBarType_type,IFC4X3_RC4_IfcReinforcingMeshType_type,IFC4X3_RC4_IfcTendonAnchorType_type,IFC4X3_RC4_IfcTendonConduitType_type,IFC4X3_RC4_IfcTendonType_type + }); + IFC4X3_RC4_IfcRelDecomposes_type->set_subtypes({ + IFC4X3_RC4_IfcRelAdheresToElement_type,IFC4X3_RC4_IfcRelAggregates_type,IFC4X3_RC4_IfcRelNests_type,IFC4X3_RC4_IfcRelProjectsElement_type,IFC4X3_RC4_IfcRelVoidsElement_type + }); + IFC4X3_RC4_IfcRelationship_type->set_subtypes({ + IFC4X3_RC4_IfcRelAssigns_type,IFC4X3_RC4_IfcRelAssociates_type,IFC4X3_RC4_IfcRelConnects_type,IFC4X3_RC4_IfcRelDeclares_type,IFC4X3_RC4_IfcRelDecomposes_type,IFC4X3_RC4_IfcRelDefines_type + }); + IFC4X3_RC4_IfcRelAssigns_type->set_subtypes({ + IFC4X3_RC4_IfcRelAssignsToActor_type,IFC4X3_RC4_IfcRelAssignsToControl_type,IFC4X3_RC4_IfcRelAssignsToGroup_type,IFC4X3_RC4_IfcRelAssignsToProcess_type,IFC4X3_RC4_IfcRelAssignsToProduct_type,IFC4X3_RC4_IfcRelAssignsToResource_type + }); + IFC4X3_RC4_IfcRelAssignsToGroup_type->set_subtypes({ + IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type + }); + IFC4X3_RC4_IfcRelAssociates_type->set_subtypes({ + IFC4X3_RC4_IfcRelAssociatesApproval_type,IFC4X3_RC4_IfcRelAssociatesClassification_type,IFC4X3_RC4_IfcRelAssociatesConstraint_type,IFC4X3_RC4_IfcRelAssociatesDocument_type,IFC4X3_RC4_IfcRelAssociatesLibrary_type,IFC4X3_RC4_IfcRelAssociatesMaterial_type,IFC4X3_RC4_IfcRelAssociatesProfileDef_type + }); + IFC4X3_RC4_IfcRelConnects_type->set_subtypes({ + IFC4X3_RC4_IfcRelConnectsElements_type,IFC4X3_RC4_IfcRelConnectsPortToElement_type,IFC4X3_RC4_IfcRelConnectsPorts_type,IFC4X3_RC4_IfcRelConnectsStructuralActivity_type,IFC4X3_RC4_IfcRelConnectsStructuralMember_type,IFC4X3_RC4_IfcRelContainedInSpatialStructure_type,IFC4X3_RC4_IfcRelCoversBldgElements_type,IFC4X3_RC4_IfcRelCoversSpaces_type,IFC4X3_RC4_IfcRelFillsElement_type,IFC4X3_RC4_IfcRelFlowControlElements_type,IFC4X3_RC4_IfcRelInterferesElements_type,IFC4X3_RC4_IfcRelPositions_type,IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type,IFC4X3_RC4_IfcRelSequence_type,IFC4X3_RC4_IfcRelServicesBuildings_type,IFC4X3_RC4_IfcRelSpaceBoundary_type + }); + IFC4X3_RC4_IfcRelConnectsElements_type->set_subtypes({ + IFC4X3_RC4_IfcRelConnectsPathElements_type,IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type + }); + IFC4X3_RC4_IfcRelConnectsStructuralMember_type->set_subtypes({ + IFC4X3_RC4_IfcRelConnectsWithEccentricity_type + }); + IFC4X3_RC4_IfcRelDefines_type->set_subtypes({ + IFC4X3_RC4_IfcRelDefinesByObject_type,IFC4X3_RC4_IfcRelDefinesByProperties_type,IFC4X3_RC4_IfcRelDefinesByTemplate_type,IFC4X3_RC4_IfcRelDefinesByType_type + }); + IFC4X3_RC4_IfcRelSpaceBoundary_type->set_subtypes({ + IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type + }); + IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type->set_subtypes({ + IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type + }); + IFC4X3_RC4_IfcCompositeCurveSegment_type->set_subtypes({ + IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type + }); + IFC4X3_RC4_IfcRevolvedAreaSolid_type->set_subtypes({ + IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type + }); + IFC4X3_RC4_IfcSectionedSolid_type->set_subtypes({ + IFC4X3_RC4_IfcSectionedSolidHorizontal_type + }); + IFC4X3_RC4_IfcRepresentation_type->set_subtypes({ + IFC4X3_RC4_IfcShapeModel_type,IFC4X3_RC4_IfcStyleModel_type + }); + IFC4X3_RC4_IfcShapeModel_type->set_subtypes({ + IFC4X3_RC4_IfcShapeRepresentation_type,IFC4X3_RC4_IfcTopologyRepresentation_type + }); + IFC4X3_RC4_IfcSlab_type->set_subtypes({ + IFC4X3_RC4_IfcSlabElementedCase_type,IFC4X3_RC4_IfcSlabStandardCase_type + }); + IFC4X3_RC4_IfcGeotechnicalStratum_type->set_subtypes({ + IFC4X3_RC4_IfcSolidStratum_type,IFC4X3_RC4_IfcVoidStratum_type,IFC4X3_RC4_IfcWaterStratum_type + }); + IFC4X3_RC4_IfcSpatialStructureElementType_type->set_subtypes({ + IFC4X3_RC4_IfcSpaceType_type + }); + IFC4X3_RC4_IfcSpatialElementType_type->set_subtypes({ + IFC4X3_RC4_IfcSpatialStructureElementType_type,IFC4X3_RC4_IfcSpatialZoneType_type + }); + IFC4X3_RC4_IfcStructuralActivity_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralAction_type,IFC4X3_RC4_IfcStructuralReaction_type + }); + IFC4X3_RC4_IfcStructuralItem_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralConnection_type,IFC4X3_RC4_IfcStructuralMember_type + }); + IFC4X3_RC4_IfcStructuralAction_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralCurveAction_type,IFC4X3_RC4_IfcStructuralPointAction_type,IFC4X3_RC4_IfcStructuralSurfaceAction_type + }); + IFC4X3_RC4_IfcStructuralConnection_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralCurveConnection_type,IFC4X3_RC4_IfcStructuralPointConnection_type,IFC4X3_RC4_IfcStructuralSurfaceConnection_type + }); + IFC4X3_RC4_IfcStructuralMember_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralCurveMember_type,IFC4X3_RC4_IfcStructuralSurfaceMember_type + }); + IFC4X3_RC4_IfcStructuralCurveMember_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralCurveMemberVarying_type + }); + IFC4X3_RC4_IfcStructuralReaction_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralCurveReaction_type,IFC4X3_RC4_IfcStructuralPointReaction_type,IFC4X3_RC4_IfcStructuralSurfaceReaction_type + }); + IFC4X3_RC4_IfcStructuralCurveAction_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLinearAction_type + }); + IFC4X3_RC4_IfcStructuralLoadGroup_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLoadCase_type + }); + IFC4X3_RC4_IfcStructuralLoad_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLoadConfiguration_type,IFC4X3_RC4_IfcStructuralLoadOrResult_type + }); + IFC4X3_RC4_IfcStructuralLoadStatic_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLoadLinearForce_type,IFC4X3_RC4_IfcStructuralLoadPlanarForce_type,IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type,IFC4X3_RC4_IfcStructuralLoadSingleForce_type,IFC4X3_RC4_IfcStructuralLoadTemperature_type + }); + IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type + }); + IFC4X3_RC4_IfcStructuralLoadSingleForce_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type + }); + IFC4X3_RC4_IfcStructuralLoadOrResult_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralLoadStatic_type,IFC4X3_RC4_IfcSurfaceReinforcementArea_type + }); + IFC4X3_RC4_IfcStructuralSurfaceAction_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralPlanarAction_type + }); + IFC4X3_RC4_IfcStructuralSurfaceMember_type->set_subtypes({ + IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type + }); + IFC4X3_RC4_IfcStyleModel_type->set_subtypes({ + IFC4X3_RC4_IfcStyledRepresentation_type + }); + IFC4X3_RC4_IfcSweptSurface_type->set_subtypes({ + IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type,IFC4X3_RC4_IfcSurfaceOfRevolution_type + }); + IFC4X3_RC4_IfcSurfaceStyleShading_type->set_subtypes({ + IFC4X3_RC4_IfcSurfaceStyleRendering_type + }); + IFC4X3_RC4_IfcSweptDiskSolid_type->set_subtypes({ + IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type + }); + IFC4X3_RC4_IfcTaskTime_type->set_subtypes({ + IFC4X3_RC4_IfcTaskTimeRecurring_type + }); + IFC4X3_RC4_IfcTextLiteral_type->set_subtypes({ + IFC4X3_RC4_IfcTextLiteralWithExtent_type + }); + IFC4X3_RC4_IfcPreDefinedTextFont_type->set_subtypes({ + IFC4X3_RC4_IfcTextStyleFontModel_type + }); + IFC4X3_RC4_IfcTriangulatedFaceSet_type->set_subtypes({ + IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type + }); + IFC4X3_RC4_IfcTypeObject_type->set_subtypes({ + IFC4X3_RC4_IfcTypeProcess_type,IFC4X3_RC4_IfcTypeProduct_type,IFC4X3_RC4_IfcTypeResource_type + }); + IFC4X3_RC4_IfcVertex_type->set_subtypes({ + IFC4X3_RC4_IfcVertexPoint_type + }); + IFC4X3_RC4_IfcWall_type->set_subtypes({ + IFC4X3_RC4_IfcWallElementedCase_type,IFC4X3_RC4_IfcWallStandardCase_type + }); + IFC4X3_RC4_IfcWindow_type->set_subtypes({ + IFC4X3_RC4_IfcWindowStandardCase_type + }); + IFC4X3_RC4_IfcWorkControl_type->set_subtypes({ + IFC4X3_RC4_IfcWorkPlan_type,IFC4X3_RC4_IfcWorkSchedule_type + }); - std::vector declarations; declarations.reserve(1316); - declarations.push_back(IFC4X3_RC4_IfcAbsorbedDoseMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcAccelerationMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcActionRequest_type); - declarations.push_back(IFC4X3_RC4_IfcActionRequestTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcActionSourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcActionTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcActor_type); - declarations.push_back(IFC4X3_RC4_IfcActorRole_type); - declarations.push_back(IFC4X3_RC4_IfcActorSelect_type); - declarations.push_back(IFC4X3_RC4_IfcActuator_type); - declarations.push_back(IFC4X3_RC4_IfcActuatorType_type); - declarations.push_back(IFC4X3_RC4_IfcActuatorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAddress_type); - declarations.push_back(IFC4X3_RC4_IfcAddressTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAdvancedBrep_type); - declarations.push_back(IFC4X3_RC4_IfcAdvancedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC4_IfcAdvancedFace_type); - declarations.push_back(IFC4X3_RC4_IfcAirTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcAirTerminalBox_type); - declarations.push_back(IFC4X3_RC4_IfcAirTerminalBoxType_type); - declarations.push_back(IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAirTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcAirTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAirToAirHeatRecovery_type); - declarations.push_back(IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type); - declarations.push_back(IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAlarm_type); - declarations.push_back(IFC4X3_RC4_IfcAlarmType_type); - declarations.push_back(IFC4X3_RC4_IfcAlarmTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAlignment_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentCant_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentCantSegment_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentHorizontal_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentHorizontalSegment_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentParameterSegment_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentSegment_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentVertical_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentVerticalSegment_type); - declarations.push_back(IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAmountOfSubstanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcAnalysisModelTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAngularVelocityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcAnnotation_type); - declarations.push_back(IFC4X3_RC4_IfcAnnotationFillArea_type); - declarations.push_back(IFC4X3_RC4_IfcAnnotationTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcApplication_type); - declarations.push_back(IFC4X3_RC4_IfcAppliedValue_type); - declarations.push_back(IFC4X3_RC4_IfcAppliedValueSelect_type); - declarations.push_back(IFC4X3_RC4_IfcApproval_type); - declarations.push_back(IFC4X3_RC4_IfcApprovalRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcArbitraryClosedProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcArbitraryOpenProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type); - declarations.push_back(IFC4X3_RC4_IfcArcIndex_type); - declarations.push_back(IFC4X3_RC4_IfcAreaDensityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcAreaMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcArithmeticOperatorEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAssemblyPlaceEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAsset_type); - declarations.push_back(IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcAudioVisualAppliance_type); - declarations.push_back(IFC4X3_RC4_IfcAudioVisualApplianceType_type); - declarations.push_back(IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcAxis1Placement_type); - declarations.push_back(IFC4X3_RC4_IfcAxis2Placement_type); - declarations.push_back(IFC4X3_RC4_IfcAxis2Placement2D_type); - declarations.push_back(IFC4X3_RC4_IfcAxis2Placement3D_type); - declarations.push_back(IFC4X3_RC4_IfcAxis2PlacementLinear_type); - declarations.push_back(IFC4X3_RC4_IfcBeam_type); - declarations.push_back(IFC4X3_RC4_IfcBeamStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcBeamType_type); - declarations.push_back(IFC4X3_RC4_IfcBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBearing_type); - declarations.push_back(IFC4X3_RC4_IfcBearingType_type); - declarations.push_back(IFC4X3_RC4_IfcBearingTypeDisplacementEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBearingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBenchmarkEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBendingParameterSelect_type); - declarations.push_back(IFC4X3_RC4_IfcBinary_type); - declarations.push_back(IFC4X3_RC4_IfcBlobTexture_type); - declarations.push_back(IFC4X3_RC4_IfcBlock_type); - declarations.push_back(IFC4X3_RC4_IfcBoiler_type); - declarations.push_back(IFC4X3_RC4_IfcBoilerType_type); - declarations.push_back(IFC4X3_RC4_IfcBoilerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBoolean_type); - declarations.push_back(IFC4X3_RC4_IfcBooleanClippingResult_type); - declarations.push_back(IFC4X3_RC4_IfcBooleanOperand_type); - declarations.push_back(IFC4X3_RC4_IfcBooleanOperator_type); - declarations.push_back(IFC4X3_RC4_IfcBooleanResult_type); - declarations.push_back(IFC4X3_RC4_IfcBorehole_type); - declarations.push_back(IFC4X3_RC4_IfcBoundaryCondition_type); - declarations.push_back(IFC4X3_RC4_IfcBoundaryCurve_type); - declarations.push_back(IFC4X3_RC4_IfcBoundaryEdgeCondition_type); - declarations.push_back(IFC4X3_RC4_IfcBoundaryFaceCondition_type); - declarations.push_back(IFC4X3_RC4_IfcBoundaryNodeCondition_type); - declarations.push_back(IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type); - declarations.push_back(IFC4X3_RC4_IfcBoundedCurve_type); - declarations.push_back(IFC4X3_RC4_IfcBoundedSurface_type); - declarations.push_back(IFC4X3_RC4_IfcBoundingBox_type); - declarations.push_back(IFC4X3_RC4_IfcBoxAlignment_type); - declarations.push_back(IFC4X3_RC4_IfcBoxedHalfSpace_type); - declarations.push_back(IFC4X3_RC4_IfcBridge_type); - declarations.push_back(IFC4X3_RC4_IfcBridgePartTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBridgeTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBSplineCurve_type); - declarations.push_back(IFC4X3_RC4_IfcBSplineCurveForm_type); - declarations.push_back(IFC4X3_RC4_IfcBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC4_IfcBSplineSurface_type); - declarations.push_back(IFC4X3_RC4_IfcBSplineSurfaceForm_type); - declarations.push_back(IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC4_IfcBuilding_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingElementPart_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingElementPartType_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingElementProxy_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingElementProxyType_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingStorey_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingSystem_type); - declarations.push_back(IFC4X3_RC4_IfcBuildingSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBuiltElement_type); - declarations.push_back(IFC4X3_RC4_IfcBuiltElementType_type); - declarations.push_back(IFC4X3_RC4_IfcBuiltSystem_type); - declarations.push_back(IFC4X3_RC4_IfcBuiltSystemTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcBurner_type); - declarations.push_back(IFC4X3_RC4_IfcBurnerType_type); - declarations.push_back(IFC4X3_RC4_IfcBurnerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCableCarrierFitting_type); - declarations.push_back(IFC4X3_RC4_IfcCableCarrierFittingType_type); - declarations.push_back(IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCableCarrierSegment_type); - declarations.push_back(IFC4X3_RC4_IfcCableCarrierSegmentType_type); - declarations.push_back(IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCableFitting_type); - declarations.push_back(IFC4X3_RC4_IfcCableFittingType_type); - declarations.push_back(IFC4X3_RC4_IfcCableFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCableSegment_type); - declarations.push_back(IFC4X3_RC4_IfcCableSegmentType_type); - declarations.push_back(IFC4X3_RC4_IfcCableSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCaissonFoundation_type); - declarations.push_back(IFC4X3_RC4_IfcCaissonFoundationType_type); - declarations.push_back(IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCardinalPointReference_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianPoint_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianPointList_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianPointList2D_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianPointList3D_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator2D_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator3D_type); - declarations.push_back(IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type); - declarations.push_back(IFC4X3_RC4_IfcCenterLineProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcChangeActionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcChiller_type); - declarations.push_back(IFC4X3_RC4_IfcChillerType_type); - declarations.push_back(IFC4X3_RC4_IfcChillerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcChimney_type); - declarations.push_back(IFC4X3_RC4_IfcChimneyType_type); - declarations.push_back(IFC4X3_RC4_IfcChimneyTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCircle_type); - declarations.push_back(IFC4X3_RC4_IfcCircleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcCircleProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcCivilElement_type); - declarations.push_back(IFC4X3_RC4_IfcCivilElementType_type); - declarations.push_back(IFC4X3_RC4_IfcClassification_type); - declarations.push_back(IFC4X3_RC4_IfcClassificationReference_type); - declarations.push_back(IFC4X3_RC4_IfcClassificationReferenceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcClassificationSelect_type); - declarations.push_back(IFC4X3_RC4_IfcClosedShell_type); - declarations.push_back(IFC4X3_RC4_IfcClothoid_type); - declarations.push_back(IFC4X3_RC4_IfcCoil_type); - declarations.push_back(IFC4X3_RC4_IfcCoilType_type); - declarations.push_back(IFC4X3_RC4_IfcCoilTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcColour_type); - declarations.push_back(IFC4X3_RC4_IfcColourOrFactor_type); - declarations.push_back(IFC4X3_RC4_IfcColourRgb_type); - declarations.push_back(IFC4X3_RC4_IfcColourRgbList_type); - declarations.push_back(IFC4X3_RC4_IfcColourSpecification_type); - declarations.push_back(IFC4X3_RC4_IfcColumn_type); - declarations.push_back(IFC4X3_RC4_IfcColumnStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcColumnType_type); - declarations.push_back(IFC4X3_RC4_IfcColumnTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC4_IfcCommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcComplexNumber_type); - declarations.push_back(IFC4X3_RC4_IfcComplexProperty_type); - declarations.push_back(IFC4X3_RC4_IfcComplexPropertyTemplate_type); - declarations.push_back(IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCompositeCurve_type); - declarations.push_back(IFC4X3_RC4_IfcCompositeCurveOnSurface_type); - declarations.push_back(IFC4X3_RC4_IfcCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC4_IfcCompositeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcCompressor_type); - declarations.push_back(IFC4X3_RC4_IfcCompressorType_type); - declarations.push_back(IFC4X3_RC4_IfcCompressorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCondenser_type); - declarations.push_back(IFC4X3_RC4_IfcCondenserType_type); - declarations.push_back(IFC4X3_RC4_IfcCondenserTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConic_type); - declarations.push_back(IFC4X3_RC4_IfcConnectedFaceSet_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionCurveGeometry_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionGeometry_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionPointEccentricity_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionPointGeometry_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionSurfaceGeometry_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConnectionVolumeGeometry_type); - declarations.push_back(IFC4X3_RC4_IfcConstraint_type); - declarations.push_back(IFC4X3_RC4_IfcConstraintEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionEquipmentResource_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionEquipmentResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionMaterialResource_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionMaterialResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionProductResource_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionProductResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionResource_type); - declarations.push_back(IFC4X3_RC4_IfcConstructionResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcContext_type); - declarations.push_back(IFC4X3_RC4_IfcContextDependentMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcContextDependentUnit_type); - declarations.push_back(IFC4X3_RC4_IfcControl_type); - declarations.push_back(IFC4X3_RC4_IfcController_type); - declarations.push_back(IFC4X3_RC4_IfcControllerType_type); - declarations.push_back(IFC4X3_RC4_IfcControllerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcConversionBasedUnit_type); - declarations.push_back(IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type); - declarations.push_back(IFC4X3_RC4_IfcConveyorSegment_type); - declarations.push_back(IFC4X3_RC4_IfcConveyorSegmentType_type); - declarations.push_back(IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCooledBeam_type); - declarations.push_back(IFC4X3_RC4_IfcCooledBeamType_type); - declarations.push_back(IFC4X3_RC4_IfcCooledBeamTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCoolingTower_type); - declarations.push_back(IFC4X3_RC4_IfcCoolingTowerType_type); - declarations.push_back(IFC4X3_RC4_IfcCoolingTowerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCoordinateOperation_type); - declarations.push_back(IFC4X3_RC4_IfcCoordinateReferenceSystem_type); - declarations.push_back(IFC4X3_RC4_IfcCoordinateReferenceSystemSelect_type); - declarations.push_back(IFC4X3_RC4_IfcCosine_type); - declarations.push_back(IFC4X3_RC4_IfcCostItem_type); - declarations.push_back(IFC4X3_RC4_IfcCostItemTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCostSchedule_type); - declarations.push_back(IFC4X3_RC4_IfcCostScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCostValue_type); - declarations.push_back(IFC4X3_RC4_IfcCountMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcCourse_type); - declarations.push_back(IFC4X3_RC4_IfcCourseType_type); - declarations.push_back(IFC4X3_RC4_IfcCourseTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCovering_type); - declarations.push_back(IFC4X3_RC4_IfcCoveringType_type); - declarations.push_back(IFC4X3_RC4_IfcCoveringTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCrewResource_type); - declarations.push_back(IFC4X3_RC4_IfcCrewResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcCrewResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCsgPrimitive3D_type); - declarations.push_back(IFC4X3_RC4_IfcCsgSelect_type); - declarations.push_back(IFC4X3_RC4_IfcCsgSolid_type); - declarations.push_back(IFC4X3_RC4_IfcCShapeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcCurrencyRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcCurtainWall_type); - declarations.push_back(IFC4X3_RC4_IfcCurtainWallType_type); - declarations.push_back(IFC4X3_RC4_IfcCurtainWallTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCurvatureMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcCurve_type); - declarations.push_back(IFC4X3_RC4_IfcCurveBoundedPlane_type); - declarations.push_back(IFC4X3_RC4_IfcCurveBoundedSurface_type); - declarations.push_back(IFC4X3_RC4_IfcCurveFontOrScaledCurveFontSelect_type); - declarations.push_back(IFC4X3_RC4_IfcCurveInterpolationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcCurveMeasureSelect_type); - declarations.push_back(IFC4X3_RC4_IfcCurveOnSurface_type); - declarations.push_back(IFC4X3_RC4_IfcCurveOrEdgeCurve_type); - declarations.push_back(IFC4X3_RC4_IfcCurveSegment_type); - declarations.push_back(IFC4X3_RC4_IfcCurveStyle_type); - declarations.push_back(IFC4X3_RC4_IfcCurveStyleFont_type); - declarations.push_back(IFC4X3_RC4_IfcCurveStyleFontAndScaling_type); - declarations.push_back(IFC4X3_RC4_IfcCurveStyleFontPattern_type); - declarations.push_back(IFC4X3_RC4_IfcCurveStyleFontSelect_type); - declarations.push_back(IFC4X3_RC4_IfcCylindricalSurface_type); - declarations.push_back(IFC4X3_RC4_IfcDamper_type); - declarations.push_back(IFC4X3_RC4_IfcDamperType_type); - declarations.push_back(IFC4X3_RC4_IfcDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDataOriginEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDate_type); - declarations.push_back(IFC4X3_RC4_IfcDateTime_type); - declarations.push_back(IFC4X3_RC4_IfcDayInMonthNumber_type); - declarations.push_back(IFC4X3_RC4_IfcDayInWeekNumber_type); - declarations.push_back(IFC4X3_RC4_IfcDeepFoundation_type); - declarations.push_back(IFC4X3_RC4_IfcDeepFoundationType_type); - declarations.push_back(IFC4X3_RC4_IfcDefinitionSelect_type); - declarations.push_back(IFC4X3_RC4_IfcDerivedMeasureValue_type); - declarations.push_back(IFC4X3_RC4_IfcDerivedProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcDerivedUnit_type); - declarations.push_back(IFC4X3_RC4_IfcDerivedUnitElement_type); - declarations.push_back(IFC4X3_RC4_IfcDerivedUnitEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDescriptiveMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcDimensionalExponents_type); - declarations.push_back(IFC4X3_RC4_IfcDimensionCount_type); - declarations.push_back(IFC4X3_RC4_IfcDirection_type); - declarations.push_back(IFC4X3_RC4_IfcDirectionSenseEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcDiscreteAccessory_type); - declarations.push_back(IFC4X3_RC4_IfcDiscreteAccessoryType_type); - declarations.push_back(IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionBoard_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionBoardType_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionChamberElement_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionChamberElementType_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionCircuit_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionControlElement_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionControlElementType_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionElement_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionElementType_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionFlowElement_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionFlowElementType_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionPort_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionPortTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionSystem_type); - declarations.push_back(IFC4X3_RC4_IfcDistributionSystemEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDocumentConfidentialityEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDocumentInformation_type); - declarations.push_back(IFC4X3_RC4_IfcDocumentInformationRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcDocumentReference_type); - declarations.push_back(IFC4X3_RC4_IfcDocumentSelect_type); - declarations.push_back(IFC4X3_RC4_IfcDocumentStatusEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoor_type); - declarations.push_back(IFC4X3_RC4_IfcDoorLiningProperties_type); - declarations.push_back(IFC4X3_RC4_IfcDoorPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoorPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoorPanelProperties_type); - declarations.push_back(IFC4X3_RC4_IfcDoorStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcDoorStyle_type); - declarations.push_back(IFC4X3_RC4_IfcDoorStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoorStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoorType_type); - declarations.push_back(IFC4X3_RC4_IfcDoorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoorTypeOperationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDoseEquivalentMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcDraughtingPreDefinedColour_type); - declarations.push_back(IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC4_IfcDuctFitting_type); - declarations.push_back(IFC4X3_RC4_IfcDuctFittingType_type); - declarations.push_back(IFC4X3_RC4_IfcDuctFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDuctSegment_type); - declarations.push_back(IFC4X3_RC4_IfcDuctSegmentType_type); - declarations.push_back(IFC4X3_RC4_IfcDuctSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDuctSilencer_type); - declarations.push_back(IFC4X3_RC4_IfcDuctSilencerType_type); - declarations.push_back(IFC4X3_RC4_IfcDuctSilencerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcDuration_type); - declarations.push_back(IFC4X3_RC4_IfcDynamicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcEarthworksCut_type); - declarations.push_back(IFC4X3_RC4_IfcEarthworksCutTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcEarthworksElement_type); - declarations.push_back(IFC4X3_RC4_IfcEarthworksFill_type); - declarations.push_back(IFC4X3_RC4_IfcEarthworksFillTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcEdge_type); - declarations.push_back(IFC4X3_RC4_IfcEdgeCurve_type); - declarations.push_back(IFC4X3_RC4_IfcEdgeLoop_type); - declarations.push_back(IFC4X3_RC4_IfcElectricAppliance_type); - declarations.push_back(IFC4X3_RC4_IfcElectricApplianceType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricCapacitanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcElectricChargeMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcElectricConductanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcElectricCurrentMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcElectricDistributionBoard_type); - declarations.push_back(IFC4X3_RC4_IfcElectricDistributionBoardType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricGenerator_type); - declarations.push_back(IFC4X3_RC4_IfcElectricGeneratorType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricMotor_type); - declarations.push_back(IFC4X3_RC4_IfcElectricMotorType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricMotorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricResistanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcElectricTimeControl_type); - declarations.push_back(IFC4X3_RC4_IfcElectricTimeControlType_type); - declarations.push_back(IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElectricVoltageMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcElement_type); - declarations.push_back(IFC4X3_RC4_IfcElementarySurface_type); - declarations.push_back(IFC4X3_RC4_IfcElementAssembly_type); - declarations.push_back(IFC4X3_RC4_IfcElementAssemblyType_type); - declarations.push_back(IFC4X3_RC4_IfcElementAssemblyTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElementComponent_type); - declarations.push_back(IFC4X3_RC4_IfcElementComponentType_type); - declarations.push_back(IFC4X3_RC4_IfcElementCompositionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcElementQuantity_type); - declarations.push_back(IFC4X3_RC4_IfcElementType_type); - declarations.push_back(IFC4X3_RC4_IfcEllipse_type); - declarations.push_back(IFC4X3_RC4_IfcEllipseProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcEnergyConversionDevice_type); - declarations.push_back(IFC4X3_RC4_IfcEnergyConversionDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcEnergyMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcEngine_type); - declarations.push_back(IFC4X3_RC4_IfcEngineType_type); - declarations.push_back(IFC4X3_RC4_IfcEngineTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcEvaporativeCooler_type); - declarations.push_back(IFC4X3_RC4_IfcEvaporativeCoolerType_type); - declarations.push_back(IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcEvaporator_type); - declarations.push_back(IFC4X3_RC4_IfcEvaporatorType_type); - declarations.push_back(IFC4X3_RC4_IfcEvaporatorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcEvent_type); - declarations.push_back(IFC4X3_RC4_IfcEventTime_type); - declarations.push_back(IFC4X3_RC4_IfcEventTriggerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcEventType_type); - declarations.push_back(IFC4X3_RC4_IfcEventTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcExtendedProperties_type); - declarations.push_back(IFC4X3_RC4_IfcExternalInformation_type); - declarations.push_back(IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type); - declarations.push_back(IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type); - declarations.push_back(IFC4X3_RC4_IfcExternallyDefinedTextFont_type); - declarations.push_back(IFC4X3_RC4_IfcExternalReference_type); - declarations.push_back(IFC4X3_RC4_IfcExternalReferenceRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcExternalSpatialElement_type); - declarations.push_back(IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcExternalSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC4_IfcExtrudedAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC4_IfcFace_type); - declarations.push_back(IFC4X3_RC4_IfcFaceBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC4_IfcFaceBound_type); - declarations.push_back(IFC4X3_RC4_IfcFaceOuterBound_type); - declarations.push_back(IFC4X3_RC4_IfcFaceSurface_type); - declarations.push_back(IFC4X3_RC4_IfcFacetedBrep_type); - declarations.push_back(IFC4X3_RC4_IfcFacetedBrepWithVoids_type); - declarations.push_back(IFC4X3_RC4_IfcFacility_type); - declarations.push_back(IFC4X3_RC4_IfcFacilityPart_type); - declarations.push_back(IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFacilityPartTypeSelect_type); - declarations.push_back(IFC4X3_RC4_IfcFacilityUsageEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFailureConnectionCondition_type); - declarations.push_back(IFC4X3_RC4_IfcFan_type); - declarations.push_back(IFC4X3_RC4_IfcFanType_type); - declarations.push_back(IFC4X3_RC4_IfcFanTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFastener_type); - declarations.push_back(IFC4X3_RC4_IfcFastenerType_type); - declarations.push_back(IFC4X3_RC4_IfcFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFeatureElement_type); - declarations.push_back(IFC4X3_RC4_IfcFeatureElementAddition_type); - declarations.push_back(IFC4X3_RC4_IfcFeatureElementSubtraction_type); - declarations.push_back(IFC4X3_RC4_IfcFillAreaStyle_type); - declarations.push_back(IFC4X3_RC4_IfcFillAreaStyleHatching_type); - declarations.push_back(IFC4X3_RC4_IfcFillAreaStyleTiles_type); - declarations.push_back(IFC4X3_RC4_IfcFillStyleSelect_type); - declarations.push_back(IFC4X3_RC4_IfcFilter_type); - declarations.push_back(IFC4X3_RC4_IfcFilterType_type); - declarations.push_back(IFC4X3_RC4_IfcFilterTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFireSuppressionTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcFireSuppressionTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcFlowController_type); - declarations.push_back(IFC4X3_RC4_IfcFlowControllerType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowDirectionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFlowFitting_type); - declarations.push_back(IFC4X3_RC4_IfcFlowFittingType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowInstrument_type); - declarations.push_back(IFC4X3_RC4_IfcFlowInstrumentType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFlowMeter_type); - declarations.push_back(IFC4X3_RC4_IfcFlowMeterType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowMeterTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcFlowMovingDevice_type); - declarations.push_back(IFC4X3_RC4_IfcFlowMovingDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowSegment_type); - declarations.push_back(IFC4X3_RC4_IfcFlowSegmentType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowStorageDevice_type); - declarations.push_back(IFC4X3_RC4_IfcFlowStorageDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcFlowTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcFlowTreatmentDevice_type); - declarations.push_back(IFC4X3_RC4_IfcFlowTreatmentDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcFontStyle_type); - declarations.push_back(IFC4X3_RC4_IfcFontVariant_type); - declarations.push_back(IFC4X3_RC4_IfcFontWeight_type); - declarations.push_back(IFC4X3_RC4_IfcFooting_type); - declarations.push_back(IFC4X3_RC4_IfcFootingType_type); - declarations.push_back(IFC4X3_RC4_IfcFootingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcForceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcFurnishingElement_type); - declarations.push_back(IFC4X3_RC4_IfcFurnishingElementType_type); - declarations.push_back(IFC4X3_RC4_IfcFurniture_type); - declarations.push_back(IFC4X3_RC4_IfcFurnitureType_type); - declarations.push_back(IFC4X3_RC4_IfcFurnitureTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcGeographicElement_type); - declarations.push_back(IFC4X3_RC4_IfcGeographicElementType_type); - declarations.push_back(IFC4X3_RC4_IfcGeographicElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricCurveSet_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricProjectionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricRepresentationContext_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricRepresentationItem_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricRepresentationSubContext_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricSet_type); - declarations.push_back(IFC4X3_RC4_IfcGeometricSetSelect_type); - declarations.push_back(IFC4X3_RC4_IfcGeomodel_type); - declarations.push_back(IFC4X3_RC4_IfcGeoslice_type); - declarations.push_back(IFC4X3_RC4_IfcGeotechnicalAssembly_type); - declarations.push_back(IFC4X3_RC4_IfcGeotechnicalElement_type); - declarations.push_back(IFC4X3_RC4_IfcGeotechnicalStratum_type); - declarations.push_back(IFC4X3_RC4_IfcGloballyUniqueId_type); - declarations.push_back(IFC4X3_RC4_IfcGlobalOrLocalEnum_type); - declarations.push_back(IFC4X3_RC4_IfcGradientCurve_type); - declarations.push_back(IFC4X3_RC4_IfcGrid_type); - declarations.push_back(IFC4X3_RC4_IfcGridAxis_type); - declarations.push_back(IFC4X3_RC4_IfcGridPlacement_type); - declarations.push_back(IFC4X3_RC4_IfcGridPlacementDirectionSelect_type); - declarations.push_back(IFC4X3_RC4_IfcGridTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcGroup_type); - declarations.push_back(IFC4X3_RC4_IfcHalfSpaceSolid_type); - declarations.push_back(IFC4X3_RC4_IfcHatchLineDistanceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcHeatExchanger_type); - declarations.push_back(IFC4X3_RC4_IfcHeatExchangerType_type); - declarations.push_back(IFC4X3_RC4_IfcHeatExchangerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcHeatFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcHeatingValueMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcHumidifier_type); - declarations.push_back(IFC4X3_RC4_IfcHumidifierType_type); - declarations.push_back(IFC4X3_RC4_IfcHumidifierTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcIdentifier_type); - declarations.push_back(IFC4X3_RC4_IfcIlluminanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcImageTexture_type); - declarations.push_back(IFC4X3_RC4_IfcImpactProtectionDevice_type); - declarations.push_back(IFC4X3_RC4_IfcImpactProtectionDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type); - declarations.push_back(IFC4X3_RC4_IfcIndexedColourMap_type); - declarations.push_back(IFC4X3_RC4_IfcIndexedPolyCurve_type); - declarations.push_back(IFC4X3_RC4_IfcIndexedPolygonalFace_type); - declarations.push_back(IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type); - declarations.push_back(IFC4X3_RC4_IfcIndexedTextureMap_type); - declarations.push_back(IFC4X3_RC4_IfcIndexedTriangleTextureMap_type); - declarations.push_back(IFC4X3_RC4_IfcInductanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcInteger_type); - declarations.push_back(IFC4X3_RC4_IfcIntegerCountRateMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcInterceptor_type); - declarations.push_back(IFC4X3_RC4_IfcInterceptorType_type); - declarations.push_back(IFC4X3_RC4_IfcInterceptorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcInterferenceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcInternalOrExternalEnum_type); - declarations.push_back(IFC4X3_RC4_IfcIntersectionCurve_type); - declarations.push_back(IFC4X3_RC4_IfcInventory_type); - declarations.push_back(IFC4X3_RC4_IfcInventoryTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcIonConcentrationMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcIrregularTimeSeries_type); - declarations.push_back(IFC4X3_RC4_IfcIrregularTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC4_IfcIShapeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcIsothermalMoistureCapacityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcJunctionBox_type); - declarations.push_back(IFC4X3_RC4_IfcJunctionBoxType_type); - declarations.push_back(IFC4X3_RC4_IfcJunctionBoxTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcKerb_type); - declarations.push_back(IFC4X3_RC4_IfcKerbType_type); - declarations.push_back(IFC4X3_RC4_IfcKinematicViscosityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcKnotType_type); - declarations.push_back(IFC4X3_RC4_IfcLabel_type); - declarations.push_back(IFC4X3_RC4_IfcLaborResource_type); - declarations.push_back(IFC4X3_RC4_IfcLaborResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcLaborResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLagTime_type); - declarations.push_back(IFC4X3_RC4_IfcLamp_type); - declarations.push_back(IFC4X3_RC4_IfcLampType_type); - declarations.push_back(IFC4X3_RC4_IfcLampTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLanguageId_type); - declarations.push_back(IFC4X3_RC4_IfcLayeredItem_type); - declarations.push_back(IFC4X3_RC4_IfcLayerSetDirectionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLengthMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLibraryInformation_type); - declarations.push_back(IFC4X3_RC4_IfcLibraryReference_type); - declarations.push_back(IFC4X3_RC4_IfcLibrarySelect_type); - declarations.push_back(IFC4X3_RC4_IfcLightDistributionCurveEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLightDistributionData_type); - declarations.push_back(IFC4X3_RC4_IfcLightDistributionDataSourceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcLightEmissionSourceEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLightFixture_type); - declarations.push_back(IFC4X3_RC4_IfcLightFixtureType_type); - declarations.push_back(IFC4X3_RC4_IfcLightFixtureTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLightIntensityDistribution_type); - declarations.push_back(IFC4X3_RC4_IfcLightSource_type); - declarations.push_back(IFC4X3_RC4_IfcLightSourceAmbient_type); - declarations.push_back(IFC4X3_RC4_IfcLightSourceDirectional_type); - declarations.push_back(IFC4X3_RC4_IfcLightSourceGoniometric_type); - declarations.push_back(IFC4X3_RC4_IfcLightSourcePositional_type); - declarations.push_back(IFC4X3_RC4_IfcLightSourceSpot_type); - declarations.push_back(IFC4X3_RC4_IfcLine_type); - declarations.push_back(IFC4X3_RC4_IfcLinearElement_type); - declarations.push_back(IFC4X3_RC4_IfcLinearForceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLinearMomentMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLinearPlacement_type); - declarations.push_back(IFC4X3_RC4_IfcLinearPositioningElement_type); - declarations.push_back(IFC4X3_RC4_IfcLinearStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLinearVelocityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLineIndex_type); - declarations.push_back(IFC4X3_RC4_IfcLiquidTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcLiquidTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLoadGroupTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLocalPlacement_type); - declarations.push_back(IFC4X3_RC4_IfcLogical_type); - declarations.push_back(IFC4X3_RC4_IfcLogicalOperatorEnum_type); - declarations.push_back(IFC4X3_RC4_IfcLoop_type); - declarations.push_back(IFC4X3_RC4_IfcLShapeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcLuminousFluxMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcLuminousIntensityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMagneticFluxDensityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMagneticFluxMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcManifoldSolidBrep_type); - declarations.push_back(IFC4X3_RC4_IfcMapConversion_type); - declarations.push_back(IFC4X3_RC4_IfcMappedItem_type); - declarations.push_back(IFC4X3_RC4_IfcMarineFacility_type); - declarations.push_back(IFC4X3_RC4_IfcMarineFacilityTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcMarinePartTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcMassDensityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMassFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMassMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMassPerLengthMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMaterial_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialClassificationRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialConstituent_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialConstituentSet_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialDefinition_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialLayer_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialLayerSet_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialLayerSetUsage_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialLayerWithOffsets_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialList_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialProfile_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialProfileSet_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialProfileSetUsage_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialProfileWithOffsets_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialProperties_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialSelect_type); - declarations.push_back(IFC4X3_RC4_IfcMaterialUsageDefinition_type); - declarations.push_back(IFC4X3_RC4_IfcMeasureValue_type); - declarations.push_back(IFC4X3_RC4_IfcMeasureWithUnit_type); - declarations.push_back(IFC4X3_RC4_IfcMechanicalFastener_type); - declarations.push_back(IFC4X3_RC4_IfcMechanicalFastenerType_type); - declarations.push_back(IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcMedicalDevice_type); - declarations.push_back(IFC4X3_RC4_IfcMedicalDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcMember_type); - declarations.push_back(IFC4X3_RC4_IfcMemberStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcMemberType_type); - declarations.push_back(IFC4X3_RC4_IfcMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcMetric_type); - declarations.push_back(IFC4X3_RC4_IfcMetricValueSelect_type); - declarations.push_back(IFC4X3_RC4_IfcMirroredProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type); - declarations.push_back(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type); - declarations.push_back(IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfElasticityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type); - declarations.push_back(IFC4X3_RC4_IfcMoistureDiffusivityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMolecularWeightMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMomentOfInertiaMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMonetaryMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcMonetaryUnit_type); - declarations.push_back(IFC4X3_RC4_IfcMonthInYearNumber_type); - declarations.push_back(IFC4X3_RC4_IfcMooringDevice_type); - declarations.push_back(IFC4X3_RC4_IfcMooringDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcMooringDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcMotorConnection_type); - declarations.push_back(IFC4X3_RC4_IfcMotorConnectionType_type); - declarations.push_back(IFC4X3_RC4_IfcMotorConnectionTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcNamedUnit_type); - declarations.push_back(IFC4X3_RC4_IfcNavigationElement_type); - declarations.push_back(IFC4X3_RC4_IfcNavigationElementType_type); - declarations.push_back(IFC4X3_RC4_IfcNavigationElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcNonNegativeLengthMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcNormalisedRatioMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcNumericMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcObject_type); - declarations.push_back(IFC4X3_RC4_IfcObjectDefinition_type); - declarations.push_back(IFC4X3_RC4_IfcObjective_type); - declarations.push_back(IFC4X3_RC4_IfcObjectiveEnum_type); - declarations.push_back(IFC4X3_RC4_IfcObjectPlacement_type); - declarations.push_back(IFC4X3_RC4_IfcObjectReferenceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcObjectTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcOccupant_type); - declarations.push_back(IFC4X3_RC4_IfcOccupantTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcOffsetCurve_type); - declarations.push_back(IFC4X3_RC4_IfcOffsetCurve2D_type); - declarations.push_back(IFC4X3_RC4_IfcOffsetCurve3D_type); - declarations.push_back(IFC4X3_RC4_IfcOffsetCurveByDistances_type); - declarations.push_back(IFC4X3_RC4_IfcOpenCrossProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcOpeningElement_type); - declarations.push_back(IFC4X3_RC4_IfcOpeningElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcOpeningStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcOpenShell_type); - declarations.push_back(IFC4X3_RC4_IfcOrganization_type); - declarations.push_back(IFC4X3_RC4_IfcOrganizationRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcOrientedEdge_type); - declarations.push_back(IFC4X3_RC4_IfcOuterBoundaryCurve_type); - declarations.push_back(IFC4X3_RC4_IfcOutlet_type); - declarations.push_back(IFC4X3_RC4_IfcOutletType_type); - declarations.push_back(IFC4X3_RC4_IfcOutletTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcOwnerHistory_type); - declarations.push_back(IFC4X3_RC4_IfcParameterizedProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcParameterValue_type); - declarations.push_back(IFC4X3_RC4_IfcPath_type); - declarations.push_back(IFC4X3_RC4_IfcPavement_type); - declarations.push_back(IFC4X3_RC4_IfcPavementType_type); - declarations.push_back(IFC4X3_RC4_IfcPavementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPcurve_type); - declarations.push_back(IFC4X3_RC4_IfcPerformanceHistory_type); - declarations.push_back(IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPermeableCoveringProperties_type); - declarations.push_back(IFC4X3_RC4_IfcPermit_type); - declarations.push_back(IFC4X3_RC4_IfcPermitTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPerson_type); - declarations.push_back(IFC4X3_RC4_IfcPersonAndOrganization_type); - declarations.push_back(IFC4X3_RC4_IfcPHMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPhysicalComplexQuantity_type); - declarations.push_back(IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPhysicalQuantity_type); - declarations.push_back(IFC4X3_RC4_IfcPhysicalSimpleQuantity_type); - declarations.push_back(IFC4X3_RC4_IfcPile_type); - declarations.push_back(IFC4X3_RC4_IfcPileConstructionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPileType_type); - declarations.push_back(IFC4X3_RC4_IfcPileTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPipeFitting_type); - declarations.push_back(IFC4X3_RC4_IfcPipeFittingType_type); - declarations.push_back(IFC4X3_RC4_IfcPipeFittingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPipeSegment_type); - declarations.push_back(IFC4X3_RC4_IfcPipeSegmentType_type); - declarations.push_back(IFC4X3_RC4_IfcPipeSegmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPixelTexture_type); - declarations.push_back(IFC4X3_RC4_IfcPlacement_type); - declarations.push_back(IFC4X3_RC4_IfcPlanarBox_type); - declarations.push_back(IFC4X3_RC4_IfcPlanarExtent_type); - declarations.push_back(IFC4X3_RC4_IfcPlanarForceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPlane_type); - declarations.push_back(IFC4X3_RC4_IfcPlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPlant_type); - declarations.push_back(IFC4X3_RC4_IfcPlate_type); - declarations.push_back(IFC4X3_RC4_IfcPlateStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcPlateType_type); - declarations.push_back(IFC4X3_RC4_IfcPlateTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPoint_type); - declarations.push_back(IFC4X3_RC4_IfcPointByDistanceExpression_type); - declarations.push_back(IFC4X3_RC4_IfcPointOnCurve_type); - declarations.push_back(IFC4X3_RC4_IfcPointOnSurface_type); - declarations.push_back(IFC4X3_RC4_IfcPointOrVertexPoint_type); - declarations.push_back(IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type); - declarations.push_back(IFC4X3_RC4_IfcPolygonalFaceSet_type); - declarations.push_back(IFC4X3_RC4_IfcPolyline_type); - declarations.push_back(IFC4X3_RC4_IfcPolyLoop_type); - declarations.push_back(IFC4X3_RC4_IfcPolynomialCurve_type); - declarations.push_back(IFC4X3_RC4_IfcPort_type); - declarations.push_back(IFC4X3_RC4_IfcPositioningElement_type); - declarations.push_back(IFC4X3_RC4_IfcPositiveInteger_type); - declarations.push_back(IFC4X3_RC4_IfcPositiveLengthMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPositiveRatioMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPostalAddress_type); - declarations.push_back(IFC4X3_RC4_IfcPowerMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcPreDefinedColour_type); - declarations.push_back(IFC4X3_RC4_IfcPreDefinedCurveFont_type); - declarations.push_back(IFC4X3_RC4_IfcPreDefinedItem_type); - declarations.push_back(IFC4X3_RC4_IfcPreDefinedProperties_type); - declarations.push_back(IFC4X3_RC4_IfcPreDefinedPropertySet_type); - declarations.push_back(IFC4X3_RC4_IfcPreDefinedTextFont_type); - declarations.push_back(IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcPresentableText_type); - declarations.push_back(IFC4X3_RC4_IfcPresentationItem_type); - declarations.push_back(IFC4X3_RC4_IfcPresentationLayerAssignment_type); - declarations.push_back(IFC4X3_RC4_IfcPresentationLayerWithStyle_type); - declarations.push_back(IFC4X3_RC4_IfcPresentationStyle_type); - declarations.push_back(IFC4X3_RC4_IfcPressureMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcProcedure_type); - declarations.push_back(IFC4X3_RC4_IfcProcedureType_type); - declarations.push_back(IFC4X3_RC4_IfcProcedureTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProcess_type); - declarations.push_back(IFC4X3_RC4_IfcProcessSelect_type); - declarations.push_back(IFC4X3_RC4_IfcProduct_type); - declarations.push_back(IFC4X3_RC4_IfcProductDefinitionShape_type); - declarations.push_back(IFC4X3_RC4_IfcProductRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcProductRepresentationSelect_type); - declarations.push_back(IFC4X3_RC4_IfcProductSelect_type); - declarations.push_back(IFC4X3_RC4_IfcProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcProfileProperties_type); - declarations.push_back(IFC4X3_RC4_IfcProfileTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProject_type); - declarations.push_back(IFC4X3_RC4_IfcProjectedCRS_type); - declarations.push_back(IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProjectionElement_type); - declarations.push_back(IFC4X3_RC4_IfcProjectionElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProjectLibrary_type); - declarations.push_back(IFC4X3_RC4_IfcProjectOrder_type); - declarations.push_back(IFC4X3_RC4_IfcProjectOrderTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProperty_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyAbstraction_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyBoundedValue_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyDefinition_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyDependencyRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyEnumeratedValue_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyEnumeration_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyListValue_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyReferenceValue_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySet_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySetDefinition_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySetDefinitionSelect_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySetDefinitionSet_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySetTemplate_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcPropertySingleValue_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyTableValue_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyTemplate_type); - declarations.push_back(IFC4X3_RC4_IfcPropertyTemplateDefinition_type); - declarations.push_back(IFC4X3_RC4_IfcProtectiveDevice_type); - declarations.push_back(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type); - declarations.push_back(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type); - declarations.push_back(IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProtectiveDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcProxy_type); - declarations.push_back(IFC4X3_RC4_IfcPump_type); - declarations.push_back(IFC4X3_RC4_IfcPumpType_type); - declarations.push_back(IFC4X3_RC4_IfcPumpTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcQuantityArea_type); - declarations.push_back(IFC4X3_RC4_IfcQuantityCount_type); - declarations.push_back(IFC4X3_RC4_IfcQuantityLength_type); - declarations.push_back(IFC4X3_RC4_IfcQuantitySet_type); - declarations.push_back(IFC4X3_RC4_IfcQuantityTime_type); - declarations.push_back(IFC4X3_RC4_IfcQuantityVolume_type); - declarations.push_back(IFC4X3_RC4_IfcQuantityWeight_type); - declarations.push_back(IFC4X3_RC4_IfcRadioActivityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcRail_type); - declarations.push_back(IFC4X3_RC4_IfcRailing_type); - declarations.push_back(IFC4X3_RC4_IfcRailingType_type); - declarations.push_back(IFC4X3_RC4_IfcRailingTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRailType_type); - declarations.push_back(IFC4X3_RC4_IfcRailTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRailway_type); - declarations.push_back(IFC4X3_RC4_IfcRailwayPartTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRailwayTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRamp_type); - declarations.push_back(IFC4X3_RC4_IfcRampFlight_type); - declarations.push_back(IFC4X3_RC4_IfcRampFlightType_type); - declarations.push_back(IFC4X3_RC4_IfcRampFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRampType_type); - declarations.push_back(IFC4X3_RC4_IfcRampTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRatioMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type); - declarations.push_back(IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type); - declarations.push_back(IFC4X3_RC4_IfcReal_type); - declarations.push_back(IFC4X3_RC4_IfcRectangleHollowProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcRectangularPyramid_type); - declarations.push_back(IFC4X3_RC4_IfcRectangularTrimmedSurface_type); - declarations.push_back(IFC4X3_RC4_IfcRecurrencePattern_type); - declarations.push_back(IFC4X3_RC4_IfcRecurrenceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcReference_type); - declarations.push_back(IFC4X3_RC4_IfcReferent_type); - declarations.push_back(IFC4X3_RC4_IfcReferentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcReflectanceMethodEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRegularTimeSeries_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcedSoil_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcementBarProperties_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcementDefinitionProperties_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingBar_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingBarRoleEnum_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingBarType_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingBarTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingElement_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingElementType_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingMesh_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingMeshType_type); - declarations.push_back(IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRelAdheresToElement_type); - declarations.push_back(IFC4X3_RC4_IfcRelAggregates_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssigns_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToActor_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToControl_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToGroup_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToProcess_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToProduct_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssignsToResource_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociates_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesApproval_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesClassification_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesConstraint_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesDocument_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesLibrary_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesMaterial_type); - declarations.push_back(IFC4X3_RC4_IfcRelAssociatesProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnects_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsElements_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsPathElements_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsPorts_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsPortToElement_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsStructuralActivity_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsStructuralMember_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsWithEccentricity_type); - declarations.push_back(IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type); - declarations.push_back(IFC4X3_RC4_IfcRelContainedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC4_IfcRelCoversBldgElements_type); - declarations.push_back(IFC4X3_RC4_IfcRelCoversSpaces_type); - declarations.push_back(IFC4X3_RC4_IfcRelDeclares_type); - declarations.push_back(IFC4X3_RC4_IfcRelDecomposes_type); - declarations.push_back(IFC4X3_RC4_IfcRelDefines_type); - declarations.push_back(IFC4X3_RC4_IfcRelDefinesByObject_type); - declarations.push_back(IFC4X3_RC4_IfcRelDefinesByProperties_type); - declarations.push_back(IFC4X3_RC4_IfcRelDefinesByTemplate_type); - declarations.push_back(IFC4X3_RC4_IfcRelDefinesByType_type); - declarations.push_back(IFC4X3_RC4_IfcRelFillsElement_type); - declarations.push_back(IFC4X3_RC4_IfcRelFlowControlElements_type); - declarations.push_back(IFC4X3_RC4_IfcRelInterferesElements_type); - declarations.push_back(IFC4X3_RC4_IfcRelNests_type); - declarations.push_back(IFC4X3_RC4_IfcRelPositions_type); - declarations.push_back(IFC4X3_RC4_IfcRelProjectsElement_type); - declarations.push_back(IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type); - declarations.push_back(IFC4X3_RC4_IfcRelSequence_type); - declarations.push_back(IFC4X3_RC4_IfcRelServicesBuildings_type); - declarations.push_back(IFC4X3_RC4_IfcRelSpaceBoundary_type); - declarations.push_back(IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type); - declarations.push_back(IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type); - declarations.push_back(IFC4X3_RC4_IfcRelVoidsElement_type); - declarations.push_back(IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type); - declarations.push_back(IFC4X3_RC4_IfcRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcRepresentationContext_type); - declarations.push_back(IFC4X3_RC4_IfcRepresentationItem_type); - declarations.push_back(IFC4X3_RC4_IfcRepresentationMap_type); - declarations.push_back(IFC4X3_RC4_IfcResource_type); - declarations.push_back(IFC4X3_RC4_IfcResourceApprovalRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcResourceConstraintRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcResourceLevelRelationship_type); - declarations.push_back(IFC4X3_RC4_IfcResourceObjectSelect_type); - declarations.push_back(IFC4X3_RC4_IfcResourceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcResourceTime_type); - declarations.push_back(IFC4X3_RC4_IfcRevolvedAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type); - declarations.push_back(IFC4X3_RC4_IfcRightCircularCone_type); - declarations.push_back(IFC4X3_RC4_IfcRightCircularCylinder_type); - declarations.push_back(IFC4X3_RC4_IfcRoad_type); - declarations.push_back(IFC4X3_RC4_IfcRoadPartTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRoadTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRoleEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRoof_type); - declarations.push_back(IFC4X3_RC4_IfcRoofType_type); - declarations.push_back(IFC4X3_RC4_IfcRoofTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcRoot_type); - declarations.push_back(IFC4X3_RC4_IfcRotationalFrequencyMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcRotationalMassMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcRotationalStiffnessMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcRotationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC4_IfcRoundedRectangleProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcSanitaryTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcSanitaryTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSchedulingTime_type); - declarations.push_back(IFC4X3_RC4_IfcSeamCurve_type); - declarations.push_back(IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_RC4_IfcSectionalAreaIntegralMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSectionedSolid_type); - declarations.push_back(IFC4X3_RC4_IfcSectionedSolidHorizontal_type); - declarations.push_back(IFC4X3_RC4_IfcSectionedSpine_type); - declarations.push_back(IFC4X3_RC4_IfcSectionedSurface_type); - declarations.push_back(IFC4X3_RC4_IfcSectionModulusMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSectionProperties_type); - declarations.push_back(IFC4X3_RC4_IfcSectionReinforcementProperties_type); - declarations.push_back(IFC4X3_RC4_IfcSectionTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSegment_type); - declarations.push_back(IFC4X3_RC4_IfcSegmentedReferenceCurve_type); - declarations.push_back(IFC4X3_RC4_IfcSegmentIndexSelect_type); - declarations.push_back(IFC4X3_RC4_IfcSensor_type); - declarations.push_back(IFC4X3_RC4_IfcSensorType_type); - declarations.push_back(IFC4X3_RC4_IfcSensorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSequenceEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_RC4_IfcShadingDevice_type); - declarations.push_back(IFC4X3_RC4_IfcShadingDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcShadingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcShapeAspect_type); - declarations.push_back(IFC4X3_RC4_IfcShapeModel_type); - declarations.push_back(IFC4X3_RC4_IfcShapeRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcShearModulusMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcShell_type); - declarations.push_back(IFC4X3_RC4_IfcShellBasedSurfaceModel_type); - declarations.push_back(IFC4X3_RC4_IfcSign_type); - declarations.push_back(IFC4X3_RC4_IfcSignal_type); - declarations.push_back(IFC4X3_RC4_IfcSignalType_type); - declarations.push_back(IFC4X3_RC4_IfcSignalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSignType_type); - declarations.push_back(IFC4X3_RC4_IfcSignTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSimpleProperty_type); - declarations.push_back(IFC4X3_RC4_IfcSimplePropertyTemplate_type); - declarations.push_back(IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSimpleValue_type); - declarations.push_back(IFC4X3_RC4_IfcSine_type); - declarations.push_back(IFC4X3_RC4_IfcSIPrefix_type); - declarations.push_back(IFC4X3_RC4_IfcSite_type); - declarations.push_back(IFC4X3_RC4_IfcSIUnit_type); - declarations.push_back(IFC4X3_RC4_IfcSIUnitName_type); - declarations.push_back(IFC4X3_RC4_IfcSizeSelect_type); - declarations.push_back(IFC4X3_RC4_IfcSlab_type); - declarations.push_back(IFC4X3_RC4_IfcSlabElementedCase_type); - declarations.push_back(IFC4X3_RC4_IfcSlabStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcSlabType_type); - declarations.push_back(IFC4X3_RC4_IfcSlabTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSlippageConnectionCondition_type); - declarations.push_back(IFC4X3_RC4_IfcSolarDevice_type); - declarations.push_back(IFC4X3_RC4_IfcSolarDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcSolarDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSolidAngleMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSolidModel_type); - declarations.push_back(IFC4X3_RC4_IfcSolidOrShell_type); - declarations.push_back(IFC4X3_RC4_IfcSolidStratum_type); - declarations.push_back(IFC4X3_RC4_IfcSoundPowerLevelMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSoundPowerMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSoundPressureLevelMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSoundPressureMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSpace_type); - declarations.push_back(IFC4X3_RC4_IfcSpaceBoundarySelect_type); - declarations.push_back(IFC4X3_RC4_IfcSpaceHeater_type); - declarations.push_back(IFC4X3_RC4_IfcSpaceHeaterType_type); - declarations.push_back(IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSpaceType_type); - declarations.push_back(IFC4X3_RC4_IfcSpaceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialElement_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialElementType_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialReferenceSelect_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialStructureElement_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialStructureElementType_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialZone_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialZoneType_type); - declarations.push_back(IFC4X3_RC4_IfcSpatialZoneTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSpecificHeatCapacityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcSpecularExponent_type); - declarations.push_back(IFC4X3_RC4_IfcSpecularHighlightSelect_type); - declarations.push_back(IFC4X3_RC4_IfcSpecularRoughness_type); - declarations.push_back(IFC4X3_RC4_IfcSphere_type); - declarations.push_back(IFC4X3_RC4_IfcSphericalSurface_type); - declarations.push_back(IFC4X3_RC4_IfcSpiral_type); - declarations.push_back(IFC4X3_RC4_IfcStackTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcStackTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcStackTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStair_type); - declarations.push_back(IFC4X3_RC4_IfcStairFlight_type); - declarations.push_back(IFC4X3_RC4_IfcStairFlightType_type); - declarations.push_back(IFC4X3_RC4_IfcStairFlightTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStairType_type); - declarations.push_back(IFC4X3_RC4_IfcStairTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStateEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralAction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralActivity_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralActivityAssignmentSelect_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralAnalysisModel_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralConnection_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralConnectionCondition_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveAction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveConnection_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveMember_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveMemberVarying_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralCurveReaction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralItem_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLinearAction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoad_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadCase_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadConfiguration_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadGroup_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadLinearForce_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadOrResult_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadPlanarForce_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadSingleForce_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadStatic_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralLoadTemperature_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralMember_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralPlanarAction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralPointAction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralPointConnection_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralPointReaction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralReaction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralResultGroup_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceAction_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceConnection_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceMember_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type); - declarations.push_back(IFC4X3_RC4_IfcStructuralSurfaceReaction_type); - declarations.push_back(IFC4X3_RC4_IfcStyledItem_type); - declarations.push_back(IFC4X3_RC4_IfcStyledRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcStyleModel_type); - declarations.push_back(IFC4X3_RC4_IfcSubContractResource_type); - declarations.push_back(IFC4X3_RC4_IfcSubContractResourceType_type); - declarations.push_back(IFC4X3_RC4_IfcSubContractResourceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSubedge_type); - declarations.push_back(IFC4X3_RC4_IfcSurface_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceCurve_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceFeature_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceOfRevolution_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceOrFaceSurface_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceReinforcementArea_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceSide_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyle_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyleElementSelect_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyleLighting_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyleRefraction_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyleRendering_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyleShading_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceStyleWithTextures_type); - declarations.push_back(IFC4X3_RC4_IfcSurfaceTexture_type); - declarations.push_back(IFC4X3_RC4_IfcSweptAreaSolid_type); - declarations.push_back(IFC4X3_RC4_IfcSweptDiskSolid_type); - declarations.push_back(IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type); - declarations.push_back(IFC4X3_RC4_IfcSweptSurface_type); - declarations.push_back(IFC4X3_RC4_IfcSwitchingDevice_type); - declarations.push_back(IFC4X3_RC4_IfcSwitchingDeviceType_type); - declarations.push_back(IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcSystem_type); - declarations.push_back(IFC4X3_RC4_IfcSystemFurnitureElement_type); - declarations.push_back(IFC4X3_RC4_IfcSystemFurnitureElementType_type); - declarations.push_back(IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTable_type); - declarations.push_back(IFC4X3_RC4_IfcTableColumn_type); - declarations.push_back(IFC4X3_RC4_IfcTableRow_type); - declarations.push_back(IFC4X3_RC4_IfcTank_type); - declarations.push_back(IFC4X3_RC4_IfcTankType_type); - declarations.push_back(IFC4X3_RC4_IfcTankTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTask_type); - declarations.push_back(IFC4X3_RC4_IfcTaskDurationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTaskTime_type); - declarations.push_back(IFC4X3_RC4_IfcTaskTimeRecurring_type); - declarations.push_back(IFC4X3_RC4_IfcTaskType_type); - declarations.push_back(IFC4X3_RC4_IfcTaskTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTelecomAddress_type); - declarations.push_back(IFC4X3_RC4_IfcTemperatureGradientMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcTemperatureRateOfChangeMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcTendon_type); - declarations.push_back(IFC4X3_RC4_IfcTendonAnchor_type); - declarations.push_back(IFC4X3_RC4_IfcTendonAnchorType_type); - declarations.push_back(IFC4X3_RC4_IfcTendonAnchorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTendonConduit_type); - declarations.push_back(IFC4X3_RC4_IfcTendonConduitType_type); - declarations.push_back(IFC4X3_RC4_IfcTendonConduitTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTendonType_type); - declarations.push_back(IFC4X3_RC4_IfcTendonTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTessellatedFaceSet_type); - declarations.push_back(IFC4X3_RC4_IfcTessellatedItem_type); - declarations.push_back(IFC4X3_RC4_IfcText_type); - declarations.push_back(IFC4X3_RC4_IfcTextAlignment_type); - declarations.push_back(IFC4X3_RC4_IfcTextDecoration_type); - declarations.push_back(IFC4X3_RC4_IfcTextFontName_type); - declarations.push_back(IFC4X3_RC4_IfcTextFontSelect_type); - declarations.push_back(IFC4X3_RC4_IfcTextLiteral_type); - declarations.push_back(IFC4X3_RC4_IfcTextLiteralWithExtent_type); - declarations.push_back(IFC4X3_RC4_IfcTextPath_type); - declarations.push_back(IFC4X3_RC4_IfcTextStyle_type); - declarations.push_back(IFC4X3_RC4_IfcTextStyleFontModel_type); - declarations.push_back(IFC4X3_RC4_IfcTextStyleForDefinedFont_type); - declarations.push_back(IFC4X3_RC4_IfcTextStyleTextModel_type); - declarations.push_back(IFC4X3_RC4_IfcTextTransformation_type); - declarations.push_back(IFC4X3_RC4_IfcTextureCoordinate_type); - declarations.push_back(IFC4X3_RC4_IfcTextureCoordinateGenerator_type); - declarations.push_back(IFC4X3_RC4_IfcTextureMap_type); - declarations.push_back(IFC4X3_RC4_IfcTextureVertex_type); - declarations.push_back(IFC4X3_RC4_IfcTextureVertexList_type); - declarations.push_back(IFC4X3_RC4_IfcThermalAdmittanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcThermalConductivityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcThermalExpansionCoefficientMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcThermalResistanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcThermalTransmittanceMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type); - declarations.push_back(IFC4X3_RC4_IfcTime_type); - declarations.push_back(IFC4X3_RC4_IfcTimeMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcTimeOrRatioSelect_type); - declarations.push_back(IFC4X3_RC4_IfcTimePeriod_type); - declarations.push_back(IFC4X3_RC4_IfcTimeSeries_type); - declarations.push_back(IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTimeSeriesValue_type); - declarations.push_back(IFC4X3_RC4_IfcTimeStamp_type); - declarations.push_back(IFC4X3_RC4_IfcTopologicalRepresentationItem_type); - declarations.push_back(IFC4X3_RC4_IfcTopologyRepresentation_type); - declarations.push_back(IFC4X3_RC4_IfcToroidalSurface_type); - declarations.push_back(IFC4X3_RC4_IfcTorqueMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcTrackElement_type); - declarations.push_back(IFC4X3_RC4_IfcTrackElementType_type); - declarations.push_back(IFC4X3_RC4_IfcTrackElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTransformer_type); - declarations.push_back(IFC4X3_RC4_IfcTransformerType_type); - declarations.push_back(IFC4X3_RC4_IfcTransformerTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTransitionCode_type); - declarations.push_back(IFC4X3_RC4_IfcTranslationalStiffnessSelect_type); - declarations.push_back(IFC4X3_RC4_IfcTransportElement_type); - declarations.push_back(IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTransportElementType_type); - declarations.push_back(IFC4X3_RC4_IfcTransportElementTypeSelect_type); - declarations.push_back(IFC4X3_RC4_IfcTrapeziumProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcTriangulatedFaceSet_type); - declarations.push_back(IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type); - declarations.push_back(IFC4X3_RC4_IfcTrimmedCurve_type); - declarations.push_back(IFC4X3_RC4_IfcTrimmingPreference_type); - declarations.push_back(IFC4X3_RC4_IfcTrimmingSelect_type); - declarations.push_back(IFC4X3_RC4_IfcTShapeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcTubeBundle_type); - declarations.push_back(IFC4X3_RC4_IfcTubeBundleType_type); - declarations.push_back(IFC4X3_RC4_IfcTubeBundleTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcTypeObject_type); - declarations.push_back(IFC4X3_RC4_IfcTypeProcess_type); - declarations.push_back(IFC4X3_RC4_IfcTypeProduct_type); - declarations.push_back(IFC4X3_RC4_IfcTypeResource_type); - declarations.push_back(IFC4X3_RC4_IfcUnit_type); - declarations.push_back(IFC4X3_RC4_IfcUnitaryControlElement_type); - declarations.push_back(IFC4X3_RC4_IfcUnitaryControlElementType_type); - declarations.push_back(IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcUnitaryEquipment_type); - declarations.push_back(IFC4X3_RC4_IfcUnitaryEquipmentType_type); - declarations.push_back(IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcUnitAssignment_type); - declarations.push_back(IFC4X3_RC4_IfcUnitEnum_type); - declarations.push_back(IFC4X3_RC4_IfcURIReference_type); - declarations.push_back(IFC4X3_RC4_IfcUShapeProfileDef_type); - declarations.push_back(IFC4X3_RC4_IfcValue_type); - declarations.push_back(IFC4X3_RC4_IfcValve_type); - declarations.push_back(IFC4X3_RC4_IfcValveType_type); - declarations.push_back(IFC4X3_RC4_IfcValveTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcVaporPermeabilityMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcVector_type); - declarations.push_back(IFC4X3_RC4_IfcVectorOrDirection_type); - declarations.push_back(IFC4X3_RC4_IfcVertex_type); - declarations.push_back(IFC4X3_RC4_IfcVertexLoop_type); - declarations.push_back(IFC4X3_RC4_IfcVertexPoint_type); - declarations.push_back(IFC4X3_RC4_IfcVibrationDamper_type); - declarations.push_back(IFC4X3_RC4_IfcVibrationDamperType_type); - declarations.push_back(IFC4X3_RC4_IfcVibrationDamperTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcVibrationIsolator_type); - declarations.push_back(IFC4X3_RC4_IfcVibrationIsolatorType_type); - declarations.push_back(IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcVirtualElement_type); - declarations.push_back(IFC4X3_RC4_IfcVirtualGridIntersection_type); - declarations.push_back(IFC4X3_RC4_IfcVoidingFeature_type); - declarations.push_back(IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcVoidStratum_type); - declarations.push_back(IFC4X3_RC4_IfcVolumeMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcVolumetricFlowRateMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcWall_type); - declarations.push_back(IFC4X3_RC4_IfcWallElementedCase_type); - declarations.push_back(IFC4X3_RC4_IfcWallStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcWallType_type); - declarations.push_back(IFC4X3_RC4_IfcWallTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWarpingConstantMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcWarpingMomentMeasure_type); - declarations.push_back(IFC4X3_RC4_IfcWarpingStiffnessSelect_type); - declarations.push_back(IFC4X3_RC4_IfcWasteTerminal_type); - declarations.push_back(IFC4X3_RC4_IfcWasteTerminalType_type); - declarations.push_back(IFC4X3_RC4_IfcWasteTerminalTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWaterStratum_type); - declarations.push_back(IFC4X3_RC4_IfcWindow_type); - declarations.push_back(IFC4X3_RC4_IfcWindowLiningProperties_type); - declarations.push_back(IFC4X3_RC4_IfcWindowPanelOperationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWindowPanelPositionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWindowPanelProperties_type); - declarations.push_back(IFC4X3_RC4_IfcWindowStandardCase_type); - declarations.push_back(IFC4X3_RC4_IfcWindowStyle_type); - declarations.push_back(IFC4X3_RC4_IfcWindowStyleConstructionEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWindowStyleOperationEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWindowType_type); - declarations.push_back(IFC4X3_RC4_IfcWindowTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWindowTypePartitioningEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWorkCalendar_type); - declarations.push_back(IFC4X3_RC4_IfcWorkCalendarTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWorkControl_type); - declarations.push_back(IFC4X3_RC4_IfcWorkPlan_type); - declarations.push_back(IFC4X3_RC4_IfcWorkPlanTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWorkSchedule_type); - declarations.push_back(IFC4X3_RC4_IfcWorkScheduleTypeEnum_type); - declarations.push_back(IFC4X3_RC4_IfcWorkTime_type); - declarations.push_back(IFC4X3_RC4_IfcZone_type); - declarations.push_back(IFC4X3_RC4_IfcZShapeProfileDef_type); - return new schema_definition("IFC4X3_RC4", declarations, new IFC4X3_RC4_instance_factory()); + std::vector declarations= { + IFC4X3_RC4_IfcAbsorbedDoseMeasure_type, + IFC4X3_RC4_IfcAccelerationMeasure_type, + IFC4X3_RC4_IfcActionRequest_type, + IFC4X3_RC4_IfcActionRequestTypeEnum_type, + IFC4X3_RC4_IfcActionSourceTypeEnum_type, + IFC4X3_RC4_IfcActionTypeEnum_type, + IFC4X3_RC4_IfcActor_type, + IFC4X3_RC4_IfcActorRole_type, + IFC4X3_RC4_IfcActorSelect_type, + IFC4X3_RC4_IfcActuator_type, + IFC4X3_RC4_IfcActuatorType_type, + IFC4X3_RC4_IfcActuatorTypeEnum_type, + IFC4X3_RC4_IfcAddress_type, + IFC4X3_RC4_IfcAddressTypeEnum_type, + IFC4X3_RC4_IfcAdvancedBrep_type, + IFC4X3_RC4_IfcAdvancedBrepWithVoids_type, + IFC4X3_RC4_IfcAdvancedFace_type, + IFC4X3_RC4_IfcAirTerminal_type, + IFC4X3_RC4_IfcAirTerminalBox_type, + IFC4X3_RC4_IfcAirTerminalBoxType_type, + IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type, + IFC4X3_RC4_IfcAirTerminalType_type, + IFC4X3_RC4_IfcAirTerminalTypeEnum_type, + IFC4X3_RC4_IfcAirToAirHeatRecovery_type, + IFC4X3_RC4_IfcAirToAirHeatRecoveryType_type, + IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type, + IFC4X3_RC4_IfcAlarm_type, + IFC4X3_RC4_IfcAlarmType_type, + IFC4X3_RC4_IfcAlarmTypeEnum_type, + IFC4X3_RC4_IfcAlignment_type, + IFC4X3_RC4_IfcAlignmentCant_type, + IFC4X3_RC4_IfcAlignmentCantSegment_type, + IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type, + IFC4X3_RC4_IfcAlignmentHorizontal_type, + IFC4X3_RC4_IfcAlignmentHorizontalSegment_type, + IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type, + IFC4X3_RC4_IfcAlignmentParameterSegment_type, + IFC4X3_RC4_IfcAlignmentSegment_type, + IFC4X3_RC4_IfcAlignmentTypeEnum_type, + IFC4X3_RC4_IfcAlignmentVertical_type, + IFC4X3_RC4_IfcAlignmentVerticalSegment_type, + IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type, + IFC4X3_RC4_IfcAmountOfSubstanceMeasure_type, + IFC4X3_RC4_IfcAnalysisModelTypeEnum_type, + IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type, + IFC4X3_RC4_IfcAngularVelocityMeasure_type, + IFC4X3_RC4_IfcAnnotation_type, + IFC4X3_RC4_IfcAnnotationFillArea_type, + IFC4X3_RC4_IfcAnnotationTypeEnum_type, + IFC4X3_RC4_IfcApplication_type, + IFC4X3_RC4_IfcAppliedValue_type, + IFC4X3_RC4_IfcAppliedValueSelect_type, + IFC4X3_RC4_IfcApproval_type, + IFC4X3_RC4_IfcApprovalRelationship_type, + IFC4X3_RC4_IfcArbitraryClosedProfileDef_type, + IFC4X3_RC4_IfcArbitraryOpenProfileDef_type, + IFC4X3_RC4_IfcArbitraryProfileDefWithVoids_type, + IFC4X3_RC4_IfcArcIndex_type, + IFC4X3_RC4_IfcAreaDensityMeasure_type, + IFC4X3_RC4_IfcAreaMeasure_type, + IFC4X3_RC4_IfcArithmeticOperatorEnum_type, + IFC4X3_RC4_IfcAssemblyPlaceEnum_type, + IFC4X3_RC4_IfcAsset_type, + IFC4X3_RC4_IfcAsymmetricIShapeProfileDef_type, + IFC4X3_RC4_IfcAudioVisualAppliance_type, + IFC4X3_RC4_IfcAudioVisualApplianceType_type, + IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type, + IFC4X3_RC4_IfcAxis1Placement_type, + IFC4X3_RC4_IfcAxis2Placement_type, + IFC4X3_RC4_IfcAxis2Placement2D_type, + IFC4X3_RC4_IfcAxis2Placement3D_type, + IFC4X3_RC4_IfcAxis2PlacementLinear_type, + IFC4X3_RC4_IfcBeam_type, + IFC4X3_RC4_IfcBeamStandardCase_type, + IFC4X3_RC4_IfcBeamType_type, + IFC4X3_RC4_IfcBeamTypeEnum_type, + IFC4X3_RC4_IfcBearing_type, + IFC4X3_RC4_IfcBearingType_type, + IFC4X3_RC4_IfcBearingTypeDisplacementEnum_type, + IFC4X3_RC4_IfcBearingTypeEnum_type, + IFC4X3_RC4_IfcBenchmarkEnum_type, + IFC4X3_RC4_IfcBendingParameterSelect_type, + IFC4X3_RC4_IfcBinary_type, + IFC4X3_RC4_IfcBlobTexture_type, + IFC4X3_RC4_IfcBlock_type, + IFC4X3_RC4_IfcBoiler_type, + IFC4X3_RC4_IfcBoilerType_type, + IFC4X3_RC4_IfcBoilerTypeEnum_type, + IFC4X3_RC4_IfcBoolean_type, + IFC4X3_RC4_IfcBooleanClippingResult_type, + IFC4X3_RC4_IfcBooleanOperand_type, + IFC4X3_RC4_IfcBooleanOperator_type, + IFC4X3_RC4_IfcBooleanResult_type, + IFC4X3_RC4_IfcBorehole_type, + IFC4X3_RC4_IfcBoundaryCondition_type, + IFC4X3_RC4_IfcBoundaryCurve_type, + IFC4X3_RC4_IfcBoundaryEdgeCondition_type, + IFC4X3_RC4_IfcBoundaryFaceCondition_type, + IFC4X3_RC4_IfcBoundaryNodeCondition_type, + IFC4X3_RC4_IfcBoundaryNodeConditionWarping_type, + IFC4X3_RC4_IfcBoundedCurve_type, + IFC4X3_RC4_IfcBoundedSurface_type, + IFC4X3_RC4_IfcBoundingBox_type, + IFC4X3_RC4_IfcBoxAlignment_type, + IFC4X3_RC4_IfcBoxedHalfSpace_type, + IFC4X3_RC4_IfcBridge_type, + IFC4X3_RC4_IfcBridgePartTypeEnum_type, + IFC4X3_RC4_IfcBridgeTypeEnum_type, + IFC4X3_RC4_IfcBSplineCurve_type, + IFC4X3_RC4_IfcBSplineCurveForm_type, + IFC4X3_RC4_IfcBSplineCurveWithKnots_type, + IFC4X3_RC4_IfcBSplineSurface_type, + IFC4X3_RC4_IfcBSplineSurfaceForm_type, + IFC4X3_RC4_IfcBSplineSurfaceWithKnots_type, + IFC4X3_RC4_IfcBuilding_type, + IFC4X3_RC4_IfcBuildingElementPart_type, + IFC4X3_RC4_IfcBuildingElementPartType_type, + IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type, + IFC4X3_RC4_IfcBuildingElementProxy_type, + IFC4X3_RC4_IfcBuildingElementProxyType_type, + IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type, + IFC4X3_RC4_IfcBuildingStorey_type, + IFC4X3_RC4_IfcBuildingSystem_type, + IFC4X3_RC4_IfcBuildingSystemTypeEnum_type, + IFC4X3_RC4_IfcBuiltElement_type, + IFC4X3_RC4_IfcBuiltElementType_type, + IFC4X3_RC4_IfcBuiltSystem_type, + IFC4X3_RC4_IfcBuiltSystemTypeEnum_type, + IFC4X3_RC4_IfcBurner_type, + IFC4X3_RC4_IfcBurnerType_type, + IFC4X3_RC4_IfcBurnerTypeEnum_type, + IFC4X3_RC4_IfcCableCarrierFitting_type, + IFC4X3_RC4_IfcCableCarrierFittingType_type, + IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type, + IFC4X3_RC4_IfcCableCarrierSegment_type, + IFC4X3_RC4_IfcCableCarrierSegmentType_type, + IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type, + IFC4X3_RC4_IfcCableFitting_type, + IFC4X3_RC4_IfcCableFittingType_type, + IFC4X3_RC4_IfcCableFittingTypeEnum_type, + IFC4X3_RC4_IfcCableSegment_type, + IFC4X3_RC4_IfcCableSegmentType_type, + IFC4X3_RC4_IfcCableSegmentTypeEnum_type, + IFC4X3_RC4_IfcCaissonFoundation_type, + IFC4X3_RC4_IfcCaissonFoundationType_type, + IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type, + IFC4X3_RC4_IfcCardinalPointReference_type, + IFC4X3_RC4_IfcCartesianPoint_type, + IFC4X3_RC4_IfcCartesianPointList_type, + IFC4X3_RC4_IfcCartesianPointList2D_type, + IFC4X3_RC4_IfcCartesianPointList3D_type, + IFC4X3_RC4_IfcCartesianTransformationOperator_type, + IFC4X3_RC4_IfcCartesianTransformationOperator2D_type, + IFC4X3_RC4_IfcCartesianTransformationOperator2DnonUniform_type, + IFC4X3_RC4_IfcCartesianTransformationOperator3D_type, + IFC4X3_RC4_IfcCartesianTransformationOperator3DnonUniform_type, + IFC4X3_RC4_IfcCenterLineProfileDef_type, + IFC4X3_RC4_IfcChangeActionEnum_type, + IFC4X3_RC4_IfcChiller_type, + IFC4X3_RC4_IfcChillerType_type, + IFC4X3_RC4_IfcChillerTypeEnum_type, + IFC4X3_RC4_IfcChimney_type, + IFC4X3_RC4_IfcChimneyType_type, + IFC4X3_RC4_IfcChimneyTypeEnum_type, + IFC4X3_RC4_IfcCircle_type, + IFC4X3_RC4_IfcCircleHollowProfileDef_type, + IFC4X3_RC4_IfcCircleProfileDef_type, + IFC4X3_RC4_IfcCivilElement_type, + IFC4X3_RC4_IfcCivilElementType_type, + IFC4X3_RC4_IfcClassification_type, + IFC4X3_RC4_IfcClassificationReference_type, + IFC4X3_RC4_IfcClassificationReferenceSelect_type, + IFC4X3_RC4_IfcClassificationSelect_type, + IFC4X3_RC4_IfcClosedShell_type, + IFC4X3_RC4_IfcClothoid_type, + IFC4X3_RC4_IfcCoil_type, + IFC4X3_RC4_IfcCoilType_type, + IFC4X3_RC4_IfcCoilTypeEnum_type, + IFC4X3_RC4_IfcColour_type, + IFC4X3_RC4_IfcColourOrFactor_type, + IFC4X3_RC4_IfcColourRgb_type, + IFC4X3_RC4_IfcColourRgbList_type, + IFC4X3_RC4_IfcColourSpecification_type, + IFC4X3_RC4_IfcColumn_type, + IFC4X3_RC4_IfcColumnStandardCase_type, + IFC4X3_RC4_IfcColumnType_type, + IFC4X3_RC4_IfcColumnTypeEnum_type, + IFC4X3_RC4_IfcCommunicationsAppliance_type, + IFC4X3_RC4_IfcCommunicationsApplianceType_type, + IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type, + IFC4X3_RC4_IfcComplexNumber_type, + IFC4X3_RC4_IfcComplexProperty_type, + IFC4X3_RC4_IfcComplexPropertyTemplate_type, + IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type, + IFC4X3_RC4_IfcCompositeCurve_type, + IFC4X3_RC4_IfcCompositeCurveOnSurface_type, + IFC4X3_RC4_IfcCompositeCurveSegment_type, + IFC4X3_RC4_IfcCompositeProfileDef_type, + IFC4X3_RC4_IfcCompoundPlaneAngleMeasure_type, + IFC4X3_RC4_IfcCompressor_type, + IFC4X3_RC4_IfcCompressorType_type, + IFC4X3_RC4_IfcCompressorTypeEnum_type, + IFC4X3_RC4_IfcCondenser_type, + IFC4X3_RC4_IfcCondenserType_type, + IFC4X3_RC4_IfcCondenserTypeEnum_type, + IFC4X3_RC4_IfcConic_type, + IFC4X3_RC4_IfcConnectedFaceSet_type, + IFC4X3_RC4_IfcConnectionCurveGeometry_type, + IFC4X3_RC4_IfcConnectionGeometry_type, + IFC4X3_RC4_IfcConnectionPointEccentricity_type, + IFC4X3_RC4_IfcConnectionPointGeometry_type, + IFC4X3_RC4_IfcConnectionSurfaceGeometry_type, + IFC4X3_RC4_IfcConnectionTypeEnum_type, + IFC4X3_RC4_IfcConnectionVolumeGeometry_type, + IFC4X3_RC4_IfcConstraint_type, + IFC4X3_RC4_IfcConstraintEnum_type, + IFC4X3_RC4_IfcConstructionEquipmentResource_type, + IFC4X3_RC4_IfcConstructionEquipmentResourceType_type, + IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type, + IFC4X3_RC4_IfcConstructionMaterialResource_type, + IFC4X3_RC4_IfcConstructionMaterialResourceType_type, + IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type, + IFC4X3_RC4_IfcConstructionProductResource_type, + IFC4X3_RC4_IfcConstructionProductResourceType_type, + IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type, + IFC4X3_RC4_IfcConstructionResource_type, + IFC4X3_RC4_IfcConstructionResourceType_type, + IFC4X3_RC4_IfcContext_type, + IFC4X3_RC4_IfcContextDependentMeasure_type, + IFC4X3_RC4_IfcContextDependentUnit_type, + IFC4X3_RC4_IfcControl_type, + IFC4X3_RC4_IfcController_type, + IFC4X3_RC4_IfcControllerType_type, + IFC4X3_RC4_IfcControllerTypeEnum_type, + IFC4X3_RC4_IfcConversionBasedUnit_type, + IFC4X3_RC4_IfcConversionBasedUnitWithOffset_type, + IFC4X3_RC4_IfcConveyorSegment_type, + IFC4X3_RC4_IfcConveyorSegmentType_type, + IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type, + IFC4X3_RC4_IfcCooledBeam_type, + IFC4X3_RC4_IfcCooledBeamType_type, + IFC4X3_RC4_IfcCooledBeamTypeEnum_type, + IFC4X3_RC4_IfcCoolingTower_type, + IFC4X3_RC4_IfcCoolingTowerType_type, + IFC4X3_RC4_IfcCoolingTowerTypeEnum_type, + IFC4X3_RC4_IfcCoordinateOperation_type, + IFC4X3_RC4_IfcCoordinateReferenceSystem_type, + IFC4X3_RC4_IfcCoordinateReferenceSystemSelect_type, + IFC4X3_RC4_IfcCosine_type, + IFC4X3_RC4_IfcCostItem_type, + IFC4X3_RC4_IfcCostItemTypeEnum_type, + IFC4X3_RC4_IfcCostSchedule_type, + IFC4X3_RC4_IfcCostScheduleTypeEnum_type, + IFC4X3_RC4_IfcCostValue_type, + IFC4X3_RC4_IfcCountMeasure_type, + IFC4X3_RC4_IfcCourse_type, + IFC4X3_RC4_IfcCourseType_type, + IFC4X3_RC4_IfcCourseTypeEnum_type, + IFC4X3_RC4_IfcCovering_type, + IFC4X3_RC4_IfcCoveringType_type, + IFC4X3_RC4_IfcCoveringTypeEnum_type, + IFC4X3_RC4_IfcCrewResource_type, + IFC4X3_RC4_IfcCrewResourceType_type, + IFC4X3_RC4_IfcCrewResourceTypeEnum_type, + IFC4X3_RC4_IfcCsgPrimitive3D_type, + IFC4X3_RC4_IfcCsgSelect_type, + IFC4X3_RC4_IfcCsgSolid_type, + IFC4X3_RC4_IfcCShapeProfileDef_type, + IFC4X3_RC4_IfcCurrencyRelationship_type, + IFC4X3_RC4_IfcCurtainWall_type, + IFC4X3_RC4_IfcCurtainWallType_type, + IFC4X3_RC4_IfcCurtainWallTypeEnum_type, + IFC4X3_RC4_IfcCurvatureMeasure_type, + IFC4X3_RC4_IfcCurve_type, + IFC4X3_RC4_IfcCurveBoundedPlane_type, + IFC4X3_RC4_IfcCurveBoundedSurface_type, + IFC4X3_RC4_IfcCurveFontOrScaledCurveFontSelect_type, + IFC4X3_RC4_IfcCurveInterpolationEnum_type, + IFC4X3_RC4_IfcCurveMeasureSelect_type, + IFC4X3_RC4_IfcCurveOnSurface_type, + IFC4X3_RC4_IfcCurveOrEdgeCurve_type, + IFC4X3_RC4_IfcCurveSegment_type, + IFC4X3_RC4_IfcCurveStyle_type, + IFC4X3_RC4_IfcCurveStyleFont_type, + IFC4X3_RC4_IfcCurveStyleFontAndScaling_type, + IFC4X3_RC4_IfcCurveStyleFontPattern_type, + IFC4X3_RC4_IfcCurveStyleFontSelect_type, + IFC4X3_RC4_IfcCylindricalSurface_type, + IFC4X3_RC4_IfcDamper_type, + IFC4X3_RC4_IfcDamperType_type, + IFC4X3_RC4_IfcDamperTypeEnum_type, + IFC4X3_RC4_IfcDataOriginEnum_type, + IFC4X3_RC4_IfcDate_type, + IFC4X3_RC4_IfcDateTime_type, + IFC4X3_RC4_IfcDayInMonthNumber_type, + IFC4X3_RC4_IfcDayInWeekNumber_type, + IFC4X3_RC4_IfcDeepFoundation_type, + IFC4X3_RC4_IfcDeepFoundationType_type, + IFC4X3_RC4_IfcDefinitionSelect_type, + IFC4X3_RC4_IfcDerivedMeasureValue_type, + IFC4X3_RC4_IfcDerivedProfileDef_type, + IFC4X3_RC4_IfcDerivedUnit_type, + IFC4X3_RC4_IfcDerivedUnitElement_type, + IFC4X3_RC4_IfcDerivedUnitEnum_type, + IFC4X3_RC4_IfcDescriptiveMeasure_type, + IFC4X3_RC4_IfcDimensionalExponents_type, + IFC4X3_RC4_IfcDimensionCount_type, + IFC4X3_RC4_IfcDirection_type, + IFC4X3_RC4_IfcDirectionSenseEnum_type, + IFC4X3_RC4_IfcDirectrixCurveSweptAreaSolid_type, + IFC4X3_RC4_IfcDirectrixDerivedReferenceSweptAreaSolid_type, + IFC4X3_RC4_IfcDiscreteAccessory_type, + IFC4X3_RC4_IfcDiscreteAccessoryType_type, + IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type, + IFC4X3_RC4_IfcDistributionBoard_type, + IFC4X3_RC4_IfcDistributionBoardType_type, + IFC4X3_RC4_IfcDistributionBoardTypeEnum_type, + IFC4X3_RC4_IfcDistributionChamberElement_type, + IFC4X3_RC4_IfcDistributionChamberElementType_type, + IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type, + IFC4X3_RC4_IfcDistributionCircuit_type, + IFC4X3_RC4_IfcDistributionControlElement_type, + IFC4X3_RC4_IfcDistributionControlElementType_type, + IFC4X3_RC4_IfcDistributionElement_type, + IFC4X3_RC4_IfcDistributionElementType_type, + IFC4X3_RC4_IfcDistributionFlowElement_type, + IFC4X3_RC4_IfcDistributionFlowElementType_type, + IFC4X3_RC4_IfcDistributionPort_type, + IFC4X3_RC4_IfcDistributionPortTypeEnum_type, + IFC4X3_RC4_IfcDistributionSystem_type, + IFC4X3_RC4_IfcDistributionSystemEnum_type, + IFC4X3_RC4_IfcDocumentConfidentialityEnum_type, + IFC4X3_RC4_IfcDocumentInformation_type, + IFC4X3_RC4_IfcDocumentInformationRelationship_type, + IFC4X3_RC4_IfcDocumentReference_type, + IFC4X3_RC4_IfcDocumentSelect_type, + IFC4X3_RC4_IfcDocumentStatusEnum_type, + IFC4X3_RC4_IfcDoor_type, + IFC4X3_RC4_IfcDoorLiningProperties_type, + IFC4X3_RC4_IfcDoorPanelOperationEnum_type, + IFC4X3_RC4_IfcDoorPanelPositionEnum_type, + IFC4X3_RC4_IfcDoorPanelProperties_type, + IFC4X3_RC4_IfcDoorStandardCase_type, + IFC4X3_RC4_IfcDoorStyle_type, + IFC4X3_RC4_IfcDoorStyleConstructionEnum_type, + IFC4X3_RC4_IfcDoorStyleOperationEnum_type, + IFC4X3_RC4_IfcDoorType_type, + IFC4X3_RC4_IfcDoorTypeEnum_type, + IFC4X3_RC4_IfcDoorTypeOperationEnum_type, + IFC4X3_RC4_IfcDoseEquivalentMeasure_type, + IFC4X3_RC4_IfcDraughtingPreDefinedColour_type, + IFC4X3_RC4_IfcDraughtingPreDefinedCurveFont_type, + IFC4X3_RC4_IfcDuctFitting_type, + IFC4X3_RC4_IfcDuctFittingType_type, + IFC4X3_RC4_IfcDuctFittingTypeEnum_type, + IFC4X3_RC4_IfcDuctSegment_type, + IFC4X3_RC4_IfcDuctSegmentType_type, + IFC4X3_RC4_IfcDuctSegmentTypeEnum_type, + IFC4X3_RC4_IfcDuctSilencer_type, + IFC4X3_RC4_IfcDuctSilencerType_type, + IFC4X3_RC4_IfcDuctSilencerTypeEnum_type, + IFC4X3_RC4_IfcDuration_type, + IFC4X3_RC4_IfcDynamicViscosityMeasure_type, + IFC4X3_RC4_IfcEarthworksCut_type, + IFC4X3_RC4_IfcEarthworksCutTypeEnum_type, + IFC4X3_RC4_IfcEarthworksElement_type, + IFC4X3_RC4_IfcEarthworksFill_type, + IFC4X3_RC4_IfcEarthworksFillTypeEnum_type, + IFC4X3_RC4_IfcEdge_type, + IFC4X3_RC4_IfcEdgeCurve_type, + IFC4X3_RC4_IfcEdgeLoop_type, + IFC4X3_RC4_IfcElectricAppliance_type, + IFC4X3_RC4_IfcElectricApplianceType_type, + IFC4X3_RC4_IfcElectricApplianceTypeEnum_type, + IFC4X3_RC4_IfcElectricCapacitanceMeasure_type, + IFC4X3_RC4_IfcElectricChargeMeasure_type, + IFC4X3_RC4_IfcElectricConductanceMeasure_type, + IFC4X3_RC4_IfcElectricCurrentMeasure_type, + IFC4X3_RC4_IfcElectricDistributionBoard_type, + IFC4X3_RC4_IfcElectricDistributionBoardType_type, + IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type, + IFC4X3_RC4_IfcElectricFlowStorageDevice_type, + IFC4X3_RC4_IfcElectricFlowStorageDeviceType_type, + IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type, + IFC4X3_RC4_IfcElectricFlowTreatmentDevice_type, + IFC4X3_RC4_IfcElectricFlowTreatmentDeviceType_type, + IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type, + IFC4X3_RC4_IfcElectricGenerator_type, + IFC4X3_RC4_IfcElectricGeneratorType_type, + IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type, + IFC4X3_RC4_IfcElectricMotor_type, + IFC4X3_RC4_IfcElectricMotorType_type, + IFC4X3_RC4_IfcElectricMotorTypeEnum_type, + IFC4X3_RC4_IfcElectricResistanceMeasure_type, + IFC4X3_RC4_IfcElectricTimeControl_type, + IFC4X3_RC4_IfcElectricTimeControlType_type, + IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type, + IFC4X3_RC4_IfcElectricVoltageMeasure_type, + IFC4X3_RC4_IfcElement_type, + IFC4X3_RC4_IfcElementarySurface_type, + IFC4X3_RC4_IfcElementAssembly_type, + IFC4X3_RC4_IfcElementAssemblyType_type, + IFC4X3_RC4_IfcElementAssemblyTypeEnum_type, + IFC4X3_RC4_IfcElementComponent_type, + IFC4X3_RC4_IfcElementComponentType_type, + IFC4X3_RC4_IfcElementCompositionEnum_type, + IFC4X3_RC4_IfcElementQuantity_type, + IFC4X3_RC4_IfcElementType_type, + IFC4X3_RC4_IfcEllipse_type, + IFC4X3_RC4_IfcEllipseProfileDef_type, + IFC4X3_RC4_IfcEnergyConversionDevice_type, + IFC4X3_RC4_IfcEnergyConversionDeviceType_type, + IFC4X3_RC4_IfcEnergyMeasure_type, + IFC4X3_RC4_IfcEngine_type, + IFC4X3_RC4_IfcEngineType_type, + IFC4X3_RC4_IfcEngineTypeEnum_type, + IFC4X3_RC4_IfcEvaporativeCooler_type, + IFC4X3_RC4_IfcEvaporativeCoolerType_type, + IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type, + IFC4X3_RC4_IfcEvaporator_type, + IFC4X3_RC4_IfcEvaporatorType_type, + IFC4X3_RC4_IfcEvaporatorTypeEnum_type, + IFC4X3_RC4_IfcEvent_type, + IFC4X3_RC4_IfcEventTime_type, + IFC4X3_RC4_IfcEventTriggerTypeEnum_type, + IFC4X3_RC4_IfcEventType_type, + IFC4X3_RC4_IfcEventTypeEnum_type, + IFC4X3_RC4_IfcExtendedProperties_type, + IFC4X3_RC4_IfcExternalInformation_type, + IFC4X3_RC4_IfcExternallyDefinedHatchStyle_type, + IFC4X3_RC4_IfcExternallyDefinedSurfaceStyle_type, + IFC4X3_RC4_IfcExternallyDefinedTextFont_type, + IFC4X3_RC4_IfcExternalReference_type, + IFC4X3_RC4_IfcExternalReferenceRelationship_type, + IFC4X3_RC4_IfcExternalSpatialElement_type, + IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type, + IFC4X3_RC4_IfcExternalSpatialStructureElement_type, + IFC4X3_RC4_IfcExtrudedAreaSolid_type, + IFC4X3_RC4_IfcExtrudedAreaSolidTapered_type, + IFC4X3_RC4_IfcFace_type, + IFC4X3_RC4_IfcFaceBasedSurfaceModel_type, + IFC4X3_RC4_IfcFaceBound_type, + IFC4X3_RC4_IfcFaceOuterBound_type, + IFC4X3_RC4_IfcFaceSurface_type, + IFC4X3_RC4_IfcFacetedBrep_type, + IFC4X3_RC4_IfcFacetedBrepWithVoids_type, + IFC4X3_RC4_IfcFacility_type, + IFC4X3_RC4_IfcFacilityPart_type, + IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type, + IFC4X3_RC4_IfcFacilityPartTypeSelect_type, + IFC4X3_RC4_IfcFacilityUsageEnum_type, + IFC4X3_RC4_IfcFailureConnectionCondition_type, + IFC4X3_RC4_IfcFan_type, + IFC4X3_RC4_IfcFanType_type, + IFC4X3_RC4_IfcFanTypeEnum_type, + IFC4X3_RC4_IfcFastener_type, + IFC4X3_RC4_IfcFastenerType_type, + IFC4X3_RC4_IfcFastenerTypeEnum_type, + IFC4X3_RC4_IfcFeatureElement_type, + IFC4X3_RC4_IfcFeatureElementAddition_type, + IFC4X3_RC4_IfcFeatureElementSubtraction_type, + IFC4X3_RC4_IfcFillAreaStyle_type, + IFC4X3_RC4_IfcFillAreaStyleHatching_type, + IFC4X3_RC4_IfcFillAreaStyleTiles_type, + IFC4X3_RC4_IfcFillStyleSelect_type, + IFC4X3_RC4_IfcFilter_type, + IFC4X3_RC4_IfcFilterType_type, + IFC4X3_RC4_IfcFilterTypeEnum_type, + IFC4X3_RC4_IfcFireSuppressionTerminal_type, + IFC4X3_RC4_IfcFireSuppressionTerminalType_type, + IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type, + IFC4X3_RC4_IfcFixedReferenceSweptAreaSolid_type, + IFC4X3_RC4_IfcFlowController_type, + IFC4X3_RC4_IfcFlowControllerType_type, + IFC4X3_RC4_IfcFlowDirectionEnum_type, + IFC4X3_RC4_IfcFlowFitting_type, + IFC4X3_RC4_IfcFlowFittingType_type, + IFC4X3_RC4_IfcFlowInstrument_type, + IFC4X3_RC4_IfcFlowInstrumentType_type, + IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type, + IFC4X3_RC4_IfcFlowMeter_type, + IFC4X3_RC4_IfcFlowMeterType_type, + IFC4X3_RC4_IfcFlowMeterTypeEnum_type, + IFC4X3_RC4_IfcFlowMovingDevice_type, + IFC4X3_RC4_IfcFlowMovingDeviceType_type, + IFC4X3_RC4_IfcFlowSegment_type, + IFC4X3_RC4_IfcFlowSegmentType_type, + IFC4X3_RC4_IfcFlowStorageDevice_type, + IFC4X3_RC4_IfcFlowStorageDeviceType_type, + IFC4X3_RC4_IfcFlowTerminal_type, + IFC4X3_RC4_IfcFlowTerminalType_type, + IFC4X3_RC4_IfcFlowTreatmentDevice_type, + IFC4X3_RC4_IfcFlowTreatmentDeviceType_type, + IFC4X3_RC4_IfcFontStyle_type, + IFC4X3_RC4_IfcFontVariant_type, + IFC4X3_RC4_IfcFontWeight_type, + IFC4X3_RC4_IfcFooting_type, + IFC4X3_RC4_IfcFootingType_type, + IFC4X3_RC4_IfcFootingTypeEnum_type, + IFC4X3_RC4_IfcForceMeasure_type, + IFC4X3_RC4_IfcFrequencyMeasure_type, + IFC4X3_RC4_IfcFurnishingElement_type, + IFC4X3_RC4_IfcFurnishingElementType_type, + IFC4X3_RC4_IfcFurniture_type, + IFC4X3_RC4_IfcFurnitureType_type, + IFC4X3_RC4_IfcFurnitureTypeEnum_type, + IFC4X3_RC4_IfcGeographicElement_type, + IFC4X3_RC4_IfcGeographicElementType_type, + IFC4X3_RC4_IfcGeographicElementTypeEnum_type, + IFC4X3_RC4_IfcGeometricCurveSet_type, + IFC4X3_RC4_IfcGeometricProjectionEnum_type, + IFC4X3_RC4_IfcGeometricRepresentationContext_type, + IFC4X3_RC4_IfcGeometricRepresentationItem_type, + IFC4X3_RC4_IfcGeometricRepresentationSubContext_type, + IFC4X3_RC4_IfcGeometricSet_type, + IFC4X3_RC4_IfcGeometricSetSelect_type, + IFC4X3_RC4_IfcGeomodel_type, + IFC4X3_RC4_IfcGeoslice_type, + IFC4X3_RC4_IfcGeotechnicalAssembly_type, + IFC4X3_RC4_IfcGeotechnicalElement_type, + IFC4X3_RC4_IfcGeotechnicalStratum_type, + IFC4X3_RC4_IfcGloballyUniqueId_type, + IFC4X3_RC4_IfcGlobalOrLocalEnum_type, + IFC4X3_RC4_IfcGradientCurve_type, + IFC4X3_RC4_IfcGrid_type, + IFC4X3_RC4_IfcGridAxis_type, + IFC4X3_RC4_IfcGridPlacement_type, + IFC4X3_RC4_IfcGridPlacementDirectionSelect_type, + IFC4X3_RC4_IfcGridTypeEnum_type, + IFC4X3_RC4_IfcGroup_type, + IFC4X3_RC4_IfcHalfSpaceSolid_type, + IFC4X3_RC4_IfcHatchLineDistanceSelect_type, + IFC4X3_RC4_IfcHeatExchanger_type, + IFC4X3_RC4_IfcHeatExchangerType_type, + IFC4X3_RC4_IfcHeatExchangerTypeEnum_type, + IFC4X3_RC4_IfcHeatFluxDensityMeasure_type, + IFC4X3_RC4_IfcHeatingValueMeasure_type, + IFC4X3_RC4_IfcHumidifier_type, + IFC4X3_RC4_IfcHumidifierType_type, + IFC4X3_RC4_IfcHumidifierTypeEnum_type, + IFC4X3_RC4_IfcIdentifier_type, + IFC4X3_RC4_IfcIlluminanceMeasure_type, + IFC4X3_RC4_IfcImageTexture_type, + IFC4X3_RC4_IfcImpactProtectionDevice_type, + IFC4X3_RC4_IfcImpactProtectionDeviceType_type, + IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type, + IFC4X3_RC4_IfcImpactProtectionDeviceTypeSelect_type, + IFC4X3_RC4_IfcIndexedColourMap_type, + IFC4X3_RC4_IfcIndexedPolyCurve_type, + IFC4X3_RC4_IfcIndexedPolygonalFace_type, + IFC4X3_RC4_IfcIndexedPolygonalFaceWithVoids_type, + IFC4X3_RC4_IfcIndexedTextureMap_type, + IFC4X3_RC4_IfcIndexedTriangleTextureMap_type, + IFC4X3_RC4_IfcInductanceMeasure_type, + IFC4X3_RC4_IfcInteger_type, + IFC4X3_RC4_IfcIntegerCountRateMeasure_type, + IFC4X3_RC4_IfcInterceptor_type, + IFC4X3_RC4_IfcInterceptorType_type, + IFC4X3_RC4_IfcInterceptorTypeEnum_type, + IFC4X3_RC4_IfcInterferenceSelect_type, + IFC4X3_RC4_IfcInternalOrExternalEnum_type, + IFC4X3_RC4_IfcIntersectionCurve_type, + IFC4X3_RC4_IfcInventory_type, + IFC4X3_RC4_IfcInventoryTypeEnum_type, + IFC4X3_RC4_IfcIonConcentrationMeasure_type, + IFC4X3_RC4_IfcIrregularTimeSeries_type, + IFC4X3_RC4_IfcIrregularTimeSeriesValue_type, + IFC4X3_RC4_IfcIShapeProfileDef_type, + IFC4X3_RC4_IfcIsothermalMoistureCapacityMeasure_type, + IFC4X3_RC4_IfcJunctionBox_type, + IFC4X3_RC4_IfcJunctionBoxType_type, + IFC4X3_RC4_IfcJunctionBoxTypeEnum_type, + IFC4X3_RC4_IfcKerb_type, + IFC4X3_RC4_IfcKerbType_type, + IFC4X3_RC4_IfcKinematicViscosityMeasure_type, + IFC4X3_RC4_IfcKnotType_type, + IFC4X3_RC4_IfcLabel_type, + IFC4X3_RC4_IfcLaborResource_type, + IFC4X3_RC4_IfcLaborResourceType_type, + IFC4X3_RC4_IfcLaborResourceTypeEnum_type, + IFC4X3_RC4_IfcLagTime_type, + IFC4X3_RC4_IfcLamp_type, + IFC4X3_RC4_IfcLampType_type, + IFC4X3_RC4_IfcLampTypeEnum_type, + IFC4X3_RC4_IfcLanguageId_type, + IFC4X3_RC4_IfcLayeredItem_type, + IFC4X3_RC4_IfcLayerSetDirectionEnum_type, + IFC4X3_RC4_IfcLengthMeasure_type, + IFC4X3_RC4_IfcLibraryInformation_type, + IFC4X3_RC4_IfcLibraryReference_type, + IFC4X3_RC4_IfcLibrarySelect_type, + IFC4X3_RC4_IfcLightDistributionCurveEnum_type, + IFC4X3_RC4_IfcLightDistributionData_type, + IFC4X3_RC4_IfcLightDistributionDataSourceSelect_type, + IFC4X3_RC4_IfcLightEmissionSourceEnum_type, + IFC4X3_RC4_IfcLightFixture_type, + IFC4X3_RC4_IfcLightFixtureType_type, + IFC4X3_RC4_IfcLightFixtureTypeEnum_type, + IFC4X3_RC4_IfcLightIntensityDistribution_type, + IFC4X3_RC4_IfcLightSource_type, + IFC4X3_RC4_IfcLightSourceAmbient_type, + IFC4X3_RC4_IfcLightSourceDirectional_type, + IFC4X3_RC4_IfcLightSourceGoniometric_type, + IFC4X3_RC4_IfcLightSourcePositional_type, + IFC4X3_RC4_IfcLightSourceSpot_type, + IFC4X3_RC4_IfcLine_type, + IFC4X3_RC4_IfcLinearElement_type, + IFC4X3_RC4_IfcLinearForceMeasure_type, + IFC4X3_RC4_IfcLinearMomentMeasure_type, + IFC4X3_RC4_IfcLinearPlacement_type, + IFC4X3_RC4_IfcLinearPositioningElement_type, + IFC4X3_RC4_IfcLinearStiffnessMeasure_type, + IFC4X3_RC4_IfcLinearVelocityMeasure_type, + IFC4X3_RC4_IfcLineIndex_type, + IFC4X3_RC4_IfcLiquidTerminal_type, + IFC4X3_RC4_IfcLiquidTerminalType_type, + IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type, + IFC4X3_RC4_IfcLoadGroupTypeEnum_type, + IFC4X3_RC4_IfcLocalPlacement_type, + IFC4X3_RC4_IfcLogical_type, + IFC4X3_RC4_IfcLogicalOperatorEnum_type, + IFC4X3_RC4_IfcLoop_type, + IFC4X3_RC4_IfcLShapeProfileDef_type, + IFC4X3_RC4_IfcLuminousFluxMeasure_type, + IFC4X3_RC4_IfcLuminousIntensityDistributionMeasure_type, + IFC4X3_RC4_IfcLuminousIntensityMeasure_type, + IFC4X3_RC4_IfcMagneticFluxDensityMeasure_type, + IFC4X3_RC4_IfcMagneticFluxMeasure_type, + IFC4X3_RC4_IfcManifoldSolidBrep_type, + IFC4X3_RC4_IfcMapConversion_type, + IFC4X3_RC4_IfcMappedItem_type, + IFC4X3_RC4_IfcMarineFacility_type, + IFC4X3_RC4_IfcMarineFacilityTypeEnum_type, + IFC4X3_RC4_IfcMarinePartTypeEnum_type, + IFC4X3_RC4_IfcMassDensityMeasure_type, + IFC4X3_RC4_IfcMassFlowRateMeasure_type, + IFC4X3_RC4_IfcMassMeasure_type, + IFC4X3_RC4_IfcMassPerLengthMeasure_type, + IFC4X3_RC4_IfcMaterial_type, + IFC4X3_RC4_IfcMaterialClassificationRelationship_type, + IFC4X3_RC4_IfcMaterialConstituent_type, + IFC4X3_RC4_IfcMaterialConstituentSet_type, + IFC4X3_RC4_IfcMaterialDefinition_type, + IFC4X3_RC4_IfcMaterialDefinitionRepresentation_type, + IFC4X3_RC4_IfcMaterialLayer_type, + IFC4X3_RC4_IfcMaterialLayerSet_type, + IFC4X3_RC4_IfcMaterialLayerSetUsage_type, + IFC4X3_RC4_IfcMaterialLayerWithOffsets_type, + IFC4X3_RC4_IfcMaterialList_type, + IFC4X3_RC4_IfcMaterialProfile_type, + IFC4X3_RC4_IfcMaterialProfileSet_type, + IFC4X3_RC4_IfcMaterialProfileSetUsage_type, + IFC4X3_RC4_IfcMaterialProfileSetUsageTapering_type, + IFC4X3_RC4_IfcMaterialProfileWithOffsets_type, + IFC4X3_RC4_IfcMaterialProperties_type, + IFC4X3_RC4_IfcMaterialRelationship_type, + IFC4X3_RC4_IfcMaterialSelect_type, + IFC4X3_RC4_IfcMaterialUsageDefinition_type, + IFC4X3_RC4_IfcMeasureValue_type, + IFC4X3_RC4_IfcMeasureWithUnit_type, + IFC4X3_RC4_IfcMechanicalFastener_type, + IFC4X3_RC4_IfcMechanicalFastenerType_type, + IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type, + IFC4X3_RC4_IfcMedicalDevice_type, + IFC4X3_RC4_IfcMedicalDeviceType_type, + IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type, + IFC4X3_RC4_IfcMember_type, + IFC4X3_RC4_IfcMemberStandardCase_type, + IFC4X3_RC4_IfcMemberType_type, + IFC4X3_RC4_IfcMemberTypeEnum_type, + IFC4X3_RC4_IfcMetric_type, + IFC4X3_RC4_IfcMetricValueSelect_type, + IFC4X3_RC4_IfcMirroredProfileDef_type, + IFC4X3_RC4_IfcMobileTelecommunicationsAppliance_type, + IFC4X3_RC4_IfcMobileTelecommunicationsApplianceType_type, + IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type, + IFC4X3_RC4_IfcModulusOfElasticityMeasure_type, + IFC4X3_RC4_IfcModulusOfLinearSubgradeReactionMeasure_type, + IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionMeasure_type, + IFC4X3_RC4_IfcModulusOfRotationalSubgradeReactionSelect_type, + IFC4X3_RC4_IfcModulusOfSubgradeReactionMeasure_type, + IFC4X3_RC4_IfcModulusOfSubgradeReactionSelect_type, + IFC4X3_RC4_IfcModulusOfTranslationalSubgradeReactionSelect_type, + IFC4X3_RC4_IfcMoistureDiffusivityMeasure_type, + IFC4X3_RC4_IfcMolecularWeightMeasure_type, + IFC4X3_RC4_IfcMomentOfInertiaMeasure_type, + IFC4X3_RC4_IfcMonetaryMeasure_type, + IFC4X3_RC4_IfcMonetaryUnit_type, + IFC4X3_RC4_IfcMonthInYearNumber_type, + IFC4X3_RC4_IfcMooringDevice_type, + IFC4X3_RC4_IfcMooringDeviceType_type, + IFC4X3_RC4_IfcMooringDeviceTypeEnum_type, + IFC4X3_RC4_IfcMotorConnection_type, + IFC4X3_RC4_IfcMotorConnectionType_type, + IFC4X3_RC4_IfcMotorConnectionTypeEnum_type, + IFC4X3_RC4_IfcNamedUnit_type, + IFC4X3_RC4_IfcNavigationElement_type, + IFC4X3_RC4_IfcNavigationElementType_type, + IFC4X3_RC4_IfcNavigationElementTypeEnum_type, + IFC4X3_RC4_IfcNonNegativeLengthMeasure_type, + IFC4X3_RC4_IfcNormalisedRatioMeasure_type, + IFC4X3_RC4_IfcNumericMeasure_type, + IFC4X3_RC4_IfcObject_type, + IFC4X3_RC4_IfcObjectDefinition_type, + IFC4X3_RC4_IfcObjective_type, + IFC4X3_RC4_IfcObjectiveEnum_type, + IFC4X3_RC4_IfcObjectPlacement_type, + IFC4X3_RC4_IfcObjectReferenceSelect_type, + IFC4X3_RC4_IfcObjectTypeEnum_type, + IFC4X3_RC4_IfcOccupant_type, + IFC4X3_RC4_IfcOccupantTypeEnum_type, + IFC4X3_RC4_IfcOffsetCurve_type, + IFC4X3_RC4_IfcOffsetCurve2D_type, + IFC4X3_RC4_IfcOffsetCurve3D_type, + IFC4X3_RC4_IfcOffsetCurveByDistances_type, + IFC4X3_RC4_IfcOpenCrossProfileDef_type, + IFC4X3_RC4_IfcOpeningElement_type, + IFC4X3_RC4_IfcOpeningElementTypeEnum_type, + IFC4X3_RC4_IfcOpeningStandardCase_type, + IFC4X3_RC4_IfcOpenShell_type, + IFC4X3_RC4_IfcOrganization_type, + IFC4X3_RC4_IfcOrganizationRelationship_type, + IFC4X3_RC4_IfcOrientedEdge_type, + IFC4X3_RC4_IfcOuterBoundaryCurve_type, + IFC4X3_RC4_IfcOutlet_type, + IFC4X3_RC4_IfcOutletType_type, + IFC4X3_RC4_IfcOutletTypeEnum_type, + IFC4X3_RC4_IfcOwnerHistory_type, + IFC4X3_RC4_IfcParameterizedProfileDef_type, + IFC4X3_RC4_IfcParameterValue_type, + IFC4X3_RC4_IfcPath_type, + IFC4X3_RC4_IfcPavement_type, + IFC4X3_RC4_IfcPavementType_type, + IFC4X3_RC4_IfcPavementTypeEnum_type, + IFC4X3_RC4_IfcPcurve_type, + IFC4X3_RC4_IfcPerformanceHistory_type, + IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type, + IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type, + IFC4X3_RC4_IfcPermeableCoveringProperties_type, + IFC4X3_RC4_IfcPermit_type, + IFC4X3_RC4_IfcPermitTypeEnum_type, + IFC4X3_RC4_IfcPerson_type, + IFC4X3_RC4_IfcPersonAndOrganization_type, + IFC4X3_RC4_IfcPHMeasure_type, + IFC4X3_RC4_IfcPhysicalComplexQuantity_type, + IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type, + IFC4X3_RC4_IfcPhysicalQuantity_type, + IFC4X3_RC4_IfcPhysicalSimpleQuantity_type, + IFC4X3_RC4_IfcPile_type, + IFC4X3_RC4_IfcPileConstructionEnum_type, + IFC4X3_RC4_IfcPileType_type, + IFC4X3_RC4_IfcPileTypeEnum_type, + IFC4X3_RC4_IfcPipeFitting_type, + IFC4X3_RC4_IfcPipeFittingType_type, + IFC4X3_RC4_IfcPipeFittingTypeEnum_type, + IFC4X3_RC4_IfcPipeSegment_type, + IFC4X3_RC4_IfcPipeSegmentType_type, + IFC4X3_RC4_IfcPipeSegmentTypeEnum_type, + IFC4X3_RC4_IfcPixelTexture_type, + IFC4X3_RC4_IfcPlacement_type, + IFC4X3_RC4_IfcPlanarBox_type, + IFC4X3_RC4_IfcPlanarExtent_type, + IFC4X3_RC4_IfcPlanarForceMeasure_type, + IFC4X3_RC4_IfcPlane_type, + IFC4X3_RC4_IfcPlaneAngleMeasure_type, + IFC4X3_RC4_IfcPlant_type, + IFC4X3_RC4_IfcPlate_type, + IFC4X3_RC4_IfcPlateStandardCase_type, + IFC4X3_RC4_IfcPlateType_type, + IFC4X3_RC4_IfcPlateTypeEnum_type, + IFC4X3_RC4_IfcPoint_type, + IFC4X3_RC4_IfcPointByDistanceExpression_type, + IFC4X3_RC4_IfcPointOnCurve_type, + IFC4X3_RC4_IfcPointOnSurface_type, + IFC4X3_RC4_IfcPointOrVertexPoint_type, + IFC4X3_RC4_IfcPolygonalBoundedHalfSpace_type, + IFC4X3_RC4_IfcPolygonalFaceSet_type, + IFC4X3_RC4_IfcPolyline_type, + IFC4X3_RC4_IfcPolyLoop_type, + IFC4X3_RC4_IfcPolynomialCurve_type, + IFC4X3_RC4_IfcPort_type, + IFC4X3_RC4_IfcPositioningElement_type, + IFC4X3_RC4_IfcPositiveInteger_type, + IFC4X3_RC4_IfcPositiveLengthMeasure_type, + IFC4X3_RC4_IfcPositivePlaneAngleMeasure_type, + IFC4X3_RC4_IfcPositiveRatioMeasure_type, + IFC4X3_RC4_IfcPostalAddress_type, + IFC4X3_RC4_IfcPowerMeasure_type, + IFC4X3_RC4_IfcPreDefinedColour_type, + IFC4X3_RC4_IfcPreDefinedCurveFont_type, + IFC4X3_RC4_IfcPreDefinedItem_type, + IFC4X3_RC4_IfcPreDefinedProperties_type, + IFC4X3_RC4_IfcPreDefinedPropertySet_type, + IFC4X3_RC4_IfcPreDefinedTextFont_type, + IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type, + IFC4X3_RC4_IfcPresentableText_type, + IFC4X3_RC4_IfcPresentationItem_type, + IFC4X3_RC4_IfcPresentationLayerAssignment_type, + IFC4X3_RC4_IfcPresentationLayerWithStyle_type, + IFC4X3_RC4_IfcPresentationStyle_type, + IFC4X3_RC4_IfcPressureMeasure_type, + IFC4X3_RC4_IfcProcedure_type, + IFC4X3_RC4_IfcProcedureType_type, + IFC4X3_RC4_IfcProcedureTypeEnum_type, + IFC4X3_RC4_IfcProcess_type, + IFC4X3_RC4_IfcProcessSelect_type, + IFC4X3_RC4_IfcProduct_type, + IFC4X3_RC4_IfcProductDefinitionShape_type, + IFC4X3_RC4_IfcProductRepresentation_type, + IFC4X3_RC4_IfcProductRepresentationSelect_type, + IFC4X3_RC4_IfcProductSelect_type, + IFC4X3_RC4_IfcProfileDef_type, + IFC4X3_RC4_IfcProfileProperties_type, + IFC4X3_RC4_IfcProfileTypeEnum_type, + IFC4X3_RC4_IfcProject_type, + IFC4X3_RC4_IfcProjectedCRS_type, + IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type, + IFC4X3_RC4_IfcProjectionElement_type, + IFC4X3_RC4_IfcProjectionElementTypeEnum_type, + IFC4X3_RC4_IfcProjectLibrary_type, + IFC4X3_RC4_IfcProjectOrder_type, + IFC4X3_RC4_IfcProjectOrderTypeEnum_type, + IFC4X3_RC4_IfcProperty_type, + IFC4X3_RC4_IfcPropertyAbstraction_type, + IFC4X3_RC4_IfcPropertyBoundedValue_type, + IFC4X3_RC4_IfcPropertyDefinition_type, + IFC4X3_RC4_IfcPropertyDependencyRelationship_type, + IFC4X3_RC4_IfcPropertyEnumeratedValue_type, + IFC4X3_RC4_IfcPropertyEnumeration_type, + IFC4X3_RC4_IfcPropertyListValue_type, + IFC4X3_RC4_IfcPropertyReferenceValue_type, + IFC4X3_RC4_IfcPropertySet_type, + IFC4X3_RC4_IfcPropertySetDefinition_type, + IFC4X3_RC4_IfcPropertySetDefinitionSelect_type, + IFC4X3_RC4_IfcPropertySetDefinitionSet_type, + IFC4X3_RC4_IfcPropertySetTemplate_type, + IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type, + IFC4X3_RC4_IfcPropertySingleValue_type, + IFC4X3_RC4_IfcPropertyTableValue_type, + IFC4X3_RC4_IfcPropertyTemplate_type, + IFC4X3_RC4_IfcPropertyTemplateDefinition_type, + IFC4X3_RC4_IfcProtectiveDevice_type, + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnit_type, + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitType_type, + IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type, + IFC4X3_RC4_IfcProtectiveDeviceType_type, + IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type, + IFC4X3_RC4_IfcProxy_type, + IFC4X3_RC4_IfcPump_type, + IFC4X3_RC4_IfcPumpType_type, + IFC4X3_RC4_IfcPumpTypeEnum_type, + IFC4X3_RC4_IfcQuantityArea_type, + IFC4X3_RC4_IfcQuantityCount_type, + IFC4X3_RC4_IfcQuantityLength_type, + IFC4X3_RC4_IfcQuantitySet_type, + IFC4X3_RC4_IfcQuantityTime_type, + IFC4X3_RC4_IfcQuantityVolume_type, + IFC4X3_RC4_IfcQuantityWeight_type, + IFC4X3_RC4_IfcRadioActivityMeasure_type, + IFC4X3_RC4_IfcRail_type, + IFC4X3_RC4_IfcRailing_type, + IFC4X3_RC4_IfcRailingType_type, + IFC4X3_RC4_IfcRailingTypeEnum_type, + IFC4X3_RC4_IfcRailType_type, + IFC4X3_RC4_IfcRailTypeEnum_type, + IFC4X3_RC4_IfcRailway_type, + IFC4X3_RC4_IfcRailwayPartTypeEnum_type, + IFC4X3_RC4_IfcRailwayTypeEnum_type, + IFC4X3_RC4_IfcRamp_type, + IFC4X3_RC4_IfcRampFlight_type, + IFC4X3_RC4_IfcRampFlightType_type, + IFC4X3_RC4_IfcRampFlightTypeEnum_type, + IFC4X3_RC4_IfcRampType_type, + IFC4X3_RC4_IfcRampTypeEnum_type, + IFC4X3_RC4_IfcRatioMeasure_type, + IFC4X3_RC4_IfcRationalBSplineCurveWithKnots_type, + IFC4X3_RC4_IfcRationalBSplineSurfaceWithKnots_type, + IFC4X3_RC4_IfcReal_type, + IFC4X3_RC4_IfcRectangleHollowProfileDef_type, + IFC4X3_RC4_IfcRectangleProfileDef_type, + IFC4X3_RC4_IfcRectangularPyramid_type, + IFC4X3_RC4_IfcRectangularTrimmedSurface_type, + IFC4X3_RC4_IfcRecurrencePattern_type, + IFC4X3_RC4_IfcRecurrenceTypeEnum_type, + IFC4X3_RC4_IfcReference_type, + IFC4X3_RC4_IfcReferent_type, + IFC4X3_RC4_IfcReferentTypeEnum_type, + IFC4X3_RC4_IfcReflectanceMethodEnum_type, + IFC4X3_RC4_IfcRegularTimeSeries_type, + IFC4X3_RC4_IfcReinforcedSoil_type, + IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type, + IFC4X3_RC4_IfcReinforcementBarProperties_type, + IFC4X3_RC4_IfcReinforcementDefinitionProperties_type, + IFC4X3_RC4_IfcReinforcingBar_type, + IFC4X3_RC4_IfcReinforcingBarRoleEnum_type, + IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type, + IFC4X3_RC4_IfcReinforcingBarType_type, + IFC4X3_RC4_IfcReinforcingBarTypeEnum_type, + IFC4X3_RC4_IfcReinforcingElement_type, + IFC4X3_RC4_IfcReinforcingElementType_type, + IFC4X3_RC4_IfcReinforcingMesh_type, + IFC4X3_RC4_IfcReinforcingMeshType_type, + IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type, + IFC4X3_RC4_IfcRelAdheresToElement_type, + IFC4X3_RC4_IfcRelAggregates_type, + IFC4X3_RC4_IfcRelAssigns_type, + IFC4X3_RC4_IfcRelAssignsToActor_type, + IFC4X3_RC4_IfcRelAssignsToControl_type, + IFC4X3_RC4_IfcRelAssignsToGroup_type, + IFC4X3_RC4_IfcRelAssignsToGroupByFactor_type, + IFC4X3_RC4_IfcRelAssignsToProcess_type, + IFC4X3_RC4_IfcRelAssignsToProduct_type, + IFC4X3_RC4_IfcRelAssignsToResource_type, + IFC4X3_RC4_IfcRelAssociates_type, + IFC4X3_RC4_IfcRelAssociatesApproval_type, + IFC4X3_RC4_IfcRelAssociatesClassification_type, + IFC4X3_RC4_IfcRelAssociatesConstraint_type, + IFC4X3_RC4_IfcRelAssociatesDocument_type, + IFC4X3_RC4_IfcRelAssociatesLibrary_type, + IFC4X3_RC4_IfcRelAssociatesMaterial_type, + IFC4X3_RC4_IfcRelAssociatesProfileDef_type, + IFC4X3_RC4_IfcRelationship_type, + IFC4X3_RC4_IfcRelConnects_type, + IFC4X3_RC4_IfcRelConnectsElements_type, + IFC4X3_RC4_IfcRelConnectsPathElements_type, + IFC4X3_RC4_IfcRelConnectsPorts_type, + IFC4X3_RC4_IfcRelConnectsPortToElement_type, + IFC4X3_RC4_IfcRelConnectsStructuralActivity_type, + IFC4X3_RC4_IfcRelConnectsStructuralMember_type, + IFC4X3_RC4_IfcRelConnectsWithEccentricity_type, + IFC4X3_RC4_IfcRelConnectsWithRealizingElements_type, + IFC4X3_RC4_IfcRelContainedInSpatialStructure_type, + IFC4X3_RC4_IfcRelCoversBldgElements_type, + IFC4X3_RC4_IfcRelCoversSpaces_type, + IFC4X3_RC4_IfcRelDeclares_type, + IFC4X3_RC4_IfcRelDecomposes_type, + IFC4X3_RC4_IfcRelDefines_type, + IFC4X3_RC4_IfcRelDefinesByObject_type, + IFC4X3_RC4_IfcRelDefinesByProperties_type, + IFC4X3_RC4_IfcRelDefinesByTemplate_type, + IFC4X3_RC4_IfcRelDefinesByType_type, + IFC4X3_RC4_IfcRelFillsElement_type, + IFC4X3_RC4_IfcRelFlowControlElements_type, + IFC4X3_RC4_IfcRelInterferesElements_type, + IFC4X3_RC4_IfcRelNests_type, + IFC4X3_RC4_IfcRelPositions_type, + IFC4X3_RC4_IfcRelProjectsElement_type, + IFC4X3_RC4_IfcRelReferencedInSpatialStructure_type, + IFC4X3_RC4_IfcRelSequence_type, + IFC4X3_RC4_IfcRelServicesBuildings_type, + IFC4X3_RC4_IfcRelSpaceBoundary_type, + IFC4X3_RC4_IfcRelSpaceBoundary1stLevel_type, + IFC4X3_RC4_IfcRelSpaceBoundary2ndLevel_type, + IFC4X3_RC4_IfcRelVoidsElement_type, + IFC4X3_RC4_IfcReparametrisedCompositeCurveSegment_type, + IFC4X3_RC4_IfcRepresentation_type, + IFC4X3_RC4_IfcRepresentationContext_type, + IFC4X3_RC4_IfcRepresentationItem_type, + IFC4X3_RC4_IfcRepresentationMap_type, + IFC4X3_RC4_IfcResource_type, + IFC4X3_RC4_IfcResourceApprovalRelationship_type, + IFC4X3_RC4_IfcResourceConstraintRelationship_type, + IFC4X3_RC4_IfcResourceLevelRelationship_type, + IFC4X3_RC4_IfcResourceObjectSelect_type, + IFC4X3_RC4_IfcResourceSelect_type, + IFC4X3_RC4_IfcResourceTime_type, + IFC4X3_RC4_IfcRevolvedAreaSolid_type, + IFC4X3_RC4_IfcRevolvedAreaSolidTapered_type, + IFC4X3_RC4_IfcRightCircularCone_type, + IFC4X3_RC4_IfcRightCircularCylinder_type, + IFC4X3_RC4_IfcRoad_type, + IFC4X3_RC4_IfcRoadPartTypeEnum_type, + IFC4X3_RC4_IfcRoadTypeEnum_type, + IFC4X3_RC4_IfcRoleEnum_type, + IFC4X3_RC4_IfcRoof_type, + IFC4X3_RC4_IfcRoofType_type, + IFC4X3_RC4_IfcRoofTypeEnum_type, + IFC4X3_RC4_IfcRoot_type, + IFC4X3_RC4_IfcRotationalFrequencyMeasure_type, + IFC4X3_RC4_IfcRotationalMassMeasure_type, + IFC4X3_RC4_IfcRotationalStiffnessMeasure_type, + IFC4X3_RC4_IfcRotationalStiffnessSelect_type, + IFC4X3_RC4_IfcRoundedRectangleProfileDef_type, + IFC4X3_RC4_IfcSanitaryTerminal_type, + IFC4X3_RC4_IfcSanitaryTerminalType_type, + IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type, + IFC4X3_RC4_IfcSchedulingTime_type, + IFC4X3_RC4_IfcSeamCurve_type, + IFC4X3_RC4_IfcSecondOrderPolynomialSpiral_type, + IFC4X3_RC4_IfcSectionalAreaIntegralMeasure_type, + IFC4X3_RC4_IfcSectionedSolid_type, + IFC4X3_RC4_IfcSectionedSolidHorizontal_type, + IFC4X3_RC4_IfcSectionedSpine_type, + IFC4X3_RC4_IfcSectionedSurface_type, + IFC4X3_RC4_IfcSectionModulusMeasure_type, + IFC4X3_RC4_IfcSectionProperties_type, + IFC4X3_RC4_IfcSectionReinforcementProperties_type, + IFC4X3_RC4_IfcSectionTypeEnum_type, + IFC4X3_RC4_IfcSegment_type, + IFC4X3_RC4_IfcSegmentedReferenceCurve_type, + IFC4X3_RC4_IfcSegmentIndexSelect_type, + IFC4X3_RC4_IfcSensor_type, + IFC4X3_RC4_IfcSensorType_type, + IFC4X3_RC4_IfcSensorTypeEnum_type, + IFC4X3_RC4_IfcSequenceEnum_type, + IFC4X3_RC4_IfcSeventhOrderPolynomialSpiral_type, + IFC4X3_RC4_IfcShadingDevice_type, + IFC4X3_RC4_IfcShadingDeviceType_type, + IFC4X3_RC4_IfcShadingDeviceTypeEnum_type, + IFC4X3_RC4_IfcShapeAspect_type, + IFC4X3_RC4_IfcShapeModel_type, + IFC4X3_RC4_IfcShapeRepresentation_type, + IFC4X3_RC4_IfcShearModulusMeasure_type, + IFC4X3_RC4_IfcShell_type, + IFC4X3_RC4_IfcShellBasedSurfaceModel_type, + IFC4X3_RC4_IfcSign_type, + IFC4X3_RC4_IfcSignal_type, + IFC4X3_RC4_IfcSignalType_type, + IFC4X3_RC4_IfcSignalTypeEnum_type, + IFC4X3_RC4_IfcSignType_type, + IFC4X3_RC4_IfcSignTypeEnum_type, + IFC4X3_RC4_IfcSimpleProperty_type, + IFC4X3_RC4_IfcSimplePropertyTemplate_type, + IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type, + IFC4X3_RC4_IfcSimpleValue_type, + IFC4X3_RC4_IfcSine_type, + IFC4X3_RC4_IfcSIPrefix_type, + IFC4X3_RC4_IfcSite_type, + IFC4X3_RC4_IfcSIUnit_type, + IFC4X3_RC4_IfcSIUnitName_type, + IFC4X3_RC4_IfcSizeSelect_type, + IFC4X3_RC4_IfcSlab_type, + IFC4X3_RC4_IfcSlabElementedCase_type, + IFC4X3_RC4_IfcSlabStandardCase_type, + IFC4X3_RC4_IfcSlabType_type, + IFC4X3_RC4_IfcSlabTypeEnum_type, + IFC4X3_RC4_IfcSlippageConnectionCondition_type, + IFC4X3_RC4_IfcSolarDevice_type, + IFC4X3_RC4_IfcSolarDeviceType_type, + IFC4X3_RC4_IfcSolarDeviceTypeEnum_type, + IFC4X3_RC4_IfcSolidAngleMeasure_type, + IFC4X3_RC4_IfcSolidModel_type, + IFC4X3_RC4_IfcSolidOrShell_type, + IFC4X3_RC4_IfcSolidStratum_type, + IFC4X3_RC4_IfcSoundPowerLevelMeasure_type, + IFC4X3_RC4_IfcSoundPowerMeasure_type, + IFC4X3_RC4_IfcSoundPressureLevelMeasure_type, + IFC4X3_RC4_IfcSoundPressureMeasure_type, + IFC4X3_RC4_IfcSpace_type, + IFC4X3_RC4_IfcSpaceBoundarySelect_type, + IFC4X3_RC4_IfcSpaceHeater_type, + IFC4X3_RC4_IfcSpaceHeaterType_type, + IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type, + IFC4X3_RC4_IfcSpaceType_type, + IFC4X3_RC4_IfcSpaceTypeEnum_type, + IFC4X3_RC4_IfcSpatialElement_type, + IFC4X3_RC4_IfcSpatialElementType_type, + IFC4X3_RC4_IfcSpatialReferenceSelect_type, + IFC4X3_RC4_IfcSpatialStructureElement_type, + IFC4X3_RC4_IfcSpatialStructureElementType_type, + IFC4X3_RC4_IfcSpatialZone_type, + IFC4X3_RC4_IfcSpatialZoneType_type, + IFC4X3_RC4_IfcSpatialZoneTypeEnum_type, + IFC4X3_RC4_IfcSpecificHeatCapacityMeasure_type, + IFC4X3_RC4_IfcSpecularExponent_type, + IFC4X3_RC4_IfcSpecularHighlightSelect_type, + IFC4X3_RC4_IfcSpecularRoughness_type, + IFC4X3_RC4_IfcSphere_type, + IFC4X3_RC4_IfcSphericalSurface_type, + IFC4X3_RC4_IfcSpiral_type, + IFC4X3_RC4_IfcStackTerminal_type, + IFC4X3_RC4_IfcStackTerminalType_type, + IFC4X3_RC4_IfcStackTerminalTypeEnum_type, + IFC4X3_RC4_IfcStair_type, + IFC4X3_RC4_IfcStairFlight_type, + IFC4X3_RC4_IfcStairFlightType_type, + IFC4X3_RC4_IfcStairFlightTypeEnum_type, + IFC4X3_RC4_IfcStairType_type, + IFC4X3_RC4_IfcStairTypeEnum_type, + IFC4X3_RC4_IfcStateEnum_type, + IFC4X3_RC4_IfcStructuralAction_type, + IFC4X3_RC4_IfcStructuralActivity_type, + IFC4X3_RC4_IfcStructuralActivityAssignmentSelect_type, + IFC4X3_RC4_IfcStructuralAnalysisModel_type, + IFC4X3_RC4_IfcStructuralConnection_type, + IFC4X3_RC4_IfcStructuralConnectionCondition_type, + IFC4X3_RC4_IfcStructuralCurveAction_type, + IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type, + IFC4X3_RC4_IfcStructuralCurveConnection_type, + IFC4X3_RC4_IfcStructuralCurveMember_type, + IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type, + IFC4X3_RC4_IfcStructuralCurveMemberVarying_type, + IFC4X3_RC4_IfcStructuralCurveReaction_type, + IFC4X3_RC4_IfcStructuralItem_type, + IFC4X3_RC4_IfcStructuralLinearAction_type, + IFC4X3_RC4_IfcStructuralLoad_type, + IFC4X3_RC4_IfcStructuralLoadCase_type, + IFC4X3_RC4_IfcStructuralLoadConfiguration_type, + IFC4X3_RC4_IfcStructuralLoadGroup_type, + IFC4X3_RC4_IfcStructuralLoadLinearForce_type, + IFC4X3_RC4_IfcStructuralLoadOrResult_type, + IFC4X3_RC4_IfcStructuralLoadPlanarForce_type, + IFC4X3_RC4_IfcStructuralLoadSingleDisplacement_type, + IFC4X3_RC4_IfcStructuralLoadSingleDisplacementDistortion_type, + IFC4X3_RC4_IfcStructuralLoadSingleForce_type, + IFC4X3_RC4_IfcStructuralLoadSingleForceWarping_type, + IFC4X3_RC4_IfcStructuralLoadStatic_type, + IFC4X3_RC4_IfcStructuralLoadTemperature_type, + IFC4X3_RC4_IfcStructuralMember_type, + IFC4X3_RC4_IfcStructuralPlanarAction_type, + IFC4X3_RC4_IfcStructuralPointAction_type, + IFC4X3_RC4_IfcStructuralPointConnection_type, + IFC4X3_RC4_IfcStructuralPointReaction_type, + IFC4X3_RC4_IfcStructuralReaction_type, + IFC4X3_RC4_IfcStructuralResultGroup_type, + IFC4X3_RC4_IfcStructuralSurfaceAction_type, + IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type, + IFC4X3_RC4_IfcStructuralSurfaceConnection_type, + IFC4X3_RC4_IfcStructuralSurfaceMember_type, + IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type, + IFC4X3_RC4_IfcStructuralSurfaceMemberVarying_type, + IFC4X3_RC4_IfcStructuralSurfaceReaction_type, + IFC4X3_RC4_IfcStyledItem_type, + IFC4X3_RC4_IfcStyledRepresentation_type, + IFC4X3_RC4_IfcStyleModel_type, + IFC4X3_RC4_IfcSubContractResource_type, + IFC4X3_RC4_IfcSubContractResourceType_type, + IFC4X3_RC4_IfcSubContractResourceTypeEnum_type, + IFC4X3_RC4_IfcSubedge_type, + IFC4X3_RC4_IfcSurface_type, + IFC4X3_RC4_IfcSurfaceCurve_type, + IFC4X3_RC4_IfcSurfaceCurveSweptAreaSolid_type, + IFC4X3_RC4_IfcSurfaceFeature_type, + IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type, + IFC4X3_RC4_IfcSurfaceOfLinearExtrusion_type, + IFC4X3_RC4_IfcSurfaceOfRevolution_type, + IFC4X3_RC4_IfcSurfaceOrFaceSurface_type, + IFC4X3_RC4_IfcSurfaceReinforcementArea_type, + IFC4X3_RC4_IfcSurfaceSide_type, + IFC4X3_RC4_IfcSurfaceStyle_type, + IFC4X3_RC4_IfcSurfaceStyleElementSelect_type, + IFC4X3_RC4_IfcSurfaceStyleLighting_type, + IFC4X3_RC4_IfcSurfaceStyleRefraction_type, + IFC4X3_RC4_IfcSurfaceStyleRendering_type, + IFC4X3_RC4_IfcSurfaceStyleShading_type, + IFC4X3_RC4_IfcSurfaceStyleWithTextures_type, + IFC4X3_RC4_IfcSurfaceTexture_type, + IFC4X3_RC4_IfcSweptAreaSolid_type, + IFC4X3_RC4_IfcSweptDiskSolid_type, + IFC4X3_RC4_IfcSweptDiskSolidPolygonal_type, + IFC4X3_RC4_IfcSweptSurface_type, + IFC4X3_RC4_IfcSwitchingDevice_type, + IFC4X3_RC4_IfcSwitchingDeviceType_type, + IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type, + IFC4X3_RC4_IfcSystem_type, + IFC4X3_RC4_IfcSystemFurnitureElement_type, + IFC4X3_RC4_IfcSystemFurnitureElementType_type, + IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type, + IFC4X3_RC4_IfcTable_type, + IFC4X3_RC4_IfcTableColumn_type, + IFC4X3_RC4_IfcTableRow_type, + IFC4X3_RC4_IfcTank_type, + IFC4X3_RC4_IfcTankType_type, + IFC4X3_RC4_IfcTankTypeEnum_type, + IFC4X3_RC4_IfcTask_type, + IFC4X3_RC4_IfcTaskDurationEnum_type, + IFC4X3_RC4_IfcTaskTime_type, + IFC4X3_RC4_IfcTaskTimeRecurring_type, + IFC4X3_RC4_IfcTaskType_type, + IFC4X3_RC4_IfcTaskTypeEnum_type, + IFC4X3_RC4_IfcTelecomAddress_type, + IFC4X3_RC4_IfcTemperatureGradientMeasure_type, + IFC4X3_RC4_IfcTemperatureRateOfChangeMeasure_type, + IFC4X3_RC4_IfcTendon_type, + IFC4X3_RC4_IfcTendonAnchor_type, + IFC4X3_RC4_IfcTendonAnchorType_type, + IFC4X3_RC4_IfcTendonAnchorTypeEnum_type, + IFC4X3_RC4_IfcTendonConduit_type, + IFC4X3_RC4_IfcTendonConduitType_type, + IFC4X3_RC4_IfcTendonConduitTypeEnum_type, + IFC4X3_RC4_IfcTendonType_type, + IFC4X3_RC4_IfcTendonTypeEnum_type, + IFC4X3_RC4_IfcTessellatedFaceSet_type, + IFC4X3_RC4_IfcTessellatedItem_type, + IFC4X3_RC4_IfcText_type, + IFC4X3_RC4_IfcTextAlignment_type, + IFC4X3_RC4_IfcTextDecoration_type, + IFC4X3_RC4_IfcTextFontName_type, + IFC4X3_RC4_IfcTextFontSelect_type, + IFC4X3_RC4_IfcTextLiteral_type, + IFC4X3_RC4_IfcTextLiteralWithExtent_type, + IFC4X3_RC4_IfcTextPath_type, + IFC4X3_RC4_IfcTextStyle_type, + IFC4X3_RC4_IfcTextStyleFontModel_type, + IFC4X3_RC4_IfcTextStyleForDefinedFont_type, + IFC4X3_RC4_IfcTextStyleTextModel_type, + IFC4X3_RC4_IfcTextTransformation_type, + IFC4X3_RC4_IfcTextureCoordinate_type, + IFC4X3_RC4_IfcTextureCoordinateGenerator_type, + IFC4X3_RC4_IfcTextureMap_type, + IFC4X3_RC4_IfcTextureVertex_type, + IFC4X3_RC4_IfcTextureVertexList_type, + IFC4X3_RC4_IfcThermalAdmittanceMeasure_type, + IFC4X3_RC4_IfcThermalConductivityMeasure_type, + IFC4X3_RC4_IfcThermalExpansionCoefficientMeasure_type, + IFC4X3_RC4_IfcThermalResistanceMeasure_type, + IFC4X3_RC4_IfcThermalTransmittanceMeasure_type, + IFC4X3_RC4_IfcThermodynamicTemperatureMeasure_type, + IFC4X3_RC4_IfcThirdOrderPolynomialSpiral_type, + IFC4X3_RC4_IfcTime_type, + IFC4X3_RC4_IfcTimeMeasure_type, + IFC4X3_RC4_IfcTimeOrRatioSelect_type, + IFC4X3_RC4_IfcTimePeriod_type, + IFC4X3_RC4_IfcTimeSeries_type, + IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type, + IFC4X3_RC4_IfcTimeSeriesValue_type, + IFC4X3_RC4_IfcTimeStamp_type, + IFC4X3_RC4_IfcTopologicalRepresentationItem_type, + IFC4X3_RC4_IfcTopologyRepresentation_type, + IFC4X3_RC4_IfcToroidalSurface_type, + IFC4X3_RC4_IfcTorqueMeasure_type, + IFC4X3_RC4_IfcTrackElement_type, + IFC4X3_RC4_IfcTrackElementType_type, + IFC4X3_RC4_IfcTrackElementTypeEnum_type, + IFC4X3_RC4_IfcTransformer_type, + IFC4X3_RC4_IfcTransformerType_type, + IFC4X3_RC4_IfcTransformerTypeEnum_type, + IFC4X3_RC4_IfcTransitionCode_type, + IFC4X3_RC4_IfcTranslationalStiffnessSelect_type, + IFC4X3_RC4_IfcTransportElement_type, + IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type, + IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type, + IFC4X3_RC4_IfcTransportElementType_type, + IFC4X3_RC4_IfcTransportElementTypeSelect_type, + IFC4X3_RC4_IfcTrapeziumProfileDef_type, + IFC4X3_RC4_IfcTriangulatedFaceSet_type, + IFC4X3_RC4_IfcTriangulatedIrregularNetwork_type, + IFC4X3_RC4_IfcTrimmedCurve_type, + IFC4X3_RC4_IfcTrimmingPreference_type, + IFC4X3_RC4_IfcTrimmingSelect_type, + IFC4X3_RC4_IfcTShapeProfileDef_type, + IFC4X3_RC4_IfcTubeBundle_type, + IFC4X3_RC4_IfcTubeBundleType_type, + IFC4X3_RC4_IfcTubeBundleTypeEnum_type, + IFC4X3_RC4_IfcTypeObject_type, + IFC4X3_RC4_IfcTypeProcess_type, + IFC4X3_RC4_IfcTypeProduct_type, + IFC4X3_RC4_IfcTypeResource_type, + IFC4X3_RC4_IfcUnit_type, + IFC4X3_RC4_IfcUnitaryControlElement_type, + IFC4X3_RC4_IfcUnitaryControlElementType_type, + IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type, + IFC4X3_RC4_IfcUnitaryEquipment_type, + IFC4X3_RC4_IfcUnitaryEquipmentType_type, + IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type, + IFC4X3_RC4_IfcUnitAssignment_type, + IFC4X3_RC4_IfcUnitEnum_type, + IFC4X3_RC4_IfcURIReference_type, + IFC4X3_RC4_IfcUShapeProfileDef_type, + IFC4X3_RC4_IfcValue_type, + IFC4X3_RC4_IfcValve_type, + IFC4X3_RC4_IfcValveType_type, + IFC4X3_RC4_IfcValveTypeEnum_type, + IFC4X3_RC4_IfcVaporPermeabilityMeasure_type, + IFC4X3_RC4_IfcVector_type, + IFC4X3_RC4_IfcVectorOrDirection_type, + IFC4X3_RC4_IfcVertex_type, + IFC4X3_RC4_IfcVertexLoop_type, + IFC4X3_RC4_IfcVertexPoint_type, + IFC4X3_RC4_IfcVibrationDamper_type, + IFC4X3_RC4_IfcVibrationDamperType_type, + IFC4X3_RC4_IfcVibrationDamperTypeEnum_type, + IFC4X3_RC4_IfcVibrationIsolator_type, + IFC4X3_RC4_IfcVibrationIsolatorType_type, + IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type, + IFC4X3_RC4_IfcVirtualElement_type, + IFC4X3_RC4_IfcVirtualGridIntersection_type, + IFC4X3_RC4_IfcVoidingFeature_type, + IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type, + IFC4X3_RC4_IfcVoidStratum_type, + IFC4X3_RC4_IfcVolumeMeasure_type, + IFC4X3_RC4_IfcVolumetricFlowRateMeasure_type, + IFC4X3_RC4_IfcWall_type, + IFC4X3_RC4_IfcWallElementedCase_type, + IFC4X3_RC4_IfcWallStandardCase_type, + IFC4X3_RC4_IfcWallType_type, + IFC4X3_RC4_IfcWallTypeEnum_type, + IFC4X3_RC4_IfcWarpingConstantMeasure_type, + IFC4X3_RC4_IfcWarpingMomentMeasure_type, + IFC4X3_RC4_IfcWarpingStiffnessSelect_type, + IFC4X3_RC4_IfcWasteTerminal_type, + IFC4X3_RC4_IfcWasteTerminalType_type, + IFC4X3_RC4_IfcWasteTerminalTypeEnum_type, + IFC4X3_RC4_IfcWaterStratum_type, + IFC4X3_RC4_IfcWindow_type, + IFC4X3_RC4_IfcWindowLiningProperties_type, + IFC4X3_RC4_IfcWindowPanelOperationEnum_type, + IFC4X3_RC4_IfcWindowPanelPositionEnum_type, + IFC4X3_RC4_IfcWindowPanelProperties_type, + IFC4X3_RC4_IfcWindowStandardCase_type, + IFC4X3_RC4_IfcWindowStyle_type, + IFC4X3_RC4_IfcWindowStyleConstructionEnum_type, + IFC4X3_RC4_IfcWindowStyleOperationEnum_type, + IFC4X3_RC4_IfcWindowType_type, + IFC4X3_RC4_IfcWindowTypeEnum_type, + IFC4X3_RC4_IfcWindowTypePartitioningEnum_type, + IFC4X3_RC4_IfcWorkCalendar_type, + IFC4X3_RC4_IfcWorkCalendarTypeEnum_type, + IFC4X3_RC4_IfcWorkControl_type, + IFC4X3_RC4_IfcWorkPlan_type, + IFC4X3_RC4_IfcWorkPlanTypeEnum_type, + IFC4X3_RC4_IfcWorkSchedule_type, + IFC4X3_RC4_IfcWorkScheduleTypeEnum_type, + IFC4X3_RC4_IfcWorkTime_type, + IFC4X3_RC4_IfcZone_type, + IFC4X3_RC4_IfcZShapeProfileDef_type + }; + return new schema_definition(strings[3905], declarations, new IFC4X3_RC4_instance_factory()); } diff --git a/src/ifcparse/Ifc4x3_rc4.cpp b/src/ifcparse/Ifc4x3_rc4.cpp index 64058b2c9d..9d7b0fe8f7 100644 --- a/src/ifcparse/Ifc4x3_rc4.cpp +++ b/src/ifcparse/Ifc4x3_rc4.cpp @@ -1377,20 +1377,11 @@ Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcActionRequestTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EMAIL", "FAX", "PHONE", "POST", "VERBAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcActionRequestTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcActionRequestTypeEnum::Value Ifc4x3_rc4::IfcActionRequestTypeEnum::FromString(const std::string& s) { - if (s == "EMAIL") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_EMAIL; - if (s == "FAX") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_FAX; - if (s == "PHONE") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_PHONE; - if (s == "POST") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_POST; - if (s == "VERBAL") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_VERBAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcActionRequestTypeEnum::IfcActionRequestType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcActionRequestTypeEnum::Value) IFC4X3_RC4_IfcActionRequestTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcActionRequestTypeEnum::operator Ifc4x3_rc4::IfcActionRequestTypeEnum::Value() const { @@ -1419,40 +1410,11 @@ Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcActionSourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 27 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEAD_LOAD_G", "COMPLETION_G1", "LIVE_LOAD_Q", "SNOW_S", "WIND_W", "PRESTRESSING_P", "SETTLEMENT_U", "TEMPERATURE_T", "EARTHQUAKE_E", "FIRE", "IMPULSE", "IMPACT", "TRANSPORT", "ERECTION", "PROPPING", "SYSTEM_IMPERFECTION", "SHRINKAGE", "CREEP", "LACK_OF_FIT", "BUOYANCY", "ICE", "CURRENT", "WAVE", "RAIN", "BRAKES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcActionSourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcActionSourceTypeEnum::Value Ifc4x3_rc4::IfcActionSourceTypeEnum::FromString(const std::string& s) { - if (s == "DEAD_LOAD_G") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_DEAD_LOAD_G; - if (s == "COMPLETION_G1") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_COMPLETION_G1; - if (s == "LIVE_LOAD_Q") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_LIVE_LOAD_Q; - if (s == "SNOW_S") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_SNOW_S; - if (s == "WIND_W") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_WIND_W; - if (s == "PRESTRESSING_P") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_PRESTRESSING_P; - if (s == "SETTLEMENT_U") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_SETTLEMENT_U; - if (s == "TEMPERATURE_T") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_TEMPERATURE_T; - if (s == "EARTHQUAKE_E") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_EARTHQUAKE_E; - if (s == "FIRE") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_FIRE; - if (s == "IMPULSE") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_IMPULSE; - if (s == "IMPACT") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_IMPACT; - if (s == "TRANSPORT") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_TRANSPORT; - if (s == "ERECTION") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_ERECTION; - if (s == "PROPPING") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_PROPPING; - if (s == "SYSTEM_IMPERFECTION") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_SYSTEM_IMPERFECTION; - if (s == "SHRINKAGE") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_SHRINKAGE; - if (s == "CREEP") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_CREEP; - if (s == "LACK_OF_FIT") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_LACK_OF_FIT; - if (s == "BUOYANCY") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_BUOYANCY; - if (s == "ICE") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_ICE; - if (s == "CURRENT") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_CURRENT; - if (s == "WAVE") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_WAVE; - if (s == "RAIN") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_RAIN; - if (s == "BRAKES") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_BRAKES; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcActionSourceTypeEnum::IfcActionSourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcActionSourceTypeEnum::Value) IFC4X3_RC4_IfcActionSourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcActionSourceTypeEnum::operator Ifc4x3_rc4::IfcActionSourceTypeEnum::Value() const { @@ -1481,18 +1443,11 @@ Ifc4x3_rc4::IfcActionTypeEnum::IfcActionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcActionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PERMANENT_G", "VARIABLE_Q", "EXTRAORDINARY_A", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcActionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcActionTypeEnum::Value Ifc4x3_rc4::IfcActionTypeEnum::FromString(const std::string& s) { - if (s == "PERMANENT_G") return ::Ifc4x3_rc4::IfcActionTypeEnum::IfcActionType_PERMANENT_G; - if (s == "VARIABLE_Q") return ::Ifc4x3_rc4::IfcActionTypeEnum::IfcActionType_VARIABLE_Q; - if (s == "EXTRAORDINARY_A") return ::Ifc4x3_rc4::IfcActionTypeEnum::IfcActionType_EXTRAORDINARY_A; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcActionTypeEnum::IfcActionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcActionTypeEnum::IfcActionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcActionTypeEnum::Value) IFC4X3_RC4_IfcActionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcActionTypeEnum::operator Ifc4x3_rc4::IfcActionTypeEnum::Value() const { @@ -1521,20 +1476,11 @@ Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcActuatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRICACTUATOR", "HANDOPERATEDACTUATOR", "HYDRAULICACTUATOR", "PNEUMATICACTUATOR", "THERMOSTATICACTUATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcActuatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcActuatorTypeEnum::Value Ifc4x3_rc4::IfcActuatorTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRICACTUATOR") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_ELECTRICACTUATOR; - if (s == "HANDOPERATEDACTUATOR") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_HANDOPERATEDACTUATOR; - if (s == "HYDRAULICACTUATOR") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_HYDRAULICACTUATOR; - if (s == "PNEUMATICACTUATOR") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_PNEUMATICACTUATOR; - if (s == "THERMOSTATICACTUATOR") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_THERMOSTATICACTUATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcActuatorTypeEnum::IfcActuatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcActuatorTypeEnum::Value) IFC4X3_RC4_IfcActuatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcActuatorTypeEnum::operator Ifc4x3_rc4::IfcActuatorTypeEnum::Value() const { @@ -1563,18 +1509,11 @@ Ifc4x3_rc4::IfcAddressTypeEnum::IfcAddressTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcAddressTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "HOME", "DISTRIBUTIONPOINT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAddressTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAddressTypeEnum::Value Ifc4x3_rc4::IfcAddressTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc4::IfcAddressTypeEnum::IfcAddressType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc4::IfcAddressTypeEnum::IfcAddressType_SITE; - if (s == "HOME") return ::Ifc4x3_rc4::IfcAddressTypeEnum::IfcAddressType_HOME; - if (s == "DISTRIBUTIONPOINT") return ::Ifc4x3_rc4::IfcAddressTypeEnum::IfcAddressType_DISTRIBUTIONPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAddressTypeEnum::IfcAddressType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAddressTypeEnum::Value) IFC4X3_RC4_IfcAddressTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAddressTypeEnum::operator Ifc4x3_rc4::IfcAddressTypeEnum::Value() const { @@ -1603,18 +1542,11 @@ Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTFLOW", "VARIABLEFLOWPRESSUREDEPENDANT", "VARIABLEFLOWPRESSUREINDEPENDANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::Value Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTFLOW") return ::Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_CONSTANTFLOW; - if (s == "VARIABLEFLOWPRESSUREDEPENDANT") return ::Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREDEPENDANT; - if (s == "VARIABLEFLOWPRESSUREINDEPENDANT") return ::Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_VARIABLEFLOWPRESSUREINDEPENDANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::IfcAirTerminalBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::Value) IFC4X3_RC4_IfcAirTerminalBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::operator Ifc4x3_rc4::IfcAirTerminalBoxTypeEnum::Value() const { @@ -1643,19 +1575,11 @@ Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcAirTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIFFUSER", "GRILLE", "LOUVRE", "REGISTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAirTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAirTerminalTypeEnum::Value Ifc4x3_rc4::IfcAirTerminalTypeEnum::FromString(const std::string& s) { - if (s == "DIFFUSER") return ::Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_DIFFUSER; - if (s == "GRILLE") return ::Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_GRILLE; - if (s == "LOUVRE") return ::Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_LOUVRE; - if (s == "REGISTER") return ::Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_REGISTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAirTerminalTypeEnum::IfcAirTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAirTerminalTypeEnum::Value) IFC4X3_RC4_IfcAirTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAirTerminalTypeEnum::operator Ifc4x3_rc4::IfcAirTerminalTypeEnum::Value() const { @@ -1684,24 +1608,11 @@ Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryTypeEnum(con } const char* Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXEDPLATECOUNTERFLOWEXCHANGER", "FIXEDPLATECROSSFLOWEXCHANGER", "FIXEDPLATEPARALLELFLOWEXCHANGER", "ROTARYWHEEL", "RUNAROUNDCOILLOOP", "HEATPIPE", "TWINTOWERENTHALPYRECOVERYLOOPS", "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS", "THERMOSIPHONCOILTYPEHEATEXCHANGERS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::Value Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::FromString(const std::string& s) { - if (s == "FIXEDPLATECOUNTERFLOWEXCHANGER") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECOUNTERFLOWEXCHANGER; - if (s == "FIXEDPLATECROSSFLOWEXCHANGER") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATECROSSFLOWEXCHANGER; - if (s == "FIXEDPLATEPARALLELFLOWEXCHANGER") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_FIXEDPLATEPARALLELFLOWEXCHANGER; - if (s == "ROTARYWHEEL") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_ROTARYWHEEL; - if (s == "RUNAROUNDCOILLOOP") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_RUNAROUNDCOILLOOP; - if (s == "HEATPIPE") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_HEATPIPE; - if (s == "TWINTOWERENTHALPYRECOVERYLOOPS") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_TWINTOWERENTHALPYRECOVERYLOOPS; - if (s == "THERMOSIPHONSEALEDTUBEHEATEXCHANGERS") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONSEALEDTUBEHEATEXCHANGERS; - if (s == "THERMOSIPHONCOILTYPEHEATEXCHANGERS") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_THERMOSIPHONCOILTYPEHEATEXCHANGERS; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::IfcAirToAirHeatRecoveryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::Value) IFC4X3_RC4_IfcAirToAirHeatRecoveryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::operator Ifc4x3_rc4::IfcAirToAirHeatRecoveryTypeEnum::Value() const { @@ -1730,23 +1641,11 @@ Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcAlarmTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELL", "BREAKGLASSBUTTON", "LIGHT", "MANUALPULLBOX", "SIREN", "WHISTLE", "RAILWAYCROCODILE", "RAILWAYDETONATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAlarmTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAlarmTypeEnum::Value Ifc4x3_rc4::IfcAlarmTypeEnum::FromString(const std::string& s) { - if (s == "BELL") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_BELL; - if (s == "BREAKGLASSBUTTON") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_BREAKGLASSBUTTON; - if (s == "LIGHT") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_LIGHT; - if (s == "MANUALPULLBOX") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_MANUALPULLBOX; - if (s == "SIREN") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_SIREN; - if (s == "WHISTLE") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_WHISTLE; - if (s == "RAILWAYCROCODILE") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYCROCODILE; - if (s == "RAILWAYDETONATOR") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_RAILWAYDETONATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAlarmTypeEnum::IfcAlarmType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAlarmTypeEnum::Value) IFC4X3_RC4_IfcAlarmTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAlarmTypeEnum::operator Ifc4x3_rc4::IfcAlarmTypeEnum::Value() const { @@ -1775,20 +1674,11 @@ Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentTypeEnum(con } const char* Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLOSSCURVE", "CONSTANTCANT", "COSINECURVE", "HELMERTCURVE", "LINEARTRANSITION", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::Value Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BLOSSCURVE") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_BLOSSCURVE; - if (s == "CONSTANTCANT") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_CONSTANTCANT; - if (s == "COSINECURVE") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_COSINECURVE; - if (s == "HELMERTCURVE") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_HELMERTCURVE; - if (s == "LINEARTRANSITION") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_LINEARTRANSITION; - if (s == "SINECURVE") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::IfcAlignmentCantSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::Value) IFC4X3_RC4_IfcAlignmentCantSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::operator Ifc4x3_rc4::IfcAlignmentCantSegmentTypeEnum::Value() const { @@ -1817,22 +1707,11 @@ Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegment } const char* Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINE", "CIRCULARARC", "CLOTHOID", "CUBIC", "HELMERTCURVE", "BLOSSCURVE", "COSINECURVE", "SINECURVE", "VIENNESEBEND" }; - return names[v]; + return IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::Value Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "LINE") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_LINE; - if (s == "CIRCULARARC") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CIRCULARARC; - if (s == "CLOTHOID") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CLOTHOID; - if (s == "CUBIC") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_CUBIC; - if (s == "HELMERTCURVE") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_HELMERTCURVE; - if (s == "BLOSSCURVE") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_BLOSSCURVE; - if (s == "COSINECURVE") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_COSINECURVE; - if (s == "SINECURVE") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_SINECURVE; - if (s == "VIENNESEBEND") return ::Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::IfcAlignmentHorizontalSegmentType_VIENNESEBEND; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::Value) IFC4X3_RC4_IfcAlignmentHorizontalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::operator Ifc4x3_rc4::IfcAlignmentHorizontalSegmentTypeEnum::Value() const { @@ -1861,15 +1740,11 @@ Ifc4x3_rc4::IfcAlignmentTypeEnum::IfcAlignmentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcAlignmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAlignmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAlignmentTypeEnum::Value Ifc4x3_rc4::IfcAlignmentTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAlignmentTypeEnum::IfcAlignmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAlignmentTypeEnum::IfcAlignmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAlignmentTypeEnum::Value) IFC4X3_RC4_IfcAlignmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAlignmentTypeEnum::operator Ifc4x3_rc4::IfcAlignmentTypeEnum::Value() const { @@ -1898,17 +1773,11 @@ Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType } const char* Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTANTGRADIENT", "CIRCULARARC", "PARABOLICARC", "CLOTHOID" }; - return names[v]; + return IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::Value Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CONSTANTGRADIENT") return ::Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CONSTANTGRADIENT; - if (s == "CIRCULARARC") return ::Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CIRCULARARC; - if (s == "PARABOLICARC") return ::Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_PARABOLICARC; - if (s == "CLOTHOID") return ::Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::IfcAlignmentVerticalSegmentType_CLOTHOID; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::Value) IFC4X3_RC4_IfcAlignmentVerticalSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::operator Ifc4x3_rc4::IfcAlignmentVerticalSegmentTypeEnum::Value() const { @@ -1937,18 +1806,11 @@ Ifc4x3_rc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcAnalysisModelTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "IN_PLANE_LOADING_2D", "OUT_PLANE_LOADING_2D", "LOADING_3D", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAnalysisModelTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAnalysisModelTypeEnum::Value Ifc4x3_rc4::IfcAnalysisModelTypeEnum::FromString(const std::string& s) { - if (s == "IN_PLANE_LOADING_2D") return ::Ifc4x3_rc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_IN_PLANE_LOADING_2D; - if (s == "OUT_PLANE_LOADING_2D") return ::Ifc4x3_rc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_OUT_PLANE_LOADING_2D; - if (s == "LOADING_3D") return ::Ifc4x3_rc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_LOADING_3D; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAnalysisModelTypeEnum::IfcAnalysisModelType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAnalysisModelTypeEnum::Value) IFC4X3_RC4_IfcAnalysisModelTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAnalysisModelTypeEnum::operator Ifc4x3_rc4::IfcAnalysisModelTypeEnum::Value() const { @@ -1977,19 +1839,11 @@ Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRST_ORDER_THEORY", "SECOND_ORDER_THEORY", "THIRD_ORDER_THEORY", "FULL_NONLINEAR_THEORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::Value Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::FromString(const std::string& s) { - if (s == "FIRST_ORDER_THEORY") return ::Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FIRST_ORDER_THEORY; - if (s == "SECOND_ORDER_THEORY") return ::Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_SECOND_ORDER_THEORY; - if (s == "THIRD_ORDER_THEORY") return ::Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_THIRD_ORDER_THEORY; - if (s == "FULL_NONLINEAR_THEORY") return ::Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_FULL_NONLINEAR_THEORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::IfcAnalysisTheoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::Value) IFC4X3_RC4_IfcAnalysisTheoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::operator Ifc4x3_rc4::IfcAnalysisTheoryTypeEnum::Value() const { @@ -2018,24 +1872,11 @@ Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcAnnotationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSUMEDPOINT", "ASBUILTAREA", "ASBUILTLINE", "NON_PHYSICAL_SIGNAL", "ASSUMEDLINE", "WIDTHEVENT", "ASSUMEDAREA", "SUPERELEVATIONEVENT", "ASBUILTPOINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAnnotationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAnnotationTypeEnum::Value Ifc4x3_rc4::IfcAnnotationTypeEnum::FromString(const std::string& s) { - if (s == "ASSUMEDPOINT") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDPOINT; - if (s == "ASBUILTAREA") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTAREA; - if (s == "ASBUILTLINE") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTLINE; - if (s == "NON_PHYSICAL_SIGNAL") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_NON_PHYSICAL_SIGNAL; - if (s == "ASSUMEDLINE") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDLINE; - if (s == "WIDTHEVENT") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_WIDTHEVENT; - if (s == "ASSUMEDAREA") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_ASSUMEDAREA; - if (s == "SUPERELEVATIONEVENT") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_SUPERELEVATIONEVENT; - if (s == "ASBUILTPOINT") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_ASBUILTPOINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAnnotationTypeEnum::IfcAnnotationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAnnotationTypeEnum::Value) IFC4X3_RC4_IfcAnnotationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAnnotationTypeEnum::operator Ifc4x3_rc4::IfcAnnotationTypeEnum::Value() const { @@ -2064,17 +1905,11 @@ Ifc4x3_rc4::IfcArithmeticOperatorEnum::IfcArithmeticOperatorEnum(const std::stri } const char* Ifc4x3_rc4::IfcArithmeticOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADD", "DIVIDE", "MULTIPLY", "SUBTRACT" }; - return names[v]; + return IFC4X3_RC4_IfcArithmeticOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcArithmeticOperatorEnum::Value Ifc4x3_rc4::IfcArithmeticOperatorEnum::FromString(const std::string& s) { - if (s == "ADD") return ::Ifc4x3_rc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_ADD; - if (s == "DIVIDE") return ::Ifc4x3_rc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_DIVIDE; - if (s == "MULTIPLY") return ::Ifc4x3_rc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_MULTIPLY; - if (s == "SUBTRACT") return ::Ifc4x3_rc4::IfcArithmeticOperatorEnum::IfcArithmeticOperator_SUBTRACT; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcArithmeticOperatorEnum::Value) IFC4X3_RC4_IfcArithmeticOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcArithmeticOperatorEnum::operator Ifc4x3_rc4::IfcArithmeticOperatorEnum::Value() const { @@ -2103,16 +1938,11 @@ Ifc4x3_rc4::IfcAssemblyPlaceEnum::IfcAssemblyPlaceEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcAssemblyPlaceEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SITE", "FACTORY", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAssemblyPlaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAssemblyPlaceEnum::Value Ifc4x3_rc4::IfcAssemblyPlaceEnum::FromString(const std::string& s) { - if (s == "SITE") return ::Ifc4x3_rc4::IfcAssemblyPlaceEnum::IfcAssemblyPlace_SITE; - if (s == "FACTORY") return ::Ifc4x3_rc4::IfcAssemblyPlaceEnum::IfcAssemblyPlace_FACTORY; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAssemblyPlaceEnum::IfcAssemblyPlace_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAssemblyPlaceEnum::Value) IFC4X3_RC4_IfcAssemblyPlaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAssemblyPlaceEnum::operator Ifc4x3_rc4::IfcAssemblyPlaceEnum::Value() const { @@ -2141,28 +1971,11 @@ Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceTypeEnum(con } const char* Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPLIFIER", "CAMERA", "DISPLAY", "MICROPHONE", "PLAYER", "PROJECTOR", "RECEIVER", "SPEAKER", "SWITCHER", "TELEPHONE", "TUNER", "COMMUNICATIONTERMINAL", "RECORDINGEQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::Value Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::FromString(const std::string& s) { - if (s == "AMPLIFIER") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_AMPLIFIER; - if (s == "CAMERA") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_CAMERA; - if (s == "DISPLAY") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_DISPLAY; - if (s == "MICROPHONE") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_MICROPHONE; - if (s == "PLAYER") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PLAYER; - if (s == "PROJECTOR") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_PROJECTOR; - if (s == "RECEIVER") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECEIVER; - if (s == "SPEAKER") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SPEAKER; - if (s == "SWITCHER") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_SWITCHER; - if (s == "TELEPHONE") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TELEPHONE; - if (s == "TUNER") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_TUNER; - if (s == "COMMUNICATIONTERMINAL") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_COMMUNICATIONTERMINAL; - if (s == "RECORDINGEQUIPMENT") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_RECORDINGEQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::IfcAudioVisualApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::Value) IFC4X3_RC4_IfcAudioVisualApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::operator Ifc4x3_rc4::IfcAudioVisualApplianceTypeEnum::Value() const { @@ -2191,19 +2004,11 @@ Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm(const std::string& v) { } const char* Ifc4x3_rc4::IfcBSplineCurveForm::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POLYLINE_FORM", "CIRCULAR_ARC", "ELLIPTIC_ARC", "PARABOLIC_ARC", "HYPERBOLIC_ARC", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC4_IfcBSplineCurveForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBSplineCurveForm::Value Ifc4x3_rc4::IfcBSplineCurveForm::FromString(const std::string& s) { - if (s == "POLYLINE_FORM") return ::Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm_POLYLINE_FORM; - if (s == "CIRCULAR_ARC") return ::Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm_CIRCULAR_ARC; - if (s == "ELLIPTIC_ARC") return ::Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm_ELLIPTIC_ARC; - if (s == "PARABOLIC_ARC") return ::Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm_PARABOLIC_ARC; - if (s == "HYPERBOLIC_ARC") return ::Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm_HYPERBOLIC_ARC; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc4::IfcBSplineCurveForm::IfcBSplineCurveForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBSplineCurveForm::Value) IFC4X3_RC4_IfcBSplineCurveForm_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBSplineCurveForm::operator Ifc4x3_rc4::IfcBSplineCurveForm::Value() const { @@ -2232,24 +2037,11 @@ Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm(const std::string& v) { } const char* Ifc4x3_rc4::IfcBSplineSurfaceForm::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLANE_SURF", "CYLINDRICAL_SURF", "CONICAL_SURF", "SPHERICAL_SURF", "TOROIDAL_SURF", "SURF_OF_REVOLUTION", "RULED_SURF", "GENERALISED_CONE", "QUADRIC_SURF", "SURF_OF_LINEAR_EXTRUSION", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC4_IfcBSplineSurfaceForm_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBSplineSurfaceForm::Value Ifc4x3_rc4::IfcBSplineSurfaceForm::FromString(const std::string& s) { - if (s == "PLANE_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_PLANE_SURF; - if (s == "CYLINDRICAL_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CYLINDRICAL_SURF; - if (s == "CONICAL_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_CONICAL_SURF; - if (s == "SPHERICAL_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SPHERICAL_SURF; - if (s == "TOROIDAL_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_TOROIDAL_SURF; - if (s == "SURF_OF_REVOLUTION") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_REVOLUTION; - if (s == "RULED_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_RULED_SURF; - if (s == "GENERALISED_CONE") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_GENERALISED_CONE; - if (s == "QUADRIC_SURF") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_QUADRIC_SURF; - if (s == "SURF_OF_LINEAR_EXTRUSION") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_SURF_OF_LINEAR_EXTRUSION; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc4::IfcBSplineSurfaceForm::IfcBSplineSurfaceForm_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBSplineSurfaceForm::Value) IFC4X3_RC4_IfcBSplineSurfaceForm_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBSplineSurfaceForm::operator Ifc4x3_rc4::IfcBSplineSurfaceForm::Value() const { @@ -2278,27 +2070,11 @@ Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEAM", "JOIST", "HOLLOWCORE", "LINTEL", "SPANDREL", "T_BEAM", "GIRDER_SEGMENT", "DIAPHRAGM", "PIERCAP", "HATSTONE", "CORNICE", "EDGEBEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBeamTypeEnum::Value Ifc4x3_rc4::IfcBeamTypeEnum::FromString(const std::string& s) { - if (s == "BEAM") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_BEAM; - if (s == "JOIST") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_JOIST; - if (s == "HOLLOWCORE") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_HOLLOWCORE; - if (s == "LINTEL") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_LINTEL; - if (s == "SPANDREL") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_SPANDREL; - if (s == "T_BEAM") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_T_BEAM; - if (s == "GIRDER_SEGMENT") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_GIRDER_SEGMENT; - if (s == "DIAPHRAGM") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_DIAPHRAGM; - if (s == "PIERCAP") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_PIERCAP; - if (s == "HATSTONE") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_HATSTONE; - if (s == "CORNICE") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_CORNICE; - if (s == "EDGEBEAM") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_EDGEBEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBeamTypeEnum::IfcBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBeamTypeEnum::Value) IFC4X3_RC4_IfcBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBeamTypeEnum::operator Ifc4x3_rc4::IfcBeamTypeEnum::Value() const { @@ -2327,18 +2103,11 @@ Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacementEnum(const } const char* Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIXED_MOVEMENT", "GUIDED_LONGITUDINAL", "GUIDED_TRANSVERSAL", "FREE_MOVEMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBearingTypeDisplacementEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::Value Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::FromString(const std::string& s) { - if (s == "FIXED_MOVEMENT") return ::Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FIXED_MOVEMENT; - if (s == "GUIDED_LONGITUDINAL") return ::Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_LONGITUDINAL; - if (s == "GUIDED_TRANSVERSAL") return ::Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_GUIDED_TRANSVERSAL; - if (s == "FREE_MOVEMENT") return ::Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_FREE_MOVEMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::IfcBearingTypeDisplacement_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::Value) IFC4X3_RC4_IfcBearingTypeDisplacementEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::operator Ifc4x3_rc4::IfcBearingTypeDisplacementEnum::Value() const { @@ -2367,23 +2136,11 @@ Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBearingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYLINDRICAL", "SPHERICAL", "ELASTOMERIC", "POT", "GUIDE", "ROCKER", "ROLLER", "DISK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBearingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBearingTypeEnum::Value Ifc4x3_rc4::IfcBearingTypeEnum::FromString(const std::string& s) { - if (s == "CYLINDRICAL") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_CYLINDRICAL; - if (s == "SPHERICAL") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_SPHERICAL; - if (s == "ELASTOMERIC") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_ELASTOMERIC; - if (s == "POT") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_POT; - if (s == "GUIDE") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_GUIDE; - if (s == "ROCKER") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_ROCKER; - if (s == "ROLLER") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_ROLLER; - if (s == "DISK") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_DISK; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBearingTypeEnum::IfcBearingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBearingTypeEnum::Value) IFC4X3_RC4_IfcBearingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBearingTypeEnum::operator Ifc4x3_rc4::IfcBearingTypeEnum::Value() const { @@ -2412,23 +2169,11 @@ Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmarkEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBenchmarkEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GREATERTHAN", "GREATERTHANOREQUALTO", "LESSTHAN", "LESSTHANOREQUALTO", "EQUALTO", "NOTEQUALTO", "INCLUDES", "NOTINCLUDES", "INCLUDEDIN", "NOTINCLUDEDIN" }; - return names[v]; + return IFC4X3_RC4_IfcBenchmarkEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBenchmarkEnum::Value Ifc4x3_rc4::IfcBenchmarkEnum::FromString(const std::string& s) { - if (s == "GREATERTHAN") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_GREATERTHAN; - if (s == "GREATERTHANOREQUALTO") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_GREATERTHANOREQUALTO; - if (s == "LESSTHAN") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_LESSTHAN; - if (s == "LESSTHANOREQUALTO") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_LESSTHANOREQUALTO; - if (s == "EQUALTO") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_EQUALTO; - if (s == "NOTEQUALTO") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_NOTEQUALTO; - if (s == "INCLUDES") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_INCLUDES; - if (s == "NOTINCLUDES") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDES; - if (s == "INCLUDEDIN") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_INCLUDEDIN; - if (s == "NOTINCLUDEDIN") return ::Ifc4x3_rc4::IfcBenchmarkEnum::IfcBenchmark_NOTINCLUDEDIN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBenchmarkEnum::Value) IFC4X3_RC4_IfcBenchmarkEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBenchmarkEnum::operator Ifc4x3_rc4::IfcBenchmarkEnum::Value() const { @@ -2457,17 +2202,11 @@ Ifc4x3_rc4::IfcBoilerTypeEnum::IfcBoilerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBoilerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WATER", "STEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBoilerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBoilerTypeEnum::Value Ifc4x3_rc4::IfcBoilerTypeEnum::FromString(const std::string& s) { - if (s == "WATER") return ::Ifc4x3_rc4::IfcBoilerTypeEnum::IfcBoilerType_WATER; - if (s == "STEAM") return ::Ifc4x3_rc4::IfcBoilerTypeEnum::IfcBoilerType_STEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBoilerTypeEnum::IfcBoilerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBoilerTypeEnum::IfcBoilerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBoilerTypeEnum::Value) IFC4X3_RC4_IfcBoilerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBoilerTypeEnum::operator Ifc4x3_rc4::IfcBoilerTypeEnum::Value() const { @@ -2496,16 +2235,11 @@ Ifc4x3_rc4::IfcBooleanOperator::IfcBooleanOperator(const std::string& v) { } const char* Ifc4x3_rc4::IfcBooleanOperator::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNION", "INTERSECTION", "DIFFERENCE" }; - return names[v]; + return IFC4X3_RC4_IfcBooleanOperator_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBooleanOperator::Value Ifc4x3_rc4::IfcBooleanOperator::FromString(const std::string& s) { - if (s == "UNION") return ::Ifc4x3_rc4::IfcBooleanOperator::IfcBooleanOperator_UNION; - if (s == "INTERSECTION") return ::Ifc4x3_rc4::IfcBooleanOperator::IfcBooleanOperator_INTERSECTION; - if (s == "DIFFERENCE") return ::Ifc4x3_rc4::IfcBooleanOperator::IfcBooleanOperator_DIFFERENCE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBooleanOperator::Value) IFC4X3_RC4_IfcBooleanOperator_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBooleanOperator::operator Ifc4x3_rc4::IfcBooleanOperator::Value() const { @@ -2534,25 +2268,11 @@ Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBridgePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABUTMENT", "DECK", "DECK_SEGMENT", "FOUNDATION", "PIER", "PIER_SEGMENT", "PYLON", "SUBSTRUCTURE", "SUPERSTRUCTURE", "SURFACESTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBridgePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBridgePartTypeEnum::Value Ifc4x3_rc4::IfcBridgePartTypeEnum::FromString(const std::string& s) { - if (s == "ABUTMENT") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_ABUTMENT; - if (s == "DECK") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_DECK; - if (s == "DECK_SEGMENT") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_DECK_SEGMENT; - if (s == "FOUNDATION") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_FOUNDATION; - if (s == "PIER") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_PIER; - if (s == "PIER_SEGMENT") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_PIER_SEGMENT; - if (s == "PYLON") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_PYLON; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_SUBSTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_SUPERSTRUCTURE; - if (s == "SURFACESTRUCTURE") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_SURFACESTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBridgePartTypeEnum::IfcBridgePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBridgePartTypeEnum::Value) IFC4X3_RC4_IfcBridgePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBridgePartTypeEnum::operator Ifc4x3_rc4::IfcBridgePartTypeEnum::Value() const { @@ -2581,23 +2301,11 @@ Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBridgeTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARCHED", "CABLE_STAYED", "CANTILEVER", "CULVERT", "FRAMEWORK", "GIRDER", "SUSPENSION", "TRUSS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBridgeTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBridgeTypeEnum::Value Ifc4x3_rc4::IfcBridgeTypeEnum::FromString(const std::string& s) { - if (s == "ARCHED") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_ARCHED; - if (s == "CABLE_STAYED") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_CABLE_STAYED; - if (s == "CANTILEVER") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_CANTILEVER; - if (s == "CULVERT") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_CULVERT; - if (s == "FRAMEWORK") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_FRAMEWORK; - if (s == "GIRDER") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_GIRDER; - if (s == "SUSPENSION") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_SUSPENSION; - if (s == "TRUSS") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_TRUSS; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBridgeTypeEnum::IfcBridgeType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBridgeTypeEnum::Value) IFC4X3_RC4_IfcBridgeTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBridgeTypeEnum::operator Ifc4x3_rc4::IfcBridgeTypeEnum::Value() const { @@ -2626,20 +2334,11 @@ Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartTypeEnum(const } const char* Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INSULATION", "PRECASTPANEL", "APRON", "ARMOURUNIT", "SAFETYCAGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::Value Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::FromString(const std::string& s) { - if (s == "INSULATION") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_INSULATION; - if (s == "PRECASTPANEL") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_PRECASTPANEL; - if (s == "APRON") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_APRON; - if (s == "ARMOURUNIT") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_ARMOURUNIT; - if (s == "SAFETYCAGE") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_SAFETYCAGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::IfcBuildingElementPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::Value) IFC4X3_RC4_IfcBuildingElementPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::operator Ifc4x3_rc4::IfcBuildingElementPartTypeEnum::Value() const { @@ -2668,20 +2367,11 @@ Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyTypeEnum(con } const char* Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL", "PROVISIONFORVOID", "PROVISIONFORSPACE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::Value Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PARTIAL; - if (s == "PROVISIONFORVOID") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORVOID; - if (s == "PROVISIONFORSPACE") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_PROVISIONFORSPACE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::IfcBuildingElementProxyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::Value) IFC4X3_RC4_IfcBuildingElementProxyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::operator Ifc4x3_rc4::IfcBuildingElementProxyTypeEnum::Value() const { @@ -2710,24 +2400,11 @@ Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcBuildingSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FENESTRATION", "FOUNDATION", "LOADBEARING", "OUTERSHELL", "SHADING", "TRANSPORT", "REINFORCING", "PRESTRESSING", "EROSIONPREVENTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBuildingSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBuildingSystemTypeEnum::Value Ifc4x3_rc4::IfcBuildingSystemTypeEnum::FromString(const std::string& s) { - if (s == "FENESTRATION") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FENESTRATION; - if (s == "FOUNDATION") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_LOADBEARING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_OUTERSHELL; - if (s == "SHADING") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_SHADING; - if (s == "TRANSPORT") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_TRANSPORT; - if (s == "REINFORCING") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_REINFORCING; - if (s == "PRESTRESSING") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_PRESTRESSING; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_EROSIONPREVENTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBuildingSystemTypeEnum::IfcBuildingSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBuildingSystemTypeEnum::Value) IFC4X3_RC4_IfcBuildingSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBuildingSystemTypeEnum::operator Ifc4x3_rc4::IfcBuildingSystemTypeEnum::Value() const { @@ -2756,26 +2433,11 @@ Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcBuiltSystemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "REINFORCING", "MOORING", "OUTERSHELL", "TRACKCIRCUIT", "EROSIONPREVENTION", "FOUNDATION", "LOADBEARING", "SHADING", "FENESTRATION", "TRANSPORT", "PRESTRESSING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBuiltSystemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBuiltSystemTypeEnum::Value Ifc4x3_rc4::IfcBuiltSystemTypeEnum::FromString(const std::string& s) { - if (s == "REINFORCING") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_REINFORCING; - if (s == "MOORING") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_MOORING; - if (s == "OUTERSHELL") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_OUTERSHELL; - if (s == "TRACKCIRCUIT") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRACKCIRCUIT; - if (s == "EROSIONPREVENTION") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_EROSIONPREVENTION; - if (s == "FOUNDATION") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FOUNDATION; - if (s == "LOADBEARING") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_LOADBEARING; - if (s == "SHADING") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_SHADING; - if (s == "FENESTRATION") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_FENESTRATION; - if (s == "TRANSPORT") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_TRANSPORT; - if (s == "PRESTRESSING") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_PRESTRESSING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBuiltSystemTypeEnum::IfcBuiltSystemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBuiltSystemTypeEnum::Value) IFC4X3_RC4_IfcBuiltSystemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBuiltSystemTypeEnum::operator Ifc4x3_rc4::IfcBuiltSystemTypeEnum::Value() const { @@ -2804,15 +2466,11 @@ Ifc4x3_rc4::IfcBurnerTypeEnum::IfcBurnerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcBurnerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcBurnerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcBurnerTypeEnum::Value Ifc4x3_rc4::IfcBurnerTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcBurnerTypeEnum::IfcBurnerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcBurnerTypeEnum::IfcBurnerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcBurnerTypeEnum::Value) IFC4X3_RC4_IfcBurnerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcBurnerTypeEnum::operator Ifc4x3_rc4::IfcBurnerTypeEnum::Value() const { @@ -2841,19 +2499,11 @@ Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingTypeEnum(const } const char* Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CROSS", "REDUCER", "TEE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::Value Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_BEND; - if (s == "CROSS") return ::Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_CROSS; - if (s == "REDUCER") return ::Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_REDUCER; - if (s == "TEE") return ::Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_TEE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::IfcCableCarrierFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::Value) IFC4X3_RC4_IfcCableCarrierFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::operator Ifc4x3_rc4::IfcCableCarrierFittingTypeEnum::Value() const { @@ -2882,22 +2532,11 @@ Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentTypeEnum(const } const char* Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLELADDERSEGMENT", "CABLETRAYSEGMENT", "CABLETRUNKINGSEGMENT", "CONDUITSEGMENT", "CABLEBRACKET", "CATENARYWIRE", "DROPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::Value Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CABLELADDERSEGMENT") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLELADDERSEGMENT; - if (s == "CABLETRAYSEGMENT") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRAYSEGMENT; - if (s == "CABLETRUNKINGSEGMENT") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLETRUNKINGSEGMENT; - if (s == "CONDUITSEGMENT") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CONDUITSEGMENT; - if (s == "CABLEBRACKET") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CABLEBRACKET; - if (s == "CATENARYWIRE") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_CATENARYWIRE; - if (s == "DROPPER") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_DROPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::IfcCableCarrierSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::Value) IFC4X3_RC4_IfcCableCarrierSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::operator Ifc4x3_rc4::IfcCableCarrierSegmentTypeEnum::Value() const { @@ -2926,21 +2565,11 @@ Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcCableFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "TRANSITION", "FANOUT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCableFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCableFittingTypeEnum::Value Ifc4x3_rc4::IfcCableFittingTypeEnum::FromString(const std::string& s) { - if (s == "CONNECTOR") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_JUNCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_TRANSITION; - if (s == "FANOUT") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_FANOUT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCableFittingTypeEnum::IfcCableFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCableFittingTypeEnum::Value) IFC4X3_RC4_IfcCableFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCableFittingTypeEnum::operator Ifc4x3_rc4::IfcCableFittingTypeEnum::Value() const { @@ -2969,25 +2598,11 @@ Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcCableSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUSBARSEGMENT", "CABLESEGMENT", "CONDUCTORSEGMENT", "CORESEGMENT", "CONTACTWIRESEGMENT", "FIBERSEGMENT", "FIBERTUBE", "OPTICALCABLESEGMENT", "STITCHWIRE", "WIREPAIRSEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCableSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCableSegmentTypeEnum::Value Ifc4x3_rc4::IfcCableSegmentTypeEnum::FromString(const std::string& s) { - if (s == "BUSBARSEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_BUSBARSEGMENT; - if (s == "CABLESEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CABLESEGMENT; - if (s == "CONDUCTORSEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONDUCTORSEGMENT; - if (s == "CORESEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CORESEGMENT; - if (s == "CONTACTWIRESEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_CONTACTWIRESEGMENT; - if (s == "FIBERSEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERSEGMENT; - if (s == "FIBERTUBE") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_FIBERTUBE; - if (s == "OPTICALCABLESEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_OPTICALCABLESEGMENT; - if (s == "STITCHWIRE") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_STITCHWIRE; - if (s == "WIREPAIRSEGMENT") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_WIREPAIRSEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCableSegmentTypeEnum::IfcCableSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCableSegmentTypeEnum::Value) IFC4X3_RC4_IfcCableSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCableSegmentTypeEnum::operator Ifc4x3_rc4::IfcCableSegmentTypeEnum::Value() const { @@ -3016,17 +2631,11 @@ Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationTypeEnum(const std } const char* Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WELL", "CAISSON", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::Value Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::FromString(const std::string& s) { - if (s == "WELL") return ::Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_WELL; - if (s == "CAISSON") return ::Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_CAISSON; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::IfcCaissonFoundationType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::Value) IFC4X3_RC4_IfcCaissonFoundationTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::operator Ifc4x3_rc4::IfcCaissonFoundationTypeEnum::Value() const { @@ -3055,18 +2664,11 @@ Ifc4x3_rc4::IfcChangeActionEnum::IfcChangeActionEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcChangeActionEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NOCHANGE", "MODIFIED", "ADDED", "DELETED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcChangeActionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcChangeActionEnum::Value Ifc4x3_rc4::IfcChangeActionEnum::FromString(const std::string& s) { - if (s == "NOCHANGE") return ::Ifc4x3_rc4::IfcChangeActionEnum::IfcChangeAction_NOCHANGE; - if (s == "MODIFIED") return ::Ifc4x3_rc4::IfcChangeActionEnum::IfcChangeAction_MODIFIED; - if (s == "ADDED") return ::Ifc4x3_rc4::IfcChangeActionEnum::IfcChangeAction_ADDED; - if (s == "DELETED") return ::Ifc4x3_rc4::IfcChangeActionEnum::IfcChangeAction_DELETED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcChangeActionEnum::IfcChangeAction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcChangeActionEnum::Value) IFC4X3_RC4_IfcChangeActionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcChangeActionEnum::operator Ifc4x3_rc4::IfcChangeActionEnum::Value() const { @@ -3095,18 +2697,11 @@ Ifc4x3_rc4::IfcChillerTypeEnum::IfcChillerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcChillerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "WATERCOOLED", "HEATRECOVERY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcChillerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcChillerTypeEnum::Value Ifc4x3_rc4::IfcChillerTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc4::IfcChillerTypeEnum::IfcChillerType_AIRCOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc4::IfcChillerTypeEnum::IfcChillerType_WATERCOOLED; - if (s == "HEATRECOVERY") return ::Ifc4x3_rc4::IfcChillerTypeEnum::IfcChillerType_HEATRECOVERY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcChillerTypeEnum::IfcChillerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcChillerTypeEnum::IfcChillerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcChillerTypeEnum::Value) IFC4X3_RC4_IfcChillerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcChillerTypeEnum::operator Ifc4x3_rc4::IfcChillerTypeEnum::Value() const { @@ -3135,15 +2730,11 @@ Ifc4x3_rc4::IfcChimneyTypeEnum::IfcChimneyTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcChimneyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcChimneyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcChimneyTypeEnum::Value Ifc4x3_rc4::IfcChimneyTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcChimneyTypeEnum::IfcChimneyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcChimneyTypeEnum::IfcChimneyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcChimneyTypeEnum::Value) IFC4X3_RC4_IfcChimneyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcChimneyTypeEnum::operator Ifc4x3_rc4::IfcChimneyTypeEnum::Value() const { @@ -3172,22 +2763,11 @@ Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DXCOOLINGCOIL", "ELECTRICHEATINGCOIL", "GASHEATINGCOIL", "HYDRONICCOIL", "STEAMHEATINGCOIL", "WATERCOOLINGCOIL", "WATERHEATINGCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCoilTypeEnum::Value Ifc4x3_rc4::IfcCoilTypeEnum::FromString(const std::string& s) { - if (s == "DXCOOLINGCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_DXCOOLINGCOIL; - if (s == "ELECTRICHEATINGCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_ELECTRICHEATINGCOIL; - if (s == "GASHEATINGCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_GASHEATINGCOIL; - if (s == "HYDRONICCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_HYDRONICCOIL; - if (s == "STEAMHEATINGCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_STEAMHEATINGCOIL; - if (s == "WATERCOOLINGCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_WATERCOOLINGCOIL; - if (s == "WATERHEATINGCOIL") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_WATERHEATINGCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCoilTypeEnum::IfcCoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCoilTypeEnum::Value) IFC4X3_RC4_IfcCoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCoilTypeEnum::operator Ifc4x3_rc4::IfcCoilTypeEnum::Value() const { @@ -3216,20 +2796,11 @@ Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcColumnTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COLUMN", "PILASTER", "PIERSTEM", "PIERSTEM_SEGMENT", "STANDCOLUMN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcColumnTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcColumnTypeEnum::Value Ifc4x3_rc4::IfcColumnTypeEnum::FromString(const std::string& s) { - if (s == "COLUMN") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_COLUMN; - if (s == "PILASTER") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_PILASTER; - if (s == "PIERSTEM") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_PIERSTEM; - if (s == "PIERSTEM_SEGMENT") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_PIERSTEM_SEGMENT; - if (s == "STANDCOLUMN") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_STANDCOLUMN; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcColumnTypeEnum::IfcColumnType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcColumnTypeEnum::Value) IFC4X3_RC4_IfcColumnTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcColumnTypeEnum::operator Ifc4x3_rc4::IfcColumnTypeEnum::Value() const { @@ -3258,39 +2829,11 @@ Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceTypeEn } const char* Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANTENNA", "COMPUTER", "FAX", "GATEWAY", "MODEM", "NETWORKAPPLIANCE", "NETWORKBRIDGE", "NETWORKHUB", "PRINTER", "REPEATER", "ROUTER", "SCANNER", "AUTOMATON", "INTELLIGENTPERIPHERAL", "IPNETWORKEQUIPMENT", "OPTICALNETWORKUNIT", "TELECOMMAND", "TELEPHONYEXCHANGE", "TRANSITIONCOMPONENT", "TRANSPONDER", "TRANSPORTEQUIPMENT", "OPTICALLINETERMINAL", "LINESIDEELECTRONICUNIT", "RADIOBLOCKCENTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::Value Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "ANTENNA") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ANTENNA; - if (s == "COMPUTER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_COMPUTER; - if (s == "FAX") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_FAX; - if (s == "GATEWAY") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_GATEWAY; - if (s == "MODEM") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_MODEM; - if (s == "NETWORKAPPLIANCE") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKAPPLIANCE; - if (s == "NETWORKBRIDGE") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKBRIDGE; - if (s == "NETWORKHUB") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NETWORKHUB; - if (s == "PRINTER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_PRINTER; - if (s == "REPEATER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_REPEATER; - if (s == "ROUTER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_ROUTER; - if (s == "SCANNER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_SCANNER; - if (s == "AUTOMATON") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_AUTOMATON; - if (s == "INTELLIGENTPERIPHERAL") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_INTELLIGENTPERIPHERAL; - if (s == "IPNETWORKEQUIPMENT") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_IPNETWORKEQUIPMENT; - if (s == "OPTICALNETWORKUNIT") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICALNETWORKUNIT; - if (s == "TELECOMMAND") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELECOMMAND; - if (s == "TELEPHONYEXCHANGE") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TELEPHONYEXCHANGE; - if (s == "TRANSITIONCOMPONENT") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSITIONCOMPONENT; - if (s == "TRANSPONDER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPONDER; - if (s == "TRANSPORTEQUIPMENT") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_TRANSPORTEQUIPMENT; - if (s == "OPTICALLINETERMINAL") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_OPTICALLINETERMINAL; - if (s == "LINESIDEELECTRONICUNIT") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_LINESIDEELECTRONICUNIT; - if (s == "RADIOBLOCKCENTER") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_RADIOBLOCKCENTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::IfcCommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::Value) IFC4X3_RC4_IfcCommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::operator Ifc4x3_rc4::IfcCommunicationsApplianceTypeEnum::Value() const { @@ -3319,15 +2862,11 @@ Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateTypeEn } const char* Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_COMPLEX", "Q_COMPLEX" }; - return names[v]; + return IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::Value Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_COMPLEX") return ::Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_P_COMPLEX; - if (s == "Q_COMPLEX") return ::Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::IfcComplexPropertyTemplateType_Q_COMPLEX; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::Value) IFC4X3_RC4_IfcComplexPropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::operator Ifc4x3_rc4::IfcComplexPropertyTemplateTypeEnum::Value() const { @@ -3356,30 +2895,11 @@ Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCompressorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DYNAMIC", "RECIPROCATING", "ROTARY", "SCROLL", "TROCHOIDAL", "SINGLESTAGE", "BOOSTER", "OPENTYPE", "HERMETIC", "SEMIHERMETIC", "WELDEDSHELLHERMETIC", "ROLLINGPISTON", "ROTARYVANE", "SINGLESCREW", "TWINSCREW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCompressorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCompressorTypeEnum::Value Ifc4x3_rc4::IfcCompressorTypeEnum::FromString(const std::string& s) { - if (s == "DYNAMIC") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_DYNAMIC; - if (s == "RECIPROCATING") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_RECIPROCATING; - if (s == "ROTARY") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_ROTARY; - if (s == "SCROLL") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_SCROLL; - if (s == "TROCHOIDAL") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_TROCHOIDAL; - if (s == "SINGLESTAGE") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_SINGLESTAGE; - if (s == "BOOSTER") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_BOOSTER; - if (s == "OPENTYPE") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_OPENTYPE; - if (s == "HERMETIC") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_HERMETIC; - if (s == "SEMIHERMETIC") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_SEMIHERMETIC; - if (s == "WELDEDSHELLHERMETIC") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_WELDEDSHELLHERMETIC; - if (s == "ROLLINGPISTON") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_ROLLINGPISTON; - if (s == "ROTARYVANE") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_ROTARYVANE; - if (s == "SINGLESCREW") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_SINGLESCREW; - if (s == "TWINSCREW") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_TWINSCREW; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCompressorTypeEnum::IfcCompressorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCompressorTypeEnum::Value) IFC4X3_RC4_IfcCompressorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCompressorTypeEnum::operator Ifc4x3_rc4::IfcCompressorTypeEnum::Value() const { @@ -3408,22 +2928,11 @@ Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCondenserTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCOOLED", "EVAPORATIVECOOLED", "WATERCOOLED", "WATERCOOLEDBRAZEDPLATE", "WATERCOOLEDSHELLCOIL", "WATERCOOLEDSHELLTUBE", "WATERCOOLEDTUBEINTUBE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCondenserTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCondenserTypeEnum::Value Ifc4x3_rc4::IfcCondenserTypeEnum::FromString(const std::string& s) { - if (s == "AIRCOOLED") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_AIRCOOLED; - if (s == "EVAPORATIVECOOLED") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_EVAPORATIVECOOLED; - if (s == "WATERCOOLED") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLED; - if (s == "WATERCOOLEDBRAZEDPLATE") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDBRAZEDPLATE; - if (s == "WATERCOOLEDSHELLCOIL") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLCOIL; - if (s == "WATERCOOLEDSHELLTUBE") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDSHELLTUBE; - if (s == "WATERCOOLEDTUBEINTUBE") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_WATERCOOLEDTUBEINTUBE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCondenserTypeEnum::IfcCondenserType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCondenserTypeEnum::Value) IFC4X3_RC4_IfcCondenserTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCondenserTypeEnum::operator Ifc4x3_rc4::IfcCondenserTypeEnum::Value() const { @@ -3452,17 +2961,11 @@ Ifc4x3_rc4::IfcConnectionTypeEnum::IfcConnectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATPATH", "ATSTART", "ATEND", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcConnectionTypeEnum::Value Ifc4x3_rc4::IfcConnectionTypeEnum::FromString(const std::string& s) { - if (s == "ATPATH") return ::Ifc4x3_rc4::IfcConnectionTypeEnum::IfcConnectionType_ATPATH; - if (s == "ATSTART") return ::Ifc4x3_rc4::IfcConnectionTypeEnum::IfcConnectionType_ATSTART; - if (s == "ATEND") return ::Ifc4x3_rc4::IfcConnectionTypeEnum::IfcConnectionType_ATEND; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcConnectionTypeEnum::IfcConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcConnectionTypeEnum::Value) IFC4X3_RC4_IfcConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcConnectionTypeEnum::operator Ifc4x3_rc4::IfcConnectionTypeEnum::Value() const { @@ -3491,18 +2994,11 @@ Ifc4x3_rc4::IfcConstraintEnum::IfcConstraintEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcConstraintEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HARD", "SOFT", "ADVISORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcConstraintEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcConstraintEnum::Value Ifc4x3_rc4::IfcConstraintEnum::FromString(const std::string& s) { - if (s == "HARD") return ::Ifc4x3_rc4::IfcConstraintEnum::IfcConstraint_HARD; - if (s == "SOFT") return ::Ifc4x3_rc4::IfcConstraintEnum::IfcConstraint_SOFT; - if (s == "ADVISORY") return ::Ifc4x3_rc4::IfcConstraintEnum::IfcConstraint_ADVISORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcConstraintEnum::IfcConstraint_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcConstraintEnum::IfcConstraint_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcConstraintEnum::Value) IFC4X3_RC4_IfcConstraintEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcConstraintEnum::operator Ifc4x3_rc4::IfcConstraintEnum::Value() const { @@ -3531,23 +3027,11 @@ Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentRe } const char* Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DEMOLISHING", "EARTHMOVING", "ERECTING", "HEATING", "LIGHTING", "PAVING", "PUMPING", "TRANSPORTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::Value Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::FromString(const std::string& s) { - if (s == "DEMOLISHING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_DEMOLISHING; - if (s == "EARTHMOVING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_EARTHMOVING; - if (s == "ERECTING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_ERECTING; - if (s == "HEATING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_LIGHTING; - if (s == "PAVING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PAVING; - if (s == "PUMPING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_PUMPING; - if (s == "TRANSPORTING") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_TRANSPORTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::IfcConstructionEquipmentResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::Value) IFC4X3_RC4_IfcConstructionEquipmentResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::operator Ifc4x3_rc4::IfcConstructionEquipmentResourceTypeEnum::Value() const { @@ -3576,24 +3060,11 @@ Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialReso } const char* Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AGGREGATES", "CONCRETE", "DRYWALL", "FUEL", "GYPSUM", "MASONRY", "METAL", "PLASTIC", "WOOD", "NOTDEFINED", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::Value Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::FromString(const std::string& s) { - if (s == "AGGREGATES") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_AGGREGATES; - if (s == "CONCRETE") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_DRYWALL; - if (s == "FUEL") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_FUEL; - if (s == "GYPSUM") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_GYPSUM; - if (s == "MASONRY") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_MASONRY; - if (s == "METAL") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_METAL; - if (s == "PLASTIC") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_PLASTIC; - if (s == "WOOD") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_WOOD; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_NOTDEFINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::IfcConstructionMaterialResourceType_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::Value) IFC4X3_RC4_IfcConstructionMaterialResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::operator Ifc4x3_rc4::IfcConstructionMaterialResourceTypeEnum::Value() const { @@ -3622,17 +3093,11 @@ Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResour } const char* Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSEMBLY", "FORMWORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::Value Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::FromString(const std::string& s) { - if (s == "ASSEMBLY") return ::Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_ASSEMBLY; - if (s == "FORMWORK") return ::Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_FORMWORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::IfcConstructionProductResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::Value) IFC4X3_RC4_IfcConstructionProductResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::operator Ifc4x3_rc4::IfcConstructionProductResourceTypeEnum::Value() const { @@ -3661,20 +3126,11 @@ Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcControllerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOATING", "PROGRAMMABLE", "PROPORTIONAL", "MULTIPOSITION", "TWOPOSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcControllerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcControllerTypeEnum::Value Ifc4x3_rc4::IfcControllerTypeEnum::FromString(const std::string& s) { - if (s == "FLOATING") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_FLOATING; - if (s == "PROGRAMMABLE") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_PROGRAMMABLE; - if (s == "PROPORTIONAL") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_PROPORTIONAL; - if (s == "MULTIPOSITION") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_MULTIPOSITION; - if (s == "TWOPOSITION") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_TWOPOSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcControllerTypeEnum::IfcControllerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcControllerTypeEnum::Value) IFC4X3_RC4_IfcControllerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcControllerTypeEnum::operator Ifc4x3_rc4::IfcControllerTypeEnum::Value() const { @@ -3703,19 +3159,11 @@ Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentTypeEnum(const std::st } const char* Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHUTECONVEYOR", "BELTCONVEYOR", "SCREWCONVEYOR", "BUCKETCONVEYOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::Value Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CHUTECONVEYOR") return ::Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_CHUTECONVEYOR; - if (s == "BELTCONVEYOR") return ::Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BELTCONVEYOR; - if (s == "SCREWCONVEYOR") return ::Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_SCREWCONVEYOR; - if (s == "BUCKETCONVEYOR") return ::Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_BUCKETCONVEYOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::IfcConveyorSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::Value) IFC4X3_RC4_IfcConveyorSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::operator Ifc4x3_rc4::IfcConveyorSegmentTypeEnum::Value() const { @@ -3744,17 +3192,11 @@ Ifc4x3_rc4::IfcCooledBeamTypeEnum::IfcCooledBeamTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCooledBeamTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTIVE", "PASSIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCooledBeamTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCooledBeamTypeEnum::Value Ifc4x3_rc4::IfcCooledBeamTypeEnum::FromString(const std::string& s) { - if (s == "ACTIVE") return ::Ifc4x3_rc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_ACTIVE; - if (s == "PASSIVE") return ::Ifc4x3_rc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_PASSIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCooledBeamTypeEnum::IfcCooledBeamType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCooledBeamTypeEnum::Value) IFC4X3_RC4_IfcCooledBeamTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCooledBeamTypeEnum::operator Ifc4x3_rc4::IfcCooledBeamTypeEnum::Value() const { @@ -3783,18 +3225,11 @@ Ifc4x3_rc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcCoolingTowerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "NATURALDRAFT", "MECHANICALINDUCEDDRAFT", "MECHANICALFORCEDDRAFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCoolingTowerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCoolingTowerTypeEnum::Value Ifc4x3_rc4::IfcCoolingTowerTypeEnum::FromString(const std::string& s) { - if (s == "NATURALDRAFT") return ::Ifc4x3_rc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NATURALDRAFT; - if (s == "MECHANICALINDUCEDDRAFT") return ::Ifc4x3_rc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALINDUCEDDRAFT; - if (s == "MECHANICALFORCEDDRAFT") return ::Ifc4x3_rc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_MECHANICALFORCEDDRAFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCoolingTowerTypeEnum::IfcCoolingTowerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCoolingTowerTypeEnum::Value) IFC4X3_RC4_IfcCoolingTowerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCoolingTowerTypeEnum::operator Ifc4x3_rc4::IfcCoolingTowerTypeEnum::Value() const { @@ -3823,15 +3258,11 @@ Ifc4x3_rc4::IfcCostItemTypeEnum::IfcCostItemTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCostItemTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCostItemTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCostItemTypeEnum::Value Ifc4x3_rc4::IfcCostItemTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCostItemTypeEnum::IfcCostItemType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCostItemTypeEnum::IfcCostItemType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCostItemTypeEnum::Value) IFC4X3_RC4_IfcCostItemTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCostItemTypeEnum::operator Ifc4x3_rc4::IfcCostItemTypeEnum::Value() const { @@ -3860,22 +3291,11 @@ Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcCostScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BUDGET", "COSTPLAN", "ESTIMATE", "TENDER", "PRICEDBILLOFQUANTITIES", "UNPRICEDBILLOFQUANTITIES", "SCHEDULEOFRATES", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCostScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCostScheduleTypeEnum::Value Ifc4x3_rc4::IfcCostScheduleTypeEnum::FromString(const std::string& s) { - if (s == "BUDGET") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_BUDGET; - if (s == "COSTPLAN") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_COSTPLAN; - if (s == "ESTIMATE") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_ESTIMATE; - if (s == "TENDER") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_TENDER; - if (s == "PRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_PRICEDBILLOFQUANTITIES; - if (s == "UNPRICEDBILLOFQUANTITIES") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_UNPRICEDBILLOFQUANTITIES; - if (s == "SCHEDULEOFRATES") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_SCHEDULEOFRATES; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCostScheduleTypeEnum::IfcCostScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCostScheduleTypeEnum::Value) IFC4X3_RC4_IfcCostScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCostScheduleTypeEnum::operator Ifc4x3_rc4::IfcCostScheduleTypeEnum::Value() const { @@ -3904,21 +3324,11 @@ Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCourseTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ARMOUR", "FILTER", "BALLASTBED", "CORE", "PAVEMENT", "PROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCourseTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCourseTypeEnum::Value Ifc4x3_rc4::IfcCourseTypeEnum::FromString(const std::string& s) { - if (s == "ARMOUR") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_ARMOUR; - if (s == "FILTER") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_FILTER; - if (s == "BALLASTBED") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_BALLASTBED; - if (s == "CORE") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_CORE; - if (s == "PAVEMENT") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_PAVEMENT; - if (s == "PROTECTION") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_PROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCourseTypeEnum::IfcCourseType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCourseTypeEnum::Value) IFC4X3_RC4_IfcCourseTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCourseTypeEnum::operator Ifc4x3_rc4::IfcCourseTypeEnum::Value() const { @@ -3947,26 +3357,11 @@ Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcCoveringTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CEILING", "FLOORING", "CLADDING", "ROOFING", "MOLDING", "SKIRTINGBOARD", "INSULATION", "MEMBRANE", "SLEEVING", "WRAPPING", "COPING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCoveringTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCoveringTypeEnum::Value Ifc4x3_rc4::IfcCoveringTypeEnum::FromString(const std::string& s) { - if (s == "CEILING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_CEILING; - if (s == "FLOORING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_FLOORING; - if (s == "CLADDING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_CLADDING; - if (s == "ROOFING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_ROOFING; - if (s == "MOLDING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_MOLDING; - if (s == "SKIRTINGBOARD") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_SKIRTINGBOARD; - if (s == "INSULATION") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_INSULATION; - if (s == "MEMBRANE") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_MEMBRANE; - if (s == "SLEEVING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_SLEEVING; - if (s == "WRAPPING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_WRAPPING; - if (s == "COPING") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_COPING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCoveringTypeEnum::IfcCoveringType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCoveringTypeEnum::Value) IFC4X3_RC4_IfcCoveringTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCoveringTypeEnum::operator Ifc4x3_rc4::IfcCoveringTypeEnum::Value() const { @@ -3995,17 +3390,11 @@ Ifc4x3_rc4::IfcCrewResourceTypeEnum::IfcCrewResourceTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcCrewResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OFFICE", "SITE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCrewResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCrewResourceTypeEnum::Value Ifc4x3_rc4::IfcCrewResourceTypeEnum::FromString(const std::string& s) { - if (s == "OFFICE") return ::Ifc4x3_rc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_OFFICE; - if (s == "SITE") return ::Ifc4x3_rc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_SITE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCrewResourceTypeEnum::IfcCrewResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCrewResourceTypeEnum::Value) IFC4X3_RC4_IfcCrewResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCrewResourceTypeEnum::operator Ifc4x3_rc4::IfcCrewResourceTypeEnum::Value() const { @@ -4034,15 +3423,11 @@ Ifc4x3_rc4::IfcCurtainWallTypeEnum::IfcCurtainWallTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcCurtainWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCurtainWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCurtainWallTypeEnum::Value Ifc4x3_rc4::IfcCurtainWallTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcCurtainWallTypeEnum::IfcCurtainWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCurtainWallTypeEnum::IfcCurtainWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCurtainWallTypeEnum::Value) IFC4X3_RC4_IfcCurtainWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCurtainWallTypeEnum::operator Ifc4x3_rc4::IfcCurtainWallTypeEnum::Value() const { @@ -4071,17 +3456,11 @@ Ifc4x3_rc4::IfcCurveInterpolationEnum::IfcCurveInterpolationEnum(const std::stri } const char* Ifc4x3_rc4::IfcCurveInterpolationEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINEAR", "LOG_LINEAR", "LOG_LOG", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcCurveInterpolationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcCurveInterpolationEnum::Value Ifc4x3_rc4::IfcCurveInterpolationEnum::FromString(const std::string& s) { - if (s == "LINEAR") return ::Ifc4x3_rc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_LINEAR; - if (s == "LOG_LINEAR") return ::Ifc4x3_rc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LINEAR; - if (s == "LOG_LOG") return ::Ifc4x3_rc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_LOG_LOG; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcCurveInterpolationEnum::IfcCurveInterpolation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcCurveInterpolationEnum::Value) IFC4X3_RC4_IfcCurveInterpolationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcCurveInterpolationEnum::operator Ifc4x3_rc4::IfcCurveInterpolationEnum::Value() const { @@ -4110,26 +3489,11 @@ Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKDRAFTDAMPER", "BALANCINGDAMPER", "BLASTDAMPER", "CONTROLDAMPER", "FIREDAMPER", "FIRESMOKEDAMPER", "FUMEHOODEXHAUST", "GRAVITYDAMPER", "GRAVITYRELIEFDAMPER", "RELIEFDAMPER", "SMOKEDAMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDamperTypeEnum::Value Ifc4x3_rc4::IfcDamperTypeEnum::FromString(const std::string& s) { - if (s == "BACKDRAFTDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_BACKDRAFTDAMPER; - if (s == "BALANCINGDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_BALANCINGDAMPER; - if (s == "BLASTDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_BLASTDAMPER; - if (s == "CONTROLDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_CONTROLDAMPER; - if (s == "FIREDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_FIREDAMPER; - if (s == "FIRESMOKEDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_FIRESMOKEDAMPER; - if (s == "FUMEHOODEXHAUST") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_FUMEHOODEXHAUST; - if (s == "GRAVITYDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_GRAVITYDAMPER; - if (s == "GRAVITYRELIEFDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_GRAVITYRELIEFDAMPER; - if (s == "RELIEFDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_RELIEFDAMPER; - if (s == "SMOKEDAMPER") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_SMOKEDAMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDamperTypeEnum::IfcDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDamperTypeEnum::Value) IFC4X3_RC4_IfcDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDamperTypeEnum::operator Ifc4x3_rc4::IfcDamperTypeEnum::Value() const { @@ -4158,18 +3522,11 @@ Ifc4x3_rc4::IfcDataOriginEnum::IfcDataOriginEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcDataOriginEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MEASURED", "PREDICTED", "SIMULATED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDataOriginEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDataOriginEnum::Value Ifc4x3_rc4::IfcDataOriginEnum::FromString(const std::string& s) { - if (s == "MEASURED") return ::Ifc4x3_rc4::IfcDataOriginEnum::IfcDataOrigin_MEASURED; - if (s == "PREDICTED") return ::Ifc4x3_rc4::IfcDataOriginEnum::IfcDataOrigin_PREDICTED; - if (s == "SIMULATED") return ::Ifc4x3_rc4::IfcDataOriginEnum::IfcDataOrigin_SIMULATED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDataOriginEnum::IfcDataOrigin_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDataOriginEnum::IfcDataOrigin_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDataOriginEnum::Value) IFC4X3_RC4_IfcDataOriginEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDataOriginEnum::operator Ifc4x3_rc4::IfcDataOriginEnum::Value() const { @@ -4198,66 +3555,11 @@ Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnitEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcDerivedUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 53 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANGULARVELOCITYUNIT", "AREADENSITYUNIT", "COMPOUNDPLANEANGLEUNIT", "DYNAMICVISCOSITYUNIT", "HEATFLUXDENSITYUNIT", "INTEGERCOUNTRATEUNIT", "ISOTHERMALMOISTURECAPACITYUNIT", "KINEMATICVISCOSITYUNIT", "LINEARVELOCITYUNIT", "MASSDENSITYUNIT", "MASSFLOWRATEUNIT", "MOISTUREDIFFUSIVITYUNIT", "MOLECULARWEIGHTUNIT", "SPECIFICHEATCAPACITYUNIT", "THERMALADMITTANCEUNIT", "THERMALCONDUCTANCEUNIT", "THERMALRESISTANCEUNIT", "THERMALTRANSMITTANCEUNIT", "VAPORPERMEABILITYUNIT", "VOLUMETRICFLOWRATEUNIT", "ROTATIONALFREQUENCYUNIT", "TORQUEUNIT", "MOMENTOFINERTIAUNIT", "LINEARMOMENTUNIT", "LINEARFORCEUNIT", "PLANARFORCEUNIT", "MODULUSOFELASTICITYUNIT", "SHEARMODULUSUNIT", "LINEARSTIFFNESSUNIT", "ROTATIONALSTIFFNESSUNIT", "MODULUSOFSUBGRADEREACTIONUNIT", "ACCELERATIONUNIT", "CURVATUREUNIT", "HEATINGVALUEUNIT", "IONCONCENTRATIONUNIT", "LUMINOUSINTENSITYDISTRIBUTIONUNIT", "MASSPERLENGTHUNIT", "MODULUSOFLINEARSUBGRADEREACTIONUNIT", "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT", "PHUNIT", "ROTATIONALMASSUNIT", "SECTIONAREAINTEGRALUNIT", "SECTIONMODULUSUNIT", "SOUNDPOWERLEVELUNIT", "SOUNDPOWERUNIT", "SOUNDPRESSURELEVELUNIT", "SOUNDPRESSUREUNIT", "TEMPERATUREGRADIENTUNIT", "TEMPERATURERATEOFCHANGEUNIT", "THERMALEXPANSIONCOEFFICIENTUNIT", "WARPINGCONSTANTUNIT", "WARPINGMOMENTUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDerivedUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDerivedUnitEnum::Value Ifc4x3_rc4::IfcDerivedUnitEnum::FromString(const std::string& s) { - if (s == "ANGULARVELOCITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_ANGULARVELOCITYUNIT; - if (s == "AREADENSITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_AREADENSITYUNIT; - if (s == "COMPOUNDPLANEANGLEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_COMPOUNDPLANEANGLEUNIT; - if (s == "DYNAMICVISCOSITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_DYNAMICVISCOSITYUNIT; - if (s == "HEATFLUXDENSITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_HEATFLUXDENSITYUNIT; - if (s == "INTEGERCOUNTRATEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_INTEGERCOUNTRATEUNIT; - if (s == "ISOTHERMALMOISTURECAPACITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_ISOTHERMALMOISTURECAPACITYUNIT; - if (s == "KINEMATICVISCOSITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_KINEMATICVISCOSITYUNIT; - if (s == "LINEARVELOCITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARVELOCITYUNIT; - if (s == "MASSDENSITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MASSDENSITYUNIT; - if (s == "MASSFLOWRATEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MASSFLOWRATEUNIT; - if (s == "MOISTUREDIFFUSIVITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MOISTUREDIFFUSIVITYUNIT; - if (s == "MOLECULARWEIGHTUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MOLECULARWEIGHTUNIT; - if (s == "SPECIFICHEATCAPACITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SPECIFICHEATCAPACITYUNIT; - if (s == "THERMALADMITTANCEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALADMITTANCEUNIT; - if (s == "THERMALCONDUCTANCEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALCONDUCTANCEUNIT; - if (s == "THERMALRESISTANCEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALRESISTANCEUNIT; - if (s == "THERMALTRANSMITTANCEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALTRANSMITTANCEUNIT; - if (s == "VAPORPERMEABILITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_VAPORPERMEABILITYUNIT; - if (s == "VOLUMETRICFLOWRATEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_VOLUMETRICFLOWRATEUNIT; - if (s == "ROTATIONALFREQUENCYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALFREQUENCYUNIT; - if (s == "TORQUEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_TORQUEUNIT; - if (s == "MOMENTOFINERTIAUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MOMENTOFINERTIAUNIT; - if (s == "LINEARMOMENTUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARMOMENTUNIT; - if (s == "LINEARFORCEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARFORCEUNIT; - if (s == "PLANARFORCEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_PLANARFORCEUNIT; - if (s == "MODULUSOFELASTICITYUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFELASTICITYUNIT; - if (s == "SHEARMODULUSUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SHEARMODULUSUNIT; - if (s == "LINEARSTIFFNESSUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_LINEARSTIFFNESSUNIT; - if (s == "ROTATIONALSTIFFNESSUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALSTIFFNESSUNIT; - if (s == "MODULUSOFSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFSUBGRADEREACTIONUNIT; - if (s == "ACCELERATIONUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_ACCELERATIONUNIT; - if (s == "CURVATUREUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_CURVATUREUNIT; - if (s == "HEATINGVALUEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_HEATINGVALUEUNIT; - if (s == "IONCONCENTRATIONUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_IONCONCENTRATIONUNIT; - if (s == "LUMINOUSINTENSITYDISTRIBUTIONUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_LUMINOUSINTENSITYDISTRIBUTIONUNIT; - if (s == "MASSPERLENGTHUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MASSPERLENGTHUNIT; - if (s == "MODULUSOFLINEARSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFLINEARSUBGRADEREACTIONUNIT; - if (s == "MODULUSOFROTATIONALSUBGRADEREACTIONUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_MODULUSOFROTATIONALSUBGRADEREACTIONUNIT; - if (s == "PHUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_PHUNIT; - if (s == "ROTATIONALMASSUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_ROTATIONALMASSUNIT; - if (s == "SECTIONAREAINTEGRALUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONAREAINTEGRALUNIT; - if (s == "SECTIONMODULUSUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SECTIONMODULUSUNIT; - if (s == "SOUNDPOWERLEVELUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERLEVELUNIT; - if (s == "SOUNDPOWERUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPOWERUNIT; - if (s == "SOUNDPRESSURELEVELUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSURELEVELUNIT; - if (s == "SOUNDPRESSUREUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_SOUNDPRESSUREUNIT; - if (s == "TEMPERATUREGRADIENTUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATUREGRADIENTUNIT; - if (s == "TEMPERATURERATEOFCHANGEUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_TEMPERATURERATEOFCHANGEUNIT; - if (s == "THERMALEXPANSIONCOEFFICIENTUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_THERMALEXPANSIONCOEFFICIENTUNIT; - if (s == "WARPINGCONSTANTUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGCONSTANTUNIT; - if (s == "WARPINGMOMENTUNIT") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_WARPINGMOMENTUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDerivedUnitEnum::IfcDerivedUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDerivedUnitEnum::Value) IFC4X3_RC4_IfcDerivedUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDerivedUnitEnum::operator Ifc4x3_rc4::IfcDerivedUnitEnum::Value() const { @@ -4286,15 +3588,11 @@ Ifc4x3_rc4::IfcDirectionSenseEnum::IfcDirectionSenseEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcDirectionSenseEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE" }; - return names[v]; + return IFC4X3_RC4_IfcDirectionSenseEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDirectionSenseEnum::Value Ifc4x3_rc4::IfcDirectionSenseEnum::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc4::IfcDirectionSenseEnum::IfcDirectionSense_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc4::IfcDirectionSenseEnum::IfcDirectionSense_NEGATIVE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDirectionSenseEnum::Value) IFC4X3_RC4_IfcDirectionSenseEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDirectionSenseEnum::operator Ifc4x3_rc4::IfcDirectionSenseEnum::Value() const { @@ -4323,34 +3621,11 @@ Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryTypeEnum(const std } const char* Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORPLATE", "BRACKET", "SHOE", "EXPANSION_JOINT_DEVICE", "CABLEARRANGER", "INSULATOR", "LOCK", "TENSIONINGEQUIPMENT", "RAILPAD", "SLIDINGCHAIR", "RAIL_LUBRICATION", "PANEL_STRENGTHENING", "RAILBRACE", "ELASTIC_CUSHION", "SOUNDABSORPTION", "POINTMACHINEMOUNTINGDEVICE", "POINT_MACHINE_LOCKING_DEVICE", "RAIL_MECHANICAL_EQUIPMENT", "BIRDPROTECTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::Value Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORPLATE") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ANCHORPLATE; - if (s == "BRACKET") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BRACKET; - if (s == "SHOE") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SHOE; - if (s == "EXPANSION_JOINT_DEVICE") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_EXPANSION_JOINT_DEVICE; - if (s == "CABLEARRANGER") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_CABLEARRANGER; - if (s == "INSULATOR") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_INSULATOR; - if (s == "LOCK") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_LOCK; - if (s == "TENSIONINGEQUIPMENT") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_TENSIONINGEQUIPMENT; - if (s == "RAILPAD") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILPAD; - if (s == "SLIDINGCHAIR") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SLIDINGCHAIR; - if (s == "RAIL_LUBRICATION") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_LUBRICATION; - if (s == "PANEL_STRENGTHENING") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_PANEL_STRENGTHENING; - if (s == "RAILBRACE") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAILBRACE; - if (s == "ELASTIC_CUSHION") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_ELASTIC_CUSHION; - if (s == "SOUNDABSORPTION") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_SOUNDABSORPTION; - if (s == "POINTMACHINEMOUNTINGDEVICE") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_POINTMACHINEMOUNTINGDEVICE; - if (s == "POINT_MACHINE_LOCKING_DEVICE") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_POINT_MACHINE_LOCKING_DEVICE; - if (s == "RAIL_MECHANICAL_EQUIPMENT") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_RAIL_MECHANICAL_EQUIPMENT; - if (s == "BIRDPROTECTION") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_BIRDPROTECTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::IfcDiscreteAccessoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::Value) IFC4X3_RC4_IfcDiscreteAccessoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::operator Ifc4x3_rc4::IfcDiscreteAccessoryTypeEnum::Value() const { @@ -4379,21 +3654,11 @@ Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardTypeEnum(const std } const char* Ifc4x3_rc4::IfcDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWITCHBOARD", "CONSUMERUNIT", "MOTORCONTROLCENTRE", "DISTRIBUTIONFRAME", "DISTRIBUTIONBOARD", "DISPATCHINGBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDistributionBoardTypeEnum::Value Ifc4x3_rc4::IfcDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "SWITCHBOARD") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_SWITCHBOARD; - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_CONSUMERUNIT; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "DISTRIBUTIONFRAME") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONFRAME; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "DISPATCHINGBOARD") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_DISPATCHINGBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDistributionBoardTypeEnum::IfcDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDistributionBoardTypeEnum::Value) IFC4X3_RC4_IfcDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDistributionBoardTypeEnum::operator Ifc4x3_rc4::IfcDistributionBoardTypeEnum::Value() const { @@ -4422,23 +3687,11 @@ Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElement } const char* Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FORMEDDUCT", "INSPECTIONCHAMBER", "INSPECTIONPIT", "MANHOLE", "METERCHAMBER", "SUMP", "TRENCH", "VALVECHAMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::Value Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::FromString(const std::string& s) { - if (s == "FORMEDDUCT") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_FORMEDDUCT; - if (s == "INSPECTIONCHAMBER") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONCHAMBER; - if (s == "INSPECTIONPIT") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_INSPECTIONPIT; - if (s == "MANHOLE") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_MANHOLE; - if (s == "METERCHAMBER") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_METERCHAMBER; - if (s == "SUMP") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_SUMP; - if (s == "TRENCH") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_TRENCH; - if (s == "VALVECHAMBER") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_VALVECHAMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::IfcDistributionChamberElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::Value) IFC4X3_RC4_IfcDistributionChamberElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::operator Ifc4x3_rc4::IfcDistributionChamberElementTypeEnum::Value() const { @@ -4467,20 +3720,11 @@ Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortTypeEnum(const std:: } const char* Ifc4x3_rc4::IfcDistributionPortTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CABLE", "CABLECARRIER", "DUCT", "PIPE", "WIRELESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDistributionPortTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDistributionPortTypeEnum::Value Ifc4x3_rc4::IfcDistributionPortTypeEnum::FromString(const std::string& s) { - if (s == "CABLE") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLE; - if (s == "CABLECARRIER") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_CABLECARRIER; - if (s == "DUCT") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_DUCT; - if (s == "PIPE") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_PIPE; - if (s == "WIRELESS") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_WIRELESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDistributionPortTypeEnum::IfcDistributionPortType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDistributionPortTypeEnum::Value) IFC4X3_RC4_IfcDistributionPortTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDistributionPortTypeEnum::operator Ifc4x3_rc4::IfcDistributionPortTypeEnum::Value() const { @@ -4509,64 +3753,11 @@ Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystemEnum(const std::stri } const char* Ifc4x3_rc4::IfcDistributionSystemEnum::ToString(Value v) { - if ( v < 0 || v >= 51 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRCONDITIONING", "AUDIOVISUAL", "CHEMICAL", "CHILLEDWATER", "COMMUNICATION", "COMPRESSEDAIR", "CONDENSERWATER", "CONTROL", "CONVEYING", "DATA", "DISPOSAL", "DOMESTICCOLDWATER", "DOMESTICHOTWATER", "DRAINAGE", "EARTHING", "ELECTRICAL", "ELECTROACOUSTIC", "EXHAUST", "FIREPROTECTION", "FUEL", "GAS", "HAZARDOUS", "HEATING", "LIGHTING", "LIGHTNINGPROTECTION", "MUNICIPALSOLIDWASTE", "OIL", "OPERATIONAL", "POWERGENERATION", "RAINWATER", "REFRIGERATION", "SECURITY", "SEWAGE", "SIGNAL", "STORMWATER", "TELEPHONE", "TV", "VACUUM", "VENT", "VENTILATION", "WASTEWATER", "WATERSUPPLY", "CATENARY_SYSTEM", "OVERHEAD_CONTACTLINE_SYSTEM", "RETURN_CIRCUIT", "FIXEDTRANSMISSIONNETWORK", "OPERATIONALTELEPHONYSYSTEM", "MOBILENETWORK", "MONITORINGSYSTEM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDistributionSystemEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDistributionSystemEnum::Value Ifc4x3_rc4::IfcDistributionSystemEnum::FromString(const std::string& s) { - if (s == "AIRCONDITIONING") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_AIRCONDITIONING; - if (s == "AUDIOVISUAL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_AUDIOVISUAL; - if (s == "CHEMICAL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_CHEMICAL; - if (s == "CHILLEDWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_CHILLEDWATER; - if (s == "COMMUNICATION") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_COMMUNICATION; - if (s == "COMPRESSEDAIR") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_COMPRESSEDAIR; - if (s == "CONDENSERWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_CONDENSERWATER; - if (s == "CONTROL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_CONTROL; - if (s == "CONVEYING") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_CONVEYING; - if (s == "DATA") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_DATA; - if (s == "DISPOSAL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_DISPOSAL; - if (s == "DOMESTICCOLDWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICCOLDWATER; - if (s == "DOMESTICHOTWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_DOMESTICHOTWATER; - if (s == "DRAINAGE") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_DRAINAGE; - if (s == "EARTHING") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_EARTHING; - if (s == "ELECTRICAL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTRICAL; - if (s == "ELECTROACOUSTIC") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_ELECTROACOUSTIC; - if (s == "EXHAUST") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_EXHAUST; - if (s == "FIREPROTECTION") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_FIREPROTECTION; - if (s == "FUEL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_FUEL; - if (s == "GAS") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_GAS; - if (s == "HAZARDOUS") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_HAZARDOUS; - if (s == "HEATING") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_HEATING; - if (s == "LIGHTING") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTING; - if (s == "LIGHTNINGPROTECTION") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_LIGHTNINGPROTECTION; - if (s == "MUNICIPALSOLIDWASTE") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_MUNICIPALSOLIDWASTE; - if (s == "OIL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_OIL; - if (s == "OPERATIONAL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONAL; - if (s == "POWERGENERATION") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_POWERGENERATION; - if (s == "RAINWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_RAINWATER; - if (s == "REFRIGERATION") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_REFRIGERATION; - if (s == "SECURITY") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_SECURITY; - if (s == "SEWAGE") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_SEWAGE; - if (s == "SIGNAL") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_SIGNAL; - if (s == "STORMWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_STORMWATER; - if (s == "TELEPHONE") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_TELEPHONE; - if (s == "TV") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_TV; - if (s == "VACUUM") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_VACUUM; - if (s == "VENT") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_VENT; - if (s == "VENTILATION") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_VENTILATION; - if (s == "WASTEWATER") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_WASTEWATER; - if (s == "WATERSUPPLY") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_WATERSUPPLY; - if (s == "CATENARY_SYSTEM") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_CATENARY_SYSTEM; - if (s == "OVERHEAD_CONTACTLINE_SYSTEM") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_OVERHEAD_CONTACTLINE_SYSTEM; - if (s == "RETURN_CIRCUIT") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_RETURN_CIRCUIT; - if (s == "FIXEDTRANSMISSIONNETWORK") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_FIXEDTRANSMISSIONNETWORK; - if (s == "OPERATIONALTELEPHONYSYSTEM") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_OPERATIONALTELEPHONYSYSTEM; - if (s == "MOBILENETWORK") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_MOBILENETWORK; - if (s == "MONITORINGSYSTEM") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_MONITORINGSYSTEM; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDistributionSystemEnum::IfcDistributionSystem_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDistributionSystemEnum::Value) IFC4X3_RC4_IfcDistributionSystemEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDistributionSystemEnum::operator Ifc4x3_rc4::IfcDistributionSystemEnum::Value() const { @@ -4595,19 +3786,11 @@ Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentialityEnum(const } const char* Ifc4x3_rc4::IfcDocumentConfidentialityEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PUBLIC", "RESTRICTED", "CONFIDENTIAL", "PERSONAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDocumentConfidentialityEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDocumentConfidentialityEnum::Value Ifc4x3_rc4::IfcDocumentConfidentialityEnum::FromString(const std::string& s) { - if (s == "PUBLIC") return ::Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PUBLIC; - if (s == "RESTRICTED") return ::Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_RESTRICTED; - if (s == "CONFIDENTIAL") return ::Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_CONFIDENTIAL; - if (s == "PERSONAL") return ::Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_PERSONAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDocumentConfidentialityEnum::IfcDocumentConfidentiality_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDocumentConfidentialityEnum::Value) IFC4X3_RC4_IfcDocumentConfidentialityEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDocumentConfidentialityEnum::operator Ifc4x3_rc4::IfcDocumentConfidentialityEnum::Value() const { @@ -4636,18 +3819,11 @@ Ifc4x3_rc4::IfcDocumentStatusEnum::IfcDocumentStatusEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcDocumentStatusEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DRAFT", "FINALDRAFT", "FINAL", "REVISION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDocumentStatusEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDocumentStatusEnum::Value Ifc4x3_rc4::IfcDocumentStatusEnum::FromString(const std::string& s) { - if (s == "DRAFT") return ::Ifc4x3_rc4::IfcDocumentStatusEnum::IfcDocumentStatus_DRAFT; - if (s == "FINALDRAFT") return ::Ifc4x3_rc4::IfcDocumentStatusEnum::IfcDocumentStatus_FINALDRAFT; - if (s == "FINAL") return ::Ifc4x3_rc4::IfcDocumentStatusEnum::IfcDocumentStatus_FINAL; - if (s == "REVISION") return ::Ifc4x3_rc4::IfcDocumentStatusEnum::IfcDocumentStatus_REVISION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDocumentStatusEnum::IfcDocumentStatus_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDocumentStatusEnum::Value) IFC4X3_RC4_IfcDocumentStatusEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDocumentStatusEnum::operator Ifc4x3_rc4::IfcDocumentStatusEnum::Value() const { @@ -4676,22 +3852,11 @@ Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperationEnum(const std::stri } const char* Ifc4x3_rc4::IfcDoorPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SWINGING", "DOUBLE_ACTING", "SLIDING", "FOLDING", "REVOLVING", "ROLLINGUP", "FIXEDPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDoorPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDoorPanelOperationEnum::Value Ifc4x3_rc4::IfcDoorPanelOperationEnum::FromString(const std::string& s) { - if (s == "SWINGING") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SWINGING; - if (s == "DOUBLE_ACTING") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_DOUBLE_ACTING; - if (s == "SLIDING") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_SLIDING; - if (s == "FOLDING") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_ROLLINGUP; - if (s == "FIXEDPANEL") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_FIXEDPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDoorPanelOperationEnum::IfcDoorPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDoorPanelOperationEnum::Value) IFC4X3_RC4_IfcDoorPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDoorPanelOperationEnum::operator Ifc4x3_rc4::IfcDoorPanelOperationEnum::Value() const { @@ -4720,17 +3885,11 @@ Ifc4x3_rc4::IfcDoorPanelPositionEnum::IfcDoorPanelPositionEnum(const std::string } const char* Ifc4x3_rc4::IfcDoorPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDoorPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDoorPanelPositionEnum::Value Ifc4x3_rc4::IfcDoorPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_RIGHT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDoorPanelPositionEnum::IfcDoorPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDoorPanelPositionEnum::Value) IFC4X3_RC4_IfcDoorPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDoorPanelPositionEnum::operator Ifc4x3_rc4::IfcDoorPanelPositionEnum::Value() const { @@ -4759,22 +3918,11 @@ Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstructionEnum(const std } const char* Ifc4x3_rc4::IfcDoorStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "ALUMINIUM_PLASTIC", "PLASTIC", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDoorStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDoorStyleConstructionEnum::Value Ifc4x3_rc4::IfcDoorStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_WOOD; - if (s == "ALUMINIUM_PLASTIC") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_ALUMINIUM_PLASTIC; - if (s == "PLASTIC") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_PLASTIC; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDoorStyleConstructionEnum::IfcDoorStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDoorStyleConstructionEnum::Value) IFC4X3_RC4_IfcDoorStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDoorStyleConstructionEnum::operator Ifc4x3_rc4::IfcDoorStyleConstructionEnum::Value() const { @@ -4803,31 +3951,11 @@ Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperationEnum(const std::stri } const char* Ifc4x3_rc4::IfcDoorStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_DOOR_SINGLE_SWING", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_DOOR_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_DOOR_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_DOOR_FOLDING", "REVOLVING", "ROLLINGUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDoorStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDoorStyleOperationEnum::Value Ifc4x3_rc4::IfcDoorStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_SINGLE_SWING") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_DOOR_DOUBLE_SWING") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_SLIDING") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_DOOR_FOLDING") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_DOUBLE_DOOR_FOLDING; - if (s == "REVOLVING") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_REVOLVING; - if (s == "ROLLINGUP") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_ROLLINGUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDoorStyleOperationEnum::IfcDoorStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDoorStyleOperationEnum::Value) IFC4X3_RC4_IfcDoorStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDoorStyleOperationEnum::operator Ifc4x3_rc4::IfcDoorStyleOperationEnum::Value() const { @@ -4856,20 +3984,11 @@ Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcDoorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DOOR", "GATE", "TRAPDOOR", "BOOM_BARRIER", "TURNSTILE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDoorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDoorTypeEnum::Value Ifc4x3_rc4::IfcDoorTypeEnum::FromString(const std::string& s) { - if (s == "DOOR") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_DOOR; - if (s == "GATE") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_GATE; - if (s == "TRAPDOOR") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_TRAPDOOR; - if (s == "BOOM_BARRIER") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_BOOM_BARRIER; - if (s == "TURNSTILE") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_TURNSTILE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDoorTypeEnum::IfcDoorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDoorTypeEnum::Value) IFC4X3_RC4_IfcDoorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDoorTypeEnum::operator Ifc4x3_rc4::IfcDoorTypeEnum::Value() const { @@ -4898,38 +4017,11 @@ Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperationEnum(const std::string } const char* Ifc4x3_rc4::IfcDoorTypeOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 25 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_SWING_LEFT", "SINGLE_SWING_RIGHT", "DOUBLE_PANEL_SINGLE_SWING", "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT", "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT", "DOUBLE_SWING_LEFT", "DOUBLE_SWING_RIGHT", "DOUBLE_PANEL_DOUBLE_SWING", "SLIDING_TO_LEFT", "SLIDING_TO_RIGHT", "DOUBLE_PANEL_SLIDING", "FOLDING_TO_LEFT", "FOLDING_TO_RIGHT", "DOUBLE_PANEL_FOLDING", "REVOLVING_HORIZONTAL", "ROLLINGUP", "SWING_FIXED_LEFT", "SWING_FIXED_RIGHT", "DOUBLE_PANEL_LIFTING_VERTICAL", "LIFTING_HORIZONTAL", "LIFTING_VERTICAL_LEFT", "LIFTING_VERTICAL_RIGHT", "REVOLVING_VERTICAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDoorTypeOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDoorTypeOperationEnum::Value Ifc4x3_rc4::IfcDoorTypeOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_SWING_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_LEFT; - if (s == "SINGLE_SWING_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SINGLE_SWING_RIGHT; - if (s == "DOUBLE_PANEL_SINGLE_SWING") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SINGLE_SWING; - if (s == "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_LEFT; - if (s == "DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SINGLE_SWING_OPPOSITE_RIGHT; - if (s == "DOUBLE_SWING_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_LEFT; - if (s == "DOUBLE_SWING_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_SWING_RIGHT; - if (s == "DOUBLE_PANEL_DOUBLE_SWING") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_DOUBLE_SWING; - if (s == "SLIDING_TO_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_LEFT; - if (s == "SLIDING_TO_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SLIDING_TO_RIGHT; - if (s == "DOUBLE_PANEL_SLIDING") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_SLIDING; - if (s == "FOLDING_TO_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_LEFT; - if (s == "FOLDING_TO_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_FOLDING_TO_RIGHT; - if (s == "DOUBLE_PANEL_FOLDING") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_FOLDING; - if (s == "REVOLVING_HORIZONTAL") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING_HORIZONTAL; - if (s == "ROLLINGUP") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_ROLLINGUP; - if (s == "SWING_FIXED_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_LEFT; - if (s == "SWING_FIXED_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_SWING_FIXED_RIGHT; - if (s == "DOUBLE_PANEL_LIFTING_VERTICAL") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_DOUBLE_PANEL_LIFTING_VERTICAL; - if (s == "LIFTING_HORIZONTAL") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_HORIZONTAL; - if (s == "LIFTING_VERTICAL_LEFT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_VERTICAL_LEFT; - if (s == "LIFTING_VERTICAL_RIGHT") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_LIFTING_VERTICAL_RIGHT; - if (s == "REVOLVING_VERTICAL") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_REVOLVING_VERTICAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDoorTypeOperationEnum::IfcDoorTypeOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDoorTypeOperationEnum::Value) IFC4X3_RC4_IfcDoorTypeOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDoorTypeOperationEnum::operator Ifc4x3_rc4::IfcDoorTypeOperationEnum::Value() const { @@ -4958,22 +4050,11 @@ Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcDuctFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDuctFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDuctFittingTypeEnum::Value Ifc4x3_rc4::IfcDuctFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDuctFittingTypeEnum::IfcDuctFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDuctFittingTypeEnum::Value) IFC4X3_RC4_IfcDuctFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDuctFittingTypeEnum::operator Ifc4x3_rc4::IfcDuctFittingTypeEnum::Value() const { @@ -5002,17 +4083,11 @@ Ifc4x3_rc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcDuctSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGIDSEGMENT", "FLEXIBLESEGMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDuctSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDuctSegmentTypeEnum::Value Ifc4x3_rc4::IfcDuctSegmentTypeEnum::FromString(const std::string& s) { - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_RIGIDSEGMENT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_FLEXIBLESEGMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDuctSegmentTypeEnum::IfcDuctSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDuctSegmentTypeEnum::Value) IFC4X3_RC4_IfcDuctSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDuctSegmentTypeEnum::operator Ifc4x3_rc4::IfcDuctSegmentTypeEnum::Value() const { @@ -5041,18 +4116,11 @@ Ifc4x3_rc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcDuctSilencerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLATOVAL", "RECTANGULAR", "ROUND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcDuctSilencerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcDuctSilencerTypeEnum::Value Ifc4x3_rc4::IfcDuctSilencerTypeEnum::FromString(const std::string& s) { - if (s == "FLATOVAL") return ::Ifc4x3_rc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_FLATOVAL; - if (s == "RECTANGULAR") return ::Ifc4x3_rc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_RECTANGULAR; - if (s == "ROUND") return ::Ifc4x3_rc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_ROUND; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcDuctSilencerTypeEnum::IfcDuctSilencerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcDuctSilencerTypeEnum::Value) IFC4X3_RC4_IfcDuctSilencerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcDuctSilencerTypeEnum::operator Ifc4x3_rc4::IfcDuctSilencerTypeEnum::Value() const { @@ -5081,24 +4149,11 @@ Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcEarthworksCutTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRENCH", "DREDGING", "EXCAVATION", "OVEREXCAVATION", "TOPSOILREMOVAL", "STEPEXCAVATION", "PAVEMENTMILLING", "CUT", "BASE_EXCAVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEarthworksCutTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEarthworksCutTypeEnum::Value Ifc4x3_rc4::IfcEarthworksCutTypeEnum::FromString(const std::string& s) { - if (s == "TRENCH") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TRENCH; - if (s == "DREDGING") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_DREDGING; - if (s == "EXCAVATION") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_EXCAVATION; - if (s == "OVEREXCAVATION") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_OVEREXCAVATION; - if (s == "TOPSOILREMOVAL") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_TOPSOILREMOVAL; - if (s == "STEPEXCAVATION") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_STEPEXCAVATION; - if (s == "PAVEMENTMILLING") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_PAVEMENTMILLING; - if (s == "CUT") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_CUT; - if (s == "BASE_EXCAVATION") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_BASE_EXCAVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEarthworksCutTypeEnum::IfcEarthworksCutType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEarthworksCutTypeEnum::Value) IFC4X3_RC4_IfcEarthworksCutTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEarthworksCutTypeEnum::operator Ifc4x3_rc4::IfcEarthworksCutTypeEnum::Value() const { @@ -5127,22 +4182,11 @@ Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcEarthworksFillTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BACKFILL", "COUNTERWEIGHT", "SUBGRADE", "EMBANKMENT", "TRANSITIONSECTION", "SUBGRADEBED", "SLOPEFILL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEarthworksFillTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEarthworksFillTypeEnum::Value Ifc4x3_rc4::IfcEarthworksFillTypeEnum::FromString(const std::string& s) { - if (s == "BACKFILL") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_BACKFILL; - if (s == "COUNTERWEIGHT") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_COUNTERWEIGHT; - if (s == "SUBGRADE") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADE; - if (s == "EMBANKMENT") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_EMBANKMENT; - if (s == "TRANSITIONSECTION") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_TRANSITIONSECTION; - if (s == "SUBGRADEBED") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SUBGRADEBED; - if (s == "SLOPEFILL") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_SLOPEFILL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEarthworksFillTypeEnum::IfcEarthworksFillType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEarthworksFillTypeEnum::Value) IFC4X3_RC4_IfcEarthworksFillTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEarthworksFillTypeEnum::operator Ifc4x3_rc4::IfcEarthworksFillTypeEnum::Value() const { @@ -5171,31 +4215,11 @@ Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceTypeEnum(const std } const char* Ifc4x3_rc4::IfcElectricApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 18 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISHWASHER", "ELECTRICCOOKER", "FREESTANDINGELECTRICHEATER", "FREESTANDINGFAN", "FREESTANDINGWATERHEATER", "FREESTANDINGWATERCOOLER", "FREEZER", "FRIDGE_FREEZER", "HANDDRYER", "KITCHENMACHINE", "MICROWAVE", "PHOTOCOPIER", "REFRIGERATOR", "TUMBLEDRYER", "VENDINGMACHINE", "WASHINGMACHINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricApplianceTypeEnum::Value Ifc4x3_rc4::IfcElectricApplianceTypeEnum::FromString(const std::string& s) { - if (s == "DISHWASHER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_DISHWASHER; - if (s == "ELECTRICCOOKER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_ELECTRICCOOKER; - if (s == "FREESTANDINGELECTRICHEATER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGELECTRICHEATER; - if (s == "FREESTANDINGFAN") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGFAN; - if (s == "FREESTANDINGWATERHEATER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERHEATER; - if (s == "FREESTANDINGWATERCOOLER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREESTANDINGWATERCOOLER; - if (s == "FREEZER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FREEZER; - if (s == "FRIDGE_FREEZER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_FRIDGE_FREEZER; - if (s == "HANDDRYER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_HANDDRYER; - if (s == "KITCHENMACHINE") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_KITCHENMACHINE; - if (s == "MICROWAVE") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_MICROWAVE; - if (s == "PHOTOCOPIER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_PHOTOCOPIER; - if (s == "REFRIGERATOR") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_REFRIGERATOR; - if (s == "TUMBLEDRYER") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_TUMBLEDRYER; - if (s == "VENDINGMACHINE") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_VENDINGMACHINE; - if (s == "WASHINGMACHINE") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_WASHINGMACHINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricApplianceTypeEnum::IfcElectricApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricApplianceTypeEnum::Value) IFC4X3_RC4_IfcElectricApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricApplianceTypeEnum::operator Ifc4x3_rc4::IfcElectricApplianceTypeEnum::Value() const { @@ -5224,19 +4248,11 @@ Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardTy } const char* Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSUMERUNIT", "DISTRIBUTIONBOARD", "MOTORCONTROLCENTRE", "SWITCHBOARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::Value Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::FromString(const std::string& s) { - if (s == "CONSUMERUNIT") return ::Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_CONSUMERUNIT; - if (s == "DISTRIBUTIONBOARD") return ::Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_DISTRIBUTIONBOARD; - if (s == "MOTORCONTROLCENTRE") return ::Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_MOTORCONTROLCENTRE; - if (s == "SWITCHBOARD") return ::Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_SWITCHBOARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::IfcElectricDistributionBoardType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::Value) IFC4X3_RC4_IfcElectricDistributionBoardTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::operator Ifc4x3_rc4::IfcElectricDistributionBoardTypeEnum::Value() const { @@ -5265,24 +4281,11 @@ Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceTy } const char* Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATTERY", "CAPACITORBANK", "HARMONICFILTER", "INDUCTORBANK", "UPS", "CAPACITOR", "COMPENSATOR", "INDUCTOR", "RECHARGER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::Value Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::FromString(const std::string& s) { - if (s == "BATTERY") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_BATTERY; - if (s == "CAPACITORBANK") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITORBANK; - if (s == "HARMONICFILTER") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_HARMONICFILTER; - if (s == "INDUCTORBANK") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTORBANK; - if (s == "UPS") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_UPS; - if (s == "CAPACITOR") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_CAPACITOR; - if (s == "COMPENSATOR") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_COMPENSATOR; - if (s == "INDUCTOR") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_INDUCTOR; - if (s == "RECHARGER") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_RECHARGER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::IfcElectricFlowStorageDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::Value) IFC4X3_RC4_IfcElectricFlowStorageDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::operator Ifc4x3_rc4::IfcElectricFlowStorageDeviceTypeEnum::Value() const { @@ -5311,16 +4314,11 @@ Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDevi } const char* Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONICFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::Value Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONICFILTER") return ::Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_ELECTRONICFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::IfcElectricFlowTreatmentDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::Value) IFC4X3_RC4_IfcElectricFlowTreatmentDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::operator Ifc4x3_rc4::IfcElectricFlowTreatmentDeviceTypeEnum::Value() const { @@ -5349,18 +4347,11 @@ Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorTypeEnum(const std } const char* Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHP", "ENGINEGENERATOR", "STANDALONE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::Value Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::FromString(const std::string& s) { - if (s == "CHP") return ::Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_CHP; - if (s == "ENGINEGENERATOR") return ::Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_ENGINEGENERATOR; - if (s == "STANDALONE") return ::Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_STANDALONE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::IfcElectricGeneratorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::Value) IFC4X3_RC4_IfcElectricGeneratorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::operator Ifc4x3_rc4::IfcElectricGeneratorTypeEnum::Value() const { @@ -5389,20 +4380,11 @@ Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcElectricMotorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DC", "INDUCTION", "POLYPHASE", "RELUCTANCESYNCHRONOUS", "SYNCHRONOUS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricMotorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricMotorTypeEnum::Value Ifc4x3_rc4::IfcElectricMotorTypeEnum::FromString(const std::string& s) { - if (s == "DC") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_DC; - if (s == "INDUCTION") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_INDUCTION; - if (s == "POLYPHASE") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_POLYPHASE; - if (s == "RELUCTANCESYNCHRONOUS") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_RELUCTANCESYNCHRONOUS; - if (s == "SYNCHRONOUS") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_SYNCHRONOUS; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricMotorTypeEnum::IfcElectricMotorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricMotorTypeEnum::Value) IFC4X3_RC4_IfcElectricMotorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricMotorTypeEnum::operator Ifc4x3_rc4::IfcElectricMotorTypeEnum::Value() const { @@ -5431,18 +4413,11 @@ Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlTypeEnum(const } const char* Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TIMECLOCK", "TIMEDELAY", "RELAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::Value Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::FromString(const std::string& s) { - if (s == "TIMECLOCK") return ::Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMECLOCK; - if (s == "TIMEDELAY") return ::Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_TIMEDELAY; - if (s == "RELAY") return ::Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_RELAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::IfcElectricTimeControlType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::Value) IFC4X3_RC4_IfcElectricTimeControlTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::operator Ifc4x3_rc4::IfcElectricTimeControlTypeEnum::Value() const { @@ -5471,43 +4446,11 @@ Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyTypeEnum(const std::st } const char* Ifc4x3_rc4::IfcElementAssemblyTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESSORY_ASSEMBLY", "ARCH", "BEAM_GRID", "BRACED_FRAME", "GIRDER", "REINFORCEMENT_UNIT", "RIGID_FRAME", "SLAB_FIELD", "TRUSS", "ABUTMENT", "PIER", "PYLON", "CROSS_BRACING", "DECK", "MAST", "SIGNALASSEMBLY", "GRID", "SHELTER", "SUPPORTINGASSEMBLY", "SUSPENSIONASSEMBLY", "TRACTION_SWITCHING_ASSEMBLY", "TRACKPANEL", "TURNOUTPANEL", "DILATATIONPANEL", "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY", "ENTRANCEWORKS", "SUMPBUSTER", "TRAFFIC_CALMING_DEVICE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcElementAssemblyTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElementAssemblyTypeEnum::Value Ifc4x3_rc4::IfcElementAssemblyTypeEnum::FromString(const std::string& s) { - if (s == "ACCESSORY_ASSEMBLY") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ACCESSORY_ASSEMBLY; - if (s == "ARCH") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ARCH; - if (s == "BEAM_GRID") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BEAM_GRID; - if (s == "BRACED_FRAME") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_BRACED_FRAME; - if (s == "GIRDER") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GIRDER; - if (s == "REINFORCEMENT_UNIT") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_REINFORCEMENT_UNIT; - if (s == "RIGID_FRAME") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RIGID_FRAME; - if (s == "SLAB_FIELD") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SLAB_FIELD; - if (s == "TRUSS") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRUSS; - if (s == "ABUTMENT") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ABUTMENT; - if (s == "PIER") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PIER; - if (s == "PYLON") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_PYLON; - if (s == "CROSS_BRACING") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_CROSS_BRACING; - if (s == "DECK") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DECK; - if (s == "MAST") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_MAST; - if (s == "SIGNALASSEMBLY") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SIGNALASSEMBLY; - if (s == "GRID") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_GRID; - if (s == "SHELTER") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SHELTER; - if (s == "SUPPORTINGASSEMBLY") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUPPORTINGASSEMBLY; - if (s == "SUSPENSIONASSEMBLY") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUSPENSIONASSEMBLY; - if (s == "TRACTION_SWITCHING_ASSEMBLY") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACTION_SWITCHING_ASSEMBLY; - if (s == "TRACKPANEL") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRACKPANEL; - if (s == "TURNOUTPANEL") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TURNOUTPANEL; - if (s == "DILATATIONPANEL") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_DILATATIONPANEL; - if (s == "RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY; - if (s == "ENTRANCEWORKS") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_ENTRANCEWORKS; - if (s == "SUMPBUSTER") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_SUMPBUSTER; - if (s == "TRAFFIC_CALMING_DEVICE") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_TRAFFIC_CALMING_DEVICE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcElementAssemblyTypeEnum::IfcElementAssemblyType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElementAssemblyTypeEnum::Value) IFC4X3_RC4_IfcElementAssemblyTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElementAssemblyTypeEnum::operator Ifc4x3_rc4::IfcElementAssemblyTypeEnum::Value() const { @@ -5536,16 +4479,11 @@ Ifc4x3_rc4::IfcElementCompositionEnum::IfcElementCompositionEnum(const std::stri } const char* Ifc4x3_rc4::IfcElementCompositionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPLEX", "ELEMENT", "PARTIAL" }; - return names[v]; + return IFC4X3_RC4_IfcElementCompositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcElementCompositionEnum::Value Ifc4x3_rc4::IfcElementCompositionEnum::FromString(const std::string& s) { - if (s == "COMPLEX") return ::Ifc4x3_rc4::IfcElementCompositionEnum::IfcElementComposition_COMPLEX; - if (s == "ELEMENT") return ::Ifc4x3_rc4::IfcElementCompositionEnum::IfcElementComposition_ELEMENT; - if (s == "PARTIAL") return ::Ifc4x3_rc4::IfcElementCompositionEnum::IfcElementComposition_PARTIAL; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcElementCompositionEnum::Value) IFC4X3_RC4_IfcElementCompositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcElementCompositionEnum::operator Ifc4x3_rc4::IfcElementCompositionEnum::Value() const { @@ -5574,17 +4512,11 @@ Ifc4x3_rc4::IfcEngineTypeEnum::IfcEngineTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcEngineTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNALCOMBUSTION", "INTERNALCOMBUSTION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEngineTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEngineTypeEnum::Value Ifc4x3_rc4::IfcEngineTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNALCOMBUSTION") return ::Ifc4x3_rc4::IfcEngineTypeEnum::IfcEngineType_EXTERNALCOMBUSTION; - if (s == "INTERNALCOMBUSTION") return ::Ifc4x3_rc4::IfcEngineTypeEnum::IfcEngineType_INTERNALCOMBUSTION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEngineTypeEnum::IfcEngineType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEngineTypeEnum::IfcEngineType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEngineTypeEnum::Value) IFC4X3_RC4_IfcEngineTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEngineTypeEnum::operator Ifc4x3_rc4::IfcEngineTypeEnum::Value() const { @@ -5613,24 +4545,11 @@ Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerTypeEnum(const std } const char* Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER", "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER", "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER", "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER", "DIRECTEVAPORATIVEAIRWASHER", "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER", "INDIRECTEVAPORATIVEWETCOIL", "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER", "INDIRECTDIRECTCOMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::Value Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER; - if (s == "DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER; - if (s == "DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER; - if (s == "DIRECTEVAPORATIVEAIRWASHER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_DIRECTEVAPORATIVEAIRWASHER; - if (s == "INDIRECTEVAPORATIVEPACKAGEAIRCOOLER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEPACKAGEAIRCOOLER; - if (s == "INDIRECTEVAPORATIVEWETCOIL") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVEWETCOIL; - if (s == "INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER; - if (s == "INDIRECTDIRECTCOMBINATION") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_INDIRECTDIRECTCOMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::IfcEvaporativeCoolerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::Value) IFC4X3_RC4_IfcEvaporativeCoolerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::operator Ifc4x3_rc4::IfcEvaporativeCoolerTypeEnum::Value() const { @@ -5659,21 +4578,11 @@ Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcEvaporatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DIRECTEXPANSION", "DIRECTEXPANSIONSHELLANDTUBE", "DIRECTEXPANSIONTUBEINTUBE", "DIRECTEXPANSIONBRAZEDPLATE", "FLOODEDSHELLANDTUBE", "SHELLANDCOIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEvaporatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEvaporatorTypeEnum::Value Ifc4x3_rc4::IfcEvaporatorTypeEnum::FromString(const std::string& s) { - if (s == "DIRECTEXPANSION") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSION; - if (s == "DIRECTEXPANSIONSHELLANDTUBE") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONSHELLANDTUBE; - if (s == "DIRECTEXPANSIONTUBEINTUBE") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONTUBEINTUBE; - if (s == "DIRECTEXPANSIONBRAZEDPLATE") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_DIRECTEXPANSIONBRAZEDPLATE; - if (s == "FLOODEDSHELLANDTUBE") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_FLOODEDSHELLANDTUBE; - if (s == "SHELLANDCOIL") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_SHELLANDCOIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEvaporatorTypeEnum::IfcEvaporatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEvaporatorTypeEnum::Value) IFC4X3_RC4_IfcEvaporatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEvaporatorTypeEnum::operator Ifc4x3_rc4::IfcEvaporatorTypeEnum::Value() const { @@ -5702,19 +4611,11 @@ Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcEventTriggerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EVENTRULE", "EVENTMESSAGE", "EVENTTIME", "EVENTCOMPLEX", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEventTriggerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEventTriggerTypeEnum::Value Ifc4x3_rc4::IfcEventTriggerTypeEnum::FromString(const std::string& s) { - if (s == "EVENTRULE") return ::Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTRULE; - if (s == "EVENTMESSAGE") return ::Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTMESSAGE; - if (s == "EVENTTIME") return ::Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTTIME; - if (s == "EVENTCOMPLEX") return ::Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_EVENTCOMPLEX; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEventTriggerTypeEnum::IfcEventTriggerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEventTriggerTypeEnum::Value) IFC4X3_RC4_IfcEventTriggerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEventTriggerTypeEnum::operator Ifc4x3_rc4::IfcEventTriggerTypeEnum::Value() const { @@ -5743,18 +4644,11 @@ Ifc4x3_rc4::IfcEventTypeEnum::IfcEventTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcEventTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STARTEVENT", "ENDEVENT", "INTERMEDIATEEVENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcEventTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcEventTypeEnum::Value Ifc4x3_rc4::IfcEventTypeEnum::FromString(const std::string& s) { - if (s == "STARTEVENT") return ::Ifc4x3_rc4::IfcEventTypeEnum::IfcEventType_STARTEVENT; - if (s == "ENDEVENT") return ::Ifc4x3_rc4::IfcEventTypeEnum::IfcEventType_ENDEVENT; - if (s == "INTERMEDIATEEVENT") return ::Ifc4x3_rc4::IfcEventTypeEnum::IfcEventType_INTERMEDIATEEVENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcEventTypeEnum::IfcEventType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcEventTypeEnum::IfcEventType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcEventTypeEnum::Value) IFC4X3_RC4_IfcEventTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcEventTypeEnum::operator Ifc4x3_rc4::IfcEventTypeEnum::Value() const { @@ -5783,19 +4677,11 @@ Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementTypeEnum } const char* Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::Value Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::FromString(const std::string& s) { - if (s == "EXTERNAL") return ::Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_EXTERNAL_FIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::IfcExternalSpatialElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::Value) IFC4X3_RC4_IfcExternalSpatialElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::operator Ifc4x3_rc4::IfcExternalSpatialElementTypeEnum::Value() const { @@ -5824,23 +4710,11 @@ Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonTypeEnum(const s } const char* Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SEGMENT", "ABOVEGROUND", "JUNCTION", "LEVELCROSSING", "BELOWGROUND", "SUBSTRUCTURE", "TERMINAL", "SUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::Value Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::FromString(const std::string& s) { - if (s == "SEGMENT") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SEGMENT; - if (s == "ABOVEGROUND") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_ABOVEGROUND; - if (s == "JUNCTION") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_JUNCTION; - if (s == "LEVELCROSSING") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_LEVELCROSSING; - if (s == "BELOWGROUND") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_BELOWGROUND; - if (s == "SUBSTRUCTURE") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUBSTRUCTURE; - if (s == "TERMINAL") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_TERMINAL; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_SUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::IfcFacilityPartCommonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::Value) IFC4X3_RC4_IfcFacilityPartCommonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::operator Ifc4x3_rc4::IfcFacilityPartCommonTypeEnum::Value() const { @@ -5869,19 +4743,11 @@ Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsageEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFacilityUsageEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LATERAL", "REGION", "VERTICAL", "LONGITUDINAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFacilityUsageEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFacilityUsageEnum::Value Ifc4x3_rc4::IfcFacilityUsageEnum::FromString(const std::string& s) { - if (s == "LATERAL") return ::Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsage_LATERAL; - if (s == "REGION") return ::Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsage_REGION; - if (s == "VERTICAL") return ::Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsage_VERTICAL; - if (s == "LONGITUDINAL") return ::Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsage_LONGITUDINAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsage_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFacilityUsageEnum::IfcFacilityUsage_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFacilityUsageEnum::Value) IFC4X3_RC4_IfcFacilityUsageEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFacilityUsageEnum::operator Ifc4x3_rc4::IfcFacilityUsageEnum::Value() const { @@ -5910,22 +4776,11 @@ Ifc4x3_rc4::IfcFanTypeEnum::IfcFanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CENTRIFUGALFORWARDCURVED", "CENTRIFUGALRADIAL", "CENTRIFUGALBACKWARDINCLINEDCURVED", "CENTRIFUGALAIRFOIL", "TUBEAXIAL", "VANEAXIAL", "PROPELLORAXIAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFanTypeEnum::Value Ifc4x3_rc4::IfcFanTypeEnum::FromString(const std::string& s) { - if (s == "CENTRIFUGALFORWARDCURVED") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALFORWARDCURVED; - if (s == "CENTRIFUGALRADIAL") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALRADIAL; - if (s == "CENTRIFUGALBACKWARDINCLINEDCURVED") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALBACKWARDINCLINEDCURVED; - if (s == "CENTRIFUGALAIRFOIL") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_CENTRIFUGALAIRFOIL; - if (s == "TUBEAXIAL") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_TUBEAXIAL; - if (s == "VANEAXIAL") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_VANEAXIAL; - if (s == "PROPELLORAXIAL") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_PROPELLORAXIAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFanTypeEnum::IfcFanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFanTypeEnum::Value) IFC4X3_RC4_IfcFanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFanTypeEnum::operator Ifc4x3_rc4::IfcFanTypeEnum::Value() const { @@ -5954,18 +4809,11 @@ Ifc4x3_rc4::IfcFastenerTypeEnum::IfcFastenerTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLUE", "MORTAR", "WELD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFastenerTypeEnum::Value Ifc4x3_rc4::IfcFastenerTypeEnum::FromString(const std::string& s) { - if (s == "GLUE") return ::Ifc4x3_rc4::IfcFastenerTypeEnum::IfcFastenerType_GLUE; - if (s == "MORTAR") return ::Ifc4x3_rc4::IfcFastenerTypeEnum::IfcFastenerType_MORTAR; - if (s == "WELD") return ::Ifc4x3_rc4::IfcFastenerTypeEnum::IfcFastenerType_WELD; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFastenerTypeEnum::IfcFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFastenerTypeEnum::IfcFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFastenerTypeEnum::Value) IFC4X3_RC4_IfcFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFastenerTypeEnum::operator Ifc4x3_rc4::IfcFastenerTypeEnum::Value() const { @@ -5994,21 +4842,11 @@ Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFilterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRPARTICLEFILTER", "COMPRESSEDAIRFILTER", "ODORFILTER", "OILFILTER", "STRAINER", "WATERFILTER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFilterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFilterTypeEnum::Value Ifc4x3_rc4::IfcFilterTypeEnum::FromString(const std::string& s) { - if (s == "AIRPARTICLEFILTER") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_AIRPARTICLEFILTER; - if (s == "COMPRESSEDAIRFILTER") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_COMPRESSEDAIRFILTER; - if (s == "ODORFILTER") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_ODORFILTER; - if (s == "OILFILTER") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_OILFILTER; - if (s == "STRAINER") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_STRAINER; - if (s == "WATERFILTER") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_WATERFILTER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFilterTypeEnum::IfcFilterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFilterTypeEnum::Value) IFC4X3_RC4_IfcFilterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFilterTypeEnum::operator Ifc4x3_rc4::IfcFilterTypeEnum::Value() const { @@ -6037,21 +4875,11 @@ Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalTypeEn } const char* Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BREECHINGINLET", "FIREHYDRANT", "HOSEREEL", "SPRINKLER", "SPRINKLERDEFLECTOR", "FIREMONITOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::Value Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BREECHINGINLET") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_BREECHINGINLET; - if (s == "FIREHYDRANT") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREHYDRANT; - if (s == "HOSEREEL") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_HOSEREEL; - if (s == "SPRINKLER") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLER; - if (s == "SPRINKLERDEFLECTOR") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_SPRINKLERDEFLECTOR; - if (s == "FIREMONITOR") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_FIREMONITOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::IfcFireSuppressionTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::Value) IFC4X3_RC4_IfcFireSuppressionTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::operator Ifc4x3_rc4::IfcFireSuppressionTerminalTypeEnum::Value() const { @@ -6080,17 +4908,11 @@ Ifc4x3_rc4::IfcFlowDirectionEnum::IfcFlowDirectionEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFlowDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOURCE", "SINK", "SOURCEANDSINK", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFlowDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFlowDirectionEnum::Value Ifc4x3_rc4::IfcFlowDirectionEnum::FromString(const std::string& s) { - if (s == "SOURCE") return ::Ifc4x3_rc4::IfcFlowDirectionEnum::IfcFlowDirection_SOURCE; - if (s == "SINK") return ::Ifc4x3_rc4::IfcFlowDirectionEnum::IfcFlowDirection_SINK; - if (s == "SOURCEANDSINK") return ::Ifc4x3_rc4::IfcFlowDirectionEnum::IfcFlowDirection_SOURCEANDSINK; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFlowDirectionEnum::IfcFlowDirection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFlowDirectionEnum::Value) IFC4X3_RC4_IfcFlowDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFlowDirectionEnum::operator Ifc4x3_rc4::IfcFlowDirectionEnum::Value() const { @@ -6119,25 +4941,11 @@ Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRESSUREGAUGE", "THERMOMETER", "AMMETER", "FREQUENCYMETER", "POWERFACTORMETER", "PHASEANGLEMETER", "VOLTMETER_PEAK", "VOLTMETER_RMS", "COMBINED", "VOLTMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::Value Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::FromString(const std::string& s) { - if (s == "PRESSUREGAUGE") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PRESSUREGAUGE; - if (s == "THERMOMETER") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_THERMOMETER; - if (s == "AMMETER") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_AMMETER; - if (s == "FREQUENCYMETER") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_FREQUENCYMETER; - if (s == "POWERFACTORMETER") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_POWERFACTORMETER; - if (s == "PHASEANGLEMETER") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_PHASEANGLEMETER; - if (s == "VOLTMETER_PEAK") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_PEAK; - if (s == "VOLTMETER_RMS") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER_RMS; - if (s == "COMBINED") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_COMBINED; - if (s == "VOLTMETER") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_VOLTMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::IfcFlowInstrumentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::Value) IFC4X3_RC4_IfcFlowInstrumentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::operator Ifc4x3_rc4::IfcFlowInstrumentTypeEnum::Value() const { @@ -6166,19 +4974,11 @@ Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFlowMeterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ENERGYMETER", "GASMETER", "OILMETER", "WATERMETER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFlowMeterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFlowMeterTypeEnum::Value Ifc4x3_rc4::IfcFlowMeterTypeEnum::FromString(const std::string& s) { - if (s == "ENERGYMETER") return ::Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_ENERGYMETER; - if (s == "GASMETER") return ::Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_GASMETER; - if (s == "OILMETER") return ::Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_OILMETER; - if (s == "WATERMETER") return ::Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_WATERMETER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFlowMeterTypeEnum::IfcFlowMeterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFlowMeterTypeEnum::Value) IFC4X3_RC4_IfcFlowMeterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFlowMeterTypeEnum::operator Ifc4x3_rc4::IfcFlowMeterTypeEnum::Value() const { @@ -6207,20 +5007,11 @@ Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFootingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAISSON_FOUNDATION", "FOOTING_BEAM", "PAD_FOOTING", "PILE_CAP", "STRIP_FOOTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFootingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFootingTypeEnum::Value Ifc4x3_rc4::IfcFootingTypeEnum::FromString(const std::string& s) { - if (s == "CAISSON_FOUNDATION") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_CAISSON_FOUNDATION; - if (s == "FOOTING_BEAM") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_FOOTING_BEAM; - if (s == "PAD_FOOTING") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_PAD_FOOTING; - if (s == "PILE_CAP") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_PILE_CAP; - if (s == "STRIP_FOOTING") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_STRIP_FOOTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFootingTypeEnum::IfcFootingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFootingTypeEnum::Value) IFC4X3_RC4_IfcFootingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFootingTypeEnum::operator Ifc4x3_rc4::IfcFootingTypeEnum::Value() const { @@ -6249,23 +5040,11 @@ Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcFurnitureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHAIR", "TABLE", "DESK", "BED", "FILECABINET", "SHELF", "SOFA", "TECHNICALCABINET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcFurnitureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcFurnitureTypeEnum::Value Ifc4x3_rc4::IfcFurnitureTypeEnum::FromString(const std::string& s) { - if (s == "CHAIR") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_CHAIR; - if (s == "TABLE") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_TABLE; - if (s == "DESK") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_DESK; - if (s == "BED") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_BED; - if (s == "FILECABINET") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_FILECABINET; - if (s == "SHELF") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_SHELF; - if (s == "SOFA") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_SOFA; - if (s == "TECHNICALCABINET") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_TECHNICALCABINET; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcFurnitureTypeEnum::IfcFurnitureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcFurnitureTypeEnum::Value) IFC4X3_RC4_IfcFurnitureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcFurnitureTypeEnum::operator Ifc4x3_rc4::IfcFurnitureTypeEnum::Value() const { @@ -6294,17 +5073,11 @@ Ifc4x3_rc4::IfcGeographicElementTypeEnum::IfcGeographicElementTypeEnum(const std } const char* Ifc4x3_rc4::IfcGeographicElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TERRAIN", "SOIL_BORING_POINT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcGeographicElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcGeographicElementTypeEnum::Value Ifc4x3_rc4::IfcGeographicElementTypeEnum::FromString(const std::string& s) { - if (s == "TERRAIN") return ::Ifc4x3_rc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_TERRAIN; - if (s == "SOIL_BORING_POINT") return ::Ifc4x3_rc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_SOIL_BORING_POINT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcGeographicElementTypeEnum::IfcGeographicElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcGeographicElementTypeEnum::Value) IFC4X3_RC4_IfcGeographicElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcGeographicElementTypeEnum::operator Ifc4x3_rc4::IfcGeographicElementTypeEnum::Value() const { @@ -6333,22 +5106,11 @@ Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjectionEnum(const std::st } const char* Ifc4x3_rc4::IfcGeometricProjectionEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRAPH_VIEW", "SKETCH_VIEW", "MODEL_VIEW", "PLAN_VIEW", "REFLECTED_PLAN_VIEW", "SECTION_VIEW", "ELEVATION_VIEW", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcGeometricProjectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcGeometricProjectionEnum::Value Ifc4x3_rc4::IfcGeometricProjectionEnum::FromString(const std::string& s) { - if (s == "GRAPH_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_GRAPH_VIEW; - if (s == "SKETCH_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_SKETCH_VIEW; - if (s == "MODEL_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_MODEL_VIEW; - if (s == "PLAN_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_PLAN_VIEW; - if (s == "REFLECTED_PLAN_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_REFLECTED_PLAN_VIEW; - if (s == "SECTION_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_SECTION_VIEW; - if (s == "ELEVATION_VIEW") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_ELEVATION_VIEW; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcGeometricProjectionEnum::IfcGeometricProjection_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcGeometricProjectionEnum::Value) IFC4X3_RC4_IfcGeometricProjectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcGeometricProjectionEnum::operator Ifc4x3_rc4::IfcGeometricProjectionEnum::Value() const { @@ -6377,15 +5139,11 @@ Ifc4x3_rc4::IfcGlobalOrLocalEnum::IfcGlobalOrLocalEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcGlobalOrLocalEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GLOBAL_COORDS", "LOCAL_COORDS" }; - return names[v]; + return IFC4X3_RC4_IfcGlobalOrLocalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcGlobalOrLocalEnum::Value Ifc4x3_rc4::IfcGlobalOrLocalEnum::FromString(const std::string& s) { - if (s == "GLOBAL_COORDS") return ::Ifc4x3_rc4::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_GLOBAL_COORDS; - if (s == "LOCAL_COORDS") return ::Ifc4x3_rc4::IfcGlobalOrLocalEnum::IfcGlobalOrLocal_LOCAL_COORDS; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcGlobalOrLocalEnum::Value) IFC4X3_RC4_IfcGlobalOrLocalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcGlobalOrLocalEnum::operator Ifc4x3_rc4::IfcGlobalOrLocalEnum::Value() const { @@ -6414,19 +5172,11 @@ Ifc4x3_rc4::IfcGridTypeEnum::IfcGridTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcGridTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RECTANGULAR", "RADIAL", "TRIANGULAR", "IRREGULAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcGridTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcGridTypeEnum::Value Ifc4x3_rc4::IfcGridTypeEnum::FromString(const std::string& s) { - if (s == "RECTANGULAR") return ::Ifc4x3_rc4::IfcGridTypeEnum::IfcGridType_RECTANGULAR; - if (s == "RADIAL") return ::Ifc4x3_rc4::IfcGridTypeEnum::IfcGridType_RADIAL; - if (s == "TRIANGULAR") return ::Ifc4x3_rc4::IfcGridTypeEnum::IfcGridType_TRIANGULAR; - if (s == "IRREGULAR") return ::Ifc4x3_rc4::IfcGridTypeEnum::IfcGridType_IRREGULAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcGridTypeEnum::IfcGridType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcGridTypeEnum::IfcGridType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcGridTypeEnum::Value) IFC4X3_RC4_IfcGridTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcGridTypeEnum::operator Ifc4x3_rc4::IfcGridTypeEnum::Value() const { @@ -6455,18 +5205,11 @@ Ifc4x3_rc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcHeatExchangerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLATE", "SHELLANDTUBE", "TURNOUTHEATING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcHeatExchangerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcHeatExchangerTypeEnum::Value Ifc4x3_rc4::IfcHeatExchangerTypeEnum::FromString(const std::string& s) { - if (s == "PLATE") return ::Ifc4x3_rc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_PLATE; - if (s == "SHELLANDTUBE") return ::Ifc4x3_rc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_SHELLANDTUBE; - if (s == "TURNOUTHEATING") return ::Ifc4x3_rc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_TURNOUTHEATING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcHeatExchangerTypeEnum::IfcHeatExchangerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcHeatExchangerTypeEnum::Value) IFC4X3_RC4_IfcHeatExchangerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcHeatExchangerTypeEnum::operator Ifc4x3_rc4::IfcHeatExchangerTypeEnum::Value() const { @@ -6495,28 +5238,11 @@ Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcHumidifierTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STEAMINJECTION", "ADIABATICAIRWASHER", "ADIABATICPAN", "ADIABATICWETTEDELEMENT", "ADIABATICATOMIZING", "ADIABATICULTRASONIC", "ADIABATICRIGIDMEDIA", "ADIABATICCOMPRESSEDAIRNOZZLE", "ASSISTEDELECTRIC", "ASSISTEDNATURALGAS", "ASSISTEDPROPANE", "ASSISTEDBUTANE", "ASSISTEDSTEAM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcHumidifierTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcHumidifierTypeEnum::Value Ifc4x3_rc4::IfcHumidifierTypeEnum::FromString(const std::string& s) { - if (s == "STEAMINJECTION") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_STEAMINJECTION; - if (s == "ADIABATICAIRWASHER") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICAIRWASHER; - if (s == "ADIABATICPAN") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICPAN; - if (s == "ADIABATICWETTEDELEMENT") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICWETTEDELEMENT; - if (s == "ADIABATICATOMIZING") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICATOMIZING; - if (s == "ADIABATICULTRASONIC") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICULTRASONIC; - if (s == "ADIABATICRIGIDMEDIA") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICRIGIDMEDIA; - if (s == "ADIABATICCOMPRESSEDAIRNOZZLE") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ADIABATICCOMPRESSEDAIRNOZZLE; - if (s == "ASSISTEDELECTRIC") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDELECTRIC; - if (s == "ASSISTEDNATURALGAS") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDNATURALGAS; - if (s == "ASSISTEDPROPANE") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDPROPANE; - if (s == "ASSISTEDBUTANE") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDBUTANE; - if (s == "ASSISTEDSTEAM") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_ASSISTEDSTEAM; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcHumidifierTypeEnum::IfcHumidifierType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcHumidifierTypeEnum::Value) IFC4X3_RC4_IfcHumidifierTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcHumidifierTypeEnum::operator Ifc4x3_rc4::IfcHumidifierTypeEnum::Value() const { @@ -6545,19 +5271,11 @@ Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceTypeEnum } const char* Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CRASHCUSHION", "DAMPINGSYSTEM", "FENDER", "BUMPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::Value Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CRASHCUSHION") return ::Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_CRASHCUSHION; - if (s == "DAMPINGSYSTEM") return ::Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_DAMPINGSYSTEM; - if (s == "FENDER") return ::Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_FENDER; - if (s == "BUMPER") return ::Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_BUMPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::IfcImpactProtectionDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::Value) IFC4X3_RC4_IfcImpactProtectionDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::operator Ifc4x3_rc4::IfcImpactProtectionDeviceTypeEnum::Value() const { @@ -6586,19 +5304,11 @@ Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcInterceptorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CYCLONIC", "GREASE", "OIL", "PETROL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcInterceptorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcInterceptorTypeEnum::Value Ifc4x3_rc4::IfcInterceptorTypeEnum::FromString(const std::string& s) { - if (s == "CYCLONIC") return ::Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorType_CYCLONIC; - if (s == "GREASE") return ::Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorType_GREASE; - if (s == "OIL") return ::Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorType_OIL; - if (s == "PETROL") return ::Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorType_PETROL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcInterceptorTypeEnum::IfcInterceptorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcInterceptorTypeEnum::Value) IFC4X3_RC4_IfcInterceptorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcInterceptorTypeEnum::operator Ifc4x3_rc4::IfcInterceptorTypeEnum::Value() const { @@ -6627,19 +5337,11 @@ Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternalEnum(const std::stri } const char* Ifc4x3_rc4::IfcInternalOrExternalEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "INTERNAL", "EXTERNAL", "EXTERNAL_EARTH", "EXTERNAL_WATER", "EXTERNAL_FIRE", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcInternalOrExternalEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcInternalOrExternalEnum::Value Ifc4x3_rc4::IfcInternalOrExternalEnum::FromString(const std::string& s) { - if (s == "INTERNAL") return ::Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL; - if (s == "EXTERNAL_EARTH") return ::Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_EARTH; - if (s == "EXTERNAL_WATER") return ::Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_WATER; - if (s == "EXTERNAL_FIRE") return ::Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_EXTERNAL_FIRE; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcInternalOrExternalEnum::IfcInternalOrExternal_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcInternalOrExternalEnum::Value) IFC4X3_RC4_IfcInternalOrExternalEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcInternalOrExternalEnum::operator Ifc4x3_rc4::IfcInternalOrExternalEnum::Value() const { @@ -6668,18 +5370,11 @@ Ifc4x3_rc4::IfcInventoryTypeEnum::IfcInventoryTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcInventoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSETINVENTORY", "SPACEINVENTORY", "FURNITUREINVENTORY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcInventoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcInventoryTypeEnum::Value Ifc4x3_rc4::IfcInventoryTypeEnum::FromString(const std::string& s) { - if (s == "ASSETINVENTORY") return ::Ifc4x3_rc4::IfcInventoryTypeEnum::IfcInventoryType_ASSETINVENTORY; - if (s == "SPACEINVENTORY") return ::Ifc4x3_rc4::IfcInventoryTypeEnum::IfcInventoryType_SPACEINVENTORY; - if (s == "FURNITUREINVENTORY") return ::Ifc4x3_rc4::IfcInventoryTypeEnum::IfcInventoryType_FURNITUREINVENTORY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcInventoryTypeEnum::IfcInventoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcInventoryTypeEnum::IfcInventoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcInventoryTypeEnum::Value) IFC4X3_RC4_IfcInventoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcInventoryTypeEnum::operator Ifc4x3_rc4::IfcInventoryTypeEnum::Value() const { @@ -6708,17 +5403,11 @@ Ifc4x3_rc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcJunctionBoxTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DATA", "POWER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcJunctionBoxTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcJunctionBoxTypeEnum::Value Ifc4x3_rc4::IfcJunctionBoxTypeEnum::FromString(const std::string& s) { - if (s == "DATA") return ::Ifc4x3_rc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_DATA; - if (s == "POWER") return ::Ifc4x3_rc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_POWER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcJunctionBoxTypeEnum::IfcJunctionBoxType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcJunctionBoxTypeEnum::Value) IFC4X3_RC4_IfcJunctionBoxTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcJunctionBoxTypeEnum::operator Ifc4x3_rc4::IfcJunctionBoxTypeEnum::Value() const { @@ -6747,17 +5436,11 @@ Ifc4x3_rc4::IfcKnotType::IfcKnotType(const std::string& v) { } const char* Ifc4x3_rc4::IfcKnotType::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM_KNOTS", "QUASI_UNIFORM_KNOTS", "PIECEWISE_BEZIER_KNOTS", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC4_IfcKnotType_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcKnotType::Value Ifc4x3_rc4::IfcKnotType::FromString(const std::string& s) { - if (s == "UNIFORM_KNOTS") return ::Ifc4x3_rc4::IfcKnotType::IfcKnotType_UNIFORM_KNOTS; - if (s == "QUASI_UNIFORM_KNOTS") return ::Ifc4x3_rc4::IfcKnotType::IfcKnotType_QUASI_UNIFORM_KNOTS; - if (s == "PIECEWISE_BEZIER_KNOTS") return ::Ifc4x3_rc4::IfcKnotType::IfcKnotType_PIECEWISE_BEZIER_KNOTS; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc4::IfcKnotType::IfcKnotType_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcKnotType::Value) IFC4X3_RC4_IfcKnotType_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcKnotType::operator Ifc4x3_rc4::IfcKnotType::Value() const { @@ -6786,34 +5469,11 @@ Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcLaborResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADMINISTRATION", "CARPENTRY", "CLEANING", "CONCRETE", "DRYWALL", "ELECTRIC", "FINISHING", "FLOORING", "GENERAL", "HVAC", "LANDSCAPING", "MASONRY", "PAINTING", "PAVING", "PLUMBING", "ROOFING", "SITEGRADING", "STEELWORK", "SURVEYING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLaborResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLaborResourceTypeEnum::Value Ifc4x3_rc4::IfcLaborResourceTypeEnum::FromString(const std::string& s) { - if (s == "ADMINISTRATION") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_ADMINISTRATION; - if (s == "CARPENTRY") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_CARPENTRY; - if (s == "CLEANING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_CLEANING; - if (s == "CONCRETE") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_CONCRETE; - if (s == "DRYWALL") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_DRYWALL; - if (s == "ELECTRIC") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_ELECTRIC; - if (s == "FINISHING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_FINISHING; - if (s == "FLOORING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_FLOORING; - if (s == "GENERAL") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_GENERAL; - if (s == "HVAC") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_HVAC; - if (s == "LANDSCAPING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_LANDSCAPING; - if (s == "MASONRY") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_MASONRY; - if (s == "PAINTING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAINTING; - if (s == "PAVING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_PAVING; - if (s == "PLUMBING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_PLUMBING; - if (s == "ROOFING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_ROOFING; - if (s == "SITEGRADING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_SITEGRADING; - if (s == "STEELWORK") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_STEELWORK; - if (s == "SURVEYING") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_SURVEYING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLaborResourceTypeEnum::IfcLaborResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLaborResourceTypeEnum::Value) IFC4X3_RC4_IfcLaborResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLaborResourceTypeEnum::operator Ifc4x3_rc4::IfcLaborResourceTypeEnum::Value() const { @@ -6842,24 +5502,11 @@ Ifc4x3_rc4::IfcLampTypeEnum::IfcLampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcLampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HALOGEN", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LED", "METALHALIDE", "OLED", "TUNGSTENFILAMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLampTypeEnum::Value Ifc4x3_rc4::IfcLampTypeEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_FLUORESCENT; - if (s == "HALOGEN") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_HALOGEN; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_HIGHPRESSURESODIUM; - if (s == "LED") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_LED; - if (s == "METALHALIDE") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_METALHALIDE; - if (s == "OLED") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_OLED; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_TUNGSTENFILAMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLampTypeEnum::IfcLampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLampTypeEnum::Value) IFC4X3_RC4_IfcLampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLampTypeEnum::operator Ifc4x3_rc4::IfcLampTypeEnum::Value() const { @@ -6888,16 +5535,11 @@ Ifc4x3_rc4::IfcLayerSetDirectionEnum::IfcLayerSetDirectionEnum(const std::string } const char* Ifc4x3_rc4::IfcLayerSetDirectionEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AXIS1", "AXIS2", "AXIS3" }; - return names[v]; + return IFC4X3_RC4_IfcLayerSetDirectionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLayerSetDirectionEnum::Value Ifc4x3_rc4::IfcLayerSetDirectionEnum::FromString(const std::string& s) { - if (s == "AXIS1") return ::Ifc4x3_rc4::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS1; - if (s == "AXIS2") return ::Ifc4x3_rc4::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS2; - if (s == "AXIS3") return ::Ifc4x3_rc4::IfcLayerSetDirectionEnum::IfcLayerSetDirection_AXIS3; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLayerSetDirectionEnum::Value) IFC4X3_RC4_IfcLayerSetDirectionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLayerSetDirectionEnum::operator Ifc4x3_rc4::IfcLayerSetDirectionEnum::Value() const { @@ -6926,17 +5568,11 @@ Ifc4x3_rc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurveEnum(const s } const char* Ifc4x3_rc4::IfcLightDistributionCurveEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TYPE_A", "TYPE_B", "TYPE_C", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLightDistributionCurveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLightDistributionCurveEnum::Value Ifc4x3_rc4::IfcLightDistributionCurveEnum::FromString(const std::string& s) { - if (s == "TYPE_A") return ::Ifc4x3_rc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_A; - if (s == "TYPE_B") return ::Ifc4x3_rc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_B; - if (s == "TYPE_C") return ::Ifc4x3_rc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_TYPE_C; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLightDistributionCurveEnum::IfcLightDistributionCurve_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLightDistributionCurveEnum::Value) IFC4X3_RC4_IfcLightDistributionCurveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLightDistributionCurveEnum::operator Ifc4x3_rc4::IfcLightDistributionCurveEnum::Value() const { @@ -6965,24 +5601,11 @@ Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSourceEnum(const std::st } const char* Ifc4x3_rc4::IfcLightEmissionSourceEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPACTFLUORESCENT", "FLUORESCENT", "HIGHPRESSUREMERCURY", "HIGHPRESSURESODIUM", "LIGHTEMITTINGDIODE", "LOWPRESSURESODIUM", "LOWVOLTAGEHALOGEN", "MAINVOLTAGEHALOGEN", "METALHALIDE", "TUNGSTENFILAMENT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLightEmissionSourceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLightEmissionSourceEnum::Value Ifc4x3_rc4::IfcLightEmissionSourceEnum::FromString(const std::string& s) { - if (s == "COMPACTFLUORESCENT") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_COMPACTFLUORESCENT; - if (s == "FLUORESCENT") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_FLUORESCENT; - if (s == "HIGHPRESSUREMERCURY") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSUREMERCURY; - if (s == "HIGHPRESSURESODIUM") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_HIGHPRESSURESODIUM; - if (s == "LIGHTEMITTINGDIODE") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LIGHTEMITTINGDIODE; - if (s == "LOWPRESSURESODIUM") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWPRESSURESODIUM; - if (s == "LOWVOLTAGEHALOGEN") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_LOWVOLTAGEHALOGEN; - if (s == "MAINVOLTAGEHALOGEN") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_MAINVOLTAGEHALOGEN; - if (s == "METALHALIDE") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_METALHALIDE; - if (s == "TUNGSTENFILAMENT") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_TUNGSTENFILAMENT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLightEmissionSourceEnum::IfcLightEmissionSource_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLightEmissionSourceEnum::Value) IFC4X3_RC4_IfcLightEmissionSourceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLightEmissionSourceEnum::operator Ifc4x3_rc4::IfcLightEmissionSourceEnum::Value() const { @@ -7011,18 +5634,11 @@ Ifc4x3_rc4::IfcLightFixtureTypeEnum::IfcLightFixtureTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcLightFixtureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POINTSOURCE", "DIRECTIONSOURCE", "SECURITYLIGHTING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLightFixtureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLightFixtureTypeEnum::Value Ifc4x3_rc4::IfcLightFixtureTypeEnum::FromString(const std::string& s) { - if (s == "POINTSOURCE") return ::Ifc4x3_rc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_POINTSOURCE; - if (s == "DIRECTIONSOURCE") return ::Ifc4x3_rc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_DIRECTIONSOURCE; - if (s == "SECURITYLIGHTING") return ::Ifc4x3_rc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_SECURITYLIGHTING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLightFixtureTypeEnum::IfcLightFixtureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLightFixtureTypeEnum::Value) IFC4X3_RC4_IfcLightFixtureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLightFixtureTypeEnum::operator Ifc4x3_rc4::IfcLightFixtureTypeEnum::Value() const { @@ -7051,17 +5667,11 @@ Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOADINGARM", "HOSEREEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::Value Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::FromString(const std::string& s) { - if (s == "LOADINGARM") return ::Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_LOADINGARM; - if (s == "HOSEREEL") return ::Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_HOSEREEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::IfcLiquidTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::Value) IFC4X3_RC4_IfcLiquidTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::operator Ifc4x3_rc4::IfcLiquidTerminalTypeEnum::Value() const { @@ -7090,18 +5700,11 @@ Ifc4x3_rc4::IfcLoadGroupTypeEnum::IfcLoadGroupTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcLoadGroupTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOAD_GROUP", "LOAD_CASE", "LOAD_COMBINATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcLoadGroupTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLoadGroupTypeEnum::Value Ifc4x3_rc4::IfcLoadGroupTypeEnum::FromString(const std::string& s) { - if (s == "LOAD_GROUP") return ::Ifc4x3_rc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_GROUP; - if (s == "LOAD_CASE") return ::Ifc4x3_rc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_CASE; - if (s == "LOAD_COMBINATION") return ::Ifc4x3_rc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_LOAD_COMBINATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcLoadGroupTypeEnum::IfcLoadGroupType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLoadGroupTypeEnum::Value) IFC4X3_RC4_IfcLoadGroupTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLoadGroupTypeEnum::operator Ifc4x3_rc4::IfcLoadGroupTypeEnum::Value() const { @@ -7130,18 +5733,11 @@ Ifc4x3_rc4::IfcLogicalOperatorEnum::IfcLogicalOperatorEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcLogicalOperatorEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LOGICALAND", "LOGICALOR", "LOGICALXOR", "LOGICALNOTAND", "LOGICALNOTOR" }; - return names[v]; + return IFC4X3_RC4_IfcLogicalOperatorEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcLogicalOperatorEnum::Value Ifc4x3_rc4::IfcLogicalOperatorEnum::FromString(const std::string& s) { - if (s == "LOGICALAND") return ::Ifc4x3_rc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALAND; - if (s == "LOGICALOR") return ::Ifc4x3_rc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALOR; - if (s == "LOGICALXOR") return ::Ifc4x3_rc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALXOR; - if (s == "LOGICALNOTAND") return ::Ifc4x3_rc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTAND; - if (s == "LOGICALNOTOR") return ::Ifc4x3_rc4::IfcLogicalOperatorEnum::IfcLogicalOperator_LOGICALNOTOR; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcLogicalOperatorEnum::Value) IFC4X3_RC4_IfcLogicalOperatorEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcLogicalOperatorEnum::operator Ifc4x3_rc4::IfcLogicalOperatorEnum::Value() const { @@ -7170,34 +5766,11 @@ Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcMarineFacilityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CANAL", "WATERWAYSHIPLIFT", "REVETMENT", "LAUNCHRECOVERY", "MARINEDEFENCE", "HYDROLIFT", "SHIPYARD", "SHIPLIFT", "PORT", "QUAY", "FLOATINGDOCK", "NAVIGATIONALCHANNEL", "BREAKWATER", "DRYDOCK", "JETTY", "SHIPLOCK", "BARRIERBEACH", "SLIPWAY", "WATERWAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMarineFacilityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMarineFacilityTypeEnum::Value Ifc4x3_rc4::IfcMarineFacilityTypeEnum::FromString(const std::string& s) { - if (s == "CANAL") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_CANAL; - if (s == "WATERWAYSHIPLIFT") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAYSHIPLIFT; - if (s == "REVETMENT") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_REVETMENT; - if (s == "LAUNCHRECOVERY") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_LAUNCHRECOVERY; - if (s == "MARINEDEFENCE") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_MARINEDEFENCE; - if (s == "HYDROLIFT") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_HYDROLIFT; - if (s == "SHIPYARD") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPYARD; - if (s == "SHIPLIFT") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLIFT; - if (s == "PORT") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_PORT; - if (s == "QUAY") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_QUAY; - if (s == "FLOATINGDOCK") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_FLOATINGDOCK; - if (s == "NAVIGATIONALCHANNEL") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NAVIGATIONALCHANNEL; - if (s == "BREAKWATER") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BREAKWATER; - if (s == "DRYDOCK") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_DRYDOCK; - if (s == "JETTY") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_JETTY; - if (s == "SHIPLOCK") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SHIPLOCK; - if (s == "BARRIERBEACH") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_BARRIERBEACH; - if (s == "SLIPWAY") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_SLIPWAY; - if (s == "WATERWAY") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_WATERWAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMarineFacilityTypeEnum::IfcMarineFacilityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMarineFacilityTypeEnum::Value) IFC4X3_RC4_IfcMarineFacilityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMarineFacilityTypeEnum::operator Ifc4x3_rc4::IfcMarineFacilityTypeEnum::Value() const { @@ -7226,39 +5799,11 @@ Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcMarinePartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CREST", "MANUFACTURING", "LOWWATERLINE", "CORE", "WATERFIELD", "CILL_LEVEL", "BERTHINGSTRUCTURE", "COPELEVEL", "CHAMBER", "STORAGEAREA", "APPROACHCHANNEL", "VEHICLESERVICING", "SHIPTRANSFER", "GATEHEAD", "GUDINGSTRUCTURE", "BELOWWATERLINE", "WEATHERSIDE", "LANDFIELD", "PROTECTION", "LEEWARDSIDE", "ABOVEWATERLINE", "ANCHORAGE", "NAVIGATIONALAREA", "HIGHWATERLINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMarinePartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMarinePartTypeEnum::Value Ifc4x3_rc4::IfcMarinePartTypeEnum::FromString(const std::string& s) { - if (s == "CREST") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_CREST; - if (s == "MANUFACTURING") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_MANUFACTURING; - if (s == "LOWWATERLINE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_LOWWATERLINE; - if (s == "CORE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_CORE; - if (s == "WATERFIELD") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_WATERFIELD; - if (s == "CILL_LEVEL") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_CILL_LEVEL; - if (s == "BERTHINGSTRUCTURE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_BERTHINGSTRUCTURE; - if (s == "COPELEVEL") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_COPELEVEL; - if (s == "CHAMBER") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_CHAMBER; - if (s == "STORAGEAREA") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_STORAGEAREA; - if (s == "APPROACHCHANNEL") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_APPROACHCHANNEL; - if (s == "VEHICLESERVICING") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_VEHICLESERVICING; - if (s == "SHIPTRANSFER") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_SHIPTRANSFER; - if (s == "GATEHEAD") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_GATEHEAD; - if (s == "GUDINGSTRUCTURE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_GUDINGSTRUCTURE; - if (s == "BELOWWATERLINE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_BELOWWATERLINE; - if (s == "WEATHERSIDE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_WEATHERSIDE; - if (s == "LANDFIELD") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_LANDFIELD; - if (s == "PROTECTION") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_PROTECTION; - if (s == "LEEWARDSIDE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_LEEWARDSIDE; - if (s == "ABOVEWATERLINE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_ABOVEWATERLINE; - if (s == "ANCHORAGE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_ANCHORAGE; - if (s == "NAVIGATIONALAREA") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_NAVIGATIONALAREA; - if (s == "HIGHWATERLINE") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_HIGHWATERLINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMarinePartTypeEnum::IfcMarinePartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMarinePartTypeEnum::Value) IFC4X3_RC4_IfcMarinePartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMarinePartTypeEnum::operator Ifc4x3_rc4::IfcMarinePartTypeEnum::Value() const { @@ -7287,30 +5832,11 @@ Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerTypeEnum(const s } const char* Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORBOLT", "BOLT", "DOWEL", "NAIL", "NAILPLATE", "RIVET", "SCREW", "SHEARCONNECTOR", "STAPLE", "STUDSHEARCONNECTOR", "COUPLER", "RAILJOINT", "RAILFASTENING", "CHAIN", "ROPE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::Value Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORBOLT") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ANCHORBOLT; - if (s == "BOLT") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_BOLT; - if (s == "DOWEL") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_DOWEL; - if (s == "NAIL") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAIL; - if (s == "NAILPLATE") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NAILPLATE; - if (s == "RIVET") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RIVET; - if (s == "SCREW") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SCREW; - if (s == "SHEARCONNECTOR") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_SHEARCONNECTOR; - if (s == "STAPLE") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STAPLE; - if (s == "STUDSHEARCONNECTOR") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_STUDSHEARCONNECTOR; - if (s == "COUPLER") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_COUPLER; - if (s == "RAILJOINT") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILJOINT; - if (s == "RAILFASTENING") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_RAILFASTENING; - if (s == "CHAIN") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_CHAIN; - if (s == "ROPE") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_ROPE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::IfcMechanicalFastenerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::Value) IFC4X3_RC4_IfcMechanicalFastenerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::operator Ifc4x3_rc4::IfcMechanicalFastenerTypeEnum::Value() const { @@ -7339,20 +5865,11 @@ Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRSTATION", "FEEDAIRUNIT", "OXYGENGENERATOR", "OXYGENPLANT", "VACUUMSTATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::Value Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::FromString(const std::string& s) { - if (s == "AIRSTATION") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_AIRSTATION; - if (s == "FEEDAIRUNIT") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_FEEDAIRUNIT; - if (s == "OXYGENGENERATOR") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENGENERATOR; - if (s == "OXYGENPLANT") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_OXYGENPLANT; - if (s == "VACUUMSTATION") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_VACUUMSTATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::IfcMedicalDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::Value) IFC4X3_RC4_IfcMedicalDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::operator Ifc4x3_rc4::IfcMedicalDeviceTypeEnum::Value() const { @@ -7381,34 +5898,11 @@ Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 21 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BRACE", "CHORD", "COLLAR", "MEMBER", "MULLION", "PLATE", "POST", "PURLIN", "RAFTER", "STRINGER", "STRUT", "STUD", "STIFFENING_RIB", "ARCH_SEGMENT", "SUSPENSION_CABLE", "SUSPENDER", "STAY_CABLE", "STRUCTURALCABLE", "TIEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMemberTypeEnum::Value Ifc4x3_rc4::IfcMemberTypeEnum::FromString(const std::string& s) { - if (s == "BRACE") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_BRACE; - if (s == "CHORD") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_CHORD; - if (s == "COLLAR") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_COLLAR; - if (s == "MEMBER") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_MEMBER; - if (s == "MULLION") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_MULLION; - if (s == "PLATE") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_PLATE; - if (s == "POST") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_POST; - if (s == "PURLIN") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_PURLIN; - if (s == "RAFTER") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_RAFTER; - if (s == "STRINGER") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_STRINGER; - if (s == "STRUT") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_STRUT; - if (s == "STUD") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_STUD; - if (s == "STIFFENING_RIB") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_STIFFENING_RIB; - if (s == "ARCH_SEGMENT") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_ARCH_SEGMENT; - if (s == "SUSPENSION_CABLE") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_SUSPENSION_CABLE; - if (s == "SUSPENDER") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_SUSPENDER; - if (s == "STAY_CABLE") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_STAY_CABLE; - if (s == "STRUCTURALCABLE") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_STRUCTURALCABLE; - if (s == "TIEBAR") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_TIEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMemberTypeEnum::IfcMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMemberTypeEnum::Value) IFC4X3_RC4_IfcMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMemberTypeEnum::operator Ifc4x3_rc4::IfcMemberTypeEnum::Value() const { @@ -7437,28 +5931,11 @@ Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunica } const char* Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "E_UTRAN_NODE_B", "REMOTERADIOUNIT", "ACCESSPOINT", "BASETRANSCEIVERSTATION", "REMOTEUNIT", "BASEBANDUNIT", "MASTERUNIT", "GATEWAY_GPRS_SUPPORT_NODE", "SUBSCRIBERSERVER", "MOBILESWITCHINGCENTER", "MSCSERVER", "PACKETCONTROLUNIT", "SERVICE_GPRS_SUPPORT_NODE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::Value Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::FromString(const std::string& s) { - if (s == "E_UTRAN_NODE_B") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_E_UTRAN_NODE_B; - if (s == "REMOTERADIOUNIT") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTERADIOUNIT; - if (s == "ACCESSPOINT") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_ACCESSPOINT; - if (s == "BASETRANSCEIVERSTATION") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASETRANSCEIVERSTATION; - if (s == "REMOTEUNIT") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_REMOTEUNIT; - if (s == "BASEBANDUNIT") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_BASEBANDUNIT; - if (s == "MASTERUNIT") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MASTERUNIT; - if (s == "GATEWAY_GPRS_SUPPORT_NODE") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_GATEWAY_GPRS_SUPPORT_NODE; - if (s == "SUBSCRIBERSERVER") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_SUBSCRIBERSERVER; - if (s == "MOBILESWITCHINGCENTER") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MOBILESWITCHINGCENTER; - if (s == "MSCSERVER") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_MSCSERVER; - if (s == "PACKETCONTROLUNIT") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_PACKETCONTROLUNIT; - if (s == "SERVICE_GPRS_SUPPORT_NODE") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_SERVICE_GPRS_SUPPORT_NODE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::IfcMobileTelecommunicationsApplianceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::Value) IFC4X3_RC4_IfcMobileTelecommunicationsApplianceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::operator Ifc4x3_rc4::IfcMobileTelecommunicationsApplianceTypeEnum::Value() const { @@ -7487,20 +5964,11 @@ Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcMooringDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LINETENSIONER", "MAGNETICDEVICE", "MOORINGHOOKS", "VACUUMDEVICE", "BOLLARD", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMooringDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMooringDeviceTypeEnum::Value Ifc4x3_rc4::IfcMooringDeviceTypeEnum::FromString(const std::string& s) { - if (s == "LINETENSIONER") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_LINETENSIONER; - if (s == "MAGNETICDEVICE") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MAGNETICDEVICE; - if (s == "MOORINGHOOKS") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_MOORINGHOOKS; - if (s == "VACUUMDEVICE") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_VACUUMDEVICE; - if (s == "BOLLARD") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_BOLLARD; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMooringDeviceTypeEnum::IfcMooringDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMooringDeviceTypeEnum::Value) IFC4X3_RC4_IfcMooringDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMooringDeviceTypeEnum::operator Ifc4x3_rc4::IfcMooringDeviceTypeEnum::Value() const { @@ -7529,18 +5997,11 @@ Ifc4x3_rc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionTypeEnum(const std::st } const char* Ifc4x3_rc4::IfcMotorConnectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BELTDRIVE", "COUPLING", "DIRECTDRIVE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcMotorConnectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcMotorConnectionTypeEnum::Value Ifc4x3_rc4::IfcMotorConnectionTypeEnum::FromString(const std::string& s) { - if (s == "BELTDRIVE") return ::Ifc4x3_rc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_BELTDRIVE; - if (s == "COUPLING") return ::Ifc4x3_rc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_COUPLING; - if (s == "DIRECTDRIVE") return ::Ifc4x3_rc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_DIRECTDRIVE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcMotorConnectionTypeEnum::IfcMotorConnectionType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcMotorConnectionTypeEnum::Value) IFC4X3_RC4_IfcMotorConnectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcMotorConnectionTypeEnum::operator Ifc4x3_rc4::IfcMotorConnectionTypeEnum::Value() const { @@ -7569,17 +6030,11 @@ Ifc4x3_rc4::IfcNavigationElementTypeEnum::IfcNavigationElementTypeEnum(const std } const char* Ifc4x3_rc4::IfcNavigationElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEACON", "BUOY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcNavigationElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcNavigationElementTypeEnum::Value Ifc4x3_rc4::IfcNavigationElementTypeEnum::FromString(const std::string& s) { - if (s == "BEACON") return ::Ifc4x3_rc4::IfcNavigationElementTypeEnum::IfcNavigationElementType_BEACON; - if (s == "BUOY") return ::Ifc4x3_rc4::IfcNavigationElementTypeEnum::IfcNavigationElementType_BUOY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcNavigationElementTypeEnum::IfcNavigationElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcNavigationElementTypeEnum::IfcNavigationElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcNavigationElementTypeEnum::Value) IFC4X3_RC4_IfcNavigationElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcNavigationElementTypeEnum::operator Ifc4x3_rc4::IfcNavigationElementTypeEnum::Value() const { @@ -7608,21 +6063,11 @@ Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcObjectTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PRODUCT", "PROCESS", "CONTROL", "RESOURCE", "ACTOR", "GROUP", "PROJECT", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcObjectTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcObjectTypeEnum::Value Ifc4x3_rc4::IfcObjectTypeEnum::FromString(const std::string& s) { - if (s == "PRODUCT") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_PRODUCT; - if (s == "PROCESS") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_PROCESS; - if (s == "CONTROL") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_CONTROL; - if (s == "RESOURCE") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_RESOURCE; - if (s == "ACTOR") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_ACTOR; - if (s == "GROUP") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_GROUP; - if (s == "PROJECT") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_PROJECT; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcObjectTypeEnum::IfcObjectType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcObjectTypeEnum::Value) IFC4X3_RC4_IfcObjectTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcObjectTypeEnum::operator Ifc4x3_rc4::IfcObjectTypeEnum::Value() const { @@ -7651,26 +6096,11 @@ Ifc4x3_rc4::IfcObjectiveEnum::IfcObjectiveEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcObjectiveEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CODECOMPLIANCE", "CODEWAIVER", "DESIGNINTENT", "EXTERNAL", "HEALTHANDSAFETY", "MERGECONFLICT", "MODELVIEW", "PARAMETER", "REQUIREMENT", "SPECIFICATION", "TRIGGERCONDITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcObjectiveEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcObjectiveEnum::Value Ifc4x3_rc4::IfcObjectiveEnum::FromString(const std::string& s) { - if (s == "CODECOMPLIANCE") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_CODECOMPLIANCE; - if (s == "CODEWAIVER") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_CODEWAIVER; - if (s == "DESIGNINTENT") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_DESIGNINTENT; - if (s == "EXTERNAL") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_EXTERNAL; - if (s == "HEALTHANDSAFETY") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_HEALTHANDSAFETY; - if (s == "MERGECONFLICT") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_MERGECONFLICT; - if (s == "MODELVIEW") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_MODELVIEW; - if (s == "PARAMETER") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_PARAMETER; - if (s == "REQUIREMENT") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_REQUIREMENT; - if (s == "SPECIFICATION") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_SPECIFICATION; - if (s == "TRIGGERCONDITION") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_TRIGGERCONDITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcObjectiveEnum::IfcObjective_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcObjectiveEnum::Value) IFC4X3_RC4_IfcObjectiveEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcObjectiveEnum::operator Ifc4x3_rc4::IfcObjectiveEnum::Value() const { @@ -7699,22 +6129,11 @@ Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcOccupantTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ASSIGNEE", "ASSIGNOR", "LESSEE", "LESSOR", "LETTINGAGENT", "OWNER", "TENANT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcOccupantTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcOccupantTypeEnum::Value Ifc4x3_rc4::IfcOccupantTypeEnum::FromString(const std::string& s) { - if (s == "ASSIGNEE") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNEE; - if (s == "ASSIGNOR") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_ASSIGNOR; - if (s == "LESSEE") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_LESSEE; - if (s == "LESSOR") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_LESSOR; - if (s == "LETTINGAGENT") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_LETTINGAGENT; - if (s == "OWNER") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_OWNER; - if (s == "TENANT") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_TENANT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcOccupantTypeEnum::IfcOccupantType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcOccupantTypeEnum::Value) IFC4X3_RC4_IfcOccupantTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcOccupantTypeEnum::operator Ifc4x3_rc4::IfcOccupantTypeEnum::Value() const { @@ -7743,17 +6162,11 @@ Ifc4x3_rc4::IfcOpeningElementTypeEnum::IfcOpeningElementTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcOpeningElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "OPENING", "RECESS", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcOpeningElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcOpeningElementTypeEnum::Value Ifc4x3_rc4::IfcOpeningElementTypeEnum::FromString(const std::string& s) { - if (s == "OPENING") return ::Ifc4x3_rc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_OPENING; - if (s == "RECESS") return ::Ifc4x3_rc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_RECESS; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcOpeningElementTypeEnum::IfcOpeningElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcOpeningElementTypeEnum::Value) IFC4X3_RC4_IfcOpeningElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcOpeningElementTypeEnum::operator Ifc4x3_rc4::IfcOpeningElementTypeEnum::Value() const { @@ -7782,20 +6195,11 @@ Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcOutletTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AUDIOVISUALOUTLET", "COMMUNICATIONSOUTLET", "POWEROUTLET", "DATAOUTLET", "TELEPHONEOUTLET", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcOutletTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcOutletTypeEnum::Value Ifc4x3_rc4::IfcOutletTypeEnum::FromString(const std::string& s) { - if (s == "AUDIOVISUALOUTLET") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_AUDIOVISUALOUTLET; - if (s == "COMMUNICATIONSOUTLET") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_COMMUNICATIONSOUTLET; - if (s == "POWEROUTLET") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_POWEROUTLET; - if (s == "DATAOUTLET") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_DATAOUTLET; - if (s == "TELEPHONEOUTLET") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_TELEPHONEOUTLET; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcOutletTypeEnum::IfcOutletType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcOutletTypeEnum::Value) IFC4X3_RC4_IfcOutletTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcOutletTypeEnum::operator Ifc4x3_rc4::IfcOutletTypeEnum::Value() const { @@ -7824,17 +6228,11 @@ Ifc4x3_rc4::IfcPavementTypeEnum::IfcPavementTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcPavementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLEXIBLE", "RIGID", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPavementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPavementTypeEnum::Value Ifc4x3_rc4::IfcPavementTypeEnum::FromString(const std::string& s) { - if (s == "FLEXIBLE") return ::Ifc4x3_rc4::IfcPavementTypeEnum::IfcPavementType_FLEXIBLE; - if (s == "RIGID") return ::Ifc4x3_rc4::IfcPavementTypeEnum::IfcPavementType_RIGID; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPavementTypeEnum::IfcPavementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPavementTypeEnum::IfcPavementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPavementTypeEnum::Value) IFC4X3_RC4_IfcPavementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPavementTypeEnum::operator Ifc4x3_rc4::IfcPavementTypeEnum::Value() const { @@ -7863,15 +6261,11 @@ Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryTypeEnum(const s } const char* Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::Value Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::IfcPerformanceHistoryType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::Value) IFC4X3_RC4_IfcPerformanceHistoryTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::operator Ifc4x3_rc4::IfcPerformanceHistoryTypeEnum::Value() const { @@ -7900,18 +6294,11 @@ Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperationEnum } const char* Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "GRILL", "LOUVER", "SCREEN", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::Value Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::FromString(const std::string& s) { - if (s == "GRILL") return ::Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_GRILL; - if (s == "LOUVER") return ::Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_LOUVER; - if (s == "SCREEN") return ::Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_SCREEN; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::IfcPermeableCoveringOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::Value) IFC4X3_RC4_IfcPermeableCoveringOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::operator Ifc4x3_rc4::IfcPermeableCoveringOperationEnum::Value() const { @@ -7940,18 +6327,11 @@ Ifc4x3_rc4::IfcPermitTypeEnum::IfcPermitTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcPermitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACCESS", "BUILDING", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPermitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPermitTypeEnum::Value Ifc4x3_rc4::IfcPermitTypeEnum::FromString(const std::string& s) { - if (s == "ACCESS") return ::Ifc4x3_rc4::IfcPermitTypeEnum::IfcPermitType_ACCESS; - if (s == "BUILDING") return ::Ifc4x3_rc4::IfcPermitTypeEnum::IfcPermitType_BUILDING; - if (s == "WORK") return ::Ifc4x3_rc4::IfcPermitTypeEnum::IfcPermitType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPermitTypeEnum::IfcPermitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPermitTypeEnum::IfcPermitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPermitTypeEnum::Value) IFC4X3_RC4_IfcPermitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPermitTypeEnum::operator Ifc4x3_rc4::IfcPermitTypeEnum::Value() const { @@ -7980,16 +6360,11 @@ Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtualEnum(const std::string } const char* Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PHYSICAL", "VIRTUAL", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::Value Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::FromString(const std::string& s) { - if (s == "PHYSICAL") return ::Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_PHYSICAL; - if (s == "VIRTUAL") return ::Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_VIRTUAL; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::IfcPhysicalOrVirtual_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::Value) IFC4X3_RC4_IfcPhysicalOrVirtualEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::operator Ifc4x3_rc4::IfcPhysicalOrVirtualEnum::Value() const { @@ -8018,19 +6393,11 @@ Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstructionEnum(const std::string& } const char* Ifc4x3_rc4::IfcPileConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CAST_IN_PLACE", "COMPOSITE", "PRECAST_CONCRETE", "PREFAB_STEEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPileConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPileConstructionEnum::Value Ifc4x3_rc4::IfcPileConstructionEnum::FromString(const std::string& s) { - if (s == "CAST_IN_PLACE") return ::Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstruction_CAST_IN_PLACE; - if (s == "COMPOSITE") return ::Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstruction_COMPOSITE; - if (s == "PRECAST_CONCRETE") return ::Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstruction_PRECAST_CONCRETE; - if (s == "PREFAB_STEEL") return ::Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstruction_PREFAB_STEEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstruction_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPileConstructionEnum::IfcPileConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPileConstructionEnum::Value) IFC4X3_RC4_IfcPileConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPileConstructionEnum::operator Ifc4x3_rc4::IfcPileConstructionEnum::Value() const { @@ -8059,21 +6426,11 @@ Ifc4x3_rc4::IfcPileTypeEnum::IfcPileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcPileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BORED", "DRIVEN", "JETGROUTING", "COHESION", "FRICTION", "SUPPORT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPileTypeEnum::Value Ifc4x3_rc4::IfcPileTypeEnum::FromString(const std::string& s) { - if (s == "BORED") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_BORED; - if (s == "DRIVEN") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_DRIVEN; - if (s == "JETGROUTING") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_JETGROUTING; - if (s == "COHESION") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_COHESION; - if (s == "FRICTION") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_FRICTION; - if (s == "SUPPORT") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_SUPPORT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPileTypeEnum::IfcPileType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPileTypeEnum::Value) IFC4X3_RC4_IfcPileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPileTypeEnum::operator Ifc4x3_rc4::IfcPileTypeEnum::Value() const { @@ -8102,22 +6459,11 @@ Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcPipeFittingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BEND", "CONNECTOR", "ENTRY", "EXIT", "JUNCTION", "OBSTRUCTION", "TRANSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPipeFittingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPipeFittingTypeEnum::Value Ifc4x3_rc4::IfcPipeFittingTypeEnum::FromString(const std::string& s) { - if (s == "BEND") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_BEND; - if (s == "CONNECTOR") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_CONNECTOR; - if (s == "ENTRY") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_ENTRY; - if (s == "EXIT") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_EXIT; - if (s == "JUNCTION") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_JUNCTION; - if (s == "OBSTRUCTION") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_OBSTRUCTION; - if (s == "TRANSITION") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_TRANSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPipeFittingTypeEnum::IfcPipeFittingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPipeFittingTypeEnum::Value) IFC4X3_RC4_IfcPipeFittingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPipeFittingTypeEnum::operator Ifc4x3_rc4::IfcPipeFittingTypeEnum::Value() const { @@ -8146,20 +6492,11 @@ Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcPipeSegmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CULVERT", "FLEXIBLESEGMENT", "RIGIDSEGMENT", "GUTTER", "SPOOL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPipeSegmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPipeSegmentTypeEnum::Value Ifc4x3_rc4::IfcPipeSegmentTypeEnum::FromString(const std::string& s) { - if (s == "CULVERT") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_CULVERT; - if (s == "FLEXIBLESEGMENT") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_FLEXIBLESEGMENT; - if (s == "RIGIDSEGMENT") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_RIGIDSEGMENT; - if (s == "GUTTER") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_GUTTER; - if (s == "SPOOL") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_SPOOL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPipeSegmentTypeEnum::IfcPipeSegmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPipeSegmentTypeEnum::Value) IFC4X3_RC4_IfcPipeSegmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPipeSegmentTypeEnum::operator Ifc4x3_rc4::IfcPipeSegmentTypeEnum::Value() const { @@ -8188,24 +6525,11 @@ Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcPlateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURTAIN_PANEL", "SHEET", "FLANGE_PLATE", "WEB_PLATE", "STIFFENER_PLATE", "GUSSET_PLATE", "COVER_PLATE", "SPLICE_PLATE", "BASE_PLATE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPlateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPlateTypeEnum::Value Ifc4x3_rc4::IfcPlateTypeEnum::FromString(const std::string& s) { - if (s == "CURTAIN_PANEL") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_CURTAIN_PANEL; - if (s == "SHEET") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_SHEET; - if (s == "FLANGE_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_FLANGE_PLATE; - if (s == "WEB_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_WEB_PLATE; - if (s == "STIFFENER_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_STIFFENER_PLATE; - if (s == "GUSSET_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_GUSSET_PLATE; - if (s == "COVER_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_COVER_PLATE; - if (s == "SPLICE_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_SPLICE_PLATE; - if (s == "BASE_PLATE") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_BASE_PLATE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPlateTypeEnum::IfcPlateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPlateTypeEnum::Value) IFC4X3_RC4_IfcPlateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPlateTypeEnum::operator Ifc4x3_rc4::IfcPlateTypeEnum::Value() const { @@ -8234,16 +6558,11 @@ Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepr } const char* Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE3D", "PCURVE_S1", "PCURVE_S2" }; - return names[v]; + return IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::Value Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::FromString(const std::string& s) { - if (s == "CURVE3D") return ::Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_CURVE3D; - if (s == "PCURVE_S1") return ::Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S1; - if (s == "PCURVE_S2") return ::Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::IfcPreferredSurfaceCurveRepresentation_PCURVE_S2; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::Value) IFC4X3_RC4_IfcPreferredSurfaceCurveRepresentation_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::operator Ifc4x3_rc4::IfcPreferredSurfaceCurveRepresentation::Value() const { @@ -8272,22 +6591,11 @@ Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcProcedureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ADVICE_CAUTION", "ADVICE_NOTE", "ADVICE_WARNING", "CALIBRATION", "DIAGNOSTIC", "SHUTDOWN", "STARTUP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcProcedureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProcedureTypeEnum::Value Ifc4x3_rc4::IfcProcedureTypeEnum::FromString(const std::string& s) { - if (s == "ADVICE_CAUTION") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_CAUTION; - if (s == "ADVICE_NOTE") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_NOTE; - if (s == "ADVICE_WARNING") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_ADVICE_WARNING; - if (s == "CALIBRATION") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_CALIBRATION; - if (s == "DIAGNOSTIC") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_DIAGNOSTIC; - if (s == "SHUTDOWN") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_SHUTDOWN; - if (s == "STARTUP") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_STARTUP; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcProcedureTypeEnum::IfcProcedureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProcedureTypeEnum::Value) IFC4X3_RC4_IfcProcedureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProcedureTypeEnum::operator Ifc4x3_rc4::IfcProcedureTypeEnum::Value() const { @@ -8316,15 +6624,11 @@ Ifc4x3_rc4::IfcProfileTypeEnum::IfcProfileTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcProfileTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURVE", "AREA" }; - return names[v]; + return IFC4X3_RC4_IfcProfileTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProfileTypeEnum::Value Ifc4x3_rc4::IfcProfileTypeEnum::FromString(const std::string& s) { - if (s == "CURVE") return ::Ifc4x3_rc4::IfcProfileTypeEnum::IfcProfileType_CURVE; - if (s == "AREA") return ::Ifc4x3_rc4::IfcProfileTypeEnum::IfcProfileType_AREA; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProfileTypeEnum::Value) IFC4X3_RC4_IfcProfileTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProfileTypeEnum::operator Ifc4x3_rc4::IfcProfileTypeEnum::Value() const { @@ -8353,20 +6657,11 @@ Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcProjectOrderTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CHANGEORDER", "MAINTENANCEWORKORDER", "MOVEORDER", "PURCHASEORDER", "WORKORDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcProjectOrderTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProjectOrderTypeEnum::Value Ifc4x3_rc4::IfcProjectOrderTypeEnum::FromString(const std::string& s) { - if (s == "CHANGEORDER") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_CHANGEORDER; - if (s == "MAINTENANCEWORKORDER") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_MAINTENANCEWORKORDER; - if (s == "MOVEORDER") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_MOVEORDER; - if (s == "PURCHASEORDER") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_PURCHASEORDER; - if (s == "WORKORDER") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_WORKORDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcProjectOrderTypeEnum::IfcProjectOrderType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProjectOrderTypeEnum::Value) IFC4X3_RC4_IfcProjectOrderTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProjectOrderTypeEnum::operator Ifc4x3_rc4::IfcProjectOrderTypeEnum::Value() const { @@ -8395,15 +6690,11 @@ Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLengthEnum(const std } const char* Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PROJECTED_LENGTH", "TRUE_LENGTH" }; - return names[v]; + return IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::Value Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::FromString(const std::string& s) { - if (s == "PROJECTED_LENGTH") return ::Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_PROJECTED_LENGTH; - if (s == "TRUE_LENGTH") return ::Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::IfcProjectedOrTrueLength_TRUE_LENGTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::Value) IFC4X3_RC4_IfcProjectedOrTrueLengthEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::operator Ifc4x3_rc4::IfcProjectedOrTrueLengthEnum::Value() const { @@ -8432,17 +6723,11 @@ Ifc4x3_rc4::IfcProjectionElementTypeEnum::IfcProjectionElementTypeEnum(const std } const char* Ifc4x3_rc4::IfcProjectionElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLISTER", "DEVIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcProjectionElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProjectionElementTypeEnum::Value Ifc4x3_rc4::IfcProjectionElementTypeEnum::FromString(const std::string& s) { - if (s == "BLISTER") return ::Ifc4x3_rc4::IfcProjectionElementTypeEnum::IfcProjectionElementType_BLISTER; - if (s == "DEVIATOR") return ::Ifc4x3_rc4::IfcProjectionElementTypeEnum::IfcProjectionElementType_DEVIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcProjectionElementTypeEnum::IfcProjectionElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcProjectionElementTypeEnum::IfcProjectionElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProjectionElementTypeEnum::Value) IFC4X3_RC4_IfcProjectionElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProjectionElementTypeEnum::operator Ifc4x3_rc4::IfcProjectionElementTypeEnum::Value() const { @@ -8471,21 +6756,11 @@ Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateTypeEnum(const } const char* Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PSET_TYPEDRIVENONLY", "PSET_TYPEDRIVENOVERRIDE", "PSET_OCCURRENCEDRIVEN", "PSET_PERFORMANCEDRIVEN", "QTO_TYPEDRIVENONLY", "QTO_TYPEDRIVENOVERRIDE", "QTO_OCCURRENCEDRIVEN", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::Value Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::FromString(const std::string& s) { - if (s == "PSET_TYPEDRIVENONLY") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENONLY; - if (s == "PSET_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_TYPEDRIVENOVERRIDE; - if (s == "PSET_OCCURRENCEDRIVEN") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_OCCURRENCEDRIVEN; - if (s == "PSET_PERFORMANCEDRIVEN") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_PSET_PERFORMANCEDRIVEN; - if (s == "QTO_TYPEDRIVENONLY") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENONLY; - if (s == "QTO_TYPEDRIVENOVERRIDE") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_TYPEDRIVENOVERRIDE; - if (s == "QTO_OCCURRENCEDRIVEN") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_QTO_OCCURRENCEDRIVEN; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::IfcPropertySetTemplateType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::Value) IFC4X3_RC4_IfcPropertySetTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::operator Ifc4x3_rc4::IfcPropertySetTemplateTypeEnum::Value() const { @@ -8514,19 +6789,11 @@ Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTripping } const char* Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELECTRONIC", "ELECTROMAGNETIC", "RESIDUALCURRENT", "THERMAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::Value Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::FromString(const std::string& s) { - if (s == "ELECTRONIC") return ::Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTRONIC; - if (s == "ELECTROMAGNETIC") return ::Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_ELECTROMAGNETIC; - if (s == "RESIDUALCURRENT") return ::Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_RESIDUALCURRENT; - if (s == "THERMAL") return ::Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_THERMAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::IfcProtectiveDeviceTrippingUnitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::Value) IFC4X3_RC4_IfcProtectiveDeviceTrippingUnitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::operator Ifc4x3_rc4::IfcProtectiveDeviceTrippingUnitTypeEnum::Value() const { @@ -8555,25 +6822,11 @@ Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceTypeEnum(const std:: } const char* Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCUITBREAKER", "EARTHLEAKAGECIRCUITBREAKER", "EARTHINGSWITCH", "FUSEDISCONNECTOR", "RESIDUALCURRENTCIRCUITBREAKER", "RESIDUALCURRENTSWITCH", "VARISTOR", "ANTI_ARCING_DEVICE", "SPARKGAP", "VOLTAGELIMITER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::Value Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CIRCUITBREAKER") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_CIRCUITBREAKER; - if (s == "EARTHLEAKAGECIRCUITBREAKER") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHLEAKAGECIRCUITBREAKER; - if (s == "EARTHINGSWITCH") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_EARTHINGSWITCH; - if (s == "FUSEDISCONNECTOR") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_FUSEDISCONNECTOR; - if (s == "RESIDUALCURRENTCIRCUITBREAKER") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTCIRCUITBREAKER; - if (s == "RESIDUALCURRENTSWITCH") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_RESIDUALCURRENTSWITCH; - if (s == "VARISTOR") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VARISTOR; - if (s == "ANTI_ARCING_DEVICE") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_ANTI_ARCING_DEVICE; - if (s == "SPARKGAP") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_SPARKGAP; - if (s == "VOLTAGELIMITER") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_VOLTAGELIMITER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::IfcProtectiveDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::Value) IFC4X3_RC4_IfcProtectiveDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::operator Ifc4x3_rc4::IfcProtectiveDeviceTypeEnum::Value() const { @@ -8602,22 +6855,11 @@ Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcPumpTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CIRCULATOR", "ENDSUCTION", "SPLITCASE", "SUBMERSIBLEPUMP", "SUMPPUMP", "VERTICALINLINE", "VERTICALTURBINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcPumpTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcPumpTypeEnum::Value Ifc4x3_rc4::IfcPumpTypeEnum::FromString(const std::string& s) { - if (s == "CIRCULATOR") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_CIRCULATOR; - if (s == "ENDSUCTION") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_ENDSUCTION; - if (s == "SPLITCASE") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_SPLITCASE; - if (s == "SUBMERSIBLEPUMP") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_SUBMERSIBLEPUMP; - if (s == "SUMPPUMP") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_SUMPPUMP; - if (s == "VERTICALINLINE") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_VERTICALINLINE; - if (s == "VERTICALTURBINE") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_VERTICALTURBINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcPumpTypeEnum::IfcPumpType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcPumpTypeEnum::Value) IFC4X3_RC4_IfcPumpTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcPumpTypeEnum::operator Ifc4x3_rc4::IfcPumpTypeEnum::Value() const { @@ -8646,21 +6888,11 @@ Ifc4x3_rc4::IfcRailTypeEnum::IfcRailTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRailTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RACKRAIL", "BLADE", "GUARDRAIL", "STOCKRAIL", "CHECKRAIL", "RAIL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRailTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRailTypeEnum::Value Ifc4x3_rc4::IfcRailTypeEnum::FromString(const std::string& s) { - if (s == "RACKRAIL") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_RACKRAIL; - if (s == "BLADE") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_BLADE; - if (s == "GUARDRAIL") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_GUARDRAIL; - if (s == "STOCKRAIL") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_STOCKRAIL; - if (s == "CHECKRAIL") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_CHECKRAIL; - if (s == "RAIL") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_RAIL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRailTypeEnum::IfcRailType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRailTypeEnum::Value) IFC4X3_RC4_IfcRailTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRailTypeEnum::operator Ifc4x3_rc4::IfcRailTypeEnum::Value() const { @@ -8689,19 +6921,11 @@ Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRailingTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "HANDRAIL", "GUARDRAIL", "BALUSTRADE", "FENCE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRailingTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRailingTypeEnum::Value Ifc4x3_rc4::IfcRailingTypeEnum::FromString(const std::string& s) { - if (s == "HANDRAIL") return ::Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingType_HANDRAIL; - if (s == "GUARDRAIL") return ::Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingType_GUARDRAIL; - if (s == "BALUSTRADE") return ::Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingType_BALUSTRADE; - if (s == "FENCE") return ::Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingType_FENCE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRailingTypeEnum::IfcRailingType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRailingTypeEnum::Value) IFC4X3_RC4_IfcRailingTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRailingTypeEnum::operator Ifc4x3_rc4::IfcRailingTypeEnum::Value() const { @@ -8730,23 +6954,11 @@ Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcRailwayPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKSTRUCTURE", "TRACKSTRUCTUREPART", "LINESIDESTRUCTUREPART", "DILATATIONSUPERSTRUCTURE", "PLAINTRACKSUPESTRUCTURE", "LINESIDESTRUCTURE", "SUPERSTRUCTURE", "TURNOUTSUPERSTRUCTURE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRailwayPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRailwayPartTypeEnum::Value Ifc4x3_rc4::IfcRailwayPartTypeEnum::FromString(const std::string& s) { - if (s == "TRACKSTRUCTURE") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTURE; - if (s == "TRACKSTRUCTUREPART") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_TRACKSTRUCTUREPART; - if (s == "LINESIDESTRUCTUREPART") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTUREPART; - if (s == "DILATATIONSUPERSTRUCTURE") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_DILATATIONSUPERSTRUCTURE; - if (s == "PLAINTRACKSUPESTRUCTURE") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_PLAINTRACKSUPESTRUCTURE; - if (s == "LINESIDESTRUCTURE") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_LINESIDESTRUCTURE; - if (s == "SUPERSTRUCTURE") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_SUPERSTRUCTURE; - if (s == "TURNOUTSUPERSTRUCTURE") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_TURNOUTSUPERSTRUCTURE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRailwayPartTypeEnum::IfcRailwayPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRailwayPartTypeEnum::Value) IFC4X3_RC4_IfcRailwayPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRailwayPartTypeEnum::operator Ifc4x3_rc4::IfcRailwayPartTypeEnum::Value() const { @@ -8775,15 +6987,11 @@ Ifc4x3_rc4::IfcRailwayTypeEnum::IfcRailwayTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRailwayTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRailwayTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRailwayTypeEnum::Value Ifc4x3_rc4::IfcRailwayTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRailwayTypeEnum::IfcRailwayType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRailwayTypeEnum::IfcRailwayType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRailwayTypeEnum::Value) IFC4X3_RC4_IfcRailwayTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRailwayTypeEnum::operator Ifc4x3_rc4::IfcRailwayTypeEnum::Value() const { @@ -8812,17 +7020,11 @@ Ifc4x3_rc4::IfcRampFlightTypeEnum::IfcRampFlightTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRampFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "SPIRAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRampFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRampFlightTypeEnum::Value Ifc4x3_rc4::IfcRampFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc4::IfcRampFlightTypeEnum::IfcRampFlightType_STRAIGHT; - if (s == "SPIRAL") return ::Ifc4x3_rc4::IfcRampFlightTypeEnum::IfcRampFlightType_SPIRAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRampFlightTypeEnum::IfcRampFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRampFlightTypeEnum::IfcRampFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRampFlightTypeEnum::Value) IFC4X3_RC4_IfcRampFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRampFlightTypeEnum::operator Ifc4x3_rc4::IfcRampFlightTypeEnum::Value() const { @@ -8851,21 +7053,11 @@ Ifc4x3_rc4::IfcRampTypeEnum::IfcRampTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRampTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_RAMP", "TWO_STRAIGHT_RUN_RAMP", "QUARTER_TURN_RAMP", "TWO_QUARTER_TURN_RAMP", "HALF_TURN_RAMP", "SPIRAL_RAMP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRampTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRampTypeEnum::Value Ifc4x3_rc4::IfcRampTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_STRAIGHT_RUN_RAMP; - if (s == "TWO_STRAIGHT_RUN_RAMP") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_TWO_STRAIGHT_RUN_RAMP; - if (s == "QUARTER_TURN_RAMP") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_QUARTER_TURN_RAMP; - if (s == "TWO_QUARTER_TURN_RAMP") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_TWO_QUARTER_TURN_RAMP; - if (s == "HALF_TURN_RAMP") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_HALF_TURN_RAMP; - if (s == "SPIRAL_RAMP") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_SPIRAL_RAMP; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRampTypeEnum::IfcRampType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRampTypeEnum::Value) IFC4X3_RC4_IfcRampTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRampTypeEnum::operator Ifc4x3_rc4::IfcRampTypeEnum::Value() const { @@ -8894,21 +7086,11 @@ Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRecurrenceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DAILY", "WEEKLY", "MONTHLY_BY_DAY_OF_MONTH", "MONTHLY_BY_POSITION", "BY_DAY_COUNT", "BY_WEEKDAY_COUNT", "YEARLY_BY_DAY_OF_MONTH", "YEARLY_BY_POSITION" }; - return names[v]; + return IFC4X3_RC4_IfcRecurrenceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRecurrenceTypeEnum::Value Ifc4x3_rc4::IfcRecurrenceTypeEnum::FromString(const std::string& s) { - if (s == "DAILY") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_DAILY; - if (s == "WEEKLY") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_WEEKLY; - if (s == "MONTHLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_DAY_OF_MONTH; - if (s == "MONTHLY_BY_POSITION") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_MONTHLY_BY_POSITION; - if (s == "BY_DAY_COUNT") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_DAY_COUNT; - if (s == "BY_WEEKDAY_COUNT") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_BY_WEEKDAY_COUNT; - if (s == "YEARLY_BY_DAY_OF_MONTH") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_DAY_OF_MONTH; - if (s == "YEARLY_BY_POSITION") return ::Ifc4x3_rc4::IfcRecurrenceTypeEnum::IfcRecurrenceType_YEARLY_BY_POSITION; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRecurrenceTypeEnum::Value) IFC4X3_RC4_IfcRecurrenceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRecurrenceTypeEnum::operator Ifc4x3_rc4::IfcRecurrenceTypeEnum::Value() const { @@ -8937,23 +7119,11 @@ Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcReferentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "KILOPOINT", "MILEPOINT", "STATION", "REFERENCEMARKER", "LANDMARK", "BOUNDARY", "INTERSECTION", "POSITION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcReferentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReferentTypeEnum::Value Ifc4x3_rc4::IfcReferentTypeEnum::FromString(const std::string& s) { - if (s == "KILOPOINT") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_KILOPOINT; - if (s == "MILEPOINT") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_MILEPOINT; - if (s == "STATION") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_STATION; - if (s == "REFERENCEMARKER") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_REFERENCEMARKER; - if (s == "LANDMARK") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_LANDMARK; - if (s == "BOUNDARY") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_BOUNDARY; - if (s == "INTERSECTION") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_INTERSECTION; - if (s == "POSITION") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_POSITION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcReferentTypeEnum::IfcReferentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReferentTypeEnum::Value) IFC4X3_RC4_IfcReferentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReferentTypeEnum::operator Ifc4x3_rc4::IfcReferentTypeEnum::Value() const { @@ -8982,23 +7152,11 @@ Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethodEnum(const std::string } const char* Ifc4x3_rc4::IfcReflectanceMethodEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BLINN", "FLAT", "GLASS", "MATT", "METAL", "MIRROR", "PHONG", "PLASTIC", "STRAUSS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcReflectanceMethodEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReflectanceMethodEnum::Value Ifc4x3_rc4::IfcReflectanceMethodEnum::FromString(const std::string& s) { - if (s == "BLINN") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_BLINN; - if (s == "FLAT") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_FLAT; - if (s == "GLASS") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_GLASS; - if (s == "MATT") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_MATT; - if (s == "METAL") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_METAL; - if (s == "MIRROR") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_MIRROR; - if (s == "PHONG") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_PHONG; - if (s == "PLASTIC") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_PLASTIC; - if (s == "STRAUSS") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_STRAUSS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcReflectanceMethodEnum::IfcReflectanceMethod_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReflectanceMethodEnum::Value) IFC4X3_RC4_IfcReflectanceMethodEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReflectanceMethodEnum::operator Ifc4x3_rc4::IfcReflectanceMethodEnum::Value() const { @@ -9027,21 +7185,11 @@ Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SURCHARGEPRELOADED", "VERTICALLYDRAINED", "DYNAMICALLYCOMPACTED", "REPLACED", "ROLLERCOMPACTED", "GROUTED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::Value Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::FromString(const std::string& s) { - if (s == "SURCHARGEPRELOADED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_SURCHARGEPRELOADED; - if (s == "VERTICALLYDRAINED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_VERTICALLYDRAINED; - if (s == "DYNAMICALLYCOMPACTED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_DYNAMICALLYCOMPACTED; - if (s == "REPLACED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_REPLACED; - if (s == "ROLLERCOMPACTED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_ROLLERCOMPACTED; - if (s == "GROUTED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_GROUTED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::IfcReinforcedSoilType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::Value) IFC4X3_RC4_IfcReinforcedSoilTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::operator Ifc4x3_rc4::IfcReinforcedSoilTypeEnum::Value() const { @@ -9070,23 +7218,11 @@ Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRoleEnum(const std::stri } const char* Ifc4x3_rc4::IfcReinforcingBarRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MAIN", "SHEAR", "LIGATURE", "STUD", "PUNCHING", "EDGE", "RING", "ANCHORING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcReinforcingBarRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReinforcingBarRoleEnum::Value Ifc4x3_rc4::IfcReinforcingBarRoleEnum::FromString(const std::string& s) { - if (s == "MAIN") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_MAIN; - if (s == "SHEAR") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_SHEAR; - if (s == "LIGATURE") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_LIGATURE; - if (s == "STUD") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_STUD; - if (s == "PUNCHING") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_PUNCHING; - if (s == "EDGE") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_EDGE; - if (s == "RING") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_RING; - if (s == "ANCHORING") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_ANCHORING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcReinforcingBarRoleEnum::IfcReinforcingBarRole_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReinforcingBarRoleEnum::Value) IFC4X3_RC4_IfcReinforcingBarRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReinforcingBarRoleEnum::operator Ifc4x3_rc4::IfcReinforcingBarRoleEnum::Value() const { @@ -9115,15 +7251,11 @@ Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurfaceEnum(const std } const char* Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PLAIN", "TEXTURED" }; - return names[v]; + return IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::Value Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::FromString(const std::string& s) { - if (s == "PLAIN") return ::Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_PLAIN; - if (s == "TEXTURED") return ::Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::IfcReinforcingBarSurface_TEXTURED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::Value) IFC4X3_RC4_IfcReinforcingBarSurfaceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::operator Ifc4x3_rc4::IfcReinforcingBarSurfaceEnum::Value() const { @@ -9152,24 +7284,11 @@ Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcReinforcingBarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ANCHORING", "EDGE", "LIGATURE", "MAIN", "PUNCHING", "RING", "SHEAR", "STUD", "SPACEBAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcReinforcingBarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReinforcingBarTypeEnum::Value Ifc4x3_rc4::IfcReinforcingBarTypeEnum::FromString(const std::string& s) { - if (s == "ANCHORING") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_ANCHORING; - if (s == "EDGE") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_EDGE; - if (s == "LIGATURE") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_LIGATURE; - if (s == "MAIN") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_MAIN; - if (s == "PUNCHING") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_PUNCHING; - if (s == "RING") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_RING; - if (s == "SHEAR") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SHEAR; - if (s == "STUD") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_STUD; - if (s == "SPACEBAR") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_SPACEBAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcReinforcingBarTypeEnum::IfcReinforcingBarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReinforcingBarTypeEnum::Value) IFC4X3_RC4_IfcReinforcingBarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReinforcingBarTypeEnum::operator Ifc4x3_rc4::IfcReinforcingBarTypeEnum::Value() const { @@ -9198,15 +7317,11 @@ Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshTypeEnum(const std::st } const char* Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::Value Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::IfcReinforcingMeshType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::Value) IFC4X3_RC4_IfcReinforcingMeshTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::operator Ifc4x3_rc4::IfcReinforcingMeshTypeEnum::Value() const { @@ -9235,39 +7350,11 @@ Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRoadPartTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 26 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ROADSIDEPART", "BUS_STOP", "HARDSHOULDER", "INTERSECTION", "PASSINGBAY", "ROADWAYPLATEAU", "ROADSIDE", "REFUGEISLAND", "TOLLPLAZA", "CENTRALRESERVE", "SIDEWALK", "PARKINGBAY", "RAILWAYCROSSING", "PEDESTRIAN_CROSSING", "SOFTSHOULDER", "BICYCLECROSSING", "CENTRALISLAND", "SHOULDER", "TRAFFICLANE", "ROADSEGMENT", "ROUNDABOUT", "LAYBY", "CARRIAGEWAY", "TRAFFICISLAND", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRoadPartTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRoadPartTypeEnum::Value Ifc4x3_rc4::IfcRoadPartTypeEnum::FromString(const std::string& s) { - if (s == "ROADSIDEPART") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDEPART; - if (s == "BUS_STOP") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_BUS_STOP; - if (s == "HARDSHOULDER") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_HARDSHOULDER; - if (s == "INTERSECTION") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_INTERSECTION; - if (s == "PASSINGBAY") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_PASSINGBAY; - if (s == "ROADWAYPLATEAU") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_ROADWAYPLATEAU; - if (s == "ROADSIDE") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSIDE; - if (s == "REFUGEISLAND") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_REFUGEISLAND; - if (s == "TOLLPLAZA") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_TOLLPLAZA; - if (s == "CENTRALRESERVE") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALRESERVE; - if (s == "SIDEWALK") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_SIDEWALK; - if (s == "PARKINGBAY") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_PARKINGBAY; - if (s == "RAILWAYCROSSING") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_RAILWAYCROSSING; - if (s == "PEDESTRIAN_CROSSING") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_PEDESTRIAN_CROSSING; - if (s == "SOFTSHOULDER") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_SOFTSHOULDER; - if (s == "BICYCLECROSSING") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_BICYCLECROSSING; - if (s == "CENTRALISLAND") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_CENTRALISLAND; - if (s == "SHOULDER") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_SHOULDER; - if (s == "TRAFFICLANE") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICLANE; - if (s == "ROADSEGMENT") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_ROADSEGMENT; - if (s == "ROUNDABOUT") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_ROUNDABOUT; - if (s == "LAYBY") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_LAYBY; - if (s == "CARRIAGEWAY") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_CARRIAGEWAY; - if (s == "TRAFFICISLAND") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_TRAFFICISLAND; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRoadPartTypeEnum::IfcRoadPartType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRoadPartTypeEnum::Value) IFC4X3_RC4_IfcRoadPartTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRoadPartTypeEnum::operator Ifc4x3_rc4::IfcRoadPartTypeEnum::Value() const { @@ -9296,15 +7383,11 @@ Ifc4x3_rc4::IfcRoadTypeEnum::IfcRoadTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRoadTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRoadTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRoadTypeEnum::Value Ifc4x3_rc4::IfcRoadTypeEnum::FromString(const std::string& s) { - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRoadTypeEnum::IfcRoadType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRoadTypeEnum::IfcRoadType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRoadTypeEnum::Value) IFC4X3_RC4_IfcRoadTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRoadTypeEnum::operator Ifc4x3_rc4::IfcRoadTypeEnum::Value() const { @@ -9333,36 +7416,11 @@ Ifc4x3_rc4::IfcRoleEnum::IfcRoleEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRoleEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SUPPLIER", "MANUFACTURER", "CONTRACTOR", "SUBCONTRACTOR", "ARCHITECT", "STRUCTURALENGINEER", "COSTENGINEER", "CLIENT", "BUILDINGOWNER", "BUILDINGOPERATOR", "MECHANICALENGINEER", "ELECTRICALENGINEER", "PROJECTMANAGER", "FACILITIESMANAGER", "CIVILENGINEER", "COMMISSIONINGENGINEER", "ENGINEER", "OWNER", "CONSULTANT", "CONSTRUCTIONMANAGER", "FIELDCONSTRUCTIONMANAGER", "RESELLER", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRoleEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRoleEnum::Value Ifc4x3_rc4::IfcRoleEnum::FromString(const std::string& s) { - if (s == "SUPPLIER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_SUPPLIER; - if (s == "MANUFACTURER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_MANUFACTURER; - if (s == "CONTRACTOR") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_CONTRACTOR; - if (s == "SUBCONTRACTOR") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_SUBCONTRACTOR; - if (s == "ARCHITECT") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_ARCHITECT; - if (s == "STRUCTURALENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_STRUCTURALENGINEER; - if (s == "COSTENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_COSTENGINEER; - if (s == "CLIENT") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_CLIENT; - if (s == "BUILDINGOWNER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_BUILDINGOWNER; - if (s == "BUILDINGOPERATOR") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_BUILDINGOPERATOR; - if (s == "MECHANICALENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_MECHANICALENGINEER; - if (s == "ELECTRICALENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_ELECTRICALENGINEER; - if (s == "PROJECTMANAGER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_PROJECTMANAGER; - if (s == "FACILITIESMANAGER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_FACILITIESMANAGER; - if (s == "CIVILENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_CIVILENGINEER; - if (s == "COMMISSIONINGENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_COMMISSIONINGENGINEER; - if (s == "ENGINEER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_ENGINEER; - if (s == "OWNER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_OWNER; - if (s == "CONSULTANT") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_CONSULTANT; - if (s == "CONSTRUCTIONMANAGER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_CONSTRUCTIONMANAGER; - if (s == "FIELDCONSTRUCTIONMANAGER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_FIELDCONSTRUCTIONMANAGER; - if (s == "RESELLER") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_RESELLER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRoleEnum::IfcRole_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRoleEnum::Value) IFC4X3_RC4_IfcRoleEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRoleEnum::operator Ifc4x3_rc4::IfcRoleEnum::Value() const { @@ -9391,28 +7449,11 @@ Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcRoofTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 15 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLAT_ROOF", "SHED_ROOF", "GABLE_ROOF", "HIP_ROOF", "HIPPED_GABLE_ROOF", "GAMBREL_ROOF", "MANSARD_ROOF", "BARREL_ROOF", "RAINBOW_ROOF", "BUTTERFLY_ROOF", "PAVILION_ROOF", "DOME_ROOF", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcRoofTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcRoofTypeEnum::Value Ifc4x3_rc4::IfcRoofTypeEnum::FromString(const std::string& s) { - if (s == "FLAT_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_FLAT_ROOF; - if (s == "SHED_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_SHED_ROOF; - if (s == "GABLE_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_GABLE_ROOF; - if (s == "HIP_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_HIP_ROOF; - if (s == "HIPPED_GABLE_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_HIPPED_GABLE_ROOF; - if (s == "GAMBREL_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_GAMBREL_ROOF; - if (s == "MANSARD_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_MANSARD_ROOF; - if (s == "BARREL_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_BARREL_ROOF; - if (s == "RAINBOW_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_RAINBOW_ROOF; - if (s == "BUTTERFLY_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_BUTTERFLY_ROOF; - if (s == "PAVILION_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_PAVILION_ROOF; - if (s == "DOME_ROOF") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_DOME_ROOF; - if (s == "FREEFORM") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcRoofTypeEnum::IfcRoofType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcRoofTypeEnum::Value) IFC4X3_RC4_IfcRoofTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcRoofTypeEnum::operator Ifc4x3_rc4::IfcRoofTypeEnum::Value() const { @@ -9441,29 +7482,11 @@ Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix(const std::string& v) { } const char* Ifc4x3_rc4::IfcSIPrefix::ToString(Value v) { - if ( v < 0 || v >= 16 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "EXA", "PETA", "TERA", "GIGA", "MEGA", "KILO", "HECTO", "DECA", "DECI", "CENTI", "MILLI", "MICRO", "NANO", "PICO", "FEMTO", "ATTO" }; - return names[v]; + return IFC4X3_RC4_IfcSIPrefix_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSIPrefix::Value Ifc4x3_rc4::IfcSIPrefix::FromString(const std::string& s) { - if (s == "EXA") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_EXA; - if (s == "PETA") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_PETA; - if (s == "TERA") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_TERA; - if (s == "GIGA") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_GIGA; - if (s == "MEGA") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_MEGA; - if (s == "KILO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_KILO; - if (s == "HECTO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_HECTO; - if (s == "DECA") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_DECA; - if (s == "DECI") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_DECI; - if (s == "CENTI") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_CENTI; - if (s == "MILLI") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_MILLI; - if (s == "MICRO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_MICRO; - if (s == "NANO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_NANO; - if (s == "PICO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_PICO; - if (s == "FEMTO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_FEMTO; - if (s == "ATTO") return ::Ifc4x3_rc4::IfcSIPrefix::IfcSIPrefix_ATTO; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSIPrefix::Value) IFC4X3_RC4_IfcSIPrefix_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSIPrefix::operator Ifc4x3_rc4::IfcSIPrefix::Value() const { @@ -9492,43 +7515,11 @@ Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName(const std::string& v) { } const char* Ifc4x3_rc4::IfcSIUnitName::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AMPERE", "BECQUEREL", "CANDELA", "COULOMB", "CUBIC_METRE", "DEGREE_CELSIUS", "FARAD", "GRAM", "GRAY", "HENRY", "HERTZ", "JOULE", "KELVIN", "LUMEN", "LUX", "METRE", "MOLE", "NEWTON", "OHM", "PASCAL", "RADIAN", "SECOND", "SIEMENS", "SIEVERT", "SQUARE_METRE", "STERADIAN", "TESLA", "VOLT", "WATT", "WEBER" }; - return names[v]; + return IFC4X3_RC4_IfcSIUnitName_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSIUnitName::Value Ifc4x3_rc4::IfcSIUnitName::FromString(const std::string& s) { - if (s == "AMPERE") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_AMPERE; - if (s == "BECQUEREL") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_BECQUEREL; - if (s == "CANDELA") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_CANDELA; - if (s == "COULOMB") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_COULOMB; - if (s == "CUBIC_METRE") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_CUBIC_METRE; - if (s == "DEGREE_CELSIUS") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_DEGREE_CELSIUS; - if (s == "FARAD") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_FARAD; - if (s == "GRAM") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_GRAM; - if (s == "GRAY") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_GRAY; - if (s == "HENRY") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_HENRY; - if (s == "HERTZ") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_HERTZ; - if (s == "JOULE") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_JOULE; - if (s == "KELVIN") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_KELVIN; - if (s == "LUMEN") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_LUMEN; - if (s == "LUX") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_LUX; - if (s == "METRE") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_METRE; - if (s == "MOLE") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_MOLE; - if (s == "NEWTON") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_NEWTON; - if (s == "OHM") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_OHM; - if (s == "PASCAL") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_PASCAL; - if (s == "RADIAN") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_RADIAN; - if (s == "SECOND") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_SECOND; - if (s == "SIEMENS") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_SIEMENS; - if (s == "SIEVERT") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_SIEVERT; - if (s == "SQUARE_METRE") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_SQUARE_METRE; - if (s == "STERADIAN") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_STERADIAN; - if (s == "TESLA") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_TESLA; - if (s == "VOLT") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_VOLT; - if (s == "WATT") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_WATT; - if (s == "WEBER") return ::Ifc4x3_rc4::IfcSIUnitName::IfcSIUnitName_WEBER; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSIUnitName::Value) IFC4X3_RC4_IfcSIUnitName_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSIUnitName::operator Ifc4x3_rc4::IfcSIUnitName::Value() const { @@ -9557,25 +7548,11 @@ Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalTypeEnum(const std:: } const char* Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BATH", "BIDET", "CISTERN", "SHOWER", "SINK", "SANITARYFOUNTAIN", "TOILETPAN", "URINAL", "WASHHANDBASIN", "WCSEAT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::Value Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BATH") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BATH; - if (s == "BIDET") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_BIDET; - if (s == "CISTERN") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_CISTERN; - if (s == "SHOWER") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SHOWER; - if (s == "SINK") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SINK; - if (s == "SANITARYFOUNTAIN") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_SANITARYFOUNTAIN; - if (s == "TOILETPAN") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_TOILETPAN; - if (s == "URINAL") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_URINAL; - if (s == "WASHHANDBASIN") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WASHHANDBASIN; - if (s == "WCSEAT") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_WCSEAT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::IfcSanitaryTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::Value) IFC4X3_RC4_IfcSanitaryTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::operator Ifc4x3_rc4::IfcSanitaryTerminalTypeEnum::Value() const { @@ -9604,15 +7581,11 @@ Ifc4x3_rc4::IfcSectionTypeEnum::IfcSectionTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSectionTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 2 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "UNIFORM", "TAPERED" }; - return names[v]; + return IFC4X3_RC4_IfcSectionTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSectionTypeEnum::Value Ifc4x3_rc4::IfcSectionTypeEnum::FromString(const std::string& s) { - if (s == "UNIFORM") return ::Ifc4x3_rc4::IfcSectionTypeEnum::IfcSectionType_UNIFORM; - if (s == "TAPERED") return ::Ifc4x3_rc4::IfcSectionTypeEnum::IfcSectionType_TAPERED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSectionTypeEnum::Value) IFC4X3_RC4_IfcSectionTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSectionTypeEnum::operator Ifc4x3_rc4::IfcSectionTypeEnum::Value() const { @@ -9641,47 +7614,11 @@ Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSensorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 34 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COSENSOR", "CO2SENSOR", "CONDUCTANCESENSOR", "CONTACTSENSOR", "FIRESENSOR", "FLOWSENSOR", "FROSTSENSOR", "GASSENSOR", "HEATSENSOR", "HUMIDITYSENSOR", "IDENTIFIERSENSOR", "IONCONCENTRATIONSENSOR", "LEVELSENSOR", "LIGHTSENSOR", "MOISTURESENSOR", "MOVEMENTSENSOR", "PHSENSOR", "PRESSURESENSOR", "RADIATIONSENSOR", "RADIOACTIVITYSENSOR", "SMOKESENSOR", "SOUNDSENSOR", "TEMPERATURESENSOR", "WINDSENSOR", "EARTHQUAKESENSOR", "FOREIGNOBJECTDETECTIONSENSOR", "OBSTACLESENSOR", "RAINSENSOR", "SNOWDEPTHSENSOR", "TRAINSENSOR", "TURNOUTCLOSURESENSOR", "WHEELSENSOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSensorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSensorTypeEnum::Value Ifc4x3_rc4::IfcSensorTypeEnum::FromString(const std::string& s) { - if (s == "COSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_COSENSOR; - if (s == "CO2SENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_CO2SENSOR; - if (s == "CONDUCTANCESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_CONDUCTANCESENSOR; - if (s == "CONTACTSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_CONTACTSENSOR; - if (s == "FIRESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_FIRESENSOR; - if (s == "FLOWSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_FLOWSENSOR; - if (s == "FROSTSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_FROSTSENSOR; - if (s == "GASSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_GASSENSOR; - if (s == "HEATSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_HEATSENSOR; - if (s == "HUMIDITYSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_HUMIDITYSENSOR; - if (s == "IDENTIFIERSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_IDENTIFIERSENSOR; - if (s == "IONCONCENTRATIONSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_IONCONCENTRATIONSENSOR; - if (s == "LEVELSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_LEVELSENSOR; - if (s == "LIGHTSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_LIGHTSENSOR; - if (s == "MOISTURESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_MOISTURESENSOR; - if (s == "MOVEMENTSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_MOVEMENTSENSOR; - if (s == "PHSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_PHSENSOR; - if (s == "PRESSURESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_PRESSURESENSOR; - if (s == "RADIATIONSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_RADIATIONSENSOR; - if (s == "RADIOACTIVITYSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_RADIOACTIVITYSENSOR; - if (s == "SMOKESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_SMOKESENSOR; - if (s == "SOUNDSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_SOUNDSENSOR; - if (s == "TEMPERATURESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_TEMPERATURESENSOR; - if (s == "WINDSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_WINDSENSOR; - if (s == "EARTHQUAKESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_EARTHQUAKESENSOR; - if (s == "FOREIGNOBJECTDETECTIONSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_FOREIGNOBJECTDETECTIONSENSOR; - if (s == "OBSTACLESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_OBSTACLESENSOR; - if (s == "RAINSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_RAINSENSOR; - if (s == "SNOWDEPTHSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_SNOWDEPTHSENSOR; - if (s == "TRAINSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_TRAINSENSOR; - if (s == "TURNOUTCLOSURESENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_TURNOUTCLOSURESENSOR; - if (s == "WHEELSENSOR") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_WHEELSENSOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSensorTypeEnum::IfcSensorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSensorTypeEnum::Value) IFC4X3_RC4_IfcSensorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSensorTypeEnum::operator Ifc4x3_rc4::IfcSensorTypeEnum::Value() const { @@ -9710,19 +7647,11 @@ Ifc4x3_rc4::IfcSequenceEnum::IfcSequenceEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSequenceEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "START_START", "START_FINISH", "FINISH_START", "FINISH_FINISH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSequenceEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSequenceEnum::Value Ifc4x3_rc4::IfcSequenceEnum::FromString(const std::string& s) { - if (s == "START_START") return ::Ifc4x3_rc4::IfcSequenceEnum::IfcSequence_START_START; - if (s == "START_FINISH") return ::Ifc4x3_rc4::IfcSequenceEnum::IfcSequence_START_FINISH; - if (s == "FINISH_START") return ::Ifc4x3_rc4::IfcSequenceEnum::IfcSequence_FINISH_START; - if (s == "FINISH_FINISH") return ::Ifc4x3_rc4::IfcSequenceEnum::IfcSequence_FINISH_FINISH; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSequenceEnum::IfcSequence_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSequenceEnum::IfcSequence_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSequenceEnum::Value) IFC4X3_RC4_IfcSequenceEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSequenceEnum::operator Ifc4x3_rc4::IfcSequenceEnum::Value() const { @@ -9751,18 +7680,11 @@ Ifc4x3_rc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcShadingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "JALOUSIE", "SHUTTER", "AWNING", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcShadingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcShadingDeviceTypeEnum::Value Ifc4x3_rc4::IfcShadingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "JALOUSIE") return ::Ifc4x3_rc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_JALOUSIE; - if (s == "SHUTTER") return ::Ifc4x3_rc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_SHUTTER; - if (s == "AWNING") return ::Ifc4x3_rc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_AWNING; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcShadingDeviceTypeEnum::IfcShadingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcShadingDeviceTypeEnum::Value) IFC4X3_RC4_IfcShadingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcShadingDeviceTypeEnum::operator Ifc4x3_rc4::IfcShadingDeviceTypeEnum::Value() const { @@ -9791,18 +7713,11 @@ Ifc4x3_rc4::IfcSignTypeEnum::IfcSignTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSignTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARKER", "PICTORAL", "MIRROR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSignTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSignTypeEnum::Value Ifc4x3_rc4::IfcSignTypeEnum::FromString(const std::string& s) { - if (s == "MARKER") return ::Ifc4x3_rc4::IfcSignTypeEnum::IfcSignType_MARKER; - if (s == "PICTORAL") return ::Ifc4x3_rc4::IfcSignTypeEnum::IfcSignType_PICTORAL; - if (s == "MIRROR") return ::Ifc4x3_rc4::IfcSignTypeEnum::IfcSignType_MIRROR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSignTypeEnum::IfcSignType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSignTypeEnum::IfcSignType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSignTypeEnum::Value) IFC4X3_RC4_IfcSignTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSignTypeEnum::operator Ifc4x3_rc4::IfcSignTypeEnum::Value() const { @@ -9831,18 +7746,11 @@ Ifc4x3_rc4::IfcSignalTypeEnum::IfcSignalTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSignalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VISUAL", "AUDIO", "MIXED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSignalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSignalTypeEnum::Value Ifc4x3_rc4::IfcSignalTypeEnum::FromString(const std::string& s) { - if (s == "VISUAL") return ::Ifc4x3_rc4::IfcSignalTypeEnum::IfcSignalType_VISUAL; - if (s == "AUDIO") return ::Ifc4x3_rc4::IfcSignalTypeEnum::IfcSignalType_AUDIO; - if (s == "MIXED") return ::Ifc4x3_rc4::IfcSignalTypeEnum::IfcSignalType_MIXED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSignalTypeEnum::IfcSignalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSignalTypeEnum::IfcSignalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSignalTypeEnum::Value) IFC4X3_RC4_IfcSignalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSignalTypeEnum::operator Ifc4x3_rc4::IfcSignalTypeEnum::Value() const { @@ -9871,25 +7779,11 @@ Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateTypeEnum } const char* Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "P_SINGLEVALUE", "P_ENUMERATEDVALUE", "P_BOUNDEDVALUE", "P_LISTVALUE", "P_TABLEVALUE", "P_REFERENCEVALUE", "Q_LENGTH", "Q_AREA", "Q_VOLUME", "Q_COUNT", "Q_WEIGHT", "Q_TIME" }; - return names[v]; + return IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::Value Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::FromString(const std::string& s) { - if (s == "P_SINGLEVALUE") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_SINGLEVALUE; - if (s == "P_ENUMERATEDVALUE") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_ENUMERATEDVALUE; - if (s == "P_BOUNDEDVALUE") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_BOUNDEDVALUE; - if (s == "P_LISTVALUE") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_LISTVALUE; - if (s == "P_TABLEVALUE") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_TABLEVALUE; - if (s == "P_REFERENCEVALUE") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_P_REFERENCEVALUE; - if (s == "Q_LENGTH") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_LENGTH; - if (s == "Q_AREA") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_AREA; - if (s == "Q_VOLUME") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_VOLUME; - if (s == "Q_COUNT") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_COUNT; - if (s == "Q_WEIGHT") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_WEIGHT; - if (s == "Q_TIME") return ::Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::IfcSimplePropertyTemplateType_Q_TIME; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::Value) IFC4X3_RC4_IfcSimplePropertyTemplateTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::operator Ifc4x3_rc4::IfcSimplePropertyTemplateTypeEnum::Value() const { @@ -9918,24 +7812,11 @@ Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSlabTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOOR", "ROOF", "LANDING", "BASESLAB", "APPROACH_SLAB", "PAVING", "WEARING", "SIDEWALK", "TRACKSLAB", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSlabTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSlabTypeEnum::Value Ifc4x3_rc4::IfcSlabTypeEnum::FromString(const std::string& s) { - if (s == "FLOOR") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_FLOOR; - if (s == "ROOF") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_ROOF; - if (s == "LANDING") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_LANDING; - if (s == "BASESLAB") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_BASESLAB; - if (s == "APPROACH_SLAB") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_APPROACH_SLAB; - if (s == "PAVING") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_PAVING; - if (s == "WEARING") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_WEARING; - if (s == "SIDEWALK") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_SIDEWALK; - if (s == "TRACKSLAB") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_TRACKSLAB; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSlabTypeEnum::IfcSlabType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSlabTypeEnum::Value) IFC4X3_RC4_IfcSlabTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSlabTypeEnum::operator Ifc4x3_rc4::IfcSlabTypeEnum::Value() const { @@ -9964,17 +7845,11 @@ Ifc4x3_rc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcSolarDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SOLARCOLLECTOR", "SOLARPANEL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSolarDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSolarDeviceTypeEnum::Value Ifc4x3_rc4::IfcSolarDeviceTypeEnum::FromString(const std::string& s) { - if (s == "SOLARCOLLECTOR") return ::Ifc4x3_rc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARCOLLECTOR; - if (s == "SOLARPANEL") return ::Ifc4x3_rc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_SOLARPANEL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSolarDeviceTypeEnum::IfcSolarDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSolarDeviceTypeEnum::Value) IFC4X3_RC4_IfcSolarDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSolarDeviceTypeEnum::operator Ifc4x3_rc4::IfcSolarDeviceTypeEnum::Value() const { @@ -10003,17 +7878,11 @@ Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONVECTOR", "RADIATOR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::Value Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::FromString(const std::string& s) { - if (s == "CONVECTOR") return ::Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_CONVECTOR; - if (s == "RADIATOR") return ::Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_RADIATOR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::IfcSpaceHeaterType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::Value) IFC4X3_RC4_IfcSpaceHeaterTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::operator Ifc4x3_rc4::IfcSpaceHeaterTypeEnum::Value() const { @@ -10042,21 +7911,11 @@ Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcSpaceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SPACE", "PARKING", "GFA", "INTERNAL", "EXTERNAL", "BERTH", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSpaceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSpaceTypeEnum::Value Ifc4x3_rc4::IfcSpaceTypeEnum::FromString(const std::string& s) { - if (s == "SPACE") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_SPACE; - if (s == "PARKING") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_PARKING; - if (s == "GFA") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_GFA; - if (s == "INTERNAL") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_INTERNAL; - if (s == "EXTERNAL") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_EXTERNAL; - if (s == "BERTH") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_BERTH; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSpaceTypeEnum::IfcSpaceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSpaceTypeEnum::Value) IFC4X3_RC4_IfcSpaceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSpaceTypeEnum::operator Ifc4x3_rc4::IfcSpaceTypeEnum::Value() const { @@ -10085,25 +7944,11 @@ Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcSpatialZoneTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONSTRUCTION", "FIRESAFETY", "LIGHTING", "OCCUPANCY", "SECURITY", "THERMAL", "TRANSPORT", "VENTILATION", "RESERVATION", "INTERFERENCE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSpatialZoneTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSpatialZoneTypeEnum::Value Ifc4x3_rc4::IfcSpatialZoneTypeEnum::FromString(const std::string& s) { - if (s == "CONSTRUCTION") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_CONSTRUCTION; - if (s == "FIRESAFETY") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_FIRESAFETY; - if (s == "LIGHTING") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_LIGHTING; - if (s == "OCCUPANCY") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_OCCUPANCY; - if (s == "SECURITY") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_SECURITY; - if (s == "THERMAL") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_THERMAL; - if (s == "TRANSPORT") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_TRANSPORT; - if (s == "VENTILATION") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_VENTILATION; - if (s == "RESERVATION") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_RESERVATION; - if (s == "INTERFERENCE") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_INTERFERENCE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSpatialZoneTypeEnum::IfcSpatialZoneType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSpatialZoneTypeEnum::Value) IFC4X3_RC4_IfcSpatialZoneTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSpatialZoneTypeEnum::operator Ifc4x3_rc4::IfcSpatialZoneTypeEnum::Value() const { @@ -10132,18 +7977,11 @@ Ifc4x3_rc4::IfcStackTerminalTypeEnum::IfcStackTerminalTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcStackTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BIRDCAGE", "COWL", "RAINWATERHOPPER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStackTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStackTerminalTypeEnum::Value Ifc4x3_rc4::IfcStackTerminalTypeEnum::FromString(const std::string& s) { - if (s == "BIRDCAGE") return ::Ifc4x3_rc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_BIRDCAGE; - if (s == "COWL") return ::Ifc4x3_rc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_COWL; - if (s == "RAINWATERHOPPER") return ::Ifc4x3_rc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_RAINWATERHOPPER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStackTerminalTypeEnum::IfcStackTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStackTerminalTypeEnum::Value) IFC4X3_RC4_IfcStackTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStackTerminalTypeEnum::operator Ifc4x3_rc4::IfcStackTerminalTypeEnum::Value() const { @@ -10172,20 +8010,11 @@ Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcStairFlightTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT", "WINDER", "SPIRAL", "CURVED", "FREEFORM", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStairFlightTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStairFlightTypeEnum::Value Ifc4x3_rc4::IfcStairFlightTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_STRAIGHT; - if (s == "WINDER") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_WINDER; - if (s == "SPIRAL") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_SPIRAL; - if (s == "CURVED") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_CURVED; - if (s == "FREEFORM") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_FREEFORM; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStairFlightTypeEnum::IfcStairFlightType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStairFlightTypeEnum::Value) IFC4X3_RC4_IfcStairFlightTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStairFlightTypeEnum::operator Ifc4x3_rc4::IfcStairFlightTypeEnum::Value() const { @@ -10214,30 +8043,11 @@ Ifc4x3_rc4::IfcStairTypeEnum::IfcStairTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcStairTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 17 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "STRAIGHT_RUN_STAIR", "TWO_STRAIGHT_RUN_STAIR", "QUARTER_WINDING_STAIR", "QUARTER_TURN_STAIR", "HALF_WINDING_STAIR", "HALF_TURN_STAIR", "TWO_QUARTER_WINDING_STAIR", "TWO_QUARTER_TURN_STAIR", "THREE_QUARTER_WINDING_STAIR", "THREE_QUARTER_TURN_STAIR", "SPIRAL_STAIR", "DOUBLE_RETURN_STAIR", "CURVED_RUN_STAIR", "TWO_CURVED_RUN_STAIR", "LADDER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStairTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStairTypeEnum::Value Ifc4x3_rc4::IfcStairTypeEnum::FromString(const std::string& s) { - if (s == "STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_STRAIGHT_RUN_STAIR; - if (s == "TWO_STRAIGHT_RUN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_TWO_STRAIGHT_RUN_STAIR; - if (s == "QUARTER_WINDING_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_QUARTER_WINDING_STAIR; - if (s == "QUARTER_TURN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_QUARTER_TURN_STAIR; - if (s == "HALF_WINDING_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_HALF_WINDING_STAIR; - if (s == "HALF_TURN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_HALF_TURN_STAIR; - if (s == "TWO_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_WINDING_STAIR; - if (s == "TWO_QUARTER_TURN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_TWO_QUARTER_TURN_STAIR; - if (s == "THREE_QUARTER_WINDING_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_WINDING_STAIR; - if (s == "THREE_QUARTER_TURN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_THREE_QUARTER_TURN_STAIR; - if (s == "SPIRAL_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_SPIRAL_STAIR; - if (s == "DOUBLE_RETURN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_DOUBLE_RETURN_STAIR; - if (s == "CURVED_RUN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_CURVED_RUN_STAIR; - if (s == "TWO_CURVED_RUN_STAIR") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_TWO_CURVED_RUN_STAIR; - if (s == "LADDER") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_LADDER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStairTypeEnum::IfcStairType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStairTypeEnum::Value) IFC4X3_RC4_IfcStairTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStairTypeEnum::operator Ifc4x3_rc4::IfcStairTypeEnum::Value() const { @@ -10266,18 +8076,11 @@ Ifc4x3_rc4::IfcStateEnum::IfcStateEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcStateEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "READWRITE", "READONLY", "LOCKED", "READWRITELOCKED", "READONLYLOCKED" }; - return names[v]; + return IFC4X3_RC4_IfcStateEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStateEnum::Value Ifc4x3_rc4::IfcStateEnum::FromString(const std::string& s) { - if (s == "READWRITE") return ::Ifc4x3_rc4::IfcStateEnum::IfcState_READWRITE; - if (s == "READONLY") return ::Ifc4x3_rc4::IfcStateEnum::IfcState_READONLY; - if (s == "LOCKED") return ::Ifc4x3_rc4::IfcStateEnum::IfcState_LOCKED; - if (s == "READWRITELOCKED") return ::Ifc4x3_rc4::IfcStateEnum::IfcState_READWRITELOCKED; - if (s == "READONLYLOCKED") return ::Ifc4x3_rc4::IfcStateEnum::IfcState_READONLYLOCKED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStateEnum::Value) IFC4X3_RC4_IfcStateEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStateEnum::operator Ifc4x3_rc4::IfcStateEnum::Value() const { @@ -10306,22 +8109,11 @@ Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityTypeEn } const char* Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "LINEAR", "POLYGONAL", "EQUIDISTANT", "SINUS", "PARABOLA", "DISCRETE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::Value Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_CONST; - if (s == "LINEAR") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_LINEAR; - if (s == "POLYGONAL") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_POLYGONAL; - if (s == "EQUIDISTANT") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_EQUIDISTANT; - if (s == "SINUS") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_SINUS; - if (s == "PARABOLA") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_PARABOLA; - if (s == "DISCRETE") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_DISCRETE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::IfcStructuralCurveActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::Value) IFC4X3_RC4_IfcStructuralCurveActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::operator Ifc4x3_rc4::IfcStructuralCurveActivityTypeEnum::Value() const { @@ -10350,20 +8142,11 @@ Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberTypeEnum(c } const char* Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "RIGID_JOINED_MEMBER", "PIN_JOINED_MEMBER", "CABLE", "TENSION_MEMBER", "COMPRESSION_MEMBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::Value Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::FromString(const std::string& s) { - if (s == "RIGID_JOINED_MEMBER") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_RIGID_JOINED_MEMBER; - if (s == "PIN_JOINED_MEMBER") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_PIN_JOINED_MEMBER; - if (s == "CABLE") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_CABLE; - if (s == "TENSION_MEMBER") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_TENSION_MEMBER; - if (s == "COMPRESSION_MEMBER") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_COMPRESSION_MEMBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::IfcStructuralCurveMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::Value) IFC4X3_RC4_IfcStructuralCurveMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::operator Ifc4x3_rc4::IfcStructuralCurveMemberTypeEnum::Value() const { @@ -10392,19 +8175,11 @@ Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityTy } const char* Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONST", "BILINEAR", "DISCRETE", "ISOCONTOUR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::Value Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::FromString(const std::string& s) { - if (s == "CONST") return ::Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_CONST; - if (s == "BILINEAR") return ::Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_BILINEAR; - if (s == "DISCRETE") return ::Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_DISCRETE; - if (s == "ISOCONTOUR") return ::Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_ISOCONTOUR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::IfcStructuralSurfaceActivityType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::Value) IFC4X3_RC4_IfcStructuralSurfaceActivityTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::operator Ifc4x3_rc4::IfcStructuralSurfaceActivityTypeEnum::Value() const { @@ -10433,18 +8208,11 @@ Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberTypeEn } const char* Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_ELEMENT", "MEMBRANE_ELEMENT", "SHELL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::Value Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_ELEMENT") return ::Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_BENDING_ELEMENT; - if (s == "MEMBRANE_ELEMENT") return ::Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_MEMBRANE_ELEMENT; - if (s == "SHELL") return ::Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_SHELL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::IfcStructuralSurfaceMemberType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::Value) IFC4X3_RC4_IfcStructuralSurfaceMemberTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::operator Ifc4x3_rc4::IfcStructuralSurfaceMemberTypeEnum::Value() const { @@ -10473,17 +8241,11 @@ Ifc4x3_rc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceTypeEnum(const } const char* Ifc4x3_rc4::IfcSubContractResourceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PURCHASE", "WORK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSubContractResourceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSubContractResourceTypeEnum::Value Ifc4x3_rc4::IfcSubContractResourceTypeEnum::FromString(const std::string& s) { - if (s == "PURCHASE") return ::Ifc4x3_rc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_PURCHASE; - if (s == "WORK") return ::Ifc4x3_rc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_WORK; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSubContractResourceTypeEnum::IfcSubContractResourceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSubContractResourceTypeEnum::Value) IFC4X3_RC4_IfcSubContractResourceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSubContractResourceTypeEnum::operator Ifc4x3_rc4::IfcSubContractResourceTypeEnum::Value() const { @@ -10512,26 +8274,11 @@ Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MARK", "TAG", "TREATMENT", "DEFECT", "HATCHMARKING", "LINEMARKING", "PAVEMENTSURFACEMARKING", "SYMBOLMARKING", "NONSKIDSURFACING", "RUMBLESTRIP", "TRANSVERSERUMBLESTRIP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::Value Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::FromString(const std::string& s) { - if (s == "MARK") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_MARK; - if (s == "TAG") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TAG; - if (s == "TREATMENT") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TREATMENT; - if (s == "DEFECT") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_DEFECT; - if (s == "HATCHMARKING") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_HATCHMARKING; - if (s == "LINEMARKING") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_LINEMARKING; - if (s == "PAVEMENTSURFACEMARKING") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_PAVEMENTSURFACEMARKING; - if (s == "SYMBOLMARKING") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_SYMBOLMARKING; - if (s == "NONSKIDSURFACING") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NONSKIDSURFACING; - if (s == "RUMBLESTRIP") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_RUMBLESTRIP; - if (s == "TRANSVERSERUMBLESTRIP") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_TRANSVERSERUMBLESTRIP; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::IfcSurfaceFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::Value) IFC4X3_RC4_IfcSurfaceFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::operator Ifc4x3_rc4::IfcSurfaceFeatureTypeEnum::Value() const { @@ -10560,16 +8307,11 @@ Ifc4x3_rc4::IfcSurfaceSide::IfcSurfaceSide(const std::string& v) { } const char* Ifc4x3_rc4::IfcSurfaceSide::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "POSITIVE", "NEGATIVE", "BOTH" }; - return names[v]; + return IFC4X3_RC4_IfcSurfaceSide_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSurfaceSide::Value Ifc4x3_rc4::IfcSurfaceSide::FromString(const std::string& s) { - if (s == "POSITIVE") return ::Ifc4x3_rc4::IfcSurfaceSide::IfcSurfaceSide_POSITIVE; - if (s == "NEGATIVE") return ::Ifc4x3_rc4::IfcSurfaceSide::IfcSurfaceSide_NEGATIVE; - if (s == "BOTH") return ::Ifc4x3_rc4::IfcSurfaceSide::IfcSurfaceSide_BOTH; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSurfaceSide::Value) IFC4X3_RC4_IfcSurfaceSide_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSurfaceSide::operator Ifc4x3_rc4::IfcSurfaceSide::Value() const { @@ -10598,26 +8340,11 @@ Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceTypeEnum(const std::st } const char* Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTACTOR", "DIMMERSWITCH", "EMERGENCYSTOP", "KEYPAD", "MOMENTARYSWITCH", "SELECTORSWITCH", "STARTER", "SWITCHDISCONNECTOR", "TOGGLESWITCH", "RELAY", "START_AND_STOP_EQUIPMENT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::Value Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::FromString(const std::string& s) { - if (s == "CONTACTOR") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_CONTACTOR; - if (s == "DIMMERSWITCH") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_DIMMERSWITCH; - if (s == "EMERGENCYSTOP") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_EMERGENCYSTOP; - if (s == "KEYPAD") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_KEYPAD; - if (s == "MOMENTARYSWITCH") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_MOMENTARYSWITCH; - if (s == "SELECTORSWITCH") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SELECTORSWITCH; - if (s == "STARTER") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_STARTER; - if (s == "SWITCHDISCONNECTOR") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_SWITCHDISCONNECTOR; - if (s == "TOGGLESWITCH") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_TOGGLESWITCH; - if (s == "RELAY") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_RELAY; - if (s == "START_AND_STOP_EQUIPMENT") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_START_AND_STOP_EQUIPMENT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::IfcSwitchingDeviceType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::Value) IFC4X3_RC4_IfcSwitchingDeviceTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::operator Ifc4x3_rc4::IfcSwitchingDeviceTypeEnum::Value() const { @@ -10646,18 +8373,11 @@ Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementTypeEnum } const char* Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "PANEL", "WORKSURFACE", "SUBRACK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::Value Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::FromString(const std::string& s) { - if (s == "PANEL") return ::Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_PANEL; - if (s == "WORKSURFACE") return ::Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_WORKSURFACE; - if (s == "SUBRACK") return ::Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_SUBRACK; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::IfcSystemFurnitureElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::Value) IFC4X3_RC4_IfcSystemFurnitureElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::operator Ifc4x3_rc4::IfcSystemFurnitureElementTypeEnum::Value() const { @@ -10686,23 +8406,11 @@ Ifc4x3_rc4::IfcTankTypeEnum::IfcTankTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcTankTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BASIN", "BREAKPRESSURE", "EXPANSION", "FEEDANDEXPANSION", "PRESSUREVESSEL", "STORAGE", "VESSEL", "OILRETENTIONTRAY", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTankTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTankTypeEnum::Value Ifc4x3_rc4::IfcTankTypeEnum::FromString(const std::string& s) { - if (s == "BASIN") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_BASIN; - if (s == "BREAKPRESSURE") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_BREAKPRESSURE; - if (s == "EXPANSION") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_EXPANSION; - if (s == "FEEDANDEXPANSION") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_FEEDANDEXPANSION; - if (s == "PRESSUREVESSEL") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_PRESSUREVESSEL; - if (s == "STORAGE") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_STORAGE; - if (s == "VESSEL") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_VESSEL; - if (s == "OILRETENTIONTRAY") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_OILRETENTIONTRAY; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTankTypeEnum::IfcTankType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTankTypeEnum::Value) IFC4X3_RC4_IfcTankTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTankTypeEnum::operator Ifc4x3_rc4::IfcTankTypeEnum::Value() const { @@ -10731,16 +8439,11 @@ Ifc4x3_rc4::IfcTaskDurationEnum::IfcTaskDurationEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcTaskDurationEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELAPSEDTIME", "WORKTIME", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTaskDurationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTaskDurationEnum::Value Ifc4x3_rc4::IfcTaskDurationEnum::FromString(const std::string& s) { - if (s == "ELAPSEDTIME") return ::Ifc4x3_rc4::IfcTaskDurationEnum::IfcTaskDuration_ELAPSEDTIME; - if (s == "WORKTIME") return ::Ifc4x3_rc4::IfcTaskDurationEnum::IfcTaskDuration_WORKTIME; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTaskDurationEnum::IfcTaskDuration_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTaskDurationEnum::Value) IFC4X3_RC4_IfcTaskDurationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTaskDurationEnum::operator Ifc4x3_rc4::IfcTaskDurationEnum::Value() const { @@ -10769,27 +8472,11 @@ Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcTaskTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ATTENDANCE", "CONSTRUCTION", "DEMOLITION", "DISMANTLE", "DISPOSAL", "INSTALLATION", "LOGISTIC", "MAINTENANCE", "MOVE", "OPERATION", "REMOVAL", "RENOVATION", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTaskTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTaskTypeEnum::Value Ifc4x3_rc4::IfcTaskTypeEnum::FromString(const std::string& s) { - if (s == "ATTENDANCE") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_ATTENDANCE; - if (s == "CONSTRUCTION") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_CONSTRUCTION; - if (s == "DEMOLITION") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_DEMOLITION; - if (s == "DISMANTLE") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_DISMANTLE; - if (s == "DISPOSAL") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_DISPOSAL; - if (s == "INSTALLATION") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_INSTALLATION; - if (s == "LOGISTIC") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_LOGISTIC; - if (s == "MAINTENANCE") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_MAINTENANCE; - if (s == "MOVE") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_MOVE; - if (s == "OPERATION") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_OPERATION; - if (s == "REMOVAL") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_REMOVAL; - if (s == "RENOVATION") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_RENOVATION; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTaskTypeEnum::IfcTaskType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTaskTypeEnum::Value) IFC4X3_RC4_IfcTaskTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTaskTypeEnum::operator Ifc4x3_rc4::IfcTaskTypeEnum::Value() const { @@ -10818,18 +8505,11 @@ Ifc4x3_rc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcTendonAnchorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COUPLER", "FIXED_END", "TENSIONING_END", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTendonAnchorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTendonAnchorTypeEnum::Value Ifc4x3_rc4::IfcTendonAnchorTypeEnum::FromString(const std::string& s) { - if (s == "COUPLER") return ::Ifc4x3_rc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_COUPLER; - if (s == "FIXED_END") return ::Ifc4x3_rc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_FIXED_END; - if (s == "TENSIONING_END") return ::Ifc4x3_rc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_TENSIONING_END; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTendonAnchorTypeEnum::IfcTendonAnchorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTendonAnchorTypeEnum::Value) IFC4X3_RC4_IfcTendonAnchorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTendonAnchorTypeEnum::operator Ifc4x3_rc4::IfcTendonAnchorTypeEnum::Value() const { @@ -10858,20 +8538,11 @@ Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcTendonConduitTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DUCT", "COUPLER", "GROUTING_DUCT", "TRUMPET", "DIABOLO", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTendonConduitTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTendonConduitTypeEnum::Value Ifc4x3_rc4::IfcTendonConduitTypeEnum::FromString(const std::string& s) { - if (s == "DUCT") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_DUCT; - if (s == "COUPLER") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_COUPLER; - if (s == "GROUTING_DUCT") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_GROUTING_DUCT; - if (s == "TRUMPET") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_TRUMPET; - if (s == "DIABOLO") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_DIABOLO; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTendonConduitTypeEnum::IfcTendonConduitType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTendonConduitTypeEnum::Value) IFC4X3_RC4_IfcTendonConduitTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTendonConduitTypeEnum::operator Ifc4x3_rc4::IfcTendonConduitTypeEnum::Value() const { @@ -10900,19 +8571,11 @@ Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcTendonTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BAR", "COATED", "STRAND", "WIRE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTendonTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTendonTypeEnum::Value Ifc4x3_rc4::IfcTendonTypeEnum::FromString(const std::string& s) { - if (s == "BAR") return ::Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonType_BAR; - if (s == "COATED") return ::Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonType_COATED; - if (s == "STRAND") return ::Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonType_STRAND; - if (s == "WIRE") return ::Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonType_WIRE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTendonTypeEnum::IfcTendonType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTendonTypeEnum::Value) IFC4X3_RC4_IfcTendonTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTendonTypeEnum::operator Ifc4x3_rc4::IfcTendonTypeEnum::Value() const { @@ -10941,17 +8604,11 @@ Ifc4x3_rc4::IfcTextPath::IfcTextPath(const std::string& v) { } const char* Ifc4x3_rc4::IfcTextPath::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "RIGHT", "UP", "DOWN" }; - return names[v]; + return IFC4X3_RC4_IfcTextPath_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTextPath::Value Ifc4x3_rc4::IfcTextPath::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc4::IfcTextPath::IfcTextPath_LEFT; - if (s == "RIGHT") return ::Ifc4x3_rc4::IfcTextPath::IfcTextPath_RIGHT; - if (s == "UP") return ::Ifc4x3_rc4::IfcTextPath::IfcTextPath_UP; - if (s == "DOWN") return ::Ifc4x3_rc4::IfcTextPath::IfcTextPath_DOWN; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTextPath::Value) IFC4X3_RC4_IfcTextPath_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTextPath::operator Ifc4x3_rc4::IfcTextPath::Value() const { @@ -10980,20 +8637,11 @@ Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CONTINUOUS", "DISCRETE", "DISCRETEBINARY", "PIECEWISEBINARY", "PIECEWISECONSTANT", "PIECEWISECONTINUOUS", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::Value Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::FromString(const std::string& s) { - if (s == "CONTINUOUS") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_CONTINUOUS; - if (s == "DISCRETE") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETE; - if (s == "DISCRETEBINARY") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_DISCRETEBINARY; - if (s == "PIECEWISEBINARY") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISEBINARY; - if (s == "PIECEWISECONSTANT") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONSTANT; - if (s == "PIECEWISECONTINUOUS") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_PIECEWISECONTINUOUS; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::IfcTimeSeriesDataType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::Value) IFC4X3_RC4_IfcTimeSeriesDataTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::operator Ifc4x3_rc4::IfcTimeSeriesDataTypeEnum::Value() const { @@ -11022,23 +8670,11 @@ Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcTrackElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 10 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "TRACKENDOFALIGNMENT", "BLOCKINGDEVICE", "VEHICLESTOP", "SLEEPER", "HALF_SET_OF_BLADES", "SPEEDREGULATOR", "DERAILER", "FROG", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTrackElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTrackElementTypeEnum::Value Ifc4x3_rc4::IfcTrackElementTypeEnum::FromString(const std::string& s) { - if (s == "TRACKENDOFALIGNMENT") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_TRACKENDOFALIGNMENT; - if (s == "BLOCKINGDEVICE") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_BLOCKINGDEVICE; - if (s == "VEHICLESTOP") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_VEHICLESTOP; - if (s == "SLEEPER") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_SLEEPER; - if (s == "HALF_SET_OF_BLADES") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_HALF_SET_OF_BLADES; - if (s == "SPEEDREGULATOR") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_SPEEDREGULATOR; - if (s == "DERAILER") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_DERAILER; - if (s == "FROG") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_FROG; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTrackElementTypeEnum::IfcTrackElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTrackElementTypeEnum::Value) IFC4X3_RC4_IfcTrackElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTrackElementTypeEnum::operator Ifc4x3_rc4::IfcTrackElementTypeEnum::Value() const { @@ -11067,22 +8703,11 @@ Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerTypeEnum(const std::string& v) } const char* Ifc4x3_rc4::IfcTransformerTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CURRENT", "FREQUENCY", "INVERTER", "RECTIFIER", "VOLTAGE", "CHOPPER", "COMBINED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTransformerTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTransformerTypeEnum::Value Ifc4x3_rc4::IfcTransformerTypeEnum::FromString(const std::string& s) { - if (s == "CURRENT") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_CURRENT; - if (s == "FREQUENCY") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_FREQUENCY; - if (s == "INVERTER") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_INVERTER; - if (s == "RECTIFIER") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_RECTIFIER; - if (s == "VOLTAGE") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_VOLTAGE; - if (s == "CHOPPER") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_CHOPPER; - if (s == "COMBINED") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_COMBINED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTransformerTypeEnum::IfcTransformerType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTransformerTypeEnum::Value) IFC4X3_RC4_IfcTransformerTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTransformerTypeEnum::operator Ifc4x3_rc4::IfcTransformerTypeEnum::Value() const { @@ -11111,17 +8736,11 @@ Ifc4x3_rc4::IfcTransitionCode::IfcTransitionCode(const std::string& v) { } const char* Ifc4x3_rc4::IfcTransitionCode::ToString(Value v) { - if ( v < 0 || v >= 4 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "DISCONTINUOUS", "CONTINUOUS", "CONTSAMEGRADIENT", "CONTSAMEGRADIENTSAMECURVATURE" }; - return names[v]; + return IFC4X3_RC4_IfcTransitionCode_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTransitionCode::Value Ifc4x3_rc4::IfcTransitionCode::FromString(const std::string& s) { - if (s == "DISCONTINUOUS") return ::Ifc4x3_rc4::IfcTransitionCode::IfcTransitionCode_DISCONTINUOUS; - if (s == "CONTINUOUS") return ::Ifc4x3_rc4::IfcTransitionCode::IfcTransitionCode_CONTINUOUS; - if (s == "CONTSAMEGRADIENT") return ::Ifc4x3_rc4::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENT; - if (s == "CONTSAMEGRADIENTSAMECURVATURE") return ::Ifc4x3_rc4::IfcTransitionCode::IfcTransitionCode_CONTSAMEGRADIENTSAMECURVATURE; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTransitionCode::Value) IFC4X3_RC4_IfcTransitionCode_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTransitionCode::operator Ifc4x3_rc4::IfcTransitionCode::Value() const { @@ -11150,21 +8769,11 @@ Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedTypeEnum(c } const char* Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ELEVATOR", "ESCALATOR", "MOVINGWALKWAY", "CRANEWAY", "LIFTINGGEAR", "HAULINGGEAR", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::Value Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::FromString(const std::string& s) { - if (s == "ELEVATOR") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ELEVATOR; - if (s == "ESCALATOR") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_ESCALATOR; - if (s == "MOVINGWALKWAY") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_MOVINGWALKWAY; - if (s == "CRANEWAY") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_CRANEWAY; - if (s == "LIFTINGGEAR") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_LIFTINGGEAR; - if (s == "HAULINGGEAR") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_HAULINGGEAR; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::IfcTransportElementFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::Value) IFC4X3_RC4_IfcTransportElementFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::operator Ifc4x3_rc4::IfcTransportElementFixedTypeEnum::Value() const { @@ -11193,22 +8802,11 @@ Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType } const char* Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "VEHICLE", "VEHICLETRACKED", "ROLLINGSTOCK", "VEHICLEWHEELED", "VEHICLEAIR", "CARGO", "VEHICLEMARINE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::Value Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::FromString(const std::string& s) { - if (s == "VEHICLE") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLE; - if (s == "VEHICLETRACKED") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLETRACKED; - if (s == "ROLLINGSTOCK") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_ROLLINGSTOCK; - if (s == "VEHICLEWHEELED") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEWHEELED; - if (s == "VEHICLEAIR") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEAIR; - if (s == "CARGO") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_CARGO; - if (s == "VEHICLEMARINE") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_VEHICLEMARINE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::IfcTransportElementNonFixedType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::Value) IFC4X3_RC4_IfcTransportElementNonFixedTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::operator Ifc4x3_rc4::IfcTransportElementNonFixedTypeEnum::Value() const { @@ -11237,16 +8835,11 @@ Ifc4x3_rc4::IfcTrimmingPreference::IfcTrimmingPreference(const std::string& v) { } const char* Ifc4x3_rc4::IfcTrimmingPreference::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CARTESIAN", "PARAMETER", "UNSPECIFIED" }; - return names[v]; + return IFC4X3_RC4_IfcTrimmingPreference_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTrimmingPreference::Value Ifc4x3_rc4::IfcTrimmingPreference::FromString(const std::string& s) { - if (s == "CARTESIAN") return ::Ifc4x3_rc4::IfcTrimmingPreference::IfcTrimmingPreference_CARTESIAN; - if (s == "PARAMETER") return ::Ifc4x3_rc4::IfcTrimmingPreference::IfcTrimmingPreference_PARAMETER; - if (s == "UNSPECIFIED") return ::Ifc4x3_rc4::IfcTrimmingPreference::IfcTrimmingPreference_UNSPECIFIED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTrimmingPreference::Value) IFC4X3_RC4_IfcTrimmingPreference_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTrimmingPreference::operator Ifc4x3_rc4::IfcTrimmingPreference::Value() const { @@ -11275,16 +8868,11 @@ Ifc4x3_rc4::IfcTubeBundleTypeEnum::IfcTubeBundleTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcTubeBundleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 3 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FINNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcTubeBundleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcTubeBundleTypeEnum::Value Ifc4x3_rc4::IfcTubeBundleTypeEnum::FromString(const std::string& s) { - if (s == "FINNED") return ::Ifc4x3_rc4::IfcTubeBundleTypeEnum::IfcTubeBundleType_FINNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcTubeBundleTypeEnum::IfcTubeBundleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcTubeBundleTypeEnum::IfcTubeBundleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcTubeBundleTypeEnum::Value) IFC4X3_RC4_IfcTubeBundleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcTubeBundleTypeEnum::operator Ifc4x3_rc4::IfcTubeBundleTypeEnum::Value() const { @@ -11313,43 +8901,11 @@ Ifc4x3_rc4::IfcUnitEnum::IfcUnitEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcUnitEnum::ToString(Value v) { - if ( v < 0 || v >= 30 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ABSORBEDDOSEUNIT", "AMOUNTOFSUBSTANCEUNIT", "AREAUNIT", "DOSEEQUIVALENTUNIT", "ELECTRICCAPACITANCEUNIT", "ELECTRICCHARGEUNIT", "ELECTRICCONDUCTANCEUNIT", "ELECTRICCURRENTUNIT", "ELECTRICRESISTANCEUNIT", "ELECTRICVOLTAGEUNIT", "ENERGYUNIT", "FORCEUNIT", "FREQUENCYUNIT", "ILLUMINANCEUNIT", "INDUCTANCEUNIT", "LENGTHUNIT", "LUMINOUSFLUXUNIT", "LUMINOUSINTENSITYUNIT", "MAGNETICFLUXDENSITYUNIT", "MAGNETICFLUXUNIT", "MASSUNIT", "PLANEANGLEUNIT", "POWERUNIT", "PRESSUREUNIT", "RADIOACTIVITYUNIT", "SOLIDANGLEUNIT", "THERMODYNAMICTEMPERATUREUNIT", "TIMEUNIT", "VOLUMEUNIT", "USERDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcUnitEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcUnitEnum::Value Ifc4x3_rc4::IfcUnitEnum::FromString(const std::string& s) { - if (s == "ABSORBEDDOSEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ABSORBEDDOSEUNIT; - if (s == "AMOUNTOFSUBSTANCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_AMOUNTOFSUBSTANCEUNIT; - if (s == "AREAUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_AREAUNIT; - if (s == "DOSEEQUIVALENTUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_DOSEEQUIVALENTUNIT; - if (s == "ELECTRICCAPACITANCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ELECTRICCAPACITANCEUNIT; - if (s == "ELECTRICCHARGEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ELECTRICCHARGEUNIT; - if (s == "ELECTRICCONDUCTANCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ELECTRICCONDUCTANCEUNIT; - if (s == "ELECTRICCURRENTUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ELECTRICCURRENTUNIT; - if (s == "ELECTRICRESISTANCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ELECTRICRESISTANCEUNIT; - if (s == "ELECTRICVOLTAGEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ELECTRICVOLTAGEUNIT; - if (s == "ENERGYUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ENERGYUNIT; - if (s == "FORCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_FORCEUNIT; - if (s == "FREQUENCYUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_FREQUENCYUNIT; - if (s == "ILLUMINANCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_ILLUMINANCEUNIT; - if (s == "INDUCTANCEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_INDUCTANCEUNIT; - if (s == "LENGTHUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_LENGTHUNIT; - if (s == "LUMINOUSFLUXUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_LUMINOUSFLUXUNIT; - if (s == "LUMINOUSINTENSITYUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_LUMINOUSINTENSITYUNIT; - if (s == "MAGNETICFLUXDENSITYUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_MAGNETICFLUXDENSITYUNIT; - if (s == "MAGNETICFLUXUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_MAGNETICFLUXUNIT; - if (s == "MASSUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_MASSUNIT; - if (s == "PLANEANGLEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_PLANEANGLEUNIT; - if (s == "POWERUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_POWERUNIT; - if (s == "PRESSUREUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_PRESSUREUNIT; - if (s == "RADIOACTIVITYUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_RADIOACTIVITYUNIT; - if (s == "SOLIDANGLEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_SOLIDANGLEUNIT; - if (s == "THERMODYNAMICTEMPERATUREUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_THERMODYNAMICTEMPERATUREUNIT; - if (s == "TIMEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_TIMEUNIT; - if (s == "VOLUMEUNIT") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_VOLUMEUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcUnitEnum::IfcUnit_USERDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcUnitEnum::Value) IFC4X3_RC4_IfcUnitEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcUnitEnum::operator Ifc4x3_rc4::IfcUnitEnum::Value() const { @@ -11378,25 +8934,11 @@ Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementTypeEnum(c } const char* Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 12 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALARMPANEL", "CONTROLPANEL", "GASDETECTIONPANEL", "INDICATORPANEL", "MIMICPANEL", "HUMIDISTAT", "THERMOSTAT", "WEATHERSTATION", "COMBINED", "BASESTATIONCONTROLLER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::Value Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::FromString(const std::string& s) { - if (s == "ALARMPANEL") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_ALARMPANEL; - if (s == "CONTROLPANEL") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_CONTROLPANEL; - if (s == "GASDETECTIONPANEL") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_GASDETECTIONPANEL; - if (s == "INDICATORPANEL") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_INDICATORPANEL; - if (s == "MIMICPANEL") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_MIMICPANEL; - if (s == "HUMIDISTAT") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_HUMIDISTAT; - if (s == "THERMOSTAT") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_THERMOSTAT; - if (s == "WEATHERSTATION") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_WEATHERSTATION; - if (s == "COMBINED") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_COMBINED; - if (s == "BASESTATIONCONTROLLER") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_BASESTATIONCONTROLLER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::IfcUnitaryControlElementType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::Value) IFC4X3_RC4_IfcUnitaryControlElementTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::operator Ifc4x3_rc4::IfcUnitaryControlElementTypeEnum::Value() const { @@ -11425,20 +8967,11 @@ Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentTypeEnum(const std:: } const char* Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 7 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRHANDLER", "AIRCONDITIONINGUNIT", "DEHUMIDIFIER", "SPLITSYSTEM", "ROOFTOPUNIT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::Value Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::FromString(const std::string& s) { - if (s == "AIRHANDLER") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRHANDLER; - if (s == "AIRCONDITIONINGUNIT") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_AIRCONDITIONINGUNIT; - if (s == "DEHUMIDIFIER") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_DEHUMIDIFIER; - if (s == "SPLITSYSTEM") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_SPLITSYSTEM; - if (s == "ROOFTOPUNIT") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_ROOFTOPUNIT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::IfcUnitaryEquipmentType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::Value) IFC4X3_RC4_IfcUnitaryEquipmentTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::operator Ifc4x3_rc4::IfcUnitaryEquipmentTypeEnum::Value() const { @@ -11467,36 +9000,11 @@ Ifc4x3_rc4::IfcValveTypeEnum::IfcValveTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcValveTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 23 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "AIRRELEASE", "ANTIVACUUM", "CHANGEOVER", "CHECK", "COMMISSIONING", "DIVERTING", "DRAWOFFCOCK", "DOUBLECHECK", "DOUBLEREGULATING", "FAUCET", "FLUSHING", "GASCOCK", "GASTAP", "ISOLATING", "MIXING", "PRESSUREREDUCING", "PRESSURERELIEF", "REGULATING", "SAFETYCUTOFF", "STEAMTRAP", "STOPCOCK", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcValveTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcValveTypeEnum::Value Ifc4x3_rc4::IfcValveTypeEnum::FromString(const std::string& s) { - if (s == "AIRRELEASE") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_AIRRELEASE; - if (s == "ANTIVACUUM") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_ANTIVACUUM; - if (s == "CHANGEOVER") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_CHANGEOVER; - if (s == "CHECK") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_CHECK; - if (s == "COMMISSIONING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_COMMISSIONING; - if (s == "DIVERTING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_DIVERTING; - if (s == "DRAWOFFCOCK") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_DRAWOFFCOCK; - if (s == "DOUBLECHECK") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_DOUBLECHECK; - if (s == "DOUBLEREGULATING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_DOUBLEREGULATING; - if (s == "FAUCET") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_FAUCET; - if (s == "FLUSHING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_FLUSHING; - if (s == "GASCOCK") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_GASCOCK; - if (s == "GASTAP") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_GASTAP; - if (s == "ISOLATING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_ISOLATING; - if (s == "MIXING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_MIXING; - if (s == "PRESSUREREDUCING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_PRESSUREREDUCING; - if (s == "PRESSURERELIEF") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_PRESSURERELIEF; - if (s == "REGULATING") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_REGULATING; - if (s == "SAFETYCUTOFF") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_SAFETYCUTOFF; - if (s == "STEAMTRAP") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_STEAMTRAP; - if (s == "STOPCOCK") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_STOPCOCK; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcValveTypeEnum::IfcValveType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcValveTypeEnum::Value) IFC4X3_RC4_IfcValveTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcValveTypeEnum::operator Ifc4x3_rc4::IfcValveTypeEnum::Value() const { @@ -11525,21 +9033,11 @@ Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperTypeEnum(const std::st } const char* Ifc4x3_rc4::IfcVibrationDamperTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "BENDING_YIELD", "SHEAR_YIELD", "AXIAL_YIELD", "FRICTION", "VISCOUS", "RUBBER", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcVibrationDamperTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcVibrationDamperTypeEnum::Value Ifc4x3_rc4::IfcVibrationDamperTypeEnum::FromString(const std::string& s) { - if (s == "BENDING_YIELD") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_BENDING_YIELD; - if (s == "SHEAR_YIELD") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_SHEAR_YIELD; - if (s == "AXIAL_YIELD") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_AXIAL_YIELD; - if (s == "FRICTION") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_FRICTION; - if (s == "VISCOUS") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_VISCOUS; - if (s == "RUBBER") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_RUBBER; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcVibrationDamperTypeEnum::IfcVibrationDamperType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcVibrationDamperTypeEnum::Value) IFC4X3_RC4_IfcVibrationDamperTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcVibrationDamperTypeEnum::operator Ifc4x3_rc4::IfcVibrationDamperTypeEnum::Value() const { @@ -11568,18 +9066,11 @@ Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorTypeEnum(const std } const char* Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "COMPRESSION", "SPRING", "BASE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::Value Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::FromString(const std::string& s) { - if (s == "COMPRESSION") return ::Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_COMPRESSION; - if (s == "SPRING") return ::Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_SPRING; - if (s == "BASE") return ::Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_BASE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::IfcVibrationIsolatorType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::Value) IFC4X3_RC4_IfcVibrationIsolatorTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::operator Ifc4x3_rc4::IfcVibrationIsolatorTypeEnum::Value() const { @@ -11608,21 +9099,11 @@ Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureTypeEnum(const std::stri } const char* Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "CUTOUT", "NOTCH", "HOLE", "MITER", "CHAMFER", "EDGE", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::Value Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::FromString(const std::string& s) { - if (s == "CUTOUT") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CUTOUT; - if (s == "NOTCH") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTCH; - if (s == "HOLE") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_HOLE; - if (s == "MITER") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_MITER; - if (s == "CHAMFER") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_CHAMFER; - if (s == "EDGE") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_EDGE; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::IfcVoidingFeatureType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::Value) IFC4X3_RC4_IfcVoidingFeatureTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::operator Ifc4x3_rc4::IfcVoidingFeatureTypeEnum::Value() const { @@ -11651,26 +9132,11 @@ Ifc4x3_rc4::IfcWallTypeEnum::IfcWallTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcWallTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 13 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "MOVABLE", "PARAPET", "PARTITIONING", "PLUMBINGWALL", "SHEAR", "SOLIDWALL", "STANDARD", "POLYGONAL", "ELEMENTEDWALL", "RETAININGWALL", "WAVEWALL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWallTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWallTypeEnum::Value Ifc4x3_rc4::IfcWallTypeEnum::FromString(const std::string& s) { - if (s == "MOVABLE") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_MOVABLE; - if (s == "PARAPET") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_PARAPET; - if (s == "PARTITIONING") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_PARTITIONING; - if (s == "PLUMBINGWALL") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_PLUMBINGWALL; - if (s == "SHEAR") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_SHEAR; - if (s == "SOLIDWALL") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_SOLIDWALL; - if (s == "STANDARD") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_STANDARD; - if (s == "POLYGONAL") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_POLYGONAL; - if (s == "ELEMENTEDWALL") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_ELEMENTEDWALL; - if (s == "RETAININGWALL") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_RETAININGWALL; - if (s == "WAVEWALL") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_WAVEWALL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWallTypeEnum::IfcWallType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWallTypeEnum::Value) IFC4X3_RC4_IfcWallTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWallTypeEnum::operator Ifc4x3_rc4::IfcWallTypeEnum::Value() const { @@ -11699,22 +9165,11 @@ Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalTypeEnum(const std::string } const char* Ifc4x3_rc4::IfcWasteTerminalTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 9 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FLOORTRAP", "FLOORWASTE", "GULLYSUMP", "GULLYTRAP", "ROOFDRAIN", "WASTEDISPOSALUNIT", "WASTETRAP", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWasteTerminalTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWasteTerminalTypeEnum::Value Ifc4x3_rc4::IfcWasteTerminalTypeEnum::FromString(const std::string& s) { - if (s == "FLOORTRAP") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORTRAP; - if (s == "FLOORWASTE") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_FLOORWASTE; - if (s == "GULLYSUMP") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYSUMP; - if (s == "GULLYTRAP") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_GULLYTRAP; - if (s == "ROOFDRAIN") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_ROOFDRAIN; - if (s == "WASTEDISPOSALUNIT") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTEDISPOSALUNIT; - if (s == "WASTETRAP") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_WASTETRAP; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWasteTerminalTypeEnum::IfcWasteTerminalType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWasteTerminalTypeEnum::Value) IFC4X3_RC4_IfcWasteTerminalTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWasteTerminalTypeEnum::operator Ifc4x3_rc4::IfcWasteTerminalTypeEnum::Value() const { @@ -11743,27 +9198,11 @@ Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperationEnum(const std:: } const char* Ifc4x3_rc4::IfcWindowPanelOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 14 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SIDEHUNGRIGHTHAND", "SIDEHUNGLEFTHAND", "TILTANDTURNRIGHTHAND", "TILTANDTURNLEFTHAND", "TOPHUNG", "BOTTOMHUNG", "PIVOTHORIZONTAL", "PIVOTVERTICAL", "SLIDINGHORIZONTAL", "SLIDINGVERTICAL", "REMOVABLECASEMENT", "FIXEDCASEMENT", "OTHEROPERATION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWindowPanelOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWindowPanelOperationEnum::Value Ifc4x3_rc4::IfcWindowPanelOperationEnum::FromString(const std::string& s) { - if (s == "SIDEHUNGRIGHTHAND") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGRIGHTHAND; - if (s == "SIDEHUNGLEFTHAND") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SIDEHUNGLEFTHAND; - if (s == "TILTANDTURNRIGHTHAND") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNRIGHTHAND; - if (s == "TILTANDTURNLEFTHAND") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TILTANDTURNLEFTHAND; - if (s == "TOPHUNG") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_TOPHUNG; - if (s == "BOTTOMHUNG") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_BOTTOMHUNG; - if (s == "PIVOTHORIZONTAL") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTHORIZONTAL; - if (s == "PIVOTVERTICAL") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_PIVOTVERTICAL; - if (s == "SLIDINGHORIZONTAL") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGHORIZONTAL; - if (s == "SLIDINGVERTICAL") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_SLIDINGVERTICAL; - if (s == "REMOVABLECASEMENT") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_REMOVABLECASEMENT; - if (s == "FIXEDCASEMENT") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_FIXEDCASEMENT; - if (s == "OTHEROPERATION") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_OTHEROPERATION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWindowPanelOperationEnum::IfcWindowPanelOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWindowPanelOperationEnum::Value) IFC4X3_RC4_IfcWindowPanelOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWindowPanelOperationEnum::operator Ifc4x3_rc4::IfcWindowPanelOperationEnum::Value() const { @@ -11792,19 +9231,11 @@ Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPositionEnum(const std::st } const char* Ifc4x3_rc4::IfcWindowPanelPositionEnum::ToString(Value v) { - if ( v < 0 || v >= 6 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "LEFT", "MIDDLE", "RIGHT", "BOTTOM", "TOP", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWindowPanelPositionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWindowPanelPositionEnum::Value Ifc4x3_rc4::IfcWindowPanelPositionEnum::FromString(const std::string& s) { - if (s == "LEFT") return ::Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_LEFT; - if (s == "MIDDLE") return ::Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_MIDDLE; - if (s == "RIGHT") return ::Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_RIGHT; - if (s == "BOTTOM") return ::Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_BOTTOM; - if (s == "TOP") return ::Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_TOP; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWindowPanelPositionEnum::IfcWindowPanelPosition_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWindowPanelPositionEnum::Value) IFC4X3_RC4_IfcWindowPanelPositionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWindowPanelPositionEnum::operator Ifc4x3_rc4::IfcWindowPanelPositionEnum::Value() const { @@ -11833,21 +9264,11 @@ Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstructionEnum(const } const char* Ifc4x3_rc4::IfcWindowStyleConstructionEnum::ToString(Value v) { - if ( v < 0 || v >= 8 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ALUMINIUM", "HIGH_GRADE_STEEL", "STEEL", "WOOD", "ALUMINIUM_WOOD", "PLASTIC", "OTHER_CONSTRUCTION", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWindowStyleConstructionEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWindowStyleConstructionEnum::Value Ifc4x3_rc4::IfcWindowStyleConstructionEnum::FromString(const std::string& s) { - if (s == "ALUMINIUM") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM; - if (s == "HIGH_GRADE_STEEL") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_HIGH_GRADE_STEEL; - if (s == "STEEL") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_STEEL; - if (s == "WOOD") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_WOOD; - if (s == "ALUMINIUM_WOOD") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_ALUMINIUM_WOOD; - if (s == "PLASTIC") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_PLASTIC; - if (s == "OTHER_CONSTRUCTION") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_OTHER_CONSTRUCTION; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWindowStyleConstructionEnum::IfcWindowStyleConstruction_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWindowStyleConstructionEnum::Value) IFC4X3_RC4_IfcWindowStyleConstructionEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWindowStyleConstructionEnum::operator Ifc4x3_rc4::IfcWindowStyleConstructionEnum::Value() const { @@ -11876,24 +9297,11 @@ Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperationEnum(const std:: } const char* Ifc4x3_rc4::IfcWindowStyleOperationEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWindowStyleOperationEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWindowStyleOperationEnum::Value Ifc4x3_rc4::IfcWindowStyleOperationEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWindowStyleOperationEnum::IfcWindowStyleOperation_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWindowStyleOperationEnum::Value) IFC4X3_RC4_IfcWindowStyleOperationEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWindowStyleOperationEnum::operator Ifc4x3_rc4::IfcWindowStyleOperationEnum::Value() const { @@ -11922,18 +9330,11 @@ Ifc4x3_rc4::IfcWindowTypeEnum::IfcWindowTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcWindowTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "WINDOW", "SKYLIGHT", "LIGHTDOME", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWindowTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWindowTypeEnum::Value Ifc4x3_rc4::IfcWindowTypeEnum::FromString(const std::string& s) { - if (s == "WINDOW") return ::Ifc4x3_rc4::IfcWindowTypeEnum::IfcWindowType_WINDOW; - if (s == "SKYLIGHT") return ::Ifc4x3_rc4::IfcWindowTypeEnum::IfcWindowType_SKYLIGHT; - if (s == "LIGHTDOME") return ::Ifc4x3_rc4::IfcWindowTypeEnum::IfcWindowType_LIGHTDOME; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWindowTypeEnum::IfcWindowType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWindowTypeEnum::IfcWindowType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWindowTypeEnum::Value) IFC4X3_RC4_IfcWindowTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWindowTypeEnum::operator Ifc4x3_rc4::IfcWindowTypeEnum::Value() const { @@ -11962,24 +9363,11 @@ Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioningEnum(const s } const char* Ifc4x3_rc4::IfcWindowTypePartitioningEnum::ToString(Value v) { - if ( v < 0 || v >= 11 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "SINGLE_PANEL", "DOUBLE_PANEL_VERTICAL", "DOUBLE_PANEL_HORIZONTAL", "TRIPLE_PANEL_VERTICAL", "TRIPLE_PANEL_BOTTOM", "TRIPLE_PANEL_TOP", "TRIPLE_PANEL_LEFT", "TRIPLE_PANEL_RIGHT", "TRIPLE_PANEL_HORIZONTAL", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWindowTypePartitioningEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWindowTypePartitioningEnum::Value Ifc4x3_rc4::IfcWindowTypePartitioningEnum::FromString(const std::string& s) { - if (s == "SINGLE_PANEL") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_SINGLE_PANEL; - if (s == "DOUBLE_PANEL_VERTICAL") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_VERTICAL; - if (s == "DOUBLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_DOUBLE_PANEL_HORIZONTAL; - if (s == "TRIPLE_PANEL_VERTICAL") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_VERTICAL; - if (s == "TRIPLE_PANEL_BOTTOM") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_BOTTOM; - if (s == "TRIPLE_PANEL_TOP") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_TOP; - if (s == "TRIPLE_PANEL_LEFT") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_LEFT; - if (s == "TRIPLE_PANEL_RIGHT") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_RIGHT; - if (s == "TRIPLE_PANEL_HORIZONTAL") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_TRIPLE_PANEL_HORIZONTAL; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWindowTypePartitioningEnum::IfcWindowTypePartitioning_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWindowTypePartitioningEnum::Value) IFC4X3_RC4_IfcWindowTypePartitioningEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWindowTypePartitioningEnum::operator Ifc4x3_rc4::IfcWindowTypePartitioningEnum::Value() const { @@ -12008,18 +9396,11 @@ Ifc4x3_rc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcWorkCalendarTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "FIRSTSHIFT", "SECONDSHIFT", "THIRDSHIFT", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWorkCalendarTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWorkCalendarTypeEnum::Value Ifc4x3_rc4::IfcWorkCalendarTypeEnum::FromString(const std::string& s) { - if (s == "FIRSTSHIFT") return ::Ifc4x3_rc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_FIRSTSHIFT; - if (s == "SECONDSHIFT") return ::Ifc4x3_rc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_SECONDSHIFT; - if (s == "THIRDSHIFT") return ::Ifc4x3_rc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_THIRDSHIFT; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWorkCalendarTypeEnum::IfcWorkCalendarType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWorkCalendarTypeEnum::Value) IFC4X3_RC4_IfcWorkCalendarTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWorkCalendarTypeEnum::operator Ifc4x3_rc4::IfcWorkCalendarTypeEnum::Value() const { @@ -12048,18 +9429,11 @@ Ifc4x3_rc4::IfcWorkPlanTypeEnum::IfcWorkPlanTypeEnum(const std::string& v) { } const char* Ifc4x3_rc4::IfcWorkPlanTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWorkPlanTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWorkPlanTypeEnum::Value Ifc4x3_rc4::IfcWorkPlanTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWorkPlanTypeEnum::IfcWorkPlanType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWorkPlanTypeEnum::Value) IFC4X3_RC4_IfcWorkPlanTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWorkPlanTypeEnum::operator Ifc4x3_rc4::IfcWorkPlanTypeEnum::Value() const { @@ -12088,18 +9462,11 @@ Ifc4x3_rc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleTypeEnum(const std::string& } const char* Ifc4x3_rc4::IfcWorkScheduleTypeEnum::ToString(Value v) { - if ( v < 0 || v >= 5 ) throw IfcException("Unable to find keyword in schema"); - const char* names[] = { "ACTUAL", "BASELINE", "PLANNED", "USERDEFINED", "NOTDEFINED" }; - return names[v]; + return IFC4X3_RC4_IfcWorkScheduleTypeEnum_type->lookup_enum_value((size_t) v); } Ifc4x3_rc4::IfcWorkScheduleTypeEnum::Value Ifc4x3_rc4::IfcWorkScheduleTypeEnum::FromString(const std::string& s) { - if (s == "ACTUAL") return ::Ifc4x3_rc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_ACTUAL; - if (s == "BASELINE") return ::Ifc4x3_rc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_BASELINE; - if (s == "PLANNED") return ::Ifc4x3_rc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_PLANNED; - if (s == "USERDEFINED") return ::Ifc4x3_rc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_USERDEFINED; - if (s == "NOTDEFINED") return ::Ifc4x3_rc4::IfcWorkScheduleTypeEnum::IfcWorkScheduleType_NOTDEFINED; - throw IfcException("Unable to find keyword in schema: " + s); + return (Ifc4x3_rc4::IfcWorkScheduleTypeEnum::Value) IFC4X3_RC4_IfcWorkScheduleTypeEnum_type->lookup_enum_offset(s); } Ifc4x3_rc4::IfcWorkScheduleTypeEnum::operator Ifc4x3_rc4::IfcWorkScheduleTypeEnum::Value() const {